单力臂机械手直接自适应模糊控

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

学校学院年级专业课程设计测控系统课程设计题目:单力臂机械手直接自适应模糊控制——方案B24院(系)专业学号姓名级别指导老师2011年7月Huaqiaouniversity学校学院年级专业课程设计单力臂机械手直接自适应模糊控制班级姓名指导老师摘要:本文提出了一种自适应模糊控制器用于单力臂机械手的控制,该控制器根据实际系统性能与理想性能之间的偏差,通过一定的方法来直接调整控制器的参数,进而使得系统输出尽可能地跟踪理想输出。仿真实验表明,该控制器能够实现对单力臂机械手的较高精度控制。关键词:模糊控制器;自适应控制;机械手Abstract:Thispaperpresentsadesignofadaptationfuzzycontrollerforsingle-armroboticsmanipulators.Accordingtothedeviationbetweentheactualperformanceofthesystemandtheidealperformance,thecontrollerusesacertainmethodtoadjustthecontroller'sparametersdirectly,andthentheoutputofthesystemcantrackthedesiredoutput.Thesimulationresultsshowthatprecisionisveryfine.Keywords:fuzzycontroller;adaptivecontrolsystems;roboticmanipulators1引言机械手是一个多变量、非线性、耦合的动态系统,很难通过准确的数学模型设计有效的控制。在人工智能领域,人们逐渐将模糊逻辑和神经网络理论应用到控制中,在原有的PID控制、计算力矩控制等方法中对无法准确计算部分用模糊方法以及神经网络方法进行补偿控制[2-3],控制精度有了一定提高。鉴于模糊控制的突出优点:能够比较容易地将人的控制经验融入到控制器中,于是本文在模糊控制的基础上提出机械手自适应模糊控制器设计方案,该方案通过设计一个反馈控制器()uux和一个调整参数向量的自适应律,使得系统输出y尽可能地跟踪理想输出my,从而获得机械手的较高精度的控制。2问题描述考虑如下方程所描述的研究对象.()(1)(,,,)nnxfxxxbu(1)学校学院年级专业课程设计yx(2)式中,f为未知函数,b为未知的正常数。直接自适应模糊控制采用下面IF-THEN模糊规则来描述控制知识:IF1xis1rPandandnxisrnP,THENuisrQ(3)式中,riP,rQ为R中模糊集合,且r=1,2,,nL。假设位置指令为my,令.(1),(,,,)nTmmeyyyxeeee(4)选择1k(,,)Tnkk,使多项式(1)1snnnksk的所有根部都在复平面左半开平面上。取控制律为*()1()nTmufxyKeb(5)将式(5)代入式(1),得到闭环控制系统的方程:()(1)10nnnekeke(6)通过K的选取,可使得当t时,et0,即系统的输出y渐进地收敛于理想输出my。直接型模糊自适应控制是基于模糊系统设计一个反馈控制器()uux和一个调整参数向量的自适应律,使得系统输出y尽可能地跟踪理想输出my。3模糊控制器的设计直接自适应模糊控制器为()Duux(7)式中,Du是一个模糊系统,是可调参数集合。模糊系统Du可由以下两步来构造:步骤1对变量(1,2,,)ixin,定义im个模糊集合(1,2,,)iliiiAlm。步骤2用以下1niim条模糊规则来构造模糊系统Dux:1111,nnllllnnDIFxisAandandxisATHENuisS(8)其中,11,2,,,1,2,,ilmin。采用乘积推理机、单值模糊器和中心平均解模糊器来设计控制器,即学校学院年级专业课程设计11i1111i11111()u(/)()nlninninmmnlluAilliDmmnlAilliyuxxux(9)令1nlluy是自由参数,分别放在集合1niiRm中,则模糊控制器为()()TDuxx(10)其中()x为1niim维向量,其第1,,nll个元素为i11i11111()()()inninnlAiillmmnlAilliuxxux(11)模糊控制规则式(3)是通过设置其初始参数而被嵌入到模糊控制器中的。4自适应律的设计将式(5)、(7)代入式(1),并整理得:()*[(/)]nTDeKebuux(12)令:11010000001000000001nnkkk000bb(13)则闭环系统动态方程式(12)可写成向量形式:.*[(/)]Deebuux(14)定义最优参数为1**argmin[sup()]nniRiDxRmuxu(15)定义最小逼近误差为**()Duxu(16)由式(14)可得学校学院年级专业课程设计.***(()())(())DDDeebuxuxbuxu(17)由式(10),可将误差方程式(17)改写为.*()()Teebxb(18)定义Lyapunov函数:**1()()22TTbVePer(19)其中参数是正的常数。P为一个正定矩阵且满足Lyapunov方程TPPQ(20)其中Q是一个任意的nn正定矩阵,由式(13)给出。取**121,()()22TTbVePeVr,令*()()TMbxb,则式(18)变为.eeM..1111()()2222111()2221111()2222TTTTTTTTTTTTTTTVePeePeeMPeePeMePPeMPeePMeQeMPeePMeQeePM即.*1..*21[()()]2()TTTTVeQeePbxbVrV的导数为..**1[()()]()2TTTTbVeQeePbxr(21)令np为P的最后一列,由0,,0,Tbb可知TTnePbepb,则式(21)变为..*1()()2TTTTnnbVeQeepxepbr(22)取自适应律.()Tnepx(23)学校学院年级专业课程设计则.12TTnVeQeepb(24)由于0Q,是最小逼近误差,通过设计足够多规则的模糊系统()Dux,可使充分小,并满足12TTnepbeQ,从而使得.0V。直接型自适应模糊控制系统的结构如图1所示。5仿真实例被控对象为一单力臂机械手:...11(cos)()ddmglII其中d为摩擦模型。摩擦模型为库伦摩擦+黏性摩擦模型,即..12sgn(())(())dtktk其中1k和2k为正的常数。位置指令为()sin()dxtt。取以下6中隶属函数:3()1/(1exp(5(2)))Nuxx,22()exp((1.5))Nuxx,21()exp((0.5))Nuxx,21()exp((0.5))puxx,22()exp((1.5))puxx,3()1/(1exp(5(2)))Puxx。-my被控对象()(),nxfxbuyx模糊控制器()()TDuxx自适应律.()TnePx初始值(0)图1直接型自适应模糊控制系统学校学院年级专业课程设计系统摆初始状态为1,0,的初始值取0,采用控制律(10),取500050Q,121,10kk,自适应参数取50。根据隶属函数设计程序,可得到隶属函数图,如图2所示。在控制系统仿真程序中,分别用2FS,1FS和FS表示模糊系统()x的分子、分母和()x,仿真结果如图3、图4和图5所示,Simulink程序如图6所示。从图中可以看出控制器具有较好的动态特性,系统响应速度快、调节精度较高,可实现系统输出大致跟踪理想输出。图2X的隶属函数图3位置跟踪学校学院年级专业课程设计图4控制输入信号图6Simulink程序图图5位置跟踪报错图学校学院年级专业课程设计6结语本文给出的直接适应模糊控制算法是基于模糊系统设计的,系统能够根据给定的初始参数,使得其输出Y尽可能地跟踪理想输出my,是一种比较实用的自适应控制算法。参考文献[1]张德丰《MATLAB控制系统设计与仿真》电子工业出版社,2009年[2]赵文峰《基于MATLAB6.x控制系统设计与仿真》西安电子科技大学出版社,2002年[3]刘金琨《机器人控制系统的设计与MATLAB仿真》清华大学出版社,2008年学校学院年级专业课程设计以下共4个程序:(1)隶属函数设(2)控制器S函数(3)被控对象S函数(4)作图程序隶属函数设计:clearall;closeall;L1=-3;L2=3;L=L2-L1;T=0.001;x=L1:T:L2;figure(1);fori=1:1:6ifi==1u=1./(1+exp(5*(x+2)));%i=1,u(1)=Un3(x)elseifi==6u=1./(1+exp(-5*(x-2)));%i=6,u(6)=Up3(x)elseu=exp(-(x+2.5-(i-1)).^2);%其他4种情况endholdon;plot(x,u);%作图指令endxlabel('x');ylabel('Membershipfunctiondegree');%横纵坐标标签控制器S函数function[sys,x0,str,ts]=spacemodel(t,x,u,flag)%s-函数引导语句switchflag,case0,%初始化设置[sys,x0,str,ts]=mdlInitializeSizes;case1,%连续状态变量计算sys=mdlDerivatives(t,x,u);case3,%输出量计算sys=mdlOutputs(t,x,u);case{2,4,9}%未定义标志sys=[];otherwise%处理错误error(['Unhandledflag=',num2str(flag)]);endfunction[sys,x0,str,ts]=mdlInitializeSizes%进行初始化,设置系统变量的大小sizes=simsizes;%取系统默认设置sizes.NumContStates=36;%设置连续变量个数学校学院年级专业课程设计sizes.NumDiscStates=0;%设置离散状态个数,无离散状态,故设0sizes.NumOutputs=1;%设置输出变量个数sizes.NumInputs=4;%设置输入变量的个数sizes.DirFeedthrough=1;%输出量的计算取决于输入量sizes.NumSampleTimes=0;%采样周期的个数sys=simsizes(sizes);%设置系统的大小参数x0=[zeros(36,1)];%设置为零初始状态str=[];%设置字符串矩阵ts=[];%采样周期的设置functionsys=mdlDerivatives(t,x,u)%计算系统的状态变量r=u(1);dr=u(2);xi(1)=u(3);xi(2)=u(4);%赋值语句e=r-xi(1);de=dr-xi(2);gama=100;k2=1;k1=10;E=[e,de]';A=[0-k2;1-k1];Q=[1500;0150];%赋初值语句P=lyap(A,Q);%李亚普诺夫函数求解P,运用公式(20)%%%%%%

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功