APP下载

基于STM32单片机的健康手环

2021-07-01丛一凡王成龙宋新瑞

物联网技术 2021年6期
关键词:步数心电蓝牙

丛一凡,王成龙,胡 旭,宋新瑞,黄 超

(大连理工大学城市学院,辽宁 大连 116600)

0 引 言

随着国民生活水平的不断提高与人口老龄化程度的逐渐加重,越来越多的人关注自身运动机能的健康状况。而运动机能的下降是危害人们日常生活的主要因素,例如:缺乏运动量导致的肥胖问题、老年人的心率问题、运动状态监测和热量消耗问题、心率和运动量的测量问题、远程服务器数据显示问题等。为了更好地解决上述问题,本文设计一款基于蓝牙无线传输的智能健康手环,系统以STM32F103RC单片机为主控器芯片,配有心电测量模块(ADS1292)、温度传感器模块(LMT70)以及步数测量模块(MPU6050),能够稳定采集和记录使用者的心电信息、体表温度和运动状况,并通过蓝牙模块将测量数据实时传送到手机APP以便观察,起到了通过数据指导健康生活的作用。

1 系统方案

本文设计以STM32F103RC芯片为核心,基于ADS1292芯片的心电检测模块用于采集并记录使用者的心电信号,实现动态心电图实时显示;基于LMT70温度传感器模块测量并记录使用者体表温度;基于陀螺仪传感器模块MPU6050检测使用者的运动信息,记录步数与活动距离等。通过蓝牙模块将上述传感器采集到的数据无线上传到手机APP端实时显示,方便用户随时随地查看并了解自己的健康状况。

本文总体设计方案图如图1所示。

图1 总体设计方案图

1.1 主控芯片

本文设计的系统采用STM32F103RC为主控芯片,该芯片由意法半导体(ST)公司出品,其内核是以Cortex-M3为核心的32 bit系列的单片机。相比其他类型的单片机,STM32F103RC的内部资源(如寄存器和外设功能)更加丰富,运行速率更快。除此之外,STM32单片机具有高性能、外设接口及内存资源丰富、低成本、低功耗等特点,得到广泛的应用。

1.2 心电测量模块

ADS1292R是TI公司早在2012年就出产的一款医用级ADC芯片,具有32位引脚,其引脚电路如图2所示。它主要应用在医疗仪器(心电图ECG),可以监护患者以及护理和健身监视器。该模块具有2个低噪声可编程增益放大器(PGA)和2个高分辨率模数转换器(ADC),集成了心电采集所需要的部件,方便设备小型化。它的功耗极低,使得可以作为长时间监控成为可能,而且输入参考噪声低,共模抑制比高,足以进行心电采集。

图2 ADS1292R引脚图

1.3 温度传感器模块

LMT70是一款带有输出使能引脚的超小型、高精度、低功耗互补金属氧化物半导体(CMOS)模拟温度传感器,几乎适用于所有高精度、低功耗的经济高效型温度感测应用,例如:物联网(IoT)传感器节点、医疗温度计、高精度仪器仪表和电池供电设备。该温度传感器模块也是RTD和高精度NTC/PTC热敏电阻的理想替代产品,多个LMT70可利用输出使能引脚来共用一个模数转换器(ADC)通道,从而简化ADC校准过程并降低精密温度感测系统的总成本。LMT70还具有一个线性低阻抗输出,支持与现成的微控制器(MCU)/ADC无缝连接。

LMT70具有较宽的温度测量范围,温度与输出电压具有很好的线性关系,测量精度高。LMT70温度-输出电压关系如图3所示。

图3 LMT70温度-输出电压关系

1.4 步数测量模块

