2.793

2018影响因子

(CJCR)

  • 中文核心
  • EI
  • 中国科技核心
  • Scopus
  • CSCD
  • 英国科学文摘

留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

基于初次控制信号提取的迭代学习控制方法

徐建明 王耀东 孙明轩

徐建明, 王耀东, 孙明轩. 基于初次控制信号提取的迭代学习控制方法. 自动化学报, 2020, 46(2): 294-306. doi: 10.16383/j.aas.c170622
引用本文: 徐建明, 王耀东, 孙明轩. 基于初次控制信号提取的迭代学习控制方法. 自动化学报, 2020, 46(2): 294-306. doi: 10.16383/j.aas.c170622
XU Jian-Ming, WANG Yao-Dong, SUN Ming-Xuan. Iterative Learning Control Based on Extracting Initial Iterative Control Signals. ACTA AUTOMATICA SINICA, 2020, 46(2): 294-306. doi: 10.16383/j.aas.c170622
Citation: XU Jian-Ming, WANG Yao-Dong, SUN Ming-Xuan. Iterative Learning Control Based on Extracting Initial Iterative Control Signals. ACTA AUTOMATICA SINICA, 2020, 46(2): 294-306. doi: 10.16383/j.aas.c170622

基于初次控制信号提取的迭代学习控制方法


DOI: 10.16383/j.aas.c170622
详细信息
    作者简介:

    王耀东   2018年获得浙江工业大学信息工程学院硕士学位.主要研究方向为迭代学习控制. E-mail: wangyd@zjut.edu.cn

    孙明轩   浙江工业大学信息工程学院教授.主要研究方向为迭代学习控制.E-mail: mxsun@zjut.edu.cn

    通讯作者: 徐建明   浙江工业大学信息工程学院教授.主要研究方向为迭代学习控制, 运动控制.本文通信作者. E-mail: xujm@zjut.edu.cn
  • 本文责任编委 侯忠生
  • 基金项目:

    国家自然科学基金 61374103

    国家自然科学基金 61573320

Iterative Learning Control Based on Extracting Initial Iterative Control Signals

