APP下载

基于蓝牙技术的无线运动传感系统设计

2023-07-10马卫民

电脑知识与技术 2023年14期
关键词:单片机

马卫民

关键词:ADS1292;温度传感器LMT70;MPU6050 加速度传感器模块;STM32 单片机;蓝牙模块

中图分类号: TP274 文献标识码: A

文章编号:1009-3044(2023)14-0066-03

随着当今社会的不断发展,人民生活水平的日益提高,人口老龄化问题愈发突出,人们对健康的需求越来越多,更多的人群参加各种运动以达到锻炼身体、预防疾病的目的,但是运动也要量力而行,适当的运动会给我们带来方方面面的好处,过度运动则会损害健康,并且还会让我们老得更快。因此通过运动检测提示运动者合理地控制运动量才能达到运动健身的目的。目前市面上已有的运动健康监测设备所能采集的人体运动健康数据不够完善,很多实际的运动健康监测功能仍有待进一步改进、提高。因此设计一种基于蓝牙技术的无线运动传感系统非常有必要[1]。

无线传感器网络是由大量微型传感器节点通过无线自组织方式构成的一种新型信息获取网络。它是传感器、微电子和无线通信三大技术的综合,可以实时地采集和处理传感器网络范围内的所有对象的信息,并通过无线通信发送给用户。每个传感节点都具有一定计算处理能力、通信能力,同时功耗小,成本低。由相互协作的大量节点构成高度统一的网络结构,可以提高数据采集的准确度以及整个系统运行的可靠性,在人力不可到达的一些特殊区域通过该网络可以进行数据的采集、传输,其具有其他网络所不具备的特性,广泛用于国防、环境监测、智能家居、智慧农业等各种领域[2]。

设计采用无线传感技术,通过ADS1292、LMT70、MPU6050等芯片测量使用者心电信号,体表温度,运动步数,运动路程信息,利用蓝牙无线通信方式把传感器芯片实测的数据信息发送到服务器(手机)端,实现移动端数据的实时显示,使用者可以很好地观测自己的身体状况和运动情况。系统采集的人体运动健康数据较为完善,数据检测、处理精度能达到设计要求,蓝牙通信的有效距离、稳定性、系统抗干扰性以及设备的可佩戴性能有待于进一步地提高,同时系统的最小化也是后期需要改进的。

1 方案设计

1.1 设计思路

系统核心为STM32单片机,通过ADS1292芯片、LMT70温度传感器、MPU6050加速度计传感器将使用者心电信号,体表温度信号,运动步数信号进行实时采样,再经过调节电路、A/D模块转化后将数据送给STM32单片机处理,处理后的数据由TFT屏幕显示出来,再通过蓝牙模块将处理后的数据上传给后端服务器,并在移动服务端上显示测试者的体表温度、动态心电图和各种运动信息[3]。

图1为本设计无线运动传感系统的原理框图。

1.2 总体方案

设计是利用ADS1292自身的D/A转换得出心电图,LMT70传感器输出信号通过STM32内部A/D分析得出使用者体表温度,使用MPU6050速度传感器测得使用者运动步数,从而根据步幅计算出运动路程,STM32将采集到信号进行处理整合输出到TFT显示屏上进行显示。再通过蓝牙通信模块将处理后的数据上传给后端服务器,并在移动服务器端(手机)实时显示使用者的动态心电图以及体表温度和各种运动信息。

1.3 电路设计

1.3.1 测量心电信号电路设计方案

将ADS1292采集数据导入Excel统计表格,得到一个波形图。从波形中取相邻2个极限值分别作为波峰、波谷,同时设置一个标志位,再设置一个定时器和一个心率计数器,数据采集时,当取到低于波谷界限值的数时标志自动位置1,当下一个取到高于波峰界限值时,标志位自动清零,定时器定时结束时由心率计数器计数次数可求得心率。

ADS1292心电传感器是TI公司2012年出产的一款具有ADC 的芯片,主要应用在医疗仪器(心电图ECG)。ADS1292内部由两个可编程、低噪声增益的放大器(PGA)和两个高分辨率的模—数转换器(ADC)组成,具有串行口外接(SPI)的兼容串口,集成了心电采集所需要的部件。本设计采用ADS1292芯片测量使用者的心电信号。

1.3.2 测量运动信息电路设计方案

方案采用MPU6050加速度传感器测量使用者的运动信息。

MPU6050是一种目前主流用于运动测量的传感器芯片。它内部集成了3轴的陀螺仪微电子机械系统和3轴速度計微电子机械系统,同时还包含一个数字处理器DMP[4]。测量角度选用陀螺仪传感器,测量加速度使用加速度传感器。MPU6050内部用了三个16 位的模式转换器ADC,将测量的角度以及加速度模拟信号转换为可输出的数字信号,通过DMP处理分析可以精确跟踪快速和慢速的运动,用以测量相关运动信息,同时减少了元件封装所占用的空间。

1.3.3 测量体表温度电路设计方案

本设计采用LMT70 测量运动者的体表温度。LMT70是一款高精度、超小型、低功耗的模拟温度传感器,可用于大多数高精度,低功耗的温度感测应用。其具有良好的温度匹配性能,两个相同制造工艺生产的LMT70的温度误差最多为0.1°C。因此LMT70是一个理想解决体表温度测量的元件。

LMT70输出的模拟信号经ADS1118芯片转换为数字信号送入后方的32位微处理器,STM32处理后数据送给TFT屏进行温度显示。ADS1118一款精密的模拟-数字转换器(ADC),它可以进行温度采集,精度高,数值准确。STM32系列专为要求高性能、低成本、低功耗的嵌入式应用设计的ARM。

