MCUApplicationGreatChinaVer.2.0Apr‘09STM32FOCFWlibraryv2.0新功能新功能新功能新功能Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication课程课程课程课程GUI概述单电阻电流采样法硬件结构基本原理挑战ST专利方案:有效矢量插入实现三电阻采样vs单电阻采样I-PMSM驱动优化:MTPA新的弱磁控制策略前向电流调节Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplicationFOCGUI下载下载下载下载Internet下载地址:版本V1.0‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplicationGUI界面界面界面界面Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplicationADCADCGateDriver+-OpAmp+Offset单电阻电流采样硬件结构单电阻电流采样硬件结构单电阻电流采样硬件结构单电阻电流采样硬件结构500mV3.3V放大+偏移采样电阻上的电压采样电阻上的电压采样电阻上的电压采样电阻上的电压输入到输入到输入到输入到MCU的的的的ADC端口的信号端口的信号端口的信号端口的信号Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplicationSTM32配置配置配置配置iAiBiCVBUSRShuntT1T2T3T4T5T6iShunt+-ADCCh.12Timer13PWM输出通道OC4Ref用于外部触发ADC1ADCCh.10ADC2DCBus电压高压板的温度传感器ADCCh.3Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication单电阻电流采样原理单电阻电流采样原理单电阻电流采样原理单电阻电流采样原理1/2V7V6V5V4V3V2V1V0V0111-iB010iC011-iA001iB101-iC100iA1100000iShuntT3T2T1•对于下桥臂的每一个开关状态,其对应的流过采样电阻的电流如表1。T4,T5及T6的开关状态与T1,T2及T3互补。•在表1中,值“0”表示开关管关闭,而“1”表示开关管打开。空间矢量空间矢量空间矢量空间矢量表表表表1iAiBiCVBUSRShuntT1T2T3T4T5T6iShuntV1V4V3V2V6V5αβABCApr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication单电阻电流采样原理单电阻电流采样原理单电阻电流采样原理单电阻电流采样原理2/2•使用中心对称模式,每个PWM周期被分成7个时间段;•在其中的三个时间段(I,IV,VII),电阻中的电流为0;•在其余的时间段,由于PWM为中心对称模式,电阻中的电流是对称的;•如图所示,存在两种情况:•时间段II及VI,iShunt=–iC;•时间段III及V,iShunt=iA;•因此,此时有可能从采样值重建马达的三相电流:•时间段III及V,iA=iShunt•时间段II及VI,iC=-iShunt•iB=-iA-iCT1T2T3iShunt-iC-iCiAiAIIIIIIIVVVIVIIV0V2V1V7V1V2V0Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplicationTmin定义定义定义定义定义‘TRise’:任一管子开关后,ADC通道上的输入信号的稳定时间;定义Tmin:执行电流采样所需要的最小时间:等于TRise+ADC采样时间+死区时间;定义DMIN:TMIN的占空比的表达形式T1T2T3iShunt-iC-iCiAiAIIIIIIIVVVIVIITRiseADC采样时间采样结束,ADC转换开始噪声结束,采样开始T2开启T5关断DeadtimeApr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication单电阻采样法的挑战单电阻采样法的挑战单电阻采样法的挑战单电阻采样法的挑战::::1.相邻空间矢量扇区的边界区域相邻空间矢量扇区的边界区域相邻空间矢量扇区的边界区域相邻空间矢量扇区的边界区域•在相邻的两个空间矢量扇区的边界区域,有两个桥臂的占空比几乎相同;•在这种情况下,七个子时间段变成了五个,这样的后果为:只可能采样到两个相电流中的一个;•因此,如果电压矢量进入到下图的灰色区域,就不能在同一个PWM周期中同时采样到两个相电流。T1T2T3iShuntIIIIIIIVViAiAT1T2T3iShuntIIIIIIIVV-iC-iCV1V4V3V2V6V5V0αβApr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication单电阻采样法的挑战单电阻采样法的挑战单电阻采样法的挑战单电阻采样法的挑战::::2.低调制比低调制比低调制比低调制比•在低调制比的情况下,三个桥臂的占空比几乎相同;•在这种情况下,七个子时间段变成了三个;•在所有的三个时间段,流过采样电阻的电流为0;•这就意味着当电压矢量进入下列灰色区域时,无法采样到相电流。T1T2T3iShuntIIIIIIV1V4V3V2V6V5αβApr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication1.相邻空间矢量扇区的边界区域的解决方法相邻空间矢量扇区的边界区域的解决方法相邻空间矢量扇区的边界区域的解决方法相邻空间矢量扇区的边界区域的解决方法::::插入时间固定的有效空间矢量插入时间固定的有效空间矢量插入时间固定的有效空间矢量插入时间固定的有效空间矢量当无法采样某一相电流时,可在时间段V0或V7中插入一个有效矢量,并同时保证三个桥臂的占空比不变;为了减少插入有效矢量而引起的相电流谐波,插入的有效矢量的时间为Tmin。占空比补偿有效矢量插入例子ActualimplementationApr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication2.低调制比的解决方法低调制比的解决方法低调制比的解决方法低调制比的解决方法::::轮流插入有效矢量轮流插入有效矢量轮流插入有效矢量轮流插入有效矢量一般来说,低调制比意味着低转速在相邻的两个PWM周期里,正弦电流波形不会有很大的变化;因此,“固定时间有效矢量插入技术”被轮流地应用到A相和B相中。在每一个PWM周期中,采样一相的电流而另一相的电流保持为上一次的采样值。iAiBiBoldiAoldApr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication有效矢量插入有效矢量插入有效矢量插入有效矢量插入::::电流失真的补偿电流失真的补偿电流失真的补偿电流失真的补偿PWM的失真会在相应的一相中导致电流失真,但是可以对此进行补尝;当PWM开关模式在“常规”模式与“边界”模式间切换时,电流测量值的变化被存储;在PWM模式进入到相同的边界区域后,通过加上或减去这个变化值,电流的测量值得到了补偿。RegularBoundaryPWM信号相电流Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplicationPWM变形变形变形变形::::有效矢量插入的实现有效矢量插入的实现有效矢量插入的实现有效矢量插入的实现为了实现有效矢量的插入,三对PWM信号(CHx)中的一对必须变形;因此,CHx必须配置为‘toggle’模式;并且,输出比较事件(计数器的值与TIM1_CCRx相同)触发DMA,用于更新TIM1_CCRx自己的值;在PWM信号变形期间,TIM1_CCRX预载功能禁止,因此,写入TIM1_CCRx寄存器的新值立即起作用;使用‘DMAburst’传输模式(由计数器的下溢事件触发),两个TIM1_CCRx寄存器的写入时间差大约为100ns。CHxUpdate事件计数器上溢Update事件DMA事件DMA事件[0][1][2][3]TMinTIM1_CCRxTMin2Chx占空比TMin2Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplicationPWM无变形时的无变形时的无变形时的无变形时的ADC同步同步同步同步TIM1CH4用于ADC的同步(CH4配置为‘PWM模式1’,直接访问模式)由输出比较事件触发的DMA用于更新TIM1_CCR4的内容,其允许在PWM的前半周期就完成两次ADC转换;由DMA传输而引起的延时足以产生ADC的触发信号.CH4Update事件计数器上溢Update事件DMA事件ADC触发TIM1_CCR4DMA延时Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication在PWM有变形的情况下,CH4配置为‘toggle模式’(此时,TIM1_CCR4直接访问);此时,仍然由DMA来更新TIM1_CCR4寄存器;在中心对称模式下,有可能在PWM的前半周期触发一次ADC转化而在后半周期触发另一次ADC转化。CH4Update事件计数器上溢Update事件DMA事件ADC触发TIM1_CCR4DMA事件PWM变形时的变形时的变形时的变形时的ADC同步同步同步同步Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication固件结构固件结构固件结构固件结构在ADC转换结束事件的ISR中在ADC转换结束事件的ISR中执行的子程序SVPWMEOCEvent1)在Update事件的ISR中在Update事件的ISR中执行的子程序SVPWMUpdateEventFOC子程序之后计算占空比值,配置下一次电流采样时的ADC及定时器模式。SVPWM_1ShuntCalcDutyCycles在ADC转换完成后及FOC子程序之前计算相A及相B的电流值SVPWM_1ShuntGetPhaseCurrentValues马达启动命令后存储零电流时采样电路的ADC值SVPWM_1ShuntCurrentReadingCalibrationMCU复位后初始化PWM及ADC外设SVPWM_1ShuntInit调用时刻描述函数名1)在该子程序中,还更新了DCBUS的电压值及温度传感器值且分别存入变量‘h_ADCTemp’及‘h_ADCBusvolt’中。Apr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication占空比计算占空比计算占空比计算占空比计算计算计算计算计算电流值电流值电流值电流值SVMCalcDuty定子Voltαβ计算定子计算定子计算定子计算定子磁链位置磁链位置磁链位置磁链位置DutyADutyBDutyC常规位置边界1PWM占空比调整占空比调整占空比调整占空比调整DutyA*DutyB*DutyC*采样点采样点采样点采样点设置设置设置设置采样点1采样点2采样电流1采样电流2计算电流值计算电流值计算电流值计算电流值ADC采样1ADC采样2采样电流1采样电流2IAIBIC定子电流A、B扇区边界2边界3IA,NIAIB,NIBIC,NICApr‘09STM32basedPMSMFOCfirmwarelibrarytrainingMCUApplication高压板的设置高压板的设置高