第一部分 机器人手臂的自适应神经网络控制机器人是一具有高度非线性和不确定性的复杂系统,近年来各研究单位对机器人智能控制的研究非常热门,并已取得相当丰富的成果。
机器人轨迹跟踪控制系统的主要目的是通过给定各关节的驱动力矩,使得机器人的位置、速度等状态变量跟踪给定的理想轨迹。
与一般的机械系统一样,当机器人的结构及其机械参数确定后,其动态特性将由动力学方程即数学模型来描述。
因此,可采用经典控制理论的设计方法——基于数学模型的方法设计机器人控制器。
但是在实际工程中,由于机器人模型的不确定性,使得研究工作者很难得到机器人精确的数学模型。
采用自适应神经网络,可实现对机器人动力学方程中未知部分的精确逼近,从而实现无需建模的控制。
下面将讨论如何利用自适应神经网络和李雅普诺夫(Lyapunov )方法设计机器人手臂跟踪控制的问题。
1、控制对象描述:选二关节机器人力臂系统(图1),其动力学模型为:图1 二关节机器人力臂系统物理模型()()()()d ++++=M q q V q,q q G q F q ττ (1)其中123223223222cos cos ()cos p p p q p p q p p q p +++⎡⎤=⎢⎥+⎣⎦M q ,3223122312sin ()sin (,)sin 0p q q p q q q p q q --+⎡⎤=⎢⎥⎣⎦V q q41512512cos cos()()cos()p g q p g q q p g q q ++⎡⎤=⎢⎥+⎣⎦G q ,()()0.02sgn =F q q ,()()0.2sin 0.2sin Td t t =⎡⎤⎣⎦τ。
其中,q 为关节转动角度向量,()M q为2乘2维正定惯性矩阵,(),V q q 为2乘2维向心哥氏力矩,()G q 为2维惯性矩阵,()F q 为2维摩擦力矩阵,dτ为未知有界的外加干扰,τ为各个关节运动的转矩向量,即控制输入。
已知机器人动力学系统具有如下动力学特性: 特性1:惯量矩阵M(q)是对称正定阵且有界; 特性2:矩阵(),V q q 有界;特性3:()()2,-M q C q q 是一个斜对称矩阵,即对任意向量ξ,有()()()2,0T-=ξM q C q q ξ (2)特性4:未知外加干扰dτ满足d db ≤τ,db 为正常数。
我们取[][]212345,,,, 2.9,0.76,0.87,3.04,0.87p p p p p kgm ==p ,两个关节的位置指令分别为()10.1sin dq t =,()20.1cos d q t =,即设计控制器驱动两关节电机使对应的手臂段角度分别跟踪这两个位置指令。
2、传统控制器的设计及分析:定义跟踪误差为:()()()d t t t =-e q q (3)定义误差函数为:=+∧r e e (4)其中0>∧=∧T 。
则d =-++∧q r q e()()()()()d d d d d d d dq =-+∧=+∧-=+∧++++-=+∧-++∧+++-=--++Mr M q q e M q e M M q e Vq G F ττM q e Vr V q e G F ττVr τf τ (5)其中,f 为包含机器人模型信息的非线性函数。
f 表示为()()()d d =+∧++∧++f x M q e V q e G F (6)在实际工程中,()M q ,(),V q q ,()G q 和()F q 往往很难得到精确的结果,导致模型不确定项()f x 为未知。
为了设计控制器,需要对不确定项()f x 进行逼近,假设ˆf为f 的逼近值。
设计控制律为ˆv =+τf K r (7) 将控制律式(7)代入式(5),得()()0ˆv dv d v =---++=-+++=-++Mr Vr f K r f τK V r f τK V r ς (8)其中f 为针对f 的逼近误差,ˆ=-f f f,0d =+ςf τ。
如果定义Lyapunov 函数12T L =r Mr(9)则()011222T T T T T v L =+=-+-+r Mr r Mr r K r r M V r r ς 0T T v L =-r ςr K r这说明在vK 固定条件下,控制系统的稳定依赖于ς,即ˆf对f 的逼近精度及干扰dτ的大小。
3、基于RBF 神经网络逼近的机器人手臂控制1).基于RBF 网络的逼近算法已经证明,采用RBF 网络可以实现对任意连续函数的精确逼近。
因此,可以采用RBF 网络实现对不确定项f 的逼近。
在RBF 网络结构中,取[]T n x x x ,....,21=X 为网络的输入向量。
设RBF 网络的径向基向量[]T m h h ,,1 =H ,其中h j 为高斯基函数:2j 2-h exp(-),1,2,2j jj m b==X C . (10)其中网络第j 个结点的中心矢量为[]jn j j c c ,,1 =C ,n i ,,2,1 =。
假设存在权值W ,逼近函数()f x 的理想RBF 网络输出为:()()=+f Wh x εx (11)其中W 网络的权向量,[]12,n h h h =h ,()εx 为逼近误差,()()N <εx εx 。
考虑式(6),针对()f x 中包含的信息,逼近函数()f x 的RBF 网络输入取:TTT T T d dd ⎡⎤=⎣⎦X e e q q q (12)2).基于RBF 网络的控制器和自适应律设计 定义RBF 神经网络的实际输出为:()()ˆˆT =fx W h x (13) 取ˆ=-W W W(14) 控制律和自适应律设计为:()ˆT v=+-τW h x K r v (15) ()ˆT =WFh x r (16) 其中F 为对称正定阵,0T =>F F 。
将式(11)、式(13)和式(15)代入式(5),得()()()()1T v m d v m =-+++++=-++Mr K V r W φx ετv K V r ς (17)其中()()1T d =+++ςW h x ετv ,v 为用于克服神经网络逼近误差ε和干扰d τ的鲁棒项。
将鲁棒项v 设计为:()()N d b sgn ε=-+v r (18)其中sgn 为符号函数。
()10sgn 0010>⎧⎪==⎨⎪-<⎩r r r r (19) 3). 稳定性及收敛性分析针对n 个关节的神经网络控制,定义Lyapunov 函数为:()11122T T L tr -=+r Mr W F W (20)其中()tr ⋅为矩阵的迹,其定义为:设A 是n 阶方阵,则称A 的主对角元素的和为A 的迹,记作()tr A 。
则()112T T T L tr -=++r Mr r Mr W F W将式(17)代入上式,得()()()1122T T T T T v m d L tr -=-+-+++++r K r r M V r W F W hr r ετv (21)将式(2)和式(16)代入上式,得()T T v d L =-+++r K r r ετv下面分两种情况进行讨论。
(1)不考虑鲁棒项,取0=v ,则()()2min T T v d v N d L K b ε=-++≤-++r K r r ετr r如果要使0L ≤,则需要满足:()min /N d v b K ε≥+r (22)如果满足0L ≤,由于0L >,且M(q)有界,则由L 表达式可知,()t r 、W和ˆW都有界。
由()t r 有界可知,跟踪误差()t e 及其导数()t e 都有界,从而q 和q 有界,且跟踪误差()t e 及其导数()t e 的收敛值随神经网络逼近误差上界N ε和干扰上界d b 的增大而增大,并可通过增大v K 的值达到任意小。
(2)考虑鲁棒项,v 取式(18),则()()()()0T T T T d d d N d b ε++=++=+-+≤r ετv r ετr v r ετr0T v L ≤-≤r K r由于0L >,且M(q)有界,则()t r 、W 和ˆW 为有界。
由于2T vL =-r K r ,又由于式(17)的右边信号都有界,则r 有界,L 有界,则根据Barbalat 引理,L 趋近于零,即()t r 趋近于零,从而可得出()t e 和()t e 趋近于零。
4、SIMULINK 仿真验证仿真图如下:由于系统比较复杂,直接采用模块搭建比较麻烦,所以本设计中采用S_function 动态函数来实现前面推导的算法公式,实现了三个动态函数:input.m 产生输入、ctrl.m 为控制器实现、plant.m 表示控制对象:其中控制器实现函数ctrl.m 中RBF 神经网络的中心矢量及近似标准差分别设置为:这两个值的取值对神经网络控制的作用很重要,如果参数取值不合适,将使高斯基函数无法得到有效的映射,从而导致RBF 网络无效。
网络输入取[]d d d =z ee q q q ,初始状态设置为零,控制参数取{}50,50v diag =K ,{}25,25diag =F 。
高斯基函数的m 语言实现如下:逼近效果如下图,由图可以看出开始阶段拟合误差较大,但随着时间的增大,RBF 网络能够较好地拟合原函数,即使原函数很复杂,通过调整参数,逼近效果会更好。
5101520253005101520253035404550时间(s)原函数与R B F 逼近的函数原函数RBF 逼近函数对两个关节的位置指令分别为()10.1sin dq t =,()20.1cos d q t =跟踪效果如下图所示,开始时有一定的误差,但稳定后能无静差跟踪,效果很好。
2468101214-0.15-0.1-0.050.050.10.15时间(s)关节1位置跟踪q =0.1s i n (t )位置指令跟踪曲线2468101214-0.2-0.15-0.1-0.050.050.10.15时间(s)关节2位置跟踪q =0.1c o s (t )位置指令跟踪曲线第二部分对《自适应神经网络》的理解与体会本门课程是继《线性系统》后的一门比较理论的关于控制理论的课程,与线性系统不同的是自适应神经网络控制研究的对象更多的是非线性、参数未知、模型未知的复杂系统,经典的控制方法在面对这样的系统时显得非常乏力,于是,自适应控制、学习控制、智能控制如神经网络遗传算法等就大有用武之地了。
通过本门课程的学习我学到了backstepping方法,神经网络控制方法,通过严格的公式推导出神经网络的控制思想还是挺有趣味与吸引力的,循序渐进的过程让我懂得了虚拟控制、匹配条件、延迟参数设计等概念,不管以后自己是否走理论研究这条道路,我感觉在这么短的时间内学到的这些知识还是很有价值的。