基于STM32的无线运动传感节点设计

2020-06-28 00:54高天学
现代信息科技 2020年24期
关键词:无线传输

摘  要:针对医疗、体育训练等过程中的身体指标监测问题,设计了基于ADS1292和LMT70的无线运动传感器节点,其中温度测量模块、心率监测模块实现了实时采集人体心电信号、体表温度,运动记录模块使用MPU6050芯片结合卡尔曼滤波算法来实现人体运动信息精准检测,最后STM32将以上信息通过CC2652RB蓝牙芯片发送给服务器(手机)并由自主开发的APP实时显示,同时还设计了心跳、体温异常等信息的語音提醒等功能,实验结果表明系统运行稳定,测量精度可满足实际要求。

关键词:心率检测;温度测量;运动姿态检测;无线传输;APP显示

中图分类号:TP212.9;TN929.5      文献标识码:A 文章编号:2096-4706(2020)24-0035-04

Design of Wireless Motion Sensor Node Based on STM32

GAO Tianxue

(Shandong Huayu University of Technology,Dezhou  253034,China)

Abstract:Aiming at the problem of body index monitoring in the process of medical treatment and physical training,a wireless motion sensor node based on ADS1292 and LMT70 is designed. Thereinto,temperature measurement module and heart rate monitoring module realize real-time acquisition of human ECG signals and shell temperature,the motion recording module uses MPU6050 chip and combining with Kalman filtering algorithm to realize an accurate detection of human motion information. Finally,STM32 sends the above information to the server(mobile phone)through CC2652RB Bluetooth chip and displays it in real time by the self-developed APP. And at the same time,it also designs the voice reminder function on the information of heartbeat,abnormal body temperature etc. Experiments results show that the systems running is stable,and the measurement accuracy can meet the actual requirements.

Keywords:heart rate detection;temperature measurement;motion gesture detection;wireless transmission;APP display

0  引  言

心率、体温、运动状态等指标均涉及到人体健康,也是医疗、体育训练等项目中越来越重视的关键指标,该系列指标的无线快速监测问题已成为最新医疗器械、手环、手机等设备中的必备功能,传统的监测方法由于器件灵敏度等问题存在效率低、误差大、功能单一等问题,同时传统的检测设备多采用有线数据传输方式,导致设备的接线较为复杂且传输线在使用中也存在接触不良、开路等问题,造成维修与检测工作量大且很难找到开路点等问题,特别是高速运动过程中的指标监测技术在稳定性、灵活性、快速性等方面仍有待提高。笔者基于学校教学研究项目及全国大学生电子设计竞赛项目对基于STM32的无线运动传感节点进行了设计与开发,实现了实时采集人体心电信号、人体温度、人体运动信息精准监测等功能并通过高速单片机将以上信息通过CC2652RB蓝牙芯片发送给服务器(手机)并由自主开发的APP实时显示,同时还设计了心跳、体温异常等信息的语音提醒等功能。

1  系统总体设计方案

目前的姿态检测多使用三轴加速度传感器进行运动检测,主要因为其成本较低,但三轴加速度传感器测量数据单一、准确性低。而MPU6050姿态融合传感器,通过姿态融合算法可以精确地对人体的运动进行分析,数据复杂但准确性高。目前的小型控制电路核心控制器多采用89C51单片机,其I/O脚使用简单,但高电平时驱动能力不强,而且89C51单片机运行速度过慢、保护能力很差,很容易烧坏芯片。

而近几年流行起来的高速STM32单片机有以下优点:运存大、主频高,运算能力强、外设丰富,定时器多、外部接口丰富,且拥有多个串口,USB通信、SPI通信等一应俱全,故采用该系列单片机作为主控芯片。目前的无线传输方式主要有Wi-Fi、蓝牙、ZigBee等传输形式,虽然Wi-Fi传输距离长,但是价格高、功耗高、电池续航时间短。ZigBee在短距离传输具备优势且功耗极低,但其传输速率不高且开发过程比较复杂,需大量协议程序代码。蓝牙传输模块价格低、功耗低、可以延长续航,虽然传输距离稍近,但是近距离通信毫无压力。综合比较后最终确定整个系统由手机、单片机、温度测量模块、心率监测模块、运动记录模块等组成,系统框架如图1所示。

2  理论分析与计算

2.1  心电测量方法

心脏在收缩或舒张时会产生微弱的生物电流,这种电流可以传到人体表面。心电图机就是通过监测心脏这种周期性变化产生的电流变化,以连续曲线的形式,在心电图中记录下来。心电图记录纸上横向坐标可以测量各波的宽度,即时间。每小格距离为1 mm,采用25 mm/s的纸速时,则横坐标上每1 mm的距离等于0.04 s。根據需要可以提高走纸的速度,如成倍提高至50 mm/s或100 mm/s,则每小格1 mm就分别为0.02 s或0.01 s。在心电图上测量心率时,只需测量一个P-P(两个P峰之间的间隔)或R-R(两个R峰之间的间隔)间期的秒数,然后除以60即可得出心率数,计算公式:

