梁伟玲 黄泽彬 林建斌
据统计,随着我国逐渐步入人口老龄化时代,截至2017年年末中国大陆总人口中,65周岁及以上人口占比为11.4%,预计到2020年,老年人口将达到2.48亿,老龄化水平达到17.17%,同时行动不便的住院患者也随之增多[1]。然而,现阶段我国大部分医院都面临着医护人员紧缺的严峻态势,护士占总人口比例仅为世界平均水平的1/5,医护人员与医院床位数比例也远落后于发达国家,老龄化带来行动不便的患者增多[2]。基于此,本研究针对患者在住院卧床或在病房活动期间发生跌落导致的危害,结合医院病区呼叫铃存在的不足,在分析近年来姿态传感器和穿戴医学的相关研究的基础上,设计一款基于姿态传感器的患者跌落报警系统,旨在帮助临床工作人员更好的对患者进行监护。
本研究设计的患者跌落报警系统是由下位机和护士站报警器组成,下位机主要包括六轴姿态传感器(MPU6050)、Arduino Mega模块、Zigbee模块以及报警蜂鸣器组成。将下位机系统集成放置在亚力克盒中,通过绑带缠在患者腹部进行数据采集和分析,护士站报警器由Arduino Uno、报警蜂鸣器、Zigbee模块和液晶显示器组成,经由Zigbee模块自组网络,在患者发生跌落事件时及时发出报警。系统结构如图1所示。
图1 患者跌落报警系统结构框图
1.2.1 姿态传感器模块
姿态传感器型号为MPU-6050,该型号传感器为整合性六轴运动处理组件,相较于多组件方案,可免除组合陀螺仪与加速器时间轴之差的问题,减少大量的封装空间。该传感器内置了三轴MEMS陀螺仪、三轴MEMS加速度计和数字运动处理引擎(DMP),其中配有数字传感器接口的辅助I2C串行接口。MPU-6050角速度全格感测范围为±250°/sec(degree per second, dps)、±500°/sec(dps)、±1000°/sec(dps)与±2000°/sec(dps),可准确追踪快速与慢速动作,且用户可程式控制的加速器全格感测范围为±2 g、±4 g、±8 g与±16 g。由于其体积小巧、精度较高,因此被广泛应用于运动感测、现实增强、电子图像稳定(electronic image stabilization,EIS)以及四轴飞行器等设备上。MPU-6050的参考坐标系如图2所示。
图2 MPU-6050参考坐标系示图
1.2.2 Arduino Mega模块
Aruduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件各种型号的Arduino板和软件IDE[3]。Aruduino构建于开放原始码simple I/O介面板,并且具有使用类似JAVA、C语言的Processing/Wiring开发环境。本研究设计上位机采用Arduino UNO作为主控模块,其处理器核心为ATmega 328,可采用USB的5 V供电或DC的7~12 V供电,具有14个数字输入/输出端口,6个模拟输入端口,同时提供了UART通信和SPI通信端口。下位机由于需要实时处理解析姿态传感器数据,选用了处理器核心为ATmega 2560的Arduino Mega模块,相对于UNO,其拥有更大的程序空间和内存。
1.2.3 Zigbee模块
Zigbee技术是一种近距离、低复杂度、低功耗、低速率以及低成本的双向无线通讯技术,其主要用于距离短、功耗低且传输速率不高的各种电子设备之间进行数据传输,以及典型的有周期性数据、间歇性数据和低反应时间数据传输的应用[4]。
本研究设计的数据无线传输部分采用了Zigbee模块,其具有以下优势:①模块可以实现近距离无线自助网功能,在区域间隔大的临床病房中由于患者的移动,彼此间的链路会发生变换,模块可以通过重新寻找通信对象的方式,对原有网络进行刷新;②相较于Wifi芯片的封装尺寸较大和功耗高的问题,Zigbee模块的发射功率为1 mW,仅靠两节5号电池即可维持6个月的使用时间[5]。
由于发生跌落是人体在方向未知的情况下短暂剧烈运动,为此可以引入合加速度用以反映人体当前运动的剧烈程度[6]。本研究设计由Arduino Mega读取MPU-6050加速器计和角速度计的数据换算为物理量并进行解算[7]。设X轴、Y轴及Z轴分别于人体的冠状轴、矢状轴和垂直轴平行,计算各轴向加速度值分别为冠状轴加速度(ax)、矢状轴加速度(ay)和垂直轴加速度(az),则合加速度值计算为公式1:
式中A为各轴向的合加速度值,|a|为各轴向合加速度绝对值。
该特征值将三维空间中的加速度值合为一个矢量,在本研究设计中可以忽略人体运动的具体方向,而采用该值对人体的行为进行解析,可以避免单轴加速度分析时引起的误差。
当人体发生跌落时,人体会经历失重到撞击地面的过程,此时合加速度将发生急剧增加,产生瞬间的峰值。从失重到撞击地面所经历的时间通常不会>0.4 s,在撞击地面后人体会保持静息状态,此时合加速度将恢复至稳定状态[8]。
从静息状态、步行状态和慢跑状态的3种日常生活状态模拟跌倒的试验曲线显示,在运动过程中合加速度波动幅度较大,而静息状态相对稳定[9]。若采用单一阈值的方式判断,具有单一性缺陷,容易误判运动过程中合加速度值波动与真实跌落事件。因此,为降低误判率,设计参考心电信号中R波监测的判断方式,采用阈值法检测人体是否跌落[10](如图3所示)。
图3 静息状态、步行状态和慢跑状态监测曲线图
在系统开始工作时,延时3 s对跌落信号报警阈值TH进行初始化,根据3 s内采集数据的平均值Amean来计算当前阈值THt0。随后对3 s时间范围内的当前阈值THt采用迭代方式进行计算。通过循环判断当前采集数值At与THt来判断患者状态。
为检验本研究设计的患者跌落报警系统有效性,考虑针对患者可能发生的跌落情况,设置了模拟卧床跌落、站立跌落、步行、慢跑以及静息等可能出现情况的对比试验测试,在受试者腹部佩戴本次设计的下位机硬件部分,其测试结果见表1。
表1显示,使用本研究设计的下位机硬件模块对患者跌落事件检测的识别判断中,由于卧床、静息状态的突发跌落瞬间的合加速度值A变化较大,因此识别误判率相对较低。而在运动状态下,由于运动过程中合加速度值A一直处于波动状态,会偶发出现误判状况。
表1 跌落检测试验分析(次)
患者跌落报警系统设计主要基于Arduino Mega与Zigbee模块快速搭建物联网平台,制作可穿戴式的患者跌落姿态监测系统。通过实时计算与分析来自姿态传感器的数据,对患者跌落情况进行有效的监测与报警。以计算特征阈值的方式,保证了对跌落事件监测的准确率。但本次设计监测误判率仍存在提升空间,后期计划通过改进滤波算法来降低误判率。同时由于下位机总体体积较大只能佩戴于患者腰间,容易引起患者不适,计划将进一步研究采用更轻便的平台进行设计改进,提升系统的实用性。