文章目录
0.前言
【相关博文】
【QMI8658 - 姿态传感的零偏(常值零偏)标定】
【QMC5883L-磁力计椭球拟合校准】
【Keil5软件使用-基础使用篇 】
【Keil5软件使用-进阶工程配置篇】
【Keil5软件使用-进阶调试篇】
1.硬件准备
【MCU开发板】——在开始所有的实验之前,你需要一块完整的STM32F103单片机开发板。(如果你是自己移植程序任何MCU都可以)
【9轴EVB 评估板】——可以通过淘宝购买QMI8658A_QMC5883L(9轴)-EVB板。
QMI8658A_QMC5883L(9轴)-EVB板和MCU开发板开发板通过I2C接口连接, 请注意,QMI8658A和QMC5883L共用同一个I2C总线。
1.1 I2C 接口
1.2 USART 接口
2.运行程序
【下载程序】——请将位于资料文件夹路径下的"05.IMU-9AXIS _Example-visualizer\Project"文件夹中的"IMU-9AXIS _Example-visualizer.uvprojx"工程文件打开,并进行编译和下载。对于初学者,可以参考Keil IDE使用教程。
【上电进行传感器校准】——在上电后,首先需要对QMI8658A加速度计和陀螺仪的常值零偏进行校准;接下来进行QMC5883L地磁传感器的校准。
2.1 QMI8658A 常值零偏校准
详见博文【QMI8658 - 姿态传感的零偏(常值零偏)标定】
2.2 QMC5883L地磁传感器校准
详见博文【QMC5883L-磁力计椭球拟合校准】
2.3 校准步骤
Step1: 将QMI8658A_QMC5883L(9轴)-EVB板和MCU开发板连接,并且将MCU开发板的UART接口通过USB转UART数据线与电脑连接。
Step2: 打开串口助手,选择对用的端口号,设置波特率115200
Step3: 将传感器沿Z轴向上,稳妥地放置在水平面上,建议选择平整的大理石水平面。
Step4: 给开发板上电,开始进行QMI8658A加速度计和陀螺仪零偏校准,在校准过程中串口助手一直输出提示信息: Acceleration gyroscope sensor calibration...
Step5: 当串口助手输出 Geomagnetic sensor calibration, please rotate the '8' font
的提示信息时,开始校准QMC5883L地磁传感器。QMI8658A_QMC5883L(9轴)-EVB板拿起来做 8 字形转动,直到串口开始输出 加速度计、陀螺仪、磁力计 9轴的有效数据。
3.与 example-algo-visualizer.exe 上位机通信协议
[I] 825320: OUTPUT Acc=[-0.014, 0.005, 1.013]g AccBias=[0.000, 0.000, 1.000]mg Accuracy=0
[I] 825320: OUTPUT Gyr=[0.170, -0.022, 0.142]dps GyrBias=[-2.123, -0.527, 0.407]dps Temp=[26.93]C Accuracy=3
[I] 821513: OUTPUT Mag=[7.500, 32.699, -12.899]uT MagBias=[0.000, 0.000, 0.000]uT Accuracy=0
[I] 3816111334: 0UTPUT 9Axis=[0.999997,-0.001156,-0.001498,0.001307] 9AxisAccuracy=[0.000000]deg
[I] 3816111334: OUTPUT Euler9Axis=[0.15,-0.13, -0.17]deg 9AxisAccuracy=[0.000000]deg
[I] 3816111334: 0UTPUT 6Axis=[0.985218,-0.009316,-0.033486,-0.1677407]
[I] 3816111334: OUTPUT Euler6Axis=[19.31,.41, -3.96]deg