PUMA机械臂的逆运动学解耦分析及仿真
机械臂逆解解析法

机械臂逆解解析法机械臂是一种能够模拟人类手臂运动的装置,具有广泛的应用领域,如工业生产线、医疗手术等。
机械臂的运动控制是实现其各种功能的关键。
而机械臂逆解解析法就是一种常用的控制方法,用于根据目标位置来计算机械臂的关节角度,从而实现精确的运动控制。
机械臂逆解解析法的基本原理是根据机械臂的运动学模型,通过数学计算得出机械臂关节角度的解析解。
在机械臂运动学中,关节角度是描述机械臂位置和姿态的重要参数,通过控制关节角度可以实现机械臂的运动。
逆解解析法的主要目的就是寻找一种数学方法,通过给定的位置和姿态信息,计算出机械臂各个关节的角度,从而实现精确控制。
机械臂逆解解析法的实现过程通常分为以下几个步骤:1. 建立机械臂的运动学模型:根据机械臂的结构和连接方式,建立机械臂的运动学模型。
运动学模型通常采用DH参数法或者Puma 法表示,用于描述机械臂各个关节之间的位置和姿态关系。
2. 确定目标位置和姿态:根据实际需求,确定机械臂的目标位置和姿态。
目标位置和姿态可以通过外部传感器获取,也可以由运动规划算法计算得出。
3. 建立逆解方程:根据机械臂的运动学模型和目标位置姿态,建立逆解方程。
逆解方程是一个包含各个关节角度的方程组,通过求解该方程组可以得到机械臂的关节角度解析解。
4. 求解关节角度:根据逆解方程,使用数值计算方法求解机械臂的关节角度。
常用的数值计算方法包括牛顿迭代法、高斯消元法等。
5. 控制机械臂运动:根据计算得到的关节角度,通过控制器控制机械臂的运动。
控制器通常使用PID控制算法或者其他高级控制算法,根据机械臂的实时状态调整关节角度,实现精确控制。
机械臂逆解解析法的优点是能够得到关节角度的解析解,计算速度较快。
逆解解析法不仅可以用于机械臂的运动控制,还可以用于机械臂的路径规划和碰撞检测等应用。
但是逆解解析法也存在一些限制,例如只适用于特定类型的机械臂结构,无法处理复杂的非线性关系等。
机械臂逆解解析法是一种常用的机械臂运动控制方法,通过数学计算得出机械臂关节角度的解析解,实现精确控制。
基于MATLAB的PUMA560机械臂运动仿真

基于MATLAB的PUMA560机械臂运动仿真徐哲扬来源:?读天下?2021年第10期摘要:工业机器人崛起于在20世纪60,是一种将其和计算机辅助设计〔CAD〕、计算机辅助制造〔CAM〕系统结合在一起的特殊装备。
而Unimation PUMA560作为简单6自由度机器人,在工业中的应用也极为广泛。
本文针对典型的工业机器人Unimation公司生产的PUMA560机器人,运用MATLAB中的机器人仿真工具箱〔Robotics Toolbox〕分析了其正逆运动学方法和轨迹规划的结果,并观察了其运动情况和规律。
关键词:Unimation PUMA560;机械臂;MATLAB仿真机器人运动学涉及大量的算法设计和计算量,所以利用计算机可视化和计算机的仿真软件的方式进行仿真,能过大大减轻科研人员的工作量。
通过图形观察机器人在一定控制条件下的运动规律进而帮助科研人员更好地理解其工作的原理,同时验证其算法的正确性,并对机器人进行图形仿真将结果以图形的形式表示出来,也十分便于展示给企业或者客户。
此外,MATLAB等的仿真软件能在机器人投入生产之前观察其工作效果,从而大大减轻了企业承担的经济风险。
一、搭建PUMA560机械臂本文应用MATLAB的Robotics Toolbox机器人仿真工具箱做机械臂的仿真。
第一步是利用Link函数搭建各个连杆之间关节的相互关系,第二步是调用robot函数创立一个新的机器人对象。
二、 PUMA560的运动分析〔一〕机器人运动学正问题机器人运动学正问题连杆的位移和相对应的关节的偏移量,求解末端连杆坐标系相对于基坐标系的位姿。
图1 PUMA560操作臂运动参数和坐标系分布本文使用MALTBA的Robot中的正问题计算函数fkine能够求解机器人运动学的正问题。
在分析这个问题时,分析可得在操作臂的中部有一个轮子将连续三个部件的运动相关联在一起。
需要根据连杆变换矩阵公式求得每一个连杆的变换矩阵01T~56T,然后将各个连杆矩阵连乘得到06T:〔二〕机器人运动学逆问题机器人运动学逆的解决方法在被告知连杆的位移和相对应坐标系的姿态,即其位姿矩阵,求反求机械臂各个关节的位姿。
一种仿人机械臂的运动学逆解的几何求解方法

