文章目录

Denavit-Hartenberg方法1.1 修正DH参数——定义关节i的轴为

z

i

z_i

zi​轴(最后一个坐标系{n}在关节n处)1.1.1 连杆坐标系定义1.1.2 连杆参数在连杆坐标系中的表示方法1.1.3 建立连杆坐标系的步骤1.1.4 连杆变换的推导

1.2. 标准DH参数——定义关节i的轴为

z

i

1

z_{i-1}

zi−1​轴(最后一个坐标系{n}在连杆n的末端)1.2.1 连杆坐标系定义1.2.2 连杆参数在连杆坐标系中的表示方法1.2.3 建立连杆坐标系的步骤3.1.2.4 连杆变换的推导

1.3 MDH和SDH两者对比1.3.1 平面3R机器人

Denavit-Hartenberg方法

1.1 修正DH参数——定义关节i的轴为

z

i

z_i

zi​轴(最后一个坐标系{n}在关节n处)

1.1.1 连杆坐标系定义

(a) 运动链中间位置连杆坐标系{

i

{i}

i}的定义 固连在连杆i上的固连坐标系称为坐标系{

i

i

i}

O

i

O_i

Oi​原点:关节轴i和i+1的交点或关节轴i和i+1公垂线与关节轴i的交点

Z

^

i

\hat{Z}_i

Z^i​轴:关节轴

i

i

i

X

^

i

\hat{X}_i

X^i​轴:沿

Z

^

i

\hat{Z}_i

Z^i​和

Z

^

i

+

1

\hat{Z}_{i+1}

Z^i+1​的公垂线

a

i

a_i

ai​方向由关节

i

i

i指向关节

i

+

1

i+1

i+1,当

a

i

=

0

a_i=0

ai​=0时,

X

^

i

\hat{X}_i

X^i​垂直于

Z

^

i

\hat{Z}_i

Z^i​和

Z

^

i

+

1

\hat{Z}_{i+1}

Z^i+1​所在的平面

Y

^

i

\hat{Y}_i

Y^i​轴:根据右手法则确定

α

i

\alpha_i

αi​:根据右手定则,绕

X

^

i

\hat{X}_i

X^i​轴从

Z

^

i

1

\hat{Z}_{i-1}

Z^i−1​到

Z

^

i

\hat{Z}_i

Z^i​

(b) 运动链首段连杆{

0

0

0}坐标系的定义(

Z

^

0

\hat{Z}_0

Z^0​与

Z

^

1

\hat{Z}_1

Z^1​同向) 固连于机器人基座(即连杆0)上的坐标系为坐标系{0},该坐标系可做参考坐标系。 设定

Z

^

0

\hat{Z}_0

Z^0​沿关节轴1的方向,当关节变量1(

d

1

d_1

d1​或

θ

1

\theta_1

θ1​)为0时,设定参考坐标系{0}与{1}重合。总有

a

0

=

α

0

=

0

a_0=\alpha_0=0

a0​=α0​=0,当关节1为移动关节时,

θ

1

=

0

\theta_1=0

θ1​=0,当关节1为转动关节时,

d

1

=

0

d_1=0

d1​=0

(c) 运动链末端连杆{

n

n

n}坐标系的定义(

X

^

N

\hat{X}_N

X^N​和

X

^

N

1

\hat{X}_{N-1}

X^N−1​同向)

{n}坐标原点选取在

X

^

N

1

\hat{X}_{N-1}

X^N−1​轴与关节轴n的交点位置,使得

d

n

=

0

d_n=0

dn​=0,总有

a

n

=

α

n

=

0

a_n=\alpha_n=0

an​=αn​=0 对于转动关节n,始终有

d

n

=

0

d_n=0

dn​=0,当

θ

n

=

0

\theta_n=0

θn​=0时,设定

X

^

N

\hat{X}_N

X^N​和

X

^

N

1

\hat{X}_{N-1}

X^N−1​同向,选取坐标原点位置为

X

^

N

1

\hat{X}_{N-1}

X^N−1​轴与关节轴n的交点位置。 对于移动关节n,始终有

θ

n

=

0

\theta_n=0

θn​=0,当

d

n

=

0

d_n=0

dn​=0时,设定

X

^

N

\hat{X}_N

X^N​和

X

^

N

1

\hat{X}_{N-1}

X^N−1​同向,选取坐标原点位置为

X

^

N

1

\hat{X}_{N-1}

X^N−1​轴与关节轴n的交点位置。

1.1.2 连杆参数在连杆坐标系中的表示方法

如果按照上述方法将两岸坐标系固定于连杆上时,连杆参数可以定义为

a

i

1

a_{i-1}

ai−1​:沿

X

^

i

1

\hat{X}_{i-1}

X^i−1​轴,从

Z

^

i

1

\hat{Z}_{i-1}

Z^i−1​移动到

Z

^

i

\hat{Z}_{i}

Z^i​的距离,通常取正值;

α

i

1

\alpha_{i-1}

αi−1​:绕

X

^

i

1

\hat{X}_{i-1}

X^i−1​轴,从

Z

^

i

1

\hat{Z}_{i-1}

Z^i−1​旋转到

Z

^

i

\hat{Z}_{i}

Z^i​的角度,采用右手法则判断正负;

d

i

d_i

di​:沿

Z

^

i

\hat{Z}_{i}

Z^i​轴,从

X

^

i

1

\hat{X}_{i-1}

X^i−1​移动到

X

^

i

\hat{X}_{i}

X^i​的距离;

θ

i

\theta_i

θi​:绕

Z

^

i

\hat{Z}_{i}

Z^i​轴,从

X

^

i

1

\hat{X}_{i-1}

X^i−1​旋转到

X

^

i

\hat{X}_{i}

X^i​的角度,采用右手法则判断正负;

1.1.3 建立连杆坐标系的步骤

现根据关节轴确定Z轴,再跟相邻关节轴之间的公垂线确定X轴。具体步骤如下:

找出各关节轴, 并标出(或画出)这些轴线的延长线。 在下面的步骤2至步骤5中,仅考虑两个相邻的轴线(关节轴

i

i

i和

i

+

1

i+1

i+1); 找出关节轴

i

i

i和

i

+

1

i+1

i+1之间的公垂线

a

i

a_i

ai​或关节轴

i

i

i和

i

+

1

i+1

i+1的交点, 以关节轴

i

i

i和

i

+

1

i+1

i+1的交点或公垂线

a

i

a_i

ai​与关节轴

i

i

i的交点作为连杆坐标系{

i

i

i}的原点; 规定

Z

^

i

\hat{Z}_i

Z^i​轴沿关节轴i的指向; 规定

X

^

i

\hat{X}_i

X^i​轴沿公垂线

a

i

a_i

ai​的指向, 如果关节轴i和i+1相交, 则规定

X

^

i

\hat{X}_i

X^i​轴垂直于关节轴i和i+1所在的平面; 按照右手定则确定

Y

^

i

\hat{Y}_i

Y^i​轴; 当第一个关节变量为 0 时, 规定坐标系{0}和{1}重合。 对于坐标系{N}, 其原点和的

X

^

N

\hat{X}_N

X^N​方向可以任意选取。 但是在选取时, 通常尽量使连杆参数为0。

1.1.4 连杆变换的推导

通过定义三个中间坐标系{P},{Q},{R}建立坐标系{i}相对于坐标系{i-1}的变换: {i}沿

Z

^

i

\hat{Z}_i

Z^i​平移

d

i

d_i

di​得到{P},{P}绕

Z

^

P

\hat{Z}_P

Z^P​旋转

θ

i

\theta_i

θi​得到{Q},{Q}沿

X

^

Q

\hat{X}_Q

X^Q​平移

a

i

1

a_{i-1}

ai−1​得到{R},{R}绕

X

^

R

\hat{X}_R

X^R​旋转

α

i

1

\alpha_{i-1}

αi−1​得到{i-1}

KaTeX parse error: \tag works only in display equations 其中, KaTeX parse error: \tag works only in display equations

1.2. 标准DH参数——定义关节i的轴为

z

i

1

z_{i-1}

zi−1​轴(最后一个坐标系{n}在连杆n的末端)

1.2.1 连杆坐标系定义

(a)运动链中间位置连杆坐标系{

i

{i}

i}的定义

Z

^

i

\hat{Z}_i

Z^i​轴:关节轴

i

+

1

i+1

i+1

X

^

i

\hat{X}_i

X^i​轴:沿轴

z

i

1

z_{i-1}

zi−1​和轴

z

i

z_i

zi​的公垂线

a

i

a_i

ai​方向由关节

i

i

i指向关节

i

+

1

i+1

i+1,当

a

i

=

0

a_i=0

ai​=0时,即轴

z

i

1

z_{i-1}

zi−1​和轴

z

i

z_i

zi​相交时,

X

^

i

\hat{X}_i

X^i​垂直于

Z

^

i

1

\hat{Z}_{i-1}

Z^i−1​和

Z

^

i

\hat{Z}_{i}

Z^i​所在的平面

Y

^

i

\hat{Y}_i

Y^i​轴:根据右手法则确定

O

i

O_i

Oi​点:在关节

i

+

1

i+1

i+1的轴

Z

i

Z_i

Zi​轴与公垂线

a

i

a_i

ai​的交点

(b)运动链首段连杆{

0

0

0}坐标系的定义 设定

Z

^

0

\hat{Z}_0

Z^0​沿关节轴1的方向,

O

0

O_0

O0​和

X

^

0

\hat{X}_0

X^0​可以任意选择 (c)运动链末端连杆末端执行器手部{

n

n

n}坐标系的定义 对坐标系{n}而言,由于没有关节n+1,但x_n轴必须与轴

z

n

1

z_{n-1}

zn−1​垂直,但

z

n

z_n

zn​不是唯一定义的,当关节n是转动的,

z

n

z_n

zn​依照

z

n

1

z_{n-1}

zn−1​的方向设置

1.2.2 连杆参数在连杆坐标系中的表示方法

如果按照上述方法将连杆坐标系固定于连杆上时,下标为i的连杆参数可以由坐标系

i

i

i和坐标系

i

1

i-1

i−1的位置和方向定义为

a

i

a_{i}

ai​:沿

X

^

i

\hat{X}_{i}

X^i​轴,从

Z

^

i

1

\hat{Z}_{i-1}

Z^i−1​移动到

Z

^

i

\hat{Z}_{i}

Z^i​的距离,Link_i的长度,通常取正值;

α

i

\alpha_{i}

αi​:绕

X

^

i

\hat{X}_{i}

X^i​轴,从

Z

^

i

1

\hat{Z}_{i-1}

Z^i−1​旋转到

Z

^

i

\hat{Z}_{i}

Z^i​的角度,采用右手法则判断正负;

d

i

d_i

di​:沿

Z

^

i

1

\hat{Z}_{i-1}

Z^i−1​轴,从

X

^

i

1

\hat{X}_{i-1}

X^i−1​移动到

X

^

i

\hat{X}_{i}

X^i​的距离,即

x

i

1

x_{i-1}

xi−1​和

x

i

x_i

xi​与

z

i

1

z_{i-1}

zi−1​轴交点的距离;

θ

i

\theta_i

θi​:绕

Z

^

i

1

\hat{Z}_{i-1}

Z^i−1​轴,从

X

^

i

1

\hat{X}_{i-1}

X^i−1​旋转到

X

^

i

\hat{X}_{i}

X^i​的角度,采用右手法则判断正负;

4 个参数中有2 个(

a

i

a_i

ai​和

α

i

\alpha_i

αi​〉始终为常数,只取决于由连杆i建立的相继关节之间的几何连接关系。其他两个参数中只有一个是变量,取决于连接连杆i-1 和连杆i 的关节的类型。详述如下:

如果关节i 是转动型的, 则变最为

θ

i

\theta_i

θi​。如果关节i 是移动型的,则变量为

d

i

d_i

di​。

1.2.3 建立连杆坐标系的步骤

3.1.2.4 连杆变换的推导

i

i

1

T

(

q

i

)

=

R

Z

(

θ

i

)

D

Z

(

d

i

)

R

Z

(

α

i

)

D

X

(

a

i

)

=

[

c

θ

i

s

θ

i

0

0

s

θ

i

c

θ

i

0

0

0

0

1

d

i

0

0

0

1

]

 

[

1

0

0

a

i

0

c

α

i

s

α

i

0

0

s

α

i

c

α

i

0

0

0

0

1

]

=

[

c

θ

i

s

θ

i

c

α

i

s

θ

i

s

α

i

a

i

c

θ

i

s

θ

i

c

θ

i

c

α

i

c

θ

i

s

α

i

a

i

s

θ

i

0

s

α

i

c

α

i

d

i

0

0

0

1

]

\begin{aligned} _i^{i-1}T(q_i)&=R_Z(\theta_i)D_Z(d_i)R_Z(\alpha_{i})D_X(a_{i})\\ & \left.=\quad\left[\begin{array}{cccc}c_{\theta_i} & -s_{\theta_i} & 0 & 0 \\ s_{\theta_i} & c_{\theta_i} & 0 & 0 \\ 0 & 0 & 1 & d_i \\ 0 & 0 & 0 & 1\end{array}\right.\right] \ \left[\begin{array}{cccc}1 & 0 & 0 & a_i \\ 0 & c_{\alpha_i} & -s_{\alpha_i} & 0 \\ 0 & s_{\alpha_i} & c_{\alpha_i} & 0 \\ 0 & 0 & 0 & 1\end{array}\right] \\ & \left.=\quad\left[\begin{array}{cccc}c_{\theta_i} & -s_{\theta_i}c_{\alpha_i} & s_{\theta_i}s_{\alpha_i} & a_ic_{\theta_i} \\ s_{\theta_i} & c_{\theta_i}c_{\alpha_i} & -c_{\theta_i}s_{\alpha_i} & a_is_{\theta_i} \\ 0 & s_{\alpha_i} & c_{\alpha_i} & d_i \\ 0 & 0 & 0 & 1\end{array}\right.\right]\end{aligned}

ii−1​T(qi​)​=RZ​(θi​)DZ​(di​)RZ​(αi​)DX​(ai​)=

​cθi​​sθi​​00​−sθi​​cθi​​00​0010​00di​1​

​ 

​1000​0cαi​​sαi​​0​0−sαi​​cαi​​0​ai​001​

​=

​cθi​​sθi​​00​−sθi​​cαi​​cθi​​cαi​​sαi​​0​sθi​​sαi​​−cθi​​sαi​​cαi​​0​ai​cθi​​ai​sθi​​di​1​

​​

从坐标系 i 到坐标系i - 1 的变换矩阵是一个只与关节变量

q

i

q_i

qi​有关的函数,如果是 转动关节则变量为

θ

i

\theta_i

θi​, 如果是移动关节则变量为

d

i

d_i

di​。

1.3 MDH和SDH两者对比

1.3.1 平面3R机器人

标准DH参数

修正DH参数 待补充

好文推荐

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。