目录

  • 机器人静力学与雅可比矩阵
    • 引言
      • 两大问题
      • 虚功与虚功原理
    • 操作臂力和力矩的平衡
      • 关节驱动力计算
    • 雅可比矩阵
      • 解析雅可比矩阵
      • 几何雅可比矩阵

机器人静力学与雅可比矩阵

引言

两大问题

  • 问题一:机器人静力学建模问题。已知外界环境对机器人手部作用力,求相应的满足静力学平衡条件的关节驱动力矩。 输入力与输出力间的传递(映射)关系
  • 问题二:刚度问题。在外力和负载的作用下,机器人末端执行器会偏离理想的位置。 载荷与变形间对应关系

虚功与虚功原理

虚功原理:具有理想约束力学体系,其平衡的充要条件是所有主动力在任意虚位移中所作元功之和等于零。
虚功:作用在质点上的力(含约束力)在任意虚位移中所作的功。
虚位移:质点在约束允许情况下可能发生的无限小位置变更。

操作臂力和力矩的平衡

关节驱动力计算

对于每个杆件而言,考虑负载力(从末端传递到各关节),重力(作用于质心),和关节力(关节载荷,由此获得关节驱动力)

计算时,采用前置DH法,即改进的DH(MDH)法创建坐标系。

使用MDH法,使得每个杆件的坐标系建立在输入端,便于在列写平衡方程时,力与杆件的下标相对应,不易出现错误。

在这其中:

  • fif_ifi​:连杆i-1作用在连杆i上的力
  • MiM_iMi​:连杆i-1作用在连杆i上的力矩
  • fi+1f_{i+1}fi+1​:连杆i作用在连杆i+1上的力
  • Mi+1M_{i+1}Mi+1​:连杆i作用在连杆i+1上的力矩
  • migm_i gmi​g:连杆i的重力,作用在质心上
  • irci^ir_{ci}irci​:连杆i上的质心位置
  • iPi+1^iP_{i+1}iPi+1​:坐标系{i+1}的原点相对于坐标系{i}的表示

单独分析连杆i,其处于平衡状态有:
力平衡
ifi−ifi+1+imig=0^if_i - ^if_{i+1} + ^im_i g = 0 ifi​−ifi+1​+imi​g=0

各力均在坐标系{i}下表示,相互作用力之间使用负号标注。
力矩平衡

iMi−iMi+1−iPi+1×ifi+1+irciimig=0^iM_i - ^iM_{i+1} - ^iP_{i+1} \times ^if_{i+1} + ^ir_{ci} {^im_i g} = 0 iMi​−iMi+1​−iPi+1​×ifi+1​+irci​imi​g=0
如果忽略掉连杆本身重量,上两式可以写成反向迭代的形式

ifi=ifi+1^if_i = ^if_{i+1} ifi​=ifi+1​

iMi=iMi+1+iPi+1×ifi+1^iM_i = ^iM_{i+1} + ^iP_{i+1} \times ^if_{i+1} iMi​=iMi+1​+iPi+1​×ifi+1​

建立虚功方程:
δw=(iFi+1)′iDi+1=(i+1Fi+1)′i+1Di+1\delta w = (^iF_{i+1})^{\prime} {^iD_{i+1}} = (^{i+1}F_{i+1})^{\prime} {^{i+1}D_{i+1}} δw=(iFi+1​)′iDi+1​=(i+1Fi+1​)′i+1Di+1​
D表示杆件微分运动(虚位移)
F表示杆件力(六维向量)
微分运动之间存在这样的关系:
iDi+1=[iRi+100iRi+1]^iD_{i+1} = \begin{bmatrix} ^iR_{i+1} & 0\\ 0 & ^iR_{i+1} \end{bmatrix} iDi+1​=[iRi+1​0​0iRi+1​​]
记:
JDF=[iRi+100iRi+1]J_{DF} = \begin{bmatrix} ^iR_{i+1} & 0\\ 0 & ^iR_{i+1} \end{bmatrix} JDF​=[iRi+1​0​0iRi+1​​]
有:
iDi+1=JDFi+1Di+1^iD_{i+1} = J_{DF} {^{i+1}D_{i+1}} iDi+1​=JDF​i+1Di+1​
整理可得:
iFi+1=JDFi+1Fi+1^iF_{i+1} = J_{DF} {^{i+1}F_{i+1}} iFi+1​=JDF​i+1Fi+1​
把该式带入上述的反向迭代公式的矩阵形式中:
[ifiiMi]=[E0iPi+1×E][ifi+1iMi+1]\begin{bmatrix} ^if_i \\ ^iM_i \end{bmatrix} = \begin{bmatrix} E & 0\\ ^iP_{i+1} \times & E \end{bmatrix} \begin{bmatrix} ^if_{i+1}\\ ^iM_{i+1} \end{bmatrix} [ifi​iMi​​]=[EiPi+1​×​0E​][ifi+1​iMi+1​​]
得到:

[ifiiMi]=[i+1iR0iPi+1×i+1iRi+1iR][i+1fi+1i+1Mi+1]\begin{bmatrix} ^if_i \\ ^iM_i \end{bmatrix} = \begin{bmatrix} ^i_{i+1}R & 0\\ ^iP_{i+1} \times ^i_{i+1}R & ^i_{i+1}R \end{bmatrix} \begin{bmatrix} ^{i+1}f_{i+1}\\ ^{i+1}M_{i+1} \end{bmatrix} [ifi​iMi​​]=[i+1i​RiPi+1​×i+1i​R​0i+1i​R​][i+1fi+1​i+1Mi+1​​]
进一步可以得到力和力矩的传递公式:
ifi=i+1iRi+1fi+1^if_i = {^i_{i+1}R} \, {^{i+1}f_{i+1}} ifi​=i+1i​Ri+1fi+1​
iMi=i+1iRi+1Mi+1+iPi+1×ifi^iM_i = {^i_{i+1}R} \, {^{i+1}M_{i+1}} + ^iP_{i+1} \times ^if_i iMi​=i+1i​Ri+1Mi+1​+iPi+1​×ifi​

如果不考虑关节之间的摩擦,旋转关节除了绕转轴的扭矩外,其余各方向的力和力矩都由机械构件承受。故关节驱动力矩为:
τi=iMiTiZi\tau_i = ^iM_i^T \,{^iZ_i} τi​=iMiT​iZi​
同理,关节的驱动力为
τi=ifiTiZi\tau_i = ^if_i^T \,{^iZ_i} τi​=ifiT​iZi​
我们可以以此为根据,在已知负载的情况下,从末端执行元件开始,递推得到各个关节所需的驱动力矩。从而进一步建立力雅可比矩阵关系。

雅可比矩阵

雅可比矩阵

机器人速度雅可比矩阵(也称为运动雅可比矩阵)可定义为由机器人关节空间速度到操作空间速度的线形变换
在向量微积分中,雅可比矩阵是一阶导数以一定方式排列成的矩阵,其行列式成为雅可比行列式。

解析雅可比矩阵

