DSP28系列—MPU6050漂移补偿方案的探索

说在前面的话: 大家都知道,陀螺仪是一种能测量角速度的器件,是姿态解算、角度测量等任务中无法缺少的工具。单轴的陀螺仪配合单轴的加速度计,就能结算出一个姿态角。在平衡车的应用中,一维的姿态角(倾斜角)就足够了。而在飞行器中,一般需要三个轴的陀螺仪和三个轴的加速度计,解算出三个姿态角。为了更加精确的输出这三个姿态角,就需要使用到(mahony互补滤波、卡尔曼滤波)来消除误差。这时,磁力计就油然而生了。你可以选择MPU6050+QMC5883L,或者MPU9250。除此之外,我们经常可以见到模拟陀螺仪和数字陀螺仪,实际上这仅关乎器件输出是模拟量还是数字量。输出模拟量的陀螺仪,如ENC03。输出数字量的陀螺仪,如MPU6050、MPU9250等等。模拟陀螺仪使用简单,仅需要在单片机中进行AD采集即可。至于数字陀螺仪,因为输出为数字量,因此都需要相应的通信协议进行通信,如I2C、SPI等(可以参考《DSP28系列—驱动六轴MPU6050输出欧拉角》)。

2.GY-271的详细资料: (1)含有产品信息、电路图、UNO例程等: (2)QMC5883L芯片的参数要求: (好像没有对相关寄存器进行设置) (3)使用树莓派调试磁力计QMC5883L: (含有QMC5883L设备地址、寄存器,一个简单的读取寄存器的小程序) (4)使用STM32调试磁力计QMC5883L: (5)GY-271和GY-251怎么结合在一起使用? MPU6050使用I2C进行通信。I2C使用两条线SCL、SDA进行通信,再加上供电的两条线,使用MPU6050仅需要电源、GND、SCL、SDA即可。为了和电子罗盘完美结合,就可以将XCL和XDA管脚接到GY-271上。然后通过编程,可以让MPU6050帮你读取磁力计的数据,再一起读回单片机。当然,还有一个INT中断引脚,可以通过编程设定数据准备好时,该引脚发生电平变化,触发DSP的外部中断(可以通过设计按键和中断标志位来实现)。 (6)电子罗盘(磁力计)的问题: 有些厂家在DIY无人机上选择不焊接电子罗盘器件HMC5883。因为电子罗盘是磁场敏感元器件,很容易受到电机的影响,很难调试稳定。另外,小四轴在视眼范围内飞行,基本上不需要电子罗盘的锁尾功能。

经验分享 程序员 微信小程序 职场和发展