×

电机控制单电阻采样机制——PWM波形内采集两相电流ADC数据资料下载

消耗积分:3 | 格式:pdf | 大小:149.03KB | 2021-04-20

贾桂林

分享资料个

前言 电机控制单电阻采样机制是在一个PWM波形内采集两相电流ADC数据,但某些扇区边界条件下只能获得一路电流ADC数据, 需要对PWM波形进行变形用于构造电流采样区域。 背景介绍 根据电机控制拓扑结构,单电阻采样在一个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. 保证前后的移位时间相同。 来源: (mbbeetchina)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !