APP下载

提高老人医护安全的可穿戴心率测护仪设计

2022-03-30孙玉柱从兰美张安彩

计算机测量与控制 2022年2期
关键词:心电电信号心率

类 杰,孙玉柱, 从兰美, 张安彩

(临沂大学 自动化与电气工程学院,山东 临沂 276000)

0 引言

由于我国老人基数变大,导致我国已经提前进入老龄化阶段,“空巢老人”的数量一直处于居高不下的状态,多数老年人不能及时检测到自己的身体状况,在此之中,急性心梗又是老年人中常见的疾病之一,病人没有明显的发病特征,但是一旦发生意外,就有可能错过了最及时的抢救时间,从而受到严重伤害,甚至丧失了生命。现在已经被证实,急性心梗后心率确实会发生心率失常的情况[1-5]。在此基础上,我们依托心率变化情况对老人安全性进行研究。

本文设计一种老年人的实时监测系统,以易安卓4E和Keil5作为开发环境,结合心率心电采集模块、体表温度测量传感器实现数据的采集,利用ESP8266进行手机与单片机的通信,将单片机采集的数据通过无线传输到手机客户端APP中,并且实现数据的显示与储存功能,监护人可以查看历史数据为老人制定更好的看护方案,大大减轻了监护人的压力和节省了大量的看护时间。

1 系统结构及原理

考虑到心梗患者行动不方便、必须有家人陪护的需求。所以,研究心梗的预防或者发生意外时及时抢救避免损害是比治疗更具现实意义[6]。本文设计一种可以远程监测患有心梗疾病的老年人身体状况的一种装置[7],心梗患者通过穿戴装置,监护人查看APP以此达到实时查看的目的。以Arduino以及32位的STM32F103作为核心板,通过集成型心电、呼吸信号测量模块实现心率、心电的实时检测并且出现数据异常时,将报警信息发送到监护人应用端。

手机应用端APP模块实现数据的接受与发送,可穿戴装置与应用端APP之间通过ESP8266模块连接进行数据的传送,在应用端APP界面可以实时查看到心梗患者的心率、脉搏以及老人的体温等信息[8-11]。可穿戴装置的设计实现了实时检测老人的身体状况信息,进而减轻了监护人的压力。

根据设计功能要求,综合比较各种方案,最终确定系统的总体如图1所示。系统由心电信息采集模块、体温采集模块、单片机主控模块、无线传输模块、显示模块和服务器(手机)构成。心电信息采集模块、体温采集传感器各自采集使用者的心电、体温信息,把采集的电信号信息传送到单片机主控模块中进行数据处理,处理完成后单片机会通过无线传输模块,将信息发送到服务器中,同时信息也将在显示模块中供使用者查看。

图1 系统结构框图

系统整体是一个数据的采集、处理、传送和执行过程。数据的采集包括心电信息采集和体温信息采集,两个信息采集元件分别采用的是ADS1292模块和LMT70模块;而数据的传送包括了利用ESP8266无线传输模块将数据传送至服务器和将数据传送至OLED显示终端。ADS1292心电数据采集模块根据人体生物电流在不同部位产生的电微小电位,采用了3个电极进行捕捉,这3个电极两两组成一对进行测量,测量的微小电位差经过放大电路进行放大,传输到单片机进行处理,就可以得到心率和心电图。LMT70温度采集模块利用模数转换将人体表面的温度转换为一个微小的电压,再利用数据手册里的电气特性温度表所推算出的温度传递函数,将微小的电压转换为人体表面温度。ESP8266无线传输模块使用STA工作模式的TCP透传,将主控芯片中所要传输的数据传送给服务器。

2 系统硬件设计

2.1 设计的技术主要参数指标

1) 心率范围:安静状态下,成年人的正常心率为60~100次/分钟,理想心率为55~70次/分钟,心率的变化情况与心脏疾病密切存在着间接的联系。如果心率值超出160次/分钟,或者是低于40次/分钟,这种情况大多见于心脏病患者。

2) 体表温度范围:以腋窝为测量位置,人体正常的体温平均在36~37 ℃之间,如果温度超出37 ℃可认定为是发热,如果温度在37.3~38 ℃则认为是低烧,38.1~40 ℃则认为是高烧。

3) ESP8266-WIFI传输速率与刷新率范围:频率范围为2.412~2.484 GHz,保证数据在APP界面显示中的刷新速率至少为一秒2次的实时动态数据刷新。

2.2 心电、心率采集模块

本设计为可穿戴的装置,所以在设计时尽量保证装置的小巧化,本文选择利用ADS1292来测量老年人的心率和绘制出心电图。当心脏每次收缩,人体都会产生生物电流,并通过组织和体液传导至体表,由于传导所需的时间不同,所以身体的不同部位会产生不同的电位,从而形成了体表的电位差。ADS1292模块中每一个通道都具有灵活的输入多路复用器,此多路复用器可独立连接到内部形成信号,实现检测的功能,模块工作时的数据速率高达8 ksps。本设计中ADS1292模块心电测量方法是:身体体表微小的电位差通过3个电极进行捕捉,这3个电极两两组成一对进行测量。每个电极对的输出信号称为一组导联,并经过ADS1292模块电路中的放大器放大,然后经过单片机处理后形成心电图。根据心电图测出PP间隙或者RR间隙时间,60除以这个数值也可以得到心率信息。 ADS1292电路如图2 所示。

图2 ADS1292电路图

图2中,RESP_MODP,RESP_MODN可以输出调制频率,由于医疗产品在标准中存在漏电流的限制,所以用R44来限制电流输出,C50、C48、C51限制直流电流留到人体,避免对老人身体造成伤害。

设计心电、心率采集装置的原理框图如图3所示,模块具有两个低噪声可编程增益放大器(P1、P2)和和两个高分别率模数转换器(ADC1、ADC2),集成了心电采集所需要的部件,方便本设计的小巧化,另外此模块功耗极低,实现了可长时间监护的要求。

图3 ADS1292原理框图

ADS1292内置双通道信号采集和数模转换,通道一(1N1N和1N1P)为呼吸信号采集通道,通道二(1N2N和1N2P)为心电信号信号采集通道。图中部分电路1是呼吸检测的滤波电路;图中部分电路2是右腿驱动电路[12]。

2.3 体表温度测量模块

为了能有效地、全方位地监测老年人的身体情况,切实记录老年人的信息,本设计还加入了体表温度测量模块,为能够精确获取老年人的体表温度,本文选取了精度为±0.05 ℃的LMT70,其精度与温度之间的关系如图4所示。

图4 传感器精度与温度关系图

LMT70在20~42 ℃之间、芯片的供电电压为2.7 V时,测量的误差仅为±0.05 ℃。由于掌心温度在30~35 ℃之间,利用数据手册中的电气特性温度查询表,推算得出了在30~40 ℃之间的一阶温度传递函数。推算过程如下:

斜率k计算公式: 与Y轴的截距b计算公式:

(1)

b=T1-k·VTAO(T1)

(2)

可根据电气特性温度查询表所得,通过上述公式计算可得k为-0.192 ℃/mV,b为211.100 ℃。

最终30~40 ℃之间的温度传递函数为:

TM=k·VTAO+b

(3)

TM=-0.192 ℃/mV·VTAO+211.100 ℃

(4)

式中,VTAO是单片机采样得到的电压,VTAO的单位为mV,TM的单位为℃。

温度传感器通过STM32的P3.1口采集得到电压,利用公式(4)就可以得到接触者的温度,温度传感器具体的原理如图5所示。

图5 温度传感器原理图

LMT70主要由输出开关(T_ON)、放大器、温度传感元件(thermal diodes)组成。LMT70温度传感元件由BJT基极发射极连接而成的,其在连接到输出开关之前,中间连接着一个放大器,LMT70 信号采集如图6所示。

图6 LMT70信号采集框图

当单片机给输出开关(T_ON)一个开始信号,温度传感元件就会将人体温度转化为一个电信号,电信号经放大器放大,通过温度模拟输出端(TAO)输送到单片机。

本装置一共有放置1个LMT70,当使用时,仅仅将手靠近测量仪器,温度传感器经过AD转换将模拟量变为数字量,得到最后的电压值,利用公式得出老年人的温度测量值,不仅可以显示在OLED中供老年人观看,也可以将数据传输到监护人手机APP界面中[13]。监护人可以通过按键设置温度的阈值,当超出所设置的阈值时,单片机就会立刻通过客户端APP采取报警措施。

2.4 无线传输模块

ESP8266-WIFI 模块支持STA/AP/STA+AP 3种工作模式,本设计使用的是STA工作模式的TCP Client透传。其过程是:配置WIFI模块为STA工作模式,让WIFI 模块连接路由器或者手机、笔记本发出的WIFI,然后设置服务器与WIFI模块的IP地址一致,这时主控系统串口发送的数据就可以经过WIFI模块传输到服务器,这就实现了TCP透传。ESP8266-WIFI 模块原理如图7所示。

图7 ESP8266-WIFI 模块电路图

3 系统软件设计

3.1 程序设计

由于心梗患者需要细心地照看,需要时刻地去监测其身体状况,保证在突发紧急情况下,能在最短的时间下采取紧急救治措施。

首先,在测量部分,将极性贴片贴在使用者身体上,佩戴好体表温度测量模块,启动装置后,整个装置由12 V的移动电池转5V电源供电,单片机开始执行主函数的程序,各个模块进行初始化操作。温度传感器通过12位的AD转换,单片机根据测量得到的电压值与温度的公式便可以得到温度数据,ADS1292模块得出的心率值传送到单片机内部,并且保存数据,做到掉电不丢失数据,OLED显示屏显示出老人的心率、体表温度,并且保持数据信息实时动态刷新,数据通过WIFI模块建立TCP协议将数据传送到服务器中,将所得到的数据显示在手机APP界面上。本部分的实现方案如图8所示[14]。

图8 实现方案

其次,在逻辑部分,多功能的心率测护仪在单片机中将累加器和数据寄存器传送过来的数据进行简单的逻辑判断。

最后,在执行部分,当心率不齐或者心率突然剧烈变化时,可穿戴装置立即通过发送报警信息至监护人[15]。

使用STM32单片机主控模块作为软硬件系统的主控制中枢,它不但需要完成有线、无线通信,而且还需要利用其本身的运算能力对数据进行大数据分析[16]。

整个系统由单片机控制部分、检测部分、显示部分、传输部分4部分组成。经测试该系统能精确地保证可穿戴装置的各项要求,并且操作简单,显示稳定,检测速度快、稳定性高。

本设计的程序流程如图9所示。

图9 程序流程图

3.2 智能手机APP设计

智能APP是通过WIFI模块与可穿戴装置形成信息交流的,在搭建好系统后,采集到的心率、脉搏以及温度数据一次传送一串数据,通过分隔符在APP中将这些数据进行区分,得到各项数据的真实值,并建立两个历史数据包,从串口接收到的数据其长度值是转换为十六进制且从数组的第9位开始进行存储,直到在存储时遇见字符标识号截止。故开始先从原始数据的第九位开始去获取本次数据的长度,再从字符标识号之后开始取实际数据,将数据储存在数据包中,以此便于监护者查看历史数据[17]。

测试过程首先使用SKX-2000C心电模拟仪/心电信号发生,在心电模拟仪界面通过按键指令选择模式一下的模拟心率为76BPM,且将可穿戴心率测护仪上电启动投入工作。可穿戴心率测护仪装置整体外观如图10所示。

图10 设备工作图

数据采集端与安卓软件APP本地监测,并在终端服务器手机界面上显示,其区别于采集端蓝牙传输的数据,此方法为远端APP是从网络数据库查询采集端所检测的数据信息进行远程监测,实现了装置使用者的检测数据的远程传输和跨设备共享等功能[18]。智能APP将采集到数据不仅实时显示出来,而且将检测的数据绘制成曲线形式,供其他人员进行数据分析并根据心率数据曲线、心电图提出对使用者的身体状况的改善措施。

在智能APP端显示界面如图11所示。

图11 APP界面图

3.3 硬件抑制干扰措施

在装置运行时,可能会出现一些干扰源。电源带来的干扰,是干扰中最主要和最严重的干扰,对于这类干扰,设计时,可以用两个100 μH的电感和0.1 μF的电容组成电源滤波器,即可以抑制一些高频信号造成的干扰;其次,信号传输通道也造成I/O口信号异常,导致测量的数据不够准确,使其精度、灵敏度大大地降低,可以对设备的关键部件,比如测量放大器及A/D转换器通过硬件在线冗余设计来实现避免干扰的影响;最后,周边环境的电磁干扰、静电感应干扰等干扰都会对设备的检测存在较大的误差,可以完善设备的接地系统以此消除电磁波等带来的影响[19]。

