机械手轨迹规划与仿真(共27页)_第1页
机械手轨迹规划与仿真(共27页)_第2页
机械手轨迹规划与仿真(共27页)_第3页
机械手轨迹规划与仿真(共27页)_第4页
机械手轨迹规划与仿真(共27页)_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、精选优质文档-倾情为你奉上摘要机器人的轨迹规划在机器人的控制中具有重要的地位。良好的轨迹规划是机械手平稳、安全地避开障碍物,完成作业任务的保证。本文根据机器人学的相关理论,以PUMA560为研究对象,建立的D-H坐标系,在关节空间内,运用推广的三次多项式插值法进行了过路径点以满足避障要求的机械手轨迹规划,并且采用MATLAB软件对具体的规划实例进行了运动仿真,主要绘出了机械手各关节的角位移、角速度和角加速度曲线。结果显示,每条曲线都是连续而光滑的,保证了各关节的运动平稳性,说明此次规划完全符合要求。由此可以得出结论,过路径点的三次多项式插值法不仅能满足机械手速度和加速度的连续性要求,而且能通过

2、主动选择路径点以满足避障要求。这种轨迹规划方法可以很好解决机械臂在工作过程中的平稳性、实时性等问题,而且简单易行。关键词:轨迹规划;多项式插值;避障;MATLAB仿真AbstractRobots path planning plays an important role in controlling the robot.Good trajectory planning can guarantee manipulator avoid obstacles and finish the tasks smoothly and safely. Based on the theory of robot k

3、inematics,this article use PUMA560 type mechanical arm to detablish D-H coordinate system and make trajectory planning by using extent cubic polynomial interpolation in joint space to meet the requirements of avoiding obstacles,and then use MATLAB software example for the planning,and mainly draw an

4、gular displacement,velocity and angle acceleration curve of each joint.The result show that every curve is continuous and smooth so it can guarantee the stability of each joint movement.So this trajectory planning fully meet the requirements.So it comes to a conclusion that the cubic polynomial inte

5、rpolation method can not only satisfy the requirements of continuitiy of the robot velocity and acceleration,but also can avoid obstacles by choosing path piont actively. This method of the path planning can make sure the manipulator working steadily in the course of its work well and can also solve

6、 the problem of the accuracy and the real-time characteristic,and it is easy to perform.Key words:Path planning;Polynomial interpolation; avoid obstacles;Matlab simulation目录第一章 绪论1§1.1研究背景和意义11.1.1 机器人轨迹规划的定义11.1.2 避障轨迹规划的意义11.1.3 轨迹规划研究的现状2§1.2研究内容2第二章 机械手模型的建立4§2.1 PUMA560机械手连杆坐标系的建

7、立4§2.2 PUMA560机械手运动方程的建立6§2.3 PUMA560逆向运动方程的建立7第三章 机械手轨迹规划9§3.1 轨迹规划的概述9§3.2 轨迹规划的一般性问题10§3.3 轨迹规划的具体方法10第四章 机械手轨迹规划仿真14第五章 总结18结束语19致谢20参考文献21附录22专心-专注-专业第一章 绪论§11 研究背景和意义1.1.1 机器人轨迹规划的定义工业机器人,或称机器人操作臂、机器人臂、机械手等。从外形看,它和人的手臂相似,是由一系列刚性连杆通过一系列柔性关节交替连接而成的开示链1。这些连杆就像人的骨架,分别

8、类似于胸、上臂、下臂,机械手的关节相当于人的肩关节、肘关节和腕关节。机械手的末端装有末端执行器或相应的工具,常称为手或手爪。目前,工业机器人广泛应用于工业生产中,大都用于简单、重复、繁重的工作,如上下料、搬运等,以及工作环境恶劣的场所,如喷漆、焊接、清砂和清理核废料等。机器人轨迹泛指工业机器人在运动过程中的运动轨迹,即运动点的位移、速度、加速度。机械手在作业空间要完成给定的任务,其手部运动必须按一定的轨迹进行,轨迹的生成一般是先给定轨迹上的若干个点,将其经运动学反解映射到关节空间,对关节空间中的相应点建立运动方程,然后按这些运动方程对关节进行插值,从而实现作业空间的运动要求,这一过程通常称为轨

