基于Mesh网的矿工心电信号无线监测系统研究①

2021-11-10 02:56苗曙光汪徐德
关键词:心电电信号矿工

樊 强, 苗曙光, 邵 丹, 汪徐德

(淮北师范大学物理与电子信息学院,安徽 淮北 235000)

0 引 言

2020年12月2日-3日召开的“第五届煤炭科技创新高峰论坛”在展示煤炭开采的科技创新成果的同时,再一次强调了煤炭能源的重要性,矿工安全问题更加不能忽视,特别是矿难发生后,如何根据矿工的体征信号展开快速有效地营救,显得尤为重要。针对上述问题,设计了矿工心电信息无线监测系统。该系统通过ADS1292心电检测模块实时监测矿工的心电状态并以动态心电图的形式显示出来。动态心电图可对矿工心电信号连续记录,一方面该系统采集到的心电信息不仅可以通过佩戴仪器的OLED屏幕以动态心电图的形式显示出来,通过设置阈值,当矿工心率不正常时,可以对矿工生命健康状况进行预警;另外一方面,该系统可以通过无线自组网模块把心电信号发送到上位机,实现远距离监控,一旦发生矿难,通过远程无线端实时采集到的矿工心电信号,可以为灾后救援提供准确的信息参考。

1 整体概述

系统按照功能可以分为数据采集、数据处理、数据传输和数据显示四个部分,整体架构如图1所示,其中数据处理部分是该系统的核心内容。

图1 系统整体架构

(1)数据采集部分。采用ADS1292模块对心电信息进行采集,[1]ADS1292模块有两个可编程增益放大器以及两个24位模数转换器,可对两个通道进行同步采样且功耗低。ADS1292广泛应用于便携式医疗心电图和体育运动等相关器件中。系统将其应用于动态心电图和心率的检测。

(2)数据处理部分。将采集到的信息发送给单片机进行处理,单片机模块选择的是STM32F103ZET6芯片的单片机[2],相对于51系列单片机和STM32F103C8T6来说功能更加强大,资源更加丰富。该模块主要负责实现对传感器的控制以及对传感器采集到的数据进行分析处理,是硬件系统的核心。由于采集的信号有较多的噪声干扰,为了使心电图的显示和心率的计算更加准确,需要对采集到的信号进行FIR滤波、均值滤波、中值滤波和误差补偿等方法处理,最后通过FFT快速傅里叶变换计算出心率。数据处理流程如图2所示。

图2 数据处理流程

(3)数据传输部分。数据传输使用无线自组网模块,相比于蓝牙和Wi-Fi传输,其传输距离更远、自由度更高并且可以自组网实现多点对多点的数据传输。自组网无线通信模块主芯片型号为CC2530F256,可以自组多跳Mesh网络实现多点对多点的通信。系统通过自组网无线传输模块将处理后的数据发送到上位机进行显示。

(4)数据显示部分。为了便携式的设计,采用0.96寸的OLED屏作为显示屏。因为OLED是可以自发光的不需要背光,相对LCD屏来说,同样的内容OLED的显示效果要更好一些。以现在的技术,OLED的尺寸虽然很难做到大型化,但是它的分辨率却可以做到很高,因此显示得较为清晰。此外,还可以将数据通过无线自组网模块发送到上位机进行实时显示以实现远程监测的目的。

2 关键技术

2.1 滤波处理

IIR数字滤波器虽然具有递归结构、阶次相对较低、频率分量选择性好、对设计手段要求较低等优点,但同时它也具有噪声反馈大、运算误差大且不能用于FFT快速卷积等缺点。然而相比于IIR数字滤波器来说,FIR数字滤波器虽然阶次相对较高、频率分量选择性较差,但是其具有严格线性相位、噪声小且运算误差小,除此之外更为关键的是通过该滤波器的信号可采用FFT快速卷积算法[3],这有利于心率的计算。

FIR滤波器的输入输出关系用公式(1)表示:

(1)

式中:y(n)为输出,x(n)为输入,h(n)为单位脉冲响应。由公式可知,某一时刻的输出不仅与此时的输入有关,还与过去输入有关,因此准备一个心电信号寄存器x[N+1],N为滤波器的阶数,每次采集到心电信号时将其中的数据均后移一位,并将新的数据存放到x[0],设滤波器系数寄存器为h[N+1],则输出变成为式(2):

(2)

为了更好地反映心电信号的真实情况将P波和T波识别出来,又考虑到数字滤波器的过渡带和阻带衰减问题,选择使用Kaiser窗函数以此来获得更为窄的过渡带和更大的阻带衰减[4]。由于心电信号的干扰主要有高频噪声、人体的分布电容引起的50Hz的工频干扰、基线漂移(一般由人体呼吸或者电极移动等低频干扰引起的频率小于5Hz的干扰信号),因此选择使用带通滤波器且通带截止频率分别设为5Hz和40Hz。[5]

选择好数字滤波器的参数后用MATLAB软件设计一个128阶、采样频率为250Hz、通带截止频率分别为5Hz和40Hz的带通滤波器,[6]采用窗函数法,使用Kaiser窗,Beta设为10使得在计算量较小的同时能够获得更大的阻带衰减和更窄的过渡带。

