三自由度机械手运动学的研究 下载本文

【摘 要】机械手的运动学分析是研究的热门话题,通过获得机械手末端装置在空间中的姿态与位置的方法,对于机械手的设计和控制极为重要。本文通过建立一种简易设计机械手的三维模型,简单介绍了d-h方法并对该法进行了简便运算方法的分析,再结合要设计的机械手模型确定了d-h参数后,通过对机械手关节处的特征矩阵进行求解机械手运动学的正解运算,最终得到了机械手末端的姿态,并结合实际情况对末端运动坐标进行了验证。经验证,所确定的运动函数完全符合设计的需求,对现实中机械手的生产、控制、研发等提供了可靠的理论依据。

【关键词】机械手;机器人;自由度;d-h法;正运算。 research of imaging system based on stm mcu (1.olleg jilin province design and research institute petrochemical engineering,changchun jilin,130022,china;

2.college of mechanical and electrical engineering, changchun university of science and technology, changchun jilin,130022,china) 0 引言

使用机械手对工件进行搬运,目前已经得到了大范围的推广,因此研究机器手的运动,从而更好的设计和控制机器手也十分重要。机器人运动学主要是来研究机器关节与机器人各刚体之间的运动关系。本文采用三自由度机械手,建立其在运动中运动的模型,通过d-h方法,以及机械手3关节的卡迪尔坐标的确立,并根据其关节处的特征矩阵进行运算求得正解,从而得到机器手的末端姿态。 1 机械手的简述

机械手也被称为自动手能模仿人手和臂的某些动作功能,用以按固定程序抓取、搬运物件或操作工具的自动操作装置。它可代替人的繁重劳动以实现生产的机械化和自动化,能在有害环境下操作以保护人身安全,因而广泛应用于机械制造、冶金、电子、轻工和原子能等部门。随着工业机械化和自动化的发展以及气动技术自身的一些优点,机械手已经广泛应用在生产自动化的各个行业。 1.1 机械手的组成 机械手主要由手部、运动机构和控制系统三大部分组成。手部是用来抓持工件(或工具)的部件,根据被抓持物件的形状、尺寸、重量、材料和作业要求而有多种结构形式,如夹持型、托持型和吸附型等。运动机构,使手部完成各种转动(摆动)、移动或复合运动来实现规定的动作,改变被抓持物件的位置和姿势。运动机构的升降、伸缩、旋转等独立运动方式,称为机械手的自由度。自由度越多,机械手的灵活性越大,通用性越广,其结构也越复杂。一般专用机械手有2~3个自由度。 1.2 机械手的分类

机械手的种类,按驱动方式可分为液压式、气动式、电动式、机械式机械手;按适用范围可分为专用机械手和通用机械手两种;按运动轨迹控制方式可分为点位控制和连续轨迹控制机械手等。机械手一般分为三类:第一类是不需要人工操作的通用机械手。它是一种独立的不附属于某一主机的装置。它可以根据任务的需要编制程序,以完成各项规定的操作。它的特点是具备普通机械的性能之外,还具备通用机械、记忆智能的三元机械。第二类是需要人工才做的,称为操作机。它起源于原子、军事工业,先是通过操作机来完成特定的作业,后来发展到用无线电讯号操作机来进行探测月球等。工业中采用的锻造操作机也属于这一范畴。第三类是用专用机械手,主要附属于自动机床或自动线上,用以解决机床上下料和工件送。这种机械手在国外称为“mechanical hand”,它是为主机服务的,由主机驱动;除少数以外,工作程序一般是固定的,因此是专用的。在国外,目前主要是搞第一类通用机械手,

国外称为机器人。 图1 三自由度通用机械手

图1所示的机械手是本文的研究对象,他是采用电机、丝杠、导轨为驱动机构的上述的第一类机械手,主要应用于产线工件夹取,该机械手结构简单,使用普遍,具有良好的通用性,因此采用该机械手来进行简单的运动学分析,使得学者通俗易懂,计算的工作量减少,更好的掌握运动学的运算方法。 2 运动模型的建立

2.1 简介机器人正运动学的d-h表示法 denavit-hartenberg(d-h)模型表示了对机器人连杆和关节进行建模的一种非常简单的方法,可用于任何机器人构型。具体方法如下:假设机器人由一系列关节和连杆组成。这些关节可能是滑动(线性)的或旋转(转动)的,它们可以按任意的顺序放置并处于任意的平面。连杆也可以是任意的长度(包括零),它可能被弯曲或扭曲,也可能位于任意平面上。所以任何一组关节和连杆都可以构成一个我们想要建模和表示的机器人。为此,需要给每个关节指定一个参考坐标系,然后,确定从一个关节到下一个关节(一个坐标系到下一个坐标系)来进行变换的步骤。如果将从基座到第一个关节,再从第一个关节到第二个关节直至到最后一个关节的所有变换结合起来,就得到了机器人的总变换矩阵。在下一节,将根据d-h表示法确定一个一般步骤来为每个关节指定参考坐标系,然后确定如何实现任意两个相邻坐标系之间的变换,最后写出机器手的总变换矩阵。 2.2 运动模型建立方法

用d-h表示法对机器人建模,所要做的第一件事是为每个关节指定一个本地的参考坐标系。因此,对于每个关节,都必须指定一个z轴和x轴,通常并不需要指定y轴,因为y轴总是垂直于x轴和z轴的。此外,d-h表示法根本就不用y轴。以下是给每个关节指定本地参考坐标系的步骤:

1)用z轴表示所有关节。如果关节是旋转的,z轴位于按右手规则旋转的方向。如果关节是滑动的,z轴为沿直线运动的方向。在每一种情况下,关节n处的z轴(以及该关节的本地参考坐标系)的下标为n-1。例如,表示关节n+1的z轴是zn。这些简单规则可使我们很快地定义出所有关节的z轴。对于旋转关节,绕z轴的旋转(θ角)是关节变量。对于滑动关节,沿z轴的连杆长度d是关节变量。

2)如图2所示,通常关节不一定平行或相交。因此,通常z轴是斜线,但总有一条距离最短的公垂线,它正交于任意两条斜线。通常在公垂线方向上定义本地参考坐标系的x轴。所以如果an表示zn-1与zn之间的公垂线,则xn的方向将沿an。同样,在zn与zn+1之间的公垂线为an+1,xn+1的方向将沿an+1。注意相邻关节之间的公垂线不一定相交或共线,因此,两个相邻坐标系原点的位置也可能不在同一个位置。根据上面介绍的知识并考虑下面例外的特殊情况,可以为所有的关节定义坐标系。

3)如果两个关节的z轴平行,那么它们之间就有无数条公垂线。这时可挑选与前一关节的公垂线共线的一条公垂线,这样做就可以简化模型。

4)如果两个相邻关节的z轴是相交的,那么它们之间就没有公垂线(或者说公垂线距离为零)。这时可将垂直于两条轴线构成的平面的直线定义为x轴。也就是说,其公垂线是垂直于包含了两条z轴的平面的直线,它也相当于选取两条z轴的叉积方向作为x轴。这也会使模型得以简化。如图2: (a)

(b) (c) (d) (e) (f) (g)

图2 通用关节组合的d-h表示法

在图2中,θ角表示绕z轴的旋转角,d表示在z轴上两条相邻的公垂线之间的距离,a

表示每一条公垂线的长度(也叫关节偏移量),角α表示两个相邻的z轴之间的角度(也叫关节扭转)。通常,只有θ和d是关节变量。

坐标建立以后,需要进行坐标的变换,得到最终机械手末端的运动方式。下面结合图2来介绍坐标系间的变换,即将一个参考坐标系变换到下一个参考坐标系。假设现在位于本地坐标系xn―zn,那么通过以下四步标准运动即可到达下一个本地坐标系xn+1―zn+1。 1)绕zn轴旋转θn+1(如图2.2(a)与(b)所示),它使得xn和xn+1互相平行,因为an和an+1都是垂直于zn轴的,因此绕zn轴旋转θn+1使它们平行(并且共面)。 2)沿zn轴平移dn+1距离,使得xn和xn+1共线(如图2.2(c)所示)。因为xn和xn+1已经平行并且垂直于zn,沿着zn移动则可使它们互相重叠在一起。 3)沿xn轴平移an+1的距离,使得xn和xn+1的原点重合(如图2.2(d)和(e)所示)。这是两个参考坐标系的原点处在同一位置。

4)将zn轴绕xn+1轴旋转αn+1,使得zn轴与zn+1轴对准(如图2.2(f)所示)。这时坐标系n和n+1完全相同(如图2.2(g)所示)。至此,我们成功的从一个坐标系变换到了下一个坐标系。

在n+1和n+2坐标系间严格地按照同样的四个运动顺序可以将一个坐标变换到下一个坐标系。如有必要,可以重复以上步骤,就可以实现一系列相邻坐标系之间的变换。从参考坐标系开始,我们可以将其转换到机器人的基座,然后到第一个关节,第二个关节??,直至末端执行器。这里比较好的一点是,在任何两个坐标系之间的变换均可采用与前面相同的运动步骤。

3 机械手运动学正解

通过上一节的介绍,结合实际中的机械手,演变出了1个3自由度机械手运动学分析的问题,通过合理的运动分析和运动学正问题的求解,首先我们将这个3自由度机械手的坐标建立起来。如图3:

图3 3维机械手d-h组坐标系的建立

坐标系建立以后,需要对d-h参数进行分析后建立d-h参数表,其中: ai―沿xi轴,zi-1轴与xi轴交点到oi的距离;

αi―绕xi轴,由zi-1转向zi; di―沿zi-1轴,zi-1轴和xi交点至oi-1坐标系原点的距离;

θi―绕zi-1轴,由xi-1转向xi。 表1 3自由度机械手的d-h参数

结合表1中的参数值带入d-h变化矩阵的一般表达式(1): ■(1)

可得各个关节的变换矩阵: ■(2) ■(3) ■(4)

相邻坐标间的齐次变换矩阵共有3个,即:0a1,1a2,2a3,其中:0a1为{1}向基础坐标系{0}的变换矩阵;1a2为{1}向基础坐标系{0}的变换矩阵;2a3为{1}向基础坐标系{0}的变换矩阵。机器手爪坐标系相对于基础坐标系的变换矩阵由公式: 0ti=0a1*1a2*??*i-2ai-1*i-1ai(5) 所以:0t3=0a1*1a2*2a3= ■(6)

已知末端机械手爪在自身坐标系中的位置为p=[0,0,-100,1]t, 则由公式可得基于起始坐标系中的相对位置p’=p*0t3=[-100+200,0,100,1]t这样就得到了末端相对于极坐