六轴机器人运动学正解
关于机器人运动学正解网上和机器人相关书籍上都是通过建立连杆坐标系和DH参数推导出来的,推导过程比较繁琐,本人不是从事机器人专业,我在推导机器人运动学正解的时候还不知道有DH参数一说,我的算法原理是运用计算机图形学中三维几何变换矩阵推导的,过程比较直观,通俗易懂。
我们知道,三维空间中平移(tx,ty,tz)距离对应的齐次变换矩阵为:
绕x轴旋转θ角对应的矩阵为:
绕y轴旋转θ角对应的矩阵为:
绕z轴旋转θ角对应的矩阵为:
机器人各个关节的运动无非是绕某个轴线旋转,因此我们可以利用上面4个矩阵来推导机器人运动学正解。
首先给出机器人的结构模型:
我们发现,轴1其实绕z轴旋转,因此轴1对应的旋转矩阵为:
轴2是绕平行于y轴的一个轴线旋转,这里我们需要用到UG或者其他的三维软件打开机器人3D模型查看旋转中心的坐标值,这里我们姑且用一个常量代替:(c2x,c2y,c2z),由于轴2的旋转轴不是y轴,因此不能直接套用绕y轴的旋转矩阵,但我们可以通过平移将其移动到与y轴重合的位置,然后再绕y轴旋转给定的关节角度,最后将其平移回原来的位置,这样可以通过3个变换操作得到轴2对应的旋转矩阵。
首先将轴2平移使其与y轴重合,平移向量为(-c2x,-c2y,-c2z),对应的矩阵为:
然后再绕y轴旋转给定的关节角度θ2,对应的矩阵为:
最后将其平移回原来的位置:
因此最终轴2对应的旋转矩阵为上述3个矩阵的复合效果,即:
注意这里是矩阵的左乘,从右往左读。
轴3也是绕平行于y轴的轴线旋转,按照同样的方法,先平移,再旋转,最后再平移可以的得到轴3的旋转矩阵:
轴4是绕平行于z轴的轴线旋转,按照上述方法可以得到轴4的旋转矩阵:
轴5也是绕平行于y轴的轴线旋转:
轴6是绕平行于z轴的轴线旋转:
因此最终的所求的旋转矩阵为:
在这里我们的机器人的初始姿态最好是零位状态,即每个关节角度为0的状态,方便我们分析问题,看看各个旋转轴是不是与坐标轴平行,如果不平行,此时还需要进行使旋转轴与某一选定坐标轴(x,y或z轴)对齐的旋转操作,再将此轴变回原来的位置。
六轴机器人运动学正解相关推荐
- 6轴机器人运动学正解,逆解1
正解 给定机器人各关节的角度,计算出机器人末端的空间位置 逆解 已知机器人末端的位置和姿态,计算机器人各关节的角度值 常见的工业机器人 正解与逆解的求解需要相应的机器人运动方程,其中关键的就是DH参数 ...
- 6轴机器人运动学正解,逆解2
逆解 逆解计算方法可以参考以下书籍 机器人学导论--分析.系统及应用 电子工业出版社 机器人学导论第3版 机械工业出版社 机器人学建模.规划与控制 西安交通大学出版社 对于关节1,2,3可以从运动方程 ...
- 有关并联绳驱机器人运动学正解反解的学习(新手)
有关并联绳驱机器人运动学正解反解的学习 Preface(complain) Perface(start) Advantages of parallel robot Disdvantages of pa ...
- 6轴机器人运动学逆解matlab,六轴机器人建模方法、正逆解、轨迹规划实例与Matalb Robotic Toolbox 的实现...
摘要 本文主要是给大家一个系统的概念,如何用Matlab实现六轴机器人的建模和实现轨迹规划.以后将会给大家讲解如何手写正逆解以及轨迹插补的程序.程序是基于Matlab2016a,工具箱版本为Robot ...
- 六轴机械臂-正解+逆解+轨迹规划实现
之前,写了一篇博客,从坐标系的说明 -> D-H参数表的建立 -> 正解和逆解的整个算法推导过程整理了一篇博客https://blog.csdn.net/ymj7150697/articl ...
- 【个人简记】基于MDH,6R机器人运动学正解
[个人理解,有错请指出,谢谢] MDH的建模方式先通过x轴变化再通过z轴变化 因此可以发现关节之间旋转的变化如下图 关节的变化矩阵如下图所示,以关节1变换到关节2为例 s1 = sinθ1: c1 = ...
- 6轴机器人运动学(正解)
理论部分 概念 运动学正解,简而言之,就是给出6个关节变量,求得机械臂末端的位置和姿态 即给出j1−j6j_1 - j_6j1−j6,求x,y,z,rx,ry,rzx,y,z,rx,ry,rzx, ...
- 【Matlab 六自由度机器人】运动学正解(附MATLAB机器人正解完整代码)
[Matlab 六自由度机器人]求运动学正解 往期回顾 前言 正文 一.运动学正解 1. 齐次变换矩阵 2. 总变换 二.代码实现 1. 定义各连杆参数 2. 齐次变换矩阵及总变换 3. 代码运行结果 ...
- Puma560机器人运动学正逆解
puma560机器人D-H参数 puma560采用的是改进D-H参数,其DH参数表如下: i αi ai di θi 1 0 0 0 t1 2 -90 0 0 t2 3 0 r2 d3 t3 4 -9 ...
最新文章
- 指针变量p与“零值”进行比较的if 语句怎么写?
- 《Android 游戏开发大全(第二版)》——6.4节角色扮演游戏
- 面试官:数据量大的情况下分页查询很慢,有什么优化方案?
- Eclipse tooltip变黑的修正
- 写写做数模竞赛的经验
- Smart3D-安装教程
- 百度文库源码php,仿百度文库或豆丁网在线浏览doc.pdf.xls.txt源码
- php制作多媒体课件,网络自主学习型多媒体课件设计与制作PPT.ppt
- 4.8 数值分析: 牛顿迭代法及收敛分析
- 冰点还原密码查看工具
- 河北源达投顾:用专业教学,用智能解决选股烦恼
- ps制作动态html,PS制作动态海报教程
- 【数据分析】快速获取微博用户数据,图片,视频
- Flink Table Api 之Over Windows使用
- Ubuntu 18.04上跑通LSD SLAM
- msp430单片机复习内容
- 第四十九回 七星坛诸葛祭风 三江口周瑜纵火
- 120个极品网站 收集历时2年 - 计算机应用 - 迅雷论坛
- 大学一定要拿计算机证书吗,大学期间,一定要拿到这些证书,不要到了毕业才后悔...
- 随机森林的特征重要性原理