600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > MATLAB机器人工具箱学习笔记_D-H建模

MATLAB机器人工具箱学习笔记_D-H建模

时间:2019-08-09 18:00:35

相关推荐

MATLAB机器人工具箱学习笔记_D-H建模

MATLAB机器人工具箱10.4 机械臂仿真教学

Matlab机器人工具箱有两种建模方式:

1. 标准型D-H参数建模(以如下机械臂为例):

MATLAB代码如下:

%% 标准型下连杆1-5的D-H参数L(1) = Link('revolute', 'd', 0.216, 'a', 0, 'alpha', pi/2);L(2) = Link('revolute','d', 0, 'a', 0.5, 'alpha', 0, 'offset', pi/2);L(3) = Link('revolute', 'd', 0, 'a', sqrt(0.145^2+0.42746^2), 'alpha', 0, 'offset', -atan(427.46/145));L(4) = Link('revolute', 'd', 0, 'a', 0, 'alpha', pi/2, 'offset',atan(427.46/145));L(5) = Link('revolute', 'd', 0.258, 'a', 0, 'alpha', 0);Five_dof = SerialLink(L,'name', '5-dof'); %将上述连杆串联起来,并命名为5-dofFive_dof.base = transl(0, 0, 0.28); %基坐标分别沿x,y,z的值;Five_dof.teach %画出机器人模型的GUI,并可以示教。

注:对于旋转关节而言,部分用offset。如果是平移关节,则不写d用offset替代。

仿真图如下:

可以通过通过左下角的q1至q5的按键,改变关节角,从而改变机器人的位置和姿态。

2. 改进型D-H参数建模(以如下机械臂为例):

MATLAB代码如下:

clear;clc;L(1) = Link('revolute', 'd', 0.496, 'a', 0, 'alpha', 0, 'modified');L(2) = Link('revolute', 'd', 0, 'a', 0, 'alpha', pi/2, 'offset', pi/2, 'modified');L(3) = Link('revolute', 'd', 0, 'a', 0.5, 'alpha', 0, 'offset', -atan(427.46/145), 'modified');L(4) = Link('revolute', 'd', 0, 'a', sqrt(0.145^2+0.42746^2), 'alpha', 0, 'offset', atan(427.46/145), 'modified');L(5) = Link('revolute', 'd', 0.258, 'a', 0, 'alpha', pi/2, 'modified');Five_dof_mod = SerialLink(L, 'name', '5-dof');Five_dof_mod.teach

仿真图如下:

注:我们可以看到机器人中缺少一块,这是因为机器人工具箱默认基座位于原点,而改进型坐标系位于对应连杆的前端,而上述改进型D-H参数中的坐标系1和坐标系2的原点位于同一个位置,此时连杆1成为了一个点。为了好看可以把第一个轴的偏置取消掉,同时把偏置加到基座上。

代码如下:

clear;clc;L(1) = Link('revolute', 'd', 0, 'a', 0, 'alpha', 0, 'modified');L(2) = Link('revolute', 'd', 0, 'a', 0, 'alpha', pi/2, 'offset', pi/2, 'modified');L(3) = Link('revolute', 'd', 0, 'a', 0.5, 'alpha', 0, 'offset', -atan(427.46/145), 'modified');L(4) = Link('revolute', 'd', 0, 'a', sqrt(0.145^2+0.42746^2), 'alpha', 0, 'offset', atan(427.46/145), 'modified');L(5) = Link('revolute', 'd', 0.258, 'a', 0, 'alpha', pi/2, 'modified');Five_dof_mod = SerialLink(L, 'name', '5-dof');Five_dof_mod.base=transl(0, 0, 0.496);Five_dof_mod.teach

仿真图如下:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。