基于FPGA,的老年人健康安全监测系统设计

陈 平,吴国盛,2*,陈晓宇

(1.青岛大学电子信息学院,山东青岛 266071;
2.青岛若贝电子有限公司,山东青岛 266000;
3.北京工商大学计算机学院,北京 100048)

随着我国人口出生率的急剧下降,人口老龄化程度进一步加深,农村乡镇甚至是县城及部分城市都出现年轻人短缺、空巢老人激增的现象[1-2],老年人养老难便成为一个亟须解决的问题。目前大部分老年人处于居家养老状态[3],由于年纪较大的老年人往往存在行动不便以及记忆力下降的问题,经常出现独居老人因摔倒无人发现而离世、患有阿尔茨海默病的老人走丢的现象。近年来相关的健康监测系统研究主要集中于专业的心电信号监测[4-5],而针对老年人普遍需求设计的监测系统功能单一,不能满足基本需求。如董静涵[6]研究的基于单片机的人体健康监测系统只实现了心率与血氧信息的监测,功能过于单一;
朱洪浪等[7]研究的基于单片机的多功能健康检测系统在董静涵[6]研究的基础上增加了血压与体温的监测,虽然功能进一步丰富,但监测数据只能在设备上显示,不能远程传输;
能明凯等[8]研究的老年人健康检测系统在前人的基础上又增加了LoRa的无线数据传输功能,虽然实现了监测数据的传输但限于LoRa 技术的缺陷,数据只能传输15~20 km。故本文基于上述研究的不足,设计一种基于现场可编程逻辑门阵列(field programmable gate array,FPGA)的老年人健康安全监测系统。本系统的主要功能为通过老年人身上的健康监测、摔倒检测以及定位传感器将自身的健康数据等通过4G 网络上传至云端平台,使监护人员或医疗社区及时了解老年人的身体状态信息,做出相应的救助。本文设计的系统相比专业的心电监测系统更能满足老年人日常需求,且价格便宜。

本系统采用模块化设计方法,使用FPGA 实现对多个传感器数据的采集、分析、处理以及物联网的通信。本系统的总体框图如图1 所示,主要包括FPGA主控系统、心率血压血氧检测模块、GPS 定位模块、体温检测模块、跌倒检测模块以及4G 物联网模块。FPGA 主控系统负责所有外围模块的工作流程控制、数据采集获取以及数据信号处理,所有采集到的信息先在FPGA 主控系统中进行数据的滤波,之后统一封包传递给4G 物联网模块,通过物联网将信息上传至云端平台,在计算机显示相关信息,实现对佩戴人的健康状态监测。FPGA 主控系统通过设计状态机的方法实现,控制流程图如图2 所示。

图1 老年人健康安全监测系统总体框图

图2 FPGA 主控系统控制流程图

2.1 心率血压血氧检测模块

心率血压血氧检测模块选用惊帆科技的JFH141芯片。该芯片是一种多光谱的生理数据测量模块,一体化集成了红光、红外光、绿光三光源LED,可用于测量血氧饱和度,并通过光电容积描记(photoplehysmography,PPG)法检测血压、心率的变化。该模块使用通用异步收发器(universal-asynchronous receiver/transmitter,UART)协议将采集到的血压、血氧、心率数据直接输出。

如图3 所示,心率血压血氧检测模块主要包括5 个子模块,各部分具体的工作流程如下:上电后ctrl 控制模块通过uart_tx 数据发送模块将传感器控制命令发送至传感器,传感器收到开始指令开始采集数据,并将数据传回。uart_rx 数据接收模块获取回传数据并传递给decode 数据解析模块进行译码解析,滤除冗余数据得到原始心率、血压、血氧信息。为进一步提高数据准确性,将各类原始数据分别经mean_filter滤波处理模块进行均值滤波处理,滤波结束将数据传出供数据处理系统使用,并反馈给ctrl 控制模块完成信号,之后ctrl 控制模块发出采集结束指令,一次采集流程结束。

图3 心率血压血氧检测模块设计图

2.2 体温检测模块

体温检测模块采用LM75A 数字温度传感器,这是一款数字接口的温度传感器,通过集成电路总线(inter-integrated circuit,IIC)协议进行通信。该模块的测量范围为-55~125 ℃,精度达到0.125 ℃,可满足测量人体体温的需求。该模块测得的温度信息直接以数字信号形式输出,便于数字系统获取。FPGA 主控系统与该模块的数据通信通过设计状态机完成,状态转移图如图4 所示。状态机的状态转移过程模拟的是IIC 协议通信流程,通过此协议向该模块内部的寄存器写入读取数据的命令,即可获取内部储存的温度数据。

图4 IIC 温度读取状态转移图

2.3 GPS 定位模块

GPS 定位模块使用维特智能的WIT-6M-001 卫星定位模块,其在3.3 V 电压下连续运行的工作电流小于25 mA,定位精度最高可达2.5 m。该模块与控制系统采用UART 协议通信,输出NMEA-0183格式的定位数据,每帧数据都以“$”作为帧头标识符、以回车和换行符作为帧尾标识符。为得到所需的经纬度数据,控制系统需要检测每帧数据的帧头、帧尾标识获取一帧完整的原始数据,并根据帧内指示信息处理数据,剔除无用信息,将有效定位数据保存并输出。

2.4 跌倒检测模块

目前跌倒检测的实现方法主要有2 种:一种是基于图像识别的跌倒检测,通过摄像头获取人体图像信息,经过图像识别算法完成跌倒检测[9-10];
另一种则是通过佩戴各种角度或加速度传感器获取相关数据,使用姿态解算完成跌倒检测[11-13]。考虑到本系统的可穿戴属性,采用第二种方案,选用MPU6050 模块。该模块内部集成三轴陀螺仪和三轴加速度传感器,通过模数转换(analog-to-digital converter,ADC)模块将采集的模拟信号转化为数字信号并通过IIC协议接口输出,精度高且功耗低[14],满足本设计需求。该模块具体设计如图5 所示。

图5 跌倒检测模块设计图

该模块共包括5 个部分,其中,mpu_ctrl 控制模块负责控制其他各部分运行流程。iic_drive 协议驱动模块实现IIC 接口协议,通过scl 与sda 信号线和MPU6050 模块通信,完成加速度数据采集。angle_cal倾角计算模块与acc_sum 合加速度模块分别使用获取的三轴加速度数据完成角度和加速度的计算,计算结果供judge 判决模块进行跌倒检测判断使用。

人体跌倒是一个突发的情况,发生跌倒时,加速度会发生剧烈变化,先发生失重现象,加速度减小,摔到地面时会发生超重现象,加速度增大,同时伴随人的身体倾角发生变化。在进行跌倒检测时,为防止将老年人的正常活动误判为跌倒,首先应该检测加速度数值是否在短时间内产生剧烈变化,若检测到加速度剧烈变化则考虑可能出现跌倒的情况,接下来开始检测身体倾角,若身体倾角也超过设定阈值θ,则确认为跌倒。跌倒检测算法的设计分以下3 个步骤:

第一步,定义表示加速度变化程度的三轴合加速度变量acc_sum:

式中,ax、ay、az分别为X 轴、Y 轴、Z 轴的加速度。

为防止传感器数据检测误差引起的误判,在计算合加速度acc_sum 之前先对各轴的加速度分别多次采集取平均值,尽可能减小误差带来的影响,再利用初步处理之后的数据计算合加速度。

武汉市博物馆馆藏重器,是武汉近郊盘龙城出土的青铜大圆鼎,它的出土,对研究我国商代前期青铜铸造工艺的发展水平具有重大意义。

第二步,建立人体站立姿势下的坐标系。令人在站立时面向的正前方为X 轴,身体左侧垂直于X 轴方向设为Y 轴,竖直向下方向设为Z 轴。人体坐标系是跟随人体的姿态随时改变的。除人体坐标系外,另需要一个固定不变的地理坐标系,分别为指向正东方向的E 轴,指向正北方向的N 轴以及指向地心的重力加速度方向的D 轴,如图6 所示。

