张云聪,谢振宇,程伟超,郝建胜
(南京航空航天大学 直升机传动技术重点实验室,江苏 南京 210016)
近年来,随着磁悬浮技术、电机技术、控制技术和新材料技术的进步,飞轮电池技术得到了很大的发展。与化学电池相比,飞轮电池具有储能密度大、能量密度高、使用寿命长、转换效率高、无环境污染等优点[1]。飞轮电池单独或和其他动力装置混合用于电动汽车,可以大大改善汽车的动力性能和汽车尾气的排放情况。
为了提高飞轮电池的比能量和比功率,需进一步提高飞轮的极限转速。磁悬浮轴承具有无需润滑、无接触磨损、寿命长、无污染、转速高、支撑刚度和阻尼可调等优点[2],将磁悬浮轴承应用于飞轮电池,不仅能提高飞轮转子的极限转速,还能大大减少飞轮转子在高速旋转中的摩擦损耗,有效提高能量的利用率。
飞轮电池是一个复杂的机电综合系统,电磁力是非线性力,转速变化范围大,系统具有很强的非线性,故很难精确建立系统的数学模型。另外,因路况比较复杂,汽车会出现频繁的加速、刹车、转弯、上坡、下坡及车体倾斜等情况,陀螺扰动力矩和惯性力也很难准确描述。
针对磁悬浮轴承的非线性、强耦合性等特点,新的控制算法不断应用于磁轴承控制系统中。HABIB M K等[3]设计了一种自适应模糊控制应用于主动磁悬浮轴承,并进行动态仿真,仿真结果表明该控制对系统的阶跃响应有良好的改善。庞杰[4]将神经网络控制理论应用于主动磁悬浮轴承系统中,实现了转子五自由度稳定悬浮,并且在有外界冲击的情况下,仍能达到较高的控制精度。
本文采用模糊控制和PID控制相结合,开发了基于FPGA控制器的飞轮电池模糊自调整PID控制策略,根据磁悬浮轴承实际运行情况,通过模糊推理实时地调整控制参数,确保系统具有良好的动态性能。
飞轮电池的机械结构如图1所示。飞轮转子1是能量储存和转换的载体;电涡流传感器2主要包括上径向、下径向和轴向位移传感器,用于检测和采集飞轮转子的位移振动情况;3和6分别为上、下径向磁悬浮轴承,为飞轮转子提供径向悬浮力,限制径向(x方向、y方向、绕x轴的旋转和绕y轴的旋转)4个方向的自由度;内置异步电机4外接变频器,带动飞轮转子高速旋转;轴向磁悬浮轴承5为飞轮转子提供轴向悬浮力,限制z轴方向移动自由度;真空壳体7一方面是为了减少飞轮旋转时的风阻,减小摩擦损耗,另一方面在飞轮破坏失效时起到保护作用。
1—飞轮转子;2—电涡流传感器;3—上径向磁悬浮轴承;4—内置异步电机;5—轴向磁悬浮轴承;6—下径向磁悬浮轴承;7—真空壳体。图1 飞轮电池机械结构图
图2为磁悬浮轴承系统控制原理图。位移传感器检测转子的位置信号u与参考信号u0进行比较,得到位置偏差信号ue并送入数字控制器;数字控制器经过一定的控制算法后得到控制信号uc并送入功率放大器;功率放大器根据控制信号uc在相对布置的电磁铁线圈内产生相应的差动电流,进而产生差动电磁力;转子在差动电磁力作用下,回到设定的参考位置。如,当转子向下偏移时,位置偏差信号ue>0,位置控制信号uc>0,电磁铁1线圈内的电流为(I0+Ic),电磁铁2线圈内的电流为(I0-Ic),电磁铁1的电流大于电磁铁2的电流,电磁铁1的磁力大于电磁铁2的磁力,使转子在差动电磁力作用下回到指定参考位置。
图2 磁悬浮轴承系统控制原理图
对于磁悬浮轴承支承的飞轮电池,由于路况复杂以及汽车不同的运动状态,使系统很难建立精确的数学模型,控制参数的不确定,使磁悬浮轴承具有非线性、磁滞性、强耦合性。因此普通PID控制策略无法满足控制要求。模糊控制不依赖系统的精确数学模型,能实现控制参数的自调整。采用模糊控制和PID控制结合的控制策略,以飞轮电池作为控制对象,选用转子实际位置与参考位置产生的偏差e和偏差变化率ec为模糊控制器的输入,根据试验得到的经验建立模糊控制库,经过模糊推理后转化为PID控制的3个系数KP、KI、KD。控制原理如图3所示。
图3 模糊自调整PID控制器的工作原理
在本文的试验系统中,AD芯片的采样范围为0~5V,期望值为中点2.5V,因此选择偏差e的基本论域为[-2.5,+2.5],偏差变化率ec的基本论域为[-5,+5]。物理论域经过量化得到输入变量模糊论域:e,ec={-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},此时,e的量化因子为2.4,ec的量化因子为1.2。
输出变量模糊论域:△KP、△KI、△KD={-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}。
要实现变量模糊化,首先要确定模糊论域上的模糊子集以及各个模糊子集对应的隶属函数形式。一般而言,模糊论域上模糊子集个数越多,模糊控制的过程就越精细,但模糊推理过程需要的时间就越多。综合考虑,本文最终确定的输入变量和输出变量的模糊子集分别定义为NB(负大),NM(负中),NS(负小),ZO(零),PS(正大),PM(正中),PB(正大)。
隶属函数有三角形、梯形、S形、Z形等多种函数。隶属函数形状尖的子集,分辨率和控制灵敏度高;隶属函数平缓的子集,控制特性平缓,系统稳定性相对较好。本文的所有输入函数和输出函数中,NB为Z形函数,PB为S形函数,相对平缓;其余取三角形隶属函数。以变量e为例,其模糊论域中模糊子集隶属函数分布如图4所示。
图4 e的隶属函数
模糊控制规则是模糊控制器设计的核心工作,建立模糊控制规则常用的方法是根据设计人员的技术和实际经验归纳总结出来的。根据控制参数调试经验,归纳总结了KP、KI和KD在不同e、ec组合情况下变化的规则如下:
1) 当|e|较大时,此时需要提升系统反应速度,即增大KP,因为积分环节主要对稳态精度影响较大,此时可以不用积分环节,使KI趋向0,KD要偏小。
2) 当|e|较小时,转子接近平衡位置,此时需要优先增强积分作用,即增加KI,进一步提高控制精度,同时应该适当增加KP提升转子支撑刚度,为避免系统在平衡点处出现振荡,KD的取值应恰当。
3) 当|e|和|ec|都适中时,为了使系统不产生较大的超调量,此时应适当减小KP,为了使位移尽快收敛,需要稍微增强积分作用,即增加KI,KD取值适中。
根据上述自整定规则和实际试验,最终确定PID 3个控制参数的模糊控制规则表,其中△KP的规则如表1所示。
表1 △KP的模糊规则
在MATLAB的模糊规则编辑器(rule editor)里将△KP、△KI、△KD控制规则用模糊条件语句(if…than结构)进行描述,e、ec的组合用“and”,因为e、ec各有7个模糊子集,所以会有7×7种模糊条件语句,具体如图5所示。
图5 模糊规则编辑器△KP 、△KI 、△KD中的控制规则
模糊控制器的输出为模糊量,需要把模糊量转化为清晰量,才能用于控制执行机构。常用的清晰化方法有二等分法(bisector)、面积重心法(centroid)、中间最大值法(mom)等。本文选用面积重心法进行清晰化处理。设论域U上集合A的隶属函数为A(u),精确输出量ucen由计算公式(1)求出:
(1)
在MATLAB模糊逻辑工具箱的去模糊化(defuzzification)选项设置为面积重心法。
根据系统各环节的数学模型,利用MATLAB/Simulink基本模块和模糊逻辑控制器(fuzzy logic controller)模块搭建系统模型,分别对不完全微分PID控制和模糊自调整PID控制进行仿真研究,比较两种控制策略的优劣。选取两种控制策略初始控制参数一致,控制参数由仿真结果和实际调试确定。在t=0.25s时加入一个幅值为0.3V的脉冲激励信号。图6为不完全微分PID控制和模糊自调整PID控制策略仿真图,图7为仿真结果曲线。
图6 两种控制策略系统仿真图
图7 两种控制策略仿真曲线
表2是两种控制策略下的振动随时间变化的仿真曲线。由表2可知:模糊自调整PID调节时间更短,超调量更小,在起浮和外界激励下控制效果优于不完全微分PID。
表2 两种控制策略下的振动对比
本文模糊控制策略的实现主要包括AD转换模块,模糊PID控制模块,电流PI控制模块和PWM模块,其流程图如图8所示。
图8 模糊自调整PID流程图
AD转换控制模块主要是控制AD芯片数据的读写操作、通道的选择和数据传输形式。DB0-DB11为双向I/O口,DB[11..0]为输入口时,接受AD芯片转换后的数据并送入后续的处理模块;DB[11..0]为输出口时,数据输出给AD7938的12位控制寄存器位,控制AD芯片的工作方式。表3为各寄存器位对应的含义。
表3 AD7938控制寄存器位含义
模糊PID控制模块主要包括误差生成模块、模糊量化模块、模糊查找表模块和PID运算模块。
误差生成模块是将AD模块采集到的位移信号rk与参考信号refer作比较,获得误差信号e和误差变化率信号ec,其中参考信号refer放在FPGA内部寄存器中。误差生成模块RTL级映射如图9所示。
图9 误差生成模块RTL级映射
模糊量化模块是将误差信号e和误差变化率信号ec进行模糊化处理得到模糊量的过程。在本模块中,误差e和误差变化率ec的模糊量化与MATLAB中的模糊子集和隶属函数的选取一致,最终模糊量化后的值为{111,110,101,000,001,010,011}。
模糊查找表模块主要是实现模糊推理和解模糊的过程。本文借助MATLAB模糊逻辑工具箱,按照一定的规则生成查找表并存储在rom中,以误差e和误差变化率ec模糊量化后的值为地址,通过查找方式得到△KP、△KI、△KD3个参数。考虑转子旋转时,主要振动来源为转子不平衡量所引起的周期性振动,以转子旋转时转子实际位置与参考信号产生的偏差e和偏差变化率ec作为测试信号,得到此模块的仿真图如图10 所示。
图10 模糊查找表模块测试仿真图
PID运算模块是将不完全微分PID与模糊控制结合的过程。不完全微分PID控制器的传递函数可表示为:
(2)
式中:KP、KI、KD分别是比例、积分和微分环节的增益;Tf为滤波时间常数。
为了对不完全微分PID控制算法编程,采用一阶向后差分方法对各环节进行离散化,得到离散PID,将△KP、△KI、△KD3个参数经过一定运算处理得到ΔKP_1,ΔKI_1,ΔKD_1,加入到PID控制环节,构成模糊PID控制,各环节输出如下:
比例环节:Up(k)=(Kp+ΔKP_1)E(k)
(3)
积分环节:Ui(k)=Ui(k-1)+(Kp+ΔKP_1)(KI+ΔKI_1)E(k)
(4)
微分环节:Ud(k)=(Kd1+ΔKd_1)[E(k)-E(k-1)]+Kd2Ud(k-1)
(5)
控制器总输出:U(k)=Up(k)+Ui(k)+Ud(k)
(6)
对本模块搭建顶层文件,对顶层文件进行整体仿真,输出仿真结果如图11所示。可以看出,输出能快速地响应输入,且输出满足要求。
图11 模糊PID模块测试仿真图
电流PI控制模块是对电流信号和位移控制信号进行运算的模块。本文采用PI控制,其传递函数为:
(7)
考虑到FPGA内部乘法器资源宝贵,电流控制模块采用移位方式实现比例和积分运算,同时为了防止积分过量的问题,采取抗饱和积分措施,即当电流控制量超过额定极限值时,只计算反向偏差。
PWM(脉冲宽度调制)无需数模转换,可从FPGA直接输出给MOS管,实现MOS管导通时间的改变,控制磁轴承电流的变化。在FPGA内部,利用线性计数器和比较器产生PWM波形。电流控制模块输出的控制量与计数器的值作比较,当控制量大于计数器的值时输出高电平,反之,输出低电平,控制量的不同实现PWM波形占空比不同。通过改变计数器循环频率改变PWM波形的频率,考虑到实际系统的需要及功率器件的寿命,本文设定的PWM的频率为25 kHz。
在Modelsim软件里对本文PWM模块仿真,仿真结果如图12,可以看出PWM波形频率为25 kHz,随着输入的改变,输出的占空比跟着改变,且波形无毛刺、平滑,满足设计要求。
图12 PWM模块测试仿真图
在Quartus II中采用自顶向下的设计方法,在顶层进行系统的模块划分和设计,然后用Verilog HDL语言和原理图结合的方法进行电路设计,最终得到飞轮电池FPGA五自由度模糊控制系统顶层结构图。将其下载到某公司的Cyclone IV系列中的EP4CE22E22C8芯片的电路板上进行试验。
图13为飞轮电池试验系统实物图。飞轮电池试验系统主要包括飞轮电池机械系统、磁悬浮轴承电控系统、变频器、PC机、示波器和数据采集系统。
图13 飞轮电池试验系统实物图
机械系统包括飞轮转子、径向磁悬浮轴承、轴向磁悬浮轴承、电机定子等,是能量转换的载体;电控系统包括传感器、控制器和功率放大器,是本系统的核心,其性能的好坏对飞轮转子精度具有决定性作用。变频器驱动电机定子带动飞轮转子高速旋转;PC机用来编写调试程序并通过下载线与数字控制器相连,将编写的程序烧写进FPGA;示波器用来观察转子各自由度的位移信号和电流信号的变化,数据采集系统用来采集转子振动信号进行频谱分析。
试验分两组进行,一组采用不完全微分PID控制策略,一组采用模糊PID控制策略,两组初始控制参数完全一样,如表4所示。
表4 两种控制策略初始控制参数
变频器驱动电机带动飞轮转子由静止稳定运行至额定转速12 000r/min,借助数字采集卡及本实验室开发的磁悬浮数据采集虚拟仪器,采集两组试验中上径向各转速下转子振动情况,得到转子的同频振幅曲线,如图14所示。
图14 模糊自调整PID与PID同幅曲线对比
从图14可以观察到,在两种控制策略下,飞轮转子的临界转速在3 200r/min左右。在模糊自调整PID控制下,转子振幅为3.6μm,相比较不完全微分PID控制,转子振幅降低了16%,且变化平坦,有利于转子安全越过临界转速;在工作转速12 000r/min附近,模糊自调整PID控制策略转子振幅为3.1μm,比不完全微分PID控制降低14%;在全转速范围内,模糊自调整PID控制振幅变化平坦。
利用MATLAB模糊逻辑工具箱设计了模糊控制器,采用Simulink实现了模糊自调整PID控制策略仿真 ;利用FPGA芯片实现了数字模糊PID控制器。
在Quartus II平台编写了模糊控制算法,在飞轮电池试验台对该算法进行验证,并与不完全微分PID控制作比较。试验结果表明,该控制算法能在线调整控制参数,对转子在临界转速的振动有较好的抑制作用,最大振幅为3.6μm;在额定工作转速下转子振幅为3.1μm;在飞轮转子旋转过程中振幅变化平坦,具有更好的动态性能。