[学习笔记] AC7811-FOC无感控制代码详解

[复制链接]
 楼主| 狗啃模拟 发表于 2023-9-30 11:02 | 显示全部楼层 |阅读模式
矢量控制原理
矢量控制框图
PMSM 的矢量控制也称为磁场定向控制(Field Oriented Control,FOC) 。在 FOC 中,电机的定子电流被分解为用于产生磁场的直流电流(励磁电流)与用于控制转矩的交轴电流(转矩电流),通过对转速和电流的双环控制实现电机的高性能运行。
878765178fbd33d03.png
PMSM 矢量控制算法中,除角度变量为 Q16(0~65535)格式外,其余算法中控制参数均为 Q15(-32768~32767)格式。

可以说矢量控制的前提就在三相电流的采样上,采样之后经过Clarke和Park变换,变成便于控制的D、Q轴坐标系。

所以三相电流采样是矢量控制的核心!

评论

———————————————— 版权声明:本文为CSDN博主「Iron2222」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/weixin_43824188/article/details/130139943  发表于 2023-9-30 11:02
 楼主| 狗啃模拟 发表于 2023-9-30 11:03 | 显示全部楼层
电流采样方式
电流在整个控制过程中的传递
5022165178fd99dc01.png
采样关键点
采样的关键是需要在三相逆变器高端关闭,低端打开的情况下进行采样,这是整体的采样点。

因此,采样会存在窗口时间,因为ADC转换完成需要一定数量级的时间,也就是说,在ADC转换完成之前,桥低端是不能关闭的,在这里,双电阻和单电阻采样需要考虑窗口时间的限制,而三电阻采样则不存在窗口时间(PWM占空比接近100%),可以根据SVPWM当前所在象限,进行分类,只需要采集其中不受窗口时间限制的两相电流,然后根据 Ia+Ib+Ic=0,进行电流的重构。

所以,电流采样的核心在:硬件电路的设计与采样时机的把握。
 楼主| 狗啃模拟 发表于 2023-9-30 11:03 | 显示全部楼层
三电阻
在三个桥臂的下臂MOS管基极串分流器再用运放放大。

这种方法主要是为了节省隔离器件成本。并且需要在固定时刻采样的值才有效。
9332365178fff70c44.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:03 | 显示全部楼层
什么时候采样合适?

如下图所示,在不同扇区需要采样的相电流,共同点是避免去采样PWM占空比接近100%的那一相电流。
908366517900bd76ba.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:03 | 显示全部楼层
怎么采样?

ST的电机库的做法,通过TIMER_CH4作为ADC采样的触发信号,而采样则可以通过修改TIM_CCR4寄存器去改变采样点,相当灵活的做法。
331216517901778a5d.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:04 | 显示全部楼层
双电阻
三电阻可减小至两个 (母线电流检测不可少),缺少的一相由计算得出。
354546517902471a2a.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:04 | 显示全部楼层
根据基尔霍夫电流定律,Ic=-Ia-Ib。

怎么采样?

双电阻采样无法避免窗口时间,所以需要限制最终PWM的占空比,为ADC转换预留足够的时间
617866517905986e09.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:05 | 显示全部楼层
单电阻
为进一步节省成本发展出直接在母线电阻上检测三相电流的方法。

这种方法需要分时采样,不同时刻的电流代表不同相的电流。
27571651790656fb0a.png

 楼主| 狗啃模拟 发表于 2023-9-30 11:05 | 显示全部楼层
为了便于理解整个采样的过程,为了表示逆变器的开关管的状态,

Sa表示A相的上下管,同理Sb表示B相的上下管;

这里规定:

Sa = 1表示上管导通,下管断开;
Sa = 0表示下管导通,上管断开;
 楼主| 狗啃模拟 发表于 2023-9-30 11:05 | 显示全部楼层
Sb和Sc以此类推;

Sa Sb Sc:100
709476517907598ae5.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:05 | 显示全部楼层
Sa Sb Sc:110
68174651790807f1b7.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:06 | 显示全部楼层
SVPWM不同扇区做成对应表格就是:
686676517909c9a1bb.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:06 | 显示全部楼层
因此,单电阻采样,需要在一个PWM周期内进行两次采样,具体如下图所示:
94787651790ab42ddb.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:06 | 显示全部楼层
图中的SAL,SBL,SCL分别对应整流桥的下管,因此在一个周期内分别进行了Sample 1和Sample 2这两次采样,对照上表可以推出;

Sample 1:采集了开关管状态为SAL SBL SCL:101==>SAH SBH SCH:010,此时采样电流为 IB;
Sample 2:采集了开关管状态为SAL SBL SCL:100==>SAH SBH SCH:011,此时采样电流为 −IA;
 楼主| 狗啃模拟 发表于 2023-9-30 11:06 | 显示全部楼层
搞懂原理了,那么什么时候去采?
97130651790c303e05.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:07 | 显示全部楼层
三者对比
77048651790ce434b8.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:07 | 显示全部楼层
坐标变换
Clark变换:把ADC采集到的三相定子电流从三轴(相差120°)定子坐标系转化成两轴(相差90°)定子坐标系。
19172651790e5eefbf.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:07 | 显示全部楼层
Park变换:把Iα与Iβ从两轴(相差90°)定子坐标系 转化成 两轴转子旋转坐标系(相对于转自来说是静止的)。
262236517910587ac3.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:08 | 显示全部楼层
电流变化:
86465651791175059f.png
 楼主| 狗啃模拟 发表于 2023-9-30 11:08 | 显示全部楼层
dq轴电流的PI控制
P就是比例,误差信号err*比例因子Kp,但P的影响会随着误差err逐渐接近于0而减小,导致系统始终存在一个微小的静态误差。

I(积分)就是用来消除静态误差的,I对静态误差进行连续的积分。随着时间的推移,静态误差不断的累积变大,再将这个累积误差*Ki,作为I的输出。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

67

主题

877

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部