(北京理工大学自动化学院, 北京100081)
迭代学习控制的思想最先是由日本学者Uchiyama[1]提出的,只是未引起人们广泛的关注。一般认为,Arimoto在1984年提出的学习算法被认为是关于迭代学习控制的开创性研究。
迭代学习控制适合于一类具有重复运行特性的被控对象,其任务是寻找控制输入,使得被控系统的实际输出轨迹在有限时间区间上沿整个期望输出轨迹实现零误差的完全跟踪,并且整个控制过程要求快速完成[2-4]。
迭代学习控制经过近20年的发展,无论在理论还是在应用上都取得了丰硕的成果。近些年来提出的基于系统逆的迭代学习控制(IIC)[5]技术提供了一种直接的方式来量化和说明系统动态不确定性对迭代学习控制性能的影响, 从而达到迭代控制输入的快速收敛[6-7]。然而, 这种方法仍然需要动力学模型和建模过程,模型质量直接限制了IIC技术的性能。MIIFC算法消除动力学建模过程,并显著提高跟踪性能[8]。在相关研究的基础上,提出了一种新型的MIIFC控制结构,分析了存在外界干扰下控制器的性能,与传统的ILC控制相比,加快了系统收敛的速度,改变了控制量对误差的补偿方式;配合一般的PID控制器,可以省略繁琐的PID参数整定过程,在粗略给出PID参数的情况下通过迭代学习达到精确的轨迹跟踪。通过电液伺服系统的跟随给定实验,表明了该控制方法的有效性。
MIIFC算法如下:
u0(jω)=αyd(jω),k=0,
(1)
算法的迭代学习需要一组初始的输入输出数据u0(jω)、y0(jω),初始控制量u0(jω)可由给定轨迹yd(jω)乘以一个系数α获得,α可以选取系统增益的倒数。
考虑一种存在输出干扰的情况:
y(jω)=yl(jω)+yn(jω)
(2)
其中,yl(jω)为由控制输入得到的输出,yn(jω)则代表了输出干扰项。
定义NSR(noise/disturbance to signal ratio)为噪声与信号的比值。算法收敛性与跟踪性能的优劣由NSR的值来确定。
为了验证算法的收敛性和对跟踪性能的提升,定义在k次迭代过程中迭代控制输入和期望输入的比值为:
(3)
其中,pk(jω) 是在频率ω下,过去所有迭代过程中NSR的乘积,Sk(jω)则是pk(jω)的累加[3]。
推论:当NSR的值小于一个常数时,可以保证迭代学习算法的收敛性;通过进一步界定NSR的值,可以使跟踪性能得到显著提高。
(5)
由式(5),可以得到随着迭代次数增加,迭代输入与期望的输入比值为:
(6)
若每次迭代过程中NSR的值满足小于一个正数ε,ε的范围为:
(7)
则S∞(jω)是有界的:
(8)
联合式(6),系统的相对跟踪误差为:
(9)
将式(8)的结果代入式(9)中,有:
(10)
至此,迭代学习的收敛性得到证明。同时,图1描述了不同NSR取值下系统的相对跟踪误差。
图1 不同NSR取值下的相对跟踪误差
可以看出,如果在某特定频率ω下NSR满足:
(11)
则该频率ω处的跟踪误差的频率分量小于期望的输出的频率分量,跟踪性能得到提升:
(12)
本研究中采用的控制对象为电液伺服阀控缸位置控制系统,系统空载时的传递函数为:
(13)
式中,Ap—— 液压缸的有效作用面积
Kq—— 流量增益
开环系统的传递函数是一个积分环节,存在位于原点的极点,因此系统是不稳定的[9-10]。
MIIFC是一种开环控制,它并不能使系统镇定,所以在许多迭代学习控制设计中总是假设系统是稳定的,或者反馈控制器已经存在[11]。如果考虑受控对象不稳定或具有模型不确定与非重复扰动时,就应该考虑设计一个能使系统镇定的反馈控制器[12-13]。因此,引入图2中虚线框内的输出反馈对系统进行镇定。
图2 MIIFC控制框图
其中,uk(jw),yk(jw),yk,n(jw)分别为第k次迭代学习控制的控制量uk(t)、系统输出yk(t)、外界干扰yk,n(t)的傅立叶变换;uk+1(jw)为第k+1次迭代学习控制器的输出uk+1(t)的傅立叶变换;yd(jw)为系统期望输出yd(t)的傅立叶变换。MIIFC控制器根据第k次迭代过程中一定长度(通常为重复给定轨迹的一个周期)的数据,在频域内计算出k+1次迭代过程的控制量,然后通过逆傅立叶变换到时域,并开环给出;接下来,该控制量由PID环节进行逐点的闭环控制。
通常情况下,PID控制器要想达到精确的控制效果,需要一个反复调节PID参数的过程。如果PID控制器没有经过参数整定,那么跟踪结果一般会存在静差。为了省略复杂的参数整定过程,消除PID控制存在的静差,从而精确的跟踪给定曲线,加入MIIFC控制器来进行迭代学习控制。具体控制过程如下:第一步,先根据经验预估一组PID参数,之后由PID单独进行控制,待运行结果稳定,截取一组原始的输入输出数据,因为PID控制器未经参数整定,所以这组数据是带有静差的。第二步,通过MIIFC控制器不断迭代学习,对静差进行修正直到收敛。可以看出,PID控制器和MIIFC是配合使用的,其中,PID主要用于系统镇定,使跟踪结果稳定不发散即可,由于未经参数整定,因此其消除误差的作用有限,尤其是当干扰较大或者误差较大时,仅依靠PID控制依然会存在很大的静差,因此主要的误差消除工作仍需MIIFC迭代学习控制来完成。此外,PID控制作为反馈控制器,本身存在固有的滞后现象,对于高频信号尤为明显。而加入MIIFC前馈控制之后,通过上一迭代周期的迭代控制器输出、被控对象输出和给定轨迹离线计算出下一个迭代周期的控制量,可以对滞后现象带来的误差进行补偿。
实验中参考输入为不同频率、不同幅值的正弦信号,被控对象为电液伺服阀控缸系统。
以单个对称伺服阀控制非对称缸系统为研究对象,整体的实验平台主要由泵站、阀控缸、工控机组成。阀控缸系统由惯性负载、弹性负载、控制器、1个四通伺服阀、1个非对称液压缸、1个活塞杆位置传感器以及其他附件和液压管路组成。工控机采用主从机结构,主机为1台笔记本电脑,从机是NI公司的8101机箱,装载有PXI-6251采集卡,具有16路16位模拟输入,单通道采样率最大可达1.25 MS/s,用于数据采集、AD/DA转换和控制算法的实现。终端安装有NI LabVIEW的实时系统(Real-time System),可以在指定时间内完成规定操作,具有很高的时间精度和可靠度,保证了实时信号不间断采集存储和传输。开发环境为LabVIEW 2012,MIIFC控制器采用MATLAB编写,包括傅立叶变换以及算法具体的计算过程,缩短了控制周期。
实验中,使液压缸分别跟随幅值为10 mm、频率为1 Hz和幅值为2 mm、频率为10 Hz的正弦给定曲线。首先初步估计PID控制器参数,并使系统在PID控制下跟踪正弦曲线,得到初始的输入输出数据;之后开始MIIFC迭代控制过程。
图3a为单纯的采用估计PID参数进行控制的位移y跟踪1 Hz、10 mm正弦曲线;图3b为在图3a的基础上,利用MIIFC迭代5次之后液压缸的跟踪给定曲线;图4a为单纯的采用估计PID参数进行控制的位移y跟踪10 Hz、2 mm正弦曲线;图4b为在图4a的基础上,利用MIIFC迭代5次之后液压缸的跟踪给定曲线;可以看出,MIIFC迭代控制器可以消除原有的跟踪误差,实现对给定曲线的精确跟踪,并且有较快的收敛速度。
图3 1 Hz,10 mm正弦跟踪实验曲线
在实际工况中,如果开始运行时通过PID控制能稳定的话,那么接下来的扰动一般是缓慢变化的,带来的误差可以通过迭代逐渐消除;假如出现大扰动的情况,可能会破坏系统的稳定性而导致发散,那么就需要重新进行迭代找到新的控制量。
图4 10 Hz,2 mm正弦跟踪实验曲线
设计的MIIFC迭代控制器,结构简单,易于实现;省去了相关的建模过程, 减少了模型不确定度带来的误差;应用NSR考虑了可能存在的外界噪声的范围,并理论证明了预期达到的控制精度;通过迭代学习对跟踪误差进行了准确的补偿,省略了反复的PID参数整定过程。实验表明,基于逆的迭代控制具有快速的收敛性和跟踪精度,是一种简单有效的迭代控制算法。