单个MCU即可实现多电机控制!基于RX72T的4电机控制示例
随着MCU功能和性能的提高,从单电机/单MCU到多电机/单MCU进行控制,实现了系统的小型化和系统成本的降低。尤其是在洗衣机和空调等领域,这种趋势非常明显,现在几乎所有的产品都是多电机控制。本期将介绍使用可多电机控制的RX72T对4个电机进行控制的演示。
本文引用地址:http://www.amcfsurvey.com/article/202305/447004.htm柏崎 直人
Sr Staff Product Marketing Specialist
不同的电机控制方式,MCU所需的处理性能和功能资源也不同。本期演示采用了无传感器矢量控制。无传感器矢量控制是一种高效且可降低传感器BOM成本的控制方法,但由于需要进行电机角度估计和矢量控制的运算,因此MCU需要更高的CPU处理性能。RX72T为实现4电机控制,采用了RX第三代CPU内核“RXv3”(6.01 CoreMark/MHz)和三角函数加速器(TFU),具有同类最快的CoreMark性能,能够快速执行矢量控制所需的运算和处理。优点是还具有互补PWM定时器和ADC等电机控制所需的功能,以实现4个电机的控制。
4电机控制中使用的功能
在本演示中,将使用以下外围功能来实现4电机控制:
使用RX72T进行4电机控制的示意图
4电机控制的要点
在本期演示中,通过无传感器矢量控制对最多4个电机进行速度控制和独立驱动,但这需要检测每个电机的电流并进行相应的PWM输出。该电流检测时序和进行控制运算的时序是多电机控制的关键,在此简要介绍。另外,本期演示采用了检测两相电流并还原三相电流的方式。
RX72T总共配备了3个ADC,本期演示将电机1和电机2的电流检测分配给单元0,电机3和电机4的电流检测分配给单元1。分配给同一单元的电机电流检测时序必须错开,因为无法同时检测电流。电流是通过分流电阻检测逆变器下臂在导通期间流过的电流,通过反向设置电机1和2、电机3和4的PWM正相和反相信号的有效电平,防止逆变器下臂的信号同时导通。因此,AD转换时序分布在PWM的峰/谷侧,从而实现各电机的电流检测。通过使用“组扫描模式”,AD转换可以在一个单元中支持两个电机的电流检测。
PWM正相反相与逆变器上下臂的关系
※电机1可以在PWM的峰侧检测电流,电机2可以在PWM的谷侧检测电流。
控制处理时序
接下来我们看一下整个时序,包括电机控制时序。重要的是PWM中断处理(矢量控制处理)、用于电流检测的AD转换时序和PWM输出的缓冲寄存器传输时序。
电机1和电机2与MTU定时器同步,将AD转换时序分布在峰侧和谷侧,并调整PWM周期中断的执行时序和缓冲寄存器的传输时序与之匹配。电机3和电机4使用GPT定时器,以类似于电机1/2的工作方式工作。
电机1/2各种处理时序
电机3/4各种处理时序
※由于在电机4的谷中断期间数据不更新,因此执行与电机2相同的动作。
当MTU和GPT在相同的载波频率下同时启动时,如果MTU和GPT的中断优先级相同,则从首先发生中断的一方开始依次执行中断处理。需要设置控制周期,以使这些处理时间在控制周期内。使用RX72T时,每个电机的处理时间为8[us]左右,因此在本期演示中,将电流控制周期设置为50us是没有问题的。
4电机控制的情况
本期介绍的演示虽然主板和电缆类产品没有公开销售,但实际的运行过程已经用视频的形式公开。以多电机控制为例,如您感兴趣请点击文末阅读原文查看视频:使用单个MCU进行4电机的速度控制
APN:永磁同步电机的无传感器矢量控制(4电机控制)RX72T安装篇(Evaluation System for BLDC Motor)Rev.1.00
https://www.renesas.cn/cn/zh/document/apn/rx72t-sensorless-vector-control-permanent-magnet-synchronous-motor-implementation-control-over-four
示例代码:永磁同步电机的无传感器矢量控制(4电机控制)RX72T安装篇(Evaluation System for BLDC Motor)Rev.1.00 - 示例代码
https://www.renesas.cn/cn/zh/document/scd/rx72t-sensorless-vector-control-permanent-magnet-synchronous-motor-implementation-control-over-four
总结
本期介绍的演示充分利用了RX72T的功能,实现了4电机控制,可以作为执行多电机控制的参考信息。欢迎对多电机控制感兴趣的客户使用RX72T和我们的示例程序。RX72T除了具备无传感器矢量控制之外,还提供了使用编码器的矢量控制来控制三个电机的示例代码和应用指南,广大用户也可以参考这些示例代码和应用指南,尝试用RX72T进行其他方式的多电机控制。
通过编码器矢量控制来控制3个电机的信息详见以下链接:
APN:永磁同步电机的编码器矢量控制(3电机控制)RX72T安装篇(Evaluation System for BLDC Motor)Rev.1.00
https://www.renesas.cn/cn/zh/document/apn/rx72t-vector-control-permanent-magnet-synchronous-motor-encoder-implementation-control-over-three
示例代码:RX72T Vector Control for Permanent Magnet Synchronous Motor with Encoder (Implementation) (Control over Three Motors) for "Evaluation System for BLDC Motor" Rev.1.00 - Sample Code
https://www.renesas.cn/cn/zh/document/scd/rx72t-vector-control-permanent-magnet-synchronous-motor-encoder-implementation-control-over-three
视频:单个MCU支持3电机位置控制
https://www.renesas.cn/cn/zh/video/position-control-3-motors-single-mcu
评论