ET6000系列是专为电控领域应用设计的高性能数模混合微控制器(MCU),基于300MHz时钟、ARM Cortex-M7内核、96KB片内SRAM,内置PFlash 512KB和DFlash 128KB,以及2KB的用户OTP。
一、ET6000系列集成了丰富的高性能模拟模块
ADC:包括3 个独立的 12-bit ADC (最多 34 路模拟采样通道,采样速率最高可达 4 MSPS),其后处理单元能独立完成信号的滤波,利用其one-shot模式可以灵活配置对电机三相电流的双通道同步采样,使电机电流采样更加实时精准。
DAC:2 路独立的 12-bit Buffered DAC,可用于实时观察内部变量的变化,对电机调试非常有用。
ACMP:4 路模拟窗口比较器 (ACMP),可用于快速过流/过压保护和电机反电动势过零检测,这对电机控制都是必不可少的。
二、ET6000系列还集成了功能强大的专业外设
超高精度PWM 模块 (SRPWM):支持156ps的PWM调整精度;计数器支持UP和UP-DOWM两种模式;4路主/从比较器提供丰富的比较事件,用于产生PWM信号、ADC触发信号;通道内的DB(死区)模块、前保护和后保护单元提供了PWM信号互补功能、故障实时封波功能,以及通道内和通道间的信号互斥保护。
32-bit 增强型定时器 (ETIMER),64-bit 超级定时器 (STIMER):提供宽范围计数和捕获测量功能,可用于电机转速和电角度的测量和补偿。
正交编码模块 (QEP):片内集成两组增量型正交编码器解码处理单元,能对接并提供该编码的位置传感器信号,用于伺服电机转子位置检测,这种方式可以提高位置检测精度,同时降低内核的运算负荷。
Σ-Δ滤波器模块 (SDFM):该模块包含四通道数字滤波,专为电机控制中的定子电流高精度测量,或位置编码器中一组正交的正余弦信号的测量,解析位置解码而设计。每个输入通道可以接收一个独立的 delta-sigma(Δ-Σ)调制器比特流。这种方式可以方便地实现检测和处理单元的信号隔离。SDFM模块还提供了快速数字阈值比较,用于过流、过零检测。
硬件加速器CORDIC、FMAC 滤波算法加速模块:坐标旋转数字计算模块 (CORDIC) 提供了在电机FOC矢量控制等应用领域,在信号处理中经常使用的特定数学函数【正弦、余弦、双曲正弦、双曲余弦、反正切 (atan/atan2)、反双曲正切、模值、平方根、自然对数函数】的硬件加速。FMAC包括一个乘法/累加 (MAC) 单元,以及地址生成逻辑,这使得它可以索引保存在本地内存中的向量元素,可支持FIR/IIR滤波和点积相关运算。
硬件 CRC、对称加解密 AES:提供了电机功能安全、信息安全方面的硬件支持。
DMA 控制器:支持内存到内存,内存到外设,外设到内存,外设到外设的数据搬运。
CAN FD、UART、I2C、SPI 等通信接口和外设资源:在电机控制中,CAN FD可用来支持CiA402协议,后续将增加EtherCAT接口,实现ns级同步,SPI可用于高速编解码器通讯。
工业上主流的永磁同步和交流异步感应电机都是采用磁场定向控制技术(FOC),其基本原理如下框图所示:

经过空间矢量调制(SVPWM),在垂直于转子径向的方向上会产生一个旋转的磁链,该磁链产生的电磁转矩驱动电机旋转。为了控制转子旋转的速度,就要调节控制该磁链大小的定子电流。对于SM-PMSM电机来说,其转矩主要取决于q轴的电流;对于I-PMSM电机,由于还存在磁阻转矩,可以利用d轴的电流来控制,可以实现最大转矩/电流比(MTPA)控制。同样控制d轴电流,还可以减少定子绕组上产生的感应电动势,从而提高转速,这就是FWC(弱磁控制)的基本原理。
FOC最核心的就是要控制这个旋转磁链,也就是产生这个磁链的电流的大小。具体来讲,就是控制与电机转子同步的旋转坐标系上直轴d和交轴q上的电流大小。静止坐标系中定子的三相电流通过Clarke变换(3/2变换)等效到两相坐标系,然后再通过Park旋转坐标系变换,等效到与转子同步旋转的两相坐标系中,这些值分别与(Iq_ref, Id_ref)比较。如上图所示,其差值通过PI调节和前馈解耦(FFDC)得到所需要的(加在定子绕组上的)控制d/q轴控制电压,然后通过Park旋转坐标逆变换和SVPWM调制(包含Clarke逆变换)分解到U/V/W三相驱动桥臂上。理论上FOC计算调节频率越高,对电机的动态和力矩控制精度就越好。采用ET6000系列进行双电机定点数据处理方式时,PWM和FOC都可以做到20kHz,内核负荷仅51%。如果采用浮点和并行的Cordic硬件加速,还可以进一步优化,展现其强大的专业数据处理能力。示例中高频任务FOC还包括将内部变量送DAC输出;中频任务优先级较低,更新频率1kHz,完成各自状态机、速度环、故障保护和系统UART通讯。


