基于 DSP 和 FOC 控制算法的交流电机调速控制系统
柯玉军 张辉
(合肥工业大学 仪器仪表学院,合肥,230009)
摘要:现代电机控制的发展在提高性能、降低损耗、减少成本和其它不断出现的新的技术指标及特殊应用
上的要求越来越高,因此有许多新的复杂的控制算法产生。交流电机有许多直流电机所没有的优点,但是
对于交流电机的控制相对直流电机更为困难。而 DSP 的应用使得交流电机控制系统无论是在结构复杂程度、
成本和效率上都有很大改观。本文结合了交流感应电机的速度控制中较为有效的控制方法即磁场导向控制
(FOC)理论和 TI 公司的 DSP 控制器 TMS320LF2407 介绍了 DSP 在电机闭环控制中的应用。
关键词:电机控制 磁场定向理论 DSP 矢量控制
Speed Control System of AC Motor Based on DSP and FOC Algorithm
(Hefei University of Technology, School of Instrumentation, Hefei, 230009)
Ke Yujun Zhang Hui
Abstract: Many complicated algorithms have been developed to adapt the high requests
on costs, performance and other new standards with the development of motor control.
And an AC motor has many advantages that DC motors don’t have, but its controllability
is weak compared with the latter. The appearance of Digital Signal Processors leads the
AC motor controlling system to be much better than ever on either the complexity of
hardware structure, costs or efficiency. One of the most efficient motor control
algorithms, the Field-Oriented Control (FOC), was introduced together with a motor
control system built up with Texas Instrument’s DSP Tms320LF2407.
Keywords: Motor Control FOC DSP Vector Control
1 引言
2.1 算法原理
交流感应电机因为其很多优点如结构
牢固,运行稳健可靠,成本低廉和高效率等
而被广泛使用,但是交流电机的可控制性不
如直流电机,而在很多应用中有如精确定
位、转距控制、速度控制等要求。为了实现
这些功能和提高控制精度,需要采用闭环控
制系统和采用较为复杂、有效的控制算法,
这些复杂的控制方法中包含了大量的数据
运算及系统的适时性要求,对微处理器运算
能力和速度要求更高。传统方法在成本和性
能上已经很难满足人们的要求。随着电子技
术的发展,数字信号处理器的(DSP)应用
解决了处理器的运算能力和速度问题。一些
电机控制专用 DSP 如 TI 的 TMS320LF2407,
其中集成了电机控制的许多必要的外围器
件,如模数转换器、脉宽调制发生器和一些
专用逻辑电路,给开发更高性能价格比的控
制系统带来极大方便。
2 FOC 算法
FOC 控制算法是一种矢量控制[1][2][5]算
法,其核心思想就是通过坐标变换的方法,
将交流电机的定子电流分解成用来产生磁
场的励磁电流分量和用来产生转矩的转矩
电流分量,分别进行控制,当控制励磁电流
使得转子磁通保持恒定时,电机的转矩将正
比于转矩电流,将异步电动机模拟成直流电
动机,从而获得与直流电动机一样良好的动
态调速特性。
2.2 算法实现过程
交流电机电源的三个相产生一个合磁
场,并以一定频率旋转。但由于三相电源的
各相所产生的磁场并不相互正交,这使得分
析起来相当麻烦,所以人们就将三相系统变
换到能产生相同磁场效果的二相系统中,即
坐标变换[3][4][5]。然后在二相系统中建立电
机的数学模型。
2.2.1 坐标变换
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
通常坐标变换分两步进行:
(1) 将三相坐标系(ia, ib, ic)变换成二
相( βα, )坐标系,称为 Clarke 变换。其
变换关系为:
(1)
i
=
i
α
i
⎧
⎪
⎨
⎪⎩
上述方程中取
a
1
3
+
=
β
i
a
2
3
+
i
b
i
i
+
i
0=
a
b
(即交流
电机的 Y 接法)。 βα, 坐标系是相对于定子
是静止的,且坐标系的α 轴与等效的三相系
统的 a 相夹角θ为零。
c
(2) 将静止的二相坐标系( βα, )变
换成旋转坐标系(d, q),即 Park 变换。这
是 FOC 控制系统中最核心的部分。其坐标的
一元 d 与转子的磁场方向保持一致,坐标系
与转子磁场同步旋转,此时电机的向量图可
用图 1 表示。
q
β
is=isd+j·isq
is
Ψr
isd
θ
图 1 坐标变换
isq
d 转子磁场方
ωe
向
转子方向
ωr
α≡a
定子 a 相方向
s
sd
α
i
i
i
i
=
=
变换关系为:
cos
⎧
⎪
⎨
cos
⎪⎩
所以,有 1-4 式,可以得到如下 Park 变换
矩阵关系式:
(2)
sin
sin
θ
θ
θ
θ
+
−
i
i
α
β
β
sq
s
s
s
i
i
⎡
⎢
⎣
sd
sq
⎤
=⎥
⎦
cos
θ
sin
−
θ
⎡
⎢
⎣
cos(
sin(
)3/2
−
πθ
3/2
)
−
θπ
⎤
⎥
⎥
⎥
⎦
c
(3)
)3/2
+
πθ
sin(
+
πθ
⎤
⎥
3/2
⎦
cos(
−
⎡
⎢
⎢
⎢
⎣
b
a
i
i
i
2.2.2 异步电机模型分析
异步电机的模型,可以用下列转子和定
r
r
e
e
e
e
sq
sd
sq
sq
sd
)
)
0
0
u
u
=
−
=
+
=
−
=
+
+
−
ir
sqs
ir
rdr
ir
sds
(6)
ψω
sd
ψω
sq
⎧
⎪
⎨
⎪⎩
(
ψωω
rq
+
iL
s
iL
s
iL
r
iL
r
将式(4)、(5)中的向量在 d 轴和 q 轴上分解
可得下列方程:
d
ψ
sd
+
dt
d
ψ
sq
+
dt
d
ψ
rd
dt
d
ψ
rq
dt
+
sd
+
+
+
ir
rqr
=ψ
⎧
⎪
=ψ
⎨
=ψ
⎪⎩
=ψ
而且根据图 1 的坐标关系有:
0=rqψ
将式(8)分别代入(6)(7)则可得到:
=0
0
=
=0
=ψ
(
ψωω
+
rd
iL
rdm
iL
rqm
iL
sdm
iL
sqm
ψ
r
dt
(
ψωω
−
e
r
iL
+
sqm
iL
+
sdm
r
(11)
ir
r
rrir
iL
r
rq
iL
r
r
由于算法程序的执行时间远小于转子
的时间常数,所以在此过程中可以认为转子
(12)
(9)
(10)
rd ψψ =
r
⎧
⎪
⎨
⎪⎩
⎧
⎪
⎨
⎪⎩
(7)
,
+
+
d
)
rd
rd
rq
rq
rd
rd
(8)
磁通为常数,即
,所以由(9)
d
=
0=
r ψψ
d
rq
dt
dt
,再由(11)可以得出
L
m
L
sq
i
r
(13)
可以得出
0=rdi
i
−=
rq
电机转矩的和与之相应的电功率 eP 以
及 eP 与旋转电势及电流有如下关系:
=
=
T
P
e
epP
3
(
2
P
t
ω/
e
iu
sd
i
(
sd
为电机极对数。
其中
=
+
(14)
(15)
)
sq
为热损失功率,p
r
s
iu
sq
)
P
t
+
−
sq
i
sd
综合以上各式,在磁通保持瞬时稳定时
可以得出电机的转矩为:
i
T
=
m
ψ
r
sq
pL
3
L
2
r
(16)
ψ
r
=
L
+
m
p
τ
1
i
sd
(17)
子的向量方程表示:
电压方程
u
&
s
=
&
Ir
s
s
&&
Ir
0
r
r
=
+
d
&
ψ
s
+
dt
d
&
ψ
r
dt
定子:
⎧
⎪
⎨
⎪⎩
转子:
磁通方程:
&
=ψ
定子:
⎧
s
⎪
⎨
&
=ψ
转子:
⎪⎩
r
&
IL
s
s
&
IL
r
r
+
+
&
IL
rm
&
IL
sm
+
j
&
ψω
s
e
+
j
(
&
ψωω
r
−
)
e
r
(4)
其中
(5)
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
=τ
L
R
r
r
为转子时间常数。
由式(16)和式(17)可见,转子的磁通
只决定于定子电流的磁化分量大小,而电机
的转矩只与转子磁通及定子电流的转矩分
量 sqi 有关。在 d 轴上的磁化分量和 q 轴上的
转矩分量之间已解除了耦合关系,相互独
立,因此,电机转矩的控制就可以通过分别
对定子电流的两个的分量的独立控制来实
现,其情况和直流电机完全相似。如控制 sdi
使磁通保持恒定,则异步电机具有如同直流
电动机那样的控制特性。FOC 控制交流电机
获得了很好的动态特性,使得电机在负载波
动很大时还具有良好的调速性能。
2.2.3 算法流程
sqi 、 *
图 2 显示了 FOC 的算法流程,图中给
定的参考转速经比例积分(PI)和磁通控制
(通过减小励磁电流的办法防止在高转速
下算法的输出电压超过逆变器的最高输出
sdi 再经
电压)环节产生参考输入电流 *
过一个比例积分环节将两个电流参考输入
加入经 PARK 变换产生的反馈电流后转换为
d,q 坐标系的电压参考输入。将 d,q 坐标下
的参考电压与电机的电流磁通模型的输出
——转子磁场的瞬时磁通方向角θ 经 PARK
逆变换之后产生的( βα, )坐标下的电压
输出。此电压输出送入经过空间向量 PWM[6]
发生器控制的逆变器就可以产生驱动电机
的交变电压。
3 系统结构
3.1 硬件结构
一个完整的闭环控制系统主要由数
字控制模块、控制接口、功率模块和反馈模
块组成。电机的运行实时参数如电量的电压
WD
C2xx
DSP 核
PWM1
PWM6
EVM A/B
* 12 个比较/
PWM 输出
* 4 个通用定
器/PWM
* 6/4 个捕获/
积 分 编 码
脉冲输入
JTAG
CAN
SCI/SPI
串行通信
DARAM/
SARAM/
FLASH
EMI
PC机/
嵌入式系统
电源管理
PLL
电源
时钟
8/16 路复合输
入 10 位 ADC
TMS320LF2407
*ω
rω
sqi
*
sdi
*
PI
磁通
控制
squ
*
PI
sdu
*
PI
Park-1
d,q
βα,
βsu
*
αsu
*
isq
isd
θ
磁通/
电流
模型
rω
θ
空间向量
PWM
发生器
d,q
βα,
Park
αi
βi
βα,
a,b,c
Clarke
rω
电源
整流器
滤波
逆
变
器
ia
ib
交流
电机
转速
传感器
图 2 FOC 算法流程
和电流以及机械量的速度和位置等被采样,
再进行 A/D 转换和系数调整之后和参考输入
一同送入数字控制模块形成一个闭环。对于
基于 FOC 控制算法和 TMS320LV2407DSP[6]的
电机闭环控制系统如图 3 所示,DSP 实现图
1 中的虚线框内的模块。由于 TMS320LF2407
是专用电机控制芯片,片内资源相当丰富,
所以整个控制系统外围环节比较少。图 3 所
示系统中,外部指令从串行口送入 DSP 控制
器,控制器内部的 Tms320c2xxDSP 内核用来
进行 Clarke/Park 变换及 Park 逆变换,将
转子参量(电流、转速)转换为磁场的模型,
给出磁场的方向角θ 、进行比例/积分、产
生空间向量 PWM 等运算。PWM 信号经三组适
合驱动电机的功率 MOSFET 产生三相交变电
压供给电机。电机的相电流通过两只采样电
阻经信号调理后送入 ADC。同时电机的转速
也 被 采 样 送 入 ADC 。 值 得 一 提 的 是 ,
TMS320F2407 中有一个“死区[4]”控制器,
它可以用来防止图 3 中上下两组开关在产生
空间向量 PWM 进行切换时存在同时导通状
态,避免大电流造成破坏。
直流总线
PWM1
PWM3
PWM5
异步电机
PWM2
PWM4
PWM6
码盘
信号调理
图 3 基于 TMS320LF2407 的交流电机控制系统硬件图
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
3.2 软件结构
基于 DSP 的 FOC 算法可以被分成多个
子模块,这些模块具有较大的通用性,用不
同的子模块可以组合成不同类型的控制系
统。FOC 控制方法中的算法模块可从 TI 的应
用数据库中 [SPRU485][8] 获得。为了更清
楚的显示软件流程,下面给出与图 1 的 FOC
算法框图相对应的软件模块框图,图中灰色
框中为软件模块的名称和定点 DSP(C2xx)
的计算定标值,模块的输入输出为程序变
量。图中显示了各个算法模块之间的关系、
各个变量的运算过程及与其它变量的关系。
速度输入
ref
PID_REG1
Q15/Q15
Uout
ref
fdbk
ref
fdbk
Uout
Uout
PID_REG1
Q15/Q15
PID_REG1
Q15/Q15
K=0
Ipark_d
theta
Ipark_q
I_PARK
Q15/Q15
Ipark_a u_a
Ipark_b u_b
SVGEN_
DQ
Q15/Q15
Ta mfnc_A
Tb mfnc_B
Tc mfnc_C
FC_
PWM
DRV
Q0
theta
CURRENT
_MODEL
Q15/Q15
Cm_d park_d
Speed_cm
Cm_q park_q
PARK
Q15/Q15
park_a clark_A
theta
park_b clark_B
CLARKE
Q15/Q15
clark_a Ia_out
clark_b Ib_out
clark_c
ILEG2
DRV
Q15
PWM1-6
三
相
逆
变
器
事
件
管
理
器
硬
件
A
D
C
硬
件
Speed_prd
Speed_rpm
SPEED_PRD
Q15/Q15
Time_stamp
Cap_out
CAP_EVEN
T_DRV
Q15
捕
获
硬
件
Cap_n
图 4 交流电机 FOC 控制软件框图及定点 DSP 的定标值
4 总结
FOC 算法通过获得电机转子磁场的实时
方向经过坐标变换和比例积分环节实现对
电机的转矩直接控制。但是磁场的实时方向
不能从转速及位置传感器直接获得,需要建
立一个磁场/电流模型[8],该模型以电机的
转速及二相坐标系中的电流作为输入,以磁
场的实时位置方向角θ 为输出。同时在电机
处于低速和高速时,由于热效应和磁场的饱
和使得控制系统的效率会降低,所以在参考
输入中要加入磁通控制环节。仿真和实验表
明基于矢量控制的 FOC 控制算法具有很好的
转矩控制特性及动态响应特性,结合专用
DSP 控制器的很强的运算能力及其丰富的外
围环节,可以组成性能强、工作可靠、成本
低廉的控制系统。
参考文献
[1]许大中. 交流电机调速理论[M].浙江:浙江大
中图分类号:TP368
文献标识码:A
学出版社,1991,197-222
[2]李铁才,杜坤梅.电机控制技术[M].黑龙江:哈
尔滨工业大学出版社,2000,153-161
[3]Texas Instrument, Field Orientated Control
of 3-Phase AC-Motors, 1998,2-20
[4] D. Fodor, Implementing Field-Oriented
Control of AC Motors with the TMS320C25 DSP.
ESIEE, Paris, 1996,15-22
[5]Implementation of a Speed Field Oriented
Control of 3-phase PMSM Motor using
TMS320F240
[6]Zhenyu
Yu,
Space-Vector
PWM
With
and
Using
TMS320C24x/F24x
Software Determined Switching Patterns,
Texas Instrument Application Report, 1999
[7]Texas Instrument, TMS320LF2407,2406,2402
Hardware
Controllers,1999
[8]Texas Instrument , Digital Motor Control
Software Library,2001
[9]R. Di Gabriele, F. Parasiliti, M. Tursini,
Digital Field Oriented Control for
induction motors: implementation and
experimental results, Universities Power
Engineering Conference (UPEC’97)
第一作者简介:
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
柯玉军,男,1978 年出生于安徽庐江,1999
年毕业于合肥工业大学,汉族,硕士研究生,
合肥工业大学仪器仪表学院,主要从事 DSP
系统的设计和开发
地址:合肥工业大学 659 信箱 230009
电话:0551-2901513
EMAIL: keyujun@tom.com
Introduction of the author:
Ke Yujun, Male, born in 1978, graduated for
Hefei University of Technology in 1999,
Master Degree of Electronic Engineering,
engaged in Design and Development of DSP
system.
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