MPU6050的一系列疑问


发布时间:2017-07-04 14:47


论坛里有2个关于平衡车的例子,但是对其中的一些还是很不明白。提出以下疑问。
1.用MPU6050在串口读出的数据
    看了各位大神的帖子,可知读出的数据为角速度、加速度,单位是LSB/(o/s)和LSB/g ,百度了,但是还是不明白如何使用这些数据。
relaxlife的帖子中 将加速度转为角度与角速度进行卡曼滤波,得出真实角度。
这个加速度是如何换算成角度的?
角速度是不是可以看成近似于真实角度的角度呢?
还有黑马的帖子。他们用的都是角速度模块,加速度模块。用6050又如何呢?


2.关于PID

论坛的帖子中都用了PID,我也百度了,了解了一下。但是还是不是很明白。
PID output得出的数据到底是什么
黑马的output是一个角度,是将得出的角度+平衡角度 控制舵机调整
而relaxlife 的output 就不明白了,Drive(Output);   //根据Output驱动电机
为什么算法都一样,得出的东西不一样?

3.电机的控制

我的理解是这样的,黑马的平衡车 利用算出当前角度,与平衡角度,使舵机转动一定角度保持平衡。
relaxlife 的平衡车 利用算出当前角度,平衡角度,使电机转动一定时间,保持平衡。

舵机好理解一点,转动多少角度即可,那转动的时间呢?
直流减速电机呢?正转或者反向转动一定时间,那电机的转速是怎么控制的?根据当前偏斜角度计算电机转速与时间吗?
这些按我的理解似乎是PID控制的,但是这个角度 速度 时间 是怎么操作的?
如果换成步进电机,又如何控制呢?

以上就是我的疑问,提出的问题有些可能小白或者重复了,希望有耐心的朋友帮忙解答一下疑惑。
 

    上一篇:平衡车到底是交通工具还是玩具?

    下一篇:平衡车哪个牌子好,哪里可以做招商加盟?求解答