图6 坐标系与角度示意图

第三步,定义2 个倾斜角。分别是人体直立时向前或向后倾斜的俯仰角(pitch)、向左或向右倾斜的横滚角(roll),通过俯仰角和横滚角可进一步确认人体是否处于跌倒状态。

通过加速度计算俯仰角的公式为

同理,横滚角的计算公式为

angel_cal 倾角计算模块获得原始数据后进行三角函数的计算,最终得到所需要的角度值。跌倒检测的状态转移图如图7 所示。

图7 跌倒检测状态转移图

2.5 4G 物联网模块

4G 物联网模块采用银尔达的Core-Air724 芯片。相比esp8266模块等的Wi-Fi 传输方式,4G 传输的特点是没有传输距离限制,只要有4G 网络就可以传输,而我国的4G 网络覆盖率已经达到94%,基本不会出现无网络信号问题。该模块按照消息队列遥测传输(message queuing telemetry transport,MQTT)协议的数据格式与物联网云平台通信,通过UART协议与FPGA 主控系统通信。本设计中采用中国移动的OneNET 作为系统接入的物联网平台。

4G 物联网模块设计如图8 所示,包括5 个部分:ctrl 控制模块负责控制4G 物联网模块与OneNET 云平台的通信流程。首先其他各模块采集的数据传入data_to_ascii 数据格式转换模块将格式转换成美国信息交换标准代码(American standard code for information interchange,ASCII),之后统一传输给multi send多字节发送模块等待上传。ctrl 控制模块向云平台发送请求通信命令,并通过uart_rx 数据接收模块接收云平台返回命令,经cmd decode 命令译码模块译码后反馈给ctrl 控制模块控制整体数据的通信流程,具体如图9 所示。

图8 4G 物联网模块设计图

图9 通信流程图

按照设计框图将各模块与FPGA 相连接,将程序下载到FPGA 开发板中测试系统的总体功能实现情况以及各模块独立的运行状态,得到本系统的功能完整度对比以及各部分测试结果,详见表1。结果显示,本系统各部分功能实现正常,符合预期,并且系统的功能更加完善,适用性进一步增强。

表1 本系统与其他系统的功能完整度对比

3.1 健康信息检测部分测试结果

健康信息检测部分使用Vivado 软件中集成的在线波形调试工具逻辑分析仪(integrated logic analyzer,ILA)进行测试,得到的实时数据波形如图10所示。从图中可以看出,当检测完成后,状态从TEST变为WAIT,同时结束信号sto 变为高电平,一个时钟周期后变为STOP 状态,控制命令变为88,表示检测已完成。系统这时采集到的健康数据分别为血氧饱和度值99%、高压值127 mmHg(1 mmHg=133.32 Pa)、低压值81 mmHg、心率值64 次/min。

图10 人体健康检测数据波形图

图11 本系统测量值与实际值对比图

3.2 体温检测部分测试结果

体温检测波形如图12 所示。其中,state 为状态指示信息;
SCL 与SDA 分别为IIC 协议的时钟和数据信号,在时钟SCL 的上升沿采集数据,下降沿切换数据;
rd_reg 为两字节二进制表示的原始温度信息,temp_bcd 为转换成十进制之后的4 位温度信息。图中读到的温度值为37.1 ℃。

图12 体温检测波形图

分别使用红外测温枪与本系统测量额头、手心、手腕、腋下与环境温度,结果见表2,二者数据基本吻合。

表2 温度测量结果 单位:℃

3.3 定位部分测试结果

GPS 定位测试波形如图13 所示。其中,rx_done为每字节数据接收完成的指示符,rx_data 为一帧数据中的各字节数据;
jingdu_value 与weidu_value 分别为准确解析出的具体经纬度数据。图中经度为E12 024.832 71,纬度为N3 604.359 23。

图13 GPS 定位测试波形图

将原始数据转换为谷歌地图使用的度分格式并纠偏后得到的位置信息为N36.072 940、E120.419 002,如图14 所示。从图中可以看出,位置信息定位在青岛大学西院图书馆附近,与作者所在测试位置相吻合。由于受楼房等建筑物遮挡,稍微存在误差,但在可接受范围内。

