1.概述
本文章内容为 “MCX_A BLDC 马达调适流程_上” 的后续,说明 PID 控制原理与内容,按照章节流程,依序调适马达 FOC 控制算法角度环,电流环,速度环,也会介绍弱磁控制的原理,请根据本文流程完成马达调适。
2. 软硬体需求
详细硬体与软体建立请参考大大通 “ MCXA153 EVB 马达开发上手”
2.1 软体需求
Mcuxpresso SDK
Freemaster Version 3.2
SDK_2_16_000_FRDM-MCXA153
2.2 硬体需求
FRDM-MCXA153
FRDM-MC-LVPMSM
24V adapter
3. PID 控制器参数调适
PID 控制算法参数调适有很多种方式,以下说明部分快速调适的方式,PID 为 Kp , Ki , Kd ,Kp 为比例控制,Ki 为积分控制,Kd 为微分控制
Kp 调整会大幅提高或降低控制系统的反应速度,跟最大超越量,震荡有较大关联性
Ki 调整会借由不断的积分误差来控制系统,能提高或降低反应速度,消除稳态误差
Kd 调整对于误差微分来反映,所以瞬间快速的误差量,有极大的反应速度,但是在相对杂讯高的环境下,反而会造成控制系统不稳定,所以一般马达控制只用 PI 控制也蛮常见的。
3.1 Ziegler-Nichols
调适方式先借由调整 Kp ,将其馀控制器参数先配置为零,接下来不断加大 Kp 直到控制输出不断震荡,而震荡不会发散,Tu 就是震荡周期,而 Kp 就是目前设定值,定义成 Ku ,设计出来的仅 Kp 控制器为 Ku / 2
马达控制常见的 PI 控制器为 Kp = Ku / 2.2 , Ki = 1.2 Kp/Tu
下图表来自于维基百科
3.2 相位超前 / 落后控制器设计
3.3 极零点控制器设计
3.4 根轨迹控制器设计
以上控制器设计需要搭配相关的算法工具,比较好进行运算,因工具需要购买,后续如果需求会再新增控制系统与算法的设计内容文章。
4. 角度环调适与确认
角度环调适在开环的情况下 Sensorless 会借由采样的三项电流,估算出反电动势,再利用反电动势计算出目前角度位置,最后由 PLL 进行锁相环,将角度确认,估算出反电动势方式一般常见有两种分别为 Observer ( 观测器 ) & SMO ( 滑模 ) 算法来进行估算,下列我们根据上篇流程进入开回路运转模式,借由 MCX_A freemaster 马达调适界面示波器功能,来确认参数是否可以正常运行,或者追踪角度速度太慢,导致无法运转。
在 MCX_A Freemaster 界面下在示波器功能图表上点右键,跳出 Oscilloscope 配置相关内容
在参数的 Variables 下,可以在 Graph Block 任意添加欲观测的参数借由 Add Variable,可以在 Variable 列表下更换观测参数
本文参数配置如下图
测试建议使用 Openloop 电流控制,将马达运转起来,获得漂亮的三项电流,借由电流需要估算出正确的角度资讯,确认对应频率是否一致,如下图所示
如果电流讯号回授不正常,角度资讯也会异常,我们借由 openloop 电流控制,如果正常的电流讯号,无法产生正常角度资讯,需要修正 Sensorless 参数
调适到可正常运行的图形如下
5. 电流环调适与确认
电流环调适我们主要需要调适 Iq 的电流 PID 控制器参数,借由将 Iq command & 回授值,利用 PWM 丢出在示波器上观看,或者利用 freemaster 将资讯丢出,在 NXP MCX_A 马达平台,调整时我们可以利用电流控制模式,确认 Iq 回授是否有追上 command ,是否存在稳态误差或者震动,当然以控制器来说,绝对不能发散,借由 PID 调适技巧将电流环调适完毕。
调适将 Iq command 与 Iq 可以稳定
调适 Iq command 变动状态
6. 速度环调适
速度环调适我们主要需要调适 Speed PID 控制器参数,借由将 Speed command & Speed 回授值,利用 freemaster 将资讯丢出,在 NXP MCX_A 马达平台,调整时我们可以利用 Speed 控制模式,确认 speed 回授是否有追上 command ,借由 PID 调适技巧将速度环调适完毕,也根据客户要求选择合适参数,追求速度,接受较大最大超越量,或者需要稳定无震荡 ( 临界阻尼 ),根据客户应用,对马达控制器要求也会不同。
Command 1000 -> 1500 震荡较大
调低 Kp 参数,调高 Ki 数值,优化震荡问题
7. 弱磁控制
弱磁控制为下图所描述,会新增 Id 的控制 PID ,将 Id 控制为负数,可以理解为抵销部分永久磁铁的磁力,让马达可以超越额定转速,而越有力的马达,可以达到的效果更加,但是要注意弱磁如果开太大或太久,会造成过多的热,导致永久磁铁可能会消磁,所以要注意弱磁开太大,电流耗损是否超过马达负荷,造成马达过热