More Information
    Author Bio:

    WANG Yao-Dong   He received his master degree from the College of Information Engineering, Zhejiang Univer sity of Technology in 2018. His main research interest is iterative learning control

    SUN Ming-Xuan    Professor at the College of Information Engineering, Zhejiang University of Technology. His main research interest is iterative learning control

    Corresponding author: XU Jian-Ming    Professor at the College of Information Engineering, Zhejiang University of Technology. His research interest covers iterative learning control and motion control. Corresponding author of this paper
  • Recommended by Associate Editor HOU Zhong-Sheng
  • Fund Project:

    National Natural Science Foundation of China 61374103

    National Natural Science Foundation of China 61573320

  • 摘要: 在同一迭代学习控制(Iterative learning control, ILC)系统中, 选取一个合适的初次迭代控制信号相对于从零开始学习达到目标跟踪精度的迭代次数更少.本文针对线性系统研究从历次轨迹跟踪控制信息中通过期望轨迹匹配提取初次迭代控制信号的方法.首先提出了一种轨迹基元优化匹配算法, 在满足一定相似度的情况下, 通过轨迹分割、平移与旋转变换, 在轨迹基元库中寻找与当前期望轨迹叠合的轨迹基元组合轨迹; 进而, 依据线性叠加原理和轨迹叠合的平移矢量与旋转变换矩阵, 获取与期望轨迹叠合的轨迹基元控制信号; 在此基础上, 通过轨迹基元控制信号串联组合和时间尺度变换, 提取出当前期望轨迹的初次迭代控制信号.对于初次迭代控制信号在拼接处由边界条件差异引起的干扰, 给出了一种${H_\infty }$反馈辅助ILC方法.最后, 在$XYZ$三轴运动平台实现所提算法, 实验结果表明本文所提方法的有效性.
    本文责任编委 侯忠生
    Recommended by Associate Editor HOU Zhong-Sheng
  • 图  1  轨迹基元匹配的ILC系统原理示意图

    Fig.  1  ILC system schematic diagram of trajectory primitive matching

    图  2  优化匹配算法流程图

    Fig.  2  Structure flow chart of the optimal matching algorithm

    图  3  原始相似组合轨迹基元序列${l^{A}_{p1j}(t_{1j})}, $ ${l^{A}_{p2j}(t_{2j})}$

    Fig.  3  Original similar combination of primitive sequences ${l^{A}_{p1j}(t_{1j})}, $ ${l^{A}_{p2j}(t_{2j})}$

    图  4  重新分割后的相似组合轨迹基元序列$\bar l_{p1r}^{A}({t_{1r}}), $ $\bar l_{p2r}^{A}({t_{2r}})$

    Fig.  4  Re-segmented similar combinations of primitive sequences $\bar l_{p1r}^{A}({t_{1r}}), $ $\bar l_{p2r}^{A}({t_{2r}})$

    图  5  ${H_\infty }$反馈辅助迭代学习控制系统

    Fig.  5  ${H_\infty }$ feedback assisted iterative learning control system

    图  6  ${H_\infty }$控制问题

    Fig.  6  ${H_\infty }$ control problem

    图  7  $XYZ$三轴运动平台结构

    Fig.  7  $XYZ$ three axis motion platform structure

    图  8  三轴$XYZ$平台装置

    Fig.  8  $XYZ$ triaxial platform device

    图  9  轨迹库七条轨迹

    Fig.  9  Seven three-dimensional trajectories in the library

    图  10  分割成十段的期望轨迹及各段质心坐标系

    Fig.  10  The desired trajectory split into 10 segments and its centroid coordinates

    图  11  分割成九段的期望轨迹及各段质心坐标系

    Fig.  11  The desired trajectory split into 9 segments and its centroid coordinates

    图  12  十段匹配基元及质心坐标系

    Fig.  12  Ten-segment matching primitives and centroid coordinates

    图  13  九段匹配基元及质心坐标系

    Fig.  13  Nine-segment matching primitives and centroid coordinates

    图  14  $X$轴初次控制信号及第15次迭代控制信号

    Fig.  14  $X$ axis initial control signal and 15th iteration control signal

    图  15  $Y$轴初次控制信号及第15次迭代控制信号

    Fig.  15  $Y$ axis initial control signal and 15th iteration control signal

    图  16  $Z$轴初次控制信号及第15次迭代控制信号

    Fig.  16  $Z$ axis initial control signal and 15th iteration control signal

    图  17  $X$轴跟踪轨迹和误差

    Fig.  17  The $X$ axis tracking trajectory and error

    图  18  $Y$轴跟踪轨迹和误差

    Fig.  18  The $Y$ axis tracking trajectory and error

    图  19  $Z$轴跟踪轨迹和误差

    Fig.  19  The $Z$ axis tracking trajectory and error

    图  20  $X$、$Y$、$Z$轴采用提取的初次控制信号的均方根误差

    Fig.  20  The RMS of $X$, $Y$, $Z$ axis for ILC using the extracted initial control signal

    图  21  初次控制信号为零的$X$、$Y$、$Z$轴的均方根误差

    Fig.  21  The RMS of $X$, $Y$, $Z$ axis for ILC using the zero initial control signal

    图  22  采用提取的初次控制信号的三维轨迹跟踪效果

    Fig.  22  3-D trajectory tracking performances of ILC using the extracted initial control signal

    图  23  初次控制信号为零的三维轨迹跟踪效果

    Fig.  23  3-D trajectory tracking performances of ILC using the zero initial control signal

    表  1  各基元轨迹段与相应期望轨迹段之间的时间尺度

    Table  1  Each primitive corresponding to the desired track segment and a time scale between trajectories segments

    第$r$段 $\overline \alpha _1^{r}$ $\overline \alpha _2^{r}$ 第$r$段 $\overline \alpha _1^{r}$ $\overline \alpha _2^{r}$
    1 1.56 3.76 10 1.24 0.39
    2 1.32 3.76 11 1.24 0.36
    3 1.32 2.74 12 0.87 0.63
    4 1.79 2.74 13 0.87 1.32
    5 1.79 2.74 14 0.61 1.32
    6 0.99 1.65 15 0.61 1.13
    7 0.99 2.16 16 0.91 1.13
    8 0.98 2.16 17 0.91 0.89
    9 0.98 0.39 18 1.16 0.89
    下载: 导出CSV

    表  2  采用提取初次控制信号的跟踪误差

    Table  2  The tracking error of ILC using the extracted initial control signal

    跟踪指标 $X$轴(mm) $Y$轴(mm) $Z$轴(mm)
    最大跟踪误差 0.5211 0.4923 0.4991
    第一次迭代均方差 0.1300 0.1692 0.1154
    第八次迭代均方差 0.0481 0.0499 0.0233
    下载: 导出CSV

    表  3  初次控制信号为零的跟踪误差

    Table  3  The tracking error of ILC using the zero initial control signal

    跟踪指标 $X$轴(mm) $Y$轴(mm) $Z$轴(mm)
    最大跟踪误差 2.5134 2.0189 1.2174
    第一次迭代均方差 1.2260 1.3610 0.4649
    第八次迭代均方差 0.1221 0.0614 0.0308
    下载: 导出CSV
  • [1] Arimoto S, Kawamura S, Miyazaki F. Bettering operation of robots by learning. Journal of Robotic Systems, 1984, 1(2): 123-140 doi:  10.1002/rob.4620010203
    [2] Arif M, Ishihara T, Inooka H. Incorporation of experience in iterative learning controllers using locally weighted learning. Automatica, 2001, 37(6): 881-888 doi:  10.1016/S0005-1098(01)00030-9
    [3] Meng D Y, Jia Y M. Effects of initial input on stochastic discrete-time iterative learning control systems. In: Proceedings of the 29th Chinese Control Conference. Beijing, China: IEEE, 2010. 2193-2200
    [4] Freeman C T, Alsubaie M A, Cai Z L, Rogers E, Lewin P L. Initial input selection for iterative learning control. Journal of Dynamic Systems Measurement & Control, 2011, 133(5): 054504
    [5] Janssens P, Pipeleers G, Swevers J. Initialization of ILC based on a previously learned trajectory. In: Proceedings of the 2012 American Control Conference (ACC). Montreal, QC, Canada: IEEE, 2012. 610-614
    [6] Alajmi N, Alobaidly A, Alhajri M, Salamah S, Alsubaie M. An upper limit for iterative learning control initial input construction using singular values. Intelligent Control & Automation, 2017, 8(3): 154-163
    [7] Xu J X, Zhu T. Dual-scale direct learning control of trajectory tracking for a class of nonlinear uncertain systems. IEEE Transactions on Automatic Control, 1999, 44(10): 1884-1888 doi:  10.1109/9.793729
    [8] Xu J X. Direct learning of control efforts for trajectories with different time scales. IEEE Transactions on Automatic Control, 1998, 43(7): 1027-1030 doi:  10.1109/9.701122
    [9] Xu J X. Direct learning of control efforts for trajectories with different magnitude scales. Automatica, 1997, 33(12): 2191-2195 doi:  10.1016/S0005-1098(97)00140-4
    [10] Xu J X, Panda S K, Tong H L. Real-time Iterative Learning Control: Design and Applications. London: Springer, 2009. 7-28
    [11] Hoelzle D J, Alleyne A G, Johnson A J W. Basis task approach to iterative learning control with applications to micro-robotic deposition. IEEE Transactions on Control Systems Technology, 2011, 19(5): 1138-1148 doi:  10.1109/TCST.2010.2063030
    [12] 施法中.计算机辅助几何设计与非均匀有理B样条.第2版.北京:高等教育出版社, 2013. 273-279

    Shi Fa-Zhong. The CAGD & NURBS Book (Second edition). Beijing: Higher Education Press, 2013. 273-279
    [13] Kabsch W. A solution for the best rotation to relate two sets of vectors. Acta Crystallographica Section A, 1976, 32(5): 922-923 doi:  10.1107/S0567739476001873
    [14] Umeyama S. Least-squares estimation of transformation parameters between two point patterns. IEEE Transactions on Pattern Analysis & Machine Intelligence, 1991, 13(4): 376-380
  • [1] 马乐乐, 刘向杰. 变参考轨迹下的鲁棒迭代学习模型预测控制[J]. 自动化学报, 2019, 45(10): 1933-1945. doi: 10.16383/j.aas.c180681
    [2] 严求真, 孙明轩, 蔡建平. 迭代学习控制的参考信号初始修正方法[J]. 自动化学报, 2017, 43(8): 1470-1477. doi: 10.16383/j.aas.2017.c160292
    [3] 严求真, 孙明轩, 李鹤. 任意初值非线性不确定系统的迭代学习控制[J]. 自动化学报, 2016, 42(4): 545-555. doi: 10.16383/j.aas.2016.c150480
    [4] 孙明轩, 毕宏博, 周国良, 王惠峰. 反馈辅助PD型迭代学习控制:初值问题及修正策略[J]. 自动化学报, 2015, 41(1): 157-164. doi: 10.16383/j.aas.2015.c140133
    [5] 卜旭辉, 侯忠生, 余发山, 付子义. 基于迭代学习的农业车辆路径跟踪控制[J]. 自动化学报, 2014, 40(2): 368-372. doi: 10.3724/SP.J.1004.2014.00368
    [6] 孙明轩, 严求真. 迭代学习控制系统的误差跟踪设计方法[J]. 自动化学报, 2013, 39(3): 251-262. doi: 10.3724/SP.J.1004.2013.00251
    [7] 朱胜, 孙明轩, 何熊熊. 齿隙非线性输入系统的迭代学习控制[J]. 自动化学报, 2011, 37(8): 1014-1017. doi: 10.3724/SP.J.1004.2011.01014
    [8] 阮小娥, 连建帮, 吴慧卓. 具有反馈信息的迭代学习控制律在Lebesgue-p范数意义下的收敛性[J]. 自动化学报, 2011, 37(4): 513-516. doi: 10.3724/SP.J.1004.2011.00513
    [9] 朱胜, 孙明轩, 何熊熊. 严格反馈非线性时变系统的迭代学习控制[J]. 自动化学报, 2010, 36(3): 454-458. doi: 10.3724/SP.J.1004.2010.00454
    [10] 王洪斌, 王艳. 机械臂带角度修正的开闭环迭代学习轨迹跟踪控制[J]. 自动化学报, 2010, 36(12): 1758-1765. doi: 10.3724/SP.J.1004.2010.01758
    [11] 侯忠生, 晏静文. 带有迭代学习前馈的快速路无模型自适应入口匝道控制[J]. 自动化学报, 2009, 35(5): 588-595.
    [12] 池荣虎, 侯忠生. 非线性非仿射离散时间系统的两阶段最优迭代学习控制[J]. 自动化学报, 2007, 33(10): 1061-1065. doi: 10.1360/aas-007-1061
    [13] 朴凤贤, 张庆灵, 王哲峰. 一类广义系统的迭代学习控制[J]. 自动化学报, 2007, 33(6): 658-659. doi: 10.1360/aas-007-0658
    [14] 刘山, 吴铁军. 基于小波逼近的非线性系统鲁棒迭代学习控制[J]. 自动化学报, 2004, 30(2): 270-276.
    [15] 谢胜利, 田森平, 谢振东. 基于向量图分析的迭代学习控制新算法[J]. 自动化学报, 2004, 30(2): 161-168.
    [16] 阮小娥, 李换琴, 万百五. 滞后工业过程稳态优化进程中的局部对称双积分型迭代学习控制[J]. 自动化学报, 2003, 29(1): 125-129.
    [17] 阮小娥, 万百五, 高红霞. 具有滞后的饱和非线性工业控制系统的迭代学习控制[J]. 自动化学报, 2001, 27(2): 219-223.
    [18] 皮道映, 孙优贤. 非线性时变系统开闭环P型迭代学习控制的收敛性[J]. 自动化学报, 1999, 25(3): 351-354.
    [19] 孙明轩. 非线性离散时间系统迭代学习控制的稳定性分析[J]. 自动化学报, 1998, 24(6): 811-815.
  • 加载中
图(23) / 表(3)
计量
  • 文章访问数:  419
  • HTML全文浏览量:  182
  • PDF下载量:  75
  • 被引次数: 0
出版历程
  • 收稿日期:  2017-11-08
  • 录用日期:  2018-06-10
  • 刊出日期:  2020-02-20

基于初次控制信号提取的迭代学习控制方法

