华中科技大学控制科学与工程系(湖北武汉 430074) 龚 博 程善美
南京电子技术研究所(江苏南京 210013) 吴 冰
本文构建了一种使用TMS320F2812为控制芯片的异步电动机矢量控制系统。TMS320F2812是TI公司推出的一款用于控制系统的高性能、多功能、高性价比的32位定点DSP芯片,芯片上集成了多种外设,尤其是两个事件管理器为电动机以及功率变换控制提供了很大的便利,TMS320F2812可以采用C语言编程,它的C编译器支持ANSI C标准,使得编程相对简单,可以使程序员有更多的时间开发新的数字算法,针对TMS320F2812的这些特点本文详细介绍了控制系统的软件设计[3]。
矢量控制系统结构如图1所示。其工作原理为:首先对定子电流进行采样,经过坐标变换后,得到励磁电流和转矩电流的反馈值。把采样获得电动机实际转速与给定转速的差值经过速度控制器调节后,得到转矩分量的给定值。将给定值与反馈值的差值经过电流控制器的调节后得到两相旋转坐标系的电压分量,进行反Park变换后,得到两相静止坐标系下的两个电压分量,最后经过SVPWM调制,控制电力电子器件的开关导通状态输出PWM信号,从而使电动机得到很好的控制。
图1 矢量控制系统结构图
一个矢量控制系统的构成如图2所示。矢量控制系统由控制和功率变换两大部分组成。其控制部分由TMS320LF2812小系统、电流检测和调理电路、光电编码器接口电路等组成。异步电动机的速度检测采用光电编码器,光电编码器输出的两路正交信号送给事件管理器中QEP模块的引脚QEP1和QEP2,QEP模块的计数器对引脚QEP1和QEP2的上升沿和下降沿进行计数。电流检测采用电流霍尔传感器,由于异步电动机三相电流是平衡的,因而只需检测其中的两相定子电流。其功率变换部分由整流桥、滤波电容和逆变器等组成。
矢量控制系统程序包括主程序和中断服务子程序,主程序进行系统以及各个模块控制寄存器初值设置,并且使能相应的中断。中断服务子程序是系统的主要部分,矢量控制系统的算法都在其中实现,主要包括处理A、B两相的采样电流,根据编码器传递的信息计算当前的转速和机械角速度,进行坐标变换,计算同步角速度,以及PI控制器、SVPWM算法的实现等。
图2 矢量控制系统的构成
图3 矢量控制系统程序控制流程图
其中坐标变换、电流模型以及SVPWM模块都需要很大的运算量,F2812的最高频率可以达到150MHz,精度达到32位,完全能达到控制系统的要求[4,5]。系统中这些算法均在T1下溢中断中完成,TMS320F2812时钟频率设置为150MHz,电流环周期为100us,转速环周期为1ms。系统的程序控制流程如图3所示。
由于矢量控制系统各个变量的大小范围不一,为了简化计算,以相同的精度表示和计算各种变量,对系统的变量采用标幺值的形式来表示。标幺值定义为实际值与基值的比值,变量的标幺值是没有单位的。
通过选择适当的基值,可以把实际值相差很大的各种变量转化到同一较小的数量范围内,非常有利于数字化处理和提高系统的稳定性和精度。
通常情况下,电流、电压的基值是其额定值的幅值;角速度的基值是转子额定电气角速度;磁链基值是电压基值与角速度基值的比值,其具体表达如下:
确定了基值之后,就可以用标幺值来表示各个变量:
式中,Un,In,fn分别表示电机电压,电流,频率的额定值;Ub,Ib,!b,#b分别表示电机电压,电流,角频率,磁链的基值;u,i,!,#分别表示电机电压,电流,转速,磁链的实际值分别表示电压,电流,转速,磁链的标幺值。
TMS320F2812 DSP芯片,采用定点数进行运算,操作数为整数。但是,系统中参与运算的数并不全是整数,更多的是会出现各种小数。定点DSP芯片并不能处理各种小数,这就要求用不同Q格式来表示不同大小不同精度的小数。
TI公司为用户提供了一种称为IQmath的专用定点数学函数库,可基于DSP硬件和编译器优化算法性能。IQmath由高度优化的高精度数学函数集构成,可以用C/C++设计将浮点算法无缝地转化成DSP的定点代码。IQmath程序使得以类浮点格式编写定点程序成为可能,该程序还能处理在定点编程中需要额外考虑的饱和及溢出问题。而且,IQmath程序特别适用于需要极高执行速度和运算精度的计算密集型实时应用。
在程序中使用GLOBAL_Q格式可以方便编程和调试,默认的GLOBAL_Q格式为Q24格式,用户也可以在IQmathLib.h头文件中定义其他的GLOBAL_Q格式,可供选择的范围为Q1~Q30格式。在矢量控制系统中GLOBAL_Q格式设置为Q24格式,绝大部分的参入运算的数都用该格式表示,其表示的范围为-128~127.99999994,表示的精度为0.00000006,能同时满足数值范围和精度的要求。
TI公司针对数字控制系统提出了相应的软件模块化标准,它要求一个模块内程序的修改不影响其它程序,这样建立的程序模块可以独立运行、调试和修改,形成具有特定功能的程序模块。C语言模块一般包含接口和实现两个部分,一个C语言模块也就是配备一个或多个接口的实现。接口部分包括类型定义,以及函数、常数及变量等的声明,通常放在头文件中。在系统软件设计中,每一个需要软件实现的部分都对应一个程序模块来实现其算法功能,使用时,只需要设定相应的接口,就可以调用已有的模块,既可以方便调试,同时也提高了程序的可移植性和可读性。
在本文提到的矢量控制系统共分成了速度检测模块,电流检测模块,坐标变换模块,PI控制器模块,电流模型模块,通信模块以及SVPWM模块等部分,这些模块的每一源文件都有一个头文件与之对应,源文件用来实现算法,而头文件用来定义接口以及内部变量。主程序中包含 (#include)了模块提供的接口文件 (头文件),就可以直接调用模块的具体实现。图4中以调用速度检测模块为例给出了在主程序中调用模块的具体流程。
图4 模块调用流程图
A、B相电流经过霍尔传感器后,通过采样电阻和调理电路以电压的形式输入到DSP的12位A/D模块,转换得到的数字量存放在结果寄存器的高12位,在没有对数字量进行移位处理时,0~3V的电压近似对应无符号的数字量0~65535,同时必须减去1.5V的偏移量,使数字量为有符号数,最后乘以定标系数 Kcur即可得到电流真实值对应的定标值。定标系数 Kcur由下式给出:
式中 Imax为可采样的最大电流值,Ib为电流的标幺基准值,定标系数以Q15格式表示。
程序中在DSP上电,主程序运行之后,先不给定转速指令,对电流采用多次采样求平均的方法,得到电流的偏移量。在给定转速后,将偏移量减去,可以使得电流基本不受零漂的影响。
本系统采用M法测速原理来检测速度的大小,即在相邻转速环采样周期内通过对定时器计数值的处理来确定电动机转速的大小,设采样时间为 T(单位为秒),光电码盘的线数为 Pn,采样时间内得到的脉冲数为 m,则实际的机械转速 n(单位为rpm)为:
令3000rpm作为转速标幺的基准值,则由脉冲数到实际转速标幺值的转换系数 Kspeed用Q24格式表示为:
对应的电气速度为机械速度乘以极对数。并且可以通过定时器增减计数方式来判断电动机的正反转。
在间接磁场定向矢量控制系统中电流模型用来确定转子磁链位置。电流模型以励磁电流分量 id和转矩电流分量 iq为输入,再加上转子电气角速度,就可得出转子磁链位置。
在暂态下定子d轴电流分量可写成如下形式:
式中 rr为转子电阻,Lr为转子的自感,Lm为定子与转子之间的互感,!r为转子磁链,按照转子磁场定向时转子磁链在d轴上的分量即等于转子磁链。
在标幺模型中转子磁链速度表示为:
假定iq(k+1)=iq(k),式(2)和式(3)可离散化为:
根据式可计算出转子磁链速度,对磁链速度积分就可计算出转子磁链位置,根据式(5)可以得到:
系统中利用DSP与RS-232串行口进行DSP和PC机间的异步通信,主要实现PC机对DSP运行状态的监控。DSP通信模块的波特率设置为9600bps,8位数据位,无奇偶校验,设置接收和发送中断[6]。
PC机监控软件使用VB编写,通信的方式为:首先PC机发送一个标志字符给DSP,DSP在中断中接收该字符,判断是否为预先设置的标志字符,若不是则不进行任何操作,等待下一次的数据接收;若是则接收标志字符之后发送的数据,按照标志字符的含义对这些数据进行相应的处理,然后开启发送中断,PC机接收到数据后将需要的信息显示出来。
系统实验所用的异步电动机主要参数如下:极对数为2,额定功率 Pn=2.2kW,额定电压为 Un=380V,额定电流为 In=5A,额定转速为 nN=1430rpm。系统励磁电流的给定为1.64A。图5、6、7分别为空载给定转速为900rpm时,电动机的转速,d轴电流和q轴电流的响应曲线。图8、9、10分别为空载给定转速为60rpm时,电动机的转速,d轴电流和q轴电流的响应曲线。系统的转速、电流跟踪性能良好,可以迅速的达到给定转速,基本没有超调,稳定时间短,稳态误差小,可以取得良好的动静态性能。
图5 速度响应曲线
图6 q轴电流响应曲线
图7 d轴电流响应曲线
图8 速度响应曲线
图9 q轴电流响应曲线
图10 d轴电流响应曲线
本文TMS320F2812控制芯片为核心,开发了异步电动机交流调速的矢量控制系统,结合控制芯片的特点给出了系统的软件设计,详细介绍了系统的软件流程和如何用模块化结构实现各个功能部分。最终在硬件平台上实现了基于TMS320F2812的矢量控制系统,实验结果表明系统具有良好的动静态性能和很强的转速、电流跟踪能力,从而证明了该设计方案的正确性和可实现性。
[1] 陈伯时,陈敏逊.交流调速系统[M].北京:机械工业出版社,2005
[2] 李永东.交流电机数字控制系统[M].北京:机械工业出版社,2002
[3] 苏奎峰,吕强,耿庆锋,陈圣俭.TMS320F2812原理与开发[M].北京:电子工业出版社,2005
[4] Texas Instruments.TMS320F281x Data Sheet.2004
[5] Texas Instruments.IQmath Library.2002
[6] Texas Instruments.TMS320x281x,280x DSP Serial Communication Interface(SCI)Reference Guide.2004