如何将两种不同类型的数据融合在一起以获得最终结果?

时间:2018-05-20 14:12:04

标签: robotics sensor-fusion control-theory

我正在建造一个机器人(2个动力轮和一个滚珠轴承)。问题是我似乎无法让它直接驾驶。我确实发现这是不可能的,我已经尝试了好几个星期。

目前我可以依靠(两个电机)或陀螺仪读数(我也有两个陀螺仪,每个靠近两个轮胎)旋转

有没有办法可以将它们融合在一起,让我更准确地确定哪种电机需要加速?

我的电机接受0-900的值(尽管速度应该由我确定而不是固定的)。此外,如果存在算法,如果我让电机倒退,我想要一些我需要交换的方向。

1 个答案:

答案 0 :(得分:0)

由于两个电机的转速可能不同,机器人无法直行的问题。例如,一个人可能每秒完成30转,而另一个人每秒完成31转。使用wheel encoder可以解决这一问题。使用它,您可以得到两个车轮的旋转差,然后相应地更改电动机速度。陀螺仪会给您单位时间的角度误差,例如,如果机器人在2秒钟后向左移动5度,则会降低右电动机速度。但是需要减少多少并不是一个简单的问题,因为最终它是由于硬件错误而发生的。因此,您可以做的是收集陀螺仪角度的一些数据,例如每秒10个读数,并分析数据以找出降低一台电机速度所需的速度。