(6)六轴机械臂的运动学正、逆解

这篇具有很好参考价值的文章主要介绍了(6)六轴机械臂的运动学正、逆解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

下面在前面的ur5机械臂的DH参数基础是对其正逆解进行求解,为了后面能在MATLAB中利用stl文件进行实际显示,这里以标准DH参数为例进行讲解。(修正DH参数在用plot3d函数是显示失败,不知道是不是这个函数只能显示标准dh参数的机械臂模型,有知道的网友可以在评论里告知一下,谢谢。

一、运动学正解:

机器人正运动学是在已知各连杆相对位置关系(关节角)的情况下,得到末端执行器的位姿。在标准DH参数下相邻坐标系之间的齐次变换矩阵为:

(6)六轴机械臂的运动学正、逆解

 则,正解代码如下:

function    [T06,Pos]=ForwardSolver_MDH(theta)

    DH_JXB =[90    0      144  0; 
             0     264    0    90;
             0     236    0    0; 
             -90   0      106  -90; 
             90    0      114  0; 
             0     0      67   0];
    d=DH_JXB(1:6,3); 
    a=DH_JXB(1:6,2); 
    DH_JXB(1:6,1)=DH_JXB(1:6,1)/180*pi; %度数转化为弧度
    alp=DH_JXB(1:6,1); 
    offset=[0 90 0 -90 0 0];
    theta=(theta+offset)*pi/180;

for i=1:6
        T{i}=[     cos(theta(i)),       -sin(theta(i))*cos(alp(i)),                  sin(theta(i))*sin(alp(i)),     a(i)*cos(theta(i));
                   sin(theta(i)),       cos(theta(i))*cos(alp(i)),       
-cos(theta(i))*sin(alp(i)),    a(i)*sin(theta(i));
0,             sin(alp(i)),                      cos(alp(i)),                  d(i);
0,                   0,                               0,                          1
             ]

    end

    disp('Homogeneous transformation matrix T06:')
    T06=T{1}*T{2}*T{3}*T{4}*T{5}*T{6}
    %% 求末端位置
    X=T06(1,4);Y=T06(2,4);Z=T06(3,4);
    %% 求末端姿态Rotations about X, Y, Z axes (for a robot gripper)
    R=T06;
    if abs(abs(R(1,3)) - 1) < eps  % when |R13| == 1
        % singularity
        rpy(1) = 0;  % roll is zero
        if R(1,3) > 0
        rpy(3) = atan2( R(3,2), R(2,2));   % R+Y
        else
             rpy(3) = -atan2( R(2,1), R(3,1));   % R-Y
        end
        rpy(2) = asin(R(1,3));
    else
        rpy(1) = -atan2(R(1,2), R(1,1));
        rpy(3) = -atan2(R(2,3), R(3,3));

        rpy(2) = atan(R(1,3)*cos(rpy(1))/R(1,1));
    end
    RPY=rpy*180/pi;
    Rall=RPY(1);Pitch=RPY(2);Yaw=RPY(3);
    Pos=[X,Y,Z,Rall,Pitch,Yaw];
end

这里对姿态的描述进行说明:在MATLAB中RPY欧拉角是世界坐标系下的XYZ欧拉角;

RPY角的定义如下:

(6)六轴机械臂的运动学正、逆解

 输入端位姿形式为:

MATLAB中对应的RPY旋转矩阵如下:

(6)六轴机械臂的运动学正、逆解

 这是个旋转矩阵,与齐次矩阵中的旋转矩阵等价,所以根据齐次矩阵中的旋转矩阵便可以得到末端的姿态RPY。

(6)六轴机械臂的运动学正、逆解

二、运动学逆解:

机器人逆运动学是已知机器人末端执行器的位姿,通过变换矩阵T得到机器人各关节的角度。求解逆运动学有解析法、几何法、迭代法。这里介绍解析法。如果机器人末端三轴的轴线始终交于一点则该机器人必有解析解

1、得到齐次变换矩阵:

利用MATLAB求解其齐次变换矩阵:文章来源地址https://www.toymoban.com/news/detail-406542.html

syms a1 a2 a3 a4 a5 a6 d1 d2 d3 d4 d5 d6 a1p1 a1p2 a1p3 a1p4 a1p5 a1p6 th1 th2 th3 th4 th5 th6;
a=[0 a2 a3 0 0 0];
d=[d1 0 0 d4 d5 d6];
alp=[90 0 0 -90 90 0]*pi/180;
theta=[th1 th2 th3 th4 th5 th6];
% theta(1)=t1;theta(2)=t2;theta(3)=t3;theta(4)=t4;theta(5)=t5;theta(6)=t6;

 T01=[         cos(theta(1)),       0,      sin(theta(1)),     a(1)*cos(theta(1));
               sin(theta(1)),       0,      -cos(theta(1)),    a(1)*sin(theta(1));
               0,                   1,      0,                 d(1);
               0,                   0,      0,                 1
         ];

 T12=[         cos(theta(2)),       -sin(theta(2)),      0,     a(2)*cos(theta(2));
               sin(theta(2)),       cos(theta(2)),       0,     a(2)*sin(theta(2));
               0,

到了这里,关于(6)六轴机械臂的运动学正、逆解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 6自由度并联机器人 运动学算法 正解 逆解6个耦合的非线性方程组求解

    6自由度并联机器人 运动学算法   正解  逆解 6个耦合的非线性方程组求解 正解快速收敛可用在机器人控制中 已实际使用 6自由度并联机器人运动学算法及其在机器人控制中的应用 随着社会科技的不断发展,机器人技术在工业自动化和服务业中的应用越来越广泛。其中,高自

    2024年04月28日
    浏览(52)
  • 机械臂正向与逆向运动学求解

            机械臂的正运动学求解即建立DH参数表,然后计算出各变换矩阵以及最终的变换矩阵。逆运动学求解,即求出机械臂各关节θ角与px,py,pz的关系,建立θ角与末端姿态之间的数学模型,在这里以IRB6700为例,对IRB6700进行正逆运动学求解和验证。 目录 正运动学求解 逆

    2023年04月10日
    浏览(38)
  • 5_机械臂运动学基础_矩阵

    上次说的向量空间是为矩阵服务的。 1、学科回顾   从科技实践中来的数学问题无非分为两类:一类是线性问题,一类是非线性问题。线性问题是研究最久、理论最完善的;而非线性问题则可以在一定基础上转化为线性问题求解。 线性变换: 数域 F 上线性空间V中的变换T若满

    2024年01月25日
    浏览(40)
  • matlab机械臂建模运动学仿真+轨迹规划

    1.内容参考B站视频:https://www.bilibili.com/video/BV1q44y1x7WC?spm_id_from=333.337.search-card.all.click 2.工具箱10.4版下载 https://download.csdn.net/download/yohnyang/86099523 3.关于机器人控制相关算法的C++实现可以详见我的专栏 :https://blog.csdn.net/yohnyang/category_12119720.html Link类使用介绍:https://blog.csdn.

    2024年02月01日
    浏览(43)
  • 机械臂速成小指南(九):正运动学分析

    👨‍🏫🥰🥳需要机械臂相关资源的同学可以在我的CSDN主页中寻找哦🤖😽🦄 指南目录📖: 🎉🎉机械臂速成小指南(零点五):机械臂相关资源🎉🎉 机械臂速成小指南(零):指南主要内容及分析方法 机械臂速成小指南(一):机械臂发展概况 机械臂速成小指南(二

    2023年04月18日
    浏览(40)
  • MATLAB - 使用运动学 DH 参数构建机械臂

           使用 Puma560® 机械手机器人的 Denavit-Hartenberg (DH) 参数,逐步建立刚体树形机器人模型。在连接每个关节时,指定其相对 DH 参数。可视化机器人坐标系,并与最终模型进行交互。 DH 参数定义了每个刚体通过关节与其父体连接的几何形状。这些参数遵循四种变换惯例:

    2024年01月16日
    浏览(47)
  • aubo-i5机械臂(1)-正运动学求解

    目录 1.DH表建立 2.Matlab实现正运动学求解  注:使用改进DH表建立的  根据公式求出相邻连杆的变换矩阵 因公式相同,则使用for循环求出相邻连杆的齐次变换矩阵并相乘得出末端到基座的其次变换矩阵。

    2024年02月02日
    浏览(56)
  • 三轴机械臂逆运动学解算(附代码)

    机械臂运动位姿的求解有两种方式 通过控制已知的连轴(舵机或电机)的旋转角度,求出机械臂终端的空间坐标 通过已知的抓取点的空间坐标,求解出三个舵机所需要转动的角度,这里主要讲解逆运动学解法 ​​ 此处θ1 ,θ2, θ3是三个舵机所需转动的角度 ,γ是杆3相对于

    2024年02月04日
    浏览(74)
  • 机械臂速成小指南(二十二):机械臂逆运动学的数值解方法

    👨‍🏫🥰🥳需要机械臂相关资源的同学可以在我的CSDN主页中寻找哦🤖😽🦄   指南目录📖: 🎉🎉机械臂速成小指南(零点五):机械臂相关资源🎉🎉 机械臂速成小指南(零):指南主要内容及分析方法 机械臂速成小指南(一):机械臂发展概况 机械臂速成小指南(

    2024年02月12日
    浏览(45)
  • 六自由度机器人(机械臂)运动学建模及运动规划系列(一)——简介

    毕业设计做了六轴机器人相关的课题,做完之后学到很多,在这里分享一下。本篇首先对六轴机器人及其研究内容进行简单的介绍。 六轴机器人中的六轴指个六自由度,由关节和连杆组成。常见的六轴机器人为 串联型旋转关节机器人 。这里以一款川崎机器人为例,展示一下

    2024年02月02日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包