doi: 10.16383/j.aas.c170622
    基金项目:

    国家自然科学基金 61374103

    国家自然科学基金 61573320

    作者简介:

    王耀东   2018年获得浙江工业大学信息工程学院硕士学位.主要研究方向为迭代学习控制. E-mail: wangyd@zjut.edu.cn

    孙明轩   浙江工业大学信息工程学院教授.主要研究方向为迭代学习控制.E-mail: mxsun@zjut.edu.cn

    通讯作者: 徐建明   浙江工业大学信息工程学院教授.主要研究方向为迭代学习控制, 运动控制.本文通信作者. E-mail: xujm@zjut.edu.cn
  • 本文责任编委 侯忠生

摘要: 在同一迭代学习控制(Iterative learning control, ILC)系统中, 选取一个合适的初次迭代控制信号相对于从零开始学习达到目标跟踪精度的迭代次数更少.本文针对线性系统研究从历次轨迹跟踪控制信息中通过期望轨迹匹配提取初次迭代控制信号的方法.首先提出了一种轨迹基元优化匹配算法, 在满足一定相似度的情况下, 通过轨迹分割、平移与旋转变换, 在轨迹基元库中寻找与当前期望轨迹叠合的轨迹基元组合轨迹; 进而, 依据线性叠加原理和轨迹叠合的平移矢量与旋转变换矩阵, 获取与期望轨迹叠合的轨迹基元控制信号; 在此基础上, 通过轨迹基元控制信号串联组合和时间尺度变换, 提取出当前期望轨迹的初次迭代控制信号.对于初次迭代控制信号在拼接处由边界条件差异引起的干扰, 给出了一种${H_\infty }$反馈辅助ILC方法.最后, 在$XYZ$三轴运动平台实现所提算法, 实验结果表明本文所提方法的有效性.

本文责任编委 侯忠生

English Abstract