4 测试方案与测试结果

4.1 测试方案

为验证可穿戴装置设计的稳定性与测量结果的准确性,本文先使用心电信号模拟器在不同心率下对心电采集模块进行测试,在确认本设计的测量结果准确无误后,再对人体进行测量;对于温度采集模块的测试,试验选择5人,分别用标准体温计与此模块进行掌心温度的测量,系统记录结果与人工记录结果进行对比分析。

4.2 测试结果完整性

4.2.1 心电采集模块的测试结果

心电信号模拟器设置心率与系统测得心率如表1所示。

表1 心率信号模拟器与设备检测心率对比表

4.2.2 温度采集模块的测试结果

标准体温计测量温度与体温采集模块掌心测量温度结果如表2所示。

表2 体温采集模块与设备检测温度对比表

4.3 测试结果分析

在上位机中,心电信号采集得到的心电图如图12所示。

图12 未加入滤波处理的心电图

由图12可见,心电图不清晰,经过分析后得出原因是:由于心电信号非常微小,所以心电信号极易受到来自外界、人体自身以及电路的干扰,并且工频(50 Hz)是心电信号的主要干扰,所以需要在系统中进行心电信号去噪处理。

现在常用的心电信号去噪方法是硬件降噪和软件滤波两种。硬件降噪主要是通过搭建相应的电路来实现滤波功能,但是硬件滤波电路不但搭建调试难度大,还增加了成本、体积和系统的功耗。所以本文采用的是软件滤波的处理方法,采用经典卡尔曼滤波理论对信号进行滤波处理[20-21]。卡尔曼滤波的算法流程如图13所示。

图13 卡尔曼滤波算法流程图

加入电信号去噪滤波算法后测得的心电图如图14所示。 图中横坐标为检测时间,纵坐标为电压,横坐标的每一小格为0.04 s,纵坐标的每一小格为0.1 mV。

图14 加入滤波处理的心电图

由图12、图14的结果对比可以看出,所设计的软件滤波算法取得了较好的滤波效果,大大提高了测量的精度。

5 实际应用测试

5.1 实验方案

为验证本设计在实际情况下的有效性,我们以某心率带测得的心率作为对照来验证本设计心率采集的准确性;利用体温计测量的温度验证本设计温度的准确性。

选取了6名老人志愿者,每隔三分钟分别用本设计和心率带、体温计测量老人的心率、体温,共测10组,取每组的平均值。

5.2 实验结果及分析

6名志愿者的测量数据如表3所示,同时,我们绘制出设计量心率、温度偏差曲线关系如图15所示。

表3 设计参数实验偏差表

图15 设计参数实验偏差图

根据图中数据我们可以明显地看出本设计与对照值的误差很小,心率偏差保持在区间[-0.2,0.2]之内,由于误差百分比为(精确值-估计值)/精确值×100%,那么对数据进行误差计算得到心率误差Error(1)=-0.047 081,那么准确率达到0.952 919 021,体温偏差保持在区间[-0.13,0.14]区间之内,那么对数据进行误差计算得到体表温度Error(2)=-0.000 632 511,那么准确率达到0.999 367 489。

在此实验中,每人10组取平均值的情况下获取得到的数据量为60组数据,数据容量大,充分表明了本设计测量数据的准确性,确定了本文所提出并设计的设备与实际情况十分吻合,也证明了本设计在实际情况下的有效性。

6 结束语

本系统以STM32F103为控制核心,可准确地实现对使用者的信息采集,并有无线上网功能。系统启动后会实时采集使用者心电、体温等信息,经控制核心处理后发送到服务器中,服务器会不断更新使用者的各项信息,达到不间断检测功能。实验效果符合预期设计要求。

猜你喜欢

心电电信号心率
基于融合模糊聚类算法的异常心电多频段弱信号快速捕捉方法
基于单片机的心电信号采集系统设计
离心率
卡片式智能心电采集仪
神经元电生理模型的构建及分析
在最佳心率区锻炼
探索圆锥曲线离心率的求解
“声名大噪”的跑步神器?
机电工程中存在问题之我见
2016浙江省心电生理与起搏学术年会隆重举办