9、迹规划。1.1.2避障轨迹规划的意义机械手轨迹规划的好坏,直接影响机器人作业质量,比如当关节变量的加速度在规划中发生突变时,将会产生冲击,若机器人固有平率较低将产生低频振动,机器人启动和停止时手部抖动就是这种现象的表现2。由于机器人工作的特殊性要求机器人运动时保证有足够的安全性,在机器人工作前需要进行严格的路径规划。其中,机器人各个关节能够连续地运动以使各机械臂运动时不产生大的扰动是保证安全的关键。另外,机械手在作业的过程中,由于环境的复杂性和多变性,难免会遇到障碍物,这就要求我们规划出一条合理的运动路径,使得机械手在运动过程中避开障碍物,不仅要保证机械手的运动安全性,而且能满足动力学的要求。

10、1.1.3轨迹规划研究的现状当前,机械手轨迹规划最常用的轨迹规划方法又两种:第一种方法是要求用户对于选定的轨迹结点(插值点)上的位姿、速度和加速度给出一组显式约束(例如连续性和光滑程度等),轨迹规划器从一类函数(如n次多项式)中选取参数化轨迹,对结点进行插值,并满足约束条件。第二种方法是要求用户给出运动路径的解析式,如直角坐标空间中的直线路径,轨迹规划器在关节空间或直角坐标空间中确定一条轨迹来逼近预定的路径。在第一种方法中,约束的设定和轨迹规划均在关节空间进行。由于对操作臂手部(直角坐标形位)没有施加任何约束,用户很难弄清手部的实际路径,因此可能会发生与障碍物相碰。第二种方法的路径约束是在直角

11、坐标空间中给定的,而关节驱动器是在关节空间中受控的,因此,为了得到与给定路径十分接近的轨迹,首先必须采用某种函数逼近的方法将直角坐标路劲约束转化为关节坐标路径约束,然后确定满足关节路径约束的参数化路径。面向笛卡尔空间方法的优点是概念直观,而且沿预定直线路径可达到相当的准确性。可是由于现在还没有可用笛卡尔坐标测量操作机手部位置的传感器,所有可用的控制算法都是建立在关节坐标基础上的,因此,笛卡尔空间路径规划就需要在笛卡尔坐标和关节之间进行实时变换,这是一个计算量很大的任务常常导致较长的控制间隔。此外,由笛卡尔坐标向关节坐标的变换是病态的,因为它不是一对一的映射。还有,如果再轨迹规划阶段还要考虑操作

12、机的动力学特性,就要以笛卡尔坐标给定路径约束,同时以关节坐标给定物理约束(例如每个关节电机的力和力矩、速度和加速度极限)。这就会使最后的优化问题具有在两个不同坐标系中的混合约束。由于面向笛卡尔空间方法又上述种种缺点,使得面向关节空间的方法被广泛采用,它把笛卡尔结点变换为相应的关节坐标,并用低次多项式内插这些关节结点。这种方法的优点是计算较快,而且易于处理操作机的动力学约束。根据障碍物已知和未知两种情况,路径规划也分为离线无碰撞路径规划和在线障碍探测和避障,后者属于人工智能的范畴,而目前工业机器人轨迹规划大都属于机器人低层规划,基本上不涉及人工智能的问题。现在大多使用关节空间法进行规划,只有在必

13、要时,才采用笛卡尔空间法3。§1.2研究内容本论文将研究有特定障碍物下的路径约束的轨迹规划,障碍物以一面墙作为示例,机械手末端执行器从墙的一边A点越过墙上端到另一边到达目标位置C点(示意图如图1-1所示)。具体做法是综合应用上述两种轨迹规划方法,在笛卡尔空间内起始点与终止点间取路径点B,转化为关节空间的关节变量,然后在关节空间内用多项式插值进行轨迹规划,这样不仅利用了关节空间内轨迹规划的优点,还能满足避开障碍物的要求。此次毕业设计的内容和主要步骤如下:ACB图1-1 机械手末端运动路径示意图(1) 六自由度机械臂数学模型的建立由于轨迹规划是建立在机器人运动学和动力学的基础上的,要对机

14、械手建模就必须建立连杆坐标系。所以首先对D-H方法建立连杆坐标系进行一般的简介,然后用这种方法对关节型机械手(具体为PUMA560)进行数学分析建模,建立其运动学方程。(2) 轨迹规划的具体设计轨迹规划是属于机器人规划的底层规划,可以在关节空间内也可以在笛卡尔空间内进行。(n个自由度的机械手的末端位姿由n个关节变量所决定,这n个关节变量统称为n维关节矢量,记为q,所有关节矢量q构成的空间称为关节空间)。末端手爪的位姿是在笛卡尔坐标空间内描述的。本文先采用运动学反解求出路径点和终止点时的关节变量,然后在关节空间内插值进行规划。(3) MATLAB计算、绘图、仿真运用MATLAB软件编程进行运动学

15、反解,计算并绘出关节变量的位移、速度、加速度方程,验证其连续性。用Robotic toolbox4构建机器人对象模型并进行运动仿真。第二章 机械手数学模型的建立机器人的轨迹规划属于机器人低层规划,是在机械臂运动学和动力学的基础上,研究在关节空间和笛卡尔空间中机器人运动的轨迹规划和轨迹生成方法。由于它的基础是机械臂的运动学和动力学,所以有必要简单介绍一下机器人位姿的描述、运动学和动力学原理、机器人运动学一般方程以及六自由度机械臂数学模型的建立。§2.1 PUMA560机械手连杆坐标系的建立机器人操作臂可以看做为一个开式运动链,它是由一系列连杆通过转动或移动关节串联而成的。开链的一端固定

16、在基座上,另一端是自由的,安装这工具(或称末端执行器),用以操作物体,完成各种作业。关节由驱动器驱动,关节的相对运动导致连杆的运动,使得手爪到达所需的位姿。在轨迹规划时,我们需要知道操作臂末端执行器相对于固定参考系的空间描述5。为了研究操作臂各连杆之间的位移关系,可在每个连杆上固接一个坐标系,然后描述这些坐标系之间的关系。机械手的运动可以看做是工具坐标系T相对于工作坐标系S的运动,工具坐标系固接在末端执行器上,而工作坐标系固接在基座上。本节将用D-H方法6建立PUMA560机械手的连杆坐标系以描述机械手末端执行器相对基座的位姿。D-H方法是由Denavit和Hartenberg提出的一种通用的

17、方法,用一4×4的齐次变换矩阵描述相邻两连杆的空间关系,从而推导出“手爪坐标系”相对于“参考系”的等价齐次变换矩阵,建立机械手的运动方程。本文研究的的对象是PUMA560机械手,有6个自由度,且6个关节均为旋转关节。PUMA560机器人本体的关节结构由回转的机体、大臂、小臂、腕部等部分组成,共有6个自由度,属于关节型机器人,每个关节均有角度零位与正负方向限位开关,机器人的回转机体实现机器人机体绕轴的回转(角),它由固定底座和回转工作台组成。安装在轴中心的驱动电机经传动装置,可实现工作台回转。大臂、小臂的平衡由机器人中的平衡装置控制,在机器人的回转平台上安装有大臂台座,将大臂下端关节支

18、承在台座上,大臂的上端关节用于支承小臂。大臂臂体得下端有直流伺服电机,可控制大臂上下摆动(角)。小臂支承于大臂臂体的上关节处,其驱动电机可带动小臂做上下俯仰(角)。以及小臂的回转(角)。机器人的腕部位于小臂臂体前端,通过伺服电动机传动,可实现腕部摆动(角)和转动(角)。 各关节处均安置有传感器,可以计算出关节的位置,并反馈给控制系统,实现个部分协同工作。PUMA560机器人各杆件的结构参数和运动参数7如表2-1所示:表2-1 PUMA560机器人的连杆参数 根据上述的D-H方法建立PUMA560机械手的D-H坐标系如下,图2-2为PUMA560机械手模型,图2-3根据D-H方法建立的连杆坐标系

19、。图2-2 PUMA560机械手模型图2-3 用D-H建立的PUMA560连杆坐标系§2.2 PUMA560机械手运动方程的建立当已知各关节变量的值(、),求机械手末端连杆的位姿(n,o,a,p),称为解机械手运动方程。当机械手各连杆参数确定后,根据机器人学的知识8,可以直接写.出相邻两坐标系间的变换矩阵: 代入表2-1给出的PUMA560的各连杆参数,求得个连杆的变换矩阵后将各个连杆变换矩阵相乘,便得到PUMA560的“手臂变换矩阵”,它是关节变量、的函数。最后,求出六个连杆变换之积: 式中、分别代表、,§2.3 PUMA560逆向运动方程的建立 上一节已经建立的运动学方

