5.26机器人基础-DH参数 正解

1.建立DH坐标系

1.确定Zi轴(关节轴)

2.确定基础坐标系

3.确定Xi方向(垂直于zi和zi+1的平面)

4.完全确定各个坐标系 

例子:

 坐标系的布局是由个人决定的,可以有不同的选择

标准坐标系布局: 

 

2.DH参数表

个人理解
a z轴之间的距离,看下一个
α 转角 看下一个,看z绕本次的x轴旋转多少度到下一个z轴
d x轴之间距离,x看前一个
theta 转角
顺时针为负,逆时针为正

别人的详细解析:(写得好好!)

机器人正向运动学和D-H参数方法_d-h参数法-****博客

3.MATLAB示例

 参考上图的DH参数表,将数据带入齐次变换矩阵中

clear;clc;
%%参数
L1=100;
L2=105;
L3=98;
L4=245;
IN_theta = [0,-45,10,10,0];

%DH
C_a=[0,0,L2,L3,0,0,0];
C_d=[0,L1,0,0,0,0,L4];
C_alpha=[0,-90,0,0,-90,0,0];
C_theta=[0,IN_theta(1),IN_theta(2),IN_theta(3),IN_theta(4)-90,IN_theta(5),0];

T_result = eye(4); % 初始化结果为单位矩阵

for i = 1:6
    T = [cosd(C_theta(i+1)) -sind(C_theta(i+1)) 0 C_a(i-1+1);
         sind(C_theta(i+1))*cosd(C_alpha(i-1+1)) cosd(C_alpha(i-1+1))*cosd(C_theta(i+1)) -sind(C_alpha(i-1+1)) -sind(C_alpha(i-1+1))*C_d(i+1);
         sind(C_theta(i+1))*sind(C_alpha(i-1+1)) cosd(C_theta(i+1))*sind(C_alpha(i-1+1)) cosd(C_alpha(i-1+1)) cosd(C_alpha(i-1+1))*C_d(i+1);
         0 0 0 1]; % 根据给定的公式计算T[i]
    
    T_result = T_result * T; % 乘以每个T[i]
end
上一篇:【安卓配置WebView以允许非HTTPS页面访问摄像头】


下一篇:Stable Diffusion生成图片的参数查看与抹除方法-查看图片的生成参数