微分运动学方程:
P˙=dfdqq˙\dot{P} = \frac{df}{dq} \dot{q} P˙=dqdf​q˙​
P可以理解为广义的机器人的运动输出量,q为广义的机器人的输入量。
P=f(q)→{p1(t)=f1(q1,q2,…,qn)p2(t)=f2(q1,q2,…,qn)…pm(t)=fm(q1,q2,…,qn)P=f(q) \to \left\{ \begin{aligned} p_1(t) & = f_1(q_1,q_2,\dots,q_n) \\ p_2(t) & = f_2(q_1,q_2,\dots,q_n) \\ \dots \\ p_m(t) & = f_m(q_1,q_2,\dots,q_n) \end{aligned} \right. P=f(q)→⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧​p1​(t)p2​(t)…pm​(t)​=f1​(q1​,q2​,…,qn​)=f2​(q1​,q2​,…,qn​)=fm​(q1​,q2​,…,qn​)​

ddtfi(q(t))=ddtfi(qi(t),…,qj(t),…,qn(t))=∂fi∂q1q1˙(t)+⋯+∂fi∂qjqj˙(t)+⋯+∂fi∂qnqn˙(t)\frac{d}{dt}f_i(q(t)) = \frac{d}{dt}f_i(q_i(t), \dots, q_j(t), \dots,q_n(t)) = \frac{\partial f_i}{\partial q_1} \dot{q_1}(t) + \dots + \frac{\partial f_i}{\partial q_j} \dot{q_j}(t) + \dots + \frac{\partial f_i}{\partial q_n} \dot{q_n}(t) dtd​fi​(q(t))=dtd​fi​(qi​(t),…,qj​(t),…,qn​(t))=∂q1​∂fi​​q1​˙​(t)+⋯+∂qj​∂fi​​qj​˙​(t)+⋯+∂qn​∂fi​​qn​˙​(t)

ddtfi(q(t))=(∂fi∂q1…∂fj∂qj…∂fn∂qn)(q1˙(t)⋮qj˙(t)⋮qn˙(t))=Jfi(q(t))qt˙\frac{d}{dt}f_i(q(t)) = \begin{pmatrix} \frac{\partial f_i}{\partial q_1} & \dots & \frac{\partial f_j}{\partial q_j} & \dots & \frac{\partial f_n}{\partial q_n} \end{pmatrix} \begin{pmatrix} \dot{q_1}(t) \\ \vdots \\ \dot{q_j}(t) \\ \vdots \\ \dot{q_n}(t) \end{pmatrix}= J_{f_i}(q(t)) \dot{q_t} dtd​fi​(q(t))=(∂q1​∂fi​​​…​∂qj​∂fj​​​…​∂qn​∂fn​​​)⎝⎜⎜⎜⎜⎜⎜⎛​q1​˙​(t)⋮qj​˙​(t)⋮qn​˙​(t)​⎠⎟⎟⎟⎟⎟⎟⎞​=Jfi​​(q(t))qt​˙​
得到:

这种求解雅可比矩阵的方法称为求导法,所构建的雅可比矩阵称为解析雅可比矩阵。

几何雅可比矩阵

机器人关节速度向量定义为:
q˙=[q1˙q2˙…qn˙]T\dot{q}= \begin{bmatrix} \dot{q_1} & \dot{q_2} & \dots & \dot{q_n} \end{bmatrix}^{T} q˙​=[q1​˙​​q2​˙​​…​qn​˙​​]T
执行器在基系中的广义速度向量:
V=[vω]=[x˙y˙z˙ωx˙ωy˙ωz˙]TV= \begin{bmatrix} v \\ \omega \end{bmatrix}= \begin{bmatrix} \dot{x} & \dot{y} & \dot{z} & \dot{\omega_x} & \dot{\omega_y} & \dot{\omega_z} \end{bmatrix}^{T} V=[vω​]=[x˙​y˙​​z˙​ωx​˙​​ωy​˙​​ωz​˙​​]T
V=J(q)q˙V = J(q) \dot{q} V=J(q)q˙​
前三行称为位置雅可比矩阵,代表对末端执行器线速度v的传递比,后三行称为姿态雅可比矩阵,代表相应的关节速度对末端执行器角速度ω\omegaω的传递比
根据虚功原理,还可以推导出速度雅可比与力雅可比的关系,推导过程这里暂时省略,可能后续会添加:

矢量积法构建雅可比矩阵

对于移动关节:
[vω]=[zi0]qi˙Ji=[zi0]\begin{bmatrix} v\\ \omega \end{bmatrix}= \begin{bmatrix} z_i\\ 0 \end{bmatrix} \dot{q_i} \quad J_i = \begin{bmatrix} z_i\\ 0 \end{bmatrix} [vω​]=[zi​0​]qi​˙​Ji​=[zi​0​]

ziz_izi​是i坐标系zzz轴单位矢量在基系中的表示。

对于转动关节:
[vω]=[zi×0P(n,i)zi]qi˙\begin{bmatrix} v\\ \omega \end{bmatrix}= \begin{bmatrix} z_i \times ^0P_{(n,i)}\\ z_i \end{bmatrix} \dot{q_i} [vω​]=[zi​×0P(n,i)​zi​​]qi​˙​
0P(n,i)^0P_{(n,i)}0P(n,i)​为末端坐标原点相对于i系的位置矢量在基系的表示。
最终有:

机器人静力学与雅可比矩阵相关推荐

  1. 从理论力学到机器人动力学(二):虚功原理与雅可比矩阵

    4 静力学   静力学分析通俗来说就是对一个受到很多力的静止物体进行受力分析,然后画受力图.当物体受力很复杂时,分析比较麻烦,并且过多的约束力也将使得方程求解变复杂.   虚功原理就解决了静力学分析中 ...

  2. 机器人导论知识点总结

    机器人导论知识点总结 第1章 概论 第一节 机器人的基本概念 1.机器人名称的由来 机器人的英文名词是Robot,Robot一词最早出现在1920年捷克作家卡雷尔·恰佩克(Karel Capek)所写 ...

  3. 现代机器人(Modern Robotics):力学,规划,控制读书笔记

    现代机器人:力学,规划,控制读书笔记 在csdn上传主要是可以换积分,文章乱码比较多,有用的话可以来知乎看,目录链接如下,感兴趣可以来看: 现代机器人:力学,规划,控制(chapter1)内容简介 - ...

  4. 【现代机器人学】学习笔记四:一阶运动学与静力学

    这节课的内容主要讲速度的正向运动学(也就是位置的一阶导数,所以叫一阶运动学)和静力学,这也是本书首次出现动力学相关的内容(刚体运动那节提到的力旋量算是一个概念的介绍). 个人结合平时的工程项目看,觉得 ...

  5. 基于Matlab 与ADAMS联合的机器人系统仿真分析

    机器人优化设计与仿真分析专题 机器人建模基础 4月23日 (9:00-12:00) 机器人运动学基础 几何运动学闭环解解析法建模 运动学MATLAB脚本文件编写(封闭解.构型绘制) 串联机器人MATL ...

  6. 毕业设计 油罐检测爬壁机器人结构设计(说明书+CAD图纸+开题报告+任务书+外文翻译+英文文献)

    油罐检测爬壁机器人结构设计 摘要:弧面机器人是移动机器人领域的一个重要分支,它是地面移动机器人结合吸附技术.它可以连接到垂直墙爬行,和携带工具来完成特定的任务大大扩大了机器人的应用范围. 本文检测大型 ...

  7. 机器人仿真设计与应用

    软体机器人技术是近年来机器人领域最为热门的研究领域之一.由于软体机器人具有天然的柔性.自适应性.低成本和被动安全性,在人机交互.医疗服务等领域具有非常广泛的应用前景.同时,软体机器人的研究涉及软材料. ...

  8. 机器人学基础(3)-动力学分析和力-拉格朗日力学、机器人动力学方程建立、多自由度机器人的动力学方程建立

    机器人学基础(3)-动力学分析和力-拉格朗日力学.机器人动力学方程建立.多自由度机器人的动力学方程建立 本章节主要包括拉格朗日力学.拉格朗日函数及建立求解.多自由度机器人的动力学方程.机器人的静力分析 ...

  9. 矢量积法求解雅可比矩阵

    雅可比矩阵 J(q)J(q)J(q) 可以看成是关节空间的速度矢量 q˙\dot{q}q˙​ 向笛卡尔空间的速度矢量 x˙\dot{x}x˙ 的线性映射.雅可比矩阵 J(q)J(q)J(q) 依赖于机 ...

最新文章

  1. POJ1523 SPF tanjar割点求块数
  2. OPKG 软件包管理
  3. oracle产品追溯,如何追溯AR到Receipt再到GL
  4. 获取/设置IFRAME内对象元素的几种JS方法
  5. concat合并的数组会有顺序么_超全的JS常用数组方法整理
  6. php 小程序 活动弹幕,小程序:弹幕效果的消息提示
  7. 计算机应用作业2,计算机应用2作业
  8. app屡次停止运行怎么解决_打桩机发动机温度过热的问题及运行中熄火怎么解决_行业新闻...
  9. phantomjs执行常见错误
  10. CentOS 7安装配置vsftpd做FTP服务
  11. Winform窗体控件自适应大小
  12. Appium原理初步--Android自动化测试学习历程
  13. mysql 更新删除数据,MYSQL数据的插入、删除、更新
  14. 简短的爬虫程序,14行Python代码轻松实现爬取网站视频
  15. 软件测试自我评价范文,软件测试工程师100字自我评价范文
  16. IntelliJ IDEA教程()ideaIU-快速创建测试用例
  17. matlab 定义结构体数组,结构体数组及其定义和使用,C语言结构体数组详解
  18. 单片机程序配置成开漏输出_单片机的GPIO配置
  19. 五大车载操作(VOS)系统优劣对比,车载系统架构分析-QNX系统性能分析
  20. 云平台短信验证码通知短信java/php/.net开发实现

热门文章

  1. 谷歌ajax失败重新请求,谷歌浏览器 - 失败GET ajax请求
  2. P1022 计算器的改良(落谷)
  3. LINUX下看门狗的使用
  4. 技惊四座,全新视觉,强悍街舞!——[全美最佳舞团]第3季冠军! Quest Crew 表演合集 (清晰版) 【收藏】
  5. 个人自媒体推广费用应该如何管理?
  6. 第三百二十五节,web爬虫,scrapy模块标签选择器下载图片,以及正则匹配标签...
  7. python tablewidget单击事件_QTableWidget右键单击事件有问题
  8. OpenCV教程指南
  9. html input dropdown,Vue.js 带下拉选项的输入框(Textbox with Dropdown)组件
  10. 微信小程序开发之——音乐小程序-项目说明