机器人逆运动学求解的可视化算法
基于单目视觉的机器人逆运动学分析.
邮局订阅号:82-946360元/年技术创新机器人技术《PLC 技术应用200例》您的论文得到两院院士关注1引言机器人视觉是智能机器人的关键技术之一,对机器人的智能化起着决定性的作用。
目前,许多视觉伺服控制系统采用基于位置的控制方式,当运动目标的轨迹易于用直角坐标表达时多采用这种控制方式。
但是该控制方式对三维物点与二维像点之间的对应关系十分敏感。
因此,建立摄像机图像像素位置与场景点位置之间的关系是机器人视觉研究的基本问题和实现前提。
机器人逆运动学问题就是已知机器人的手爪位姿求解各关节变量的值。
它是机器人轨迹规划和运动控制的关键环节,也是机器人研究的热点。
本文以实验室KDL-600机器人为实验对象,运用数学建模方法确定从图像到实际工作空间的映射关系,从而求解出各关节角变量的值。
2数学基础2.1机器人位姿描述文献中采用位置矢量描述点的位置,而用旋转矩阵描述物体的方位。
要完全描述刚体B 在空间的位姿(位置和姿态,通常将物体B 与某一坐标系{B}相固接。
{B}的坐标原点一般选在物体B 的特征点上,如质心等。
相对参考坐标系{B},坐标系{B}的原点位置和坐标轴的方位分别由位置矢量和旋转矩阵描述。
这样刚体B 的位姿可由坐标系{B}来描述,即有{B}={}。
2.2齐次坐标变换对于任意一点在两坐标系{A}和{B}中的描述和具有以下变换关系,此变换式对于点而言是非齐次的,但是可以表示成等价的齐次变换形式,其中,4×1的列矢量表示三维空间的点,称为点的齐次坐标,仍然记为和。
可把上式写成矩阵形式,其中表示齐次变换矩阵,它综合地表示了齐次变换和旋转变换。
2.3变换方程必须建立机器人各连杆之间,机器人与周围环境之间的运动关系,用于描述机器人的操作。
在图1所示的有向变换图中,{B}代表基坐标系,{T}代表工具系,{S}代表工作站系,{G}代表目标系,它们之间的位姿关系可用相应的齐次变换来描述:表示工作站系{S}相对于基坐标系{B}的位姿;表示目标系{G}相对于{S}的位姿;表示工具系{T}相对于基坐标系{B}的位姿。
机器人运动学逆运动数值法
机器人运动学逆运动数值法咱说这机器人运动学逆运动数值法啊,这可不是个简单事儿。
我就见过好些个机器人,那运动学逆运动啊,参差不齐的。
就像我们那实验室,有个小白,看着精精神神一小家伙,关节总是灵活得一丝不苟,传感器亮晶晶的,透着股机灵劲儿。
可一开始啊,它的逆运动算法真不咋行,动作毛毛躁躁的。
我就寻思着,得想个法子提升提升这逆运动算法。
首先呢,数值方法是必不可少的。
我就把大家都召集起来,说:“咱都得学习啊,就像那鸟,想要飞得高,还得练练翅膀不是?”我站在前面,看着他们或疑惑或期待的眼神。
这数值方法可得丰富,不能光讲那些干巴巴的理论。
我就找了那些有实战经验的人来分享,讲他们是怎么一步一步克服困难的。
我记得有一回,请来的老王,那满脸的皱纹都像是岁月的故事书。
老王站在那儿,操着一口带着乡音的普通话就开始讲:“咱这逆运动啊,就跟种地似的,你得细心,每一个环节都不能马虎。
我刚开始研究的时候,比你们还傻呢,啥都不懂,看着那些方程就像看外星玩意儿。
”大家听着都笑了起来,这一笑啊,气氛就轻松多了。
除了数值方法,实践也重要啊。
我就跟领导说:“咱得给机器人机会去试错,就像孩子学走路,哪有不摔跤就学会的?”领导一开始还不太乐意,皱着眉头说:“这要是出了错,损失可不小。
”我就笑着跟他说:“领导啊,你看那下棋的,哪有光看不练就能成高手的?咱得有点长远眼光。
”领导被我这么一说,也觉得有点道理。
于是我们就开始给机器人安排一些有挑战性的任务。
这过程中啊,有的机器人就犯愁了。
像小黑,平时话不多,一遇到难题就更沉默了,低着头,传感器都快冒烟了。
我就走到它身边,拍拍它的机壳说:“小黑啊,别怕,这就跟爬山似的,看着高,一步一步来总能到顶的。
”然后我就跟它一起分析问题,给它出主意。
这逆运动数值法提升啊,还得有点激励措施。
光让机器人干活,没点好处谁乐意啊?我就跟财务那边商量,设了个奖励机制。
每个月要是谁在逆运动算法方面有明显进步,就给它发个小奖励。
机械臂运动学逆解(Analyticalsolution)
机械臂运动学逆解(Analyticalsolution) 计算机器⼈运动学逆解⾸先要考虑可解性(solvability),即考虑⽆解、多解等情况。
在机器⼈⼯作空间外的⽬标点显然是⽆解的。
对于多解的情况从下⾯的例⼦可以看出平⾯⼆杆机械臂(两个关节可以360°旋转)在⼯作空间内存在两个解: 如果逆运动学有多个解,那么控制程序在运⾏时就必须选择其中⼀个解,然后发给驱动器驱动机器⼈关节旋转或平移。
如何选择合适的解有许多不同的准则,其中⼀种⽐较合理的⽅法就是选择“最近”的解(the closest solution)。
如下图所⽰,如果机器⼈在A点,并期望运动到B点,合理的解是关节运动量最⼩的那⼀个(A good choice would be the solution that minimizes the amount that each joint is required to move)。
因此在不存在障碍物的情况下,上⾯的虚线构型会被选为逆解。
在计算逆解时我们可以考虑将当前位置作为输⼊参数,这样我们就可以选择关节空间中离当前位置最近的解。
这个“最近”有多种定义⽅式。
⽐如对于典型的6⾃由度关节型机器⼈来说,其前三个关节较⼤,后三个关节较⼩。
因此在定义关节空间内的距离远近时要考虑给不同关节赋予不同的权重,⽐如前三个关节设置⼤权重,后三个关节设置⼩权重。
那么在选择解的时候会优先考虑移动较⼩的关节⽽⾮移动⼤关节。
⽽当存在障碍物时,“最近”的解的运动路径会与其发⽣碰撞,这时就要选择另⼀个运动距离较远的解("farther" solution)。
因此在考虑碰撞、路径规划等问题时我们需要计算出可能存在的全部解。
逆解个数取决于机器⼈关节数⽬(the number of joints)、机器⼈的构型(link parameters)以及关节运动范围(the allowable ranges of motion of the joints)。
第四章机器人学逆运动学方程ppt课件
这里 其中
f11 = C1 x+S1 y
f12 = - z f13 = - S1 x+C1 y
(4.10) (4.11) (4.12)
x =[ nx ox ax px ]T, y =[ ny oy ay py ]T, z =[ nz oz az pz ]T 由第三章得到的斯坦福机械手运动学方程式(3.48)为
同样比较式(4.48)等号两边矩阵的第2行第1列和第2行第2列元素可知
sin f12 (n)
(4.64)
cos f12 (o)
(4.65)
或
由此可得
sin sin nx cos ny cos sin ox cos oy
tan
1
sin sin
n o
x x
cos ny cos oy
d3 S2 C1 px S1 py C2 pz
(4.24) (4.25)
4
tan 1
C2
S1ax C1ay C1ax S1ay S2az
(4.26)
5
tan 1
C4
C2
C1ax
S1ay S2az S2 C1ax S1ay
S4 S1ax C2az
C1ay
由式(4.36)和式(4.43)可解出Ψ角
cos1 nz
sin
(4.43) (4.44) (4.45)
这里需要指出的是,在我们采用式(4.43)~式(4.45) 来计算θ、φ、Ψ时都是采用反余弦函数,而且式(4.43)和 式(4.45)的分母为sinθ,这会带来如下问题:
1)由于绝对值相同的正负角度的余弦相等,如cosθ= cos(-θ),因此不能确定反余弦的结果是在那个象限;
由于机械手各关节变量的相互耦合,后面计算的关节变量与前 面的关节变量有关,因此当前面关节变量的计算结果发生变化 时,后面关节变量计算的结果也会发生变化,所以逆运动方程 的解不是唯一的,我们应该根据机械手的组合形态和各关节的 运动范围,经过多次反覆计算,从中选择一组合理解。由此可 见,求解机械手的逆运动方程是一个十分复杂的过程。
工业机器人运动学逆解的几何求解方法
工业机器人运动学逆解的几何求解方法黄晨华【摘要】工业机器人运动学逆解求解方法的不同,其计算量也有很大的差别。
常用的代数法求逆解存在计算繁琐,不易理解等缺点,几何法求逆解具有直观、计算量小的特点。
以5自由度工业机器人为算例,详细介绍了几何法求逆解的过程,总结出了几何法求逆解的一般步骤:首先对机器人的结构进行分析,确定影响机器人末端操作器位置的相关关节,按机器人的结构直接求出各相关关节的逆解,然后利用所求的位置关节的逆解,通过简单的矩阵运算,可求得剩余关节的逆解。
用仿真的方法验证了所求逆解的正确性:假设机器人各关节的转动不受限制,首先让各关节随机转过一定的角度,用机器人正运动学方程,获得机器人任意位姿,然后以此位姿为已知,用所求的逆解求相应的各关节所转过的角度,从而验证了方法的正确性。
【期刊名称】《制造业自动化》【年(卷),期】2014(000)015【总页数】4页(P109-112)【关键词】工业机器人;运动学方程;逆运动学;几何法【作者】黄晨华【作者单位】韶关学院物理与机电工程学院,韶关512005【正文语种】中文【中图分类】TP242.20 引言工业机器人的运动学是工业机器人控制与轨迹规划的基础,其内容包括正运动学和逆运动学。
当给定机器人所有关节转过的角度时,可以通过机器人的正动学方程来确定其末端操作器的位解;当已知机器人末端操作器的位置时,则可根据运行学逆解获得各关节需转过后角度。
机器人运动学建模的标准方法,即D-H建模,可以很方便地得到机器人的正运动学方程,而要获得机器人的逆运动学方程,则难度较大,求解的方法可以分成两大类:数值解和封闭解。
Tsai[2]等研究了通用的6自由度和5自由度的机械臂的数值解,Nakamura[3]等研究了适用了机器人控制的带有奇点鲁棒控制的数值逆解,Baker[4]等研究了冗余机械臂的数值逆解,数值解的最大不足就是计算时比较耗时,对系统造成较大的负担。
封闭解是基于解析形式的解法,其又可分为代数法和几何法,用代数法求逆解在很多机器人经典教材和文献中都有详细的论述[5~7],在此不作具体讨论,刘达[8]等为了使机器人获得更好的实时性,提出了一种解析和数值相结合的机器人逆解算法,陈庆诚[9]等提出基于旋量理论的逆运动学子问题求解算法。
机器人运动学反解-完整PPT课件
反解就是已知手爪位姿求关节变量。
正解
nx ox ax px
04T
ny
nz 0
oy oz 0
ay az 0
p
y
pz 1
01T (1) 21T (2 ) 23T (3 ) 34T
反解
反变换法是一种把关节变量分离出来从而求解的方法,也称 代数法。
c1 0 s1 0
01T
4.1.4 运动学反解的有关问题
一、解的存在性和工作空间 容易求得
x y
l1c1 l1s1
l2c12 l2s12
两自由度平面机械手
通常把反解存在的区域(如圆环)称为该机器人的工作空间。 严格地讲,工作空间分为两种:(1)灵活(工作)空间,是指机器 人手爪能以任意方位到达的目标点集合; (2)可达(工作)空间, 是指机器人手爪至少能以一个方位到达的目标点集合。
式中正,负号对应着θ3 的两种可能解。
最后求θ2: 将 pz a3s23 d4c23 a2s2 展开并整理得:
pz (a3c3 a2 d4s3)s2 (a3s3 d4c3 )c2
同样再利用三角代换容易求得θ2的四种可能解:
2 A tan 2( pz ,
k
2 x
k
2 y
pz2
)
d
c2 2
4 23
2a3a2 s23 s2
2d4a2c23s2
2a3d 4 s23c23
合并同类项并整理得:
2a2a3c3 2a2d4s3 px2 py2 pz2 d22 a32 a22 d42
令
k
( px2
py2
pz2
a22
a32
d22
机器人运动学正解逆解课件
在机器人力控制中,需要知道每个关节的角度变化来调整 机器人的姿态和力矩。逆解可以用于求解每个关节的角度 变化,从而调整机器人的姿态和力矩。
机器人定位
在机器人定位中,需要知道每个关节的角度变化来调整机 器人的位置和姿态。逆解可以用于求解每个关节的角度变 化,从而调整机器人的位置和姿态。
04
实现复杂运动轨迹
利用运动学正解与逆解,可以规划出 复杂的运动轨迹,满足各种应用需求 。
02
机器人运动学正解
正解的基本概念
正解是指机器人末端执行器从某一初 始位置和姿态到达目标位置和姿态所 需经过的关节角度值。
正解是机器人运动学中的基本问题, 是实现机器人精确控制和自主导航的 基础。
正解的求解方法
逆解的求解方法
01
代数法
通过建立机器人关节角度与目标点坐标之间的方程组,利用数学软件求
解方程组得到关节角度。这种方法适用于简单的机器人结构,但对于复
杂机器人结构求解过程可能较为繁琐。
02
数值法
通过迭代或搜索的方法,不断逼近目标点坐标,最终得到满足要求的关
节角度。这种方法适用于复杂机器人结构,但求解时间较长且可能存在
机器人运动学正解逆解课件
目 录
• 机器人运动学概述 • 机器人运动学正解 • 机器人运动学逆解 • 机器人运动学正逆解的对比与联系 • 机器人运动学正逆解的实例分析
01
机器人运动学概述
定义与分类
定义
机器人运动学是研究机器人末端 执行器位姿与关节变量之间的关 系的学科。
分类
根据机器人的结构和运动特性, 可以分为串联机器人和并联机器 人。
局部最优解。
03
解析法
通过几何学和代数学的方法,直接求解关节角度与目标点坐标之间的关
机器人运动学逆解及奇异和多解的处理
机器人运动学逆解及奇异和 多解的处理
叶上 高,刘 电霆
( 桂 林 理 工大 学机 械 与控 制工程 学 院 ,广西桂 林 5 4 1 0 0 4 )
摘要 :针对后 3个关节轴线相交于一点 的 6 R工业机 器人 ,提 出一种有 别于传统 方法 的位姿分 离逆解算 法 ,对逆解 涉 及 的奇异和 多解处理 也做 了详 细分析 ,并仿真验证了该算法的正确性 。该算法 完全避免 了矩 阵求逆 的运算 ,因此 比一般 的
2 0 1 4年 2月
.
机床与液压
M ACHI NE T OOL & HYDRAUL I CS
F e b . 2 0 1 4
Vo 1 . 4 2 No . 3
第4 2 卷第3 期
D OI :1 0 . 3 9 6 9 / j . i s s n . 1 0 0 1—3 8 8 1 . 2 0 1 4 . 0 3 . 0 0 8
YE S h a n g g a o, LI U Di a n t i n g
( C o l l e g e o f Me c h a n i c a l a n d C o n t r o l E n g i n e e r i n g ,G u i l i n U n i v e r s i t y o f T e c h n o l o g y ,
及 的奇异 和 多解 问题 的处 理也 进行 了详 细 分析 。最 后 ,用 A D A M S对该 逆解算 法 的正 确性进行 了仿真 验
证。
1 运 动 学正解
I R B 2 6 0 0为 6 R机 构 ,采用 D — H方法 ,建 立连
Ke y wo r d s:I n d u s t ri a l r o b o t ;I n v e r s e k i n e ma t i c s ;Mu l t i — s o l u t i o n s ;S i n g u l a r i t y
02-课件:3.3 机器人逆运动学
从手部位姿到关节变量—运动学逆问题操作机的手臂解r -θ对于 操作机,其逆变换就是由表示手部位姿的齐次矩阵求操作机的两个关节变量。
r -θ由手坐标系到基座坐标系的齐次矩阵可以表示为21A A T H B =⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡1000100001000011000010000cos sin 00sin cos 1000r P a o n P a o n P a o n z zzz y y y y x x x x θθθθ令上面矩阵的对应元素分别相等 ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡10-=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡θθθθθθsin cos 010000cos sin 00sin cos 1001000000r r P P o o n n y x y x yx cos x r P θ=sin yr P θ=tan yx P P θ=arctan yxP P θ=所以⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡--1000010000cos sin 00sin cos 1000010000cos sin 00sin cos 1θθθθθθθθ令其中的对应元素分别相等,则可以得到cos sin x y r P P θθ=+⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-10000100001000110010000001000010000cos sin 00sin cos r P P o o n n y x y x y x θθθθ令关节多了则不然!其实问题很简单P xP yrθθcos xr P θ=sin y r P θ=正解:cos sin x y r P P θθ=+arctan y x P P θ=逆解:手部姿态角的确定手部的姿态可以用绕x ,y ,z 轴依次转动侧摆,俯仰和横滚获得。
),(),(),(1x y OH z x Rot y Rot T z Rot ΦΦ=Φ-),(),(),(),,(x y z z y x OH x Rot y Rot z Rot RPY T Φ⋅Φ⋅Φ=ΦΦΦ=等式左式与右式对应元素相等,最终可得()⎪⎩⎪⎨⎧=ΦΦ+Φ-=ΦΦ-ΦΦ-Φ=Φx y zz y z x z y z x z y z y z x x n n n n n o o a a /arctan )]sin cos /(arctan[)]sin cos /()cos sin arctan[(6关节操作机的手臂解6关节操作机位置运动学逆问题就是由描述手部位姿的齐次矩阵BTH 求解构成手臂的六个关节角 、 、 、 、 、 ,这一逆问题又称为手臂解。
机械手的运动学逆问题求解方法研究
机械手的运动学逆问题求解方法研究引言:机械手是一种广泛应用于工业生产、物流等领域的机械设备。
机械手能够在指定的空间内进行精确的运动和操作,大大提高了生产效率和产品质量。
然而,机械手的运动学逆问题求解一直是一个具有挑战性的问题。
本文将探讨机械手的运动学逆问题求解方法,以及在实际应用中的研究进展和应用前景。
一、机械手的运动学模型机械手的运动学模型是描述机械手运动规律的数学模型。
一般来说,机械手的运动学模型可以分为正解和逆解两个问题。
正解问题是已知机械手的关节角度,求解末端执行器的位置和姿态。
而逆解问题则是已知末端执行器的位置和姿态,求解机械手的关节角度。
在机械手的运动学模型中,主要涉及到欧拉角、旋转矩阵和转子角等概念。
通过这些概念的运用,可以建立机械手的正逆解模型,并提供了解决机械手运动学逆问题的可能性。
二、机械手运动学逆问题的求解方法在实际应用中,机械手的运动学逆问题求解方法主要有以下几种:1. 解析法:解析法是通过手工推导和计算,直接求解机械手的关节角度。
这种方法的优点是计算速度快,而缺点是只适用于简单的机械手模型,对于复杂的机械手模型难以求解。
2. 迭代法:迭代法是利用数值计算的方法逐步逼近解。
其中最常用的方法是牛顿迭代法和雅可比迭代法。
这两种方法通过迭代计算,不断逼近机械手的关节角度,直到满足给定的末端执行器位置和姿态要求。
3. 优化法:优化法是通过寻找最优解的方法,求解机械手的关节角度。
常用的优化算法有遗传算法、粒子群算法等。
这些优化算法通过搜索操作,不断寻找最优解,从而求解机械手的关节角度。
以上三种方法在机械手的运动学逆问题求解中有各自的应用场景和优缺点。
在实际应用中,根据机械手的特点和需求,选择合适的方法进行求解是非常重要的。
三、机械手运动学逆问题求解的研究进展随着科学技术的不断发展,机械手运动学逆问题求解的研究也取得了许多重要的进展。
1. 传统算法的改进:传统的迭代法和优化法在机械手运动学逆问题求解中存在一些限制,如求解速度慢、计算精度不高等。
利用poe公式法求rrrp机器人的运动学反解
Poe公式法是一种用于机器人运动学反解的计算方法,它能够通过机器人的末端执行器的位置和姿态信息,来求解机器人各关节的位置和姿态。
在这篇文章中,我们将利用Poe公式法来求解rrrp机器人的运动学反解。
一、rrrp机器人运动学模型rrrp机器人是一种具有四个自由度的并联机器人,它由四个旋转关节组成,末端执行器可以在三维空间内进行平移和旋转。
rrrp机器人的运动学模型可以用如下的方式表示:1. 关节变量表示:设rrrp机器人的四个旋转关节的关节变量分别为θ1、θ2、θ3和θ4。
2. 链参数表示:设rrrp机器人的四个旋转关节之间的信息长度分别为l1、l2、l3和l4。
3. 坐标系表示:设rrrp机器人的末端执行器的坐标系为{e},机器人基座的坐标系为{b},四个旋转关节的坐标系分别为{1}、{2}、{3}和{4}。
4. 位姿表示:设rrrp机器人的末端执行器在机器人基座坐标系{b}中的位姿为Tbe,其中包括平移矢量p和旋转矩阵R。
二、Poe公式法求解rrrp机器人的运动学反解Poe公式法是一种基于扭矩模型和李代数的机器人运动学反解方法,它能够通过机器人末端执行器的位姿信息来求解机器人各关节的位置和姿态。
下面,我们将利用Poe公式法来求解rrrp机器人的运动学反解。
1. Poe公式法的基本原理Poe公式法的基本原理是将机器人的运动学模型表示为扭矩模型,通过扭矩模型的求解来得到机器人各关节的位置和姿态。
对于rrrp机器人而言,其扭矩模型可以表示为:τ = J(θ)F其中,τ表示机器人的关节扭矩,J(θ)表示机器人的雅可比矩阵,F表示机器人的末端执行器的力和力矩。
2. rrrp机器人的雅可比矩阵对于rrrp机器人而言,其雅可比矩阵可以通过链参数和关节变量的求解得到。
假设rrrp机器人的雅可比矩阵表示为J(θ),其中包括位置雅可比矩阵和姿态雅可比矩阵。
位置雅可比矩阵用于求解机器人的关节位置,姿态雅可比矩阵用于求解机器人的关节姿态。
6轴机器人逆运动学实时算法 例子
6轴机器人逆运动学实时算法例子6轴机器人的逆运动学问题是指给定末端执行器的目标位置和姿态,求解使机器人达到该位置和姿态的关节角度。
这是一个复杂的问题,因为机器人的关节角度需要满足许多约束条件,例如关节角度限制、奇异位形等。
以下是一个简单的6轴机器人逆运动学的例子,假设机器人的连杆长度和关节角度已知,可以使用Denavit-Hartenberg (D-H) 参数化方法来表示机器人的关节角度。
假设机器人的连杆长度分别为 a1, a2, a3, a4, a5, a6,关节角度分别为theta1, theta2, theta3, theta4, theta5, theta6,末端执行器的目标位置为(x, y, z),目标姿态为 (roll, pitch, yaw),可以使用以下公式求解关节角度:1. 计算末端执行器的位置:x = a1cos(theta1) + a2cos(theta1+theta2) +a3cos(theta1+theta2+theta3) + a4cos(theta1+theta2+theta3+theta4) + a5cos(theta1+theta2+theta3+theta4+theta5) +a6cos(theta1+theta2+theta3+theta4+theta5+theta6)y = a1sin(theta1) + a2sin(theta1+theta2) +a3sin(theta1+theta2+theta3) + a4sin(theta1+theta2+theta3+theta4)+ a5sin(theta1+theta2+theta3+theta4+theta5) +a6sin(theta1+theta2+theta3+theta4+theta5+theta6)z = a5(sin(theta5)cos(theta4) - sin(theta4)cos(theta5)cos(theta3)) + a6(sin(theta6)cos(theta5) - sin(theta5)cos(theta6)cos(theta4))2. 计算末端执行器的姿态:roll = atan2(sin(roll), cos(roll)(cos(pitch)cos(yaw) - sin(pitch)sin(yaw))) pitch = atan2(-sin(pitch)cos(roll), cos(pitch)sin(yaw)sin(roll) -sin(pitch)cos(yaw))yaw = atan2(-sin(yaw)cos(pitch), cos(yaw)sin(pitch))3. 求解关节角度:使用迭代算法(例如牛顿-拉夫逊法)求解以下方程组:theta1' = rolltheta2' = pitch - atan2(a1sin(roll), a1cos(roll))theta3' = yaw - atan2(-a2sin(roll), a2cos(roll))theta4' = atan2(-a3(sin(pitch)cos(yaw) - sin(yaw)cos(pitch)),a3(cos(pitch)cos(yaw) - sin(pitch)sin(yaw)))theta5' = atan2(-a4(sin(yaw)cos(pitch) - sin(pitch)cos(yaw)),a4(cos(yaw)sin(pitch) - sin(pitch)cos(yaw)))theta6' = atan2(-a5(a6/(a5+a6))(sin(pitch)cos(yaw) -sin(yaw)cos(pitch)), (a5/(a5+a6))(cos(pitch)cos(yaw) -sin(pitch)sin(yaw)))注意,这是一个非常简化的例子,实际情况可能会更加复杂,需要考虑到许多其他的因素,例如关节角度限制、奇异位形、运动学误差等等。
3)机器人逆运动学实验
3)机器⼈逆运动学实验实验(3)机器⼈逆运动学实验⼀、实验⽬的:1)基于robotics机器⼈库构建机器⼈;2)对构建的机器⼈进⾏逆运动学分析;3)了解和熟悉机器⼈逆运动学的作⽤。
⼆、机器⼈连杆关系图:图1 机器⼈连杆关系图连杆变换矩阵:参数含义:三、基本函数介绍(1)2连杆机器⼈实例图2连杆机器⼈坐标系1)建⽴机器⼈DH参数表2)根据D-H参数创建机器⼈连杆对象3)根据连杆对象,建⽴机器⼈4)观测建⽴机器⼈的情况正运动学函数:1)正运动学函数的使⽤T=two_link.fkine([pi/4 pi/4])T = 0.0000 -1.0000 0 0.70711.0000 0.0000 0 1.70710 0 1.0000 00 0 0 1.00002)观测计算结果的情况,三维显⽰two_link.plot([pi/4 pi/4])3)逆运动学函数q=two_link.ikine(T,[0 0],[1 1 0 0 0 0])q =0.7854 0.7854 ikine 函数的参数说明:Q = R.ikine(T, Q0, M, OPTIONS)Q0为求解的初始值;M 为⾃由度数,也就是有运动关节,对应有关节的为1。
(2)对于六⾃由度机器⼈求解的逆解,以puma560为例。
1)函数ikine6s使⽤⽅法Q = R.ikine6s(T, CONFIG) 其中T 为机器⼈位姿矩阵。
CONFIG 为臂型'l' arm to the left (default) 'r' arm to the right 'u' elbow up (default) 'd' elbow down 'n' wrist not flipped (default)'f' wrist flipped (rotated by 180 deg)XYZ2)puma560实例>> mdl_puma560 >>qn qn =0 0.7854 3.1416 0 0.7854 0 >> T = p560.fkine(qn) T =-0.0000 0.0000 1.0000 0.5963 -0.0000 1.0000 -0.0000 -0.1501 -1.0000 -0.0000 -0.0000 -0.0144 0 0 0 1.0000 >>qi = p560.ikine6s(T) qi =2.6486 -3.9270 0.0940 2.5326 0.9743 0.3734>>qi = p560.ikine6s(T,’ru ’)qi = -0.0000 0.7854 3.1416 0.0000 0.7854 -0.0000 >>p560.plot(qi)XYZ六、实验内容(1)⽤机器⼈库建⽴下图的机器⼈,并且求解和显⽰下⾯⼏种情况讨论平⾯3⾃由度机器⼈的姿态逆运动学解。
基于matlab的6r机器人逆运动学求解分析
河北省科学院学报Journal of the Hebei Academy of Sciences Vol.37No.1 Mar202037120203文章编号:1001—9383(2020)01—0022—08基于MATLAB的6R机器人逆运动学求解分析孟凡刚】,曹东江2,尚江华3(1.泊头市海汇波纹管制造有限公司,河北泊头062150;2.庆安集团有限公司,西安710077;.石家庄诺通人力资源有限公司,河北石家庄050000)摘要:本文通过D-H方法建立6R机器人坐标模型,将机器人末端执行器位姿0T h逆解问题转化为末端腕部点位姿0T6的逆解问题,排除0T h中含常量d的多项式,大大简化了求运动学逆解的复杂度。
通过反变换法求得6R机器人逆解,提出以“最短行程+关节运动同向”为原则确定机器人最优逆解的方法,可以降低机器人运动能量消耗,同时减少关节运动换向,提高机器人运行稳定性和可靠性$利用MATLAB进行编程,设置6R机器人“关节加权系数”及“关节运动同向加权系数”,对上述运动学逆解求解及优化方法进行了验证,说明该分析方法是有效性的$关键词:6R机器人;逆运动学;反变换法;最短行程;关节运动同向中图分类号:U316.2文献标识码:AInverse kinematics analysis of6R robot based on MATLABMENG Fan-gang1,CAO Dong-jiang2,SHANG Jiang-hua3(1.Botou Haihui Bellows Manufacturing Co.,Ltd.,Botou Hebei062150,China;2.Qingan Group Co.,Ltd.,Xian Shaanxi710077,China;3.Shijiazhuang Notong Human Resourcss Co..Ltd.^Shijiazhuang Hebei050000,China)Abstract:The coordinate model of6R robot is established by the D-H method,the inverse solution problem of the robot end actuator pose0T h is transformed into the inverse solution problem of the end wrist point pose0T6,and polynomials with constant d6is eliminated,which greatlysimplifiesthecomplexityoftheinversekinematicssolution.Theinversesolutionof6R robotisobtainedbycountertransformation method,and the method of determining the optimal inverse solution of the robot based on the principle of"shortest distance+joint motion in the same direction"is proposed,which can reduce the energy consumption of the robot motion,educethejointmotion$eve$sing,andimp$ovethestabilityand$eliabilityofthe$obot operation.By programming with MATLAB,the"joint weighted coefficient"and"joint motion direction weighted coefficient"of6R robot are set,and the above inverse kinematics solution and optimization method are verified,which shows that the analysis method is effective. Keywords:6R robot;Inverse kinematics;Counter transformation method;Shortest distance;收稿日期=2019—12—10作者简介:孟凡刚(1975—),男,河北泊头人,助理工程师,研究方向:波纹管焊接及机器人机构设计.1孟凡刚等:基于MATLAB的6R机器人逆运动学求解分析23 Jointmotioninthe@amedirectiono引言机器人运动学分为正运动学和逆运动学两类问题,其中逆运动学问题一直是机器人学研究的重点,机器人逆运动学求解是根据给定的机器人行器空间位姿求解机器人的各个关'1(,是机器人进行轨迹规运动控制的前提和基础&一,国内外许多学者在这方面做的研究&机器人逆运动学求解主要方法有:解析法囚、几何法、数值迭代法囚及近现的神经网络法:4—5()基于旋论的四元素法「6—7(等&解析法和几何法运算,实时性好,但是只有在机器人结构条件Pieper准则得到其逆运动学封闭解&数值迭代法适用于6R机器人的大多数,但无法得到部解,而且迭代有不收敛的神经网络法法虽然在实际中有应用,但都存在模型复杂,计算,求解困难等特点&在实中的6R机器人,基本都满足Pieper准则条件,可以应用解析法快速求得运动学封闭逆解&由于机器人存在多组运动学逆解的,取一组解作为机器人控制需要的解,文献[9(中,求得机器人8组逆解,并采用“最短行程”原则选取一组解作为最优解,但是实用描述并不具体,针对这些问题本文应用反变换法(一种解析法)求得机器人8组逆解,并且采用“最短行程+关节运动同向”原则,设置“加权系数”合理优化确定最优逆解,降低机器人运动消耗,并关节运动换向,提高机器人运动的性性,并通过实例验证法的有效性&16R机器人运动学建模6R工业机器人机械本体结构主要有位置调整机构和姿态调整机构两部分组成,如图1所示。
基于平行机构的简便机器人运动学逆解算法
第18卷第2期纺织高校基础科学学报V o l .18,N o .2 2005年6月BASI C SC IENCES JOURNAL OF TEXT I L E UN IVERSIT IESJun .,2005 文章编号:100628341(2005)022*******基于平行机构的简便机器人运动学逆解算法汪成龙1,赵春翔2,金 京1,李 国1(1.西安工程科技学院机电工程学院,陕西西安710048;2.武警学院数学教研室,陕西西安710036)Ξ摘要:在机器人结构中,通过引入平行四边形机构,充分发挥其连杆的平移特性,可简化合并2平行回转轴关节的运动变换矩阵;当与另一正交回转关节组成基本运动单元时,能综合表示为一个等效变换矩阵.仅须2单元串联就能构造6回转关节机器人,且所推导的关节控制角公式简单,便于并行运算.经模拟试验表明:其逆解时间可缩减50%,运算精度提高80%.关键词:机器人;基准坐标;关节;运动学逆解问题;变换矩阵中图分类号:T P 242 文献标识码:A 一般类型的6回转关节机器人,能导出6个含关节控制量的高非线性代数方程,其位姿求解问题极具挑战性,直到20世纪80年代才获得32次多项式的封闭解[1].用多项式连续技术对方程进行数值求解,确定可能解不大于16个[2].虽然R aghavan 和Ro th 已基本解决了运动学逆解问题[3],但寻求更为安全、快速的求解方法一直不曾间断.问题的核心是由一组关节和连杆组成的机器人,其关节属复杂的广义自由度,尽管通过齐次变换矩阵可建立各关节与末端位姿间的关系,但空间变换的矩阵点积运算令关节控制量相互耦合,至今仍缺乏简单、有效的解决方案[2,3].经研究发现,若在机器人结构中引入平行机构,就能实现将多个变换矩阵并为一个,有效降低运动学逆解的阶数.当3个相邻回转关节能组合并等效为一个当量关节时,变换矩阵T =0T 11T 2…n -1T n 的n 值仅为传统算式的1 3.6关节机器人能基本满足多数工业用途.推导简单的由末端位姿直接求取关节控制量的公式,无论从理论还是实践都具有深远的意义.1 引入平行机构的回转关节特性分析当把机器人连杆换为平行四边形机构时,其运动特性会发生一定变化,具体分析如图1和表1所示.虽图1 由平行机构取代机器人连杆的原理简图然替换会增加结构的复杂性,但由于末端仅存在平移运动,使牵连坐标系uO v 内的运动能直接在回转关节坐标xOy 内描述,可减少一次绕z 轴的旋转变换.基于此特征,在任何机器人结构中进行连杆的平行机构代换,都将导致齐次变换矩阵的简化.表1 平行机构对牵连坐标系的影响特征分析末端坐标系控制角相对自由度运动轨迹连杆随回转关节转动Ω1圆平行四边形机构仅存在相对平移Ω1圆Ξ收稿日期:2005203204通讯作者:汪成龙(19662),男,四川省巴中县人,西安工程科技学院讲师,主要从事机构的自动分析与控制等方面的研究.E 2m ail :w angchenglong @ .图2 回转轴平行2关节的运动分析当相邻两关节的回转轴平行时,引入平行四边形机构如图2所示.用极坐标描述各位置矢量P (长度为R 、方位角取Ω),可抽象出连杆与末端间的位置几何关系.若已知末端矢量P (R ,Ω),虽然任取杆长R i 会增加设计的灵活性,但活动空间内部将产生空洞或重叠,并使逻辑分析与运算关系更为复杂.为简化运算,选结构参数R 1=R 2=L .经推导,有回转关节控制角为Κ=90°-0.5co s -1(R 2(2L 2)-1),Ω关节1=Ω±Κ,Ω关节2=Ω Κ.(1)因末端相对于基准坐标仅存在平移,能实现在半径为2L 的平面圆域内任意定位,只要给定位置矢量P (R ,Ω),就可求解两关节控制角.2 活动空间扩展与基本运动单元形成为将末端的活动空间扩展至三维,须增加一回转关节以变换定位方向,原理简图如图3所示.若设此运动链为机器人设计的基本运动单元,则末端至参考坐标系的变换矩阵可表示为图3 基本运动单元的结构几何描述T =co s Αsin Α0R co s Ωco s Α-sin Αco s Α0R co s Ωsin Α001R sin Ω0001.等效于将3个回转关节的位姿变换简化为1个,其运动学逆解难度被有效降低.当末端位姿给定时,绕z 轴的转角Α即为方位变换关节参数,而R 和Ω则可用于定位关节控制角的计算.一般在半径为2L 的球形域内具有两确定解以供选择,能用于规划路径或躲避障碍.由于单元内各关节功能明确,与末端位姿关系简单,若能将其模块化、标准化,则机器人结构设计时仅需进行简单的选择串联.图4 两运动单元的正交串联结构3 构造6回转关节机器人并推导逆解公式一般末端姿态控制至少需要2个方位角,但一个运动单元却仅能提供一个方位控制,因此单元串联成为必然.取正交方位以简化求解过程,构造图4所示的机器人运动链.其中A 运动单元的方位关节能绕坐标轴z 旋转,而串联B 运动单元的方位关节则可绕坐标轴v 旋转,允许末端具有任意姿态,即所设计的机器人运动链,其末端姿态仅由方位关节控制.若在基准坐标系内用角Α和Β表示,无须求解复杂的齐次矩阵,就能直接确定方位关节控制量.其关系为Η方位关节A =Α,Η方位关节B =Β.(2)设末端的基准坐标为P (x ,y ,z ),要更准确表达各要素间的几何关系,可择O x ’y ’z ’作分析研究的参照系,并对末端坐标进行变换,关系式为x ’=x co s Α+y sin Α,y ’=-x ’sin Α+y co s Α,z ’=Α.(3)若用图5描述其相应的空间位置关系,则在O x ’y ’z ’坐标系内,A 运动单元的位置矢量P A 处于x ’O z ’平面,可由与z ’轴间的夹角ΩA 和长度R A 表示;而B 运动单元在相对坐标系O uvw 内,具有方位角971第2期 基于平行机构的简便机器人运动学逆解算法图5 以矢量方式描述的位置几何关系R A sin ΩA +R B sin ΩB sin Β=x ’,R B co s ΩB =y ’,A co s ΩA +R B sin ΩB co s Β=z ’.(4)在运动单元B 的有效空间内选择合适的R B 时,(4)式可变形为ΩB =co s-1(y ’ R B ),R A =(x ’-R B sin ΩB sin Β)2+(z ’-R B sin ΩB co s Β)2,ΩA =co s -1((x ’-R B sin ΩB sin Β) (z ’-R B sin ΩB co s Β)),(5)显然,依据(R A ,ΩA )与(R B ,ΩB ),由(1)式能求解相串联2个运动单元内的4个定位关节控制角.由此可见,组合一定量的回转关节,并依据其独特的位姿控制功能封装为基本运动单元(文中仅讨论最典型的一类),会使设计构造机器人从简单的关节组合,变为选择串联标准化的运动单元模块.为构造分析更为复杂、灵活的系统奠定基础.具体应用时,该6回转关节机器人的求解步骤为:(1) 由末端控制姿态直接确定两串联运动单元的方位角Α和Β;(2) 在运动单元B 的有效活动空间内,选择合适的位置矢量长度R B ;(3) 依据末端位置坐标(x ,y ,z ),并考虑结构尺寸的影响,由(3),(5)式计算串联单元内,定位关节应实现的位置矢量,即R A ,R B ,ΩA ,ΩB ;(4) 将位置矢量(R i ,Ωi )代入(1)式,经并行计算能立即获得4定位关节控制角.4 应用特征分析由于变换矩阵T =0T 11T 2…n -1T n 为4×4阶,其中可用于关节量求解的表达式仅有12项,且其项数及阶数一般会随机器人关节数n 的增加而增加.因矩阵点积关系会急剧膨胀,并最终导致关节控制量难以求解.尽管人们尝试用各类方法(选择特殊的坐标系与几何参数,使用高效的逆解算法)进行化简,但至今仍缺乏更为简便的手段[4,5].引入平行四边形机构能充分发挥其连杆的平移特性,使关节变换矩阵的合并化简成为可能.目前,商业广泛应用的六关节串联机器人已有通用的运动学逆解公式,但仅当3相邻关节轴交于一点或平行时才有显式解[5].给定末端在基准坐标系内的位姿,就能求解各关节控制量并进行相应驱动,但所能达到的控制精度和响应速度却与逆解算法密切相关.以典型的斯坦福机器人为例,引入平行四边形机构时(变异型),一次位姿变换所需运算量与原型间存在明显差异,如表2所示.一般关节量逆解速度受算法选择与工作主频影响,且单次变换位姿所需的运算时间难以度量,故检测时可设置20s 定时器,循环执行一次变换并统计重复次数N ,则20 N 即为单次变换速度.若再由所得控制角计算末端位置,可分析其运算定位精度.经C ++编程运行有表3所示结论,即变异型能提高位置变换速度1倍而运算所导致的定位偏差仅为原型的1 5. 表2 机器人Stanfo rd 与其变异型间的运算量差异 表3 平行机构对算法性能的影响分析斯坦福机器人乘除、开方(次)加减法(次)正、反三角函数(次)变异型1598原 型472117斯坦福机器人单次位姿变换时间 m s 最大定位偏差变异型17.50.023原 型39.20.1当运用基本运动单元构造机器人时,其逆解过程可并发处理,关键问题是如何在各单元的有效空间内合理分配控制量.因单元内回转关节轴相互平行或垂直,且承载与安装端经过严格的相对坐标调整,以消除结构尺寸影响,减少运算参数,一旦给定单元末端位姿就能立即化为关节量,将一次性耦合求解转化为分层并行处理.无论是运动变换矩阵,还是逻辑功能组合都获得相当简化.5 结束语在机器人结构设计中,引入平行四边形机构,极大地简化了运动变换矩阵,使关节控制量的求解难度081 纺 织 高 校 基 础 科 学 学 报 第18卷大幅降低,甚至直接获取.提出了将关节组合为基本运动单元,通过单元叠加构造应用部件,充分运用封装模块改变传统的机器人设计方法,使非专业人士也能从事此项工作.参考文献:[1] D IETM A I R .T he Gough p latfo r m can have 40real po stures [A ].P roc Sixth Intern W o rk shop on A dvances in Robo tK inem atics [C ].K luw er A cadem ic Publishers ,2001.7216.[2] HU ST Y .A n algo rithm fo r so lving the direct k inem atics of Gough p latfo r m s [J ].M echanis m and M ach ine T heo ry ,2002,(4):65270.[3] KAN E .T he use of Kane ’s dynam ical equati on in robo tics [J ].T he Int J Robo tics R es ,2004,(7):13219.[4] 张启贤.位置逆解算法研究[J ].计算机工程与应用,2005,47(2):16219.[5] 理查德・摩雷.机器人操作的数学导论[M ].北京:机械工业出版社,1998.1262143.A si m ple ar ith m etic for Robot ’s i nverse k i nematicproblem s based on parallel m echan is mW A N G Cheng 2long 1,ZH A O Chun 2x iang 2,J IN J ing 1,L I Guo1(1.Co ll .of M ach .and E lct .,XAU EST ,X i ’an 710048,Ch ina ;2.D ep t .of M ath .,T echno logy Institute of Po lice Fo rce ,X i ’an 710036,Ch ina )Abstract :In a robo t structu re ,the m o ti on tran sfo r m ing m atrix can be si m p lified o r com b ined if the axes of tw o revo lving jo in ts are in the sam e directi on by in troducing p arallel m echan is m .A fter connected to ano ther p erp endicu lar jo in t ,an essen tial m o ti on un it is fo r m ed and an equ ivalen t tran sfo r m ing m atrix is ach ieved .Fo r tw o un its in a series connecti on w ill con struct a robo t w ith six revo lving jo in ts ,and si m p le fo r m u las p roduced o r direct angle com p u tati on of con tro l jo in ts is easy to be parallel app lied .Si m u lating tests show that ti m e of its inverse k inem atics can be sho rtened by 50p ercen t and its com pu ting p recisi on can be i m p roved by 80percen t .Key words :robo t ;w o rld coo rdinate ;jo in t ;inverse k inem atics p rob lem s ;tran sfo r m ing m atrix编辑、校对:董军浪181第2期 基于平行机构的简便机器人运动学逆解算法。
机器人逆运动学
clear;clc;L1 = Link('d', 0, 'a', 0, 'alpha', pi/2); %Link 类函数L2 = Link('d', 0, 'a', 0.5, 'alpha', 0,'offset',pi/2);L3 = Link('d', 0, 'a', 0, 'alpha', pi/2,'offset',pi/4);L4 = Link('d', 1, 'a', 0, 'alpha', -pi/2);L5 = Link('d', 0, 'a', 0, 'alpha', pi/2);L6 = Link('d', 1, 'a', 0, 'alpha', 0);b=isrevolute(L1); %Link 类函数robot=SerialLink([L1,L2,L3,L4,L5,L6]); %SerialLink类函数='带球形腕的拟人臂'; %SerialLink属性值robot.manuf='飘零过客'; %SerialLink属性值robot.display(); %Link 类函数theta=[0 0 0 0 0 0];robot.plot(theta); %SerialLink类函数theta1=[pi/4,-pi/3,pi/6,pi/4,-pi/3,pi/6];p0=robot.fkine(theta);p1=robot.fkine(theta1);s=robot.A([4 5 6],theta);cchain=robot.trchain;q=robot.getpos();q2=robot.ikine(p1); %逆运动学j0=robot.jacob0(q2); %雅可比矩阵p0 =-0.7071 -0.0000 0.7071 1.4142 0.0000 -1.0000 -0.0000 -0.00000.7071 0.0000 0.7071 1.9142 0 0 0 1.0000p1 =0.9874 0.1567 0.0206 1.0098 0.0544 -0.4593 0.8866 1.8758 0.1484 -0.8743 -0.4621 0.04670 0 0 1.0000 >>ss =1 0 0 00 1 0 00 0 1 20 0 0 1cchain =Rz(q1)Rx(90)Rz(q2)Tx(0.5)Rz(q3)Rx(90)Rz(q4)Tz(1)Rx(-90)Rz(q5)Rx(90)Rz(q6)Tz(1)q =0 0 0 0 0 0q2 =1.0e+04 *0.0003 0.0180 -0.0399 1.1370 0.0002 0.0536j0 =-0.1100 0.0707 0.3577 -0.0114 0.5092 0 -0.8329 -0.0448 -0.2267 -0.6224 0.1813 0-0.0000 0.7623 0.3956 -0.1410 -0.8413 0-0.0000 0.5354 0.5354 0.3374 -0.0178 -0.86050.0000 0.8446 0.8446 -0.2139 -0.9751 0.12751.0000 0.0000 0.0000 0.9168 -0.2209 -0.4933作者:fly qq链接:来源:知乎著作权归作者所有,转载请联系作者获得授权。
机器人运动学正解逆解 ppt课件
关节之间的尺寸和相邻关节相对运动量的大小时,如何确 定工业机器人末端操作器在固定坐标系中的位姿。
主要包括以下内容: 1) 相对杆件的坐标系的确定; 2) 建立各连杆的模型矩阵A; 3) 正运动学算法;
1
D-H表示法
学习目标:1. 理解D-H法原理 2. 学会用D-H法对机器人建模
学习重点:1. 给关节指定参考坐标系 2. 制定D-H参数表 3. 利用参数表计算转移矩阵
2
精品资料
• 你怎么称呼老师? • 如果老师最后没有总结一节课的重点的难点,你
是否会认为老师的教学方法需要改进? • 你所经历的课堂,是讲座式还是讨论式? • 教师的教鞭 • “不怕太阳晒,也不怕那风雨狂,只怕先生骂我
C1(C23a44
S1S5C6
S1S5S6
S1C5
C2a33C2a2)
S1C (C 1S253SC465C6S23S46)
S2 3C45C6
S1(C23C45C6S23C46)
C1S5S6 S23C45C6C23C46
S1(C23S45)
C1C5 S2 3S45
S1(C23a44 S23C a442a33S2C a332a2S )2a2
2
arctan(C3a3 (C3a3
a2 )( pz S234a4 ) S3a3( pxC1 py S1 a2 )( pxC1 py S1 C234a4 ) S3a3( pz
C234a4 ) S234a4 )
进而可得:
4 234 2 3
再 根 据 对 应 项 元 素 相 , 等 可 以 得 到
情况2:两关节Z轴平行 此时,两Z轴之间有无数条公垂线,可挑选与前一关节的公垂线共线的 一条公垂线。 情况3:两关节Z轴相交
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
L)/
2
⎥ ⎥
⎢⎣x6 ⎥⎦ ⎢⎣(bL ⋅ n − b ⋅ n L ) / 2⎥⎦
(13)
其中向量n,b,t,p表示的是末端执行器P期望的位姿,向量
—194—
nL,bL,tL,pL则是由方程(1)的左边计算出的实际位姿。受末
端执行器位姿完全约束的两个运动学方程可以表示为
⎧⎪ ⎨ ⎪⎩
f g
(θ1,θ2 (θ1,θ2
) )
= =
x12 x42
+ +
x22 x52
+ +
x32 x62
(14)
Doty 提出了方程 f 和 g 的另一种选择方法。f 和 g 根据旋
转距离来定义,其中 g 是一般的欧式距离:
⎧⎪ ⎨ ⎪⎩
f g
(θ1,θ2 ) (θ1,θ2 )
= =
d (RL , R) PL − P
=
3 − trace(RLT R)
py pz 1
⎥ ⎥ ⎥ ⎥ ⎦
=
⎡n ⎢⎣0
b 0
t 0
p⎤ 1 ⎥⎦
其中 n,b,t,p 是 3×1 向量。已知末端执行器的位姿 P 求
解关节变量角 θ 为逆运动学求解。
2 机器人逆运动学求解
本文求解的是任意结构的 6 自由度机器人的逆运动学方
程。求解的方法有以下 3 个特点:
(1)该方法建立在 4、5 自由度机器人的运动学求解的基
【Abstract】This paper introduces the robotic inverse kinematics visual algorithm which includes two parts. Firstly two (or one) non-linear equations are numerically computed, and then the remaining four (or five) joint values are determined in closed form once two (or one) joint values are known. And the visualization of the robot models produced by D-H parameters is used to determine the solutions effectively. 【Key words】Robot manipulator; Inverse kinematics; Visualization; Numerical computer
和(4)可作为一维迭代求解逆运动学方程的基础。
2.2 化简到 4 自由度机器人 对于无垂直(或无平行)关节轴的 6 自由度机器人的计算
需要将运动学方程进一步化简到 4 自由度运动学方程。 方程
(1)简化到 4 自由度机器人的方法有 3 种:
第 1 种为
⎧⎨⎩ QA3
A4 =
A5 A6 = Q A2−1 A1−1P
文献[5]研究了 5 自由度机器人的运动学求解问题,并提 出 5 自由度机器人的封闭解的充分条件是机器人结构中包含 一对互相垂直或互相平行的关节轴,求解简化为计算一个四 元多项式。如果 5 自由度机器人包含特殊 4 旋转轴结构可以 以更加简单的形式进行求解。
3 机器人逆运动可视化系统的实现
机器人的运动学分析一般不考虑机器人关节的形状、尺 寸等物理约束,当末端执行器位姿确定时,各关节可以有多 种位姿。在求出的多解中,如何有效地判断解的合理性,这 是本文需要解决的另外一个问题。采用机器人可视化来直观 地判断解的有效性。
)
=
∂f ∂θ1
=
⎡⎣
f
(θ1
+
∆θ1,θ2 )
∆ θ1
−
f
(θ1,θ2
)⎤⎦
(16)
f2 (θ1,θ2 ) =
∂f ∂θ2
=
⎡⎣
f
(θ1,θ2
+ ∆θ2 ) −
∆θ2
f
(θ1,θ2 )⎤⎦
和
g1
(θ1,θ2
)
=
∂g ∂θ1
=
⎡⎣ g
(θ1
+
∆θ1,θ2 )
∆ θ1
−
g
(θ1,θ2 )⎤⎦
g2 (θ1,θ2 ) =
(15)
方程(14)、(15)是二维运动学方程的 2 个例子。如果末端
执行器不是完全约束的,运动学方程还可以进一步简化。
2.4 二维 Newton-Rhphson 方法
只要可以求解方程f(θ1,θ2)和g(θ1,θ2),那么它们对θ1,
θ2的偏微分方程f1,f2 和g 1 ,g 2的近似值可表示为
f1 (θ1,θ2
成 5 自由度机器人运动学方程,方程(1)变换为
⎧ ⎨ ⎩
A2 Q
A3 A4 A5 = A1−1P
A6
=
Q
(2) (3)
或
⎧⎨⎩ QA1
A2 =
A3 A4 PA6−1
A5
=
Q
(4)
(5)
当矩阵 Q 已知时,方程(2)和(4)表示 5 自由度机器人的运
动学方程。对包含一对垂直(或平行)关节轴的机器人,方程(2)
Visual Algorithm of Robot Inverse Kinematics
ZHOU Fangfang, FAN Xiaoping, ZHAO Ying
(Research Center for Automation Engineering, College of Information Science and Engineering, Central South University, Changsha 410075)
γi 0
aiSi ⎤
aiCi
⎥ ⎥
di 1
⎥ ⎥ ⎦
其中Ci=cosθi,Si=sinθi,σi=sinαi,γi=cosαi。已知方程(1)
中的角度θ,求解目标点的位姿P为正运动学求解。
末端执行器的位姿矩阵可表示为
⎡nx bx tx px ⎤
P = ⎢⎢ny
⎢ ⎢ ⎣
nz 0
by bz 0
ty tz 0
机器人,可以直接求解 6 个关节变量。
基金项目:国家自然科学基金资助项目(69975003) 作者简介:周芳芳(1980—),女,博士,主研方向:虚拟现实技术, 计算机网络,机器人仿真;樊晓平,博士、教授、博导;赵 颖, 硕士 收稿日期:2005-07-27 E-mail:zff@
的过程简化为计算两个非线性方程。并且利用D-H参数表产
生机器人模型,利用解的可视化来判断解的有效性,排除不
合理的逆解。
1 运动学的定义
机器人运动学方程定义为
A1 A2 A3 A4 A5 A6 = P
(1)
矩阵Ai定义为
⎡Ci
Ai
=
⎢ ⎢
Si
⎢0
⎢ ⎣
0
−γ iSi σ iCi σi
0
σ iCi −γ iSi
采用数值计算的方法来求解两个非线性方程的θ1和θ2。
⎧⎪ ⎨ ⎪⎩
f g
(θ1,θ2 (θ1,θ2
) )
= =
0 0
(12)
可以采用二维的Newton-Rhphson算法来求解非线性方程
组(12)。为了使求出的θ1和θ2满足方程(1)的要求,必须选择合 适的方程f和g。文献[5]提出了末端执行器的期望位姿和实际
矩阵求解方程(6)、(8)、(10)获得逆运动学的封闭解。
2.3 二维迭代求解法 对于无垂直(或无平行)关节轴的 6 自由度机器人逆运动
方程的求解问题简化为先求解 2 个关节变量,然后封闭的求
出另外 4 个解的问题。理论上,方程(6)、(8)、(10)都可以二
维迭代求解两个关节变量,下面以方程(6)为例进行说明。
由上面的算法可以计算出θ1,θ2,然后根据方程(6)可以 封闭地求解出另外 4 个关节变量。由于求解时不考虑杆件的 结构关系,会出现多解的情况。
2.5 一维迭代求解法 如方程(2)、(4)所示,当第 1 个关节变量θ1或者最后 1 个
关节变量θ6为已知时,6 自由度机器人的逆运动学求解问题可 简化为 5 自由度机器人的逆运动求解。因此,可采用一维迭 代方法求解θ1或θ6,然后封闭求出其余 5 个变量。
为计算四元多项式方程。为了机器人的学习和研究需要求解
一般结构的 6 自由度机器人的逆运动学方程,目前多采用数
值计算的方法通过计算逆Jacobin矩阵求解任意结构的 6 自由 度机器人的运动学方程[3,4]。但该方法需要数值求解 6 个非线
性方程,不仅计算量大,而且会产生不符合实际物理约束的
多余解。
本论文介绍的求解方法建立在 4、5 自由度机器人的运动 学求解的基础之上[5],将 6 自由度机器人逆运动学方程求解
(4)计算方程 f 和 g 的偏微分方程(16)和(17)。
(5)根据Newton-Rhphson方法获得一组新的估计值θ1,θ2,即
⎡θ1 ⎤
⎢⎣θ
2
⎥ ⎦
new
=
⎡θ1 ⎤
⎢⎣θ
2
⎥ ⎦
−
⎡ f1
⎢ ⎣
g1
f2 ⎤−1 ⎡ f (θ1,θ2 )⎤
g
2
⎥ ⎦
⎢ ⎣
g
(θ1
,θ
2
)
⎥ ⎦
(6)循环步骤(1)~(5),直到满足精度范围。
(1)对无垂直或无平行关节轴的 6 自由度机器人,首先化
简为 4 自由度机器人,然后二维迭代求解 2 个关节变量,最
后封闭求解其余 4 个变量;