一种仿人机械臂的运动学逆解的几何求解方法随着科技的不断发展,机械臂在工业自动化、医疗辅助和智能制造等领域中得到了越来越广泛的应用。
仿人机械臂作为一种新型的机械臂,具有更高的柔顺性和精确性,可以更好地模拟人体肢体的运动,并且在日常生活中也有着广泛的应用前景。
仿人机械臂的运动学逆解问题一直是研究的重点和难点之一。
运动学逆解是指在已知机械臂末端执行器的位置和姿态情况下,根据机械臂的结构参数和关节角度,求解出满足末端执行器位置和姿态要求的机械臂关节角度。
而几何求解方法是其中一种研究手段,通过空间几何关系建立数学模型,从而实现运动学逆解。
本文将介绍一种基于几何求解的仿人机械臂运动学逆解方法,并对其优缺点进行分析。
一、仿人机械臂的运动学逆解问题1. 仿人机械臂的特点仿人机械臂是一种模拟人体上肢结构和运动规律的机械臂,通常由肩部、肘部和手部三个自由度组成,并且具有较高的柔顺性和精确性。
它可以模拟人体上肢的各种复杂运动,如抓取、握持、挥舞等,因此在医疗辅助、人机交互等领域有着广泛的应用。
2. 运动学逆解问题的挑战仿人机械臂的运动学逆解问题比传统机械臂更加复杂,主要表现在以下几个方面:① 多自由度:仿人机械臂通常具有较多的自由度,关节角度之间存在复杂的耦合关系,从而增加了运动学逆解的难度。
② 柔性和精确性要求高:仿人机械臂需要具有较高的柔顺性和精确性,要求逆解方法能够准确地求解出关节角度,以实现精准的末端执行器运动。
③ 复杂的运动规律:仿人机械臂需要模拟人体上肢的各种复杂运动,如抓取、握持、挥舞等,要求逆解方法能够处理多种不同的运动规律。
二、基于几何求解的仿人机械臂运动学逆解方法基于几何的运动学逆解方法是通过建立机械臂末端执行器位置和姿态的数学模型,从而推导出机械臂关节角度的求解公式。
这种方法常常需要涉及空间几何关系的建立和复杂的数学推导,但由于其几何直观性和适用性广泛,因此在仿人机械臂运动学逆解中得到了广泛的应用。
puma560的运动学及matlab实现(正解+逆解)