采集到的心电模拟器原始心电信号如图3所示,滤波后的心电信号如图4所示。

图3 心电模拟器原始心电信号

图4 心电模拟器滤波后的心电信号

人体原始信号与滤波后的信号分别如图5、图6所示。

图5 人体原始信号

图6 人体滤波信号

2.2 心率计算

对通过滤波后的心电信号进行心率的计算,也是本系统最核心的内容[7]。由于心电信号的R波幅值最大,传统计算心率的方法是在时域中根据一分钟内R波出现的次数来表征心率,这种方法相对来说较为简单但不够及时,即必须等待1min才能测一次。由于心电信号随着心脏有节奏的收缩和舒张进行规律性的变化,而且滤波器选用的是FIR滤波器。因此可对其进行FFT快速傅里叶变换[8],将时域分析转为频域分析,即在频域寻找幅值最大的点,其所对应的频率即为心电信号的频率,此方法相对于从时域分析计算来说更能体现其实时性。

(3)

复数加法次数为式(4):

A=2Nlog4N

(4)

(5)

式中:f为心率;X为各谐波幅值下标;fs为采样频率;N为FFT运算的点数。

2.3 数据无线传输

该系统采用多跳Mesh网络技术[9],与传统的无线网络差别较大,在多节点通信应用中占有较大优势。传统的无线网络通信大多为点到点或者点到多点的拓扑结构,数据传输方式为终端节点与汇聚节点的单跳方式传输,距离较远的情况下需要单独设立具备路由功能的节点进行数据的转发。而多跳Mesh网络拓扑结构可以组成多点到多点的网络拓扑结构[10],各个节点必须连接同一个网络和信道才能够正常通信。各个节点可以通过范围内相邻的其他节点以无线多跳方式相连,无需路由节点,通电自主加入网络并且自动寻找传输路径。该系统采用这种通信方式,当某些矿工相距上位机较远无法直接通信的时候,可以通过范围内其他矿工进行数据转发,经过多次转发后传到上位机。3用户节点加1个汇聚节点的网络节点连接如图7所示。该网络最多可容纳190个节点,单次传输距离最远为500m且最多可转发15次。

图7 多跳Mesh网络节点连接

2.4 动态心电图显示

由于OLED的显存是按字节写入的,为了防止画点时出现错误,采用数据寄存的方法,先在单片机中建立一个寄存器,之后把数据先写入寄存器中,在修改好寄存器中的数据后再一次性写入到OLED的显存中。将前面计算的心率、心电信号从STM32单片机通过IIC通信方式发送给OLED并显示出来。其中心电图的显示具体实现方法为:将ADS1292采集到的心电数据存放到一个数组中并不断更新,由于OLED屏幕大小限制,需要对数据进行缩小,缩小倍数为显示区域的高度与心电波形的峰峰值的比值即式(6):

(6)

式中:a为缩减倍数;h为OLED屏显示区域的高度;Vmax为R波的最大幅值;Vmin为R波最小幅值。

此时其在OLED屏中的纵坐标为式(7):

Y=Am·a

(7)

式中:Y为纵坐标;Am为FFT后X点幅值;a为缩减倍数。

因为设置的OLED屏的原点在左上方,所以最后对(X,63-Y)点不断进行画点即可显示出实时心电波形,如图8所示。

图8 OLED屏心电图显示

采集到的心电数据按照上位机的数据收发格式发送到上位机进行动态心电图的显示,如图9所示。

图9 上位机心电图显示

3 实验验证

该系统经过多次实验,能够对心电信号进行较好的滤波,OLED屏和上位机能够显示测试人员的心电图,心率最大误差为4%,计算出的心率较为准确,整体来说能够实现所需要求。多次测试得到的一组数据如表1所示:

表1 测试数据记录表

4 结 语

设计实现了基于Mesh网的矿工心电信息监测系统。首先,与传统的心电检测方法相比该系统作为便携式佩戴设备能够更为方便地对矿工的心率和心电信号进行实时监测,矿工能够通过自身佩戴的设备更加及时并且较为准确地了解自身的身体状况,便于及时发现及时治疗。其次,采用的多跳自组Mesh网络拓扑结构能够满足多人数据同时上传的需要,传输距离更远、更加简化了多点通信架构,降低了功耗和成本。最后,检测到的数据可以通过自组Mesh网络无线传输的方式发送到上位机进行显示从而达到远程监测的目的。该系统架构较为简单、成本较为低廉、数据上传实时性高,对保障矿工的生命安全和灾后救援有生力量具有重要的作用。

猜你喜欢
心电电信号矿工
基于融合模糊聚类算法的异常心电多频段弱信号快速捕捉方法
基于新SEIRS 的矿工不安全行为传播分析
基于联合聚类分析的单通道腹部心电信号的胎心率提取
金牌挖矿工
心电向量图诊断高血压病左心室异常的临床应用
矿工
趋肤效应在交流电信号的影响的研究
基于Code Composer Studio3.3完成对心电信号的去噪
卡片式智能心电采集仪
基于脑电信号反馈控制的双轨道小车控制器设计