并联机器人相对于串联机器人有着不同的应用场景。本文主要是基于并联机械臂的基础控制算法做一些阐述。对于机械臂的架构通讯方式(RS232 RS485 Canbus Modbus),结构设计(球关节,universal joint),传感器选型,运动规划(奇异解规避)希望在后面的文章中做进一步研究。

并联机械臂 vs 串联机械臂

在之前的文章中已经写过了串联机械臂的IK&FK,总体上来说,并联型机械臂相对于串联机械臂来说,系统的刚度更好,承载能力(payload)更强(比如很多AR控制器游戏平台),但是运动空间比较有限。从精度上说,串联型机械臂的误差存在累加,而并联型机械臂的误差相对解耦,所以在整体平台校准调平后可以达到比较高的精度。组成的元器件上,串联机械臂使用servo motor 和 对应的光栅或霍尔原理的传感器,而并联使用的是线性电机,在传感器的选型上可以使用线性传感器。算法控制上,并联型运动控制 IK比较简单(下文),而FK比较复杂。但是串联机械臂的FK算法非常多,有numerical method, iterative method (Newton-Raphson), Geometric method.

术语定义:

6-6 6DOF:把并联机器人分为基座和平台,6-6表示基座-平台分别有六个控制点的6自由度并联机器人

奇异解:在给定的Leg length情况下,机器人的位姿解不唯一。也表现为独立表达式出现了关联性,恒等行变换后,矩阵的秩减小。

B frame:基座坐标系

P frame:平台坐标系

串联机器人逆解其实相当简单:

图中有两个坐标系,分别为O(B frame) O‘ (P frame).

机械设计上,固定端点的坐标 Bi (i = 1~6), Ti (i = 1~6)

输入平台的旋转和平移量:旋转角度(roll yaw pitch),平移量(p (px py pz) 假设初始位置的时候px py pz == 0)

Matlab 代码如下:

B1 = [B1x B1y 0 1]
B2 = [B2x B2y 0 1]
B3 = [B3x B3y 0 1]
B4 = [B4x B4y 0 1]
B5 = [B5x B5y 0 1]
B5 = [B6x B6y 0 1]T1 = [T1x T2y 0 1]
T2 = [T2x T2y 0 1]
T3 = [T3x T3y 0 1]
T4 = [T4x T4y 0 1]
T5 = [T5x T5y 0 1]
T6 = [T6x T6y 0 1]TXrad=roll*pi/180;
TYrad=pitch*pi/180;
TZrad=yaw*pi/180;                   %T (4X4) is the transformation (translation + rotation) matrix from Frame P to Frame B.
T = [cos(TYrad)*cos(TZrad), -cos(TYrad)*sin(TZrad), sin(TYrad), px;
sin(TXrad)*sin(TYrad)*cos(TZrad)+cos(TXrad)*sin(TZrad),-sin(TXrad)*sin(TYrad)*sin(TZrad)+cos(TXrad)*cos(TZrad),-sin(TXrad)*cos(TYrad),py;
-cos(TXrad)*sin(TYrad)*cos(TZrad)+sin(TXrad)*sin(TZrad), cos(TXrad)*sin(TYrad)*sin(TZrad)+sin(TXrad)*cos(TZrad), cos(TXrad)*cos(TYrad),pz;
0,0,0,1];T1=T*T1;
T2=T*T2;
T3=T*T3;
T4=T*T4;
T5=T*T5;
T6=T*T6;L1=sqrt((abs(T1(1)-B1(1)))^2+(abs(T1(2)-B1(2)))^2+(abs(T1(3)-B1(3)))^2);
L2=sqrt((abs(T2(1)-B2(1)))^2+(abs(T2(2)-B2(2)))^2+(abs(T2(3)-B2(3)))^2);
L3=sqrt((abs(T3(1)-B3(1)))^2+(abs(T3(2)-B3(2)))^2+(abs(T3(3)-B3(3)))^2);
L4=sqrt((abs(T4(1)-B4(1)))^2+(abs(T4(2)-B4(2)))^2+(abs(T4(3)-B4(3)))^2);
L5=sqrt((abs(T5(1)-B5(1)))^2+(abs(T5(2)-B5(2)))^2+(abs(T5(3)-B5(3)))^2);
L6=sqrt((abs(T6(1)-B6(1)))^2+(abs(T6(2)-B6(2)))^2+(abs(T6(3)-B6(3)))^2);answer = [L1 L2 L3 L4 L5 L6]

