基于MATLAB的机器人运动仿真研究_第1页
基于MATLAB的机器人运动仿真研究_第2页
基于MATLAB的机器人运动仿真研究_第3页
基于MATLAB的机器人运动仿真研究_第4页
基于MATLAB的机器人运动仿真研究_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于MATLAB的机器人运动仿真研究第44卷第5期2005年9月厦门大学(自然科学版)JournalofXiamenUniversity(NaturalScience)Vol_44NO.5Sep.2005基于MATLAB的机器人运动仿真研究罗家佳,胡国清(厦门大学机电工程系.福建厦门361005)摘要:按照一定的要求对一种柱面坐标机器人进行了参数设计,讨论了该机器人的运动学问题,然后在MATLAB环境下,用RoboticsToolbox对该机器人的正运动学,逆运动学,轨迹规划进行了仿真.通过仿真.观察到了机器人各个关节的运动.并得到了所需的数据.说明了所设计的参数是正确的.从而能够到达预定的目

2、标,关键词:机器人;柱面坐标;轨迹规划;仿真;MATLAB;RoboticsToolbox中图分类号:TP24文献标识码:A文章编号:04380479(2005)05064005随着科技的开展,机器人与人类的联系日益密切.出于对机器人的兴趣和关注,人们更加想了解机器人,学习机器人,因此,进行机器人的教学和培训就显得尤为重要.然而,机器人是一个比拟昂贵的设备,在进行机器人教学时,不可能用许多实际的机器人来作为教学和培训的试验设备.这时,就有必要用到机器人仿真系统,它可为此提供一个方便,灵活的试验工具和手段卜.对机器人进行图形仿真,可以将机器人仿真的结果以图形的形式表示出来,从而直观地显示出机器人

3、的运动情况,得到从数据曲线或数据本身难以分析出来的许多重要信息3,还可以从图形上看到机器人在一定控制条件下的运动规律.对于机器人运动学,在国内的相关着作4中,讨论较多的是PUMA和斯坦福机器人.本文那么讨论一种柱面坐标机器人,同时选用MATLAB语言进行仿真.目前MATLAB已经成为控制界上最流行的软件之一,它除了传统的交互式编程之外,还提供了丰富可靠的矩阵运算,图形绘制,数据处理,图像处理,windows编程等便利工具【6.随着MATLAB在中国逐渐流行,它将成为在PC机上进行机器人仿真的理想方式.基于以上表达,本文首先设计了柱面坐标机器人的各连杆参数,然后详细讨论了正,逆运动学算法,轨迹规

4、划问题,最后在MATLAB环境下,运用RoboticsToolbox【,编制简单的程序语句,快速完成了运动学仿真.在仿真过程中,不仅直观地观测到了机器人的运动情况,还得到了所需的数据,且以图形的形式显示了收稿日期:2004?10.11基金工程:福建省重点科技工程(98.H一36)资助作者简介:罗家佳(1981一),男,硕士研究生.出来.1柱面坐标机器人参数设计1.1【)_H变换为描述相邻杆件间平移和转动的关系,Denavit和Hartenberg(1955)提出了一种为关节链中的每一杆件建立附体坐标系的矩阵方法.【)-H方法是为每个关节处的杆件坐标系建立4×4齐次变换矩阵,表示它与前

5、一杆件坐标系的关系,其原理.如下:OXYZ.与固定坐标相连的固定参考坐标系,称为基坐标系.Qxy,z:与机器人的第i个杆件相固连,坐标原点在第+1关节的中心点处.确定和建立每个坐标系遵循以下三条规那么:1)Z轴沿着第i关节的运动轴;2)X轴垂直于ZH轴及轴并指向离开Z轴的方向;3)yl轴按右手坐标系的要求建立.同时,刚性杆件的【)-H表示法取决于连杆的以下四个参数:两连杆的夹角;d:两连杆的距离;a:连杆的长度(即一.轴和ZJ轴间的最小距离);a:连杆的扭转角.对于转动关节,Oi是关节变量,其余为关节参数(保持不变);对于移动关节,d是关节变量,其余为关节参数.1.2机器人参数设计柱面坐标机器

6、人主要由垂直柱子,水平手臂(或机械手)和底座构成.水平机械手装在垂直柱子上,能自第5期罗家佳等:基于MATLAB的机器人运动仿真研究由伸缩,并可沿垂直柱子上下运动.垂直柱子安装在底座上,并与水平机械手一起能在底座上移动.因此,这种机器人的工作区间就形成一段段圆柱面.通常的柱面坐标机器人有三个自由度.对于本文表达的柱坐标机器人(参见图l(a);图l中关节2和关节3位移量分别为180.0mm和185.0mm),为了能够满足更多的任务需求,设计为六自由度机器人,共有六个关节.它的第一个关节为转动关节,第二,三个关节均为移动关节,最后三个关节均为转动关节.前三个关节确定手臂的位置,后三个关节确定手臂的

7、姿态.我们为该柱坐标机器人取名为“robotO0l,具体参数见表1.下面,我们对该机器人参数设计所要到达的目标及设计情况进行简要的表达.文中设计的柱坐标机器人用于作为搬运机器人或装配机器人,要求能够实现水平机械手在水平方向上的自由伸缩,绕垂直柱子转动和沿垂直柱子上下运动,最后三个关节确定多种方位的姿态,进而完成预定的任务.而具体的参数如d和d.以及d那么是由预定的工作任务来决定的.对于参数设计而言,并没有严格的要求.连杆长度a是由工作任务要求的工作空间的形状和体积来决定的,按上文【)IH变换的表达,结合该机器人的结构及它将完成的任务,所设计的a均为零,其余均按【)IH变换的定义进行设计.表1机

8、器人robotO01的连杆参数Tab.1Thelinkparametersofrobot001连杆i口f/(.)nf/ram/(.)df/ram变量范围(a)(b)图1robot001的实体模型及其连杆坐标系Fig.1Thesolidmodelingandcoordinateframesofrobot001A一COSa.Ol(1)现在,将机器人的参数代人式(1),得到第i坐标系相对于机座坐标系位姿的齐次变换矩阵.,表示为:.T.一.AlA2A.(2)特别地,当i一6时,可求得T一.,它确定了机器人的末端相对于基坐标系的位置和姿态,可以把丁矩阵表示为:T=.T6=.AlA2A3.A4A5A6=1

9、0000160.160.29000d2(180.O)0600mm.(8?.).mm其中49000431.8110.170.5900001O0.100.60000266.266.2机器人运动学仿真算法2.1机器人运动学正问题所谓运动学正问题4,53,就是对于一机器人,给定杆件的几何参数和关节的位移,求解末端连杆坐标系相对于基坐标系的位姿.为求解运动学方程式,我们用齐次变换矩阵A来描述第i坐标系相对于(1)坐标系的位置和方位,记作:.Al=A2一口P口P口:POlcos0lsin0lsinOlcos0lOOOOlOOO0OlO0一l0d20OOl0000l3OlOOOOlOOl(3)nOOClOO

10、n一A厦门大学(自然科学版).A4=A5=.A6=0sin040.COS0410OO0-sin0s0COS0s1OOOsin060cos060O1OO2.2机器人运动学逆问题机器人运动学逆问题就是末端连杆的位置和方位(,-I表示为位姿矩阵丁,即式(3),求得机器人的各个关节变量.对于上述的robot001,需要求解的变量为0.,d.,d.,o6.机器人运动学逆问题的求解方法是:将运动方程式(3)的两端依次左乘各A矩阵的逆矩阵,并使两端相等矩阵的对应元素相等,即可求得各关节变量.先用T表示连杆6的坐标系与连杆i一1坐标系的关系4l5:丁6一AA1.A6(4)求解关节变量的方程式如下:A1一丁一T

11、6(5)A2一A1一丁一T6(6)A3一A2一A1一丁一.丁6(7)A.一A3一A2一A1一T一T6(8)A5一A4一A3一A2一A1一丁=T6(9)3轨迹规划机器人轨迹规划是根据机器人要完成的任务设计机器人各关节的运动规律.轨迹规划主要有两种方案【4l5:i)点到点运动(PTP,pointtopointmotion)的轨迹规划;ii)连续路径运动(CP,continuouspathmotion)的轨迹规划.对于连续路径运动,不仅要规定机械手的起始点和终止点,而且要指明两点之间的假设干中间点(称路径点),必须沿特定的路径运动(路径约束).本文设计的柱坐标机器人,采用了点到点运动的轨迹规划.设它

12、的起始点为A,运动到B点完成一定任务后,再将B点视为起始点,运动到c点完成了预定工作任务,然后又将c点视为起始点,继续运动.这里,对于形如A点到B点,B点到c点的运动,它们之间不存在任何的中间点,并且对于运动的路径也没有设置要求.因而,可以将上述规划视为PTP规划.4MATLAB运动仿真4.1运动仿真(i)在对上述规划轨迹进行仿真前,先输入机器人的参数,并命名robot001.命令如下:连杆的前四个元素依次为a,ad,最后一个为0(转动关节)或1(移动关节)>>L1一link(Co000o-1);L2一link(Cpi/20001);移动关节L3一link(Co00

13、01);移动关节L4一link(Cpi/2ooo.4318o-1);L5=link(C-pi/2000o3);L6一link(Co000o);rrob6t(L1L2L3L4L5L6);构建机器人-robotO01;9/5命名(ii)运用命令drivebot(),可以立刻看到该机器人的三维图,并且,可以用手动的方式,通过驱动图中的滑块,来驱使机器人运动,就像实际控制着机器人一样,见图2所示,对机器人的教学和培训带来了极大方便.>>drivebot(r);oA驱动机器人r.(iii)按预定轨迹进行仿真(由于篇幅有限,仅对A到B,B到C进行仿真例如).对于A,

14、B,c三点,A点处于起始位置,可表示为qACo0000o,即表示机器人的各个关节都处于图2(a)示的零位置处.机械手在B点和C点相对于基坐标系的位姿可用齐次变换矩阵TB和TC表示.然后,按运动学逆问题的解决方法,可以求得A到B,B到c的各个关节变量.下面,用RoboticsToolbox的逆运动学命令ikine()来求解:>>qACo0000o;定义所有关节变量的初值;TB一0.65330.45710.6036O0.2706一O.6O36一O.75OOO0.70710.653300.27060O1qAB=ikine(r,TB);对TB进行运动学逆问题求解;qAB一1

