关于全方位控制的一个问题
我正在阅读以下论文,
http://robocup.mi.fu-berlin。 de/buch/omnidrive.pdf
在第 10 页,它介绍了一个为 n 个全向轮生成运动的公式,
−sin θ1 cos θ1 1
(v1, v2, v3, v4)= −sin θ2 cos θ2 1 (vx, vy, Rω)
................
−sin θn cos θn 1
据我所知,您采用您想要去的地方的向量,即 x 方向没有旋转,这将是 [1 0 0] 并将其乘以 sin cos 矩阵,然后您就可以得到每个特定电机应提供多少功率才能产生该方向的运动。
为了仔细检查我为 [1 0 0] 计算的速度结果,这给了我 [abcd] 4 个电机速度,并且我有 4 个 θ,当我添加每个轮子的 sin 和 cos 分量时,我认为我应该回到 [ 1 0 0] 但实际上我得到了类似 [2.5 0 0] 的东西。我想知道我是否忘记了矩阵乘法的一些属性?或者我的逻辑是否流畅?
I am reading the follwoing paper,
http://robocup.mi.fu-berlin.de/buch/omnidrive.pdf
On page ten it introduces a formula to generate movement for n omniwheels,
−sin θ1 cos θ1 1
(v1, v2, v3, v4)= −sin θ2 cos θ2 1 (vx, vy, Rω)
................
−sin θn cos θn 1
From what I understand, you take the vector of where you want to go say x direction no rotation that would be [1 0 0] and multiply that with sin cos matrix then you get how much each particular motor should be powered to generate motion in that direction.
In order to double check the results I calculated for velecoties for [1 0 0], that gives me [a b c d] 4 motor speeds and I have 4 θs, when I add each wheels sin and cos components I think I shoudl get back to [1 0 0] but I actualy get back something like [2.5 0 0]. What I was wondering is did I forget some property about matrix multipication? or Do I have flow in my logic?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不,没有什么问题。考虑最简单的情况,其中机器人在一根轴上有两个彼此交叉的轮子。为了让机器人以
x
速度前进,两个轮子都应该以x
速度转动,而不是x/2
。No, there's nothing wrong. Consider the simplest possible case, where a robot has two wheels across from each other on a single axle. For the robot to move forward at speed
x
, both wheels should be turning at speedx
, notx/2
.