基于灵动微 SPIN560C 无感弦波(单电阻)方案介绍

一、概述

        在前的博文中,介绍了如何利用 MM32SPIN360C 电机开发板做无感弦波双电阻驱动的方法,这次换成 MM32SPIN560C 开发板来做无感弦波单电阻的方案。MM32SPIN560C 开发板如图 1 所示。熟悉 MM32SPIN360C 开发板的朋友能看得出,这块开发板除了 MCU 型号不一样之外,其他部分与 MM32SPIN360C 开发板一样。

 

图 1 . MM32SPIN560C 开发板

        MM32SPIN360C 与 MM32SPIN560C 两颗 MCU 都带预驱,而且是 pin2pin。所以两者的外围电路可以兼容。不同的是,它们是由不同的 MCU 封装的。MM32SPIN360C 内部的 MCU 是 MM32SPIN2xp 系列芯片,而 MM32SPIN560C 内部的 MCU 是 MM32SPIN0280 系列芯片。因此,MM32SPIN360C 与 MM32SPIN560C 的区别主要是 MCU 内部资源的不同,主要体现在 ADC 转换速度方面。MM32SPIN360C 的 ADC 转换速度是 1Msps,而 MM32SPIN560C 提高到了 3Msps。ADC 转换速度的提高在无刷电机的高速应用上效果比较明显。另外值得一提的是,MM32SPIN560C 的高级定时器支持 PWM 移相功能,在无刷电机单电阻采样做无感弦波的应用上很有裨益。

        关于 MM32SPIN360C 与 MM32SPIN560C 的硬件区别与软件移植方法在大大通博文中可以找到,感兴趣的朋友可以关注作者“memory1”的文章。 

        言归正传,无感弦波的电阻采样方法在前一篇关于双电阻采样的博文中有提到过。单电阻采样方法中的检流电阻检测的是母线电流,需要再根据算法算出三相电流值。其硬件只需要一个检流电阻和一个运放,所以硬件成本相对其他两种是最低的,但是相对软件算法处理上是最复杂的。

        对于 SPIN560C 电机开发板的 FOC 电阻采样的电路如图 2 和 3 所示。在单电阻采样方式下,首先要把 JP2、JP3 短路,旁路掉 R9、R10。然后通过 R7 采集母线电流信号,通过 SPIN560C 内置的运放 OP3 放大信号,最后通过软件计算还原出母线电流值。


图 2. MM32SPIN560C 原理图


图 3. FOC 电阻采样放大电路 

二、 三相电流重构以及软件实现

        从图 2 的电路中可以看到,三相电机的驱动部分,每一相都有上下两个 N-MOS 管。这 6 个功率管可以组合成 8 种状态,如图 4 所示。


图 4. 功率管的 8 种开关组合

        这 8 种组合中, 000(上管全开)和 111(下管全开)两种状态的母线电流为 0,为无效状态。其它 6 种状态,母线电流都可以等效为某相电流值。根据基尔霍夫定律,3 相的电流之和为 0。那么我们只需已知其中 2 相电流值,便可推算出第 3 相电流值。因此,为了重构出 3 相电流值,我们在一个 PWM 周期内,需要找到上图中的 2 种有效状态,测 2 次母线电流。

        无感 FOC 采用的是空间矢量脉宽调制(SVPWM)方法。SVPWM 把图 4 的 8 个状态称为矢量,把两种无效状态称为零矢量,另外 6 种称为有效电压矢量。8 个矢量在空间分布如图 5 所示,把空间矢量分成 6 个扇区。在一个 PWM 周期中,任一扇区中的电压矢量可以用相邻的两个电压矢量合成,作用时间对应 T1、T2,其余时间(Tpwm-T1-T2)则用两个零矢量补足。根据零矢量作用的方式,目前有“五段式”和“七段式”两种。以七段式为例,每个扇区的矢量合成路径和三相 PWM 波形如图 5 所示。


图 5. SVPWM 扇区和 PWM 波形

        结合图 4 和图 5 可以看出,在每个扇区都可以得到 2 种有效状态。在这 2 种有效状态下测母线电流,就可以得到 3 相电流中的 2 相,故以此方法来重构出三相电流值。

        使用 SPIN560C 的内部资源来实现两次定点的 ADC 采集,可以采用 TIM1 的 CCR5 触发 ADC 采样的方式。那么如何在电机高速运行,处理时间有限的情况下,给 CCR5 赋值呢?可以采用以下几种方法:

              ① 在 TIM1 的下溢中断中给 CCR5 第一次赋值,然后在 ADC 采样完成中断中给 CCR5 第二次赋值。

              ② 使用 CCR4 和 CCR5 分别存储两次采样时间。

              ③ 使用 DMA,用硬件的方式给 CCR5 第二次赋值。

              ④ 使用 ADC 的注入触发方式。使用 CCR4 设置 ADC 的注入触发时间(即第一次采样时间),CCR5 设置 ADC 的普通触发时间(即第二次采样时间)。

三、总结

        本文档介绍了无感弦波(FOC)通过单电阻采样母线电流,重构三相电流,以及软件实现方法。单电阻方案相比三电阻/双电阻方案,硬件是最简单的,但是软件算法会更复杂。基于灵动微的 SPIN560C 的多种 ADC 采样方法中,ADC 注入触发采样方式是 SPIN560C 的一大特点,在之前的 SPIN360C 中没有此功能。如果感兴趣,不妨一试。

四、参考资料

  1. DS_MM32SPIN360C_p_V1.07_SC.pdf
  2. UM_MM32SPIN2x_p_V1.19_SC.pdf
  3. 灵动微. 单电阻采样原理介绍.2022

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论