20、程,本节来解决机器人手臂运动学的第二个问题:运动学逆问题,或叫做运动学反解9,即已知机械手末端连杆的位姿(n,o,a,p),求各关节变量(、)的值。 PUMA560的运动学反解有很多方法,例如Paul等人提出的反变换法,Lee和Ziegler提出的几何法和Pieper解法等,利用反变换法10(也称代数法)求解得: 将PUMA560的运动方程写成式中 至此,PUMA560的六个关节变量都已解出,它可能存在八种解,但是由于结构限制,例如各关节变量不能在全部范围内运动,有些解甚至全部解都不能实现。机器人存在多种解的情况下,应选取其中最满意的一组解,譬如满足行程最短、功率最省、受力最好、回避障碍等要求

21、。第三章 机械手轨迹规划§3.1 轨迹规划的概述 机器人轨迹规划是在机械手运动学和动力学的基础上,讨论在关节空间和笛卡儿空间中机器人运动的轨迹规划和轨迹生成方法。所谓轨迹,是指机械手在运动过程中的位移、速度和加速度。而轨迹规划是根据作业任务的要求,计算出预期的运动轨迹。首先对机器人的任务、运动路径和轨迹进行描述。轨迹规划器可使编程手续简化,只要求用户输入有关路径和轨迹的若干约束和简单描述,而复杂的细节问题则由规划器解决。例如,用户只需要给手部的目标位姿,让规划器确定到该目标的路径点、持续时间、运动速度等轨迹参数,并在计算机内部描述所要求的轨迹,即选择习惯规定及合理的软件数据结构。最后

22、,对内部描述的轨迹,实时计算机器人运动的位移、速度和加速度,生成运动轨迹。通常,操作臂的运动可以看作是工具坐标系相对与工作坐标系的运动11。这不但符合机器人用户考虑问题的思路,而且有利于描述和生成机器人的运动轨迹。用工具坐标系相对与工作坐标系的运动来描述路径,是一种通用的描述方法。运动的描述与特定的操作臂、手爪或工具无关,即这种描述方法既适用于不同的操作臂、也适用于同一操作臂上装的不同尺寸的工具。此外,对于移动的工作台,这种描述和规划运动的方法同样适用,这时,工作坐标系的位置随着时间变化。机器人轨迹规划时要使机器人从起始状态移动到某个规定的目标状态,实际上可以看作是把工具坐标系从当前的起始值改

23、变到目标值。一般情况下,这种变化不但包括工具坐标系的位置。而且包括坐标系的姿态。以下我们用“点”这个词来表示操作臂的状态。有时需要更详细的描述运动,不仅要规定操作臂的起始和终止点,而且要指明介于起始点和终止点之间的中间点,或称路径点。除了这些空间位姿约束之外,运动轨迹还存在着时间分配问题。例如,在规定路径的同时。还必须给出两个路径点之间的运动时间。显然,操作臂的运动应当平稳,不平稳的运动将使机械部件的磨损加剧,并导致操作臂的振动和冲击。对此,所选的描述运动的轨迹的函数必须连续,而且,它的一阶导数(速度),有时甚至二阶导数(加速度)也应该连续。§3.2 轨迹规划的一般性问题 轨迹规划方

24、法一般是在操作机初始位置和目标位置之间用多项式函数来“内插”或“逼近”给定的路径,并沿时间轴产生一系列“控制设定点”,供操作机控制之用。路径端点既可以用关节坐标给定,也可以用笛卡儿坐标给定。不过,它们一般是在笛卡儿坐标中给出的。因为,在笛卡儿坐标中比在关节坐标中更容易正确地观察末端执行器的形态。此外,关节坐标并不适于作为工作坐标系,因为,大多数操作机的关节坐标并不正交,他们也不能把位置和姿态分开。如果需要某些位置的关节坐标,则可调用运动学逆问题求解程序,进行必要的转换。 轨迹规划既可以在关节变量空间中进行,也可以在笛卡儿空间中进行。对于关节变量空间的轨迹规划来说,要规划关节变量的时间函数及其前

25、二阶时间导数,以便描述操作机的预定运动12。在笛卡儿空间规划中,要规划操作机手部位置、速度和加速度的时间函数,而相应的关节位置、速度和加速度可根据手部信息导出。在关节变量空间的规划有三个优点:(1)直接用运动时间的受控变量规划轨迹;(2)轨迹规划可接近实时地进行;(3)关节轨迹易于规划。伴随的缺点是难于确定运动中各杆件和手的位置,但是,为了避开轨迹上的障碍,常常又要知道一些位置。面向笛卡儿空间方法的优点是概念直观,而且沿预定直线路径可达到相当的准确性。可是由于现在还没可用笛卡儿坐标测量操作机手部位置的传感器,所有可用的控制算法都是建立在关节坐标基础上的。因此,笛卡儿空间路径规划就需要在笛卡儿坐

