如何使用增量传感器计算或更新差动驱动机器人的位置?
在两个差速器轮的每一个上都有一个增量传感器。这两个传感器确定距离 RESP。Δ ř 我克ħ 吨其轮一个已知的时间期间已经推出Δ 吨。Δ 升È ˚FŤΔ ř 我克^ h ŤΔ Ť
首先,假设两个轮子之间的中心标记了机器人的位置。在这种情况下,可以将位置计算为:
x = x升Ë ˚FŤ+ xř 我克^ h Ť2ÿ= y升Ë ˚FŤ+ yř 我克^ h Ť2
在两个车轮都沿直线滚动的假设下“推导”这些方程式(对于小距离应该近似正确),我得到:
Δ XΔ Ť= 12(Δ 升Ë ˚FŤΔ Ť+ Δ ř 我克^ h ŤΔ Ť) cos(θ)Δ ÿΔ Ť= 12(Δ 升Ë ˚FŤΔ Ť+ Δ ř 我克^ h ŤΔ Ť) š我Ñ(θ)
其中是机器人的定向角。对于这个角度的变化,我找到了等式θ
Δ θΔ Ť= 1w(Δ 升Ë ˚FŤΔ Ť- Δ - [R 我克^ h ŤΔ Ť)
其中是两个轮子之间的距离。w
由于和Δ ÿ取决于θ,我不知道是否我首先应该计算新的θ通过增加Δ θ或者我应该更爱用“老” θ?有什么理由要使用另一个?Δ XΔ ÿθθΔ θθ
然后,让我们假设两个轮子之间的中心没有标记机器人的位置。相反,我想使用一个标记机器人边界框的几何中心的点。然后和y变为:Xÿ
x = x升Ë ˚FŤ+ xř 我克^ h Ť2+ lc o s (θ )ÿ= y升Ë ˚FŤ+ yř 我克^ h Ť2+ lš 我Ñ (θ )
“派生”第一个给出:
Δ XΔ Ť= 12(Δ 升Ë ˚FŤΔ Ť+ Δ ř 我克^ h ŤΔ Ť) cos(θ)−lš 我Ñ (θ )Δ θΔ Ť
现在有一个Dependance的。这是使用“新” θ的原因吗?Δ θθ
有没有更好的方法可以进行位置和方向的模拟更新?可能使用复数(与3D四元数的方法相同)还是齐次坐标?