图14 谷歌地图位置图

3.4 跌倒检测部分测试结果

跌倒检测部分测试时模拟2 次摔倒过程,采集到的加速度与角度变化信息如图15 所示。从图中可看出,发生跌倒情况时,先出现失重现象,加速度变小,最小低于0.5g,触碰到地面后出现超重现象,加速度增大,最大超过1.5g,然后稳定在1g 左右,故检测时令失重阈值th1 为0.5g,超重阈值th2 为1.5g。

图15 摔倒时加速度与角度变化图

前一次摔倒模拟往身体两侧摔倒,故横滚角变大;
后一次模拟身体前后摔倒,俯仰角变大,取倾角阈值θ 为50°。根据所设置的阈值,在实验室内邀请3 位志愿者模拟老年人日常的缓慢行走、上下楼梯以及跌倒的活动,重复进行20 次测试,测试结果见表3。可以看出,本文的跌倒检测算法能达到预期目标。因为设置的跌倒确认时间阈值为3 s,角度阈值为50°,所以能够较好地区分出正常的活动和跌倒,极少出现误判。

表3 跌倒检测测试结果

测试时采集到的实时数据如图16 所示。其中x_acc、y_acc、z_acc 分别为读取到的加速度值,roll 和pitch 为计算得到的角度值。图中得到的横滚角为-6°,俯仰角为59°,超过阈值θ,故判断为处于跌倒状态,并同时将fall 指示标识输出为高电平。

图16 FPGA 主控系统采集到的跌倒检测波形图

在OneNET 云平台上查看本系统上传的数据,结果如图17 所示,6 种数据全部成功上传,没有出现数据丢失或乱码的现象,系统工作正常。

图17 OneNET 云平台接收数据界面

本文设计的基于FPGA 的老年人健康安全监测系统通过搭建外围的多传感器数据采集模块,分别获取心率、血压、血氧、体温值,以及实时的跌倒检测与定位信息,并且实现了数据的物联网上传,便于远程监测老年人的身体状态,可为独居老年人群体提供一份安全保障,具有一定的实用价值。本系统采用FPGA 作为主控系统,相比单片机等微控制单元(microcontroller unit,MCU)具有天然的优势:FPGA 中全部使用硬件逻辑电路控制,并行数据处理能力强,可实现多传感器数据的同时采集,实时性高;
其电路结构可重新配置,可以根据后续需求改变电路功能,可拓展性强,并且FPGA 与芯片设计路径相通,项目稳定后可以进入大批量生产阶段,可以快速实现量产芯片,进一步降低成本。

本系统目前存在的不足之处在于进行数据测量验证时,被测人员要尽可能保持在较安静的状态,不能剧烈运动,未考虑佩戴人不同程度的运动对检测数据的影响,为使此设计更加实用,后续应加入更加完善的滤波算法以提高准确性;
另外,未来考虑加入报警功能,接入政府或相关组织预警系统,并结合大数据实现对被监测人的身体健康状态预测,使系统朝着更加智能化的方向发展。

猜你喜欢血氧加速度心率“鳖”不住了!从26元/斤飙至38元/斤,2022年甲鱼能否再跑出“加速度”?当代水产(2022年6期)2022-06-29心率多少才健康保健医苑(2022年4期)2022-05-05离心率求学·理科版(2020年4期)2020-05-13离心率相关问题新世纪智能(数学备考)(2020年12期)2020-03-29天际加速度汽车观察(2018年12期)2018-12-26智能血氧饱和度监测系统设计与实现测控技术(2018年8期)2018-11-25创新,动能转换的“加速度”金桥(2018年4期)2018-09-26死亡加速度劳动保护(2018年8期)2018-09-12探索圆锥曲线离心率的求解广东教育·高中(2017年11期)2017-12-04基于STM32血氧心率检测仪的研制电脑知识与技术(2017年15期)2017-07-11

推荐访问:老年人 监测系统 健康