FOC矢量控制及仿真


前言

一、FOC矢量控制原理

1. FOC矢量控制概念

根据百度百科,矢量控制(vector control)也称为磁场导向控制(field-oriented control,简称FOC),是一种利用变频器(VFD)控制三相交流电机的技术,利用调整变频器的输出频率、输出电压的大小及角度,来控制电机的输出。其特性是可以分别控制电机的磁场及转矩,类似他激式直流电机的特性。由于处理时会将三相输出电流及电压以矢量来表示,因此称为矢量控制。
通俗来讲,FOC是一种性能优越的电机控制方法,我们常用的直流无刷电机(BLCD)、永磁同步电机(PMSM)都会用到该矢量控制。FOC通过精确的控制磁场的大小以及方向,使得电机运转平稳、噪声低、转矩恒定、响应速度块、无低速爬行,可以实现对电机的精确控制。

2.电机相关知识简介

2.1.基础
在高中的时候,我们学过了用左手定则判断导线在磁场中做切割磁感线运动产生的电流方向;用右手定则判断通电导线在磁场中的受力方向;用安倍定则右手螺旋定则)来判断通电螺旋管的磁极。
在这里插入图片描述如上图,根据同极相斥、异极相吸通电螺旋管产生的磁极对中间的永磁体产生“吸引、排斥”作用,使得永磁体产生了顺时针的转动,直流电动机的原理就是基于此的。下面对直流无刷电机为例进行进一步讲解。直流无刷相对于直流有刷最大改进是用电子换向器替代了碳刷换向器,这使得电机的寿命大大增加,同时减少了电动机的发热量,增加了效率。
在这里插入图片描述上图为直流无刷电机的模型图,定子由三个线圈组成,转子为一块永磁体,通过改变ABC三线之间的电流流向来控制定子产生的磁场方向,从而使得永磁体转动。
2.2.直流无刷电机换向
在这里插入图片描述对任意两相接通,每个线圈产生各自的磁场,对中间的永磁体产生推力拉力的作用,推力跟拉力的合力方向是永磁体最终稳定下来的方向,也就是对永磁体产生力矩为零的位置。按照上图所示的通电顺序,可以控制直流无刷电机旋转,这个通电的顺序是由电子换向器来实现的。
2.2.BLCD和PMSM区别
无刷电机可以分为无刷直流电机(BLCD)永磁同步电机(PMSM),结构类似,由于绕线方式的原因,会使得两种电机某些特性有所差异–BLCD电机的反电动势接近梯形波PMSM的反电动势接近正弦波,因此驱动两种电机的波形也就有所差异。
从上图分析得知,转子在磁场中由6中稳定的状态,因此在旋转过程中会有颗粒感、不顺滑。由于BLCD电机采用方波驱动,为减少颗粒感只能通过增加极对数来减轻颗粒感,但无法一直减少下去。而PMSM电机通过平滑的正弦波来驱动,就能够在不改变电机极对数的情况下,通过产生理想的正弦波来使的电机能够平滑转动,大大减轻颗粒感,这就是FOC实现的原理
2.3.无刷电机的驱动电路
在这里插入图片描述无刷电机的驱动电路为三相电压源逆变电路,其原理图如上所示。在上述介绍的无刷电机换向模型中,通过控制ABC三相中任意两相接通,就可以产生某一方向的磁场,使得永磁体受到力矩。逆变电路就是为了实现这一操作,控制三相的接通,使得直流电变为了交流电
在这里插入图片描述
逆变电路由三个MOS半桥组成,每个MOS半桥由一个上桥臂和一个下桥臂组成,每个桥臂都为同类型的MOS管MOS管是一种单极性的电压控制元件,通过控制栅极电位的高低,实现MOS管源极跟漏极的导通跟关闭,是一种性能优良的高速电子开关。
定义开关量 s a s_a sa s b s_b sb s c s_c sc s a ′ s_{a^{'}} sa s b ′ s_{b^{'}} sb s c ′ s_{c^{'}} sc表示六个功率开关器件的开关状态。当 s a s_a sa s b s_b sb s c s_c sc为1时,逆变器电路上桥臂器件开通,其下桥臂开关器件关闭即
s a ′ s_{a^{'}} sa s b ′ s_{b^{'}} sb s c ′ s_{c^{'}} sc为零。由于同一个半桥臂上,上桥臂跟下桥臂的开关器件不能够同时导通,否则电流直接从上桥臂流到下桥臂再到电源,造成短路。因此上述的逆变器电路三路逆变桥的开关态共有8种,对于不同开关状态组合 s a b c s_{abc} sabc就可以得到8个基本电压空间矢量,这样逆变器的8种开关模式就对应8个电压空间矢量,如下表所示:
在这里插入图片描述

矢量a上桥臂状态b上桥臂状态c上桥臂状态
U 0 U_0 U0000
U 4 U_4 U4100
U 6 U_6 U6110
U 2 U_2 U2010
U 3 U_3 U3011
U 1 U_1 U1001
U 5 U_5 U5101
U 7 U_7 U7111

各个矢量为
U o u t = 2 U d c 3 ( s a + s b + e j 2 3 π ) U_{out}=\frac{2U_{dc}}{3}(s_a+s_b+e^{j\frac{2}{3}\pi}) Uout=32Udc(sa+sb+ej32π)
U d c U_{dc} Udc为直流母线电压

3.FOC控制

3.1.FOC程序框图
先看一下FOC的控制框图,由内到外包含位置闭环速度闭环电流闭环,通过电流闭环控制电机的转矩,再通过速度闭环来控制电机的转速、最后通过位置闭环来控制其转角位置。
在这里插入图片描述

控制过程如下:
1、首先对电机的三相电流进行采样得到 I a I_a Ia I b I_b Ib I c I_c Ic;
2、 I a I_a Ia I b I_b Ib I c I_c Ic经过Clack变换得到 I α I_{\alpha} Iα I β I_{\beta} Iβ
3、 I α I_{\alpha} Iα I β I_{\beta} Iβ经过Park变换得到 I q I_{q} Iq I d I_{d} Id
4、将编码器获取到的电机位置与理想位置做差并输入到位置PI控制器,得到目标速度;
5、将编码器获取到的电机转速与目标速度做差并输入到速度PI控制器,得到目标电流;
6、将 I q I_{q} Iq I d I_{d} Id与目标电流做差并输入到电流PI控制器,得到输出控制电压 U q U_{q} Uq U d U_{d} Ud
7、 U q U_{q} Uq U d U_{d} Ud经过反Park变换得到 U α U_{\alpha} Uα U β U_{\beta} Uβ
8、 U α U_{\alpha} Uα U β U_{\beta} Uβ输入到SVPWM模块进行扇区判断、合成空间电压矢量、电压矢量作用时间、生成PWM波
9、将生成的PWM波输入到逆变电路中控制MOS管的开关状态,驱动电机。
上述的控制框图中,我们用到了SVPWM,SVPWM实际上对应于交流电机中的三相电压源逆变器功率器件的一种特殊开关顺序和脉宽大小的组合,这种开关触发顺序和组合将在定子线圈中产生三相互差120°电角度、失真较小的正弦波电流波形,这正是我们驱动三相电机转动所需要的的电流波形。但如果直接去跟踪三个正弦波需要用到更加复杂的高阶控制器,无法保证实时性,因此就要通过一些矩阵变换,来使的控制变量变得简单。
接下来介绍一下相关的变换:
3.2.Clack变换
我们通过对电机的三个相电流进行采样,会得到三个相位差为120°的正弦波。我们将三相交流电抽象到二维平面内,得到三个基向量 I a I_a Ia I b I_b Ib I c I_c Ic。这三个基向量是线性相关的,我们可以用平面内两个正交的基向量去表示,我们将基向量 I a I_a Ia I b I_b Ib I c I_c Ic投影到坐标轴上,可以得到两个正交的基向量 I α I_{\alpha} Iα I β I_{\beta} Iβ。这样我们的控制量变量由三个变为了一个。变换矩阵为:
[ I α I β ] = [ 1 − 1 2 − 1 2 0 3 2 − 3 2 ] [ I a I b I c ] \left[ \begin{matrix} I_{\alpha} \\ I_{\beta} \\ \end{matrix} \right] = \left[ \begin{matrix} 1 & -\frac{1}{2} & -\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2} &-\frac{\sqrt{3}}{2} \\ \end{matrix} \right] \left[ \begin{matrix} I_{a} \\ I_{b} \\ I_{c} \\ \end{matrix} \right] [IαIβ]=[102123 2123 ]IaIbIc
在这里插入图片描述变换前后的波形如图所示:
在这里插入图片描述
3.3.Park变换
Park变换是将静止坐标系 α − β \alpha-\beta αβ变换到同步旋转坐标系 d − q d-q dq,坐标系 d − q d-q dq是跟随电机的永磁体同步旋转的,这时我们会得到 d − q d-q dq坐标系下两相直流电,对于跟踪两个线性化的变量比较容易。

在这里插入图片描述
变换公式如下:
I d = I α c o s ( θ c ) + I β s i n ( θ c ) I_d=I_{\alpha}cos(\theta_c)+I_{\beta}sin(\theta_c) Id=Iαcos(θc)+Iβsin(θc)
I d = − I α s i n ( θ c ) + I β c o s ( θ c ) I_d=-I_{\alpha}sin(\theta_c)+I_{\beta}cos(\theta_c) Id=Iαsin(θc)+Iβcos(θc)
旋转矩阵形式为:
[ I d I q ] = [ c o s θ c s i n θ c − s i n θ c c o s θ c ] [ I α I β ] \left[ \begin{matrix} I_{d} \\ I_{q} \\ \end{matrix} \right] = \left[ \begin{matrix} cos\theta_c& sin\theta_c\\ -sin\theta_c& cos\theta_c\\ \end{matrix} \right] \left[ \begin{matrix} I_{\alpha} \\ I_{\beta} \\ \end{matrix} \right] [IdIq]=[cosθcsinθcsinθccosθc][IαIβ]
公式中的 θ c \theta_c θc角度为编码器输出的转子实时的旋转角度。
变换前后的波形如图所示:
在这里插入图片描述

3.4.反Park变换
将Park变换矩阵求逆即可到的反Park变换*变换矩阵。将两个垂直的坐标系转变为三相绕组坐标系。
3.5.SVPWM合成原理
我们前边提到过逆变器的8种开关模式就对应8个电压空间矢量,每个扇区有相邻两个电压矢量,我们可以通过控制这两个电压矢量的作用时间,合成该扇区内任意方向的电压矢量,类似力合成原理。
以扇区 I I I为例:
空间矢量合成原理如下图所示:
在这里插入图片描述根据平衡等效原则得到:
T s U o u t = T 4 U 4 + T 6 U 6 + T 0 ( U 0 o r U 7 ) T_sU_{out}=T_4U_4+T_6U_6+T_0(U_0 or U_7) TsUout=T4U4+T6U6+T0(U0orU7)
T 4 + T 6 + T 0 = T s T_4+T_6+T_0=T_s T4+T6+T0=Ts
U 1 = T 4 T s U 4 U 2 = T 6 T s U 6 \begin{matrix} U_1= \frac{T_4}{T_s} U_4 \\ U_2 = \frac{T_6}{T_s} U_6 \\ \end{matrix} U1=TsT4U4U2=TsT6U6
T 4 、 T 6 、 T 0 T_4、T_6、T_0 T4T6T0 U 4 U_4 U4 U 6 U_6 U6和零矢量 U 0 、 U 7 U_0、U_7 U0U7的作用时间。
根据上图我们可以得到:
∣ U o u t ∣ s i n 2 π 3 = ∣ U 1 ∣ s i n ( π 3 − θ ) = ∣ U 2 ∣ s i n θ \frac{|U_{out}|}{sin\frac{2\pi}{3}}=\frac{|U_1|}{sin(\frac{\pi}{3}-\theta)}=\frac{|U_2|}{sin\theta} sin32πUout=sin(3πθ)U1=sinθU2
其中 θ \theta θ为合成矢量与主矢量的夹角。
∣ U 4 ∣ = ∣ U 6 ∣ = 2 3 U d c |U_4|=|U_6|=\frac{2}{3}U_{dc} U4=U6=32Udc ∣ U o u t ∣ = U m |U_{out}|=U_m Uout=Um,联合上式得:
T 4 = 3 U m U d c T s s i n ( π 3 − θ ) T_4=\sqrt{3}\frac{U_m}{U_{dc}}T_ssin(\frac{\pi}{3}-\theta) T4=3 UdcUmTssin(3πθ)
T 6 = 3 U m U d c T s s i n θ T_6=\sqrt{3}\frac{U_m}{U_{dc}}T_ssin\theta T6=3 UdcUmTssinθ
T 0 = T 7 = 1 2 ( T s − T 4 − T 6 ) T_0=T_7=\frac{1}{2}(T_s-T_4-T_6) T0=T7=21(TsT4T6)
有了一个周期内各个电压矢量的作用时间,接着就是如何产生实际的脉宽调制波形,也就是各个状态的切换顺序。在SVPWM中,零矢量的选择比较灵活,适当选择零矢量,可以最大限度的减少开关次数,尽可能避免开关器件在负载电流较大时的开关动作,最大限度的减少开关损耗。对于七段式SVPWM算法,将基本矢量作用顺序的分配原则定为:
在每次开关状态转换时,只改变其中一相的开关状态,并且对零矢量在时间上进行平均分配,使得产生对称的PWM波形,从而有效降低PWM的谐波分量。 U o u t U_{out} Uout所在的位置开关切换顺序如下:
在这里插入图片描述
在这里插入图片描述如要生成上述的PWM波形,需要外加一定频率的载波信号,例如三角波信号。
以扇区 I I I为例:
假设我们知道了在扇区 I I I时三相电压开关时间切换点 t 1 、 t 2 、 t 3 t_1、t_2、t_3 t1t2t3,我们使用的三角载波信号如下图所示,载波信号的周期我们设置为一个开关周期 T s T_s Ts,与一个扇区的作用时间相同。载波信号斜率为 π 4 \frac{\pi}{4} 4π,这样横纵坐标我们都可以表示为时间轴线。
在这里插入图片描述我们将三相电压开关时间切换点 t 1 、 t 2 、 t 3 t_1、t_2、t_3 t1t2t3时间画在纵轴的时间轴上,通过比较切换点时间与载波信号确定高低电平(当载波信号大于切换点时间时为高电平),将切换点时间线与载波信号的交点投影到横轴上,这样我们就得到了三相电压的PWM波形。且在一个周期内,各个波形是对称的,这也就是为什么要用三角载波信号的原因。在其他的扇区内也是类似的推导。
在这里插入图片描述我们已经知道了各个扇区的三相电压的导通时间、导通顺序,接着就要判断当前处在哪个扇区中。
u α u_{\alpha} uα u β u_{\beta} uβ表示参考电压 U o u t U_{out} Uout α 、 β \alpha 、\beta αβ轴上的分量,定义 U r e f 1 U_{ref1} Uref1 U r e f 2 U_{ref2} Uref2 U r e f 3 U_{ref3} Uref3三个变量,令:
U r e f 1 = u β U_{ref1}=u_{\beta} Uref1=uβ
U r e f 2 = 3 2 u α − 1 2 u β U_{ref2}=\frac{\sqrt{3}}{2}u_{\alpha}-\frac{1}{2}u_{\beta} Uref2=23 uα21uβ
U r e f 3 = − 3 2 u α − 1 2 u β U_{ref3}=-\frac{\sqrt{3}}{2}u_{\alpha}-\frac{1}{2}u_{\beta} Uref3=23 uα21uβ$
在这里插入图片描述再定义3个变量A、B、C,通过分析得出:
U r e f 1 > 0 U_{ref1}>0 Uref1>0,则A=1,否则A=0;
U r e f 2 > 0 U_{ref2}>0 Uref2>0,则B=1,否则B=0;
U r e f 3 > 0 U_{ref3}>0 Uref3>0,则C=1,否则C=0;
令N=4C+2B+A,则可以得到N与扇区的关系如下表:
N的公式只是为了能够唯一的判断扇区,换成其他公式也可,只要与扇区唯一对应即可。

N315462
扇区IIIIIIIVVVI

我们现在已经知道扇区如何判断,接下来我们需要用 u α u_{\alpha} uα u β u_{\beta} uβ来表示各个扇区的两相邻电压矢量的作用时间,因为我们在输入的就是 u α u_{\alpha} uα u β u_{\beta} uβ变量。仍然用到下图:
在这里插入图片描述 u α = T 4 T s ∣ U 4 ∣ + T 6 T s ∣ U 6 ∣ c o s π 3 u_{\alpha}=\frac{T_4}{T_s}|U_4|+\frac{T_6}{T_s}|U_6|cos\frac{\pi}{3} uα=TsT4U4+TsT6U6cos3π
u β = T 6 T s ∣ U 6 ∣ s i n π 3 u_{\beta}=\frac{T_6}{T_s}|U_6|sin\frac{\pi}{3} uβ=TsT6U6sin3π
经过变换得到:
T 4 = 3 T s 2 U d c ( 3 u α − u β ) T_4=\frac{\sqrt{3}T_s}{2U_{dc}}(\sqrt{3u_\alpha}-u_{\beta}) T4=2Udc3 Ts(3uα uβ)
T 6 = 3 T s 2 U d c u β T_6=\frac{\sqrt{3}T_s}{2U_{dc}}u_{\beta} T6=2Udc3 Tsuβ
同理,可以得到其他扇区各矢量的作用时间。令:
X = 3 T s 2 U d c u β X=\frac{\sqrt{3}T_s}{2U_{dc}}u_{\beta} X=2Udc3 Tsuβ
Y = 3 T s U d c ( 3 2 u α + 1 2 u β ) Y=\frac{\sqrt{3}T_s}{U_{dc}}(\frac{\sqrt{3}}{2}u_{\alpha}+\frac{1}{2}u_{\beta}) Y=Udc3 Ts(23 uα+21uβ)
Z = 3 T s U d c ( − 3 2 u α + 1 2 u β ) Z=\frac{\sqrt{3}T_s}{U_{dc}}(-\frac{\sqrt{3}}{2}u_{\alpha}+\frac{1}{2}u_{\beta}) Z=Udc3 Ts(23 uα+21uβ)
可以得到各个扇区作用时间如表所示:

N123456
T 4 T_4 T4ZY-Z-XX-Y
T 6 T_6 T6Y-XXZ-Y-Z
T 0 T_0 T0 T 0 ( T 7 ) = ( T s − T 4 − T 6 ) / 2 T_0(T_7)=(T_s-T_4-T_6)/2 T0(T7)=(TsT4T6)/2 T 0 ( T 7 ) = ( T s − T 4 − T 6 ) / 2 T_0(T_7)=(T_s-T_4-T_6)/2 T0(T7)=(TsT4T6)/2 T 0 ( T 7 ) = ( T s − T 4 − T 6 ) / 2 T_0(T_7)=(T_s-T_4-T_6)/2 T0(T7)=(TsT4T6)/2 T 0 ( T 7 ) = ( T s − T 4 − T 6 ) / 2 T_0(T_7)=(T_s-T_4-T_6)/2 T0(T7)=(TsT4T6)/2 T 0 ( T 7 ) = ( T s − T 4 − T 6 ) / 2 T_0(T_7)=(T_s-T_4-T_6)/2 T0(T7)=(TsT4T6)/2 T 0 ( T 7 ) = ( T s − T 4 − T 6 ) / 2 T_0(T_7)=(T_s-T_4-T_6)/2 T0(T7)=(TsT4T6)/2

如果 T 4 + T 6 > T s T_4+T_6>T_s T4+T6>Ts,则需要进行调制处理,令:
T 4 = T 4 T 4 + T 6 T s T_4=\frac{T_4}{T_4+T_6}T_s T4=T4+T6T4Ts
T 6 = T 6 T 4 + T 6 T s T_6=\frac{T_6}{T_4+T_6}T_s T6=T4+T6T6Ts
最后就是要确定各个扇区的切换点时间
首先定义:
T a = ( T s − T 4 − T 6 ) / 4 T_a=(T_s-T_4-T_6)/4 Ta=(TsT4T6)/4
T b = T a + T 4 / 2 T_b=T_a+T_4/2 Tb=Ta+T4/2
T c = T b + T 6 / 2 T_c=T_b+T_6/2 Tc=Tb+T6/2
则三相电压开关时间切换点 t 1 t_1 t1 t 2 t_2 t2 t 3 t_3 t3与各个扇区关系如下表:

N123456
t 1 t_1 t1 T b T_b Tb T a T_a Ta T a T_a Ta T c T_c Tc T c T_c Tc T b T_b Tb
t 2 t_2 t2 T a T_a Ta T c T_c Tc T b T_b Tb T b T_b Tb T a T_a Ta T c T_c Tc
t 3 t_3 t3 T c T_c Tc T b T_b Tb T c T_c Tc T a T_a Ta T b T_b Tb T a T_a Ta

总结SVPWM,主要实现了参考电压矢量的扇区判断、各个扇区非零矢量和零矢量作用时间的计算以及各个扇区矢量切换点的确定,最后使用一定频率的三角载波信号与各个扇区切换点进行比较,从而产生变换器所需要的PWM波。

二、FOC矢量控制仿真

1.模块介绍

1、Clack变换,由三相电流变为两相正交电流,输入采集到的电机三相交流电。
在这里插入图片描述2、Park变换,由两相正交交电流变为两相正交直流电,输入当前经Clack变化后的两相交流电以及当前的电机角度。

在这里插入图片描述3、Park反变换,由输入的控制电压–两相直流电压变为两相交流电压,输入目标 v d v_d vd v q v_q vq以及当前的电机角度。
在这里插入图片描述4、通过输入的 U a l p h a U_{alpha} Ualpha U b e t a U_{beta} Ubeta来判断当前所处的扇区
在这里插入图片描述5、产生中间变量,用来计算各个扇区相邻矢量的作用时间,输入 U a l p h a U_{alpha} Ualpha U b e t a U_{beta} Ubeta,PWM的开关周期 T s T_s Ts和直流侧电压 U d c U_{dc} Udc
在这里插入图片描述6、用来计算当前扇区,相邻两电压矢量的作用时间。输入当前的扇区N,XYZ中间变量、PWM的开关周期 T s T_s Ts
在这里插入图片描述

7、扇区矢量切换点的确定,输入当前的扇区N,相邻两电压矢量的作用时间 T 1 T_1 T1 T 2 T_2 T2、PWM开关周期 T s T_s Ts
在这里插入图片描述8、生成PWM波,输入三角载波信号,信号的周期为PWM开关的周期;扇区矢量切换点 P 1 P_1 P1 P 2 P_2 P2 P 3 P_3 P3。由于逆变电路的每个半桥的上下两桥不能够同时接通,所以只需要将上半桥的PWM波逻辑取反即可。
在这里插入图片描述9、PMSM电动机模块, T m T_m Tm为负载扭矩,ABC为三相电压,输入m为传感器信号,可通过 B u s s e l e c t e r Busselecter Busselecter模块进行信号选择。
在这里插入图片描述10、通用的电桥模块,选择三相桥臂,输入g为6相PWM波。
在这里插入图片描述在这里插入图片描述

2.simulink仿真

在这里插入图片描述上图为带有位置闭环速度闭环电流闭环的仿真图
在这里插入图片描述上图为带有速度闭环电流闭环的仿真图
具体simulink仿真已上传,连接如下
FOC矢量控制仿真

3.仿真结果

3.1. 输入为恒速
设定速度恒定为800rad/s
黄色速度线为理想的恒速状态,蓝色线为电机的速度跟踪曲线,在1.5s处电机受到外力矩的作用,速度有小范围波动,但很快就跟踪上设定速度。
三相交流电变化曲线上图为采集到电机三相交流电的变化情况,在1.5s时电机受到外力矩作用,三相交流电幅值也发生变化。
在这里插入图片描述上图为三相交流电的局部放大图。
在这里插入图片描述
上图为 I d I_d Id的误差变化图
在这里插入图片描述
上图为 I q I_q Iq的误差变化图
在这里插入图片描述上图为Park反变换产生的 U α U_{\alpha} Uα相电压变化曲线
在这里插入图片描述上图为Park反变换产生的 U β U_{\beta} Uβ相电压变化曲线
在这里插入图片描述上图为扇区选择变换图
在这里插入图片描述上图为三相电压切换的时间切换点
3.2.输入为变速
设定速度为 1000 s i n ( π 2 t ) 1000sin(\frac{\pi}{2}t) 1000sin(2πt)rad/s
在这里插入图片描述
上图为速度跟踪曲线
在这里插入图片描述上图为三相交流电变化曲线
在这里插入图片描述上图为 I d I_d Id的误差变化图
在这里插入图片描述上图为 I q I_q Iq的误差变化图
在这里插入图片描述
上图为Park反变换产生的 U α U_{\alpha} Uα相电压变化曲线
在这里插入图片描述上图为Park反变换产生的 U β U_{\beta} Uβ相电压变化曲线
在这里插入图片描述上图为扇区选择变换图
在这里插入图片描述上图为三相电压切换的时间切换点

3.2. 输入指定位置
设定目标位置为π
在这里插入图片描述
上图为位置跟踪图,1.5s处受到外力矩作用,在2.5秒处到达稳定位置。在这里插入图片描述上图为速度跟踪图,1.5s处受到外力矩作用
在这里插入图片描述上图为三相交流电变换图

总结

理论搞定!!!!!

参考:现代永磁同步电机控制原理及MATLAB仿真

<think>首先,用户的问题是:“我想了解FOC控制的工作原理 请问FOC控制原理详解”。我需要基于系统级指令和用户可见层的指导来回答。 系统级指令: - 所有行内数学表达式必须使用$...$格式。 - 独立公式必须使用$$...$$格式并单独成段。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 回答中引用的段落末尾自然地添加引用标识,例如:[^1] 用户可见层: - 回答结构清晰,帮助用户逐步解决问题。 - 尽量保证回答真实可靠。 - 参考站内引用:引用[1]和引用[2]是关于FOC的,但指令说“上述引用仅供参考”,所以我应该基于这些引用,但主要根据用户的问题来回答。 用户的问题是关于FOC控制的工作原理的详解。FOC是Field-Oriented Control,即磁场定向控制。 参考引用: - 引用[1]:解释了FOC是磁场定向控制,用于无刷直流电机和永磁同步电机,实现高效控制。 - 引用[2]:讨论了FOC控制算法,包括电流环的作用和有感/无感FOC。 我需要构建一个清晰的回答结构: 1. 介绍FOC是什么。 2. 解释其工作原理。 3. 可能包括数学公式。 4. 生成相关问题。 由于涉及电机控制,我应该使用数学公式来描述变换过程。 关键点: - FOC的核心是坐标变换:从三相坐标系到两相旋转坐标系(dq坐标系)。 - 目的是解耦转矩和磁通,实现类似直流电机的控制。 - 步骤包括: - Clarke变换:三相到两相静止坐标系(αβ)。 - Park变换:αβ到旋转坐标系(dq)。 - 然后控制dq轴电流(id和iq)。 - 逆Park和逆Clarke变换回三相电压。 数学公式: - Clarke变换: $$ \begin{bmatrix} \alpha \\ \beta \end{bmatrix} = \frac{2}{3} \begin{bmatrix} 1 & -\frac{1}{2} & -\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2} & -\frac{\sqrt{3}}{2} \end{bmatrix} \begin{bmatrix} a \\ b \\ c \end{bmatrix} $$ - Park变换: $$ \begin{bmatrix} d \\ q \end{bmatrix} = \begin{bmatrix} \cos \theta & \sin \theta \\ -\sin \theta & \cos \theta \end{bmatrix} \begin{bmatrix} \alpha \\ \beta \end{bmatrix} $$ 其中$\theta$是转子角度。 - 控制:id通常控制磁通(flux),iq控制转矩(torque)。目标是使id=0(对于永磁同步电机),iq控制转矩。 - 然后逆变换回三相电压。 在回答中,我需要使用$...$ for inline math and $$...$$ for displayed equations. 回答结构: 1. **引言**:简要介绍FOC。 2. **工作原理详解**: - 坐标变换的目的。 - Clarke变换。 - Park变换。 - 电流控制(id和iq)。 - 逆变换。 - 整体框图。 3. **优点和应用**:基于引用。 4. **生成相关问题**:在末尾。 引用:我需要在回答中自然地添加引用标识。既然引用了[1]和[2],我应该引用它们。例如,在解释FOC定义时引用[1],在讨论电流环时引用[2]。 相关问题:基于FOC原理,生成2-3个相关问题。 最终回答用中文。</think>### FOC控制原理详解 FOC(Field-Oriented Control,磁场定向控制),也称为矢量控制(vector control),是一种用于无刷直流电机(BLDC)和永磁同步电机(PMSM)的高效控制技术。它通过精确控制磁场的方向和大小,实现电机转矩平稳、噪声小、效率高,并具备高速动态响应[^1]。下面我将逐步解释FOC的工作原理,确保结构清晰易懂。 #### 1. **FOC的核心目标** FOC的核心是将三相交流电机的复杂控制问题简化为类似直流电机的控制。在直流电机中,转矩和磁通是解耦的:电流直接控制转矩,而磁场固定。FOC通过坐标变换,将三相定子电流分解为两个正交分量:一个控制磁通(d轴),另一个控制转矩(q轴)。这使系统能独立调节转矩和磁通,提升控制精度和效率[^1]。 #### 2. **FOC的工作原理步骤** FOC控制流程主要包括坐标变换、电流控制、和逆变换三个部分。以下是详细步骤: - **步骤1: 坐标变换(从三相到两相旋转坐标系)** - 首先,通过Clarke变换将三相电流($I_a$, $I_b$, $I_c$)转换为两相静止坐标系(αβ坐标系)。这消除了三相系统的冗余,简化了计算。 $$ \begin{bmatrix} \alpha \\ \beta \end{bmatrix} = \frac{2}{3} \begin{bmatrix} 1 & -\frac{1}{2} & -\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2} & -\frac{\sqrt{3}}{2} \end{bmatrix} \begin{bmatrix} I_a \\ I_b \\ I_c \end{bmatrix} $$ 其中,$\alpha$和$\beta$是静止坐标系下的分量。 - 接着,通过Park变换将αβ坐标系转换为旋转的dq坐标系(以转子磁场方向为基准)。这需要转子角度$\theta$(通常通过编码器或传感器获取)。 $$ \begin{bmatrix} I_d \\ I_q \end{bmatrix} = \begin{bmatrix} \cos \theta & \sin \theta \\ -\sin \theta & \cos \theta \end{bmatrix} \begin{bmatrix} \alpha \\ \beta \end{bmatrix} $$ 这里,$I_d$(d轴电流)控制磁通,$I_q$(q轴电流)控制转矩。在永磁同步电机中,通常设置$I_d = 0$以最大化效率,仅通过$I_q$调节转矩[^1][^2]。 - **步骤2: 电流控制(在dq坐标系)** - 在dq坐标系中,控制器(通常是PI控制器)比较实际电流$I_d$和$I_q$与参考值$I_d^*$和$I_q^*$(来自速度或位置环)。输出是电压参考值$V_d^*$和$V_q^*$。 - 例如,转矩控制:$I_q^*$根据负载需求设定,$I_d^*$通常设为0。 - 电流采样是关键:实际$I_d$和$I_q$通过传感器(如霍尔传感器)获取。如果没有电流环,系统仍可工作,但精度降低,只依赖速度或位置反馈[^2]。 - 控制方程简化表示为: $$ V_d^* = K_p (I_d^* - I_d) + K_i \int (I_d^* - I_d) dt $$ $$ V_q^* = K_p (I_q^* - I_q) + K_i \int (I_q^* - I_q) dt $$ 其中$K_p$和$K_i$是PI控制器的参数。 - **步骤3: 逆变换(从dq坐标系回三相)** - 首先,通过逆Park变换将$V_d^*$和$V_q^*$转回αβ坐标系: $$ \begin{bmatrix} V_\alpha^* \\ V_\beta^* \end{bmatrix} = \begin{bmatrix} \cos \theta & -\sin \theta \\ \sin \theta & \cos \theta \end{bmatrix} \begin{bmatrix} V_d^* \\ V_q^* \end{bmatrix} $$ - 然后,通过逆Clarke变换生成三相电压参考值$V_a^*$, $V_b^*$, $V_c^*$: $$ \begin{bmatrix} V_a^* \\ V_b^* \\ V_c^* \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ -\frac{1}{2} & \frac{\sqrt{3}}{2} \\ -\frac{1}{2} & -\frac{\sqrt{3}}{2} \end{bmatrix} \begin{bmatrix} V_\alpha^* \\ V_\beta^* \end{bmatrix} $$ 这些电压值通过PWM(脉宽调制)驱动逆变器,供给电机三相绕组。 - **整体框图**: FOC系统通常包括传感器(测量电流和转子位置)、坐标变换模块、PI控制器和PWM生成器。整个过程形成闭环控制: ``` 三相电流 → Clarke变换 → Park变换 → PI控制(dq坐标系) → 逆Park变换 → 逆Clarke变换 → PWM驱动 → 电机 ↑传感器反馈 ↑参考值设定 ``` 通过实时调整,系统能维持磁场定向,确保高效运行[^1][^2]。 #### 3. **FOC的优点和应用场景** - **优点**: - 高精度:转矩和磁通解耦,减少波动。 - 高效率:在宽速范围内优化性能。 - 动态响应快:适用于需要快速调速的场合,如电动汽车或工业机器人。 - **应用场景**: - 电动汽车驱动系统。 - 家用电器(如空调压缩机)。 - 工业自动化(如伺服电机)。 FOC可分为有感FOC(需要位置传感器)和无感FOC(无传感器,依赖算法估算位置),后者成本更低但精度稍逊[^2]。 #### 4. **关键技术与挑战** - **电流环的重要性**:电流采样提供实际$I_d$和$I_q$,使控制更精确。省略电流环虽可行,但会导致转矩响应变慢[^2]。 - **位置估算**:在无感FOC中,使用观测器算法(如滑模观测器)估算$\theta$,这增加了算法复杂度。 - **数学基础**:FOC依赖于向量空间理论,确保变换正交性,避免能量损失。 总之,FOC通过坐标变换和闭环控制,实现了电机的高效、平稳运行。如果您有具体应用需求(如电机类型或控制参数),我可以进一步解释优化方法。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值