puma560的运动学及matlab实现(正解+逆解)表1 PUMA560机器⼈的连杆参数关节i变化范围/(o) 190000-160~16020-900149.09-225~453-900431.80-45~22540-9020.32443.07-110~170509000-100~10060-9000-266~266正解源码DEG = pi/180;cta1=-70.4385cta2=182.6918cta3=-90.0000cta4=-82.4708cta5=-19.7387cta6=-97.9933T01=[cosd(cta1),-sind(cta1),0,0;sind(cta1), cosd(cta1),0,0;0,0,1,0;0,0,0,1];T02=T01*[cosd(cta2),-sind(cta2),0,0;0,0,1, 149.09;-sind(cta2),-cosd(cta2),0,0;0,0,0,1] ;T03=T02*[cosd(cta3),-sind(cta3),0,431.8;sind(cta3), cosd(cta3),0,0;0,0,1,0;0,0,0,1];T04=T03*[cosd(cta4),-sind(cta4),0,20.32;0,0,1,433.07;-sind(cta4),-cosd(cta4),0,0;0,0,0,1];T05=T04*[cosd(cta5),-sind(cta5),0,0;0,0,-1,0;sind(cta5), cosd(cta5), 0,0;0,0,0,1];T06=T05*[cosd(cta6),-sind(cta6),0,0;0,0,1,0;-sind(cta6),-cosd(cta6),0,0;0,0,0,1];O=T06*[0;0;0;1];=====================================================逆解源码fid = fopen('inverseout.txt','w');%逆解的保存⽂件%赋初值T06 =[0.0000 1.0000 0.0000 -149.0900;0.0000 -0.0000 1.0000 864.8700;1.0000 0 -0.0000 20.3200;0 0 0 1.0000] ;a0=0; a1=0; a2=431.8; a3=20.32; a4=0; a5=0;d1=0; d2=149.09; d3=0; d4=433.07; d5=0; d6=0;n_x=T06(1); n_y=T06(2); n_z=T06(3);o_x=T06(5); o_y=T06(6); o_z=T06(7);a_x=T06(9); a_y=T06(10); a_z=T06(11);p_x=T06(13); p_y=T06(14); p_z=T06(15);disp(['⼋组解分别是:']);for i=1:2for j=1:2for k=1:2%求解theta1(为弧度)sqr1=[sqrt(p_x^2+p_y^2-d2^2),-sqrt(p_x^2+p_y^2-d2^2)];ta1=atan2(p_y,p_x)-atan2(d2,sqr1(i));%求解theta3(弧度表⽰)k1=(p_x^2+p_y^2+p_z^2-a2^2-a3^2-d2^2-d4^2)/(2*a2);sqr3=[sqrt(a3^2+d4^2-k1^2),-sqrt(a3^2+d4^2-k1^2) ];ta3=atan2(a3,d4)-atan2(k1,sqr3(j));fs23=-((a3+a2*cos(ta3))*p_z)+(cos(ta1)*p_x+sin(ta1)*p_y)*(a2*sin(ta3)-d4); sc23=(-d4+a2*sin(ta3))*p_z+(cos(ta1)*p_x+sin(ta1)*p_y)*(a2*cos(ta3)+a3); ta23=atan2( fs23,sc23);%求解theta2 (弧度表⽰)ta2=ta23-ta3;%求解theta4 (弧度表⽰)fs4=[ -a_x*sin(ta1)+a_y*cos(ta1),a_x*sin(ta1)-a_y*cos(ta1)];sc4=[ -a_x*cos(ta1)*cos(ta23)-a_y*sin(ta1)*cos(ta23)+a_z*sin(ta23),a_x*cos(ta1)*cos(ta23)+a_y*sin(ta1)*cos(ta23)-a_z*sin(ta23)];fprintf(fid,'%d,',sc4(1,1));fprintf(fid,'\t');fprintf(fid,'%d,',sc4(2,1));fprintf(fid,'\t');fprintf(fid,'%d,',fs4(1,1));fprintf(fid,'\t');fprintf(fid,'%d,',fs4(1,2));fprintf(fid,'\t');fprintf(fid,'\n');ta4=atan2(fs4(k),sc4(k));%求解theta5 (弧度表⽰)fs5=-a_x*(cos(ta1)*cos(ta23)*cos(ta4)+sin(ta1)*sin(ta4))...-a_y*(sin(ta1)*cos(ta23)*cos(ta4)-cos(ta1)*sin(ta4))...+a_z*(sin(ta23)*cos(ta4));sc5=a_x*(-cos(ta1)*sin(ta23))+a_y*(-sin(ta1)*sin(ta23))+a_z*(-cos(ta23));ta5=atan2(fs5,sc5);%求解theta6 (弧度表⽰)fs6=-n_x*(cos(ta1)*cos(ta23)*sin(ta4)-sin(ta1)*cos(ta4))...-n_y*(sin(ta1)*cos(ta23)*sin(ta4)+cos(ta1)*cos(ta4))...+n_z*(sin(ta23)*sin(ta4));sc6= n_x*(cos(ta1)*cos(ta23)*cos(ta4)+sin(ta1)*sin(ta4))*cos(ta5)... -n_x*cos(ta1)*sin(ta23)*sin(ta5)...+n_y*(sin(ta1)*cos(ta23)*cos(ta4)+cos(ta1)*sin(ta4))*cos(ta5)...-n_y*sin(ta1)*sin(ta23)*sin(ta5)...-n_z*(sin(ta23)*cos(ta4)*cos(ta5)+cos(ta23)*sin(ta5));ta6=atan2(fs6,sc6);%save%将其化为⾓度Theta=[ta1 ta2 ta3 ta4 ta5 ta6]./pi*180endendend关于C++版本的运动学正解和逆解的代码,可以在以下链接下载。
PUMA560机器人运动学分析

PUMA560机器人运动学分析——基于matlab程序的运动学求解求解PUMA560正向运动学解。
求解PUMA560逆向运动学解。
求解PUMA560的雅克比矩阵。
利用GUI创建运动分析界面。
姓名:xxx学号:201100800406学院:机电与信息工程学院专业:机械设计制造及其自动化年级2011指导教师:xx前言说明此次大作业,是我自己一点一点做的。
程序代码写好之后,感觉只是将代码写上去太过单调,而又不想将课本上或PPT上的基础知识部分复制上去,但我又想让自己的大作业有一点与众不同,所以我决定弄一个GUI界面。
开始对GUI一窍不通,经过几天的学习,终于有了点成果,但还是问题不断,有很多想法却难以去实现,考试在即,只能做成这样了,希望见谅。
目录前言说明 ................................................................................. - 1 -求解PUMA560正向运动学解 ............................................... - 2 -求解PUMA560逆向运动学解 ............................................... - 5 -求解PUMA560的雅克比矩阵 ............................................. - 15 -利用GUI创建运动分析界面................................................ - 22 -求解PUMA560正向运动学解在已知PUMA560各关节连杆DH参数,以及给定相应的关节变量之后,可以通过正向运动学求解出机械手末端抓手在基系内的位姿。
从而利用输入不同的关节变量组合,实现对PUMA560机器人的准确控制。
以下是利用matlab编写的求解PUMA560正向运动学解的函数zhenjie.m:function T=zhenjie(c1,c2,c3,c4,c5,c6)%求puma560正解a2=431.8;a3=20.32;d2=149.09;d4=433.07;c1=c1/180*pi;c2=c2/180*pi;c3=c3/180*pi;c4=c4/180*pi;c5=c5/180*pi;c6=c6/180*pi;A1=[cos(c1),-sin(c1),0,0;sin(c1),cos(c1),0,0;0,0,1,0;0,0,0,1];A2=[cos(c2),-sin(c2),0,0;0,0,1,d2;-sin(c2),-cos(c2),0,0;0,0,0,1];A3=[cos(c3),-sin(c3),0,a2;sin(c3),cos(c3),0,0;0,0,1,0;0,0,0,1];A4=[cos(c4),-sin(c4),0,a3;0,0,1,d4;-sin(c4),-cos(c4),0,0;0,0,0,1];A5= [cos(c5),-sin(c5),0,0;0,0,-1,0;sin(c5),cos(c5),0,0;0,0,0,1];A6=[cos(c6),-sin(c6),0,0;0,0,1,0;-sin(c6),-cos(c6),0,0;0,0,0,1];T=A1*A2*A3*A4*A5*A6end其中c1,c2,c3,c4,c5,c6,为分别输入的各关节变量,即连杆1、连杆2、连杆3、连杆4、连杆5、连杆6的关节转角,直接利用关节矩阵相乘得到机械手末端抓手在基系内的位姿。
通过MATLAB实现PUMA260机器人建模和运动分析

