基于FPGA的磁浮轴承控制系统研究 0 引言 磁浮轴承(Magnetic Bearing)是以磁性力完全非接触式支持旋转体的轴承,其广义上的定义是可支持直线运动物体的轴承及局部有机械性接触的轴承。其作用原理是借磁场感应产生的磁浮力来抵抗重力场及转轴运动时产生的作用力,将转轴悬浮起来,使得转子与轴承不互相接触。 1 磁轴承控制系统 磁轴承控制系统的研究一直是磁轴承技术研究的热点和难点,磁轴承控制系统一般包括无接触的位移传感器、功率放大器、控制器和电磁激励器(即电磁线圈和转轴)四部分。本文研究的立式磁悬浮轴承结构如图1所示。对于立式结构的电机系统来讲,轴向轴承主要承载的是转子本身的自重,属于单方向静态载荷,而其动态载荷相对较小,所以可采用单边工作方式的圆盘电磁铁系统。而径向轴承无静态载荷,但需要承担双向的动态载荷,因此,可以在每个自由度上设计两个电磁铁来进行差动控制,以使其产生正向力和负向力来满足动态载荷的双向变化要求。 由于控制算法往往较为复杂,在磁轴承的控制器设计上,一般都采用数字控制方法,即建立基于DSP(Digital Signal Processor)的控制平台。然而,随着微电子技术的发展,FPGA(Field Programmable Gate Array,即现场可编辑门阵列)以其性能好、规模大、可重复编程、开发投资小等优点,正逐渐成为各种电子产品不可或缺的重要部件。其高性能的并行性、定制化、灵活性和高性价比等特性正使得FPGA可编程门阵列器件成为实现高性能数字信号处理和数字系统控制的首选器件之一。 2 现场可编程门阵列(FPGA) FPGA (Field Programmable Gate Atray)是现场可编程门阵列的英文缩写,是可编程专用集成电路(ASIC)的一种(同类的还包括CPLD)。1984年,Xilinx公司首创了现场可编程逻辑阵列(FP-GA)这一创新性技术,并于1985年首次推出了世界上第一块FPGA芯片。在二十多年的发展过程中,FPGA的硬件体系结构和软件开发工具都在不断的完善且日趋成熟。从最初的1200个可用门到90年代时的几十万个可用门,发展到目前的数百万门至上千万门的单片FPGA芯片,Xilinx、Ahera等世界顶级厂商已经将FPGA器件的集成度提高到了一个新的水平。 本文使用的是Spartan-3E Starter Kit Board开发板,芯片采用Xilinx公司的Spartan-3E系列中的XC3S500E芯片。XC3S500E系统门资源包括1164个可配置单元(可换算为4656个片资源)、4个DCM、360K位块存储器、20个乘法器以及232个可以使用的IO端口。设计时可以采用MathWorks公司的Matlab和Xilinx公司的System Generator来负责系统级设计。 Matlab作为线性系统的一种分析和仿真工具,在工程和计算科学上有着广泛的应用。Simulink作为Matlab的一个工具箱(toolbox),在整个的数字信号处理(Digital Signal Processing,DSP)设计中起着举足轻重的作用。它是一个交互式的工具,可用于对复杂的系统进行建模、仿真和分析。System Generator是Xilinx公司的一个模块集(blockset),是simulink的一个插件,其中设置了Xilinx特有的DSP功能的IP核,也包括了基本DSP函数和逻辑算符,如FIR ( Finite Impulse Re-sponse)、FFT(Fast Fourier Transform)、存储器、数学函数、转换器、延时线等。这些预先定义好的模块保证了FPGA实现时的位(-bit)和周期(-cycle)的正确性。使用它可以自动生成VHDL/Verilog语言、测试向量以及可以对ModelSim进行仿真的“.do'’文件。为了得到最佳的性能、密度和可预测性,System Generator还会自动将特定的设计模块映射成高度优化了的IP核模型。XilinxBlockset中的模块,有的可以直接映射到硬件,有的对应着IP核。它们中每个都可以根据设计要求更改参数,并支持双精度和定点的算法。这个模块集是一个可以外部扩展的库,使用的是C++的定点算法,所以,用户可以创建自己的基于C++类的Simulink库元件,以在设计中被当作黑箱(Blackbox)处理。System Generator同Simulink模型工具相结合,可以参数化、最优化算法。也可以自动从行为级的系统模型转换到FPGA实现,且其间不再需要手工重设,因而大大节省了开发时间并降低了出错概率。通过软件,用户可以在DSP函数的算法、性能、节能、硅片面积中进行选取,以便快速分析出它的运算速度和花费。 3 磁浮轴承系统仿真
一般的磁轴承系统的结构示意图如图1所示,由图可见,轴向磁浮轴承主要借助轴向电磁铁对转子的电磁吸力来平衡转子自身的重量,同时对转子的轴向运动进行约束。轴向轴承主要承载的是转子本身的自重,属于单方向静态载荷,而其动态载荷相对较小,故可采用单边工作方式的圆盘电磁铁系统。图2为轴向磁铁/推力盘悬浮系统转化的简易结构图。图中,x0为轴向轴承在平衡位置的间隙,i0,ic分别为电磁铁线圈的偏置电流和控制电流,F为电磁铁对转子所产生的电磁力。 在图2所示的简化模型中,其磁铁和推力盘间总的吸力为: 由于有电磁力F∝i(t)2/x(t)2,其中i(t)为激磁电流,x(t)为对应气隙,因此,要使转子稳定悬浮在平衡位置,必须满足f=F-mg=0。假设输入初始电流为i0,转子与电磁铁间的气隙为x0,如将转子作为单质点总集中质量来处理,那么,当转子质心在Y方向上有向上的偏移量X时(转子仅存在平移,无干扰力存在),其转子的中心运动方程可表示为: 事实上,轴向磁铁和径向磁铁具有相同的线性化数学模型,只是电流刚度和位移刚度不同,因此,轴向和径向可采用相同的控制方法。 在模拟控制系统中,控制器最常用的控制是PID控制,PID控制由于其自身的优点,在工业生产过程中仍然得到了广泛的应用。模拟PID控制器主要由三个典型的环节组成,即比例环节(P)、积分环节(I)、微分环节(D)。根据上述磁轴承系统的数学模型,可在Matlab环境下采用Simulink仿真工具对磁浮轴承轴向系统进行仿真,以观察其输出响应曲线。仿真数据取自实际磁浮轴承实验装置。由于电磁轴承本身要应用到实际生产当中去,因此,和普通的电机一样,在工作过程中经常会遇到负载变化的情况。如风机、冲床和铣床等应用中存在轴向径向的加载和减载等。下面以轴向轴承为例来分析加载和减载对系统的影响。为了方便进行模拟和数字的对比,首先可建立如图3所示的顶层模块,其中模拟控制系统仿真框图如图4所示,数字控制系统的仿真框图如图5所示。 在本系统的仿真中,其数字PID使用xilinx提供的模块集(blockset)构建而成,如图6所示。 上述仿真中,偏磁电流i0为3.3 A(为仿真方便,取3.3 A并扩大1 000倍),平衡气隙x0为1mm,磁极的截面积S为10 500 mm2,电磁线圈匝数为150匝,真空磁导率μ0为4π×10-7 Vs/Am,另外,取:mg=733 N,1/m=0.013(为仿真方便,扩大1000倍),kp=8 800,ki=18.5,kd=1 000 000,kp1=9 000,ki1=220 000,kd1=50,T=2×10-5。 加载/减载可使用Flux*来描述,用以表示在0.2 s和0.6 s时刻阶跃加载和减载400N。其仿真结果如图7所示,所得到的悬浮气隙波形曲线中的上方为模拟控制,下方为数字控制。 电流输出结果要缩小1000倍,图8所示是其磁铁电流曲线(单位A),其中实际额定电流值设定为3.3 A。上方为模拟控制,下方为数字控制。 4 硬件协同仿真 硬件协同仿真就是在对Matlab—Simulink环境下所设计的算法模型进行仿真后,“System Gen-erator”可以结合实际“Xilinx—FPGA”的硬件资源生成一个集成有该算法的“硬核”;然后通过FPGA把“硬核”下载至FPGA中。最后以同样的信号作为输入,一路信号接“软件算法模型”,一路信号接“硬核”,同时观测两者的输出。如果处理结果一致,则可证明Matlab—Simulink环境下所设计的DSP模型是硬件可行的。 在对数字控制系统仿真运行协同仿真之后,就会生成新的数字PID模块。然后把它重新接入数字控制系统仿真框图中,就会得到如图9所示的硬件协同仿真系统框图。 用图5的理论控制与图9进行对比,然后连接开发板,打开电源,并运行模型进行仿真,则可从仿真波形中很明显的看到,硬件协同仿真的结果和理论结果完全一样。 5 结束语 本文采用System Generator对基于FPGA的磁浮轴承控制系统进行了仿真,并将其下载到FP-GA开发板进行硬件协同,结果证明,在加载/减载400N力时,所设计的数字PID控制器能较好的完成对磁浮轴承系统的控制,并实现稳定悬浮。
|