一、陀螺仪简介
实验室常用的两种陀螺仪:
mpu6050
icm20602
不管是ICM还是MPU,精度都能达到要求。
陀螺仪是感受空间姿态的传感器,是控制小车平衡,判断和调节姿态的核心元件。
六轴陀螺仪结合了三轴陀螺仪和三轴加速度计,其“六轴”分别为加速度xyz轴,角速度xyz轴,即既能感知角度变化,也能感知加速度变化,这六个量经过运算,可以返回三个姿态角:
俯仰角(车头绕Y轴翘起角度),
航向角(车身绕Z轴旋转角度),
翻滚角(侧轮绕X轴抬起角度)。
陀螺仪在竞速智能车中的主要作用有以下几点:
- 与转向环串级使用,与Z轴角速度关联,增加转向力度;
- 调整平衡车姿态,使车身平衡且能正常转向和前进
- 角度环闭环控制的输入,比如过三叉路打60度角;
- 判断车身姿态,调整状态。比如感知过环岛的角度变化;感知翻车,进行保护;
- 温度传感器,电机高温报警(陀螺仪一般离电机较近,自身带有温度传感器)
二、基本的使用方法
六轴陀螺仪结合了三轴角速度计和三轴加速度计。

1.角速度计
角速度计返回的数据实际上是弧度制的角速度,旋转陀螺仪时,返回相应轴的角速度参考量。一般我们要对角速度积分得到角度,用起来直观方便。积分得到的角度是相对角度,开始积分时的姿态即为参考0角度。
对于2ms的积分值为0.000124左右,实际使用时需要调整,将陀螺仪转动一周,计算得到的角度应为360。
/***放于定时器中2ms执行一次***/
fun()
{
Angle_yaw += GZ * 0.00012480f;
}
积分总会带来误差,随着时间不断增加。另外,陀螺仪还存在零点漂移现象,即车静置时会输出非0的角速度值, 每次上电时需要重新校准偏移值,或者定期校准,后续检测时减去偏移值即可消除此误差。
float GX_Zero = -11.5;//零点偏移值
float GY_Zero = 6;
float GZ_Zero = -1;
......
GX = gx0 - GX_Zero; //去零漂之后的陀螺仪采集值
GY = gy0 - GY_Zero;
GZ = gz0 - GZ_Zero;
2.加速度计
<

本文介绍了陀螺仪在竞速智能车中的作用,如姿态控制和角度判断,并详细阐述了六轴陀螺仪的使用方法,包括角速度计和加速度计的数据处理。通过积分和滤波技术来减少误差和零点漂移,实现角度的精确融合。同时,提到了互补滤波在角度融合中的应用,并提供了相应的代码示例。

4730

被折叠的 条评论
为什么被折叠?



