基于在线学习的柔性关节机器人自适应神经轨迹跟踪控制

2022-09-19 02:00周荣亚徐艳华
机械设计与制造工程 2022年8期
关键词:动力学轨迹控制器

周荣亚,刘 刚,徐艳华

(1.陕西铁路工程职业技术学院铁道装备制造学院,陕西 渭南 714000)(2.西安理工大学材料科学与工程学院,陕西 西安 710048)

目前已有诸多学者进行了大量关于机器人轨迹跟踪控制的研究,并取得了一定的成果[1-2]。其中部分研究以机器人动力学表示为线性参数形式为基础,开发了自适应控制器以实现渐近跟踪。然而对于柔性关节机器人轨迹控制而言,仍存在动力学模型精确度较低难以提高控制精度的缺陷,当前业界主要解决方式是采用简化的降阶模型来进行前馈控制,并通过离线辨识得到模型的精确参数,这种控制方式也叫做迭代学习控制(iterative learning control,ILC)[3-4]。目前,ILC已被应用于跟踪特定的轨迹,算法自适应性强且鲁棒性高,但也有其自身的缺点,即算法学习后的结果无法反馈至新的轨迹中。随着神经网络以及人工智能技术的不断发展,基于神经网络(neural network,NN)的轨迹跟踪技术在海量训练数据与新设计的结构下,对新轨迹具有较高的泛化能力,因此神经网络结合迭代学习控制的算法模型逐渐应用至机器人轨迹控制中。

现有研究提出了多种控制未知动力学机器人轨迹的方案,并给出了神经网络[5]的应用范例。文献[6]对递归神经网络(recursive neural network,RNN)进行改进,使用两个前馈控制器来补偿Baxter机器人的柔性臂轨迹控制精度。其中一个控制器基于单向RNN算法设计,另一个控制器则基于双向RNN设计,两者构成的非因果动态逆控制系统具有良好的跟踪效果,但这种方法仍有一定的局限性。由RNN特性可知,该方法模型需要大量训练数据才能提高控制精度,且该方法缺乏严格的轨迹误差收敛性与稳定性分析。除了上述缺点外,NNs(neural networks)所进行的是离线训练,不能实现在线更新。同样文献[7]也训练了多层前馈神经网络,文献中所提方法和文献[6]中构建的非因果动态逆控制方法类似,均通过大规模的ILC轨迹实验来获取训练数据,经过训练的神经网络在补偿未观测轨道方面表现良好,但也存在与文献[6]类似的缺陷。

在神经网络模型设计中,模型参数的选择对算法整体精度有着举足轻重的作用,有学者对径向基函数(radial basis function,RBF)[8-9]进行改进,原因在于该函数对模型的线性精度有较大影响。同样地,文献[10]也设计了一种基于改进RBF神经网络的自适应控制模型,通过补偿Baxter机器人的未知动力学及载荷误差来提升系统控制精度。该模型通过对关节扭矩力的精确控制来改善轨迹跟踪误差。对于大部分工业机器人,由于用户权限较低,仅能修改部分关节位置或速度设定点,导致单个RBF神经网络无法对机器人轨迹控制的所有要素进行训练,如惯性矩阵的正定性和无源性等。文献[11]提出了一种基于两层前向感知器神经网络的关节力矩级自适应控制器,来保证机器人的跟踪性能。但随着神经网络层数的增加,自适应律的推导将更加复杂,工程应用价值较低。除了使用RBF函数优化神经网络外,其他函数[12-16]也可对神经网络进行优化,从而对网络性能有一定的提升。

1 问题描述

柔性关节机器人机械手的轨迹跟踪控制数学模型如下:

(1)

1)电机位置θm理想化,比如忽略实际环境存在的其他误差。

2)所有关节的刚度K相同,可由式(2)计算:

K=kpI

分阶段地展示学生的进步在教学环节中尤为重要。当聋生掌握了一种新知识的时候就可以到教师机上利用广播展示给全班同学看;当聋生学会一级简码时,就可以全班同学比一比,看谁能最快并正确输入一级简码;当聋生能完整的用五笔输入一篇文章时,就可以邀请班主任等其他任课教师,还可以邀请家长来欣赏他们的学习成果,并督促他们更上一层楼。

(2)

式中:kp为关节刚度常数,kp>0;I为单位刚度。

机器人动力学方程可改写为:

(3)

式中:H(θ)=G(θ)+kpθ。将动力学方程表示为线性参数形式,则有:

(4)

由于本文仿真模型柔性关节臂为单摆模型,因此首先用单摆进行仿真测试,然后将仿真结果反馈到Baxter等多连杆机器人中,并与自适应控制器和基线比例微分(PD)控制器(增益为K1和K2)的性能进行比较得到差值。

(5)

2 神经自适应控制器

本文基于神经网络设计了自适应控制器,进而完成θm的最优化求解。

2.1 控制器设计

对于控制器,采用Lyapunov的候选函数进行稳定性分析。该函数表达式为:

(6)

(7)

通过取V的时间导数并与式(3)、式(4)联立可得到:

(8)