15、.57080.15000.20000.39278lOO1OOOO1OOO1即第5期罗家佳等;基于MATLAB的机器人运动仿真研究(a)(b)图2robot001的三维图及滑块控制图Fig.2Thethree-dimensionimageands1ider-contro11ingpictureofrobot0010.78540.39Z7qABr1.57080.15000.20000.39270.78540.39273;它说明机械手由A到B,关节1需%正向转动1.5708rad,关节2和3需向前移动0.1500m和0.2000m,最后三个关节需各自正向转动0.3927,0.7854,0.3927r

16、ad.TCO.3361O.86690.3681OO.2O750.31310.9268OO.9187O.38790.0747O0.48210.48210.18001.0000qBC=ikine(r,)一ikine(r,TB);qBC=0.78540.03000.05000.19630.39270.19639,6说明机械手由B到C,关节1需逆向转动9,50.7854rad,关节2和3需向前移动0.0300m和0.0500m,最后三个关节需各自逆向转动0.1963,0.3927,0.1963rad.(iv)用命令plot()对机器人由A到B的运动进行仿真(取仿真时间为2S,采样间隔时间为0.056s

17、),这时就可以看到机器人各关节的具体运动情况.命令如下:>>:Eo:.056:2;产生时间向量qA=Eo0000o3;qAB=E1.57080.15000.20000.39270.78540.3927-;q=jtraj(qA,qAB,);jtraj()为构建轨迹命令plot(r,q);9,6图3给出了机器人运动到B时的三维图图3robot001运动到B点的三维图Fig.3Thethree-dimensionimageofrobot001atpointB(v)由于篇幅限制,下面只给出机器人由A运动到B,转动关节1与移动关节2的位移随时问变换的仿真图象(见图4),以及末

18、端关节沿z,Y,z方向的运动轨迹(见图5).取仿真时间为2S,采样间隔时间为0.056S.4.2仿真结果分析从图2可以看出(通过驱动滑块使机器人运动),机器人前三个关节的运动可以满足通常三自由度柱面坐标机器人的运动要求,即机械手可以实现水平方向上的自由伸缩,绕垂直柱子的转动和沿垂直柱子的上下运动,从而验证了连杆1,2,3的连杆参数设计的合理性.机器人后三个关节的运动可以使末端关节具有不同的姿态,也说明了设计的参数是合理的.在运动仿真的第(iv)步,我们观察到机器人由A运动到B时各个关节的运动情况(文中无法显示这一运动过程),且各个关节运动情况均为正常,各连杆没有运动错位的情况,从而验证了所有连

19、杆参数的合理厦门大学(自然科学版)2005定量00图4位移一时间曲线(a)转动关节1;(b)移动关节2Fig.4Displacement-timecurve图5末端关节的运动轨迹Fig.5Thetrajectoryofthelastlink性,且说明了各参数的设计能够实现预定的目标.从图4还可以看出:在所取的仿真时间内,转动关节1的位移由零逐渐变化到1.5708rad;移动关节2的位移由零逐渐变化到0.1500rf1.图5说明机器人由A运动到B,末端关节沿,Y,z方向的位移由初始位置分别变化到一0.6318rfl,0,0.1500rf1.由末端关节的位姿变化也可以看出,机器人后三个关节的运动可

20、以实现不同方位的姿态,即再次说明了其参数的合理性.5结束语本文对一柱面坐标机器人进行了参数设计,分析了它的运动学问题和轨迹规划问题.在MATLAB环境下,编制简单的程序语句,对该机器人已规划好的轨迹进行了运动学仿真,验证了参数的合理性,到达了良好的效果.参考文献:1DollarhideRobertL,AgahArvin.SimulationandcontrolofdistributedrobotsearchteamsJ.ComputersandElectricalEngineering,2003,29(5):625642.Ez3ZhaoQingjie,SunZengqi.Image-based

21、robotmotionsimulationJ-.OpticsCommunications.2002,205(46):257263.3孙增圻.机器人系统仿真及应用J.系统仿真.i995,7(3):2329.4蒋新松.主编.机器人学导论M.沈阳:辽宁科学技术出版社,i994.5蔡自兴.机器人学M.北京:清华大学出版社,2000.63薛定宇,陈阳泉.基于MATLAB/Simulink的系统仿真技术与应用M.北京:清华大学出版社,2002.7HanselmanD,LittlefieldB.精通Matlab6M.张航,黄攀.译.北京:清华大学出版社,2002.8CorkePI.ARoboticsToolboxforMATLABJ.IEEERoboticsandAutomationMagazine,1996,3(1):2432.StudyontheSimulationofRobotMotionBasedonMATLABLUOJia-jia,HUGuoqing(DepartmentofMechanicalandElectricalEngineering,XiamenUniversity,Xiamen361005,China)Abstract:Theparametersofakindo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论