26、标的关节之间进行实时变换,这是一个计算量很大的任务,常常导致较长的控制间隔。此外,由笛卡儿坐标向关节坐标的变换是病态的,因为它不是一对一的映射.还有,如果在轨迹规划阶段要考虑操作机的动力学特性,就要以笛卡儿坐标给定路径约束,同时以关节坐标给定物理约束(例如,每个关节电机的力和力矩、速度和加速度极限)。这就会使最后的优化问题具有在两个不同坐标系中的混合约束13。由于面向笛卡儿空间的方法有上述种种缺点,使得面向关节空间的方法被广泛采用,它把笛卡儿结点变换为相应的关节坐标,并用低次多项式内插这些关节结点。这种方法的优点是计算较快,而且易于处理操作机的动力学约束。可是,当取样点落在拟合的光滑多项式曲线

27、上时,面向关节空间的方法沿笛卡儿路径的准确性会有损失。§3.3 轨迹规划的具体方法本文将讨论如何对过路径点的轨迹在关节空间内进行轨迹规划。如前文所述,路径点通常用工具坐标系T相对于工作坐标系S的位姿来表示。为了求得在关节空间形成所要求的轨迹,首先用运动学反解将路径点转换成关节矢量角度值,然后对每个关节拟合成一个光滑函数,使之从起始点开始,依次通过所有路径点,最后到达目标点。对于每一段路径,各个关节运动时间均相同,这样保证所有关节同时到达路径点和终止点,从而得到工具坐标系T应有的位置和姿态。但是,尽管每个关节在同一段路径中的运动时间相同,各个关节函数之间却是相互独立的。总之,关节空间法

28、师以关节角度的函数来描述机器人的轨迹的,关节空间法不必在直角坐标系中描述两个路径点之间的路径形状,计算简单、容易。再者,由于关节空间与直角坐标空间之间并不是连续的对应关系,因而不会发生机构的奇异性问题。在关节空间中进行轨迹规划,需要给定机器人在起始点、终止点手臂的形位。对关节进行插值是,应满足一系列约束条件,例如抓取物体时,手部运动方向(初始点),提升物体离开的方向(提升点),放下物体(下方点)和停止点等结点上的位姿、速度、加速度的要求;与此相应的各个关节位移、速度、加速度在整个时间间隔内连续性要求;其极值必须在各个关节变量的容许范围之内等。在满足所要求的约束条件下,可以选取不同类型的关节插值

29、函数,生成不同的轨迹。下面着重讨论如何进行过路径点的三次多项式插值法。(1)三次多项式插值法在操作臂运动的过程中,由于相应于起始点的关节角度是已知的,而终止点的关节角度可以通过运动学反解得到,因此,运动轨迹的描述,可用起始点关节角与终止点关节角的一个平滑插值函数来表示。在t=0时刻的值是起始关节角度,在终端时刻的值是终止关节角度。为了实现单个关节的平稳运动,轨迹函数至少需要满足四个约束条件。其中两个约束条件是起始点和终止点对应的关节角度:为了满足关节运动速度的连续性要求,另外还有两个约束条件,即在起始点和终止点的关节速度要求。在当前情况下,规定上述四个边界约束条件唯一确定了一个三次多项式:(2

30、)过路径点的三次多项式插值一般情况下,要求规划过路径点的轨迹。如果操作臂在路径点停留,则可直接使用前面的三次多项式插值方法;如果只是进过路径点,并不停留,则需要推广上述方法。实际上,可以把所有路径点看做是“起始点”或“终止点”,求解逆运动学,得到相应的关节矢量值,然后确定所需要的三次多项式插值函数,把路径点平滑地连接起来。但是,在这些“起始点”和“终止点”的关节运动速度不再是零。为了保证路径点处的速度和加速度连续,可以设法用两条三次曲线在路径点处按一定的规则联接起来,拼凑成所要求的轨迹。其约束条件是:联接处不仅速度连续,而且加速度也连续。下面具体的说明这种方法。设所经过的路径点处得关节角度为,

