之前打ICRA2018的Tidy Up My Room challenge的时候就已经接触了一些机器人学的内容,不过以偏应用的ROS,轨迹规划,控制居多,对于机械臂和力学确实了解的不多,这学期选了ME300,恶补了一些机械臂的知识,笔记部分内容直接copy自老师ppt,部分内容是自己总结的,我看的两本机器人学教材:

【1】《Introduction to Robotics: Mechanics and Control (4th Edition)》 John J. Craig

【2】《机器人学:建模、控制与视觉》熊有伦 华中科技大学出版社

头图来自minori的机器人学游戏《トリノライン》,参考【百度百科】 【bangumi】


一、机器人的总体和机械结构设计

基本组成:机械部分、传感部分、控制部分

机器人自由度:机器人所具有的独立坐标轴运动的数目。构件所具有的独立运动数目(或确定构件位置的独立参变量的数目)。

开链机构:工作空间大,刚性小,如PUMA562机器人

闭环机构:刚度大,工作空间受限,如Stewart机构 Grubler公式:

其中 n-关节总数,l-连杆数,

-第i个关节自由度数,F-自由度数

其它基本参数:机器人精度、工作范围、最大工作速度、承载能力

机器人的总体设计:确定基本参数、选择运动方式、手臂配置形式、位置检测、驱动和控制方式等。(结构设计时,对各部件的刚度、强度做验算。)

驱动方式:液压(大负载),气动(节拍快),电动(动作复杂/轨迹严格)

传动部件设计:关节-转动关节(Rotary Joint)/ 移动关节(Slide Joint)

二、位姿描述和齐次变换

位姿:位+姿,刚体相对参考点的位置和刚体的姿态,描述方法-齐次变换/矢量/旋量/四元素

位置的描述-位置矢量,空间任意点P的位置

姿态的描述-旋转矩阵,n参考坐标系{A} 、直角坐标系{B}与刚体固接,用{B}的三个主单位矢量xB/yB/zB相对于{A}的方向余弦组成的矩阵,表示刚体B相对于坐标系{A}的方位。

旋转矩阵是3x3的方阵,但实际上只有3个独立元素,可以用旋转矩阵的两个性质建立:

1.三个矢量是单位矢量:

2.三个矢量相互垂直:

刚体的位姿描述:位置+姿态

手爪坐标系:

a:手指接近目标物体的方向为z轴,称为接近矢量。

o:两手指连线方向为y轴,称为方位矢量。

n:另外一个矢量反向由右手法则确定,称为法向矢量

坐标变换:平移

旋转:

绕单轴旋转的基本旋转矩阵:

齐次坐标:用四维向量表示三维空间一点的位置P,称为点的齐次坐标

机器人学中的齐次坐标: ω=1

齐次变换矩阵:

R-旋转矩阵 P-位置向量 f-透视向量,一般取[0,0,0]

齐次变换

,则
,相比
变成了齐次

齐次变换可以分解成旋转变换和平移变换:

平移:

旋转:

齐次复合变换的规则:相对固定坐标系变换矩阵左乘,相对变化坐标系右乘

齐次变换求逆,运用性质:

欧拉法:设最初坐标系{B}与参考系{A}重合,首先使{B}绕zB转α角,继而绕yB转β角,最后绕zB转γ角,α-β-γ称为z-y-z欧拉角,这种描述刚体相对坐标系{A}方位的方法称为欧拉法。

RPY角/RPY变换:nRPY角是描述船舶在海中航行姿态常用的一种方法,船的行驶方向为z轴,绕z轴的旋转角α称为回转(Roll),绕y轴的旋转角β称为俯仰(Pitch),绕x轴的旋转角γ称为偏转(Yaw)。n设最初坐标系{B}与参考系{A}重合,首先使{B}绕xA转γ角,继而绕yA转β角,最后绕zA轴转α角,α、β、γ称为RPY角。

两类矢量:

  1. 自由矢量:由维数、大小和方向三要素唯一规定,例如速度、力矩。变换仅涉及旋转变换

  2. 线矢量:维数、大小、方向、作用线四要素唯一规定,例如力。变换旋量法 参考“Kinematics Geometry of mechanisms”

三、操作臂运动学

研究对象:手臂各连杆之间的位移关系、速度关系和加速度关系。

研究目的:寻找相邻连杆之间的运动与任意连杆之间的运动之间的关系。

研究方法:在每个连杆上固接一个坐标系,然后描述这些坐标系之间的关系(D-H齐次变换)

关节:转动关节(Rotary joint)/移动关节(Prismatic joint)

连杆i ( i=1,2,…n,n为机器人含有关节数目,即机器人自由度数)两端有关节i 和 i+1,在驱动装置带动下,连杆将绕或沿关节轴线,相对于前一临近连杆转动或移动。

连杆的尺寸参数:长度

:两关节轴线沿公垂线距离/扭角
:两轴线夹角

连杆的关系参数:偏置

:沿关节i轴线方向,两个公垂线(轴线(i-1)及轴线i, 轴线i及轴线(i+1))之间的距离 / 关节角
:垂直于关节轴线的平面内,关节轴线i-1和i的公垂线与关节轴线i和i+1的公垂线之间的夹角

机器人每个连杆由四个参数ai、αi、di、θi来描述,称为机器人D-H坐标法。(因为提出者是Denavit和Hartenberg~)

转动连杆的D-H变换:绕zi-1轴转θi角->沿zi-1轴移动di->沿xi轴移动ai->绕xi轴转αi

移动连杆的D-H变换:

机器人运动学方程:将机器人位姿从关节空间变换为直角坐标空间描述,求机器人末端操作装置的位姿->机器人运动学正解。

机器人运动学逆解:给定机器人终端位姿,求各关节变量,也称为机器人逆运动学问题,包括存在性、唯一性及解法。一般方法:求机器人运动学逆解常采用臂腕分离的方法,机器人运动学方程包括臂运动及腕运动。机器人总位移为臂终端相对基座的位移加上终端操作装置中心相对臂终端的位移(均在基坐标系中)。机器人关节变量也分臂、腕两部分求解。


四、操作臂的雅可比

这部分真的挺难的,在用微分运动引入雅可比的时候对于不同坐标系微分运动的变换不太好理解,建议着重看怎么用矢量积法来构造雅可比矩阵就好,微分变换记结论。

关节空间->操作空间:运动学正解 操作空间->关节空间:运动学逆解

雅克比矩阵:研究操作空间速度与关节空间速度之间的线性映射关系

机器人的关节速度向量

qi为连杆i相对于

i-1的角速度或线速度

手爪在基坐标系中的广义速度向量:

v为线速度,w为角速度,从关节空间速度q向操作空间速度V映射的线性关系称为雅可比矩阵,简称Jacobian,记为J:

雅可比矩阵(Jacobian) J:定义为从关节空间速度向操作空间速度V映射的线性关系

微分运动:微分移动+微分转动,

R是旋转矩阵,S(P)为矢量P=[px,py,pz]T的反对称矩阵。

任意两坐标系{A}和{B}之间广义速度的坐标变换:

构造方法:矢量积/微分变换

1.矢量积法:对于有n个关节的机器人,雅可比矩阵为6×n阶矩阵,前三行为位置雅可比矩阵,代表对手爪线速度v的传递比,后三行为方位矩阵,代表相应的关节速度对手爪角速度的传递比。可得分块雅可比矩阵:

对于移动关节

转动关节

其中

2.微分变换法(记结论就好,过程有点麻烦):

移动关节

转动关节

逆雅克比矩阵:若给定机器人终端手爪的广义速度向量V们可以解出关节速度

逆雅可比矩阵求解:利用逆运动学问题的解,直接对其微分来求J-1,对于带球面腕的机器人可用臂腕分离来求J-1 。当J不是方阵时,不存在J-1,可用广义逆(伪逆)雅可比矩阵来确定关节速度向量。超定-最小方差/欠定-拉格朗日乘子法

雅可比的秩不是满秩的关节矢量q称为奇异形位,即: rank(J(q))<min(6,n)。相应的操作空间中的点P(q)为工作空间的奇异点,此时机器人至少丧失一个自由度,常称机器人处于退化位置。

力雅克比:末端广义力矢量:机器人与外界环境相互作用时,在接触处要产生力f和力矩n,统称为末端广义力矢量。

静止状态下,广义力矢量F应与与各关节的驱动力(或力矩)相平衡,n个关节的驱动力(或力矩)组成的n维矢量:

根据各关节作的虚功之和与末端执行器所作虚功应该相等原则有:

机器人力雅可比:表示静止平衡状态下,末端广义力向关节力映射的线性关系。两坐标系{A}和{B}之间广义操作力的坐标变换关系:

六自由度机器人逆向运动学_【课程笔记】Notes for Robotics/机器人学 (Part1)相关推荐

  1. 六自由度方程组 matlab,采用Matlab的六自由度机器人三维运动学仿真_李庆.pdf

    采用Matlab的六自由度机器人三维运动学仿真_李庆 第 ( ) 3 卷 第 期 华侨大学学报 自然科学版 7 3 Vol.37 No.3 年 月 ( ) 2016 5 JournalofHua ia ...

  2. 【Matlab 六自由度机器人】运动学正解(附MATLAB机器人正解完整代码)

    [Matlab 六自由度机器人]求运动学正解 往期回顾 前言 正文 一.运动学正解 1. 齐次变换矩阵 2. 总变换 二.代码实现 1. 定义各连杆参数 2. 齐次变换矩阵及总变换 3. 代码运行结果 ...

  3. 【Matlab 六自由度机器人】基于蒙特卡罗方法(Monte Carlo Method)构建机器人工作空间(附MATLAB建模仿真完整代码)

    [Matlab 六自由度机器人]基于蒙特卡洛法构建工作空间 往期回顾 前言 正文 一.蒙特卡洛方法及机器人工作空间的概述 1. 蒙特卡洛法 2. 机器人工作空间 二.rand函数的应用 1. rand ...

  4. 工业机器人 郝卫东_六自由度机器人焊接轨迹研究

    张用,郝卫东,朱博譞,李君,苗国强,刘芳平 (桂林电子科技大学 机电工程学院,广西 桂林 541004) 摘要:焊接轨迹是机器人焊接时所行走的轨迹,焊接轨迹算法是控制机器人焊接轨迹的数学模型,本文提出 ...

  5. 六自由度机器人(机械臂)运动学建模及运动规划系列(五)——避障路径规划

    在之前的内容中,我们对机器人的运动轨迹进行了规划,但是,这种规划方法的运动路径是根据简单的轨迹人为组合起来的,具有较大的任意性.在实际的复杂工作环境中,采用人工规划路径的方法,难以保证规划的效率和准确 ...

  6. 【Matlab 六自由度机器人】关于机器人运动学反解的有关问题

    [Matlab 六自由度机器人]关于机器人运动学反解的有关问题 近期更新 前言 正文 反解的三类问题 一.中间点在工作空间之外 二.在奇异点附近关节速度骤增 三.起始点和目标点有多重解 总结 参考资料 ...

  7. 六自由度机器人正逆运动学

    简介 本文主要是对传统六自由度机器人进行正逆运动学求解,选取大族机器人Elfin05 为分析的对象,开发语言是C++.(完善中) 机器人正运动学 机器人正运动学推导过程 各关节坐标系确定的通用方法: ...

  8. 【Matlab 六自由度机器人】定义标准型及改进型D-H参数建立机器人模型(附MATLAB建模代码)

    Matlab建立六自由度机器人模型 近期更新 前言 1.Matlab机器人工具箱 2.研究对象-六自由度机器人 正文 一.D-H参数(Denavit–Hartenberg parameters) 1. ...

  9. matlab机器人轨迹规划仿真程序,基于MATLAB的六自由度机器人轨迹规划与仿真.pdf...

    基于MATLAB的六自由度机器人轨迹规划与仿真 学兔兔 l 訇 似 基于MATLAB的六自由度机器人轨迹规划与仿真 Trajectory planning and simulation of six- ...

最新文章

  1. seo发展基本趋势优化专员必须知道!
  2. python爬虫原理-Python爬虫原理
  3. python2.7 end=号报错_python2 post 上传压缩文件编码报错
  4. Android ListView下拉与上拉刷新加载更多数据 二
  5. windows系统查看80端口被占用的程序并结束该程序运行
  6. IT不是技术,IT是一个世界
  7. 28个极简代码——python
  8. [转]How to change Atheros AR9285 MAC addr on Win7(Win7下更改Atheros AR9285 MAC地址)
  9. 水滴IP教你如何查询QQ好友的IP地址
  10. 台达变频器485通讯接线图_台达变频器RS485通讯设置
  11. A LEARNED REPRESENTATION FOR ARTISTIC STYLE
  12. NGINX源码之:ngx_hash
  13. FreeXGIS系列产品介绍
  14. KOL新消费品牌营销知多少
  15. 用 SLF4j/ Logback打印日志
  16. Greenplum查看表/库大小、进程、表膨胀处理(sql语句)
  17. 如何借助SVG+CSS用2个小时撸完一个网易云音乐的动效海报(可控制速度)
  18. WLAN框架应用笔记
  19. python是什么模块,python中什么是模块
  20. 太阳系在银河系中的真实运动轨迹

热门文章

  1. ubuntu 10.4非法关机后上不了网
  2. 德标螺纹规格对照表_抚顺船用外螺纹铜减压阀带NK船检证书
  3. mac os域名解析处理 清缓存 映射
  4. redis 三种特殊数据类型
  5. rem.js常用代码
  6. mysql 字符转数值_深入MYSQL字符数字转换的详解
  7. printf函数源码linux,再来一版简易的printf函数实现
  8. 今天开通一个真正属于自己的博客了《L.M》
  9. 后台开发常用mysql语句_v1.0
  10. cenos6.4安装gvim