STM32无人机-四轴四元数姿态解算与卡尔曼滤波

四轴四元数姿态解算

MPU6050是一种非常流行的空间运动传感器芯片,可以获取器件当前的三个加速度分量和三个旋转角速度。

什么是四元数

这部分很难,新手知道四元数的功能是将 6 轴传感器数据转化为三轴姿态角度数据即可。

四元数解算程序店家已经封装成一个函数,输入 MPU6050 数值,解算周期 dt,输出三维姿态角信息。

事实上所谓 DMP 就是 MPU6050 内部的四元数解算,但是他们内部的解算精度低没有自己 做四元数解算精度高。

四元数具体的实现有下面几个步骤: 1)机体重力加速度计转换到地理坐标系后。 2)与四元数计算的地理重力加速度比较。 3)得到误差校正陀螺仪的输出。 4)然后用陀螺仪数据进行四元数更新。 5)再转换到欧拉角。

卡尔曼滤波

MPU6050的数据是有较大噪音的,若不进行滤波会对整个控制系统的精准确带来严重影响。MPU6050芯片内自带了一个数据处理子模块DMP,已经内置了滤波算法,在许多应用中使用DMP输出的数据已经能够很好的满足要求。关于如何获取DMP的输出数据,我将在以后的文章中介绍。

mpu6050 数据格式:我们感兴趣的数据位于0x3B到0x48这14个字节的寄存器中。这些数据会被动态更新,更新频率最高可达1000HZ。下面列出相关寄存器的地址,数据的名称。注意,每个数据都是2个字节。

0x3B,加速度 计的X轴分量ACC_X

0x3D,加速度计的Y轴分量ACC_Y

0x3F,加速度计的Z轴分量ACC_Z

0x41,当前温度TEMP

0x43,绕X轴旋转的角速度 GYR_X

0x45,绕Y轴旋转的角速度GYR_Y

0x47,绕Z轴旋转的角速度GYR_Z


原文链接:https://blog.csdn.net/m0_71572576/article/details/125671907

将来参考:

四元数解算姿态角解析_四元数姿态解算_guanjianhe的博客-CSDN博客

MPU6050介绍及姿态解算_mpu6050姿态解算_哈巴奈拉的博客-CSDN博客

基于一阶互补滤波的MPU6050姿态解算_白碳墨水的博客-CSDN博客

基于STM32的四旋翼无人机项目(二):MPU6050姿态解算(含上位机3D姿态显示教学)_stm32无人机_混分巨兽龙某某的博客-CSDN博客

相关推荐
晶振厂家-晶发电子2 天前
晶振在5G时代的角色:高精度时钟的核心支撑
单片机·嵌入式硬件·5g·晶振·电子元器件·晶振知识
F137298015572 天前
WD5030A 芯片,12V降5V,输出电流12A,电路设计
stm32·单片机·嵌入式硬件·汽车·51单片机
小莞尔2 天前
【51单片机】【protues仿真】基于51单片机的篮球计时计分器系统
c语言·stm32·单片机·嵌入式硬件·51单片机
三佛科技-187366133972 天前
分享机械键盘MCU解决方案
单片机·嵌入式硬件·计算机外设
李永奉2 天前
51单片机-使用IIC通信协议实现EEPROM模块教程
单片机·嵌入式硬件·51单片机
工大一只猿2 天前
51单片机学习
嵌入式硬件·学习·51单片机
小莞尔2 天前
【51单片机】【protues仿真】 基于51单片机八路抢答器系统
c语言·开发语言·单片机·嵌入式硬件·51单片机
风_峰2 天前
Ubuntu Linux SD卡分区操作
嵌入式硬件·ubuntu·fpga开发
bing_feilong2 天前
STM32精准控制水流
单片机·嵌入式硬件
Hello_Embed2 天前
STM32HAL 快速入门(二十):UART 中断改进 —— 环形缓冲区解决数据丢失
笔记·stm32·单片机·学习·嵌入式软件