一、原理
-
问题:机器人实际运动学DH数据与理论运动学DH数据有误差
-
解决方法:
首先将DH表的参数 a , α , d , θ a, \alpha, d, \theta a,α,d,θ 写成一个整体的形式: x e = k ( a , α , d , θ ) x_{e}=k(a, \alpha, d, \theta) xe=k(a,α,d,θ)
我们用 x m x_{m} xm 表示测量(measure)值, x n x_{n} xn 表示名义上(nominal)的真实值,那么就有下式:
Δ
x
=
x
m
−
x
n
=
∂
k
∂
a
Δ
a
+
∂
k
∂
α
Δ
α
+
∂
k
∂
d
Δ
d
+
∂
k
∂
θ
Δ
θ
\Delta x = x_{m} - x_{n} = \frac{\partial k}{\partial a}\Delta a + \frac{\partial k}{\partial \alpha}\Delta \alpha + \frac{\partial k}{\partial d}\Delta d + \frac{\partial k}{\partial \theta}\Delta \theta
Δx=xm−xn=∂a∂kΔa+∂α∂kΔα+∂d∂kΔd+∂θ∂kΔθ
上式中,
Δ
a
,
Δ
α
,
Δ
d
,
Δ
θ
\Delta a, \Delta \alpha, \Delta d, \Delta \theta
Δa,Δα,Δd,Δθ 表示各自的误差,令各参数汇总为
4
n
∗
1
4n * 1
4n∗1 的向量:
ξ
=
[
a
T
α
T
d
T
θ
T
]
T
\xi=[a^{T} \space \alpha^{T} \space d^{T} \space \theta^{T}]^{T}
ξ=[aT αT dT θT]T
剩下的部分用
Φ
\Phi
Φ 表示为计算标定量
ξ
\xi
ξ 的标定矩阵,则
Δ
x
\Delta x
Δx 最终可以写为:
Δ
x
=
Φ
(
ξ
n
)
Δ
ξ
\Delta x = \Phi (\xi_{n}) \Delta \xi
Δx=Φ(ξn)Δξ
二、例题
首先我们先通过DH表获取末端位置 p:
由于是平面,不考虑 z 轴,则,最终 p 为:
依次对 a 和
θ
\theta
θ 求导得:
带入上文提到的
Δ
p
\Delta p
Δp 的公式,得到:
则通过简单的变形,最终求得: