为监测运动中运动者的心率、血氧饱和度以及血压异常情况,确保运动者在运动中的安全,本文设计一款生理参数监测手环。通过手环设置心率、血氧饱和度以及血压的安全阈值,获取被监测人员在运动过程中心率、血氧饱和度以及血压的数据,如检测到生理参数数据在安全阈值之外的情况,手环给出声光报警以及震动提示,警示被监测人员及时作出缓解调整,同时将所采集到的所有数据信息通过无线传输汇总至上位机,在远程监测系统中接收数据信息进行信息的记录与分析,监管人员进行数据分类及健康评估,给出健康状态评估结论。当出现非健康状态时,发出警示提示或救援信息和警报等。
本文引用地址:1 总体设计方案
下位机硬件设计以 作为主控器件,连接无线通信模块发出端、生理参数检测模块、电源模块、显示模块、蜂鸣器。其中生理参数检测模块采集人体的三维生理参数,通过串口传输给,并将监测到的多项生理参数信号转化为数字信号并打包,通过无线传输模块发出端传输至电脑端进行记录处理;显示模块进行显示;当检测的数据超出阈值范围,LED 与蜂鸣器进行声光报警。上位机监控端配置好相应的波特率后,能够读取到无线通信模块接收端的数据包数据,再将数据导入软件进行健康状态评估及显示。
2 系统硬件设计
2.1 最小系统模块电路设计
主控器件是系统中最为关键的模块,需要较小的体积、较低的功耗和较强的性能,STM32 系列单片机是为要求高性能、低成本、低功耗的嵌入式应用专门设计的嵌入式控制器。综合考虑本次设计生理参数监测与健康状态评估系统选用STM32F103RCT6 处理器,其主要功能是将传感器测得的数据进行处理、分析以及警报,并将多项生理参数数据打包通过串口无线透传通信发送给上位机。
2.2 生理参数检测模块的设计
JFH111 生理学参数测试模块是一种新型的多谱生理测量模块,采用前端传感器技术,可以使模块的灵敏度、信噪比大大提高,同时具有体积小、功耗低的优点。JFH111的生理指标检测装置是根据 PPG 的光电体积脉搏波描记法和非贯穿式血压法的模糊存储法为基本原理,能够精确地记录脉搏波形、心率、血氧饱和度、血压等信息。本系统为一种能精确测量脉搏、心率、血氧值及微循环的多光谱生理数据采集模块。该系统仅需要与该模块进行串口通讯,并能直接获取测试数据。同时,本系统具有体积小、功率消耗低等特点,提高了手环的使用寿命。STM32 主控制器采用串口与模块通讯,并能直接从数据包中获得测量结果,一定程度上降低了人体运动状态下多项生理参数异常监测报警系统的复杂程度。JFH111 生理参数检测模块还配有上位机监测软件。
2.3 无线通信模块电路设计
无线通讯模块采用了HC-12 型无线433 型,采用TTL 级与STM32 直接进行数据交互,采用无线电波传输至 PC。MCU或者 PC端通过 TXD接口传输串口数据,RXD 接口接收到串口数据,然后将数据传输给无线通讯模块,由 TXD 接口恢复到MCU 或者PC 端的串口。HC-12 模块是在半双工通讯中替代实体连接的。各模组之间仅能在半双工模式下工作,无法同时接收和接收资料,但也可以在特定条件下进行逆向操作。
2.4 显示模块电路设计
该系统使用了0.96 英寸的7 线OLED 显示屏,并通过SPI 通讯协议进行通讯。SPI 是串行外部设备的简称,它是一种高速、全双工、同步的通讯总线,它的插脚仅有4 条,既节省了插头,又节省了PCB 的空间和便利,因此,许多芯片都采用了SPI。OLED 常用的通信有IIC 通信,但由于本系统需要读取的数据较多而IIC 通信方式采用2 条数据线,通信数据较慢,SPI 通信方式采用四条数据线,通信数据较快。在本系统中采用的是模拟SPI,即使用GPIO 端口模拟SPI 总线与SSD1306 总线进行通讯。
2.5 其他模块电路设计
2.5.1 电源模块电路设计
正确可靠的电源模块关系到整个系统的性能,本系统采用的电源管理模块使用1 S 锂电池作为系统电池,该电池标准电压为3.7 V,经过电源管理模块升压后输出5 V 为系统供电。在模块内部采用了电容为电源信号进行滤波,保证电源供电质量,同时在电路中设计了自恢复保险丝电路以及齐纳二极管电路保障电源后级芯片电路的安全。
2.5.2 蜂鸣器电路设计
STM32F103RCT6 主控的I/O 口最大可以输出的25 mA 电流,而蜂鸣器需要30 mA 的电流才能够进行发声。因此运用NPN 三极管来升高电流进而驱动蜂鸣器,为了防止蜂鸣器误发声,在三极管的基极与发射极之间用1 个10 k 的电阻进行连接,同时发射极接地。当与STM32 连接的I/O 口输出高电平的时候,蜂鸣器将发出声音表示报警,当输出低电平的时候,蜂鸣器停止鸣响。
3 系统软件设计
3.1 总体软件设计方案
生理参数监测手环主程序流程图如下图所示。启动后系统上电并进行初始化,初始化函数主要包括对系统时钟配置和延时函数的初始化、OLED、蜂鸣器、LED、无线通信模块和检测模块的串口、定时器以及中断优先级的初始化。初始化完成后,先进入传感器掉线检测子程序判断JFH111 生理参数检测模块是否检测到人体生理参数,如果长时间未检测到生理参数检测模块有数据传给STM32,则表示为掉线,有声光警报提示,如果生理参数检测模块,JFH111 检测模块将检测的数据反馈给STM32 处理,由STM32 处理数据后在OLED 上进行显示,如若检测到的人体运动状态下某一项生理参数数据超出提前设定好的阈值范围则进行声光报警,并将异常数据和被监测者信息无线传输至上位机进行显示。
3.2 生理参数检测子程序
生理参数检测过程可分为两部分,首先判断传感器是否能够正常工作,当检测到传感器能够正常进行数据检测时,再对其检测到的数据进行解析读取。
本系统所采用的JFH111 检测模块通过串口将采集到的生理指标信息传输给STM32,由于检测所需要一定的紧密性,需要在检测前判断传感器与STM32 单片机是否正常连接,未连接时系统通过LED 及时报警。
由于血压数据更新较慢,仅利用心率和血氧饱和度数据是否采集进行传感器掉线检测。设置传感器在线检测标志位,1 为在线,0 为掉线。系统开启后,将皮肤与传感器接触,开始检测心率和血氧饱和度,当检测到心率和血氧饱和度的数据有一方为0,就开始扫描计数,当计数超过50 时,判定传感器掉线,进行声光报警,否则判断为传感器在线,进入数据解析子程序。JFH111 生理参数检测子程序流程如图3 所示。
3.3 警报子程序
警报功能体现在检测传感器是否掉线以及阈值超值报警两个方面。系统开始工作后,LED、蜂鸣器均进行初始化,首先判断JFH111 检测模块是否连接成功,如果JFH111 检测模块连接成功,则允许继续进行数据检测,若JFH111 检测模块掉线LED 变亮,呈黄色灯光并慢闪的形式,同时蜂鸣器断续发声。在检测生理参数的过程中,若参数在设定的阈值内,则表示健康状态,LED 亮绿色并慢闪,蜂鸣器不发声,若检测到的参数超出阈值,表示非健康状态,LED 亮黄色并快闪,蜂鸣器长鸣。
4 系统测试
本系统的数据检测也较为稳定、准确,能够在5 s左右检测并显示心率、血氧饱和度以及血压的数据,对比1 min 内静态状态下以及运动状态下的检测数据如表1 和表2 所示。
根据上述表格可以得出本系统检测到的数据满足静态心率在60~100 次/min,运动时的心率在100~150次/min; 血氧饱和度检测数据在95% 以上; 高压90~140 mmHg,低压在60~90 mmHg。因此本系统检测到的数据具有准确性和稳定性。
5 结束语
本文对群体运动生理参数监测与健康状态评估系统的开发与设计和实现进行了相关的研究和分析。进行了群体运动生理参数监测与健康状态评估系统的总体方案设计。将系统硬件部分分解成多个硬件模块组合,有STM32F103RCT6 最小系统、电源模块、无线通信模块、生理参数检测模块、显示模块和报警模块。完成硬件搭建后,进行系统软件程序的编写说明,完成了JFH111检测模块掉线检测子程序、阈值设置子程序、警报子程序以及无线通信子程序的流程设计。
参考文献:
[1]朱珍民,贺玉英,郝梓杰,等.连续测量血氧饱和度的视觉方法[J].集成 技术,2017,6(6):1-14.
[2] 尹继武,付奎.基于STM32 的生理参数无线监测系统设计[J].陕西理工大学学报(自然科学版),2019,35(5):16-20.
[3] 刘光达,郭维,朱平,等.基于容积波分析的血氧饱和度测量系统[J].激光与红外,2009,39(2):169-172.
[4] 王晓华.“运动心率”过高会伤身[J].家庭百事通,2021(3):20.
[5] 杨乔木,李立伟,杨玉新,等.基于STM32的电池管理系统主控单元设计[J].电子设计工程,2021,29(1):177-186.
[6] 鲍勇,赵培军,金宗强,等.阳光体育运动学生心率负荷实时监测系统的设计[J].山东农业大学学报(自然科学版),2014,45(2):306-309.
[7] 王彪,娄学辉.基于单片机的电阻电容测量仪[J].电子世界,2014(7):31-32.
(本文来源于《电子产品世界》杂志2023年1月期)