HR=60/P-P(R-R)

例如:R-R间期为0.75 s时,心率为:60/0.75=80

(次/分),还可采用查表法或使用专门的心率尺直接读出相应的心率数。当心律不规则,P-P和R-R间期不均匀时,不能用一个心动周期计算,一般采取数个(如10个)心动周期的P-P或R-R周期平均值计算。测量各波的时间,应选用波形清晰的导联并且同时用多个方法测量导联方能准确,各波的时间测量应自该波形内缘的起点测至波形内缘的终点。

2.2  基于LMT70的体表温度测量方法

LMT70是精密模拟温度传感器,其供电要求低、引脚简单、具有很宽的温度测量范围,是一款医用级的传感器。LMT70几乎适用于所有高精度、低功耗的经济高效型温度感测应用,例如物联网传感器节点、医疗温度计、高精度仪器仪表和电池供电设备。根据其测量结果精确、体积小、电源要求低的特点,由于LMT70的输出电压传递函数近似于线性但并非绝对线性,故也可以用二阶或三阶传递函数方程更好地描述,通常用在对温度变化测量精度要求较高的工业控制领域。

二阶传递函数可以在更宽的有限温度范围内提供良好的结果。在-55 ℃至+150 ℃的整个温度范围内,单个二阶传递函数在极端温度下的误差会增加。使用最小二乘和方法,使用如表1所示的电气特性温度查找表中的值生成了最合适的二阶传递函数:

TM=a(VTAO)2+b(VTAO)3+c

其中TM为温度值,VTAO为直流电压值,a与b为二阶、三阶传递系数,c为补偿值。

在较宽的温度范围内,最精确的单个方程式是三阶传递函数。使用最小二乘法并使用表2中的值生成了最合适的三阶传递函数:

TM=a(VTAO)3+b(VTAO)3+c(VTAO)+d

其中,a、b、c为传递系数,d为补偿值。

由于本系统对温度的精度要求不高,温度传感器LMT70的温度计算公式采用了一阶传递函数:

T=-0.193×NUM×1 000+212.009

其中NUM为温度传感器的输出电压,故需要进行模数转换后送到单片机内部进行温度还原。

2.3  运动量计算方法

实验表明,MPU6050姿态融合传感器可通过四元数法来算出运动量,四元数法:

当采用欧拉角表示姿态变换时,表征的是分别绕着(i,j,k)三个坐标轴的三次旋转,根据欧拉定理,这三次旋转可以等效成绕着某轴一次旋转而成,其中的某轴就是公式中的u=(u1,u2,u3),旋转角度就是公式中θ。

四元数通常写为:

q=q0+q1+q2+q3

那么用于姿态表示时:

使用四元数进行载体姿态更新方程:

其中,t为初始时间,δ为采样间隔。

四元数的更新可通过上式完成。因此只要知道初始四元数(载体的初始姿态)和四元数的导数就可以完成任意时刻四元数的解算,从而得到运动信息。由于MPU6050自带的DMP库可以直接输出四元数,故可以大大减轻STM32的运算负担,将芯片采集到的信息代入方程计算出结果即可对人体的运动状态进行估计。

3  硬件电路与软件设计

3.1  硬件电路设计

系统核心控制器采用了STM32F103单片机,该单片机的主频速度可达72 MHz,用其来完成温度信息、运动信息、心率信息的计算可大大提高系统的灵敏度。根据实际需求使用ADS1292模拟前端芯片设计了心电检测模块电路,系统以温度传感器LMT70为基础,加入模数转换芯片ADS1115设计了温度检测模块,无线传输使用了基于CC2652RB的蓝牙模块,其波特率最高可达115 200比特每秒,可保证心率信号的实时传输,确保系统在高速运动时的稳定运行。系统使用了可以进行5 V转3.3 V降压的芯片AMS1117对整个电路进行供电,在搭建完成基本电路加入了充电过冲保护模块和开机锁等功能。

3.2  系统软件设计

系统整体软件流程如图2所示,程序开始后单片机会启动ADS1292、ADS1115、MPU6050读写函数,实时获取心电信号、温度数据、加速度数据并使用卡尔曼滤波算法对采集值进行滤波处理,最终得到稳定值后计算实际值。

以MPU6050的运动数据滤波为例,部分简易卡尔曼及一阶互补核心滤波算法为:

函数功能:简易卡尔曼滤波

入口参数:加速度、角速度

返回值:无

voidKalman_Filter(float Accel,float Gyro)

