基础知识

速度矢量,角速度矢量,叉乘运算

速度是描述质点运动快慢和方向的物理量,等于位移对时间的微分。同时也等于加速度对时间的积分。
角速度: 定义:一个以弧度为单位的圆(一个圆周为2π,即:360度=2π),在单位时间内所走的弧度即为角速度,ω=dφ/dt
角速度的方向垂直于转动平面,可通过右手螺旋定则来确定。
线速度=角速度叉乘半径(v=w×rv=w\times rv=w×r)(由圆心向外指) 根据叉乘的右手法则来规定角速度的方向
叉乘:

刚体的线速度和角速度

线速度

把坐标系{B} 固连在一刚体上,要求描述相对于坐标系{A} 的运动BQ^{B}\textrm{Q}BQ这里已经认为坐标系{A} 是固定的。
坐标系{B} 相对于坐标系{A} 的位置用位置矢量APBORG^{A}\textrm{P}_{BORG}APBORG​ 和旋转矩阵BAR_{B}^{A}\textrm{R}BA​R来描述。此时,假定方位BAR_{B}^{A}\textrm{R}BA​R不随时间变化,则Q点相对坐标系{A} 的运动是由于APBORG^{A}\textrm{P}_{BORG}APBORG​ 或BQ^{B}\textrm{Q}BQ随时间的变化引起的。
求解坐标系{A} 中Q 点的线速度是非常简单的。只要写出坐标系{A} 中的两个速度分量,求其和为:AVQ=AVBORG+BARBVQ^{A}\textrm{V}_Q=^{A}\textrm{V}_{BORG}+_{B}^{A}\textrm{R} ^{B}\textrm{V}_QAVQ​=AVBORG​+BA​RBVQ​ (1)

(1)只适用千坐标系{B}和坐标系{A} 的相对方位保持不变的情况!

角速度

如图1两坐标系原点重合且相对线速度为零,固定在坐标系{B}上的矢量BQ^{B}\textrm{Q}BQ
以角速度 AΩB^{A}\Omega_BAΩB​相对于坐标系{A}旋转。那么从{A}看固定在{B}中的矢量随时间变化,可以根据下图分析:
从坐标系{B}看矢量Q是不变的:BVQ=0^{B}\textrm{V}_Q=0BVQ​=0
从坐标系{A}中看点Q的速度为旋转角速度AΩB^{A}\Omega_BAΩB​
下图显示了矢量Q绕AΩB^{A}\Omega_BAΩB​的旋转,是从坐标系{A}中观测到的

可以由图2-3得知:
1、AQ^{A}\textrm{Q}AQ的微分增量一定垂直于AΩB^{A}\Omega_BAΩB​和AQ^{A}\textrm{Q}AQ
2、微分增量的大小为:∣ΔQ∣=(AQsinθ)(∣AΩB∣Δt)|\Delta Q|=(^{A}\textrm{Q}sin\theta)(|^{A}\Omega_B| \Delta t)∣ΔQ∣=(AQsinθ)(∣AΩB​∣Δt)
又饿了大小和方向,就可以得到矢量积,根据角速度矢量公式有AVQ=AΩB×AQ^{A}\textrm{V}_{Q}=^{A}\Omega_B\times^{A}\textrm{Q}AVQ​=AΩB​×AQ
但是一般情况下Q是相对于坐标系{B}变化的,加上一个分量,可有:
AVQ=BARBVQ+AΩB×BARBQ^{A}\textrm{V}_Q=_{B}^{A}R^BV_Q+^{A}\Omega_B\times_B^AR^BQAVQ​=BA​RBVQ​+AΩB​×BA​RBQ
紧接着将以上线速度与角速度扩展为坐标系原点不重合的情况,最终可以推导出从坐标系{A}观测坐标系{B}中固定速度矢量的最终普遍表达式:

AVQ=AVBORG+BARBVQ+AΩB×BARBQ^{A}\textrm{V}_Q=^AV_{BORG}+_{B}^{A}R^BV_Q+^{A}\Omega_B\times_B^AR^BQAVQ​=AVBORG​+BA​RBVQ​+AΩB​×BA​RBQ