MPU6050是一个整合性的6轴运动传感器,它集成了16位的三轴加速度传感器和16位三轴陀螺仪传感器,可以分别监测到模块的加速度和角速度。通过数据融合算法可以很好地解决组合陀螺仪与加速器时间轴之差的问题,它的量程范围较大,对角速度的感测范围较为宽泛,数字运动处理引擎可减少复杂的融合演算数据、感测器同步化、姿势感应等的负荷。通过确定欧拉角的基准轴,定义抬手角度为一步。手握陀螺仪摆臂行走,经实验确定迈出一步手臂摆出的角度范围并确定阈值,当摆动角度小于设定值并且降下的角度大于阈值,步数累加,距离等于0.55步数。这时与上次所存储的加速度方向比较,若相同则舍弃;若相反则通过计步逻辑计步(此时刚过峰值),对峰值累加可得到运动步伐。由于人体正常抖动、低幅度、手抖或反复摇晃等原因,会对准确计步造成干扰。最后要通过去干扰,即给检测加阈值和步频判断来过滤解决。

1.5 蓝牙模块

将HC-05蓝牙串口通信模块连接到微控制器的串行端口,允许微控制器通过蓝牙连接与其他设备通信。模块本身可以在主模式和从模式下运行,并且可以用于各种应用,例如:智能家居应用、远程控制、数据记录应用、机器人、监控系统等。当蓝牙设备与蓝牙设备配对连接成功后,可以忽略蓝牙内部的通信协议,直接将蓝牙当作串口用。当建立连接之后,2个设备共同使用一个通道也就是同一个串口,一个设备发送数据到通道中,另外一个设备便可以接收通道中的数据。

蓝牙串口通信模块具有两种工作模式:命令响应工作模式和自动连接工作模式,在自动连接工作模式下模块又可分为主(Master)、从(Slave)和回环(Loopback)三种工作角色。当模块处于自动连接工作模式时,将自动根据事先设定的方式连接数据传输;当模块处于命令响应工作模式时能执行下述所有AT命令,用户可向模块发送各种AT指令,为模块设定控制参数或发布控制命令。通过控制模块外部引脚(PIO11)输入电平,可以实现模块工作状态的动态转换。

2 软件设计方案

2.1 主程序流程

本文总体设计程序流程如图4所示。系统首先开始并初始化,采集信号(温度数据、心电数据、步数与距离数据等),并判断是否检测到采集的数据,再通过数值计算及A/D转换将数据通过蓝牙无线发送至服务器端并显示。

图4 主程序流程

2.2 核心算法流程

2.2.1 心率检测子程序

ADS1292启动后,ADC初始化并开始采集信息,将检测到的值经过计算并比较后,通过蓝牙发送并显示数值。ADS1292心电检测流程如图5所示。

图5 ADS1292心电检测流程

2.2.2 温度检测子程序

LMT70启动并初始化后,进行采样并判断是否接触物体,再将读取的温度值进行模数转化,最后通过蓝牙发送显示端显示。LMT70温度检测流程如图6所示。

图6 LMT70温度检测流程

2.2.3 运动检测子程序

MPU6050启动并初始化后,设定所需传感器的范围及系统时钟,检测人物是否运动,再通过计算获得所需数值,最后通过蓝牙发送至显示端显示。MPU6050陀螺仪运动检测流程如图7所示。

图7 MPU6050陀螺仪运动检测流程

3 结 语

本文针对缺乏运动量导致的肥胖问题、老年人的心率问题、运动状态监测和热量消耗问题、心率和运动量的测量问题、远程服务器数据显示问题等,设计一款基于蓝牙无线传输的智能健康手环,能够稳定采集和记录使用者的心电信息、体表温度和运动状况,并通过蓝牙模块将测量数据实时传送到手机APP以便观察,起到了通过数据指导健康生活的作用。

猜你喜欢

步数心电蓝牙
心电向量图诊断高血压病左心室异常的临床应用
楚国的探索之旅
基于非接触式电极的心电监测系统
穿戴式心电:发展历程、核心技术与未来挑战
更正启事
微信运动步数识人指南
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
国人运动偏爱健走
紧急:蓝牙指尖陀螺自燃!安全隐患频出