电机转子的位置解码也是需要算力支撑的,主要分为有感(电机带位置传感器)和无感(电机不带位置传感器)两种处理方式。霍尔传感器是最简单的一种方式,精度也差,主要通过GPIO输入相位差120°/60°的三路方波信号,识别转子所处的扇区,常用于方波控制,也可以用于FOC(需要加电角度补偿算法),不适用于低速。精度高的编码器,如光编、磁编、感应编码器和旋变能产生一组正交的方波或者正余弦信号,其频率或者幅值随电机转子的位置变化,通过QEP模块或者RDC算法解码获得转子的速度和位置信息。ET6000系列集成了QEP硬件解码单元,RDC(旋变解码)目前需要软件,后续将考虑集成硬件RDC,这种方式可以减少中断和内核负荷,提升电控能力。无感方式是电机控制的研究热点,其优点是可以显著降低电控成本,提高可靠性。无感的算法有很多种,常见的有带PLL或者Cordic的龙伯格观测器、SMO(滑模观测器)、MRAS(模型参考自适应)、EKF(扩展卡尔曼滤波)、HFI(高频注入)等,它们都需要在高频任务中运行,ET6000系列的硬件架构正好能满足这样的需求。
ET6000系列不仅提供了高性能的外设模块,同时还提供了模块间实时的交互能力,在系统控制层面将各个模块连接起来构成一个整体。以下仍以ET6000系列双电机实例介绍,该用例中采用了三电阻ADC双核同步采样技术,完成对双电机三相输入电流的实时检测。三相驱动桥分别输出A/B/C三相电压给电机,三电阻就是分别检测这三个驱动桥下管的电流,该电流也只有在下管导通时可测。

由于桥臂上下管是互补关系,因此下管导通时间越长电流越稳定。据此,在扇区1和6中采样B相和C相的电流;在扇区2和3中采样A相和C相的电流;在扇区4和5中采样B相和A相的电流。

三、ET6000系列的PWM和ADC模块的配置
设置电机1和电机2的三相PWM输出保持同步,上下计数模式,PWM中心对称双沿调制。
电机1和电机2分别在周期计数器过零点产生PWM中断,在中断任务中根据电机转子所处的扇区分配所需要采样的电流虚拟通道,并使能相应通道。
配置ADC双核(示例中如ADC0和ADC2)为同步单次触发,采样优先级为低时,顺序采样模式,并选择SRPWM1为触发信号,对应PWM周期计数器的period点。当ADC收到采样触发信号后,ADC按照虚拟通道由低到高的顺序完成采样,且仅执行一次。再次执行需要在PWM中断任务中重新配置。
配置ADC双核各自的虚拟通道VC0~VC7分别对应电机1和电机2的三相电流采样,其中相同的序号VC通道均指向同一个芯片输入引脚。
在ADC0的VC3和VC7通道分别采样电机1和电机2的温度VT1/VT2,并设置转换完成产生中断。在ADC0中断中进行判断,引导程序分别进入电机1和电机2的FOC计算任务。
FOC电流环是内核业务中计算频率最高(通常要与PWM载波频率一致),计算量最大的部分。在ET6000系列双电机示例中,还需要对各个电机FOC电流环单独计算,使计算时间相应增加一倍。该示例为有感方式(带QEP),以其中一个电机电流环计算为例,当ADC完成电流采样,系统进入到ADC中断,通过简单判断便进入电机1的FOC电流环计算程序,其任务流程如下:
读取转子的转速;
读取转子电角度;
读取并计算电机三相电流;
将三相电流进行Clarke变换;
进行Park变换,分解为旋转坐标系中D/Q轴的反馈电流;
与D/Q参考电流比较,D轴和Q轴的误差分别进行PI调节,获取ΔVq和ΔVd;
计算dq电流前馈,并与各自的ΔVq和ΔVd相加;
Vd和Vq的电压圆限幅,并完成相关数据的缩放;
计算电角度,并考虑角度补偿,供下一个PWM周期FOC计算使用;
将Vd和Vq进行Park逆变换;
根据逆变换的结果进行SVPWM调制;
保存当前的计算结果;
对Vd和Vq进行低通滤波并保存到指定寄存器;
FOC计算超时检测和处理;
将内部变量送DAC输出。
以上为有感方式。而如果是无感方式,还要增加无感观测器的算法以获取转子的速度,计算电角度以及处理开环状态逻辑等。
通过以上介绍,相信大家对电机算法、ET6000系列所提供的功能适配有一个全面的印象。ET6000系列作为面向电控领域应用的高性能专业MCU,能够充分满足客户的需求。
来源:翌创微
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。