通过MATLAB实现PUMA260机器人建模和运动分析摘要:针对PUMA260机器人,分析它的正运动学、逆运动学的问题。
采用标准D-H法对机器人建立6个关节的坐标系并获取D-H参数,并用MATLAB编程建立其运动的数学模型,同时实现正运动学、逆运动学求解和轨迹规划的仿真。
关键词:PUMA260机器人;正逆运动学求解;MATLAB仿真;一、机器手的三维图下图1所示的PUMA260机器人,连杆包括腰部、两个臀部、腕部和手抓,设腰部为1连杆,两个臀部分别为2、3连杆,腰部为4连杆,手抓为5、6连杆,基座不包含在连杆范围之内,但看作0连杆,其中关节2、3、4使机械手工作空间可达空间成为灵活空间。
1关节连接1连杆与基座0,2关节连接2连杆与1连杆,3关节连接3连杆与2连按,4关节连接4连杆与3连杆,5关节连接5连杆与4连杆。
图2所示为连杆坐标系。
图1PUMA260机器人二、建立连杆直角坐标系。
图2连杆直角坐标系三、根据坐标系确定D-H 表。
D-H 参数表四、利用MATLAB 编程求机械手仿真图。
clc;clear;%标准D-H 法建立机器人模型L1=Link([pi/20000],'standard');L2=Link([000-pi/20],'standard');L3=Link([0-101800],'standard');L4=Link([-pi/2018-pi/20],'standard');L5=Link([-pi/200-pi/20],'standard');L6=Link([000-pi/20],'standard');%将机器人命名为“ROBOT PUMA260”并用SerialLink 函数创建机器人bot=SerialLink([L1L2L3L4L5L6],'name','ROBOT PUMA260');bot.plot([000000]);连杆i θi di ai ɑi 运动范围190°32.500°-165~165°20°00-90°-105~105°30°L=-10180°-130~130°4-90°018-90°-180~180°5-90°00-90°-90~90°60°t=0-90°-165~165°图3PUMA260机器人运动仿真(起始位置时)%PUMA260机械手从Q1位置运动到Q2位置t=[0:0.01:1];%设定Q1位置参数和Q2位置参数Q1=[000000];Q2=[-pi/40pi/40-pi/40];%运用jtraj函数计算Q1、Q2点间的空间轨迹[q,qd,qdd]=jtraj(Q1,Q2,t);plot(bot,q);图4PUMA260机器人运动仿真(终止位置时)四、求PUMA260运动学正解和逆解。
基于MATLAB的PUMA机器人运动仿真研究

基于MATLAB的PUMA机器人运动仿真研究
基于MATLAB的PUMA机器人运动仿真研究摘要:机器人运动学是机器人学的一个重要分支,是实现机器人运动控制的基础。
论文以D-H坐标系理论为基础对PUMA560机器人进行了参数设计,利用MATLAB机器人工具箱,对机器人的正运动学、逆运动学、轨迹规划进行了仿真。
Matlab仿真结果说明了所设计的参数的正确性,能够达到预定的目标。
关键词:机器人PUMA560 D-H坐标系运动学轨迹规划
机器人运动学的研究涉及大量的数学运算,计算工作相当繁锁。
因此,采用一些工具软件对其分析可大大提高工作效率,增加研究的灵活性和可操作性。
对机器人进行图形仿真,可以将机器人仿真的结果以图形的形式表示出来,从而直观地显示出机器人的运动情况,得到从数据曲线或数据本身难以分析出来的许多重要信息,还可以从图形上看到机器人在一定控制条件下的运动规律[1]。
论文首先设计了PUMA560机器人的各连杆参数,然后讨论了正、逆运动学算法,轨迹规划问题,最后在MATLAB环境下,运用Robotics Toolbox,编制简单的程序语句,快速完成了机器人得运动学仿真。
设机械手起始位置位于A点,qA=[000000],即表示机器人的各关节都处于零位置处。
机械手在B点和C点相对于基坐标系的位姿可用齐次变换矩阵TB和TC来表示。
图2所示为机械手臂在A点时的三维图形。
机械臂的逆向运动学求解方法

