1. 三相 PMSM 基本数学模型
当三相PMSM转子磁路的结构不同时,电机的运行性能、控制方法、制造工艺和适用场合也会不同。目前,根据永磁体转子上的位置不同,三相PMSM的转子结构可以分为表贴式和内置式两种结构。
一般表贴式永磁同步电机我们认为 L d = L q L_d = L_q Ld=Lq,内嵌式永磁同步电机 L d < L q L_d < L_q Ld<Lq。有些时候由于工艺问题,有些电机不能从肉眼上看出电机的永磁体是内嵌的还是表贴的可通过 DQ 轴电感量进行判断。
1.1 表贴式 PMSM
下图所示为表面贴装电机,与内置式 PMSM 相比,该电机具有低转矩纹波和低成本的优点。 由于所考虑电机类型的气隙磁通是平滑的,因此定子的电感值 L d = L q L_d = L_q Ld=Lq(非凸极 PMSM)
1.2 内置式 PMSM
下图所示为 IPMSM ,除同步转矩外,还具有额外的磁阻转矩。与 SPMSM 类型相比,它在给定的工作电流下提供更高的转矩。在内置式 PMSM 中,磁通路径的磁阻根据转子位置而变 化。这种磁凸极性会导致电机端子处的电感随转子位置变化。因此,受磁通路径中的永磁体 影响, L d L_d Ld 和 L q L_q Lq 的有效磁通长度不同,即 L d ≠ L q L_d\not=L_q Ld=Lq(凸极)。所以 IPMSM 具有电感凸极性, 并且它利用了磁阻转矩和永磁转矩。
2. 常用数学公式
2.1 ABC 三相静止坐标系
2.1.1 三相定子电压方程
{ u a = R s × i a + L d ψ a d t u b = R s × i b + L d ψ b d t u c = R s × i c + L d ψ c d t \begin{cases} u_a = R_s\times i_a + L\cfrac{d\psi_a}{d_t}\\ u_b = R_s\times i_b + L\cfrac{d\psi_b}{d_t}\\ u_c = R_s\times i_c + L\cfrac{d\psi_c}{d_t} \end{cases} ⎩ ⎨ ⎧ua=Rs×ia+Ldtdψaub=Rs×ib+Ldtdψbuc=Rs×ic+Ldtdψc
-
R s R_s Rs: 定子电阻
-
u a u_a ua, u b u_b ub, u c u_c uc :三相定子电压
-
i a i_a ia, i b i_b ib, i c i_c ic:三相定子电流
-
ψ a \psi_a ψa, ψ b \psi_b ψb, ψ c \psi_c ψc :三相定子磁链
2.1.2 三相定子磁链方程
由下面公式可以看出定子磁链方程是多变量,强耦合的
{ ψ a = L a a × i a + M a b × i b + M a c × i c + ψ f × c o s θ e ψ b = M b a × i a + L a a × i b + M a c × i c + ψ f × c o s ( θ e − 2 3 π ) ψ c = M c a × i a + M c b × i b + L c c × i c + ψ f × c o s ( θ e + 2 3 π ) \begin{cases} \psi_a = L_{aa}\times i_a + M_{ab}\times i_b + M_{ac}\times i_c+\psi_f\times cos\theta_e \\ \psi_b = M_{ba}\times i_a + L_{aa}\times i_b + M_{ac}\times i_c+\psi_f\times cos(\theta_e-\cfrac{2}{3}\pi) \\ \psi_c = M_{ca}\times i_a + M_{cb}\times i_b + L_{cc}\times i_c+\psi_f\times cos(\theta_e+\cfrac{2}{3}\pi) \end{cases} ⎩ ⎨ ⎧ψa=Laa×ia+Mab×ib+Mac×ic+ψf×cosθeψb=Mba×ia+Laa×ib+Mac×ic+ψf×cos(θe−32π)ψc=Mca×ia+Mcb×ib+Lcc×ic+ψf×cos(θe+32π)
-
L a a L_{aa} Laa:A 相自感
-
M b a M_{ba} Mba:B 相和 A 相的互感,一般情况下三相的自感相同,三相的互感也相同
-
ψ f ψ_f ψf:电机永磁体的磁链
-
θ e θ_e θe:转子电角度,即 D 轴与 A 轴夹角的空间电角度也可以说是转子 N 极和 A 相轴线之间的夹角
2.2 α-β 静止坐标系
2.2.1 α-β 轴电压方程
[ u α u β ] = [ R s + d d t L d ω e ( L d − L q ) − ω e ( L d − L q ) R s + d d t L d ] [ i α i β ] + [ e α e β ] \begin{bmatrix} u_\alpha \\ u_\beta \end{bmatrix} = \begin{bmatrix} R_s+\cfrac{d}{dt}L_d & \omega_e(L_d-Lq) \\ -\omega_e(L_d-Lq) & R_s+\cfrac{d}{dt}L_d \end{bmatrix}\begin{bmatrix} i_\alpha \\ i_\beta \end{bmatrix} + \begin{bmatrix} e_\alpha \\ e_\beta \end{bmatrix} [uαuβ]= Rs+dtdLd−ωe(Ld−Lq)ωe(Ld−Lq)Rs+dtdLd [iαiβ]+[eαeβ]
{ u α = R s i α + L s d d t i α − ω e ψ f s i n θ e u β = R s i β + L s d d t i β + ω e ψ f c o s θ e \begin{cases} u_\alpha = R_si_\alpha+L_s\cfrac{d}{dt}i_\alpha-\omega_e\psi_fsin\theta_e\\ u_\beta = R_si_\beta+L_s\cfrac{d}{dt}i_\beta+\omega_e\psi_fcos\theta_e \end{cases} ⎩ ⎨ ⎧uα=Rsiα+Lsdtdiα−ωeψfsinθeuβ=Rsiβ+Lsdtdiβ+ωeψfcosθe
- u α u_\alpha uα、 u β u_\beta uβ:α-β 轴电压
- R s R_s Rs:相电阻
- L s L_s Ls:相电感
- ω e \omega_e ωe: 电机角速度
- θ e θ_e θe :电角度
2.2.2 α-β 轴反电动势方程
[ e α e β ] = [ ( L d − L q ) ( ω e i d − d d t i q ) + ω e ψ f ] [ − s i n θ e c o s θ e ] \begin{bmatrix} e_\alpha \\ e_\beta \end{bmatrix} = \begin{bmatrix} (L_d - L_q)(\omega_ei_d-\cfrac{d}{d_t}i_q)+\omega_e\psi_f \end{bmatrix}\begin{bmatrix} -sin\theta_e \\ cos\theta_e \end{bmatrix} [eαeβ]=[(Ld−Lq)(ωeid−dtdiq)+ωeψf][−sinθecosθe]
- L d L_d Ld、 L q L_q Lq:d-q 轴电感
- ω e \omega_e ωe: 电机角速度
- θ e θ_e θe :电角度
- e α e_\alpha eα、 e β e_β eβ:分别是 α-β 轴的反电动势
2.2.3 α-β 轴磁链方程
{ d ψ α d t = L s d d t i α − ω e ψ f s i n θ e d ψ β d t = L s d d t i β + ω e ψ f c o s θ e \begin{cases} \cfrac{d\psi_\alpha}{dt} = L_s\cfrac{d}{dt}i_\alpha-\omega_e\psi_fsin\theta_e\\ \cfrac{d\psi_\beta}{dt} = L_s\cfrac{d}{dt}i_\beta+\omega_e\psi_fcos\theta_e \end{cases} ⎩ ⎨ ⎧dtdψα=Lsdtdiα−ωeψfsinθedtdψβ=Lsdtdiβ+ωeψfcosθe
- ψ α \psi_\alpha ψα、 ψ β \psi_\beta ψβ:α-β 轴磁链
- ω e \omega_e ωe: 电机角速度
- θ e θ_e θe :电角度
- L s L_s Ls:相电感
2.3 d-q 旋转坐标系
2.3.1 d-q 轴电压方程
{ u d = R s i d + L d d d t i d − ω e L q i q u q = R s i q + L q d d t i q + ω e ( L d i d + ψ f ) \begin{cases} u_d = R_si_d + L_d\cfrac{d}{dt}i_d-\omega_eL_qi_q\\ u_q = R_si_q + L_q\cfrac{d}{dt}i_q+\omega_e(L_di_d+\psi_f) \end{cases} ⎩ ⎨ ⎧ud=Rsid+Lddtdid−ωeLqiquq=Rsiq+Lqdtdiq+ωe(Ldid+ψf)
-
u d u_d ud、 u q u_q uq:d-q 轴电压
-
i d i_d id、 i q i_q iq:d-q 轴电流
-
ω e \omega_e ωe:电转速
-
p p p:极对数
-
ψ f \psi_f ψf:永磁体磁链
-
R s R_s Rs: 相电阻
2.3.2 电磁转矩方程
τ e m = 3 2 p n i q i d ( L d − L q ) + 3 2 p n i q ψ f \tau_{em} =\cfrac{3}{2}p_ni_qi_d(L_d-L_q)+\cfrac{3}{2}p_ni_q\psi_f τem=23pniqid(Ld−Lq)+23pniqψf
- τ e m \tau_{em} τem:电磁转矩
- p n p_n pn :电机极对数
- 3 2 p n i q ψ f \cfrac{3}{2}p_ni_q\psi_f 23pniqψf :励磁转矩
- 3 2 p n i q i d ( L d − L q ) \cfrac{3}{2}p_ni_qi_d(L_d-L_q) 23pniqid(Ld−Lq):磁阻转矩
从上面的等式可以看出,磁阻转矩是由于 d-q 轴的电感不同所产生的。所以表贴电机就没有磁阻转矩。想要输出的扭矩够大不仅需要从电机本体下手(增大永磁同步电机的永磁体磁链和增加极对数都能增加电机输出扭矩),还需要在控制上考虑,如果电机 L d ≠ L q L_d ≠ L_q Ld=Lq 用 i d = 0 i_d=0 id=0 的控制模式就不能输出最好的效率,MTPA 的控制方法就出来了。
2.3.3 d-q 轴运动方程
τ e m = τ L + 1 p n B ω e + 1 p n J d ω d t \tau_{em} =\tau_{L}+\cfrac{1}{p_n}B\omega_e+\cfrac{1}{p_n}J\cfrac{d\omega}{dt} τem=τL+pn1Bωe+pn1Jdtdω
- τ e m \tau_{em} τem:电磁转矩
- τ L \tau_L τL:负载转矩
- p n p_n pn :电机极对数
- B B B:粘滞摩擦系数
- J J J:转动惯量
- ω e \omega _e ωe:角速度
2.3.4 d-q 轴磁链方程
{ ψ d = L d i d + ψ f ψ q = L q i q \begin{cases} \psi_d = L_di_d+\psi_f \\ \psi_q = L_qi_q \end{cases} {ψd=Ldid+ψfψq=Lqiq
- ψ d ψ_d ψd、 ψ q ψ_q ψq 是:d-q 轴的磁链
- ψ f ψ_f ψf:电机永磁体的磁链
平时说的弱磁控制就是给 − i d −i_d −id ,从上面的公式就可以看出 ψ f ψ_f ψf 不变,当 i d < 0 i_d < 0 id<0 就达到了减小 d 轴磁链的效果。
2.3.5 功率估算
P o u t = 3 2 ( u d i d + u q i q ) P_{out}=\cfrac{3}{2}(u_di_d+u_qi_q) Pout=23(udid+uqiq)
-
u d u_d ud、 u q u_q uq:d-q 轴电压
-
i d i_d id、 i q i_q iq:d-q 轴电流
-
P o u t P_{out} Pout:输出功率
2.4 角度与速率转换
2.4.1 电角度与机械角度
机械角度转一圈,就有极对数个电角度,所以:
θ
e
=
θ
×
P
n
\theta_e = \theta \times P_n
θe=θ×Pn
- θ e \theta_e θe:电角度
- θ \theta θ:机械角度
- P n P_n Pn:极对数
2.4.2 角速度与速度
{ ω e = 2 π f ( r a d / s ) n = 60 f p n ( r p m / m i n ) \begin{cases} \omega_e = 2\pi f(rad/s)\\ n = \cfrac{60f}{p_n}(rpm/min) \end{cases} ⎩ ⎨ ⎧ωe=2πf(rad/s)n=pn60f(rpm/min)
角速度与电机转速相互转换:
ω
e
=
2
π
p
n
n
60
\omega_e = \cfrac{2\pi p_nn}{60}
ωe=602πpnn
- ω e \omega_e ωe:角速度
- f f f:电机频率
- n n n:电机转速
- p n p_n pn:极对数
其中在实际工程中可以用示波器读取相电流的频率值。通过这个公式可以方便的在实际应用中测量转速或者极对数参数。
2.5 电压极限圆和电流极限(椭)圆
令:
I m 2 = i d 2 + i q 2 I^2_m = i^2_d+i_q^2 Im2=id2+iq2
前面介绍了 d-q 轴坐标下电压方 程,现在考虑稳态,这里可以先忽略 R s R_s Rs,稳态的时 候 i d i_d id 和 i q i_q iq 不再变化,并把电压方程和磁链方程整合,因此电压方程可以简化为:
{ u d = − ω e L q i q = − ω e ψ q u q = ω ( L d i d + ψ f ) = ω e ψ d \begin{cases} u_d = -\omega_eL_qi_q=-\omega_e\psi_q \\ u_q = \omega(L_di_d+\psi_f)=\omega_e\psi_d \end{cases} {ud=−ωeLqiq=−ωeψquq=ω(Ldid+ψf)=ωeψd
2.5.1 表贴电机电压与电流极限圆
当电机为表贴电机时: L d = L q = L L_d = L_q = L Ld=Lq=L
同样,令
u m 2 = u d 2 + u q 2 u^2_m = u^2_d+u_q^2 um2=ud2+uq2
代入得:
(
u
m
ω
e
L
)
2
=
(
i
d
+
ψ
f
L
)
2
+
i
q
2
(\cfrac{u_m}{\omega_eL})^2=(i_d+\cfrac{\psi_f}{L})^2+i^2_q
(ωeLum)2=(id+Lψf)2+iq2
画出电压和电流的曲线圆:
其中绿色是电压极限圆,红色是电流极限圆。
由上图可得到以下结论:
- 电压极限圆不是正好在电流坐标系的中心,偏置为 ψ f L \cfrac{\psi_f}{L} Lψf
- 转速越高,电压圆的半径越小
- 电机必须工作在电压圆与电流圆同时覆盖的区域
当电机转速很低时,电压极限圆很大,电流极限是其主要约束,因此低速下电流可以一直保持在 i q i_q iq 为最大值状态,此时称之为恒转矩区,如下图所示的 T1 区。当转速继续上升时,电压和电流极限圆都成为约束,两者的交点处为工作点,如下图的 T2 和 T3 区, i d i_d id 开始出现分量,此时成为弱磁状态,即永磁体产生的磁场被 i d i_d id 产生的磁场削弱了,进而在同样的电压下能够产生更高的转速。
2.5.1 凸极电机电压与电流极限圆
当电机为凸极电机时: L d ≠ L q L_d \not= L_q Ld=Lq,电压圆方程为
( u m ω e L ) 2 = L d 2 ( i d + ψ f L ) 2 + ( L q i q ) 2 (\cfrac{u_m}{\omega_eL})^2=L^2_d(i_d+\cfrac{\psi_f}{L})^2+(L_qi_q)^2 (ωeLum)2=Ld2(id+Lψf)2+(Lqiq)2
这里的电压圆已经变成椭圆了
此时任意的 i d i_d id 和 i q i_q iq 都对应一个力矩值,把力矩相同的线连起来就得到了一簇等力矩曲线,如下图三条黑色的等力矩线。
- 同一个等力矩的曲线会和不同的电流圆相切,产生一系列的切点,这些切点的轨迹就是 MTPA(最大力矩比电流)控制点,因为在一定的电流极限下,该切点是力矩最大的点。
- 同一个等力矩的曲线会和不同的电压椭圆相切,产生一系列的切点,这些切点的轨迹就 是 MFPT(最大转速比力矩)控制点,因为在一定电压极限(电压代表着速度)下,该切点是速度最大的点。
控制上,我们就需要根据实际不同的工况,找到 MTPA 对应的 Id 和 Iq 的曲线点,通过查表或者其他方法给到控制电流指令。
3. 电机参数的测量和计算
3.1 相电阻
3.1.1 万用表测量
相电阻可以使用万用表做粗略测量,用万用表的两支表笔接电机的任意两相,所得到的阻值的一半就是相电阻。
三相电机的等效电路如下图所示。 R a R_a Ra、 R b R_b Rb、 R c R_c Rc 分别为每相的等效电阻, L a L_a La、 L b L_b Lb、 L c L_c Lc分别为每相的等效电感。
假设万用表的两支表笔分别接电机三相中的任意两相,3次测得的阻值分别为
R
1
R_1
R1、
R
2
R_2
R2、
R
3
R_3
R3,那么:
{
R
1
=
R
a
+
R
b
R
2
=
R
a
+
R
c
R
3
=
R
b
+
R
c
\begin{cases} R_1 = R_a+R_b\\ R_2 = R_a+R_c\\ R_3 = R_b+R_c \end{cases}
⎩
⎨
⎧R1=Ra+RbR2=Ra+RcR3=Rb+Rc
假定电机的三相对称,电阻值相等,即 R a = R b = R c R_a=R_b=R_c Ra=Rb=Rc,可以得出电机的相电阻 R S R_S RS,为
R s = R 1 + R 2 + R 3 3 × 1 2 R_s = \cfrac{R_1+R_2+R_3}{3}\times\cfrac{1}{2} Rs=3R1+R2+R3×21
3.1.2 电桥测量
相电阻使用电桥测量时:将频率设为 1kHz,电压设为1V,然后用电桥的两支表笔接电机的任意两相,所得到阻值的一半就是相电阻。
为了提高测量精度,也可以像万用表测量一样,分别测电机三相中的任意两相。
三相电机的等效电路如下图所示。 R a R_a Ra、 R b R_b Rb、 R c R_c Rc 分别为每相的等效电阻, L a L_a La、 L b L_b Lb、 L c L_c Lc分别为每相的等效电感。
假设电桥的两支表笔分别接电机三相中的任意两相,3次测得的阻值分别为
R
1
R_1
R1、
R
2
R_2
R2、
R
3
R_3
R3,那么:
{
R
1
=
R
a
+
R
b
R
2
=
R
a
+
R
c
R
3
=
R
b
+
R
c
\begin{cases} R_1 = R_a+R_b\\ R_2 = R_a+R_c\\ R_3 = R_b+R_c \end{cases}
⎩
⎨
⎧R1=Ra+RbR2=Ra+RcR3=Rb+Rc
假定电机的三相对称,电阻值相等,即 R a = R b = R c R_a=R_b=R_c Ra=Rb=Rc,可以得出电机的相电阻 R S R_S RS,为
R s = R 1 + R 2 + R 3 3 × 1 2 R_s = \cfrac{R_1+R_2+R_3}{3}\times\cfrac{1}{2} Rs=3R1+R2+R3×21
3.1.3 电源测量
使用直流电源测量时,可以将电源电流限制到电机额定电流的10%,然后接电机的任意两相,通过观测直流电源输出的电压电流来通过欧姆定律计算出电机的电阻阻值相电阻。
为了提高测量精度,也可以像万用表测量一样,分别接电机三相中的任意两相。
三相电机的等效电路如下图所示。 R a R_a Ra、 R b R_b Rb、 R c R_c Rc 分别为每相的等效电阻, L a L_a La、 L b L_b Lb、 L c L_c Lc分别为每相的等效电感。
假设电源分别接电机三相中的任意两相,3次测得的阻值分别为
V
1
、
I
1
V_1、I_1
V1、I1、
V
2
、
I
3
V_2、I_3
V2、I3、
V
3
、
I
3
V_3、I_3
V3、I3,那么:
{
R
1
=
U
1
/
I
1
R
2
=
U
2
/
I
2
R
3
=
U
3
/
I
3
\begin{cases} R_1 = U_1/I_1\\ R_2 = U_2/I_2\\ R_3 = U_3/I_3 \end{cases}
⎩
⎨
⎧R1=U1/I1R2=U2/I2R3=U3/I3
假定电机的三相对称,电阻值相等,流过的电流相同,可以得出电机的相电阻 R S R_S RS,为
R s = R 1 + R 2 + R 3 3 R_s = \cfrac{R_1+R_2+R_3}{3} Rs=3R1+R2+R3
3.2 相电感
3.2.1 电桥测量
相电感使用电桥测量时:将频率设为 1kHz,电压设为1V,然后用电桥的两支表笔接电机的任意两相,所得到阻值的一半就是相电阻。
为了提高测量精度,也可以像万用表测量一样,分别测电机三相中的任意两相。
三相电机的等效电路如下图所示。 R a R_a Ra、 R b R_b Rb、 R c R_c Rc 分别为每相的等效电阻, L a L_a La、 L b L_b Lb、 L c L_c Lc分别为每相的等效电感。
假设电桥的两支表笔分别接电机三相中的任意两相,3次测得的阻值分别为
L
1
L_1
L1、
L
2
L_2
L2、
L
3
L_3
L3,那么:
{
L
1
=
L
a
+
L
b
L
2
=
L
a
+
L
c
L
3
=
L
b
+
L
c
\begin{cases} L_1 = L_a+L_b\\ L_2 = L_a+L_c\\ L_3 = L_b+L_c \end{cases}
⎩
⎨
⎧L1=La+LbL2=La+LcL3=Lb+Lc
假定电机的三相对称,电感值相等,即 L a = L b = L c L_a=L_b=L_c La=Lb=Lc 分,可以得出电机的相电阻 L S L_S LS,为
L s = L 1 + L 2 + L 3 3 × 1 2 L_s = \cfrac{L_1+L_2+L_3}{3}\times\cfrac{1}{2} Ls=3L1+L2+L3×21
3.2.3 d-q 轴电感计算
无刷直流电机控制有时候需要精确地获取d-q轴的等效电感,此时可以借助 d-q 轴等效电压方程来计算:
{ u d = R s i d + L d d d t i d − ω e L q i q u q = R s i q + L q d d t i q + ω e ( L d i d + ψ f ) \begin{cases} u_d = R_si_d + L_d\cfrac{d}{d_t}i_d-\omega_eL_qi_q\\ u_q = R_si_q + L_q\cfrac{d}{d_t}i_q+\omega_e(L_di_d+\psi_f) \end{cases} ⎩ ⎨ ⎧ud=Rsid+Lddtdid−ωeLqiquq=Rsiq+Lqdtdiq+ωe(Ldid+ψf)
当电机处于稳态时,动态微分项为0,上式可以简化为:
{ u d = R s i d − ω e L q i q u q = R s i q + ω e ( L d i d + ψ f ) \begin{cases} u_d = R_si_d-\omega_eL_qi_q\\ u_q = R_si_q+\omega_e(L_di_d+\psi_f) \end{cases} {ud=Rsid−ωeLqiquq=Rsiq+ωe(Ldid+ψf)
由此可以计算出 d-q轴 的等效电感:
$$
\begin{cases}
L_d = \cfrac{u_q-R_si_q-p_n\omega_e\psi_f}{p_n\omega i_d}\
L_q = \cfrac{R_si_d-u_d}{p_n\omega i_q}
\end{cases}
$$
-
u d u_d ud、 u q u_q uq:d-q 轴电压
-
i d i_d id、 i q i_q iq:d-q 轴电流
-
ω e \omega_e ωe:电角速度
-
ω \omega ω:机械转速
-
p n p_n pn:极对数
-
ψ f \psi_f ψf:永磁体磁链
-
R s R_s Rs: 相电阻
3.3 极对数
3.3.1 示波器测量
用示波器探头一根线夹住电机一根线,另一根用探头测,然后旋转电机一圈,会在示波器上连续出现对应正弦波形,然后数一下波峰个数,为偶数值再除以2,就是电机的极对数。
3.3.2 电源测量
使用直流电源测量时,可以将电源电流限制到电机额定电流的10%,然后接电机的任意两相,也可以将电流缓慢往上加。
- 手动转动转子,以便让转子转向在一个稳定的角度位置,这个角度位置也是电角度零点。
- 然后在转子转动后的稳定位置做个标记。
- 转子极对数即等于稳定位置的个数,也就是感觉顿了几次,极对数就是顿的次数。
3.4 反电动势测量
示波器探头接一相,地接电机另外两相任意一相,转动电机测出反电动势波形,取中间一个波形,测量其峰峰值和频率
K e = 1000 × P × V p p 2 × 1.73 × 60 × f K e = 3 ω e ψ f K_e = 1000\times P\times\cfrac{Vpp}{2\times1.73\times60\times f} \\ K_e = \sqrt3 \omega_e\psi_f Ke=1000×P×2×1.73×60×fVppKe=3ωeψf
- K e K_e Ke:反电动势
- p n p_n pn:极对数
- V p p V_{pp} Vpp:峰峰值
- f f f:频率
- ω e \omega_e ωe:角速度
- ψ f \psi_f ψf:磁链
3.5 磁链
磁链是电机内部的磁场分布
ψ
f
=
K
e
3
ω
e
ψ
f
=
u
q
−
R
s
i
q
−
ω
e
L
d
i
d
ω
e
\psi_f = \cfrac{K_e}{\sqrt3\omega_e} \\ \psi_f = \cfrac{u_q - R_si_q-\omega_e L_di_d}{\omega_e}
ψf=3ωeKeψf=ωeuq−Rsiq−ωeLdid
- K e K_e Ke:反电动势
- ω e \omega_e ωe:电角速度
- ψ f \psi_f ψf:磁链
3.6 转矩常数
转矩常数与电机的设计和构造有关,在实际应用中,通常会使用转矩常数来计算所需的电流,以达到期望的电机转矩输出
K
t
=
1.5
ψ
f
p
n
K
t
=
1.5
ψ
f
p
n
K_t = 1.5\psi_f p_nK_t = 1.5\psi_f p_n
Kt=1.5ψfpnKt=1.5ψfpn
- K t K_t Kt:转矩常数
- p n p_n pn:极对数
- ψ f \psi_f ψf:磁链
3.7 转动惯量
电机加减速控制常常会涉及转动惯量的测量。转动惯量是一种表征刚体转动惯性大小的物理量,与刚体的质量、质量相对于转轴的分布等有关。
转动惯量对整个无刷电机控制系统的精度、稳定性以及动态响应都有很大的影响,特别是在频繁的正反转切换、加减速过程中,转动惯量的影响非常明显。
小惯量的电机启动很快,制动性能也好,频繁加减速响应快,适合轻负载、高转速的场合。但是,如果负载很大,电机惯量很小,那么电机轴就容易受损,因此电机的转动惯量要与折算到电机轴的负载惯量尽量匹配,过大、过小都不合适。
3.7.1 自减速法
以额定励磁电流驱动电机,当转速高于额定转速时,让电机空载运转。等电机平稳后迅速切断电机电源,电机在惯性状态下会继续运行,并自然减速,测量电机的减速曲线,如图所示。电机的转动惯量可以由下式计算:
J
=
P
4
×
1.37
×
n
1
2
−
n
2
2
t
2
−
t
1
×
1
0
6
J=\cfrac{P}{4\times1.37\times\cfrac{n^2_1-n^2_2}{t_2-t_1}}\times10^6
J=4×1.37×t2−t1n12−n22P×106
4. Field Oriented Control
4.1 矢量控制架构
矢量控制架构如图所示:电流环外部是速度环,通过安装在电机底部的位置传感器或者无感观测器算法获得转子位置信息,并计算反馈速度,与给定速度进行比较,将结果送入速度 PI 控制器,控制转矩电流输出。之后,转矩电流进入电流环转矩PI控制器,以便输出 d-q 轴电压。这个电压是无法直接驱动电机的,因此需要将 d-q 两相旋转坐标系下的电压经过 Park 反变换以及 Clarke 反变换,变换为 A-B-C 三相静止坐标系下的电压,以驱动三相电机。
矢量控制的整体流程总结如下:
- 利用 ADC 测量分流电阻的电压值,并通过相电流重构转换成三相电流值。根据基尔霍夫电流定律,同一时刻流入某一节点的电流等于流出该节点的电流,因此,同一时刻只需采集三相电流中的两相即可重构出三相电流。
- 将采集到的电流值进行 Clarke 与 Park 变换,最终得到d-q轴电流。
- 利用位置传感器或者角度估算器计算转子电角度和转子角速度。
- 比较目标速度与实际反馈速度,将结果送入**速度 PI **控制器进行速度控制,以输出电流环需要的ig、iac
- 将速度环输出的电流值送入电流 PI 控制器,以输出需要的电压值 v d 、 v q v_d、v_q vd、vq。
- 对 d-q 轴的电压值进行坐标反变换以及 SVPWM,最终得到PWM占空比,控制逆变器输出。
所以矢量控制需要直接或者间接的得到:
- 三相电流
- 电机角度(无感估算、有感)
4.2 坐标变换
4.2.1 Clarke 变换
Clarke 变换就是将 A-B-C 三相静止坐标系变换到 a-β 两相静止坐标系的过程。
Clarke 变换如图所示。
{
i
α
=
i
a
i
β
=
(
i
b
−
i
c
)
×
3
3
\begin{cases} i_\alpha = i_a \\ i_\beta = (i_b-i_c)\times\cfrac{\sqrt{3}}{3} \end{cases}
⎩
⎨
⎧iα=iaiβ=(ib−ic)×33
4.2.2 Park 变换
Park 变换就是将 α-β 轴决定的两相静止坐标系变换为随磁场旋转的 d-q 坐标系。
Park 变换如图所示。
{ i d = i α c o s θ + i β s i n θ i q = − i α s i n θ + i β c o s θ \begin{cases} i_d = i_\alpha cos\theta+i_\beta sin\theta \\ i_q = -i_\alpha sin\theta+i_\beta cos\theta \end{cases} {id=iαcosθ+iβsinθiq=−iαsinθ+iβcosθ
下图形象的表示了 Clarke 变换和 Park 变换后的波形:
4.2.3 Park 逆变换
矢量控制的最后一个环节要将电流环输出的 v d 、 v q v_d、v_q vd、vq 进行坐标反变换,形成三相电机所需要的电压值,然后送到svpwm或者spwm中去。
Park 反变换就是将两相旋转坐标系下的 v d 、 v q v_d、v_q vd、vq 变换成 a-β 两相静止坐标系的 v α 、 v β v_\alpha、v_\beta vα、vβ
{ v α = v d c o s θ − v q s i n θ v β = v d s i n θ + v q c o s θ \begin{cases} v_\alpha = v_d cos\theta-v_q sin\theta \\ v_\beta = v_d sin\theta+v_q cos\theta \end{cases} {vα=vdcosθ−vqsinθvβ=vdsinθ+vqcosθ
4.2.4 Clarke 逆变换
Clarke 逆变换就是将 a-β 两相静止坐标系变换到 A-B-C 三相静止坐标系的过程。
这种情况下得出的三相电压就是三个相差120°的正弦波,可直接用于电机的控制,也可以作为谐波注入式svpwm的输入,该svpwm调制方法也被叫做中点平移法
{
u
a
=
u
β
u
b
=
(
−
u
α
+
3
u
β
)
/
2
u
c
=
(
−
u
α
−
3
u
β
)
/
2
\begin{cases} u_a = u_\beta \\ u_b = (-u_\alpha+\sqrt3u_\beta)/2\\ u_c = (-u_\alpha-\sqrt3u_\beta)/2 \end{cases}
⎩
⎨
⎧ua=uβub=(−uα+3uβ)/2uc=(−uα−3uβ)/2
4.3 SVPWM
4.3.1 SVPWM 原理
SVPWM的全称是Space Vector Pulse Width Modulation,即空间矢量脉宽调制。它通过三相逆变器的6个功率管输出随时间变化的PWM波,模拟三相对称正弦电流形成的电压矢量圆,产生接近圆形的磁链轨迹。
SVPWM利用平均值等效原理,在一个开关周期内,对基础矢量加以组合,产生与期望电压矢量相同的效果。根据电压矢量的不同判断其所在的扇区区间,并利用相应扇区的基础矢量不断合成需要的电压矢量。这样,电压矢量转动一圈,即在空间上形成一个旋转的近似圆形的磁场。图4.1所示为典型的三相逆变器驱动电路。
Q 1 Q 6 Q₁~Q₆ Q1 Q6为三相逆变器的6个功率管。同一时刻,同一桥臂上下两个功率管不能同时开通,否则会造成电源短路。
因此,一般要在互补PWM波中加入死区,防止短路造成危害。
由于上下两个功率管必须互补操作,因此可以使用上桥臂功率管的状态表示该桥臂对应的那一相的状态。只有当上桥臂开通后,对应的那一相与电源的正极连通,该相才有正向电流流过。如果下桥臂开通,则该相直接与电源的负极连接,电流从电机的端线流出,通过下桥臂的功率管进入电源的负极。
比如,Q₁开通、Q₂关断,电流会从DC+经Q₁流入电机的A相;Q₁关断、Q₂开通,电流会从电机的A相流出,经Q₂流入电源的DC-。
假定上桥臂开通,下桥臂关断,将该桥臂的状态记为1,反之记为0。因为有3个桥臂,因此我们可以定义开关函数
S
x
(
x
=
a
,
b
,
c
)
S_x(x=a,b,c)
Sx(x=a,b,c)为:
S
x
=
{
1
−
上桥臂开通,下桥臂关断
0
−
上桥臂关断,下桥臂开通
S_x=\begin{cases} 1-上桥臂开通,下桥臂关断 \\ 0-上桥臂关断,下桥臂开通 \end{cases}
Sx={1−上桥臂开通,下桥臂关断0−上桥臂关断,下桥臂开通
于是,3个桥臂的状态可以有
2
3
=
8
2³=8
23=8种,也就是 A、B、C 三相共有8种状态组合。
假设一种状态组合为 A 相上桥臂开通,下桥臂关断,A相直接连接到电源的正极;B 相上桥臂关断,下桥臂开通,B 相直接连接到电源的负极;C 相上桥臂关断,下桥臂开通,C 相直接连接到电源的负极。也就是说 S a = 1 、 S b = 0 、 S c = 0 S_a=1、S_b=0、S_c=0 Sa=1、Sb=0、Sc=0,此时的等效电路如图所示。
所以用
U
a
、
U
b
、
U
c
U_a、U_b、U_c
Ua、Ub、Uc 表示各相的相电压,也就是各相相对于电机中性点N的电压:
{
U
a
=
U
A
−
U
N
U
b
=
U
B
−
U
N
U
c
=
U
C
−
U
N
\begin{cases} U_a = U_A-U_N \\ U_b = U_B-U_N \\ U_c = U_C-U_N \end{cases}
⎩
⎨
⎧Ua=UA−UNUb=UB−UNUc=UC−UN
那么在
S
x
(
x
=
a
,
b
,
c
)
S_x(x=a,b,c)
Sx(x=a,b,c)的状态为 100 时,B 相与 C 相相当于并联后再与 A 相串联,根据这个等效电路可以推出:
{
U
a
=
2
3
U
d
c
U
b
=
−
1
3
U
d
c
U
c
=
−
1
3
U
d
c
\begin{cases} U_a = \cfrac{2}{3}U_{dc} \\ U_b = -\cfrac{1}{3}U_{dc} \\ U_c = -\cfrac{1}{3}U_{dc} \end{cases}
⎩
⎨
⎧Ua=32UdcUb=−31UdcUc=−31Udc
将上面计算的值,代入三相对称正弦电压矢量合成的公式:
U
o
u
t
=
2
3
(
U
a
+
U
b
e
j
2
π
3
+
U
c
e
−
j
2
π
3
)
U_{out}=\cfrac{2}{3}(U_a+U_be^{j\cfrac{2\pi}{3}}+U_ce^{-j\cfrac{2\pi}{3}})
Uout=32(Ua+Ubej32π+Uce−j32π)
前面的系数
2
3
\cfrac{2}{3}
32是为了保证变化前后幅值不变原则,因此可以得出:
U
o
u
t
=
2
3
[
2
3
U
d
c
−
1
3
U
d
c
(
c
o
s
2
π
3
+
j
s
i
n
2
π
3
)
−
1
3
U
d
c
(
c
o
s
2
π
3
−
j
s
i
n
2
π
3
)
]
U_{out}=\cfrac{2}{3}[\cfrac{2}{3}U_{dc}-\cfrac{1}{3}U_{dc}(cos\cfrac{2\pi}{3}+jsin\cfrac{2\pi}{3})-\cfrac{1}{3}U_{dc}(cos\frac{2\pi}{3}-jsin\cfrac{2\pi}{3})]
Uout=32[32Udc−31Udc(cos32π+jsin32π)−31Udc(cos32π−jsin32π)]
整理得:
U
o
u
t
=
2
3
U
d
c
=
2
3
U
d
c
j
0
U_{out}=\cfrac{2}{3}U_{dc}=\cfrac{2}{3}U_{dc^{j_0}}
Uout=32Udc=32Udcj0
同理可以推出其他状态下的相电压,并根据三相合成的公式推出合成矢量的大小和方向,从上面的计算可以看出,合成矢量可以表示成
U
o
u
t
=
2
3
U
d
c
e
ω
e
t
,
ω
e
=
2
π
f
U_{out}=\cfrac{2}{3}U_{dc}e^{\omega_et},\omega_e=2\pi f
Uout=32Udceωet,ωe=2πf,6个基础矢量的模长等值,均为
2
3
U
d
c
\cfrac{2}{3}U_{dc}
32Udc。
将上面的 8 个矢量放到矢量分布图中,红色为 A-B-C 三相空间静止坐标系。
U 0 ( 100 ) U₀(100) U0(100) 表示 A 相上桥臂开通,A 相直接连接到电源的正极;B相和C相下桥臂开通,B相和C相直接连接到电源的负极。此时起作用的是A相,因此该矢量与A轴重合, U 0 ( 100 ) U₀(100) U0(100) 中的下标“0”表示其在矢量圆中的位置为0°。
矢量 | S 1 S_1 S1 | S 2 S_2 S2 | S 3 S_3 S3 | A A A | B B B | C C C | U a U_a Ua | U b U_b Ub | U c U_c Uc | U o u t U_{out} Uout |
---|---|---|---|---|---|---|---|---|---|---|
U z ( 000 ) U_z(000) Uz(000) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
U 0 ( 100 ) U_0(100) U0(100) | 1 | 0 | 0 | 1 | 0 | 0 | 2 3 U d c \cfrac{2}{3}U_{dc} 32Udc | − 1 3 U d c -\cfrac{1}{3}U_{dc} −31Udc | − 1 3 U d c -\cfrac{1}{3}U_{dc} −31Udc | 2 3 U d c \cfrac{2}{3}U_{dc} 32Udc |
U 60 ( 110 ) U_{60}(110) U60(110) | 1 | 1 | 0 | 1 | 1 | 0 | 1 3 U d c \cfrac{1}{3}U_{dc} 31Udc | 1 3 U d c \cfrac{1}{3}U_{dc} 31Udc | − 2 3 U d c -\cfrac{2}{3}U_{dc} −32Udc | 2 3 U d c e j π 3 \cfrac{2}{3}U_{dc}e^{{j\cfrac{\pi}{3}}} 32Udcej3π |
U 120 ( 010 ) U_{120}(010) U120(010) | 0 | 1 | 0 | 0 | 1 | 0 | − 1 3 U d c -\cfrac{1}{3}U_{dc} −31Udc | 2 3 U d c \cfrac{2}{3}U_{dc} 32Udc | − 1 3 U d c -\cfrac{1}{3}U_{dc} −31Udc | 2 3 U d c e j 2 π 3 \cfrac{2}{3}U_{dc}e^{{j\cfrac{2\pi}{3}}} 32Udcej32π |
U 180 ( 011 ) U_{180}(011) U180(011) | 0 | 1 | 1 | 0 | 1 | 1 | − 2 3 U d c -\cfrac{2}{3}U_{dc} −32Udc | 1 3 U d c \cfrac{1}{3}U_{dc} 31Udc | 1 3 U d c \cfrac{1}{3}U_{dc} 31Udc | 2 3 U d c e j π \cfrac{2}{3}U_{dc}e^{{j\pi}} 32Udcejπ |
U 240 ( 001 ) U_{240}(001) U240(001) | 0 | 0 | 1 | 0 | 0 | 1 | − 1 3 U d c -\cfrac{1}{3}U_{dc} −31Udc | − 1 3 U d c -\cfrac{1}{3}U_{dc} −31Udc | 2 3 U d c \cfrac{2}{3}U_{dc} 32Udc | 2 3 U d c e j 4 π 3 \cfrac{2}{3}U_{dc}e^{{j\cfrac{4\pi}{3}}} 32Udcej34π |
U 300 ( 101 ) U_{300}(101) U300(101) | 1 | 0 | 1 | 1 | 0 | 1 | 1 3 U d c \cfrac{1}{3}U_{dc} 31Udc | − 2 3 U d c -\cfrac{2}{3}U_{dc} −32Udc | 1 3 U d c \cfrac{1}{3}U_{dc} 31Udc | 2 3 U d c e j 5 π 3 \cfrac{2}{3}U_{dc}e^{{j\cfrac{5\pi}{3}}} 32Udcej35π |
U z ( 111 ) U_{z}(111) Uz(111) | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
下面这幅图就展示了合成一个任意矢量时(但这幅图的任意矢量只展示了不同方向却未展示不同大小),对应的ABC三相矢量的大小和方向(正或负)。黑色的是合成矢量,红色的是A相矢量,蓝色的是B相矢量,绿色的是C相矢量。
4.3.2 SVPWM 扇区判断法
SVPWM 扇区判断法也是主流的 SVPWM 发生方式,这里需要引入扇区 Sector 的概念,将整个平面分为六个扇区。如下图所示:
所以每个扇区包含两个基本矢量,落在某个扇区的电压空间矢量将由扇区边界的两个基本电压空间矢量进行合成。
假定位于扇区I中的某个非零矢量Urer,与它相邻的两个非零矢量为 U 0 ( 100 ) U₀(100) U0(100) 和 U 60 ( 110 ) U₆₀(110) U60(110),它们之间的夹角为60°,合成矢量由 U α 、 U β U_\alpha、U_\beta Uα、Uβ 的大小确定,如图所示:
因此在扇区 I I I 中满足 0 < < a r c t a n U β U α < < π 3 0<<arctan\cfrac{U_\beta}{U_\alpha}<<\cfrac{\pi}{3} 0<<arctanUαUβ<<3π, 矢量落在扇区I的充分必要条件是 U α > 0 、 U β > 0 U_\alpha>0、U_\beta>0 Uα>0、Uβ>0 且 U β U α < 3 \cfrac{U_\beta}{U_\alpha}<\sqrt3 UαUβ<3 ,同理,可以推出矢量落在其他扇区的充分必要条件。
扇 区 | 充分必要条件 |
---|---|
I I I | U α > 0 、 U β > 0 U_\alpha>0、U_\beta>0 Uα>0、Uβ>0 且 U β U α < 3 \cfrac{U_\beta}{U_\alpha}<\sqrt3 UαUβ<3 |
I I II II | U β > 0 U_\beta>0 Uβ>0 且 $\cfrac{U_\beta}{ |
I I I III III | U α < 0 、 U β > 0 U_\alpha<0、U_\beta>0 Uα<0、Uβ>0 且 − U β U α < 3 -\cfrac{U_\beta}{U_\alpha}<\sqrt3 −UαUβ<3 |
I V IV IV | U α < 0 、 U β < 0 U_\alpha<0、U_\beta<0 Uα<0、Uβ<0 且 U β U α < 3 \cfrac{U_\beta}{U_\alpha}<\sqrt3 UαUβ<3 |
V V V | U β < 0 U_\beta<0 Uβ<0 且 $-\cfrac{U_\beta}{ |
V I VI VI | U α > 0 、 U β < 0 U_\alpha>0、U_\beta<0 Uα>0、Uβ<0 且 − U β U α < 3 -\cfrac{U_\beta}{U_\alpha}<\sqrt3 −UαUβ<3 |
电压矢量的合成:
扇区确定之后,就可以利用扇区边界上的两个基本矢量合成所需的矢量 u u u,在合成过程中应当使得两个基本矢量的合成效果接近于期望矢量的效果。于是采用伏秒平衡的原则,以扇区图所示的第Ⅲ扇区为例,以 α-β 轴为基准,将两个基本矢量向 α-β 轴上投影,应当有:
α 轴: u α T = ∣ u 4 ∣ T 4 + 1 2 ∣ u 6 ∣ T 6 u_\alpha T=|u_4|T_4+\cfrac{1}{2}|u_6|T_6 uαT=∣u4∣T4+21∣u6∣T6
β 轴: u β T = 3 2 ∣ u 6 ∣ T 6 u_\beta T=\cfrac{\sqrt3}{2}|u_6|T_6 uβT=23∣u6∣T6
其中, T i T_i Ti 为对应的电压矢量 u i u_i ui 作用的时间( i = 0 − 7 i=0-7 i=0−7), T T T 为采样周期,一般是PWM的调制周期。
且
∣
u
4
∣
=
∣
u
6
∣
=
2
3
U
d
c
|u_4|=|u_6|=\cfrac{2}{3}U_{dc}
∣u4∣=∣u6∣=32Udc,所以可以求出
u
4
,
u
6
u_4,u_6
u4,u6 这两个基本矢量的作用时间:
{
T
4
=
3
T
2
U
d
c
(
3
u
α
−
u
β
)
T
6
=
3
u
β
T
2
U
d
c
\begin{cases} T_4 = \cfrac{\sqrt3T}{2U_{dc}}(\sqrt3u_\alpha-u_\beta) \\ T_6 = \cfrac{\sqrt3u_\beta T}{2U_{dc}} \end{cases}
⎩
⎨
⎧T4=2Udc3T(3uα−uβ)T6=2Udc3uβT
通过上面的方法即可以确定基本矢量的作用时间,当需要合成的矢量位于各个不同的扇区时都存在如上的运算。通过对每个通过对每个扇区基本矢量动作时间的求解不难发现它们都是一些基本时间的组合。所以给出几个基本的时间变量 X,Y,Z。定义:
{
X
=
3
u
β
T
U
d
c
Y
=
(
3
u
β
+
3
2
u
α
)
T
U
d
c
Z
=
(
3
u
β
−
3
2
u
α
)
T
U
d
c
\begin{cases} X = \cfrac{\sqrt3u_\beta T}{U_{dc}} \\ Y = \cfrac{(\sqrt3u_\beta+\cfrac{3}{2}u_\alpha)T}{U_{dc}}\\ Z = \cfrac{(\sqrt3u_\beta-\cfrac{3}{2}u_\alpha)T}{U_{dc}} \end{cases}
⎩
⎨
⎧X=Udc3uβTY=Udc(3uβ+23uα)TZ=Udc(3uβ−23uα)T
通过计算可以得到在每个扇区内的基本矢量动作时间,设每个扇区的两个基本矢量动作的时间为T₁,T₂。于是可以得到矢量动作时间表(七段式)
I I I | I I II II | I I I III III | I V IV IV | V V V | V I VI VI | |
---|---|---|---|---|---|---|
T 1 T_1 T1 | Z Z Z | Y Y Y | − Z -Z −Z | − X -X −X | X X X | − Y -Y −Y |
T 2 T_2 T2 | Y Y Y | − X -X −X | X X X | Z Z Z | − Y -Y −Y | − Z -Z −Z |
由于每个PWM周期被分为七段,所以每个矢量的动作时间也应当有所调整,这里零矢量的动作时间为 T 0 = T 7 = ( T − T 1 − T 2 ) / 2 T₀=T₇=(T-T₁-T₂)/2 T0=T7=(T−T1−T2)/2,由于MCU定时器单元有三个比较寄存器,每个比较单元控制两路互补的PWM,正好可以实现七段式的SVPWM,为了给出比较寄存器的值,这里引入了一些时间变量 T a , T b , T c T_a,T_b,T_c Ta,Tb,Tc
PWM 模式2下的:
{
T
a
=
T
−
T
1
−
T
2
4
T
b
=
−
T
a
+
T
1
2
T
c
=
−
T
b
+
T
2
2
\begin{cases} T_a = \cfrac{T-T_1-T_2}{4} \\ T_b = -\cfrac{T_a+T_1}{2} \\ T_c = -\cfrac{T_b+T_2}{2} \end{cases}
⎩
⎨
⎧Ta=4T−T1−T2Tb=−2Ta+T1Tc=−2Tb+T2
PWM 模式1下的:
{
T
a
=
T
+
T
1
+
T
2
4
T
b
=
−
T
a
−
T
1
2
T
c
=
−
T
b
−
T
2
2
\begin{cases} T_a = \cfrac{T+T_1+T_2}{4} \\ T_b = -\cfrac{T_a-T_1}{2} \\ T_c = -\cfrac{T_b-T_2}{2} \end{cases}
⎩
⎨
⎧Ta=4T+T1+T2Tb=−2Ta−T1Tc=−2Tb−T2
这也是在计数器增计数或减计数时的比较值,在六个扇区中由于作用的矢量不同所以输出PWM的翻转时刻也不同,但都要满足每个周期每个开关最多动做两次的原则。每个扇区的比较值表如下:
扇区 | I I I | I I II II | I I I III III | I V IV IV | V V V |
---|---|---|---|---|---|
C C R A CCR_A CCRA | T b T_b Tb | T a T_a Ta | T c T_c Tc | T c T_c Tc | T b T_b Tb |
C C R B CCR_B CCRB | T a T_a Ta | T b T_b Tb | T b T_b Tb | T a T_a Ta | T c T_c Tc |
C C R C CCR_C CCRC | T c T_c Tc | T c T_c Tc | T a T_a Ta | T b T_b Tb | T a T_a Ta |
这样,三相对应的矢量作用时间就分配好了,但是需要把时间转换成不同单片机对应的比较值。因此输出还需要乘上相应的系数,取决的不同MCU工作的PWM频率对应的比较值。
4.3.3 SVPWM 中点平移法
相比与扇区判断实现的 SVPWM 方法,中点平移法没有大量复杂的计算,程序更加简单。
中点平移法是通过 Clarke 逆变换得到 SPWM ,然后对其注入三次三角谐波电压得到跟扇区判断的 SVPWM 一样。
{
V
i
(
t
)
=
V
i
∗
(
t
)
+
e
(
t
)
,
i
=
a
,
b
,
c
e
(
t
)
=
1
2
(
1
−
V
m
a
x
∗
)
+
1
2
(
−
1
−
V
m
i
n
∗
)
\begin{cases} V_i(t) = V^*_i(t)+e(t),i=a,b,c \\ e(t) = \cfrac{1}{2}(1-V^*_{max})+\cfrac{1}{2}(-1-V^*_{min}) \end{cases}
⎩
⎨
⎧Vi(t)=Vi∗(t)+e(t),i=a,b,ce(t)=21(1−Vmax∗)+21(−1−Vmin∗)
其中
V
i
∗
(
t
)
V^*_i(t)
Vi∗(t) 就是 Clark 反变换得到的三相电压,
V
m
a
x
V_{max}
Vmax 和
V
m
i
n
V_{min}
Vmin 是三相电压的最大值和最小值,实现原理如下图所示。
4.4 PI 控制器及参数设计
电机控制的电流环和速度环参数都是可以通过一些相关公式计算出来的,但是在实际开发调试中依然需要通过手动调试,计算出来的参数只是一个理论值。
4.4.1 电流环 PI 参数设计
参考 TI 的设计,电流环的PI参数是可以通过电机的电阻和电感来计算得出。
忽略反电动势得到 d-q 坐标轴的电压方程:
{
u
d
=
R
s
i
d
+
L
d
d
d
t
i
d
u
q
=
R
s
i
q
+
L
q
d
d
t
i
q
\begin{cases} u_d = R_si_d + L_d\cfrac{d}{dt}i_d \\ u_q = R_si_q + L_q\cfrac{d}{dt}i_q \end{cases}
⎩
⎨
⎧ud=Rsid+Lddtdiduq=Rsiq+Lqdtdiq
对上面的式子进行拉普拉斯变换得到:
{
G
d
(
s
)
=
U
d
(
s
)
I
d
(
s
)
=
1
L
d
s
+
R
s
G
q
(
s
)
=
U
q
(
s
)
I
q
(
s
)
=
1
L
q
s
+
R
s
\begin{cases} G_d(s)= \cfrac{U_d(s)}{I_d(s)}=\cfrac{1}{L_ds+R_s}\\ G_q(s)= \cfrac{U_q(s)}{I_q(s)}=\cfrac{1}{L_qs+R_s} \end{cases}
⎩
⎨
⎧Gd(s)=Id(s)Ud(s)=Lds+Rs1Gq(s)=Iq(s)Uq(s)=Lqs+Rs1
得到电流环的传递函数为:
{
G
d
c
l
(
s
)
=
P
I
(
s
)
G
d
(
s
)
1
+
P
I
(
s
)
G
d
(
s
)
=
(
k
p
d
+
k
i
d
s
)
(
1
L
d
s
+
R
s
)
1
+
(
k
p
d
+
k
i
d
s
)
(
1
L
d
s
+
R
s
)
G
q
c
l
(
s
)
=
P
I
(
s
)
G
q
(
s
)
1
+
P
I
(
s
)
G
q
(
s
)
=
(
k
p
q
+
k
i
q
s
)
(
1
L
q
s
+
R
s
)
1
+
(
k
p
q
+
k
i
q
s
)
(
1
L
q
s
+
R
s
)
\begin{cases} G_{dcl}(s)= \cfrac{PI(s)G_d(s)}{1+PI(s)G_d(s)}=\cfrac{(k_{pd}+\cfrac{k_{id}}{s})(\cfrac{1}{L_ds+R_s})}{1+(k_{pd}+\cfrac{k_id}{s})(\cfrac{1}{L_ds+R_s})} \\ G_{qcl}(s)= \cfrac{PI(s)G_q(s)}{1+PI(s)G_q(s)}=\cfrac{(k_{pq}+\cfrac{k_{iq}}{s})(\cfrac{1}{L_qs+R_s})}{1+(k_{pq}+\cfrac{k_iq}{s})(\cfrac{1}{L_qs+R_s})} \\ \end{cases}
⎩
⎨
⎧Gdcl(s)=1+PI(s)Gd(s)PI(s)Gd(s)=1+(kpd+skid)(Lds+Rs1)(kpd+skid)(Lds+Rs1)Gqcl(s)=1+PI(s)Gq(s)PI(s)Gq(s)=1+(kpq+skiq)(Lqs+Rs1)(kpq+skiq)(Lqs+Rs1)
闭环传递函数化简到最后得到电流环的
P
I
PI
PI 参数,其中
B
a
n
d
w
i
t
h
B_{andwith}
Bandwith 为带宽系数:
{
k
p
d
=
L
d
×
B
a
n
d
w
i
t
h
k
i
d
=
R
s
×
B
a
n
d
w
i
t
h
\begin{cases} k_{pd} = L_d\times B_{andwith} \\ k_{id} = R_s\times B_{andwith} \\ \end{cases}
{kpd=Ld×Bandwithkid=Rs×Bandwith
{ k p q = L q × B a n d w i t h k i q = R s × B a n d w i t h \begin{cases} k_{pq} = L_q\times B_{andwith} \\ k_{iq} = R_s\times B_{andwith} \\ \end{cases} {kpq=Lq×Bandwithkiq=Rs×Bandwith
注意:
这里的 L s L_s Ls 和 R s R_s Rs 的单位是 H H H 和 Ω Ω Ω。
一般设计电流环 PI 控制器参数或者其他控制器参数时需要考虑带宽的选取,一般带宽越高,响应越快但是相应稳态性能偏差,带宽越低响应越慢,相应的稳态性能就越好。设计控制器参数时根据系统定义需求进行调整即可。
根据ti的资料,带宽取电流采样频率的 1/20;一般电流环带宽从100Hz到1000Hz的都有。
4.4.2 速度环 PI 参数设计
{ k p ω = β J 1.5 p n ψ f k i ω = β k p ω \begin{cases} k_{p\omega} = \cfrac{\beta J}{1.5p_n\psi_f} \\ k_{i\omega} = \beta k_{p\omega} \\ \end{cases} ⎩ ⎨ ⎧kpω=1.5pnψfβJkiω=βkpω
其中 β \beta β 是速度环的期望带宽,单位为 rad/s; J J J 为转动惯量; p n p_n pn 为极对数; ψ f \psi_f ψf 为电机的磁链。