31、与该点相邻的前后两点的关节角分别为和。从到的插值三次多项式为从到的插值三次多项式为上述两个三次多项式的时间区间分别为0,和0,。对这两个多项式的约束是:;以上约束组成了含有8个未知数的8个线性方程。对于的情况,这个方程组的解为:;第四章 机械手轨迹规划仿真本章将用MATLAB软件编程并进行轨迹规划仿真,用到的仿真模型是第二章建立的PUMA560的运动模型,轨迹规划方法是第三章的过路径点三次多项式插值方法。仿真要用到MATLAB中一个机器人工具箱14(robotic toolbox),进行机器人建模和运动仿真。要解决机械手从A点越过障碍物到达目的地C点的问题,只需在障碍物上方取一路径点B,转化为

32、两个点到点的运动。将B点和目标点C的位姿反解得到各点关节变量,然后用在这三点间用过路径点的三次多项式插值法进行轨迹规划即可。假定机械手初始点关节变量(记为)都为0,即=0,0,0,0,0,0;路径点的位姿和终止点已知,从A到B和从B到C的运动时间均为5s。求机械手从A运动到B再到C过程中各个关节轨迹方程,绘出关节位移、速度、加速度时间图像,验证其连续性。(1) MATLAB编制程序反解先给出路径点和终止点机械手末端执行器的位姿方程: 根据第二章求机械手运动反解的反变换法用MATLAB编制反解程序求得(程序见附录(1)反解得出的结果为 前三个关节变量确定手爪位置,后三个关节变量确定手爪方位,上述

33、表明机械手在运动是手爪位置在变,而方位不变,和初始点相同。(2)轨迹规划并用MATALB绘图按照第三章过路径点的三次多项式插值法,用MATLAB软件编制程序(程序见附录(2),输入机械手各关节起始点、路径点、和终止点的关节值,分别求出各关节变量的位移方程,并用MATLAB绘图功能分别绘出机器人关节1、2、3的位移、角速度、角加速度曲线15,分别如图4-1、图4-2和4-3所示:图4-1 关节1的位移、角速度和角加速度曲线由图4-1可以看出机械手关节1的位移、角速度和角加速度曲线都是连续的,并且角速度在起始点和终止点都为零,满足轨迹规划的动力学约束要求。同理,下面的图4-2(关节2)和4-3(关

34、节3)也都满足要求。图4-2 关节2的位移角速度和角加速度变化曲线图4-3 关节3的位移、角速度和角加速度曲线(4)用Robotic toolbox进行运动仿真用MATLAB16中Robotic toolbox(机器人工具箱)建立的运动仿真如下:图4-4是机械手运动到终止点的三维截图17,具体的运动过程动画可以用MATLAB运行附录中的运动仿真程序(见附录)图4-4 运动仿真终止点截图由仿真的结果可以看出,各关节的位移、速度、和加速度均连续,且在初始点和终止点的速度均为零,说明此次过路径点的避障轨迹规划满足要求。而且容易知道,可以选取多个路径点,在每相邻两个路径点之间用三次多项式插值法进行路径

35、规划,不仅可以满足位移、角速度和角加速度要求,而且能通过路径点以满足避障要求。第五章 总结(1)结论本文以PUMA560为对象建立数学模型,运用了推广的过路径点的三次多项式插值法,对避开已知障碍物得机械手运动进行了轨迹规划,通过MATLAB仿真的结果可以看出规划出的轨迹完全符合连续性要求,保证了机械手运动的平稳性,可以避开已知障碍物。(2)创新点本文的创新之处在于将机械手避障轨迹规划问题转化为过路径点的轨迹规划问题,由于障碍物是已知的,因此可以人为的选择一个或几个路径点,让机械手从起始点依次通过这些路径点以满足避障要求,将机械手的运动路径分为多段,在每一段路径上运用三次多项式插值法进行规划,前

36、一段运动的终止点及为下一段运动的起始点,就可以满足机械手在整个路径运动过程中速度和加速度的连续性要求,良好的保证了机械手运动的平稳性。(3)局限性本文运用的避障轨迹规划方法也有很大的局限性,其一,要求障碍物必须是已知的情况下,可以人为的选取路径点;其二,怎样选取合适的路径点才能保证避障要求也是个必须认真考虑的问题,可能为了满足避障要求选择的路径点会使机械手进行多余的运动,不能满足行程最短或能量消耗最少等要求;其三,由于是在关节空间内进行的轨迹规划,机械手在笛卡尔空间内的运动路径不直观,不能准确的沿预定的路径运动,有时可能为了满足避障要求,必须选取相当多的路径点。(4)展望机器人规划是一个复杂的

37、过程,由于机械臂本身和操作过程中环境等影响因素很多,怎样将它们集中起来考虑,并研究出一套符合各种情况的系统的算法很有必要。当前的轨迹规划还属于机器人轨迹规划的低层规划,今后工作的方向应该是趋向人工智能方向,是基于传感器的路径规划,让机械手具有自动探测和避开障碍物得轨迹规划功能18,这样不仅能大大的提高生产作业效率,节约能源,还能良好的保证机器人运动的精确性和安全性。结束语本文先对工业机器人也称机械手进行了简要的介绍,由于本文的研究内容是机械手路径规划,而路径规划必须以机器人学为基础,建立连杆坐标系以描述机器人的位姿,所以第二章对机器人运动学作了简要的介绍并对具体的机器人对象PUMA560进行了

38、数学建模,建立了正向运动学和逆向运动学方程;第三章通过对简单的点-点运动用三次多项式插值法进行路径规划推广到过路径点的三次多项式插值规划法,然后第四章通过具体的例子对过路径点的轨迹规划进行了MATLAB仿真,运用Robotic Toolbox进行了建模,绘出的角位移、速度、加速度曲线光滑连续,仿真结果完全符合要求。通过这学期的毕业设计,我可以说是获益匪浅,学到了很多东西,譬如机器人学、MATLAB软件等等。刚开始拿到这个毕业设计题目时,可以说很多东西都是从零开始,其中也遇到不少的困难,但是每次我都会找老师或者上网查阅资料等通过各种途径一一地解决了这些困惑,提高了自己查阅资料、解决问题的能力和战

39、胜困难的信心。此次毕业设计的一个重大收获就是自学了MATLAB软件,以前只是稍微会点,于是我上网买了本关于MATLAB教程的书自学,并上网找到了两个关于MATLAB的论坛进行学习,现在对MATLAB绘图、编程、工具箱等等有了深入的了解。MATLAB软件是个很强大的软件,学好了它对以后的学习或工作都会有很好的帮助。在本文的设计过程中我也发现了些问题,如本文要运用MATLAB进行运动学反解得到关节值,事实上MATLAB中机器人工具箱中有个自带的反解函数,本可以用它进行反解方便省事,但是我发现它存在很大缺陷,由于机器人运动学反解的多解性,它不能选择合适的解,甚至我试验过,有时用正解函数得到的矩阵进行

40、反解都不能还原,所以我自己根据最原始的反解方法自己编制了程序,虽然程序不完美,但基本根据约束正确的进行反解,这让我感觉很欣慰。总之,这次毕业设计不仅让我学到了很多新知识,而且磨练了自己的意志,提高了自己分析问题解决问题的能力,让我领悟到,脚踏实地的学习、认真冷静的分析才能很好的处理面对的问题。在以后的学习或生活中,面对困难,我定会沉着冷静,继续发扬这种精神!致谢本此毕业设计是在文国军老师的精心指导和关心下完成的,记得刚开始选题的时候,有几个人选择了这个题目,我跟老师说想学点软件方面的知识,现在如我所愿了。万事开头难,其实刚开始拿到这个题目,对机器人路径规划还真是完全不懂,老师说不要紧,认真学就

41、行了,在老师的指导下认真学习了机器人学方面的知识后,才知道自己要到底要做些什么。对机器人进行数学建模后,还要运用MATLAB软件进行仿真,这个软件我也是稍微会点,于是在网上买了本详细介绍它的书进行学习。搞完这次毕业设计,不仅让我认真学习了机器人学方面的知识,而且能更熟练的运用MATLAB这个强大的软件了,对以后不管是学习还是工作将有很大的帮助。在此次设计过程中,本来就是一个从零开始的过程,难免遇到很多问题,我都会找老师或者同学帮助,文老师很忙,但是只要我有问题,老师总是会放下手中的事情,对我进行认真的指导,非常感谢!还有就是我在查询资料的过程中在网上发现了两个很好的MATLAB论坛,我有问题也

42、会发帖请求网友的帮助,也因此解决了困惑自己的一些问题。这次毕业设计不仅让我学到了新的知识,而且提高了自己查阅资料的能力和战胜困难的勇气。在此我要衷心感谢精心指导我的文老师,帮助我的同学们和论坛上那些匿名的网友!另外,此次设计还参考查阅了不少资料期刊论文等,也要在此对那些文献的作者表示谢意!最后期待和感谢评审委员会的老师审阅和指正!参考文献1 熊友伦,机器人技术基础,武汉:华中科技大学出版社,19962 孙树栋,工业机器人技术基础,西安:西北工业大学出版社,20063 马强,六自由度机械臂轨迹规划研究,哈尔滨工程大学硕士学位论文,20074Peter I.Corke,Robotics Toolb

43、ox for MATLAB,Manufacturing Science and Technology,20015 刘极峰,易际明. 机器人技术基础,北京:高等教育出版社,20066彭志,机器人无碰撞轨迹规划,沈阳工业大学硕士学位论文,20037 王德兵,PUMA560机械臂的运动轨迹研究与仿真,安徽理工大学硕士学位论文,20088 理查得.摩雷,李泽湘,夏恩卡.萨思特里,机器人操作的数学导论,北京:机械工业出版社,19979孙涛,张征,胡俊等. 机器人逆运动学算法及ADMAS仿真,机床与液压,2008年第3期10 Paul R P.Shimano B E.Mayer G.Kinematic C

44、ontrol Equations for Simple Manipulators.IEEE Trans.SMC.1981,SMC-11(6)11罗家佳,胡国清.基于MATLAB的机器人运动仿真研究,厦门大学学报(自然科学版),2005年第5期12 臧庆凯,李春贵,闫向磊. 基于MATLAB的PUMA560机器人运动仿真研究,广西科学院学报,201013 刘好明,6R关节型机器人轨迹规划算法研究及仿真,山东理工大学硕士学位论文,200814谢斌,蔡自兴. 基于MATLAB Robotic Toolbox的机器人学仿真实验教学,计算机教育,2010年第19期15冯飞,张洛平,张波. 四自由度机器人

45、MATLAB仿真实例,河南科技大学学报(自然科学版),2008年第3期16 王正林,刘明. 精通MATLAB,北京:电子工业出版社,201117崔玉洁,张祖立,范磊. 基于MATLAB的采摘机械手运动学仿真研究,农机化研究,2007.918Zhang Kai,Hu Dejin,Liu Chengliang. Study on singular configurations and computer simulation of 6R robot. Chinese Journal of Mechanical Engineering. 2004附录(1)运动学反解程序function fanL1=l

46、ink(-pi/2 0 pi/2 0 0);L2=link(0 0.4318 0 0.14909 0);L3=link(-pi/2 0.02032 -pi/2 0 0);L4=link(pi/2 0 0 0.43307 0);L5=link(-pi/2 0 0 0 0);L6=link(0 0 0 0 0);r=robot(L1 L2 L3 L4 L5 L6,'PUMA560');drivebot(r)%用robotic toolbox建立的PUMA560模型T=input('请输入变换矩阵:')nx=T(1,1),ny=T(2,1),nz=T(3,1)ox=T

47、(1,2),oy=T(2,2),oz=T(3,2)ax=T(1,3),ay=T(2,3),az=T(3,3)px=T(1,4),py=T(2,4),pz=T(3,4)a2=0.4318,a3=0.02032,d2=0.14909,d4=0.43307t11=atan2(py,px)-atan2(d2,sqrt(px2+py2-d22)t12=atan2(py,px)-atan2(d2,-sqrt(px2+py2-d22)if (t11>0&t12<0)|(t11>0&t12>0&t11<t12) t1=t11else t1=t12endk=

48、(px2+py2+pz2-a22-a32-d22-d42)/(2*a2)t31=atan2(a3,d4)-atan2(k,sqrt(a32+d42-k2)t32=atan2(a3,d4)-atan2(k,-sqrt(a32+d42-k2)if abs(t31)<abs(t32) t3=t31else t3=t32endt23=atan2(pz*(-a3-a2*cos(t3)+(cos(t1)*px+sin(t1)*py)*(a2*sin(t3)-d4),pz*(-d4+a2*sin(t3)+(cos(t1)*px+sin(t1)*py)*(a2*cos(t3)+a3)t2=t23-t3t4=atan2(-ax*sin(t1)+ay*cos(t1),-ax*cos(t1)*cos(t23)-ay*sin(t1)*cos(t23)+az*sin(t23)t5=atan2(-(ax*(cos(t1)*cos(t23)*cos(t4)+sin(t1)*sin(t4)+ay*(sin(t1)*cos(t23)*cos(t4)-cos(t1)*sin(t4)-

温馨提示

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

评论

0/150

提交评论