1.电机控制
电机除了转,就只能转了,但它简单的现象背后却是一个典型的非线性、强耦合、多变量、周期性的机电能量转换的复杂系统。
电机控制无非就是达到三个控制目的:
①转矩控制
②速度控制
③位置控制
其中转矩控制是核心,因为矢量控制的核心目标就是为了让电机以稳定的转矩旋转,在这个基础上再实现速度环、位置环。举例子他们三环内外放置时的关系:在电流-速度环中,不同的电流电机内部就产生不同情况的磁场,面对不同负载,电流大,磁场强,转速快。在电流-速度-位置环中,位置是速度在时间上的积分,我们希望以稳定的速度走一段位置,那么对应速度,也对应着某一种电流情况。显然,电流环是最内环(重要)的
以三相无刷电机举例,它的三相对称正弦电流可以这样表示:
Ia=Im * cos(ωt+φ)
Ib=Im * cos(ωt+φ-120°)
Ic=Im * cos(ωt+φ+120°)
1.1 方法论
时域上直接建立的电机转矩动态数学模型,是一组含有时变系数的非线性微分方程,难以直接分析和求解,这方面随便拿一本电机类的书籍都有介绍。为了便于控制,需要简化数学模型,简化的基本方法是坐标变换。
所谓坐标变换就是将方程中的一组变量用一组新的变量来代替,或者说用新的坐标系去替换原来的坐标系,以便使分析、计算得以简化。若新、旧变量之间为线性关系,则变换为线性变换,电机分析中常用到的坐标变换都是线性变换。
目的很明确,强耦合系统解耦,非线性系统线性化处理。
我们希望三相电机像直流电机那样简单易控。
克拉克Clarke变换帮我们将三相电机等效成两相电机;
帕克Park变换帮我们将电流解耦,使我们控制交流电流像控制直流那样简便。
2.克拉克Clarke变换(3s/2s)
2.1 变换思想
克拉克变换将三相系统(在 abc 坐标系中)的时域分量转换为正交静止坐标系 (αβ) 中的两个分量。我们要把三相电机等效成两相电机,方便后续分析。
设Is为三相对称正弦电流的合成矢量。
Is=Ia+Ib+Ic
Clarke变换旨在利用向量分解,将三相坐标合成为两相坐标
根据投影,我们得到:
i_alpha=Ia-Ib * cos(π/3)-Ic * cos(π/3)
i_beta=Ib * cos(π/6)-Ic * cos(π/6)
用矩阵可以表示:
2.1 原始变换(k=1)
根据三相电机简化模型,由电路基尔霍夫定律:
Ia+Ib+Ic=0
展开后易得:
i_alpha=3/2 * Ia
i_beta=√3/2 * Ia + √3Ib
由动态图我们可以看到,通过克拉克变换,我们成功地将三相电机等效为了两相电机,这就是克拉克变换的意义。
通过类比,试想:部分步进电机就是两相电机,无需克拉克变换,直接使用两相的数据代入帕克变换中直接解耦,是否也能做FOC控制?
2.2 幅值不变原则的变换(k=2/3)
由Is易知:
Is=Ia+Ib+Ic=i_alpha+i_beta
故i_alpha+i_beta的模值依然是3/2 * Im
若我们希望合成前后的模值不变,即依然是Im,那我们就在前面乘以一个系数k,对其缩减,显而易见按,3/2k=1
那么k1=2/3
代入易得:
i_alpha= Ia
i_beta=1/√3 * Ia + 2/√3Ib
为什么要幅值不变?
电压和电流解耦用的克拉克变换和帕克变换方法必须是同一套,不能电流用这套克拉克变换和帕克变换,而电压用另一种。
仅仅是电流的话,电机正常运行时幅值上没有讲究;但电压就不一样,受到直流母线电压Vdc限制。这样做:
是为了后续SVPWM调制时,确保输出电压在正六边形内接圆里(半径为Um,类比上述推导中的电流Im),使电压输出波形最大不失真。
2.3 功率不变原则的变换(k=√(2/3))
<1>变换前
P0=Um * Im * 3(三相)
<2>变换后:
U=3/2 * k * Um
I=3/2 * k * Im
P=UI * 2(两相)
令P0=P:
解有等功率变换系数 k2=√(2/3)
代入易得:
i_alpha= √6/2 * Ia
i_beta=√2/2 * Ia + √2Ib
显然等功率变换时K比幅值不变变换情况下更小了,所以电压必定会被限制在电压圆内,这时等功率法下整定的K合理。
2.4 它的反变换
通过2.2或2.3的结论可逆推得到。
3.帕克Park变换(2s/2r)
3.1 变换思想
即使我们已经通过克拉克变化将三相变成了两相,但是从i_alpha和i_beta的展开式中,依旧含有时间t,电流依旧由时间决定,分析起来还是很复杂。
帕克变换中,在克拉克变换的基础上,试图将表达式中的时间t消去,就是帕克变换的核心思想和目的。
如图,旋转坐标轴以ω的角速度旋转。
3.2.变换公式
根据投影分析,我们得到:
i_d=i_alpha * cosθ+ i_beta * sinθ
i_q=-i_alpha * sinθ+i_beta * cosθ
3.3 变换推导
这里使用等幅值原则的结论进行推导。
我们尝试进一步简化:
从结论知,只要φ不变,id与iq在时域上,必是直线。
因为iq垂直与定子磁场,所以力矩只由iq决定;
而id与定子磁场平行,不作用于力矩控制。
3.4 它的反变换
v_alpha =v_d * cosθ-v_q * sinθ
v_beta=v_d * sinθ+v_q * cosθ
4.坐标变换结论
4.1 两种变换的总结
4.2 机械角度与电角度
设p是电机极数
则P=0.5p
P是电机的极对数
电角度=P * 机械角度
我们代入公式中计算的,用的都是电角度
我们Ia,Ib与Ic中的ωt+φ,ωt+φ-120°,ωt+φ+120°指的都是电角度。
4.3 ωt,θ,φ,和P的关系
φf或Ke 都表示是磁链系数,单位为V·s/rad,指的是单位rad/s机械转速下能产生的电机反电动势(正弦波或梯形波)最大值。
P:电机的极对数,可以帮我们求电角度
(若无特殊说明,ω都指电角度速ωe,ωm指机械角速度)
ωt,θ,φ 三者都是电角度
ωt=θ,是两相旋转坐标轴与两相静止坐标轴的夹角(电角度θe)。
φ 就有意思了,它是定子磁场和转子磁场的角度。
当定子磁场和转子磁场的角度为90°,即φ=90°时,转矩最大
5.坐标变换的变种
对于三相静止坐标系(3s)
我们分析时,要转换成两相静止坐标系(2s),也就是Clarke变换,但是Clarke变换对于不同开发厂商,它所使用的变换形式不一样。
5.1 Clarke变换
<1>α水平向左为正方向,β垂直向上为正方向(我们所用的):
<2>α水平向右为正方向,β垂直向下为正方向(ST所用的):
可以看出,和我们数学上的推理相符,Iβ’在<1>的Iβ基础上取反了。
<3>总结
我们习惯于使用的是以下形式:
有一些开发厂商使用的是以下形式,比如ST电机库:
我们当然可以选取其他的方向作为正方向进行变换,这个交给读者自行去尝试了!
5.2 相应的Park变换
无论我们在Clarke变换中怎么样选取两个轴的正方向,我们的Park变换都要与之对应。
<1>θe=0时,选取为d轴与A轴对齐的时候:
<2>θe=0时,选取为q轴与A轴对齐的时候:
5.3 Summary
我们可以由ST的资料对比分析以下:
对于坐标变换的理解,可以参考文章:
FOC中对坐标变换的理解及电角度校准
6.双环控制
6.1 表贴式PMSM电机的D/Q轴数学模型
同步旋转坐标系下:
两相等效坐标系下:
6.2 SPMSM的主流转矩控制方法(id=0法)
(此模型仅适用于表贴式PMSM电机)
(无刷直流电机BLDC一般是表贴式)
当id为0时,电流全部用于iq来进行力矩控制,发挥其最大转矩。
也就是说,定子磁场与转子磁场相差90°的时候,转子以最大力矩旋转!
为什么力矩控制时,大多数时id=0矢量控制法来做转矩控制?
6.1中已经表明表贴式PMSM电机转矩:
id并没有对转矩做出贡献。
这时候转矩方程是比较简单的,所以我们使id控制为0;
其中1.5这个系数与克拉克变换类型有关,P是极对数,φf是磁链系数,单位是V·s/rad,式子中可以看到,在id=0情况下,转矩是和iq直接相关的,转矩控制的本质就是电流控制。
注意:在硬件设计时,电流追踪检测的部分,一定不能设计出错。
6.3 双环的参数整定(精准理论法)
因为PI控制器是线性控制器,从图可以看出,这样做,就是为了让PI控制器专心去“应付”控制对象的线性部分。
6.4 Id与Iq的简单前馈解耦器
虽然我们通过帕克变换成功把励磁电流和转矩电流电流分离出来,但Iq会影响Id,Id也会影响Iq,他们还是有耦合的现象,并不像我们理想中那样他们只要单独控制就可以简单完事的。
所以在进行PI控制时,我们要根据它们的耦合关系做修改,当然,这种耦合是比较简单的,没有微积分运算:
具体的耦合关系:
R:定子电阻,单位为Ω
Ls:定子电感,单位为H
D:微分算子
ω:电气频率ωe,也就是你的电角速度,单位为rad/s
Ke:同φf,反电动势常数,单位为V·s/rad
所以在我们输出Vd或者Vq时,我们要在控制芯片加入这种耦合关系:
简单的前馈解耦器:
SPMSM中Ls=Ld=Lq
Tips:
一般来说,对于小功率的PMSM/BLDC电机的参数都很小,使得耦合项都很小,在这种情况下,不加入简单的解耦器,仅仅使用线性PI控制器进行控制,也能做到很好的效果,因为这时候PI控制器出来的电压分量可以很好地跟踪Ud/Uq.
但是对于大功率PMSM/BLDC电机,参数都比较大的时候,耦合项不可忽略,而PI控制器是线性的,这时候PI控制器出来的电压分量不能很好地跟踪Ud/Uq,这时候加入简单的解耦器是必要的,尽量让PI控制器去控制回路的线性部分,减少跟踪非线性部分的负担。
当然现实是不理想的,在电机的运行过程中,工况的变化,会使得电机参数有界浮动,而本文的方法都假设参数无论怎样都是不变的,出于笔者水平有限,这种现象的应对不做讲述。尽管如此,本文的一些结论旨在给读者提供一些有用的信息去了解电机控制。如果文章有一些错误或纰漏,还请指正。