本发明涉及工业自动化生产技术领域,特别涉及一种基于神经网络自适应迭代学习对任务空间中不确定机械臂的控制方法。
背景技术:
“工业4.0”战略自提出以来对工业自动化生产领域产生了深远的影响,加之国家政策的激励和高新电子技术的快速发展,机械臂已成为生产线上的核心角色并被广泛应用到批量化、规模化的加工制造和重复性流水作业之中,常见的有搬运、抓取操作、边界切割、实物焊接和喷涂等。由此可见,对机械臂的轨迹控制方法研究是非常重要的。
机械臂是一个典型的高度非线性、强耦合的动力学系统,这使我们很难获得机械臂的精确动力学模型和内部参数。传统的控制方法,比如pid控制、阻抗控制、前馈控制等,对系统的参数和数学模型依赖性很高,系统的不确定性往往会使得控制模型难以得到精确信号信息,从而无法达到预期效果。与此同时,智能控制方法被广泛应用于研究高度非线性、强耦合的系统,比如模糊控制、神经网络、迭代学习控制、自适应控制以及滑模控制等等,这些控制方法的优势在于不依赖与被控对象精确动力学方程的数学描述,只从仿生思维的角度来处理实际的操作与任务。近些年来,迭代学习控制方法被广泛应用在机械臂轨迹跟踪的研究中,其核心思想是利用被控对象的动态过程与期望的理想轨迹之间的误差来调整修正,并沿迭代方向逐渐完成被控对象趋近至最终完全符合期望轨迹。随着迭代学习理论的深入发展和不断拓展,出现了自适应迭代学习控制、鲁棒迭代学习控制、最优迭代学习控制等新型迭代学习控制方法。
自适应迭代学习控制方法是自适应控制理论与迭代学习控制的结合,在迭代学习过程可以对不确定的参数进行辨识和修正并且可以自动适应外界的变化,这大大提高了系统的稳定性和鲁棒性,但是它也存在一些不足,比如在处理非周期性的误差和外部干扰以及在估计未知的系统参数时,花费大量时间计算和调整,降低了学习速度和误差收敛精度。将神经网络与自适应迭代学习控制相结合,不仅可以处理非周期性的误差干扰,还具有逼近高度非线性系统和未知参数的优良性能,大大提高了学习速度和误差收敛精度。
技术实现要素:
本发明针对现有技术的缺陷,提供了一种任务空间中不确定机械臂的控制方法,解决了现有技术中存在的缺陷。
为了实现以上发明目的,本发明采取的技术方案如下:
一种任务空间中不确定机械臂的控制方法,包括以下步骤:
a.机械臂动力学建模;
根据机械臂正向运动学和逆运动学关系,建立机械臂系统在关节空间下的动力学数学模型,引入一个雅可比矩阵将关节空间下的动力学模型映射到任务空间下,考虑到建模过程中存在微小误差和一些不确定项,将机械臂系统在任务空间下的动力学模型进行重新变形整理,得到一个新的机械臂动力学模型。
b.根据重新得到的机械臂动力学模型,设计神经网络自适应迭代学习控制器的控制方案,对任务空间下机械臂末端施加的控制力进行设计,对神经网络自适应迭代学习控制控制器进行设计,采用rbf神经网络对所有非周期性误差和外部干扰进行逼近和补偿,对神经网络的更新率进行设计。
进一步地,步骤a中引入一个雅可比矩阵将关节空间下的动力学模型映射到任务空间下公式为:
其中关节空间到任务空间的映射关系如下:
式(1)中
所示新的机械臂动力学模型如下:
式(3)中δmx(q),
进一步地,步骤b中对任务空间下机械臂末端施加的控制力设计如下:
把方程式(4)代入方程式(3)中可得
其中
进一步地,步骤b中神经网络自适应迭代学习控制控制器设计如下:
式(6)中
进一步地,步骤b中采用rbf神经网络对所有非周期性误差和外部干扰进行逼近和补偿公式如下:
式(8)中
rbf神经网络算法表示如下:
式(9)中
进一步地,步骤b中神经网络的更新率设计如下:
式(10)中为了提高系统的学习速度和分析系统的稳定性,引入一个ek(t),其构成是由误差和误差的导数之和,并还用于神经网络更新率的设计,ψ是一个正定的对角增益矩阵。
与现有技术相比,本发明的优点在于:
1.解决了机械臂末端轨迹快速跟踪的问题。
2.在自适应迭代学习控制的基础之上加入了神经网络,提高了机械臂系统的学习速度和误差收敛精度。
3.在误差精度方面可以控制在10-3数量级。
附图说明
图1为本发明实施例机械臂控制的simulink仿真框图;
图2为本发明实施例迭代学习算法的模型图;
图3为本发明实施例平面二关节机械臂示意图;
图4为本发明实施例20次迭代过后机械臂末端位置x方向的轨迹跟踪图;
图5为本发明实施例20次迭代过后机械臂末端位置y方向的轨迹跟踪图;
图6为本发明实施例机械臂关节1的模型误差与神经网络补偿图;
图7为本发明实施例机械臂关节2的模型误差与神经网络补偿图;
图8为本发明实施例20次迭代过程中机械臂两种控制方案的x方向的误差收敛对比图;
图9为本发明实施例20次迭代过程中机械臂两种控制方案的y方向的误差收敛对比图;
图10为本发明实施例20次迭代过后机械臂末端在任务空间的轨迹图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下根据附图并列举实施例,对本发明做进一步详细说明。
一种任务空间中不确定机械臂的控制方法,包括以下步骤:
a.机械臂动力学建模部分:
根据机械臂正向运动学和逆运动学关系,建立机械臂系统在关节空间下的动力学数学模型,引入一个雅可比矩阵将关节空间下的动力学模型映射到任务空间下。
其中关节空间到任务空间的映射关系如下:
式(1)中
考虑到建模过程中存在微小误差和一些不确定项,将机械臂系统在任务空间下的动力学模型进行重新变形整理,得到一个新的动力学模型。
式(3)中δmx(q),
b.控制器设计部分:
根据重新得到的机械臂动力学模型,设计自适应迭代学习控制器和神经网络自适应迭代学习控制器两种控制方案,其中自适应迭代学习控制器作为对比方案。
对任务空间下机械臂末端施加的控制力设计如下:
把方程式(4)代入方程式(3)中可得
其中
自适应迭代学习控制器设计如下:
式(6)中
神经网络自适应迭代学习控制控制器设计如下:
式(8)中
采用rbf神经网络对所有非周期性误差和外部干扰进行逼近和补偿
式(9)中
rbf神经网络算法表示如下:
式(10)中
神经网络的更新率设计如下:
式(11)中为了提高系统的学习速度和分析系统的稳定性,引入一个ek(t),其构成是由误差和误差的导数之和,并还用于神经网络更新率的设计,ψ是一个正定的对角增益矩阵。
c.机械臂simulink仿真模型搭建:
如图1所示,在matlab2016a/simulink中建立机械臂控制仿真模型,包括:控制输入模块1、数据汇总一3、自适应算法模块4、数据汇总二6、迭代学习模块7、控制器模块8、被控对象机械臂模块9、数据分流二10、数据分流一11、控制力矩信号12、误差及其补偿信号13、跟踪速度信号14、实际轨迹信号15和计时器17,其中控制输入模块1里面设定为机械臂模块9的期望轨迹2,包含机械臂末端的期望轨迹和期望移动速度输入信号;自适应算法模块4、迭代学习模块7用于自适应参数迭代学习得到自适应项5;每一次迭代完成之后,都会得到一组轨迹跟踪结果和关节控制力矩;控制器模块8为设定被控对象机械臂系统的控制算法包含式(6)、式(7)、式(8)、式(9)和式(11);被控对象机械臂模块9定义机械臂动力学的数学模型包含式(2)和式(3);数据汇总一3和数据汇总二6将多种输入信号和反馈信号汇总组成一个单一的矢量输出;数据分流一11将被控对象机械臂9的输出矢量信号分流为跟踪速度信号14和实际轨迹信号15并反馈到数据汇总一3;数据分流二10将控制器模块8的输出矢量信号分流为控制力矩信号12和误差及其补偿信号13;计时器17用于实时显示系统运行时间18。如图2所示,机械臂的迭代学习模型框图如下:输入变量19为
d.机械臂控制算法仿真参数设置部分:
机械臂控制算法仿真参数设置包括对两个控制器方案的参数设置,本次仿真在平面二关节机械臂(如图3)进行实验,整个仿真平台在装有windows10操作系统和酷睿i5处理器的电脑上运行,其动力模型参数设置如下:
其中
其中m(i)由式m=n+pll给出,有
更多细节仿真参数信息设置如下,m1=2.125kg,m2=1.025kg,g=9.81m/s2,m3=1.05kg,m4=2.15kg,m5=1.05kg,l1=1m,l2=1m;定义非周期性的不确定项和静摩擦力与外部干扰总和为
在任务空间中的理想跟踪轨迹设定如下:
定义x方向的初始位置为x(0)=1rad,y方向的初始位置为y(0)=0.705rad;x方向的初始跟踪速度为
e.仿真结果分析部分:
通过仿真结果分析,在迭代20次后,分别得到了机械臂末端位置的轨迹跟踪情况,模型误差和神经网络补偿情况,两种控制器方案的误差收敛情况以及机械臂末端位置情况。具体包括20次迭代过后的机械臂末端位置x方向和y方向的轨迹跟踪图,关节1和关节2的模型误差与神经网络补偿图,两种控制器方案在20次迭代过后x方向和y方向的误差收敛图,20次迭代过后机械臂末端的轨迹图。20次迭代过后的机械臂末端位置x方向和y方向的轨迹跟踪如图4和图5所示,可以看出机械臂末端的实际轨迹与期望轨迹完美跟踪,关节1的模型误差和神经网络补偿如图6所示,可以看出在时间t=3s之前出现剧烈抖动说明误差变化较大,随着神经网络的补偿作用,在时间t=4s过后神经网络补偿曲线逐渐与模型误差曲线跟踪说明神经网络起到了良好的误差补偿效果,关节2的模型误差和神经网络补偿如图7所示,在t=2s之前误差变化较大,但在t=3s左右神经网络补偿曲线基本与误差曲线重合并控制很小的范围内波动,20次迭代过程中两种控制器方案的对比效果如图8和图9所示,图8和图9的数据是每次迭代过程中x方向和y方向的误差绝对值的最大值,蓝色曲线代表的是自适应迭代学控制方案,红色曲线代表的是神经网络自适应迭代学习控制方案,虽然两种控制方案都能将误差精度控制在10-3数量级,但明显看出神经网络自适应迭代学控制方案的学习速度更快以及误差收敛精度更高。图10表示20次迭代过后机械臂末端在任务空间下的轨迹图。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的实施方法,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。