连杆间的速度传递

连杆间速度的传递就如同位姿变换一般,可以通过连杆间的推导从基座的速度逐步推导到末端速度
角速度
当两个ω\omegaω矢量都是相对于同一个坐标系时,那么这些角速度能够相加。因此,连杆i+l 的角速度就等于连杆i的角速度加上一个由于关节i+ 1 的角速度引起的分量。参照坐标系{i}, 可写成:(实在懒得打公式,直接截图了)
其中

注意:只有当所有速度矢量都变换到相对于通一个坐标系表述时,两个速度矢量才可以相加!
可以带到得到连杆i+1角速度相对于坐标系{i+1}的表达式
线速度
坐标系{i+ 1} 原点的线速度等于坐标系{i} 原点的线速度加上一个由于连杆i的角速度引起的新的分量。因此有:




要得到连杆3的速度相对于固定坐标系表达式,用旋转矩阵30R^0_3R30​R对其作旋转变换即可

雅克比

雅克比矩阵是以n个n元函数的偏导数为元素的行列式,事实上,在函数都连续可微(即偏导数都连续)的前提之下,它就是函数组的微分形式下的系数矩阵(即雅可比矩阵)的行列式
在这里表示的是速度的映射,是一个时变线性映射Y˙=J(X)X˙\dot{Y}=J(X)\dot{X}Y˙=J(X)X˙
在机器人学中,通常使用雅可比将关节速度与操作臂末端的笛卡儿速度联系起来:
0v=0J(Θ)Θ˙^0v=^0J(\Theta)\dot{\Theta}0v=0J(Θ)Θ˙
其中Θ\ThetaΘ为操作部关节角矢量,vvv是笛卡尔速度矢量,对于6关节机器人,雅克比矩阵是6x6阶矩阵,Θ\ThetaΘ是6x1维额,0v^0v0v也是6x1维,由一个3x1维线速度矢量和一个3x1维角速度矢量组合起来的

根据
可以得到雅克比矩阵:

力域中的雅克比

在多维空间中,功是一个力或者力矩矢量与位移矢量的点积,利用虚功原理可知:

由上式可知,雅克比的转置将作用在手臂上的笛卡尔力映射成了等效关节力矩,当得到相对于坐标系{0}的雅克比矩阵后,可有对坐标系{0}中的力矢量进行变换:
当雅克比矩阵不满秩时,同位置域中的奇异性相同,存在某些特定的方向,末端执行器在这些方向上不能施加期望静态力,在奇异位置,末端笛卡尔施加的力在某些方向上增大或者减小,与所求的关节空间驱动力的值无关

matlab代码

J = robot.jacob0(q)  %jacob0()求解的是将关节速度映射到世界坐标系中的末端执行器空间速度
Jn = jaconb(q);%末端执行器在自身空间内的速度

