NanoFramework操作ESP32(一)_基础元器件篇(三十一)_ MPU6050陀螺仪模块
1.NanoFramework操作ESP32(目录)_目录2.NanoFramework操作ESP32(一)_基础元器件篇(一)_安装环境3.NanoFramework操作ESP32(一)_基础元器件篇(二)_第一个示例程序4.NanoFramework操作ESP32(一)_基础元器件篇(三)_单色灯(F3 单色LED_常亮 Boot按钮控制 呼吸灯)5.NanoFramework操作ESP32(一)_基础元器件篇(四)_跑马灯与呼吸灯(三色LED)6.NanoFramework操作ESP32(一)_基础元器件篇(五)_超声波测距(HC-SR04超声波传感器)7.NanoFramework操作ESP32(一)_基础元器件篇(九)_双色屏(0.96寸OLED显示屏_IIC接口SSD1306驱动)8.NanoFramework操作ESP32(一)_基础元器件篇(十三)_ HC_SR501人体红外传感器9.NanoFramework操作ESP32(一)_基础元器件篇(十四)_ KY-032红外避障模块(光电反射传感器)10.NanoFramework操作ESP32(一)_基础元器件篇(十七)_ KY-019继电器(1路5V继电器)11.NanoFramework操作ESP32(一)_基础元器件篇(二十)_ KY-008激光头传感器12.NanoFramework操作ESP32(一)_基础元器件篇(二十一)_ 声音传感器13.NanoFramework操作ESP32(一)_基础元器件篇(二十二)_ DHT11温湿度传感器14.NanoFramework操作ESP32(一)_基础元器件篇(二十三)_ 土壤湿度传感器15.NanoFramework操作ESP32(一)_基础元器件篇(二十五)_ KY-018光敏传感器16.NanoFramework操作ESP32(一)_基础元器件篇(二十六)_ KY-028热敏传感器(数字温度)17.NanoFramework操作ESP32(一)_基础元器件篇(二十七)_ 气体质量、可燃气体、烟雾检测传感器18.NanoFramework操作ESP32(一)_基础元器件篇(二十八)_ KY-026火焰传感器19.NanoFramework操作ESP32(一)_基础元器件篇(二十九)_ 雨滴传感器20.NanoFramework操作ESP32(一)_基础元器件篇(三十)_ KY-036人体触摸传感器
21.NanoFramework操作ESP32(一)_基础元器件篇(三十一)_ MPU6050陀螺仪模块
22.NanoFramework操作ESP32(一)_基础元器件篇(三十二)_ KY-002震动传感器23.NanoFramework操作ESP32(一)_基础元器件篇(三十三)_ KY-020倾斜开关24.NanoFramework操作ESP32(一)_基础元器件篇(三十五)_ KY-040编码器25.NanoFramework操作ESP32(一)_基础元器件篇(三十六)_ KY-023 PS2摇杆26.NanoFramework操作ESP32(一)_基础元器件篇(三十七)_ SD读卡器模块27.NanoFramework操作ESP32(一)_基础元器件篇(三十八)_ RTC与DS1302时钟模块28.NanoFramework操作ESP32(一)_基础元器件篇(三十九)_ KY-033红外寻迹模块(TCRT5000)29.NanoFramework操作ESP32(一)_基础元器件篇(四十)_ KY-025干簧管传感器30.NanoFramework操作ESP32(一)_基础元器件篇(四十一)_ KY-024线性霍尔传感器31.NanoFramework操作ESP32(一)_基础元器件篇(四十二)_ KY-031敲击传感器32.NanoFramework操作ESP32(一)_基础元器件篇(四十三)_ KY-010光遮断传感器33.NanoFramework操作ESP32(二)_网络协议篇(一)_ Wifi34.NanoFramework操作ESP32(二)_网络协议篇(五)_ 串口协议一、元器件介绍
MPU-6050是InvenSense公司生产的一款六轴运动处理器,集成了3轴加速度计和3轴陀螺仪;内置的数字运动处理器(DMP)可以实现高级运动处理功能,如六轴运动融合、姿态估计等。这款传感器广泛应用于运动控制和测量领域,如无人机、智能手机、运动手环等。
- 通信接口:I2C(双线串行接口)
- 测量范围
加速度计测量范围:±2g、±4g、±8g、±16g(可配置)
加速度计灵敏度:16384 LSB/g(±2g)、8192 LSB/g(±4g)、4096 LSB/g(±8g)、2048 LSB/g(±16g)
陀螺仪测量范围:±250°/s、±500°/s、±1000°/s、±2000°/s(可配置)
陀螺仪灵敏度:131 LSB/°/s(±250°/s)、65.5 LSB/°/s(±500°/s)、32.8 LSB/°/s(±1000°/s)、16.4 LSB/°/s(±2000°/s)
- 分辨率
加速度计:16位ADC(模拟数字转换器)
陀螺仪:16位ADC
- 自带一个数字温度传感器,用于自身温度检查;
- 可程序控制的中断(interrupt),支持姿势识别、摇摄、画面放大缩小、滚动、快速下降中断、high-G 中断、零动作感应、触击感应、摇动感应功能。
出处:ESP32学习:MPU6050_esp32 mpu6050-CSDN博客
1、针脚用途
编号 | 名称 | 功能 |
1 | VCC | 电源正 |
2 | GND | 电源地 |
3 | SCL | IIC通讯时钟引脚 |
4 | SDA | IIC通讯数据引脚 |
5 | XDA | 外接IIC设备数据引脚 |
6 | XCL | 外接IIC设备时钟引脚 |
7 | ADD | IIC从地址LSB |
8 | INT | 用于指示数据准备就绪的中断引脚 |
二、示例代码
1、代码:
mpu6050元器件的针脚 | ESP32模块的针脚 |
---|---|
VCC(红色) | 3V3 |
GND(黑色) | GND |
SCL(绿色) | IO22;Output |
SDA(黄色) | IO21;Input |
XDA | |
XCL | |
ADD | |
INT |
var gyroData = mpu6050Gyroscope.GetGyroscopeReading(); // 获取角速度
var accData = mpu6050Gyroscope.GetAccelerometer(); // 获取加速度
var tempData = mpu6050Gyroscope.GetTemperature(); // 获取芯片温度
Debug.WriteLine($"角速度:GYRO_X:{gyroData.X}; GYRO_Y:{gyroData.Y}; GYRO_Z:{gyroData.Z};");
Debug.WriteLine($"加速度:ACCEL_X:{accData.X}; ACCEL_Y:{accData.Y}; ACCEL_Z:{accData.Z};");
Debug.WriteLine($"芯片温度:{tempData.Value}");
2、计算欧拉角
Euler欧拉角(姿态角):机体坐标系与地面坐标系的关系是三个角,反应了飞机相对地面的姿态:
-
- 横滚角Φ(roll):绕X轴旋转。横滚角是指运载体横轴与水平线之间的夹角。也叫滚转角,代表运载体绕纵轴的转动,绕纵轴轴向顺时针转动为正,否则为负,可以想象成飞机做翻滚运动。
- 俯仰角θ(pitch):绕Y轴旋转。机体坐标系x轴与水平面的夹角,俯仰角在水平面上面为正,否则为负,可以想象成飞机抬头向上与俯冲向下。
- 偏航角ψ(yaw):绕Z轴旋转。相对于纵轴的旋转角度,改变偏航角可以改变飞机的飞行方向,机头往右为正,这个跟平时开车,左转弯右转弯一样
// 欧拉角:航向角(yaw)、横滚角(roll)和俯仰角(pitch)
q0=quat[0] / q30; //q30 格式转换为浮点数
q1=quat[1] / q30;
q2=quat[2] / q30;
q3=quat[3] / q30;
//计算得到俯仰角/横滚角/航向角
pitch=asin(-2 * q1 * q3 + 2 * q0* q2)* 57.3; //俯仰角
roll=atan2(2 * q2 * q3 + 2 * q0 * q1, -2 * q1 * q1 - 2 * q2* q2 + 1)* 57.3; //横滚角
yaw=atan2(2*(q1*q2 + q0*q3),q0*q0+q1*q1-q2*q2-q3*q3) * 57.3; //航向角
3、结果:
本文来自博客园,作者:꧁执笔小白꧂,转载请注明原文链接:https://www.cnblogs.com/qq2806933146xiaobai/p/18035682
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
2020-02-26 2019年末Powershell 挖矿病毒的处理与防范
2020-02-26 2021年复习内容包括