高精度6轴惯性导航模块说明书1产品概述.docx
《高精度6轴惯性导航模块说明书1产品概述.docx》由会员分享,可在线阅读,更多相关《高精度6轴惯性导航模块说明书1产品概述.docx(12页珍藏版)》请在冰豆网上搜索。
高精度6轴惯性导航模块说明书1产品概述
高精度6轴惯性导航模块说明书
1产品概述
此六轴模块采用先进的数字滤波技术(卡尔曼滤波),能有效降低测量噪声,提高测量精度。
模块内部集成了运动引擎DMP,获取四元数得到当前姿态。
姿态测量精度0.01度,稳定性极高,性能甚至优于某些专业的倾角仪!
此六轴模块采用高精度的陀螺加速度计MPU6050,通过处理器读取MPU6050的测量数据然后通过串口输出,免去了用户自己去开发MPU6050复杂的I2C协议,同时精心的PCB布局和工艺保证了MPU6050收到外接的干扰最小,测量的精度最高。
2性能参数
1、电压:
3V~6V
2、电流:
<10mA
3、体积:
17.8mmX17.8mm 重量:
1.1g
4、焊盘间距:
上下100mil(2.54mm),左右600mil(15.24mm)
5、测量维度:
加速度:
3维,角速度:
3维,姿态角:
3维
6、量程:
加速度:
±16g,角速度:
±2000°/s。
7、分辨率:
加速度:
6.1e-5g,角速度:
7.6e-3°/s。
8、稳定性:
加速度:
0.01g,角速度0.05°/s。
9、姿态测量稳定度:
0.01°。
10、数据输出频率100Hz(波特率115200)/20Hz(波特率9600)。
11、数据接口:
串口(TTL电平),I2C(直接连MPU6050,无姿态输出)
10、波特率115200kps/9600kps。
3引脚说明:
名称
功能
VCC
模块电源,3.3V或24V输入
RX
串行数据输入,TTL电平
TX
串行数据输出,TTL电平
GND
地线负极
4硬件连接方法
4.1与计算机
与计算机连接,需要USB转TTL电平的串口模块。
推荐以下USB转串口模块。
USB串口模块连接6050模块的方法是:
USB串口模块的+5V,TXD,RXD,GND接
6050模块的VCC,RX,TX,GND。
注意TXD和RXD的交叉。
4.2连单片机
4.3MCU连单片机并输出调试信息。
通常情况下,MCU的串口资源比较紧张,有的单片机只有一个串口,而且调试的时候需要通过串口输出调试信息,这时可以将MCU的TX引脚连接到USB转串口模块的RX上,
6050模块的TX接到MCU的RX引脚上,这样MCU既可以收到6050模块的数据,又可以输出调试信息了。
只是MCU无法输出串口指令给6050模块了,不过模块的配置都是可以掉电保存的,而且校准可以再上电后第三秒钟自动执行,通常情况下不用发送任何指令即可工作。
4.4用上位机监视模块与单片机的通信。
如果需要在MCU接受6050模块的输出数据的同时,用上位机监视当前的数据,可以将USB转串口模块的RX接到模块的TX引脚上,并共地即可。
5通信协议
电平:
TTL电平(非RS232电平,若将模块错接到RS232电平可能造成模块损坏)波特率:
115200/9600,停止位1,校验位0。
5.1上位机至模块
指令内容
功能
备注
0x52
角度初始化
使Z轴角度归零
0x61
使用串口,禁用I2C
掉电保存,建议使用上位机修改
0x62
禁用串口,使用I2C接口
掉电保存,建议使用上位机修改
0x63
波特率115200,帧率100Hz
掉电保存,建议使用上位机修改
0x64
波特率9600,帧率20Hz
掉电保存,建议使用上位机修改
说明:
1.模块上电以后需先保持静止,模块内部的MCU会在模块静止的时候进行自动校准(消除陀螺零漂),校准以后Z轴的角度会重新初始化为0,Z轴角度输出为0时,可视为自动校准完成的信号。
2.出厂默认设置使用串口,波特率115200,帧率100Hz。
配置可通过上位机软件配置,因为所有配置都是掉电保存的,所以只需配置一次就行。
5.2模块至上位机:
模块发送至上位机每帧数据分为3个数据包,分别为加速度包,角速度包和角度包,3
个数据包顺序输出。
波特率115200时每隔10ms输出1帧数据,波特率9600时每隔50ms输出一帧数据。
5.2.1加速度输出:
数据编号
数据内容
含义
0
0x55
包头
1
0x51
标识这个包是加速度包
2
AxL
X轴加速度低字节
3
AxH
X轴加速度高字节
4
AyL
y轴加速度低字节
5
AyH
y轴加速度高字节
6
AzL
z轴加速度低字节
7
AzH
z轴加速度高字节
8
TL
温度低字节
9
TH
温度高字节
10
Sum
校验和
加速度计算公式:
ax=((AxH<<8)|AxL)/32768*16g(g为重力加速度,可取9.8m/s2)ay=((AyH<<8)|AyL)/32768*16g(g为重力加速度,可取9.8m/s2)az=((AzH<<8)|AzL)/32768*16g(g为重力加速度,可取9.8m/s2)温度计算公式:
T=((TH<<8)|TL)/340+36.53℃
校验和:
Sum=0x55+0x51+AxH+AxL+AyH+AyL+AzH+AzL+TH+TL
5.2.2角速度输出:
数据编号
数据内容
含义
0
0x55
包头
1
0x52
标识这个包是角速度包
2
wxL
X轴角速度低字节
3
wxH
X轴加速度高字节
4
wyL
y轴加速度低字节
5
wyH
y轴加速度高字节
6
wzL
z轴加速度低字节
7
wzH
z轴加速度高字节
8
TL
温度低字节
9
TH
温度高字节
10
Sum
校验和
角速度计算公式:
wx=((wxH<<8)|wxL)/32768*2000(°/s)wy=((wyH<<8)|wyL)/32768*2000(°/s)wz=((wzH<<8)|wzL)/32768*2000(°/s)温度计算公式:
T=((TH<<8)|TL)/340+36.53℃
校验和:
Sum=0x55+0x52+wxH+wxL+wyH+wyL+wzH+wzL+TH+TL
5.2.3角度输出:
数据编号
数据内容
含义
0
0x55
包头
1
0x53
标识这个包是角度包
2
RollL
X轴角度低字节
3
RollH
X轴角度高字节
4
PitchL
y轴角度低字节
5
PitchH
y轴角度高字节
6
YawL
z轴角度低字节
7
YawH
z轴角度高字节
8
TL
温度低字节
9
TH
温度高字节
10
Sum
校验和
角速度计算公式:
滚转角(x轴)Roll=((RollH<<8)|RollL)/32768*180(°)俯仰角(y轴)Pitch=((PitchH<<8)|PitchL)/32768*180(°)偏航角(z轴)Yaw=((YawH<<8)|YawL)/32768*180(°)温度计算公式:
T=((TH<<8)|TL)/340+36.53℃
校验和:
Sum=0x55+0x53+RollH+RollL+PitchH+PitchL+YawH+YawL+TH+TL
注:
1.姿态角结算时所使用的坐标系为东北天坐标系,正方向放置模块,如下图所示向左为X轴,向前为Y轴,向上为Z轴。
欧拉角表示姿态时的坐标系旋转顺序定义为为z-y-x,即先绕z轴转,再绕y轴转,再绕x轴转。
2.滚转角的范围虽然是±180度,但实际上由于坐标旋转顺序是Z-Y-X,在表示姿态的时候,俯仰角(Y轴)的范围只有±90度,超过90度后会变换到小于90度,同时让X轴的角度大于180度。
详细原理请大家自行XX欧拉角及姿态表示的相关信息。
3.由于三轴是耦合的,只有在小角度的时候会表现出独立变化,在大角度的时候姿态角度会耦合变化,比如当X轴接近90度时,即使姿态只绕X轴转动,Y轴的角度也会跟着发生较大变化,这是欧拉角表示姿态的固有问题。
6上位机使用方法
选择正确的串口
正常情况下,选择好正确的串口就可以看到数据了。
如果需配置波特率,请点击
点开始测量、停止测量,选择是否使用串口输出数据。
陀螺仪校准按钮用于校准陀螺零位,校准时需保持静止。
角度初始化用于让Z轴的角度数据归零。
点记录按钮可以将数据保存为文件
保存的文件在上位机程序的目录下:
数据可以导入到Exel或者Matlab中进行分析。
在Matlab环境下运行上位机根目录下的
“Matlab绘图.m”文件,可以绘制数据曲线图。