PUMA 560机器人正运动学
PUMA 560机器人正运动学TOC
1、 PUMA 560机器人介绍
PMUA 560机器人属于关节式机器人,6个关节都是转动关节,前三个确定手腕参考点位置,后3个确定手腕的方位。
2、D-H参数标定
D—H参数是有两种标定方式的,一种是标准的D-H参数法,还有一种是改进的D—H参数法,大部分书上现在都用到的是改进的D-H法,但也有一些书上用的是标准的D-H法,但是D-H法只是一种对连杆的坐标描述,最后的结果往往相同的参数就会有相同的物理含义在里面。
3、PUMA 560 机器人运动学分析
本文选用改进后得D-H参数法,按照前面坐标系定义的方法,得到PUMA 560机器人的连杆坐标系,如图所示:
连杆坐标系i-1到坐标系i的变化可经过以下几步完成:
第一步:绕x_(i-1)轴旋转α_(i-1)角,使得z_(i-1)轴和z_i轴共面。
第二步:沿着x_(i-1)轴移动a_(i-1)距离,使得z_(i-1)轴和z_i轴共线。
第三步:绕z_i轴旋转θ_i角,使得x_(i-1)轴和x_i轴共线。
第四步:沿着z_i轴移动d_i距离,使得前后两个坐标系得原点重合。
通过上诉几步,我们可以得到连杆的参数:
MATLAB 机械臂建模
在MATLAB 中完成机械臂的正运动学、逆运动学、工作空间等问题的求解
% Modified DH
% PUMA 560 robot
clear;
clc;
th(1) = 0; d(1) = 0; a(1) = 0; alp(1) = 0;
th(2) = 0; d(2) = 149.09; a(2) = 0; alp(2) = -pi/2;
th(3) = 0; d(3) = 0; a(3) = 431.8; alp(3) = 0;
th(4) = 0; d(4) = 433.07; a(4) = 20.32; alp(4) = -pi/2;
th(5) = 0; d(5) = 0; a(5) = 0; alp(5) = pi/2;
th(6) = 0; d(6) = 0; a(6) = 0; alp(6) = -pi/2;
% DH parameters th d a alpha sigma
L1 = Link([th(1), d(1), a(1), alp(1), 0], 'modified');
L2 = Link([th(2), d(2), a(2), alp(2), 0], 'modified');
L3 = Link([th(3), d(3), a(3), alp(3), 0], 'modified');
L4 = Link([th(4), d(4), a(4), alp(4), 0], 'modified');
L5 = Link([th(5), d(5), a(5), alp(5), 0], 'modified');
L6 = Link([th(6), d(6), a(6), alp(6), 0], 'modified');
robot = SerialLink([L1, L2, L3, L4, L5, L6]); %建立机械臂模型
robot.name='PUMA 650 Robot-6-dof';
robot.display() ;
% Forward Pose Kinematics
theta = [90, 0, -90, 0, 0, 0]*pi/180;
robot.plot(theta);
theta2 = [45, 0, 90, 20, 0, 0]*pi/180;
t0 = robot.fkine(theta2); %运动学正解
qi=robot.ikine(t0,theta,[1 1 1 1 1 1]) %运动学逆解
hold onN=30000; t1=-160*pi/180+(160*pi/180+160*pi/180)*rand(N,1);t2=-225*pi/180+(225*pi/180+45*pi/180)*rand(N,1);t3=-45*pi/180+(45*pi/180+225*pi/180)*rand(N,1);t4=-110*pi/180+(110*pi/180+170*pi/180)*rand(N,1);t5=-100*pi/180+(100*pi/180+100*pi/180)*rand(N,1);t6=-266*pi/180+(266*pi/180+266*pi/180)*rand(N,1); %确定各个杆件的运动范围
for n=1:1:Nphoto=robot.fkine([t1(n),t2(n),t3(n),t4(n),t5(n),t6(n)]); plot3(photo(1,4),photo(2,4),photo(3,4),'b.','MarkerSize',0.5); %工作空间求解
end
三级目录
PUMA 560机器人正运动学相关推荐
- 3. 机器人正运动学---坐标系及其变换
目录 1. 引言 2. 位姿的描述(位置与姿态) 2.1 平移的描述(位置) 2.2 旋转的描述(姿态) 3. 总结 1. 引言 个人认为机器人运动学是整个机器人学的核心内容.仍然以前面的SCARA机 ...
- PUMA 560 机器人构型总结
PUMA 560 机器人构型 PUMA560 六轴机器人构型的判定 一般定义机器人三种构型: face:朝向前后 eblow:肘部上下 wrist:腕部翻转. 三个变量共 2 *2 *2=8 种姿态. ...
- 4. 机器人正运动学---理解变换矩阵
目录 1. 引言 2. 旋转矩阵的几个性质 2.1 旋转矩阵是坐标轴的投影 2.2 旋转矩阵是正交矩阵 2.3 旋转矩阵的每一列都是单位向量 3. 举例 4. 总结 1. 引言 在上一篇文章中我们介绍 ...
- 机器人正运动学(1)—— 机器人简介
目录 1. 前言 2. 什么是机器人 3. 为什么要有机器人 4. 机器人分类 5. 机器人研究领域 6. 声明 1. 前言 都说机器人学是一门跨学科的学问,这句话说得一点不错.搞机械的设计了机器 ...
- 机器人正运动学(8)—— DH坐标系建立技巧
目录 1. 引言 2. 建立DH坐标系的技巧 2.1 理清关节和连杆 2.2 画 z 轴 2.3 确定 x 轴 2.3.1 x轴方向 2.3.2 x轴起始点(坐标系原点) 2.4 小结 3. 总结 1 ...
- 机器人正运动学(5)—— 齐次变换矩阵
目录 1. 引言 2. 齐次坐标系变换 2.1 坐标系之间的位姿关系 2.2 齐次变换矩阵 2.3 齐次变换矩阵的逆 4. 总结 1. 引言 前面的文章中我们分别讨论了坐标系及其平移,旋转两种变换 ...
- 机器人正运动学(2)—— 自由度
目录 1. 自由度的定义 2. 自由度的计算 2.1 刚体的自由度 2.2 运动副 2.3 自由度算例 3. 总结 1. 自由度的定义 自由度在很多领域中会出现,对于机器人而言,我们这里谈的也就是 ...
- 【现代机器人学——螺旋理论】UR5机器人正运动学求解
系列文章目录 [现代机器人学--螺旋理论]UR5机器人正运动学求解 [现代机器人学--螺旋理论]UR5机器人逆运动学求解 提示:本文介绍基于螺旋理论分析的UR5机器人正运动学求解思路,仅供参考. 文章 ...
- 5. 机器人正运动学---齐次变换矩阵
目录 1. 引言 2. 齐次坐标系变换 2.1 坐标系之间的位姿关系 2.2 齐次变换矩阵 2.3 齐次变换矩阵的逆 4. 总结 1. 引言 前面的文章中我们分别讨论了坐标系及其平移,旋转两种变换.但 ...
- 14. 机器人正运动学---雅克比矩阵(2)
1. 引言 上一篇文章介绍的是通过几何法求解雅克比矩阵,这篇文章通过较为严格的数学推导求解雅克比矩阵并进一步验证了几何法的适用性.具体内容请参考:14. 机器人正运动学---雅克比矩阵(2)
最新文章
- 都在喂大规模互联网文本,有人把著名的 C4 语料库“读”透了
- Python7:from module import * 和 import module 的区别
- 深入浅出设计模式之设计模式简介
- iMX6开发板-uboot-网络设置和测试
- 如何借助 Python 俘获女孩子芳心?
- 如何在VC环境下使用Halcon库
- MongoDB学习笔记一:MongoDB的下载和安装
- 【数字全排列】LeetCode 60. Permutation Sequence
- 基于SSM的Java图书管理系统
- 图片放大后很模糊怎么办?
- 高德地图两点间距离计算函数
- 两个运放制作加法器_初级模拟电路:8-2 加法与减法电路
- 台式机鼠标失灵打开计算机,台式电脑鼠标不动怎么办
- 完美解决Window11任务栏合并图标的问题。
- Android中action启动方法大全
- PHP反序列化原生类利用
- 网络安全知识之Cross-Site Request Forgery (CSRF) 简介
- python下载夏目友人帳
- java左右摇摆_java – 按边缘排列摇摆组件
- 自由编写一个创意进度展示条