APP下载

基于GSM通信技术的老人跌倒报警系统*

2022-10-31陈翰林苏亚伟石春花

山西电子技术 2022年5期
关键词:静息按键报警

陈翰林,苏亚伟,石春花

(长治医学院生物医学工程系,山西 长治 046000)

0 引言

我国人口老龄化态势日趋严重[1],60周岁及以上老年人口26402万人,占总人口的18.70%。研究表明,跌倒是老年人主要的意外事故[2],且独居在家的老人常无法有效应对突发事件,缺乏自主求救、准确描述自身位置的能力,因此一款能够准确判断老人是否跌倒并自动向外界发出报警信号的装置是很必要的,能够有效解决问题,为老人争取宝贵的救援时间。

目前市场上具有报警功能的相关产品多为运动手环类型,价格昂贵、操作复杂。本文设计了一款基于STM32单片机[3]的可穿戴设备,整体小巧便捷,经济实用,操作简单。该可穿戴设备外设有触摸开关、系列按键、OLED屏幕;内置有心率检测、跌倒检测、GPS定位模块、GSM通信模块,可准确判断老人是否处于心率异常、跌倒等异常状态,采集老人所处位置的经纬度参数并通过短信向绑定手机传输求救信号,便于急救人员及时开展救援行动,可最大化降低跌倒带来的伤害。

1 系统方案

系统包括测量装置和穿戴部件两部分。如图1所示,测量装置主要由电源、数据采集处理模块、操作模块、报警通信模块四部分组成。

图1 系统总体框图

1) 数据采集处理模块包含STM32微处理器,GPS定位,三轴加速度传感器和心率采集。STM32单片机作为核心控制器,主要用于采集和处理心率、合加速度、经纬度三种信号,判断老人是否存在心率异常、跌倒等异常状态。

2) 操作模块包含1个触摸开关,4个按键和1个OLED屏。如图2所示,触摸开关可直接关闭系统电源,实现报警预处理模式的快速解除。按键从左至右依次为1,2,3,4号,按键1用于切换显示界面;按键2用于确定当前界面,按键3、4为加减键。OLED屏用于显示按键输入数字、心率、经纬度等基本信息。

3) 报警通信模块包含蜂鸣器和GSM通信模块。当系统判断老人处于跌倒等异常状态时,将进入为期15 s的报警预处理模式,此时蜂鸣器发出警鸣,引起外界人群的注意,使老人能够得到援助。若在跌倒发生的15 s后,老人仍未通过触摸开关解除报警预处理模式,说明老人伤势较重,无法自救,此时通过SIM800C短信模块向绑定手机号发送求救信息。

图2 测量装置外观

2 软件设计

2.1 总体设计

系统采用模块化程序设计法,将主程序、跌倒检测程序、心率检测程序、GPS定位程序、OLED显示程序、报警通信程序等主要模块分开包装。其中,主程序包括对各模块串口初始化的定义、按键的执行内容、跌倒和心率异常的判断等主要内容,在系统程序中起到整体调动的作用。其他模块的程序主要由复位、串口、算法三个部分组成。为了提高心率和跌倒检测模块的准确性,相应算法内设置有自动校验程序,总体流程如图3。

图3 程序总体流程图

2.2 主要算法

1) 跌到动作的检测:三轴加速度传感器可测出在动态坐标系下X、Y、Z三个方向的加速度分量,并由加速度分量计算出运动坐标系与自然坐标系之间的夹角。其中,Z轴夹角公式如下所示:

(1)

当任意夹角超过30°时,成年人发生跌倒的概率接近100%[4]。考虑到老年人身体机能退化,平衡能力弱,故将跌倒夹角上限调整至20°。

2) 心率的测量与判断:心率传感器采集的心率信号是一个模拟信号,无法直接计数,需要通过单片机进行数字化处理。考虑到单片机模数转换精度与其时钟模块相关,为保证测量精度,通常将5~7个时钟脉冲所占时间和作为心率脉冲的平均周期[5],可得如下心率计算公式:

(2)

其中:HR为心率;N为平均周期内的波峰数;S为平均周期;60即60 s。已知心率依据运动状态可分为静息心率和有氧心率两种情况。正常成年人的静息心率为60~80 次/min,若心率少于60 次/min,则称为“心动过缓”;若心率超过100 次/min,则称“心动过速”,两者均为心率异常状态。考虑到年龄因素对心率影响较大,结合临床数据,最终将50 次/min设为正常心率的下限阈值[5],低于此值即可判定为“心率异常”。

2.3 主要模块程序设计

1) 跌倒检测模块程序设计