机器人动力学(雅克比)相关推荐

  1. 机器人动力学简述 Robot Dynamics

    机器人动力学有两个问题需要解决: 动力学正问题--根据关节驱动力矩或力,计算机器人的运动(关节位移.速度和加速度): 动力学逆问题--已知轨迹运动对应的关节位移.速度和加速度,求出所需要的关节力矩或力 ...

  2. 机器人动力学简化模型(Euler-Lagrange equation)

    多关节机器人动力学模型的特点: 1.动力学方程非常复杂,所含项数较多.随着关节的增加,项数呈几何增长. 2.高度非线性. 3.高度耦合. 4.不确定性.负载.摩擦.干扰等随时间变化. n关节非线性串联 ...

  3. 机器人动力学知识参考资料

    1.机器人学 第6章 机器人动力学_图文_百度文库 https://wenku.baidu.com/view/a73172ebbcd126fff6050b82.html?rec_flag=defaul ...

  4. 机器人动力学与控制_大负载协作机器人难关怎么攻克?3大技术细节解析!

    对传统机器人来说,大负载的机器人控制难度会更大,这极大影响了机器人的效率和稳定性. 其主要原因如下: (1)传统的机器人编码器安装在减速机输入侧,但是减速机多少都有背隙,随着臂展的变长,背隙造成末端点 ...

  5. matlab 求正交补,机器人动力学(一)空间向量(Spatial Vectors)简介

    从本文开始介绍用于机器人动力学建模与分析的空间向量方法.本文是对一篇讲义的编译.这篇讲义通过对物体运动和描述方法的分析,引入了一种更为有效的描述刚体运动的方法,这种方法使用的基本工具就是六维的空间向量 ...

  6. 《机器人动力学与控制》第五章——速度运动学之机械臂的雅各比矩阵 5.0 导言

    文章目录 <机器人动力学与控制>第五章--速度运动学之机械臂的雅各比矩阵 5.0 导言 参考文献 <机器人动力学与控制>第五章--速度运动学之机械臂的雅各比矩阵 5.0 导言 ...

  7. 1. 机器人动力学—动力学的数学基础

    1. 引言 这篇文章主要介绍机器人动力学相关的几个基本的数学概念,主要是为后续正式介绍机器人动力学奠定基础,具体内容请参考:古月居

  8. 【机器人算法】机器人动力学、运动学和基于动力学模型的仿真与控制

    文章目录 运动学 机器人运动学参数标定(DH参数标定) 运动学逆解 解析解 数值解 工作空间分析 可操纵性 轨迹规划 路径规划 静力学 动力学 动力学模型 动力学仿真 自由下落 遇到跳床 重力补偿 动 ...

  9. Sympybotics机器人动力学符号推导工具箱

    Sympybotics Sympybotic是一款使用python语言利用Sympy和Numpy包的开源机器人运动学和动力学的符号推导工具包,在机器人动力学参数辨识中可以用来建立机器人动力学模型,根据 ...

  10. 机器人动力学与控制学习笔记(九)————基于模糊自适应增益调整的机器人滑模控制

    九.基于模糊自适应增益调整的机器人滑模控制 采用自适应模糊系统,可实现机器人滑模控制中切换增益的自适应逼近,从而消除滑模控制中的抖振.本文设计一类基于模糊自适应增益调整的机器人滑模控制设计方法. 9. ...

最新文章

  1. ATS 5.3.0在反向代理模式下实现正向代理功能方法
  2. 关于BIO | NIO | AIO的讨论
  3. linux检查是否有D进程,Linux内核调试技术——进程D状态死锁检测
  4. linux命令关闭电脑,SELinux关闭命令详解linux操作系统 -电脑资料
  5. java实现遍历树形菜单方法——HibernateUtil实现
  6. 卧槽,B站联名键盘!
  7. cmd窗口使用python提示“Python not found”,可能是环境变量配置的原因
  8. max os取消开机启动
  9. taskkill 命令:
  10. Android 10正式版发布,支持5G和折叠屏设备
  11. JDBC06 其他操作及批处理Batch
  12. OpenCasCade鼠标移动高亮颜色设置与选中颜色设置
  13. com.android.yf.idp,QQ轻聊版-com.tencent.qqlite_v3.3.0_apkpure.apk
  14. 浙江工业大学计算机类专业是几年,浙江工业大学计算机类专业培养计划
  15. 最难学的十大编程语言,C++排第二,它竟是第一名!不服
  16. word 格式的试题 转 问卷星excel格式
  17. Twitter是什么软件?哪个国家的?怎么使用?免费吗?
  18. 3种方法解决word文档无法编辑
  19. ★深度优先搜索+解空间树+递归,三合一详解
  20. 四川大学研究生计算机学院官网,四川大学计算机学院2018年硕士研究生招生拟录取名单及成绩公示...

热门文章

  1. 一个学习代码的好网站
  2. 二维图像(数组)的fftshift
  3. 【Simulink】电力系统仿真常用模块位置
  4. OMAPL多核异构通信驱动AD9833波形发生器-Notify组件
  5. 游戏开发电子书(PDF)下载分享
  6. 软件开发者的软实力:沟通与协作
  7. Linux上的arping命令介绍
  8. c++ 三点求外接圆圆心 3维实现
  9. Java中List集合去重
  10. Park 变换 系数2/3的由来