基于iNEMO模块的姿态检测及数据传输系统设计
近年来,MEMS技术的发展开辟了一个全新的技术领域和产业,采用MEMS技术制作的微传感器、微执行器、电力电子器件等在航空、航天、汽车、生物医学、军事等领域中都有着十分广阔的应用前景,同时人体姿态检测和信息融合技术在人体医学工程、健康监护等领域的研究也逐渐开展起来。
目前人体姿态检测的主要手段有图像分析和加速度分析两种,图像分析的算法通过摄像捕捉人体运动姿态,经过一定的图像处理技术确定人体的姿态,该方法需要在人体运动的区域安装摄像头,价格昂贵、具有一定的局限性;传统的加速度算法采用SVM (Support Vector Machine)算法对数据进行预处理,然后用KFD(Kernel Fisher Discriminant)算法和k-NN(Nearest Neighbour)算法进行精确判定,该方法计算量大、编程复杂。
本系统提出的算法主要是在加速度计、陀螺仪、磁力计采集人体运动姿态信息的基础上,运用扩展卡尔曼滤波将数据进行融合,得到人体腰部和腿部的角度信息,然后通过大量实验建立与姿态的对应关系,采用这种方式可以利用加速度计与磁力计克服单独采用陀螺仪引起的姿态角发散,另外利用陀螺仪可以克服由于振动对于加速度计的影响与由于软硬铁磁对于磁力计的影响。
1系统整体设计方案
系统分为上位机子系统和下位机子系统,下位机子系统由电源模块、2个iNEMO模块、GPRS模块和主控板组成,其中电源模块给整个系统提供3.3V和5V的工作电压,两个iNEMO模块分别固定在人体的腰部和腿部,完成对加速度计、磁力计、陀螺仪的信息采集,然后通过串口发送到主控板,主控板进行卡尔曼滤波融合出腰部和腿部的角度,然后根据腰部和腿部的角度值完成姿态的检测,最后GPRS模块通过socket协议将姿态信息打包传送到上位机,上位机实现远程监控。
图1系统整体设计方案
2数据融合原理
在惯性导航领域,求取姿态角的数学表达式叫做方向余弦矩阵,用于表示方向余弦矩阵有两种方式:欧拉角与四元数。欧拉角的优点是比较直观,缺点是在俯仰角为正负90°时系统存在不稳定奇点。四元数的优点是当俯仰角为正负90°时系统不受影响,缺点是不直观,下面是它们之间的相互转换公式。
欧拉角转换成四元数
在程序中使用的是四元数,由于四元数不能直观的表示输出的角度,所以首先根据陀螺仪求取四元数,再将四元数转换成姿态角。根据运动体安装的三轴陀螺仪,可以得到在运动体坐标系下的三轴角速度( wx,wy,wz),用三轴角速度更新四元数
其中,X(k)是k时刻的系统状态,U(k)是k时刻对系统的控制量。A和B是系统参数。Z(k)是k时刻的测量值,H是测量系统的参数。W(k)和V(k)分别表示过程和测量的噪声。
为了提高惯性导航仪的启动速度,需要利用欧拉角求取初始的四元数,首先根据运动体上三轴加速度计输出的三轴加速度( fx,fy,fz),求取俯仰角θ与横滚角φ
利用公式(3-5)和(3-7)可以完成对四元数的初始化工作。
3系统硬件设计
3.1 iNEMO模块简介
iNEMO惯性导航模块的基本原理如图2所示,利用MEMS传感器和主控芯片STM32F103RET6提供动静态方向和惯性测量功能。集成3个(4种)意法半导体传感器:3轴陀螺仪(L3GD20)、3轴加速度计+3轴磁力计(LSM303DLHC)以及气压传感器(LPS331AP),iNEMO传感器平台主控制器通过I2C总线与各传感器通信。iNEMO传感器平台可以通过串口向外界提供各传感器原始数据,还可以提供各传感器经AHRS算法融合后的横滚、偏航及俯仰角度。
图2 iNEMO惯性导航模块框图
3.2主控制器电路设计
图3为系统主控板电路图,其中处理器采用了STM32F103VCT6,STM32系列单片机以Cortex-M3为内核,时钟频率可达到72M Hz,具有丰富的片内外设,高性能、低成本、低功耗的特点使其成为32位产品用户的最佳选择。主控板拓展了多个串行接口,和iNEMO腿部模块、iNEMO腰部模块和GPRS模块进行串口通信。稳压芯片选用了LM2576D2T-5,其最大输入电压为45V,可稳定输出5V电压,再经过REG1117-3.3的稳压电路,产生3.3V工作电压,当电流异常导致温度过高时,保险丝F1、F2可以自身熔断切断电流,起到保护电路的作用。另外主控电路还包括复位电路、晶振电路、电容滤波电路以及JTAG下载接口等。
图3主控板电路图
3.3 GPRS电路设计
图4为GPRS电路图,主要包括MCU、SIM300模块、SIM卡卡槽、稳压电路四部分。MCU同样采用了STM32F103VCT6,围绕它设计了单片机最小系统,包括晶振电路、复位电路、电容滤波电路等,MCU通过串口向SIM300发送控制指令以及接收SIM300返回的数据;SIM300模块与PCB板的连接方式为60引脚的板
- 基于iNEMO的车载式汽车安全检测仪方案设计(03-18)
- 基于INEMO设计的汽车安全检测仪设计(06-17)
- 基于DSP的数字式MEMS加速度传感器的设计与应用(04-17)
- 基于ARM-Linux的微惯性单元数据采集与处理(05-15)
- DSP在MEMS陀螺仪信号处理平台的应用(01-06)
- 基于DSP的MEMS陀螺仪信号处理平台系统的设计(04-21)