Overview
基础概况
MPU6050 是经典的六轴 IMU 模块,可通过 I2C 输出角速度与加速度数据。部分库还可使用 DMP 能力进行姿态解算。
工作原理:模块通过 MEMS 结构测量角速度和线性加速度,主控读取 I2C 寄存器后可进行滤波、积分和姿态融合,得到倾角、角速度或运动状态。
Engineering
工程要点
工程要点
- 难度
- 中级
- 数据状态
- 待核实
- 接口
- I2CINT
- 常用主控
- ESP32ArduinoSTM32Raspberry Pi Pico
供电与采购
- 供电
- 3V - 5V
- 逻辑电平
- 通常跟随模块供电/板载转换情况
- 电流
- 约 3.9mA
- 购买关键词
- MPU6050GY-521六轴姿态传感器
不同 GY-521 模块电平兼容性可能不同,接线前看板载稳压和上拉。
典型搭配
自平衡小车
读取倾角并输入 PID 控制电机。
MPU6050 + ESP32 + L298N
体感输入器
把姿态变化映射为蓝牙 HID 输入。
MPU6050 + ESP32 BLE
Specifications
基础参数
| 参数 | 值 | 分组 | 备注 |
|---|---|---|---|
| 工作电压 | 3V - 5V | 电气参数 | 常见模块带 LDO 稳压 |
| 通信接口 | I2C | 接口 | - |
| 角速度范围 | ±250 / ±500 / ±1000 / ±2000 °/s | 测量能力 | - |
| 加速度范围 | ±2 / ±4 / ±8 / ±16 g | 测量能力 | - |
| 默认地址 | 0x68 | 接口 | - |
Pinout
引脚与接线
| 引脚 | 说明 | 连接建议 | 注意 |
|---|---|---|---|
| VCC | 供电 | 3.3V / 5V | - |
| GND | 地线 | GND | - |
| SCL | I2C 时钟线 | ESP32 GPIO 22 | - |
| SDA | I2C 数据线 | ESP32 GPIO 21 | - |
| INT | 中断输出 | 可选 GPIO | - |
Examples
代码示例
扫描 I2C 地址
python
from machine import I2C, Pin
i2c = I2C(0, scl=Pin(22), sda=Pin(21), freq=400000)
devices = i2c.scan()
if devices:
print("MPU6050 已连接,地址:", hex(devices[0]))
else:
print("未找到 I2C 设备")Applications
应用场景
自平衡双轮车
读取倾角并输入 PID 控制器,动态调整电机输出。
ESP32L298N直流减速电机
体感鼠标
通过手腕倾斜角度控制光标或蓝牙 HID 输入。
ESP32BLE HID
Warnings
注意事项
- 姿态解算需要滤波,直接积分陀螺仪数据会产生漂移。
- 安装方向会影响轴向定义,项目中应固定并校准。
Relations

