产品概述
这是一款10轴传感器,板载低功耗ICM20948(3轴加速度、3轴陀螺仪和3轴磁力计),内置数字运动处理引擎,可减少复杂的融合演算数据,减轻处理器的负荷,相比MPU9250,精度更高,拥有更低的功耗,更适用于可穿戴设备。板载BMP280(气压高度计),内置温度传感器,可进行温度补偿,相比BMP180,拥有更强的性能和更低的功耗。通过I2C通信就能获取10轴数据。
产品特性
加速度计特性:
- 分辨率:16位
- 量程(可选):±2、±4、±8、±16g
- 工作电流:68.9uA
陀螺仪特性:
- 分辨率:16位
- 量程(可选):±250、±500、 ±1000、±2000°/sec
- 工作电流:1.23mA
磁力计特性:
- 分辨率:16位
- 量程:±4900µT
- 工作电流:90uA
气压高度计特性:
- 气压分辨率:0.0016hPa
- 温度分辨率:0.01°C
- 量程:300~1100hPa(海拔高度:+9000m ~ -500m)
- 气压相对精度(700hPa~900hPa,25°C~40°C):±0.12hPa(±1m)
- 工作电流(1Hz更新速率,超低功耗模式):2.8uA
接口说明
引脚号 |
标识 |
描述
|
1 |
VCC |
3.3V 或 5V 电源
|
2 |
GND |
电源地
|
3 |
SDA |
I2C 数据线
|
4 |
SCL |
I2C 时钟线
|
5 |
INT |
ICM20948数字中断输出
|
6 |
FSYNC |
ICM20948帧同步信号
|
操作和现象
STM32
以接入微雪电子的Open103V开发板为例,演示 10 DOF IMU Sensor 模块的实验效果。
- 将配套程序下载到相应的开发板中。
- 将串口线和模块接入开发板,把 10 DOF IMU Sensor 模块插在开发板的 I2C-2 接口上, 并注意模块引脚与 I2C-2 接口必须对应起来。(VCC接3.3V,GND接GND,SCL接PB10 SDA接PA11,FSYNC 引脚悬空)。
- 串口配置如表所示:
波特率 |
115200
|
数据位 |
8
|
停止位 |
1
|
奇偶校验 |
无
|
运行程序后,串口分别输出如下数据:

串口输出数据含义如下:
Roll, Pitch, Yaw |
Roll 倾角(°), Pitch 倾角(°), Yaw 倾角(°)
|
Acceleration |
加速度(LSB,可换算为 g)
|
Gyroscope |
陀螺仪角速度(LSB,可换算为°/秒)
|
Magnetic |
电子罗盘倾角(°)
|
Angle |
方向角(°),理论上等于 Yaw 倾角。
|
Pressure |
气压值(hPa)
|
Altitude |
海拔高度(m)
|
Temperature |
温度值(℃)
|
ARDUINO
例程使用的开发板为:UNO_PLUS
功能引脚 |
开发板
|
VCC |
3V3/5V
|
GND |
GND
|
SDA |
SDA
|
SCL |
SCL
|
将模块与开发板连接好之后,下载程序,打开Arduino的串口监视器,可在串口监视器看到测量的数据。
RASPBERRY PI
安装wrigingpi库,关于树莓派库的安装详细见相关教程:树莓派教程系列7:wiringPi、bcm2835、python库安装
功能引脚 |
开发板
|
VCC |
3V3/5V
|
GND |
GND
|
SDA |
SDA
|
SCL |
SCL
|
连接引脚
将程序复制到树莓派,并进入对应的目录中,运行如下命令编译并运行
make
sudo ./ 10Dof-D_Demo
程序运行后会通过终端输出测量的数据。