打印
[应用相关]

ST 电机控制单电阻采样移相和插入实现

[复制链接]
3335|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liukai19911123|  楼主 | 2019-2-6 18:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

背景介绍

根据电机控制拓扑结构,单电阻采样在一个PWM控制周期内可以取得两相电流数据:

在扇区边沿无法获得两相电流信号。

波形产生

ST专利的方法是在波形的中间部分产生变形波形,在变形后的波形上就可以得到两相电流ADC数据;

当然还有目前比较流行的波形移位方法也可以做到相同效果。波形如下:

STM32系列单片机Timer有足够的功能,可以产生上面两种波形,机制如下:

PWM波中间变形


1. 设定CCR4的DMA通道,并且设定此时Timer1的preload为禁止状态;

TIM_OC1PreloadConfig(TIM1,TIM_OCPreload_Disable);

2. 在CCR4比较值部分产生DMA事件;

DMA_InitStructure.DMA_PeripheralBaseAddr= (uint32_t)(&(TIM1->CCR1));

DMA_InitStructure.DMA_MemoryBaseAddr= (uint32_t)(uint32_t)(hDmaBuff2);

DMA_InitStructure.DMA_DIR =DMA_DIR_PeripheralDST;

DMA_InitStructure.DMA_BufferSize= 2u;

….

TIM_DMACmd(TIM1,TIM_DMA_CC4,ENABLE);

3. 在1点上将CCR1数据直接修改为周期数据+1;

4. 在2点上将CCR1数据修改为CCR1’的数据;

5. 时间计算上按照上面的图示设定,中间凹陷时间为两边补充波形时间之和。

波形移位变形

1. 设定Timer1的update事件的DMA通道

DMA_InitStructure.DMA_PeripheralBaseAddr =(uint32_t)(&(TIM1->CCR1));

DMA_InitStructure.DMA_MemoryBaseAddr =(uint32_t)(uint32_t)(hDmaBuff2);

DMA_InitStructure.DMA_DIR =DMA_DIR_PeripheralDST;

DMA_InitStructure.DMA_BufferSize = 2u;

……

TIM_DMACmd(TIM1,TIM_DMA_Update,ENABLE);

2. 在1点上更新CCR1数据为CCR1数据;

3. 在2点上更新CCR1数据为CCR1’数据;

4. 保证前后的移位时间相同。


沙发
mmuuss586| | 2019-2-7 11:44 | 只看该作者

使用特权

评论回复
板凳
mmuuss586| | 2019-2-7 11:44 | 只看该作者
感谢分享

使用特权

评论回复
地板
1399866558| | 2019-2-7 12:05 | 只看该作者
马克一下

使用特权

评论回复
5
观海| | 2019-3-3 11:42 | 只看该作者
硬件如何做呢

使用特权

评论回复
6
晓伍| | 2019-3-3 12:19 | 只看该作者
需要算法进行处理吗

使用特权

评论回复
7
八层楼| | 2019-3-3 12:24 | 只看该作者
请问什么叫单电阻采样呀

使用特权

评论回复
8
guanjiaer| | 2019-3-3 12:30 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
9
heimaojingzhang| | 2019-3-3 12:39 | 只看该作者
采样移相是什么意思呢

使用特权

评论回复
10
keaibukelian| | 2019-3-3 12:50 | 只看该作者
能不能不适用dma模式呢

使用特权

评论回复
11
labasi| | 2019-3-3 12:59 | 只看该作者
我怎么看不到图片呢

使用特权

评论回复
12
paotangsan| | 2019-3-3 13:12 | 只看该作者
看不懂电机方面的知识

使用特权

评论回复
13
renzheshengui| | 2019-3-3 13:22 | 只看该作者
是三相电机吗

使用特权

评论回复
14
wakayi| | 2019-3-3 13:50 | 只看该作者
没有接触过这方面的知识

使用特权

评论回复
15
木木guainv| | 2019-3-3 14:07 | 只看该作者
前提是速度不能太快吧

使用特权

评论回复
16
wowu| | 2019-3-3 14:12 | 只看该作者
是不是需要做好ad的前置处理啊

使用特权

评论回复
17
sygydx2009| | 2020-5-16 10:06 | 只看该作者
为什么看不到图片呢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

17

帖子

0

粉丝