{angle+=(Gyro - Q_bias) * dt; //先验估计

Pdot[0]=Q_angle - PP[0][1] - PP[1][0]; // Pk-先验估计误差协方差的微分

Pdot[1]=-PP[1][1];

Pdot[2]=-PP[1][1];

Pdot[3]=Q_gyro;

PP[0][0] += Pdot[0] * dt; // Pk-先验估计误差协方差微分的积分

PP[0][1] += Pdot[1] * dt; // =先验估计误差协方差

PP[1][0] += Pdot[2] * dt;

PP[1][1] += Pdot[3] * dt;

Angle_err = Accel - angle; //zk-先验估计

PCt_0 = C_0 * PP[0][0];

PCt_1 = C_0 * PP[1][0];

E = R_angle + C_0 * PCt_0;

K_0 = PCt_0 / E;

K_1 = PCt_1 / E;

t_0 = PCt_0;

t_1 = C_0 * PP[0][1];

PP[0][0] -= K_0 * t_0; //后验估计误差协方差

PP[0][1] -= K_0 * t_1;

PP[1][0] -= K_1 * t_0;

PP[1][1] -= K_1 * t_1;

Angle += K_0 * Angle_err; //后验估计

Q_bias += K_1 * Angle_err; //后验估计

angle_dot = Gyro - Q_bias; //输出值(后验估计)的微分=角速度

}

函数功能:一阶互补滤波

入口参数:加速度、角速度

返回值:无

voidYijielvbo(float angle_m, float gyro_m)

{

angle = K1 * angle_m+ (1-K1) * (angle + gyro_m * 0.005);

}

4  实验测试与分析

最終该系统整体电路包括硬件与服务器(手机),如图3所示,图中的设备正在测量心率。除此之外,运动信息的采集测试选用了华为手机自带软件进行对比测试,温度信息采集测试选用体温枪进行对比测试。温度和步数由下图系统自主设计的APP进行显示。

该系统把心电、心率、温度、步数、距离分成四个部分,然后通过市面上的专业测量仪器对测试者进行测试,之后再使用作品进行测试,并得出测量结果。心电图使用系统的作品进行了测试微调得出的结果,如图4所示,与由德州市中医院实际测得的专业心电图,如图5所示,进行对比。

其他实验因试验次数过多,系统将每十次测试的结果计算平均值并加以记录,测试结果如表3所示。

5  结  论

该系统对基于STM32的无线运动传感技术进行了研究,给出了一种基于高速单片机与高精度心率、体温传感器相结合的无线测量系统设计方案,可检测人体的心率、体温、运动状态、卡路里消耗等信息并通过手机APP实时显示各项指标,同时设计了语音播报模块来进行有效提醒,并在软件程序中采用卡尔曼滤波算法来提高检测数据的精确性,极大地缩短检测和系统处理时间。实验测试表明,本系统传输速率快、准确性高、功耗低、成本低,而且模块化设计,便于功能扩展,能够满足医疗、体育训练等项目中快速准确地对身体指标实时监测的需求,为人体指标的无线测量与传输技术提供了相关设计新思路,具有一定的实用价值。

参考文献:

[1] 苏波,李艳秋,于红云,等.从环境中获取能量的无线传感器节点 [J].传感技术学报,2008(9):1586-1589.

[2] 阎石.数字电子技术基础:第6版 [M].北京:高等教育出版社,2018.

[3] 谢文和.传感器及其应用 [M].北京:高等教育出版社,2006.

[4] 苏波,李艳秋,于红云,等.从环境中获取能量的无线传感器节点 [J].传感技术学报,2008(9):1586-1589.

[5] 王卫东.模拟电子技术基础:第2版 [M].北京:电子工业出版社,2010.

[6] 杨振江.新型集成电路使用指南与典型应用 [M].西安:西安电子科技大学出版社,1998.

[7] 邱关源,罗先觉.电路 [M].北京:高等教育出版社,2006.

[8] 童诗白,华成英.模拟电子技术基础:第3版 [M].北京:高等教育出版社,2000.

[9] 张伟,吴红杰,徐海鹰.电路设计与制版 Protel DXP高级应用 [M].北京:人民邮电出版社.

[10] 黄志伟.全国大学生电子设计竞赛电路设计 [M].北京:北京航空航天大学出版社,2006.

作者简介:高天学(1991—),男,汉族,山东济南人,讲师,硕士研究生,研究方向:电子与通信技术、智能控制。

猜你喜欢
无线传输
摩擦焊机数据检测系统设计与研制
基于ZigBee的人体健康数据采集系统的设计
低功耗蓝牙传输远程脉搏血氧饱和度监测系统设计
基于无线传输的LED灯远程控制系统设计
无线传输LED十字屏集群控制系统
公路路面现场检测数据无线传输系统的设计
基于LABVIEW的温室管理系统的研究与设计
可移动自动红外热成像测温无线传输初探
数据信息于无线传输之下的采集和控制