1.3.4 无线通信模块选型

方案一:使用ESP8266[5]模块ESP8266内部集成MCU能实现单片机之间串口通信,是一款串口Wi-Fi 模块;模块简单易学、体积小、便于嵌入式开发。

方案二:蓝牙模块蓝牙模块是一种集成了蓝牙功能的PCBA电路板,可以进行距离较短的无线通信。

出于蓝牙模块配置简单,功耗低,穿透力强,可以同时连接多种设备,不过多占用CPU内存等优点的考虑,本设计选用方案二。具体设计电路原理图如图2。

根据以上设计的电路原理图,组装制作实际电路,电路板实物图如图3。

1.4 软件流程图(见图4)

具体源程序略。

2 采样信号分析与处理

2.1 心电信号产生的机理及测量方法。

2.1.1 心电信号产生的基本原理

心脏的电活动使心脏收缩。心脏的舒张、收缩活动可以在体表产生心电信号,心电信号作为一种生物电能可以通过放置在体表的心电电极传导到心电设备上进行检测。

2.1.2 心率检测的分析方法

心率检测的分析是通过检测心电信号相邻两次峰值(如图5,R峰-R峰)间期点数来进行分析的。图5 中,R峰-R峰间期时间定义为每个心动间隔时间,根据R峰-R峰间期点数和采样频率就计算出R峰-R峰间期时间,STM32单片机先采样1分钟内的心电数据,然后分析、计算得到1分钟的心电波的平均峰值。在采样过程中,判断采集到的数据是否达到0.7倍的心电波的平均峰值,若达到则计数器1加自动1,直至数据小于设定的阈值,记录计数器数值然后清零。如果计数器1中的值(S1)在4~12之间,则认为检测到心电波。心电波峰阈值检测法原理如图6所示。

由于一个心电波期间内心电波波峰值存在且唯一,求心电波峰所处点采用的是求斜率的方法。根据在一个心电波期间内心电波峰值所在的点斜率最小,将一个点与其左右相邻两点分别求差,比较两次差的大小绝对值即可求得该点斜率大小。同理检测出下一个相邻的心电波峰,记录下计数器2 的值(S2),即可求出两个相邻心电波峰值间期点数。在采样频率(f)一定情况下,即可求得相邻两个心电波峰值间期时间,从而利用公式(1)计算得到心率(M)。

2.2 运动量测量方法

设定“加速度”参量作為判断分析跑步或步行特征的相关参数。个体的运动包括前向(“滚动”)、竖向(“偏航”)和侧向(“俯仰”)三个分量,MPU6050分别检测其x、y和z三个轴方向上的加速度大小。使用者携带计步器运动时,传感器至少在一个坐标轴方向上会产生加速度的周期性变化,因此通过三个轴方向上加速度的动态峰值测量和阈值计算可以检测、分析每步距离(L1)大小与跑步(或行走)的步数(X)。

动态阈值和动态精度[6]分析:测量系统每检测100次自动更新一次三轴加速度测量的最小值和最大值。“动态阈值”为平均值。可以通过此阈值来判断后面对使用者的多次采样是否迈出步伐。

距离参数(L):运动者的运动距离。

依据上面计算的步伐数值,我们利用公式(2)计算得到距离参数数值。

3 测试结果

3.1 心率测量(数据见表1)

在室内环境下,分别针对使用者在不同运动场景下的心电检测和心率测量,通过多次测量,力求达到准确性,心率测量相对误差能达到小于3%。

3.2 温度测量(数据见表2)

对使用者的体表温度进行实时采集,温度采样率为12次/分钟;体表温度测量误差绝对值可以达到不大于0.5℃。

3.3 步数测量(数据见表3)

对运动者的运动步数进行多次测量,测量相对误差可以达到不大于4%。

3.4 距离测量(数据见表4)

通过多次测试,运动距离检测相对误差可以达到不大于3%。

3.5 蓝牙模块的调试

无线运动传感系统各节点能通过蓝牙无线网络上传所监测的使用者的基本心电信号、体表温度信号和运动信息,并可以在移动服务器(手机)端实时显示动态使用者的心电图、体表温度和运动信息,实现传输时延短的优点。

测试结果分析:

1)本设计的无线运动传感系统能实时采集使用者的心电信号,实现动态心电图的显示;可以通过STM32单片机的分析计算得到使用者的心率,心率测量相对误差能达到小于5%。

2)可以对使用者的体表温度进行实时采集,温度采样率为12次/分钟;体表温度测量误差绝对值可以达到不大于0.5℃。

3)运动距离检测相对误差可以达到不大于3%;运动步数记录相对误差可以达到不大于4%。

4 结论

基于蓝牙技术的无线运动传感系统设计采用了先进的无线传感技术,由ADS1292、LMT70、MPU6050 等传感器芯片测量使用者身体状况和运动情况等相关数据,由STM32单片机处理后利用蓝牙无线通信方式把心电信息、温度信息和相关的运动信息发送到移动服务器(手机)端,实现在移动端数据的实时显示,使用者可以很好地观测自己的身体状况和运动情况。设计从方案选择、元器件的选定、程序的编写、电路板的仿真、制作到最终的调试,通过不断的调试、改进,系统基本达到了预期的设计效果,使用者身体状况和运动情况等相关数据采集结果均在设计允许误差的范围之内,基本实现了系统的设计要求。后期会针对系统各项数据的检测精度,蓝牙通信的有效距离、稳定性以及系统抗干扰性能做进一步的优化,同时系统的最小化也是后期需要改进的。

猜你喜欢

单片机
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
小议PLC与单片机之间的串行通信及应用
基于单片机的平衡控制系统设计
Microchip推出两个全新PIC单片机系列