徐建明, 王耀东, 孙明轩. 基于初次控制信号提取的迭代学习控制方法. 自动化学报, 2020, 46(2): 294-306. doi: 10.16383/j.aas.c170622
引用本文: 徐建明, 王耀东, 孙明轩. 基于初次控制信号提取的迭代学习控制方法. 自动化学报, 2020, 46(2): 294-306. doi: 10.16383/j.aas.c170622
XU Jian-Ming, WANG Yao-Dong, SUN Ming-Xuan. Iterative Learning Control Based on Extracting Initial Iterative Control Signals. ACTA AUTOMATICA SINICA, 2020, 46(2): 294-306. doi: 10.16383/j.aas.c170622
Citation: XU Jian-Ming, WANG Yao-Dong, SUN Ming-Xuan. Iterative Learning Control Based on Extracting Initial Iterative Control Signals. ACTA AUTOMATICA SINICA, 2020, 46(2): 294-306. doi: 10.16383/j.aas.c170622
  • 在迭代学习控制(Iterative learning control, ILC)系统[1]中, 初次迭代控制信号常设为零或某一常量, 而且一旦期望轨迹(或者作业任务)发生变化, 通常需要重新经历一段学习过程; 这导致在一些高精度加工作业中应用ILC需要经历较多次数的学习训练过程, 而且初次或前若干次ILC可能达不到期望加工精度要求.实际上, 数控机床加工和工业机器人作业工程中, 存在一些重复作业任务, 但更多的是一些类同或相似的作业任务(例如数控铣床加工相同类型或相似形状的零件), 如果能从相似历史作业过程的控制数据中, 提炼(或挖掘)出新作业任务的初次迭代控制信号, 将有利于减少新作业任务的学习训练次数, 甚至初次ILC就能达到期望的高精度加工要求.

    目前, 针对初次迭代控制信号选取问题人们开展了一系列研究工作, Arif等[2]研究了通常被忽略的初始控制信号${u_0}$对初始迭代误差的影响, 基于以往作业经验信息和局部加权回归方法, 提出了一种估计当前作业初次迭代控制输入信号的ILC方法, 能有效降低初次迭代跟踪误差. Meng等[3]通过研究离散时间系统在随迭代而变化的随机扰动下的迭代学习控制问题, 表明跟踪误差的期望和方差的收敛在很大程度上取决于初始输入的选择.通过建立统计特征数值表达式, 讨论了初始输入对误差收敛的影响, 给出了ILC过程的渐近稳定性和单调收敛性的时域条件. Freeman等[4]提出了一种基于经验和模型, 从以往具有相同长度参考轨迹的作业控制信息中, 提取初始迭代控制信号的优化方法, 并应用于龙门架机器人的轨迹跟踪控制. Janssens等[5]针对线性时不变系统提出了一种基于以往相似参考轨迹和干扰模型的初次迭代控制量估计方法, 并应用于永磁同步直线电机的轨迹跟踪控制, 实验结果表明已学习过的轨迹与期望轨迹的相似程度决定初次迭代控制量的估计精度. Alajmi等[6]给出了一种的初次控制信号上界的奇异值性质, 构造的初次控制信号在满足上界条件下包含系统尽量多频率分量. Xu等[7-10]提出了一种直接学习控制方法, 通过寻找在幅值、时间尺度上与期望轨迹存在比例关系的轨迹, 将其控制信号进行幅值、时间尺度变换直接获得期望轨迹的控制信号. Hoelzle等[11]提出了一种基于基本任务的ILC方法, 将新作业任务表示为一系列基本任务的串联组合, 通过对基本任务进行迭代学习训练获取相应的控制信号, 再由基本任务的控制信号组合成新作业任务的初次迭代控制信号. Hoelzle等[11]指出由一系列经训练的基本任务串联组合而成的跟踪轨迹在基本任务交接处存在的跳变控制信号将导致跟踪性能下降, 采用多项式线性插值的无扰切换方式能减少跟踪性能损失, 实验结果表明经过无扰切换的基于任务ILC初次迭代跟踪一条未经训练轨迹超过采用传统ILC迭代11次的跟踪精度.

    这类研究从挖掘适合当前作业的初次控制信号出发, 试图提高初次迭代控制精度和减少达到目标跟踪精度要求的迭代学习次数, 尤其基于基本任务的ILC方法为解决作业任务变化情况下的ILC问题提供了一种新的思路, 但针对一个新任务如何确定由哪些基本任务组合而成, 作业任务相似性数学描述、分析和度量等问题没有涉及.另外, 提取出的经过多个轨迹基元控制信号串联组合而成的当前任务初次迭代控制信号, 在拼接处由于边界条件的差异, 使得其与期望控制信号偏差较大.为此, 本文采用非均匀有理B样条曲线(Non-uniform rational B-spline, NURBS)描述期望轨迹(或作业任务)和期望轨迹基元(或基本任务), 通过采用NURBS轨迹分割算法[12]、Kabsch算法[13]给出轨迹空间形状相似性定义和轨迹基元优化匹配算法; 在给定的相似度下, 通过该算法寻找经过平移向量和旋转矩阵变换后与期望轨迹分段叠合的相似轨迹基元, 并依次合成相似轨迹基元序列; 在此基础上, 依据当前期望轨迹与相似轨迹基元序列之间的平移向量、旋转矩阵及其时间尺度关系, 给出初次迭代控制信号变换方法, 由相似轨迹基元控制信号经变换得到期望轨迹分段控制信号, 并依次组合获取期望轨迹的初次迭代控制信号.针对分段控制信号的边界条件差异, 将初次控制信号与期望控制信号的偏差表示为系统干扰项, 给出一种${H_\infty }$反馈辅助的迭代学习控制方法.最后, 针对$XYZ$三轴平台, 通过与传统ILC方法进行仿真和实验比较, 验证对所提出的方法的有效性.

    • 在迭代学习控制中, 设迭代学习律为:

      $$ \begin{eqnarray} {u_k}(t) = {u_{k - 1}}(t) + L{e_k}(t), k = 0, 1, 2 \cdots \end{eqnarray} $$ (1)

      其中, $ t \in [0, T], $ $ T $是时域运行周期, $ u_k(t) $是控制量, $ e_k(t) $是输出误差量, $ L $是学习增益, $ k $是迭代次数.

      通过输出误差量$ {e_k}(t) $在迭代轴上修正$ {u_{k-1}}(t), $ $ u_k(t) $沿迭代轴的累加为

      $$ \begin{eqnarray} {u_k}(t) = {u_0}(t) + L\sum\limits_{i = 1}^{k} {{e_i}(t)} \end{eqnarray} $$ (2)

      其中, $ {u_0}(t) $为迭代学习初次控制信号, 如果学习律(1)满足收敛性条件, 则当$ k $趋于无穷时, $ \mathop {\lim }\nolimits_{k \to \infty } {u_k}(t) = {u_d}(t), $ $ u_d(t) $为迭代学习控制的期望控制信号, 输出误差量$ {e_k(t)} $趋近于零.进而由式(2)可知, 如果能得到一个近似于期望控制信号$ u_d(t) $的初次迭代控制信号$ u_0(t), $将显著减少学习过程的输出误差.

      在ILC中通常假设每个期望输出存在对应的理想控制输入, 通过迭代学习获得的控制信号能逼近于理想控制信号.因此, 在本文中我们假设:对于同一线性系统两段相似的期望迹段其对应的期望控制信号也是相近的.本文试图通过ILC建立一个基于NURBS模型的期望轨迹(或作业任务)及其相应控制信号数据库, 从轨迹数据库中搜寻与当前期望轨迹相似的轨迹基元组合轨迹序列, 进而利用数据库中轨迹基元控制信号, 通过控制信号变换直接获得当前期望轨迹的初次迭代控制信号, 结合$ {H_\infty } $反馈辅助实施ILC.基于轨迹基元匹配的ILC系统原理示意图如图 1所示.给定一条期望轨迹, 其在基坐标系(或$ B $坐标系)下描述为

      $$ \begin{eqnarray} {}^{B}{l_d}(t) = \left[{\begin{array}{*{20}{c}} {{x_d}(t)}\\ {{y_d}(t)}\\ {{z_d}(t)} \end{array}} \right] \end{eqnarray} $$ (3)

      图  1  轨迹基元匹配的ILC系统原理示意图

      Figure 1.  ILC system schematic diagram of trajectory primitive matching

      其中, $ {x_d}(t) $、$ {y_d}(t) $和$ {z_d}(t) $分别为笛卡尔空间$ X $、$ Y $和$ Z $轴的期望轨迹; 为简便起见, 下文中基坐标中的轨迹省略左上角$ B $.

      期望轨迹式(3)的期望控制信号与初次迭代控制信号表示如下:

      $$ \begin{eqnarray} {u_d}(t) = \left[ \begin{array}{l} {u_{{d_x}}}(t)\\ {u_{{d_y}}}(t)\\ {u_{{d_z}}}(t) \end{array} \right], {u_0}(t) = \left[ \begin{array}{l} {u_{{0_x}}}(t)\\ {u_{{0_y}}}(t)\\ {u_{{0_z}}}(t) \end{array} \right] \end{eqnarray} $$ (4)

      其中, $ {u_{d_x}}(t) $、$ {u_{d_y}}(t) $、$ {u_{d_z}}(t) $和$ {u_{0_x}}(t) $、$ {u_{0_y}}(t) $、$ {u_{0_z}}(t) $分别为$ {x_d}(t) $、$ {y_d}(t) $、$ {z_d}(t) $的期望控制信号和初次迭代控制信号.

    • 对于一条运行时间为$ T $的轨迹, 记为$ l(t), $为了建立统一的轨迹优化匹配算法, 将轨迹运行时间$ T $归一化$ v = t/T, $ $ v \in [0, 1], $ $ v $是归一化后的NURBS轨迹的节点矢量参数, 则轨迹可记为: $ l(v){|_{v \in [0, 1]}} $.

    • Kabsch算法是用来计算当两系列点的均方根偏差(RMSD)最小时的最优平移向量和旋转矩阵[14].针对两条NURBS轨迹, 我们设定一个统一的取点方式, 即按在节点矢量上均匀参数取点的方式, 按这种方式取点使得在NURBS曲率高的附近取的点密集, 在其曲率低的附近取的点稀疏, 这样取出的$ {l_d} $和$ {l_p} $两个序列概括了两条轨迹的基本特征, 即$ {l_d} $和$ {l_p} $两系列点能分别代表两条轨迹, 并且$ {l_d} $和$ {l_p} $序列含有相同个数的点.因此RMSD可以作为度量轨迹的相似度指标, 两条轨迹的相似性以及叠合的定义如下.

      定义1. $ {l_{p}(v)|_{v\in{[0, 1]}}} $通过旋转和平移变换(仿射变换)为$ {l^{A}_p(v)|_{v\in{[0, 1]}}} $后, $ {l_{d}(v)|_{v\in{[0, 1]}}} $与$ {l^{A}_{p}(v)|_{v\in{[0, 1]}}} $之间的均方根偏差小于$ {\varepsilon}, $则称在相似度$ {\varepsilon} $下轨迹$ {l_{p}(v)|_{v\in{[0, 1]}}} $和$ {l_{d}(v)|_{v\in{[0, 1]}}} $相似, 记$ {l_{d}(v)|_{v\in{[0, 1]}}}\stackrel{\varepsilon}{\sim}{l_{p}(v)|_{v\in{[0, 1]}}}, $并且轨迹$ {l^{A}_{p}(v)|_{v\in{[0, 1]}}} $和$ {l_{d}(v)|_{v\in{[0, 1]}}} $叠合, 记$ {l_{d}(v)|_{v\in{[0, 1]}}}\stackrel{\varepsilon}{\approx}{l^{A}_{p}(v)|_{v\in{[0, 1]}}} $.

    • 设轨迹库中含有$ N $条NURBS轨迹$ {l_i}(v){|_{v \in [0, 1]}} $ $ (1 \le i \le {N}), $ NURBS轨迹的分割参数$ v_s^{i} $和$ v_e^{i} $ $ (0 \le v_s^{i} \le v_e^{i} \le 1) $用来分割轨迹库中的第$ i $条轨迹, 轨迹$ {l_i}(v){|_{v \in [v_s^{i}, v_e^{i}]}} $作为临时轨迹匹配基元, $ {l_i}(v){|_{v = v_s^i}} $和$ {l_i}(v){|_{v = v_e^{i}}} $分别是轨迹$ {l_i}(v){|_{v \in [v_s^{i}, v_e^{i}]}} $的起止点.我们将一条期望NURBS轨迹表示为$ {l_d}(v){|_{v \in [0, 1]}}, $其第$ j $段待匹配轨迹为$ {l_d}^{j}(v){|_{v \in [0, \bar v]}}, $其中$ \bar v\left({0 < \bar v < 1} \right) $为分割参数.

      优化匹配的原则是满足一定的相似度$ {\varepsilon} $的情况下, 期望轨迹的分割段数最少.优化匹配过程中, 通过二分查找法来匹配期望轨迹, 期望轨迹匹配片段每一次长度的改变都会重新和轨迹库所有整条轨迹的长度和相似度进行判断, 试图寻找与该期望匹配片段相似的最长轨迹段, 期望轨迹与轨迹库中轨迹之间优化匹配算法流程如图 2所示, 其中, $ b $为期望轨迹可变搜索步长, $ \varepsilon $为设定的相似度, $ N $为轨迹库中轨迹数量, $ \eta $为设定两条轨迹的长度偏差阈值, $ \sigma $为期望轨迹最小搜索步长, $ d $表示轨迹库中轨迹的固定搜索步长, $ m $为匹配完成期望轨迹的分割段数, $ \bar v $为期望轨迹的分割参数. $ {T_d} $为期望轨迹运行时间, $ {T_{{d_j}}} $为第$ j $段期望轨迹$ {l_{{d_j}}}(v){|_{v \in [0, 1]}} $的运行时间, $ {T_j} $为匹配的轨迹基元$ {l_{{p_j}}}(v){|_{v \in [0, 1]}} $运行时间.将轨迹库中所有轨迹遍历匹配一次, 取出对应$ {l_{d_j}(v)|_{v\in{[0, 1]}}} $最长的匹配轨迹基元$ {l_{p_j}(v)|_{v\in{[0, 1]}}} $.

      图  2  优化匹配算法流程图

      Figure 2.  Structure flow chart of the optimal matching algorithm

      经过轨迹优化匹配后, 期望轨迹分割成$ m $段: $ {l_{d{}_1}}(v){|_{v \in [0, 1]}}, $ $ \cdots, $ $ {l_{d{}_m}}(v){|_{v \in [0, 1]}}, $同时从轨迹库轨迹中匹配到$ m $段轨迹基元: $ {l_{{p_1}}}(v){|_{v \in [0, 1]}}, $ $ \cdots, $ $ {l_{{p_m}}}(v){|_{v \in [0, 1]}}, $如式(5)所示, $ {}^{P_j}{l_{{p_j}}}(v){|_{v \in [0, 1]}} $ ($ j = 1, $ $ \cdots, $ $ m $)为匹配基元$ {l_{{p_j}}}(v){|_{v \in [0, 1]}} $在对应期望轨迹片段的质心坐标系$ \{ P_j\} $下的表示, 与其对应的期望轨迹基元段叠合如式(6)所示.

      $$ \begin{eqnarray} {}^{P_j}{l_{{p_j}}}(v){|_{v \in [0, 1]}} = {l_{{p_j}}}(v){|_{v \in [0, 1]}} + {}^{P_j}{P_{BORG}} \end{eqnarray} $$ (5)
      $$ \begin{align} l_{{p_j}}^{A}\left( v \right) = & {R_j}{}^{{P_j}}{l_{{p_j}}}\left( v \right)\left| {_{v \in \left[ {0, 1} \right]}} \right. + {}^{{P_j}}{P_{{D_j}ORG}} + \\ & {P_{{P_j}ORG}}\mathop \approx \limits^\varepsilon {{ }}{l_{{d_j}}}\left( v \right)\left| {_{v \in \left[ {0, 1} \right]}} \right. \end{align} $$ (6)

      其中, $ {}^{P_j}{P_{BORG}} $是匹配基元质心坐标$ \{ P_j\} $到$ \{ B\} $坐标系原点的平移向量, $ {}^{P_j}{P_{{D_j}ORG}} $由Kabsch算法得到, 表示匹配基元的质心坐标$ \{ P_j\} $到对应期望轨迹片段的质心坐标$ \{ D_j\} $的平移向量, 最优旋转矩阵为

      $$ {R_j} = \left[ {\begin{array}{*{20}{c}} {{R_{j11}}}&{{R_{j12}}}&{{R_{j13}}}\\ {{R_{j21}}}&{{R_{j22}}}&{{R_{j23}}}\\ {{R_{j31}}}&{{R_{j32}}}&{{R_{j33}}} \end{array}} \right] $$

      通过串联组合匹配基元$ {l_{{p_j}}^{A}}(v){|_{v \in [0, 1]}} $($ j $ = 1, $ \cdots, $ $ m $), 可得与期望轨迹叠合的组合轨迹, 如式(7)所示.

      $$ \begin{eqnarray} {l_d}(v){|_{v \in [0, 1]}}\mathop \approx \limits^\varepsilon \bigcup\limits_{j = 1}^{m} {l_{{p_j}}^{A}} (v){|_{v \in [0, 1]}} \end{eqnarray} $$ (7)

      其中, $ \bigcup _{j = 1}^{m} $为轨迹($ j = 1, 2, \cdots, m $)的串联组合符号. $ l_{{p_j}}^{A}(v){|_{v \in [0, 1]}} $和$ {l_{{d_j}}}(v){|_{v \in [0, 1]}} $分别通过$ {t_j} = {T_j}v $、$ {t_{{d_j}}} = {T_{{d_j}}}v $得到$ l_{{p_j}}^{A}({t_j}){|_{{t_j} \in [0, {T_j}]}} $和$ {l_{{d_j}}}({t_{{d_j}}}){|_{{t_{{d_j}}} \in [0, {T_{{d_j}}}]}} $.时间尺度为$ {{\alpha}_j} = {{{T_j}} \mathord{\left/ {\vphantom {{{T_j}} {{T_{{d_j}}}}}} \right. } {{T_{{d_j}}}}} $ ($ j = 1, $ $ \cdots, $ $ m $).

    • 图 1可知, 时域下的轨迹基元$ {l_{{p_j}}}(t_j) $及其控制信号已存储在数据库中, 假设被控制对象是线性系统, 本节将依据线性叠加原理和式(5) ~ (6), 获取与期望轨迹叠合的轨迹基元$ l_{{p_j}}^{A}(t_j) $的控制信号.

      $$ {}^{P_j}{l_{{p_j}}}(t_j) = \left[ {\begin{array}{*{20}{c}} {{}^{P_j}{x_j}(t_j)}\\ {{}^{P_j}{y_j}(t_j)}\\ {{}^{P_j}{z_j}(t_j)} \end{array}} \right] , {l_{{p_j}}}(t_j) = \left[ {\begin{array}{*{20}{c}} {{x_j}(t_j)}\\ {{y_j}(t_j)}\\ {{z_j}(t_j)} \end{array}} \right] $$
      $$ {}^{P_j}{P_{BORG}} = m_j^{x}\left[ {\begin{array}{*{20}{c}} {{I_x}}\\ 0\\ 0 \end{array}} \right] + m_j^{y}\left[ {\begin{array}{*{20}{c}} 0\\ {{I_y}}\\ 0 \end{array}} \right] + m_j^{z}\left[ {\begin{array}{*{20}{c}} 0\\ 0\\ {{I_z}} \end{array}} \right] $$

      其中, $ m_j^{x} $、$ m_j^{y} $、$ m_j^{z} $分别是$ {}^{P_j}{P_{BORG}} $在$ X $、$ Y $、$ Z $轴方向的坐标值, $ {I_x} $、$ {I_y} $、$ {I_z} $分别是$ X $、$ Y $、$ Z $轴方向上的单位平移基元, 经过ILC学习得到其对应的控制信号, 表示为$ {u_{{I_x}}} $、$ {u_{{I_y}}} $、$ {u_{{I_z}}} $.因此, 匹配基元质心坐标$ \{P_j\} $到$ \{ B\} $坐标系原点的平移向量$ {}^{P_j}{P_{BORG}} $对应的控制信号为$ {u^{{P_j} - B}}({t_j}) = {[m_j^{x}{u_{{I_x}}}(t_j), m_j^{ y}{u_{{I_y}}}(t_j), m_j^{z}{u_{{I_z}}}(t_j)]^{\rm T}}, $同理可得到$ {}^{P_j}{P_{{D_j}ORG}} $的控制信号$ {u^{{P_j} - {D_j}}}({t_j}), $那么$ {}^{P_j}{l_{{p_j}}}(t_j) $对应的在$ X $、$ Y $、$ Z $轴上的描述为:

      $$ \begin{eqnarray} {}^{P_j}{x_j}(t_j) = {x_j}(t_j) + m_j^{x}{I_x}(t_j) \end{eqnarray} $$ (8)
      $$ \begin{eqnarray} {}^{P_j}{y_j}(t_j) = {y_j}(t_j) + m_j^{y}{I_y}(t_j) \end{eqnarray} $$ (9)
      $$ \begin{eqnarray} {}^{P_j}{z_j}(t_j) = {z_j}(t_j) + m_j^{z}{I_z}(t_j) \end{eqnarray} $$ (10)

      其对应的控制信号满足下面的关系:

      $$ \begin{eqnarray} {}^{P_j}{u_{{x_j}}}(t_j) = {u_{{x_j}}}(t_j) + m_j^{x}{u_{{I_x}}}(t_j) \end{eqnarray} $$ (11)
      $$ \begin{eqnarray} {}^{P_j}{u_{{y_j}}}(t_j) = {u_{{y_j}}}(t_j) + m_j^{y}{u_{{I_y}}}(t_j) \end{eqnarray} $$ (12)
      $$ \begin{eqnarray} {}^{P_j}{u_{{z_j}}}(t_j) = {u_{{z_j}}}(t_j) + m_j^{z}{u_{{I_z}}}(t_j) \end{eqnarray} $$ (13)

      其中, $ {}^{P_j}{u_{{x_j}}}(t_j) $、$ {u_{{x_j}}}(t_j) $、$ {}^{P_j}{u_{{y_j}}}(t_j) $、$ {u_{{y_j}}}(t_j) $、 $ {}^{P_j}{u_{{z_j}}}(t_j) $、$ {u_{{z_j}}}(t_j) $分别是$ {}^{P_j}{x_j}(t_j) $、$ {x_j}(t_j) $、 $ {}^{P_j}{y_j}(t_j) $、$ {y_j}(t_j) $、$ {}^{P_j}{z_j}(t_j) $、$ {z_j}(t_j) $的控制信号.由式(11)、(12)、(13)可得到$ {}^{P_j}{l_{{p_j}}}(v){|_{v \in [0, 1]}} $对应的控制信号为:

      $$ \begin{align} {}^{P_j}{u_j}(t_j){|_{t_j \in [0, {T_j}]}} = {[{}^{P_j}{u_{{x_j}}}(t_j), {}^{P_j}{u_{{y_j}}}(t_j), {}^{P_j}{u_{{z_j}}}(t_j)]^{\rm T}} \end{align} $$ (14)

      进而, 可得$ l_{{p_j}}^{A}(t_j){|_{t_j \in [0, {T_j}]}} ( j = 1, 2, \cdots, m )$的控制信号为:

      $$ \begin{align} {u}_j^{A}(t_j){|_{t_j \in [0, {T_j}]}} = & {L^{ - 1}}(R_j^{u}){}^{P_j}{u_j}(t_j){|_{t \in [0, {T_j}]}}+ \\ & {u^{{P_j} - {D_j}}}({t_j}) + {u^{B - {P_j}}}({t_j}) \end{align} $$ (15)

      其中, $ ^{{P_j}}{u_j}({t_j}){|_{{t_j} \in [0,{T_j}]}}$是轨迹基元的控制信号, ${u^{B - {P_j}}}({t_j})$为${P_{{P_j}ORG}}$的控制信号, $L^{-1}(\cdot)$是拉氏反变换, 设定$P_x(s)$、$P_y(s)$、$P_z(s)$分别是$X$、$Y$、$Z$轴的传递函数, $R_j^u$的各轴旋转耦合关系为

      $$ R_j^{u} = \left[ {\begin{array}{*{20}{c}} {{R_{j11}}}&{{R_{j12}}\frac{{{P_y}(s)}}{{{P_x}(s)}}}&{{R_{j13}}\frac{{{P_z}(s)}}{{{P_x}(s)}}}\\ {{R_{j21}}\frac{{{P_x}(s)}}{{{P_y}(s)}}}&{{R_{j22}}}&{{R_{j23}}\frac{{{P_z}(s)}}{{{P_y}(s)}}}\\ {{R_{j31}}\frac{{{P_x}(s)}}{{{P_z}(s)}}}&{{R_{j32}}\frac{{{P_y}(s)}}{{{P_z}(s)}}}&{{R_{j33}}} \end{array}} \right] $$
    • 由式(15)的控制信号组合而成的相似组合轨迹$\bigcup\nolimits_{j = 1}^{m} {l_{{p_j}}^{A}} (t_j){|_{t_j \in [0, T_j]}}$的控制信号表示为:

      $$ \begin{equation} u_{0}^{A}(t)|_{{t}\in[0, T_d]}: = \bigcup\limits_{j = 1}^{m} u_{j}^{A}(t_j)|_{t_j\in[0, T_j]} \end{equation} $$ (16)

      由于期望轨迹和优化匹配得到的组合轨迹之间存在时间尺度差异, 因此, 本节将期望轨迹${l_d}({t_d}){|_{{t_d} \in [0,{T_d}]}}$经过优化匹配得到两条轨迹基元数量不同的组合轨迹, 通过两条组合轨迹的时间尺度拟合来获取不同时间尺度的初次迭代控制信号.设第一次期望轨迹被分割为$ m_1 $段, 记为其对应的分割点为$ g_1^{j} $ $ (j=0, 1, \cdots, m_1) $; 第二次期望轨迹被分割为$ m_2 $段, 记为$ l_{d2{j}}(t_{d2{j}})|_{{t_{d2{j}}}\in} $$ _{[0, T_{d2{j}}]}, $ $ (\sum\nolimits^{m_2}_{j=1}T_{d2{j}}=T_d), $对应的分割点为$ g_2^{j} $ $ (j=0, 1, \cdots, m_2) $.设两次分割的期望轨迹的始末端点值分别记为$ g_{d1}^0 $、$ g_{d1}^{m_1} $、$ g_{d2}^0 $、且$ g_{d1}^0=g_{d2}^0, $ $ g_{d1}^{m_1}=g_{d2}^{m_2}, $但$ g_{d1}^{j} $和$ g_{d2}^{j} $不完全相同.如图 3所示, 与期望轨迹叠合的两条相似组合轨迹基元序列分别为$ {l^{A}_{p1j}(t_{1j})|_{t_{{1j}}\in[0, T_{p1j}]}} $(), $ {l^{A}_{p2j}(t_{2j})|_{t_{{2j}}\in[0, T_{p2j}]}} $ ($ \sum\nolimits^{m_2}_{j=1}{T_{p2j}=T_2} $, ).

      $$ \begin{eqnarray} \left\{ \begin{array}{l} {l_d}({t_d}){|_{{t_d} \in [0, {T_d}]}}\mathop \approx \limits^\varepsilon \mathop \cup \limits_{j = 1}^{m_1} l_{p1j}^A({t_{1j}}){|_{{t_{1j}} \in [0, {T_{p1j}}]}}\\ {l_d}({t_d}){|_{{t_d} \in [0, {T_d}]}}\mathop \approx \limits^\varepsilon \mathop \cup \limits_{j = 1}^{m_2} l_{p2j}^A({t_{2j}}){|_{{t_{2j}} \in [0, {T_{p2j}}]}} \end{array} \right. \end{eqnarray} $$ (17)

      图  3  原始相似组合轨迹基元序列${l^{A}_{p1j}(t_{1j})}, $ ${l^{A}_{p2j}(t_{2j})}$

      Figure 3.  Original similar combination of primitive sequences ${l^{A}_{p1j}(t_{1j})}, $ ${l^{A}_{p2j}(t_{2j})}$

      两条组合轨迹与期望轨迹在空间叠合, 但是时间尺度不一样, 其对应的时间变量为$ {t_{d1{j}}} $、$ {t_{d2{j}}}, $它们与期望轨迹之间存在的时间尺度关系分别为$ {t_{{1j}}} = {{\alpha}^{j}_1}{t_{d1{j}}} $、$ {t_{{2j}}} = {{\alpha}^{ j}_2}{t_{d2{j}}} $.

      合并两组相似轨迹组合的分割点, 得到同一分割点集如式(18),

      $$ \begin{align} G = &\left\{ {g_{d1}^0, \cdots , g_{d1}^{j}, \cdots , g_{d1}^{m_1}} \right\} \cup \\ &{\rm{ }}\left\{ {g_{d2}^0, \cdots , g_{d2}^{j}, \cdots , g_{d2}^{m_2}} \right\} = \\ &{\rm{ }}\left\{ {g_d^0, \cdots , g_d^{r}, \cdots , g_d^{h}} \right\} \end{align} $$ (18)

      在分割点集$ G $相应的位置上对两条相似组合轨迹重新分割得到新分段轨迹基元序列分别为$ \bar l_{p1r}^{A}({t_{1r}}){|_{{t_{1r}} \in [0, {\bar T_{p1r}}]}} $($ \sum\nolimits_{r = 1}^{{h}} {{\bar T_{p1r}} = {T_1}}, $ $ r $ = 1, 2, $ \cdots, $ $ h $)、$ \bar l_{p2r}^{A}({t_{2r}}){|_{{t_{2r}} \in [0, {\bar T_{p2r}}]}} $($ \sum\nolimits_{r = 1}^{{h}} {{\bar T_{p2r}} = {T_2}}, $ $ r $ = 1, 2, $ \cdots, $ $ h $), 如图 4所示, 其中$ \max ({m_1} + 1, {m_2} + 1) \le h \le {m_1} + {m_2} + 2, $ $ g_d^0 $、$ g_d^{h} $分别是轨迹的始末端点.

      图  4  重新分割后的相似组合轨迹基元序列$\bar l_{p1r}^{A}({t_{1r}}), $ $\bar l_{p2r}^{A}({t_{2r}})$

      Figure 4.  Re-segmented similar combinations of primitive sequences $\bar l_{p1r}^{A}({t_{1r}}), $ $\bar l_{p2r}^{A}({t_{2r}})$

      取$ G $中的任意一点$ {g^{r}_d} {(0 < r < h)}, $ 1)当$ g_{d1}^{j} < g_d^{r} < g_{d_1}^{j + 1} $时, 在区间[$ g_{d}^{r-1}, g_d^r $]和[$ g_d^{r}, g_{d1}^{r + 1} $]上, $ \bar l_{p1r}^{A}({t_{1r}}){|_{{t_{1r}} \in [0, {\bar T_{p1r}}]}} $对应的时间尺度关系分别为: $ \bar {\alpha}_1^{r} = {\alpha}_1^{j} $和$ \bar {\alpha}_1^{r + 1} = {\alpha}_1^{j} $; 2)当$ g_d^{r} = g_{d1}^{j} $时, 在区间[$ g_{d}^{r-1}, g_d^{r} $]和[$ g_d^{r}, g_{d}^{r+ 1} $]上, $ \bar l_{p1r}^{A}({t_{1r}}){|_{{t_{1r}} \in [0, {\bar T_{p1r}}]}} $对应的时间尺度关系分别为$ \bar {\alpha}_1^{r} = {\alpha}_1^{j} $和$ \bar {\alpha}_1^{r+1} = {\alpha}_1^{j+1} $.

      同理, 可得到$ \bar l_{p2r}^{A}({t_{2r}}){|_{{t_{2r}} \in [0, {\bar T_{p2r}}]}} $的分割点之间的时间尺度对应关系$ \bar {\alpha}_2^{r} $.

      采用文献[7]的方法, 可得当前期望轨迹的第$ r $段轨迹基元控制信号为

      $$ \begin{align} {u_{0r}} = {\rm{ }}\left[ {\begin{array}{*{20}{c}} I&I \end{array}} \right]{\left( {C_l^{\rm T}{C_l}} \right)^{ - 1}}C_l^{\rm T}{\left[ {\begin{array}{*{20}{c}} {u{{_{{0_1}r}^{A}}^{\rm T}}}&{u{{_{{0_2}r}^{A}}^{\rm T}}} \end{array}} \right]^{\rm T}} \end{align} $$ (19)

      其中,

      $$ \begin{eqnarray} {C_l} = \left[ {\begin{array}{*{20}{c}} {{{(\bar {\alpha}_1^{r})}^{ - 1}}I}&I\\ {{{(\bar {\alpha}_2^{r})}^{ - 1}}I}&I \end{array}} \right] \end{eqnarray} $$ (20)

      $ u_{{0_1}r} $、$ u_{{0_2}r} $分别为$ \bar l_{p1r}^{A}({t_{1r}}) $和$ \bar l_{p2r}^{A}({t_{2r}}) $的控制信号.则当前期望轨迹的初次迭代控制信号可表示为:

      $$ \begin{eqnarray} {u_{0}} : = \bigcup _{r = 1}^{h}{u_{0r}}, r = 1, 2, \cdots , h \end{eqnarray} $$ (21)
    • 针对提取出的初次控制信号与期望控制信号的偏差可表示为对系统产生的干扰$ d(s), $如式(22)所示.

      $$ \begin{eqnarray} d(s) = G(s)({u_{{0}}(s)} - {u_{d}(s)}) \end{eqnarray} $$ (22)

      本节采用$ {H_\infty } $反馈辅助ILC方法, 其控制系统结构如图 5所示, 其中, $ G\left(s \right) $表示被控系统传递函数, $ K(s) $表示$ {H_\infty } $反馈控制器传递函数, $ L(s) $表示迭代学习前馈增益. $ {q_{k+1}}(s) $表示输入信号, $ {y_{k+1}}(s) $表示输出信号, $ {e_k}(s) $表示误差信号, $ {u_k}(s) $表示控制信号, 下标$ k $表示迭代次数; 存储器1保存了提取的初次控制信号, $ k $ = 0, 即初次迭代时, 输出存储的初次控制信号$ u_0(s), $同时用当前次得到的控制信号更新存储器1中已有的控制信号.同理, 存储器2保存了上一次系统输入误差.

      图  5  ${H_\infty }$反馈辅助迭代学习控制系统

      Figure 5.  ${H_\infty }$ feedback assisted iterative learning control system

      图 5所示控制系统结构的基础上, 在频率域上通过选择三个合适的权值函数$ {W_S}(s) $、$ {W_R}(s) $、$ {W_T}(s) $使得系统鲁棒稳定问题可转换为如图 6所示$ {H_\infty } $控制问题问题. $ d(s) $至$ y(s) $、$ q(s) $至$ u(s) $、$ q(s) $至$ y(s) $的闭环传递函数分别为:灵敏度函数$ S(s) = {(I + G(s)K(s))^{ - 1}} $、$ R(s) = K(s){(I + G(s)K(s))^{ - 1}} $、补灵敏度函数$ T(s) = G(s)K(s){(I + G(s)K(s))^{ - 1}} $.

      图  6  ${H_\infty }$控制问题

      Figure 6.  ${H_\infty }$ control problem

      $ {H_\infty } $反馈控制问题就是设计正则的有理函数控制器$ K\left(s \right), $能够衰减外部干扰, 使图 5所示的控制系统闭环稳定, 使$ \lambda < 1, $并最小化$ \lambda $.

      $$ \begin{eqnarray} \lambda = {\left\| \begin{array}{l} {W_S}(s)S(s)\\ {W_R}(s)R(s)\\ {W_T}(s)T(s) \end{array} \right\|_\infty } \end{eqnarray} $$ (23)

      其中, $ {W_S}(s)S(s) $代表系统对干扰抑制性能的要求, 通过调节权函数$ {W_S}(s) $间接调节灵敏度函数$ S(s) $; $ {W_T}(s)T(s) $和$ {W_R}(s)R(s) $代表对系统鲁棒稳定性的要求, 同样通过权函数$ {W_R}(s) $和$ {W_T}(s) $来调节.

      图 5所示的$ {H_\infty } $反馈辅助ILC结构, 可知ILC学习律为

      $$ \begin{eqnarray} {u_{k + 1}(s)} = {u_k(s)} + L(s){e_k(s)} + K(s){e_{k + 1}(s)} \end{eqnarray} $$ (24)

      在Xu等[10]对该类ILC结构的收敛性已进行了详细分析, 简要推导如下.

      $$ \begin{align} {e_{k + 1}(s)} = & {q_{k + 1}(s)} - {u_{k + 1}(s)}G(s) = \\ & {q_{k + 1}(s)} - ({u_k(s)} + L(s){e_k(s)} + \\ & K(s){e_{k + 1}(s)})G(s) = \\ & {e_k(s)}S(s)(1 - L(s)G(s)) \end{align} $$ (25)
      $$ \begin{eqnarray} \frac{{e_{k + 1}(s)}}{{e_k(s)}} = S(s)(1 - L(s)G(s)) \end{eqnarray} $$ (26)

      因此系统收敛性条件为

      $$ \begin{eqnarray} ||S(s)(I - L(s)G(s))|{|_\infty } < 1 \end{eqnarray} $$ (27)
    • 我们在$ XYZ $三轴运动平台对本文提取的初次控制信号的有效性进行了实验验证.实验系统结构如图 7所示, 通过在PC上CoDeSys中编写控制算法程序, 得到各轴控制信号(即速度给定信号), 通过EtherCAT通信将速度信号传给速度模式驱动的驱动器, 实验装置实物如图 8所示.

      图  7  $XYZ$三轴运动平台结构

      Figure 7.  $XYZ$ three axis motion platform structure

      图  8  三轴$XYZ$平台装置

      Figure 8.  $XYZ$ triaxial platform device

      $ XYZ $运动控制平台各轴的位移和电机输入速度的线性动态特性可近似为如下所示的二阶标准模型.

      $$ \begin{eqnarray} \begin{cases} {G_x}(s) = \dfrac{5}{{0.020{s^2} + s}}\\ {G_y}(s) = \dfrac{5}{{0.016{s^2} + s}}\\ {G_{z1}}(s) = \dfrac{5}{{0.022{s^2} + s}}\\ {G_{z2}}(s) = \dfrac{5}{{0.014{s^2} + s}} \end{cases} \end{eqnarray} $$ (28)

      其中$ G_{z1} $、$ G_{z2} $分别是$ Z $轴电机的上行和下行模型.

    • 本文各权值函数选取如下

      $$ \begin{eqnarray} \begin{cases} {W_S}(s) = \dfrac{{200}}{{100s + 1}}\\ {W_R}(s) = 0.2\\ {W_T}(s) = 0.002{s^2} + 0.2s + 1 \end{cases} \end{eqnarray} $$ (29)

      运用MATLAB中的鲁棒工具箱优化计算, 得到稳定的控制器如下

      $$ \begin{align} \begin{cases} {K_x}(s) = \dfrac{{55.17{s^2} + 2759s + 4.288 \times {{10}^{ - 11}}}}{{{s^3} + 122.6{s^2} + 3096s + 30.95}}\\ {K_y}(s) = \dfrac{{3.087{s^2} + 192.9s + 2.292 \times {{10}^{ - 12}}}}{{{s^3} + 99.11{s^2} + 648.1s + 6.471}}\\ {K_{z1}}(s) = \dfrac{{6.985{s^2} + 317.5s + 1.648 \times {{10}^{ - 12}}}}{{{s^3} + 96.83{s^2} + 748.1s + 7.471}}\\ {K_{z2}}(s) = \dfrac{{3.177{s^2} + 226.9s - 4.251 \times {{10}^{ - 13}}}}{{{s^3} + 100.4{s^2} + 685s + 6.84}} \end{cases}\\ \end{align} $$ (30)

      选取满足收敛性条件式(27)的ILC学习增益为

      $$ \begin{eqnarray} L(s) = \frac{{0.01{s^2} + s}}{3} \end{eqnarray} $$ (31)

      从实际角度出发, 本文采用统一的NURBS曲线来构建一个轨迹库, 轨迹库中七条轨迹如图 9 (a) ~ 9 (g)中的实线所示, 对应的控制多边形由虚线表示.期望轨迹被分割成10段和9段, 其质心坐标系分别如图 10图 11所示, "$ \cdot $"是轨迹的期望轨迹的分割点.图 10图 11中期望轨迹段对应的匹配基元和基元质心坐标系分别如图 12 (a) ~ 12 (j)图 13 (a)~(i)所示.因此, 两个与期望轨迹叠合的基元组合轨迹可以表示为:

      $$ \begin{eqnarray} \left\{ \begin{array}{l} {l_{{d_1}}}(v){|_{v \in [0, 1]}}\mathop \approx \limits^\varepsilon \bigcup\limits_{j = 1}^{10} {l_{1j}^{A}(v){|_{v \in [0, 1]}}} \\ {l_{{d_2}}}(v){|_{v \in [0, 1]}}\mathop \approx \limits^\varepsilon \bigcup\limits_{j = 1}^9 {l_{2j}^{A}(v){|_{v \in [0, 1]}}} \end{array} \right. \end{eqnarray} $$ (32)

      图  9  轨迹库七条轨迹

      Figure 9.  Seven three-dimensional trajectories in the library

      图  10  分割成十段的期望轨迹及各段质心坐标系

      Figure 10.  The desired trajectory split into 10 segments and its centroid coordinates

      图  11  分割成九段的期望轨迹及各段质心坐标系

      Figure 11.  The desired trajectory split into 9 segments and its centroid coordinates

      图  12  十段匹配基元及质心坐标系

      Figure 12.  Ten-segment matching primitives and centroid coordinates

      图  13  九段匹配基元及质心坐标系

      Figure 13.  Nine-segment matching primitives and centroid coordinates

      组合轨迹基元序列$ \bar l_{p1r}^{A}({t_{1r}}) $和$ \bar l_{p2r}^{A}({t_{2r}}) $与相应的期望轨迹段之间的时间尺度如表 1所示.

      表 1  各基元轨迹段与相应期望轨迹段之间的时间尺度

      Table 1.  Each primitive corresponding to the desired track segment and a time scale between trajectories segments

      第$r$段 $\overline \alpha _1^{r}$ $\overline \alpha _2^{r}$ 第$r$段 $\overline \alpha _1^{r}$ $\overline \alpha _2^{r}$
      1 1.56 3.76 10 1.24 0.39
      2 1.32 3.76 11 1.24 0.36
      3 1.32 2.74 12 0.87 0.63
      4 1.79 2.74 13 0.87 1.32
      5 1.79 2.74 14 0.61 1.32
      6 0.99 1.65 15 0.61 1.13
      7 0.99 2.16 16 0.91 1.13
      8 0.98 2.16 17 0.91 0.89
      9 0.98 0.39 18 1.16 0.89

      为了更清晰地了解提取的控制信号与期望控制信号的对比, 将期望轨迹从零开始学习迭代15次得到一个良好的跟踪效果, 将第15次的控制信号看作为期望控制信号, 做出第15次迭代控制信号与本文提取的初次控制信号对比图, 如图 141516所示, 从图中可以看出提取的初次控制信号和第15次迭代控制信号的相似度较高.

      图  14  $X$轴初次控制信号及第15次迭代控制信号

      Figure 14.  $X$ axis initial control signal and 15th iteration control signal

      图  15  $Y$轴初次控制信号及第15次迭代控制信号

      Figure 15.  $Y$ axis initial control signal and 15th iteration control signal

      图  16  $Z$轴初次控制信号及第15次迭代控制信号

      Figure 16.  $Z$ axis initial control signal and 15th iteration control signal

    • 为了验证本文提取出的初次控制信号的有效性, 将上述提取的初次控制信号和初次控制信号为零的ILC控制方法进行实验对比, $ X $、$ Y $、$ Z $轴第一次迭代实验跟踪结果对比分别如图 17 (a)17 (b), 18 (a)18 (b), 19 (a)19 (b)所示, 纵坐标单位为厘米(cm), 横坐标单位为秒(s).

      图  17  $X$轴跟踪轨迹和误差

      Figure 17.  The $X$ axis tracking trajectory and error

      图  18  $Y$轴跟踪轨迹和误差

      Figure 18.  The $Y$ axis tracking trajectory and error

      图  19  $Z$轴跟踪轨迹和误差

      Figure 19.  The $Z$ axis tracking trajectory and error

      分别以本文提取的初次控制信号和初次控制信号为零作为系统控制输入, 将八次迭代跟踪结果的均方根误差作对比, 结果分别如图 2021所示.迭代一次和八次的误差数据如表 2表 3所示.从图 2021表 23可以发现以提取的控制信号作为初次控制输入的系统跟踪误差明显低于初次控制信号为零的跟踪误差.

      表 2  采用提取初次控制信号的跟踪误差

      Table 2.  The tracking error of ILC using the extracted initial control signal

      跟踪指标 $X$轴(mm) $Y$轴(mm) $Z$轴(mm)
      最大跟踪误差 0.5211 0.4923 0.4991
      第一次迭代均方差 0.1300 0.1692 0.1154
      第八次迭代均方差 0.0481 0.0499 0.0233

      表 3  初次控制信号为零的跟踪误差

      Table 3.  The tracking error of ILC using the zero initial control signal

      跟踪指标 $X$轴(mm) $Y$轴(mm) $Z$轴(mm)
      最大跟踪误差 2.5134 2.0189 1.2174
      第一次迭代均方差 1.2260 1.3610 0.4649
      第八次迭代均方差 0.1221 0.0614 0.0308

      图  20  $X$、$Y$、$Z$轴采用提取的初次控制信号的均方根误差

      Figure 20.  The RMS of $X$, $Y$, $Z$ axis for ILC using the extracted initial control signal

      图  21  初次控制信号为零的$X$、$Y$、$Z$轴的均方根误差

      Figure 21.  The RMS of $X$, $Y$, $Z$ axis for ILC using the zero initial control signal

      将本文提取的初次控制信号和初次控制信号为零的ILC方法得到的前六次实验数据导入MATLAB环境中, 画出$ X $、$ Y $、$ Z $轴的三维轨迹跟踪分别如图 2223所示, 实线轨迹表示期望轨迹, 点划线轨迹表示跟踪的轨迹.由图可以看出, 相对于零初始输入的第一次跟踪效果, 本文提取出的控制信号在第一次跟踪效果优势明显.

      图  22  采用提取的初次控制信号的三维轨迹跟踪效果

      Figure 22.  3-D trajectory tracking performances of ILC using the extracted initial control signal

      图  23  初次控制信号为零的三维轨迹跟踪效果

      Figure 23.  3-D trajectory tracking performances of ILC using the zero initial control signal

    • 针对线性系统, 本文提出了一种基于轨迹基元匹配的初次控制信号提取方法.首先通过轨迹基元的优化匹配组合方法匹配出多条与期望轨迹片段叠合的轨迹基元; 接着依据线性叠加原理和轨迹叠合的平移矢量与旋转变换矩阵, 获取与期望轨迹叠合的轨迹基元控制信号, 在此基础上, 通过轨迹基元控制信号串联组合和时间尺度变换, 得到整条期望轨迹的初次控制信号.针对分段控制信号的边界条件差异, 给出了一种$ {H_\infty } $反馈辅助迭代学习控制方法; 最后通过仿真实验和三轴$ XYZ $平台实验表明, 本文提出的轨迹基元优化匹配、初次控制信号提取和$ {H_\infty } $反馈辅助迭代控制方法能有效地减少达到目标跟踪精度要求的迭代学习次数.

参考文献 (14)

目录

    /

    返回文章
    返回