【转载】标准DH和改进DH的区别

原文链接:https://blog.csdn.net/qq_27170195/article/details/79936518

一:区别

二、区别示意图

三:MATLAB仿真对比

1. 标准DH


%标准DH
%Link(DH,option):
%DH = [THETA D A ALPHA SIGMA]//我的代码中此处定义theta的初始值无效
L1 = Link([0 0.2 1 pi/4 0],'standard');
L2 = Link([0 0.2 1 pi/4 0],'standard');
L3 = Link([0 0 0.5 pi/4 0],'standard');
robot = SerialLink([L1 L2 L3]); %建立连杆机器人
robot.plot([0 0 0]) %显示并赋三个关节变量theta值都为0//此处才可以初始theta

对比代码中的DH参数和图中画的座标系,再次确定标准DH四个参数含义:

theta:绕Zi轴,从Xi旋转到Xi+1的角度

D:沿Zi轴,从Xi移动到Xi+1的距离

A:沿Xi轴,从Zi移动到Zi+1的距离

alpha:绕Xi+1轴,从Zi旋转到Zi+1的角度


2. 改进DH


%改进DH
%Link(DH,option):DH = [THETAi Di Ai-1 ALPHAi-1 SIGMA]
L1 = Link([0 0.2 1 pi/4 0],'modified');
L2 = Link([0 0.2 1 pi/4 0],'modified');
L3 = Link([0 0 0.5 pi/4 0],'modified');
robot = SerialLink([L1 L2 L3]); %建立连杆机器人
robot.plot([0 0 0]) %显示并赋三个关节变量theta的初始值都为0


MATLAB中定义改进DH连杆时一定要注意DH[theta d a alpha]中前两个参数下表为i,

即当前关节的DH值,后两个参数下表为i-1,及前一个关节的DH值参数值!

此时对比代码中的DH参数和图中画的座标系,得到DH定义为:

theta:绕Zi轴,从Xi-1旋转到Xi的角度

D:沿Zi轴,从Xi-1移动到Xi的距离

A:沿Xi轴,从Zi移动到Zi+1的距离

alpha:绕Xi轴,从Zi旋转到Zi+1的角度

四:总结

标准型和改进型中A和alpha定义相同,都是相对于下一关节而言,不同的是theta和D在标准型中都是相对于下一关节,在改进型中是相对于上一关节。

定义DH表格时:

标准型的列标题为:THETAiDi Ai ALPHAi

改进型的列标题为:THETAiDiAi-1ALPHAi-1

所以一定要注意MATLAB机器人工具箱中连杆定义中DH的对应。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章