在adxl345传感器初始化的过程中,为保证输出数据的精确度,应对数据进行偏移校验。先将模块水平放置,此时X,Y轴加速度为0 g,Z轴加速度为1 g。然后初始化IIC总线,并将分辨率设置为全分辨率模式,将传输速率设置为100 Hz。编译结构体ADXL345_WR_Reg(u8 addr,u8 val),初始化寄存器,用于存放数据和地址。在测得三轴各十组样本数据后,取其平均值并减去对应的偏移值就可以得到三轴的校准值。

由于1 g对应的最小有效位为3.9 mg/LSB(即1 g=256 LSB),而在偏移寄存器中,比例因子的固定值为15.6 mg/LSB,且负值置于寄存器需要消除正偏移,故偏移比例系数为-(3.9÷15.6)=-0.25。以Z轴数据为例,在全分辨率模式下,若平均值为20 LSB,则校验值为-(20-256)×0.25=59 LSB,进而可得校准值的补码,并写入对应的偏移寄存器中。这样,每次从传感器读取的数值就自动加上了这个设置的偏移。为了提高数据的精确度,减小误差数据带来的影响,可以先求出单位时间内的计数次数times,根据times求平均值。通过上述程序,adxl345已能够采集相对准确的数据,可直接利用math.h函数库中atan函数,求出角度值。若在某时刻内,前后角度之差的绝对值超过20°,即可判定老人发生摔倒,报警标志位fall_flag将自动置1,启动GSM模块,发出报警信号。若标志位没有置位,则清空数据,为下一测量周期提供存储空间。其运行流程图如图4所示。

图4 跌倒检测模块程序流程图

3 系统测评

3.1 跌倒动作判断的准确性测评

为了验证系统能够达到精确判断受试者处于异常状态的要求,在不影响实验结果的前提下,出于安全考虑,由五名团队成员代替老人进行测试。每人在静息、运动两种状态下完成测试,其中运动状态是指剧烈运动后的状态,主要用于判断心率异常测试的准确性。每组测试内容包括步行、跌倒、弯腰三项动作,每项动作重复两次,同种状态下每人完成6次实验,共计进行60次实验。实验结果如下表所示。

表1 静息状态下的实验结果

表2 运动状态下的实验结果

测试动作中步行、弯腰均为干扰项,系统应不予报警。排除心率异常报警次数后(表中用→表示),对实验结果进行分析,可知系统在静息状态下,正确率为93.3%;在运动状态下,正确率为80%。其中干扰共计40次,报警6次,正确率为85%;跌倒共计20次,报警19次,正确率为95%。综合考量下,认为系统能够满足准确测量的要求。

3.2 心率异常判断准确性测评

除去心率为0的异常数据,在静息状态下共采集到有效心率数据29份,在运动状态下共采集到有效心率数据27份。将实验结果与对照数据绘制成心率折线图,如图5所示。

图5 静息、运动状态下心率实验结果

实验结果表明:无论是静息状态还是运动状态,实验心率与对照心率折线的重合度都比较高,说明系统心率检测的准确率达到要求。

4 结束语

4.1 讨论与展望

实验结果中存在静息、运动两种状态下准确率相差较大的问题,推测原因是参与测试的人员年龄、体质与老年人之间存在较大差异,跌倒角度阈值设置较小所致。在后续工作中,可根据受试者情况,适当调整程序中所设参数,提升准确率。为了能更好地协助医院展开救援工作,项目预设中曾提出:以老人事发地点为中心,通过高德地图等APP自动筛选出就近医院并向该医院后台发送求救短信的方案,可作为后续研究的方向和展望。

4.2 结论

本文针对老年人意外跌倒、心率异常等突发状况,设计了一种基于GSM通信技术的异常状态检测报警系统,一定程度上解决了老人遭遇意外后不能自主求救的问题,为老人的身心安全提供了保障。经实验测试,证明该系统具备判断准确率高、报警及时、操作简易、小巧便捷等优点。该系统经后续组装后,可穿戴于老人腰腹、手臂等多个部位,适用于日常活动量较大的独居老人,有着广泛的应用前景和市场。

猜你喜欢

静息按键报警
基于有限状态机的按键检测程序设计
CCTA联合静息心肌灌注对PCI术后的评估价值
精神分裂症和抑郁症患者静息态脑电功率谱熵的对照研究
按键消抖在单片机和FPGA实验教学中的应用
LKD2-HS型列控中心驱采不一致报警处理
一种多方向导光按键结构设计
2015款奔驰E180车安全气囊报警
首发抑郁症脑局部一致性静息态MRI对比研究
死于密室的租住者
奔驰E260车安全气囊报警