机械臂的逆向运动学求解方法机械臂是一种可以在工业自动化和制造方面进行各种任务的重要工具。
在机械臂控制中,逆向运动学(IK)是一个非常重要的问题,因为这决定了我们如何根据期望末端位置来控制机械臂各个关节的姿态。
在机器人控制中,逆向运动学求解是一个决策艰难的问题,因为它需要解决一些数学问题。
本文将介绍机械臂逆向运动学求解的方法,希望能对读者有所启发。
1. 逆向运动学(IK)的概述在机器人领域,运动学是一个非常重要的问题,这是因为它可以使我们了解如何根据关节角度控制机械臂姿态。
在机械臂中,正向运动学(FK)可以帮助我们从关节角度到末端位置的变换,反之,逆向运动学可以帮助我们从末端位置到关节角度的变换。
因此,IK的目的是找到使机械臂末端到达目标位置的关节角度。
在机械臂控制中,IK是一个非常重要的问题,因为它可以使得机械臂执行各种任务。
2. Jacobian矩阵对于给定的末端位置,IK问题的解决方法取决于所选的控制方法。
在Jacobian-based方法中,我们利用机器人的Jacobian矩阵来实现IK问题。
在数学上,Jacobian矩阵可以帮助我们计算机械臂关节角度对末端位置的响应。
为了理解Jacobian矩阵,我们必须了解关节角度和末端位置之间的关系。
Jacobian矩阵是末端位移向量与关节角度变化向量之间的比率。
在机械臂控制中,我们希望以末端位置(例如,机械臂的手指)为输入,以机械臂关节角度的变化(即速度)为输出,我们希望确定与系统响应相匹配的关节变量。
这样就需要计算Jacobian矩阵。
3. 迭代方法在常规情况下,IK问题的解决方法是用迭代方法。
迭代方法的实现方式是,利用机器人的Jacobian矩阵计算末端位移向量与关节角度变化向量之间的比率。
然后,将其应用于计算机械臂关节角度的变化,使得机械臂的末端位置与期望位置之间的误差不断缩小。
这个过程可以重复进行,直到达到所需的误差水平。
整个过程可以表示如下:J(q) · δq = dx其中,“J(q)”是机械臂位置的Jacobian矩阵,“q”是目前的关节角度,“dx”是期望变化的位移向量,“δq”是应用于机械臂的关节角度变化量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用 D-H(Denavit-Hartenberg)法确定机械臂在杆件坐标系的 结构和位形。将它的 7 个杆件编号编为 0 到 6,7 个坐标系定的序 号为 1 到 7。其中最后一个坐标系是随机选取的,它的原点设置 在末端执行器上,也就是操作点 N,这就定义出了坐标系[2]。不难
粤遭泽贼则葬糟贼:Robot kinematics analysis is the important way of realizing robot automation control,especially for industrial manipulator inverse kinematics analysis,due to the complicated algorithm structure,lack of a large amount of calculation,on industrial mechanical arm of the real-time control caused a great impact. A t this point,with common industrial PU M A type manipulator as the object of study proposed a will manipulator motion decoupling for arm and wrist inverse analysis method, through the calculation of the transform coefficients,Euclidean norm,coordinate vector transform method for manipulator inverse kinematics solution. Finally,the actual values are substituted with the M A TLA B simulation to verify and assess the feasibility coupling algorithm. Key Words:Inverse Kinematic Analysis;PUMA Type Manipulator;Decoupling Calculation;MATLAB Simulation
Inverse Kinematics Decoupling Analysis and Simulation of PUMA Manipulator
CHENG Hong-jie,LIN Rui,GUO Jun-bin,CHEN Li
(Lab. of Armament Launch Theory & Technology,National Key Discipline,Rocket Force University of Engineering,Shaanxi Xi’an 71008 年 4 月
酝葬糟澡蚤灶藻则赠 阅藻泽蚤早灶 驭 酝葬灶怎枣葬糟贼怎则藻
143
PUMA 机械臂的逆运动学解耦分析及仿真
程洪杰,林 睿,郭君斌,陈 力
(火箭军工程大学 兵器发射理论与技术国家重点学科实验室,陕西 西安 710025)
摘 要:机器人运动学分析是实现机器人自动化控制的重要方向,尤其是对于工业机械臂的逆运动学分析,由于算法结 构复杂、计算量大等不足,对工业机械臂的实时性控制造成了很大的影响。针对这一点,以工业常见的 PUMA 型机械臂为 研究对象,提出一种将机械臂运动解耦为手臂及手腕的逆解分析方法,通过系数变换、欧几里得范数计算,坐标矢量变换 等方法求出机械臂的逆运动学解,最后通过实际值代入与 MATLAB 仿真,验证了解耦算法的可行性。 关键词:逆运动学分析;PUMA 型机械臂;解耦计算;MATLAB 仿真 中图分类号:TH16;TP241.2 文献标识码:A 文章编号:员园园员-3997(圆园18)04-0143-04
x3y3z3、x4y4z4、x5y5z5、x6y6z6 分别是第 1-6 关节的坐标系。其中 ai 表示
zi 与 zi+1 之间的公垂线,琢i 表示 zi 与 zi+1 之间的角度,di 表示 zi 轴上
两条相邻的公垂线之间的距离,兹i 表示为使 xi-1 和 xi 互相平行绕
zi-1 轴旋转的角度,i=1,2…6。坐标系 xi+1yi+1zi+1 到 xiyizi 的位置和方向
发现,最后 3 个轴相交于点 C,所以最后 3 个杆件以 C 点为中心,
运动在同心的球面上。因此,由这 3 个杆件构成的子运动链就是
球形手腕,点 C 是运动中心,前面 4 个杆件组成的运动链成为手
臂。兹1、兹2、兹3、兹4、兹5、兹6 分别表示各个关节绕 z 轴的旋转角度,l1、l2、
l3、l4、l5、l6 表示各连杆的长度,xyz 是选取的基坐标系,x1y1z1、x2y2z2、
1 引言
普通的六自由度机械臂的运动学实数逆解的上限为 16 个, 目前是通过矢量乘法可以找到 14 个线性无关的运动学逆解方 程,利用分离变量将这些方程化为关节变量的正切半角的一元 16 次方程,用多维几何学和运动学的图像理论简化方程来求解[1],但 这种方法求解精度不够高,计算复杂。而国外普遍运用矩阵分解 的一般六自由度机械臂实时的高精度运动学逆解算法,精度较 高,但计算量相对较大。结合 PUMA560 型机械臂为研究对象,运 用解耦分析的方法将机械臂分为手臂和手腕,利用结合系数化简 和坐标矢量分解、欧几里得范数求解六自由度机械臂运动学逆解 的算法,将机械臂运动学逆解的求解过程简化为关节变量的正切 半角的一元四次方程,解耦过程简单计算量相对更小,对于机械 臂的实时性控制解算有了一定提高。
关系由 Qi、ai 和 bi 给出:
杉山 山
cos兹i
Qi
=
山 山 山 山
sin兹i
0 山
删山
-姿i sin兹i 姿i cos兹i