曾庆山, 熊战磊, 尹明俊
(郑州大学 电气工程学院 河南 郑州 450001)
在诸如自动化生产线、机械臂、工业机械手等自动化过程的跟踪控制中,无法跟踪全部数据点,只能在某些特定的数据点上进行有效检测。 因此,针对这些特定数据点进行高精度的点到点跟踪控制研究具有重要的实际意义。
最早的点到点跟踪问题主要集中于研究一类终点跟踪问题,点对点跟踪控制问题的解决思路是:设计一条经过特定跟踪点的轨迹,把问题转化为一般的全轨迹跟踪问题。 这种方法主要关心跟踪轨迹的设计。 文献[1]提出了终端迭代学习控制算法来解决列车进站问题。 文献[2-3]提出了一种基于优化跟踪误差的方法来直接得到输入,该方法的优势在于不需要设计初始轨迹,但是并没有给出解决方案来克服外界干扰。 针对有初始状态扰动的点到点跟踪控制问题,文献[4]提出一种基于插值法轨迹更新的P型闭环迭代学习控制算法,算法的跟踪性能有了很大的改善, 但并没有考虑算法的优化问题,进而提升算法的收敛速度和跟踪精度。 文献[5]针对非线性扰动作用的离散线性系统的输出跟踪控制问题,提出了基于参考轨迹更新的点到点迭代学习控制算法, 在控制律的设计中引入范数优化思想,讨论了无扰动和非重复扰动情形下算法的收敛性和鲁棒性。 但是文献[5]仅利用当前次迭代得到的信息,没有利用以前多次迭代过程中得到的信息来提高算法的跟踪性能。 文献[6-7]指出在算法稳定的前提下,指数变增益学习律能有效提高算法的学习效率和收敛速度。 因此,在进行目标轨迹更新过程中,将固定的学习增益λ改为随迭代变化的指数变增益eγ(k),一方面能够克服固定学习增益选取的盲目性,另一方面还能有效提高更新速度、减少算法的运行时间。 文献[8-13]采用范数优化的思想,将点到点跟踪与优化思想结合,充分利用点到点跟踪中的额外自由度,从而实现需求的性能指标。 文献[14]针对线性时不变离散系统的跟踪问题,提出一种高阶参数迭代学习控制算法,利用了以前多次迭代过程的输入、输出信息来构造新的控制输入,可有效提高算法沿迭代方向的收敛速度和鲁棒性。
在迭代学习控制中,高阶算法能够削弱系统噪声和外界干扰对跟踪性能的影响,从而能够快速、高精度地跟踪控制。 与范数优化理论相比,迭代学习控制参数优化技术在工程上更容易实现。 因此,为解决点到点跟踪控制中存在的参考轨迹更新速度慢、跟踪精度低、学习速度慢、鲁棒性低等问题,本文提出一种快速参考轨迹更新的点到点二阶参数优化迭代学习控制算法。 在进行参考轨迹更新的过程中,将固定更新增益λ改为随迭代变化的指数变增益eγ(k),目的是使新的参考轨迹快速逼近系统输出。 在控制律的设计中,尽可能多地利用迭代过程中得到的输入、输出信息,从而实现目标点的实际输出快速、高精度地跟踪期望输出,并提高算法的鲁棒性。
考虑如下的单输入、输出离散线性时不变系统中某些特定点的跟踪控制问题
(1)
其中:CB≠0;k表示迭代次数;t∈[0,T]表示系统采样时间区间;xk(t)∈Rm,uk(t)∈R,yk(t)∈R分别为系统(1)第k次迭代t时刻的状态、输入及输出变量;A,B,C分别为相应维数的实矩阵。系统(1)的期望输出轨迹为yd(t)∈R;定义ud=[ud(0),ud(1),…,ud(N-1)]T为最优跟踪时的系统输入;定义ek(t)为系统第k次迭代t时刻的跟踪误差,即ek(t)=yd(t)-yk(t)。
将状态空间形式的系统模型(1)转换为基于时间序列的输入、输出形式矩阵模型,等价为
yk=Guk+d。
(2)
其中G和d分别为
定义uk和yk分别为输入和输出的时间序列向量:
定义yd和ek分别为期望输出和系统跟踪误差向量:
在点到点的跟踪控制中,只要求在某些特定的数据点上实现完全跟踪。 因此,可以充分考虑对特定点跟踪控制的自由性,对参考轨迹进行更新,从而减少算法运行时间和提高学习效率。 在需要跟踪的特定时间点T={t1,t2,…,ts}处,要求rk(ti)=r0(ti)=yd(ti)。 不需要跟踪的时间点处进行参考轨迹更新,使新参考轨迹逐渐逼近系统输出,即‖rk+1-yk‖≤‖rk-yk‖。rk+1为第k次更新后的参考轨迹。文献[4]指出可以通过插值法对参考轨迹更新,并设计P型闭环控制律。 即
(3)
式(3)中λ满足
(4)
在进行如式(3)的参考轨迹更新过程中,λ和Γ一般选取固定值,因而存在一定的随机性,使得算法存在参考轨迹更新速度慢、运行时间长等问题。 为了克服这些问题,考虑将λ改为随迭代变化的指数变增益eγ(k)。参考轨迹更新方法为
rk+1=rk+(eγ(k)-1)·(rk-yk)。
(5)
定理1在点到点跟踪问题中,采用如式(5)的参考轨迹更新方法,使‖rk+1-yk‖≤‖rk-yk‖成立的充分条件是γ(k)满足
证明由式(5)可得rk+1-yk=rk-yk+(eγ(k)-1)·(rk-yk)=eγ(k)·(rk-yk),‖rk+1-yk‖=‖eγ(k)·(rk-yk)‖≤eγ(k)·‖(rk-yk)‖。
在需要跟踪的时间点t∈{t1,t2,…,ts}处,要求rk(ti)=r0(ti)=yd(ti)。 在第k次迭代时若满足γ(k)=0及r0(ti)=yd(ti)时,从而rk+1(ti)=rk(ti)=…=r0(ti)=yd(ti),满足要求。
在不需要跟踪的时间点t∈[0,N]且t∉{t1,t2,…,ts}处,为了让新的参考轨迹快速逼近系统输出,进行参考轨迹更新,并将传统的固定更新增益λ改为随迭代变化的eγ(k)形式。 第k次迭代时,在所有不需要跟踪的时间点处,若满足γ(k)<0时,那么eγ(k)<1,从而‖rk+1-yk‖≤‖rk-yk‖成立。
高阶算法利用以前多次迭代的控制输入和跟踪误差进行加权处理,来提高算法的跟踪性能。 针对系统(1)的点到点跟踪控制问题,考虑点到点二阶参数优化迭代学习控制算法
uk+1(t)=uk(t)+β1,k+1(t)ek(t+1)+β2,k+1(t)ek-1(t+1),t∈T,
(6)
其中:ek(t+1)表示当前次迭代的误差信息;ek-1(t+1)表示上一次迭代得到的误差信息;参数β1,k+1、β2,k+1的目标优化函数为
J=‖ek+1‖2+w1·‖β1,k+1‖2+w2·‖β2,k+1‖2,w1>0,w2>0,
(7)
其中:β1,k+1=[β1,k+1(0),β1,k+1(1),…,β1,k+1(N-1)]T;β2,k+1=[β2,k+1(0),β2,k+1(1),…,β2,k+1(N-1)]T。
根据系统(1)可得
(8)
其中:Δek+1(t)=ek+1(t)-ek(t); Δxk+1(t)=xk+1(t)-xk(t); Δuk+1(t)=uk+1(t)-uk(t)。
式(8)可以转换为
-Δek+1=Gkβk+1,
(9)
其中:βk+1=[β1,k+1(0),β2,k+1(0),β1,k+1(1),β2,k+1(1),…,β1,k+1(N-1),β2,k+1(N-1)]T;
Bk(t)=B[ek(t),ek-1(t)];W=diag{w1,w2,…,w1,w2}。
将式(9)代入式(7)可得
J=‖ek+Gkβk+1‖2+w1·‖β1,k+1‖2+w2·‖β2,k+1‖2=‖ek+Gkβk+1‖2+W·‖βk+1‖2。
(10)
通过目标优化函数J对βk+1求偏导,求得每一次迭代时的最优参数β1,k+1和β2,k+1,从而随着迭代的进行,跟踪误差单调快速收敛。 通过式(10)对βk+1求偏导得到
(11)
证明将非最优解β1,k+1=0,β2,k+1=0代入目标函数J得
‖ek+1‖2≤‖ek+1‖2+w1·‖β1,k+1‖2+w2·‖β2,k+1‖2≤‖ek‖2。
(12)
用算法(6)进行点到点跟踪控制的过程中,通过式(11)对控制律中的参数进行优化可以保证‖ek+1‖<‖ek‖。
(13)
Sk(ti)=(CBk(ti))Tek(ti)+(CABk(ti))Tek(ti+1)+…+(CAN-tiBk(ti))Tek(N)=
(CB[ek(ti),ek-1(ti)])Tek(ti)+(CAB[ek(ti),ek-1(ti)])Tek(ti+1)+…+
(CAN-tiB[ek(ti),ek-1(ti)])Tek(N)。
Sk(ti)=(CAt1-tiB[ek(ti),ek-1(ti)])Tek(t1)+(CAt2-tiB[ek(ti),ek-1(ti)])Tek(t2)+…+
(CAts-tiB[ek(ti),ek-1(ti)])Tek(ts)。
为提高算法的跟踪性能,并应用于一类离散线性时不变系统的点到点跟踪控制中,考虑算法
(14)
为使算法表现出高跟踪性能,随迭代变化的指数变增益eγ(k)需要满足定理1; 参数β1,k+1、β2,k+1的最优解由式(10)解得。
为了验证算法的有效性和科学性,考虑如下的电机驱动单机械臂控制系统[5], 其动态模型为
(15)
电机控制系统的实际变量参数分别设定为Kt=1 N·m、Kb=0.085 V·s/rad、Rr=0.075 Ω、Bc=0.015 kg·m2/s、Dc=0.05、l=0.6 m、m1=0.05 kg、m2=0.01 kg、Ξ=0.05 kg·m2、Γ=0.000 8 Ω、g=9.8 m/s2。系统仿真时间设定为t=2 s,采样时间设定为ts=0.1 s,则系统的离散状态空间表达式的矩阵参数可表示为
从而可以将动态模型(15)转换为
图1给出了点到点二阶参数优化迭代学习控制算法的系统输出误差范数在迭代域上的收敛情况。 从图1中可以看出,仅仅经过几次迭代,算法(14)就能表现出较好的跟踪性能。
在实际的工业过程中,很难保证外部干扰等不确定性在每一次试验时都是相同的。 因此,考虑存在建模误差ΔG和非重复性外部干扰r时,测试二阶参数优化点到点迭代学习控制算法的鲁棒性。在系统(15)中加入模型误差ΔG和非重复性外部干扰r,则
图2给出了存在建模误差ΔG时,点到点二阶参数优化迭代学习控制算法的系统输出误差范数在迭代域上的收敛情况。 图3给出了存在非重复性外部干扰r时,点到点二阶参数优化迭代学习控制算法的系统输出误差范数在迭代域上的收敛情况。 结合图2和图3可以得出,ΔG或r的存在使得算法(14)的跟踪性能受到了影响。 但是随着迭代的进行,算法(14)仍然能够表现出良好的跟踪性能。
图2 ΔG存在时,算法(14)的跟踪误差Figure 2 Tracking error of algorithm (14) when ΔG exists
图3 r存在时,算法(14)的跟踪误差Figure 3 Tracking error of algorithm (14) when rexists
图4 ΔG和r存在时,算法(14)的跟踪误差Figure 4 Tracking error of algorithm (14) when ΔG and r exist
图4给出了同时存在模型误差ΔG和非重复外部干扰r时,点到点二阶参数优化迭代学习控制算法的系统输出误差范数在迭代域上的收敛情况。 结合前文分析和仿真结果,所提算法能够应对实际系统中存在的不确定性并表现出较好的跟踪性能。 因此,可以将算法(14)应用到一类离散线性时不变系统的点到点跟踪控制问题中。
图5给出了算法(14)、固定更新增益二阶参数优化算法、固定更新增益P型闭环[4]点到点迭代学习控制算法的系统输出误差范数,在迭代域上的收敛情况。 图6给出了存在模型误差ΔG和非重复外部干扰r时,3种算法更新后的参考轨迹,在非跟踪点处的输出与实际输出之间的误差范数在迭代域上的收敛情况。 从图6可以看出,采用算法(14)提高了参考轨迹的更新速率,快速逼近实际输出。
图5 3种算法的跟踪性能比较Figure 5 Comparison of tracking performance among the three algorithms
图6 3种算法的轨迹更新速率比较Figure 6 Comparison of trajectory update rates among the three algorithms
采用算法(14)的优势在于,一方面能够使参考轨迹快速更新;另一方面更多地利用以前多次迭代过程中已获得的信息来构造新的控制输入并对参数优化,提高了算法的收敛速度和跟踪精度。 并且高阶算法能够削弱系统噪声对跟踪性能的影响,即使存在建模误差和输出误差等不确定性时,算法(14)仍然能够对系统(15)快速、高精度地跟踪控制。
针对一类离散线性时不变系统的点到点跟踪控制问题,本文提出一种快速参考轨迹更新的点到点二阶参数优化迭代学习控制算法。 将参数优化思想和点到点迭代学习控制结合,用于点到点跟踪控制中,来提高算法的跟踪性能。 在控制律的设计中采用时变的学习增益参数βk+1(t)来取代传统固定增益参数βk+1,使得参数的选取更加灵活自由,该算法同样适用于非正定系统。
与以往的研究成果相比,本文算法具有如下两个优点:第一,在进行参考轨迹更新过程中, 加入随迭代过程变化的指数变增益eγ(k),新的参考轨迹能够以更快的速度逼近系统输出; 第二,考虑到高阶算法具备更好的跟踪性能,利用以前多次迭代过程的输入、输出信息来构造新的控制输入,并对参数进行优化,从而实现快速、高效的跟踪控制。