Parallel Platform (Stewart Platform) 类型机械臂的正逆解 01相关推荐

  1. 多自由度机械臂运动学正-逆解|空间轨迹规划控制|MATLAB仿真+实际机器调试

    多自由度机械臂运动学正-逆解|空间轨迹规划控制|MATLAB仿真+实际机器调试 ) DH建模法可以参考这个博客: 还有<机器人>这本书,一定要理论实践相结合,理解后可以用几何法建模也可以用 ...

  2. MATLAB机器人机械臂运动学正逆解、动力学建模仿真与轨迹规划

    MATLAB机器人机械臂运动学正逆解.动力学建模仿真与轨迹规划,雅克比矩阵求解.蒙特卡洛采样画出末端执行器工作空间 基于时间最优的改进粒子群优化算法机械臂轨迹规划设计 ID:4610679190520 ...

  3. 和ur的区别_UR机械臂simscape正逆解仿真

    最近在看相关的课程,把作业做一下,还是蛮有意思的.(课程代码所以涉及版权问题,经过同意后我上传代码) UR机械臂的物理模型文件是根据SolidWorks插件simscape导出的xml文件,课程直接提 ...

  4. UR机械臂simscape正逆解仿真

    最近在看相关的课程,把作业做一下,还是蛮有意思的. UR机械臂的物理模型文件是根据SolidWorks插件simscape导出的xml文件,课程直接提供的,博客不便给出,清楚整个建模原理就行.但个人还 ...

  5. 【机器人学】冗余七自由度机械臂的解析解逆解算法

    冗余七自由度机械臂的解析解逆解算法 参考 论文一 论文二 参考 -[1] An Analytical Solution for a Redundant Manipulator with Seven D ...

  6. Matlab机器人工具箱(3-1):五自由度机械臂(正逆运动学)

    01 正运动学:DH表示法 1955年, Denavit和Hartenberg在"ASME Journal of Applied Mechanic"发表了一篇论文,这篇论文介绍了一 ...

  7. 【机器人原理与实践(三)】六轴机械臂正逆解控制

    文章目录 3.1 空间转换矩阵的理解 3.1.1平移变换 3.1.2旋转变换 3.2 D-H参数法 3.3 建立机械臂模型 3.3.1 机械臂模型介绍 3.3.2 使用Matlab进行示教仿真 3.4 ...

  8. python机械臂仿真_VTK与Python实现机械臂三维模型可视化详解

    三维可视化系统的建立依赖于三维图形平台, 如 OpenGL.VTK.OGRE.OSG等, 传统的方法多采用OpenGL进行底层编程,即对其特有的函数进行定量操作, 需要开发人员熟悉相关函数, 从而造成 ...

  9. VTK与Python实现机械臂三维模型可视化详解

    三维可视化系统的建立依赖于三维图形平台, 如 OpenGL.VTK.OGRE.OSG等, 传统的方法多采用OpenGL进行底层编程,即对其特有的函数进行定量操作, 需要开发人员熟悉相关函数, 从而造成 ...

最新文章

  1. php循环获取xml节点,PHP_PHP遍历XML文档所有节点的方法,本文实例讲述了PHP遍历XML文档 - phpStudy...
  2. 一文带你搞懂 MySQL 中的分区!
  3. 正则表达式之python3版
  4. 博导眼里本科生的科研能力:“他们还在玩泥巴”
  5. EasyExcel中输出为时间格式
  6. shell 提取sql 的字段名表名_Mysql 常用SQL语句集锦(仅学习)
  7. 浏览器与JavaScript(一)
  8. 成立一年 百度搜索公司迎来首任 CTO
  9. bzoj 3143: [Hnoi2013]游走(高斯消元)
  10. java已解密的登录请求_使用https协议解决掉顽固不化的已解密的登录请求
  11. iOS 关于布局问题的一些认识
  12. c语言兔子序列答案,C语言经典题目——兔子生兔子(示例代码)
  13. C#操作XML的完整例子——XmlDocument篇(转载,仅做学习之用)
  14. python编写程序掷骰子游戏_python学习之掷骰子游戏
  15. .net接入微信二维码支付(模式二)
  16. 每一个梦想都要让它长上翅膀
  17. 【转载】OFFICE使用技巧FAQ宝典
  18. mysql查询各专业人数_SQL统计各专业学生人数
  19. -webkit-border-radius和-moz-border-radius分析
  20. 点积、内积、外积、叉积、张量积——概念区分

热门文章

  1. G722 Series Intro
  2. 经典python项目源码_建议收藏,22个Python迷你项目(附源码)
  3. [Python]学习笔记5——For循环
  4. oracle数据库导入dmp文件,两种方法
  5. Algorand以2.4美元结束首轮拍卖,为私募价48倍
  6. 个人网站使用github登录
  7. 重启IIS和Sqlserver的命令
  8. 浅析Draw Call
  9. android 动画 图片从指定位置飞到指定位置
  10. Redisson实现分布式锁(3)—项目落地实现