第一部分 机器人手臂的自适应神经网络控制 机器人是一具有高度非线性和不确定性的复杂系统,近年来各研究单位对机器人智能控制的研究非常热门,并已取得相当丰富的成果。 机器人轨迹跟踪控制系统的主要目的是通过给定各关节的驱动力矩,使得机器人的位置、速度等状态变量跟踪给定的理想轨迹。与一般的机械系统一样,当机器人的结构及其机械参数确定后,其动态特性将由动力学方程即数学模型来描述。因此,可采用经典控制理论的设计方法——基于数学模型的方法设计机器人控制器。但是在实际工程中,由于机器人模型的不确定性,使得研究工作者很难得到机器人精确的数学模型。 采用自适应神经网络,可实现对机器人动力学方程中未知部分的精确逼近,从而实现无需建模的控制。下面将讨论如何利用自适应神经网络和李雅普诺夫(Lyapunov)方法设计机器人手臂跟踪控制的问题。
1、控制对象描述: 选二关节机器人力臂系统(图1),其动力学模型为:
图1 二关节机器人力臂系统物理模型 ()()()dMqqVq,qqGqFqττ (1)
其中
12322322322
2coscos()cospppqppqppqp
Mq,3223122312sin()sin(,)sin0pqqpqqqpqqVqq 自适应神经网络控制课程论文 2 41512512
coscos()()cos()pgqpgqqpgqq
Gq,0.02sgnFqq,0.2sin0.2sinTdtt
τ
。
其中,q为关节转动角度向量,Mq为2乘2维正定惯性矩阵,,Vqq为2乘2维向心哥氏力矩,Gq为2维惯性矩阵,Fq为2维摩擦力矩阵,dτ为未知有界的外加干扰,τ为各个关节运动的转矩向量,即控制输入。 已知机器人动力学系统具有如下动力学特性: 特性1:惯量矩阵M(q)是对称正定阵且有界;
特性2:矩阵,Vqq有界; 特性3:2,MqCqq是一个斜对称矩阵,即对任意向量ξ,有 2,0TξMqCqqξ
(2)
特性4:未知外加干扰dτ满足ddbτ,db为正常数。 我们取212345,,,,2.9,0.76,0.87,3.04,0.87pppppkgmp,两个关节的位置指令分别为10.1sindqt,20.1cosdqt,即设计控制器驱动两关节电机使对应的手臂段角度分别跟踪这两个位置指令。 2、传统控制器的设计及分析: 定义跟踪误差为: dttteqq (3)
定义误差函数为: ree (4)
其中0T。
则
dqrqe 自适应神经网络控制课程论文 3
dd
dddddd
qMrMqqeMqeMMqeVqGFττMqeVrVqeGFττVrτfτ (5)
其中,f为包含机器人模型信息的非线性函数。f表示为 ddfxMqeVqeGF
(6)
在实际工程中,Mq,,Vqq,Gq和Fq往往很难得到精确的结果,导致模型不确定项fx为未知。 为了设计控制器,需要对不确定项fx进行逼近,假设ˆf为f的逼近值。设计控制律为 ˆvτfKr
(7)
将控制律式(7)代入式(5),得
0ˆvdvdv
MrVrfKrfτKVrfτKVrς (8)
其中f为针对f的逼近误差,ˆfff,0dςfτ。 如果定义Lyapunov函数 12TLrMr
(9)
则 011222TTTTTvLrMrrMrrKrrMVrrς
0TTvLrςrKr 这说明在vK固定条件下,控制系统的稳定依赖于0ς,即ˆf对f的逼近精度及干扰dτ的大小。 自适应神经网络控制课程论文 4 3、基于RBF神经网络逼近的机器人手臂控制 1).基于RBF网络的逼近算法 已经证明,采用RBF网络可以实现对任意连续函数的精确逼近。因此,可以采用RBF网络实现对不确定项f的逼近。 在RBF网络结构中,取Tnxxx,....,21X为网络的输入向量。设RBF网络的径向基向量Tmhh,,1H,其中hj为高斯基函数:
2j2
-hexp(-),1,2,2jjjmbXC. (10)
其中网络第j个结点的中心矢量为jnjjcc,,1C,ni,,2,1。
假设存在权值W,逼近函数fx的理想RBF网络输出为: fWhxεx
(11)
其中W网络的权向量,12,nhhhh,εx为逼近误差,Nεxεx。 考虑式(6),针对fx中包含的信息,逼近函数fx的RBF网络输入取: TTTTTdddXeeqqq (12)
2).基于RBF网络的控制器和自适应律设计 定义RBF神经网络的实际输出为:
ˆˆ
TfxWhx (13)
取 ˆWWW (14)
控制律和自适应律设计为:
ˆT
vτWhxKrv (15)
ˆTWFhxr (16)
其中F为对称正定阵,0TFF。 将式(11)、式(13)和式(15)代入式(5),得
1TvmdvmMrKVrWφxετvKVrς (17) 自适应神经网络控制课程论文 5 其中1TdςWhxετv,v为用于克服神经网络逼近误差ε和干扰dτ的鲁
棒项。 将鲁棒项v设计为: Ndbsgnvr (18)
其中sgn为符号函数。
10sgn0010rrrr (19)
3). 稳定性及收敛性分析 针对n个关节的神经网络控制,定义Lyapunov函数为:
11122TTLtrrMrWFW (20)
其中tr为矩阵的迹,其定义为:设A是n阶方阵,则称A的主对角元素的和为A的迹,记作trA。则 112TTTLtrrMrrMrWFW
将式(17)代入上式,得 1122TTTTTvmdLtrrKrrMVrWFWhrrετv (21)
将式(2)和式(16)代入上式,得 TT
vdLrKrrετv
下面分两种情况进行讨论。 (1)不考虑鲁棒项,取0v,则
2minTTvdvNdLKbrKrrετrr
如果要使0L,则需要满足: min/NdvbKr (22)
如果满足0L,由于0L,且M(q)有界,则由L表达式可知,tr、W
和ˆW都有界。由tr有界可知,跟踪误差te及其导数te都有界,从而q和q
有界,且跟踪误差te及其导数te的收敛值随神经网络逼近误差上界N和干扰上界db的增大而增大,并可通过增大vK的值达到任意小。 (2)考虑鲁棒项,v取式(18),则 0TTTTdddNdbrετvrετrvrετr 自适应神经网络控制课程论文 6 0TvLrKr 由于0L,且M(q)有界,则tr、W和ˆW为有界。由于2TvLrKr,又由于式(17)的右边信号都有界,则r有界,L有界,则根据Barbalat引理,L趋近于零,即tr趋近于零,从而可得出te和te趋近于零。
4、SIMULINK仿真验证 仿真图如下:
由于系统比较复杂,直接采用模块搭建比较麻烦,所以本设计中采用S_function动态函数来实现前面推导的算法公式,实现了三个动态函数:input.m产生输入、ctrl.m为控制器实现、plant.m表示控制对象: 其中控制器实现函数ctrl.m中RBF神经网络的中心矢量及近似标准差分别设置为:
这两个值的取值对神经网络控制的作用很重要,如果参数取值不合适,将使高斯基函数无法得到有效的映射,从而导致RBF网络无效。