(9)

式中:Ks和k均为换元得到的变量系数。Kss项中Ks>0,保证了跟踪误差的收敛性;附加的高增益反馈项ksgn(s)具有较强的鲁棒性,故可有效降低网络建模误差及噪声。经推导可得:

(10)

式中:‖s‖l表示向量l的范数。通过选择自适应率:

(11)

有:

(12)

2.2 神经网络结构设计

神经网络结构的设计分为3个部分,分别为网络架构设计、训练样本收集以及网络初始化训练。

1)网络架构设计。网络由多个不同层的有向图组成,网络架构如图1所示,神经网络连接点见表1。神经网络由输入层、卷积层、全连接层以及输出层构成。对Y变量进行训练需要满足输出层a具有和Y变量相同的维度,由于模型全连接层输出为一维数据,为了满足网络输出需要,本网络使用卷积结构作为输出层,输出结果为二维向量。

表1 神经网络连接点

图1 神经网络架构

2.3 回归器更新的在线反向传播

机械臂显著的缺点是抗干扰能力差,当系统受到外部干扰时,输出层权重的纯自适应可能需较长时间才能使跟踪误差收敛。因此将所收集的、系统动态变化后的输入/输出数据用于回归量Y的在线学习。之后以较高和较低的速率更新输出层及回归器权重。图2给出了回归因子在线实时调节的示意。

图2 回归因子的在线调节示意图

2.4 系统模型结构

总控制架构的示意图如图3所示。由图可以看出,本文模型由神经自适应控制器以及在线学习反馈模块组成。神经自适应控制器将人为规划的轨迹作为输入数据,控制器中的神经网络模型对轨迹数据进行训练,进而控制机器人运动。在线学习反馈模块对当前机器人的输出轨迹进行误差分析得到回归因子,同时将回归因子送入控制器中,与设定轨迹一起训练,以保证控制器的输出精度。

图3 总控制架构

3 系统实验

为验证本模型的可行性,首先在Simulink中模拟单摆的内耗模型,即将黏滞摩擦与库仑摩擦转变为斯特里贝克摩擦。由于系统动力学建立在式(1)的基础上,所以K是假设的标量,自然也适用于SISO系统。此外为了使研究的系统更具普适性,本文以MIMO系统展开测试。仿真软件使用MATLAB R2017a中的Simulink工具箱,数据集数量为6 000条,其中4 800条用作训练集数据,1 200条用作验证集数据。

本文采用对比实验的方式,对在线学习模块的作用进行评估,实验结果如图4所示。

图4 单摆正弦轨迹的绝对跟踪误差比较

由图4可知,两个系统的跟踪误差在0~5 s内收敛,这意味着训练的网络能够精确地逼近单摆动力学模型。

5~15 s,由于摩擦模型的改变,两个系统的跟踪误差均会增加。

在15 s时打开自适应控制器,两个系统的跟踪误差就会减少。但对于本算法而言,通过在线反向传播完成回归更新,可使其跟踪误差进一步减小。由此表明,本模型中在线学习模块可减小一定的跟踪误差。

之后对基线PD控制器的跟踪性能进行比较。

控制器的参数需要初始化,其中K1=0.2,K2=0.1,k=5,P=0.05,Λ=diag(3,6,3,20,10,10,10),Ks=diag(0.1,0.01,0.01,0.1,0.01,0.01,0.01)。

图5显示了上述两种控制器跟踪非可视正弦关节位置轨迹的节点1、3和5的跟踪结果。图5中的黑色虚线(箭头1)为理论值,黑色实线(箭头2)为本文算法仿真结果,灰色实线为不加反馈学习模块的仿真结果。从图5可以直观看出,两种控制器仿真结果比较接近。为了定量地对误差值进行分析,表2列出了所有7个关节的l2及l∞范数所对应的跟踪误差。从表2中可看出,自适应神经控制器的性能优于PD控制器,所有7个关节控制精度平均提高了约60%。

图5 正弦关节位置轨迹与两种控制器的性能比较

表2 使用两种控制器跟踪正弦关节轨迹的l2与l∞跟踪误差

4 结束语

本文提出了一种新型神经自适应控制器,在未知动力学环境中,实现柔性关节机器人自适应轨迹跟踪。该神经网络由1个回归器及1个输出层组成,通过样本训练完成神经网络初始化,成功模拟了机器人动力学的线性参数形式。但与输出层权值的自适应相比,回归网络在线更新的速度较慢。仿真实验结果表明,本文所提算法可有效提高系统的轨迹跟踪性能,且通过回归在线学习,可使自适应控制器的跟踪性能得到进一步提升。

猜你喜欢
动力学轨迹控制器
《空气动力学学报》征稿简则
小天体环的轨道动力学
解析几何中的轨迹方程的常用求法
具有Markov切换的非线性随机SIQS传染病模型的动力学行为
工商业IC卡控制器改造为物联网控制器实践
轨迹
轨迹
PLC可编程控制器相关外置的选择计算研究
基于在线轨迹迭代的自适应再入制导
利用相对运动巧解动力学问题お