马少卿,孙荣霞,马征
(河北大学 电子信息工程学院,河北 保定 071000)
摘要:设计了一种基于单片机的老人跌倒检测装置,采用加速度、陀螺仪传感器采集原始信号。在进行数据融合时采用自适应互补滤波算法,从频域角度消除噪声。针对该装置设计了一种计算量小的跌倒检测算法,并且加入了GPS定位装置和GSM短信模块。实验证明该跌倒检测算法计算量小、误判率低,并且能够实现精准定位。
关键词:跌倒检测;加速度;无线通信
中图分类号:TP212.9文献标识码:ADOI: 10.19358/j.issn.1674-7720.2017.09.029
引用格式:马少卿,孙荣霞,马征.基于单片机的老人跌倒检测装置[J].微型机与应用,2017,36(9):100-102,105.
0引言
研究表明,老年人跌倒发生率高,后果严重,是老年人的首位伤害死因[1]。而且跌倒的发生概率会随着年龄的增长而升高,如果能够及时救助,可有效降低跌倒老人的死亡率[2]。
目前研究开发人体跌倒检测系统方面的技术主要有两种:图像分析法和加速度分析法[3]。基于图像分析法,准确率高,但是检测算法繁琐,成本高,不方便携带[3]。基于加速度分析法,不但成本低,而且不受环境的限制,功耗低,方便携带[4]。
1系统总体设计
本设计利用六轴陀螺仪加速度计MPU6050进行原始信号的采集,采样频率为100 Hz,在进行姿态解算时,利用互补滤波器进行滤波,通过对三轴加速信号进行预处理,引入合成加速度。为了能够排除干扰,准确检测出跌倒,将姿态角和合成加速作为特征量,引入三级跌倒检测算法。一旦检测出跌倒,立即对老人的位置进行定位,同时闪光灯闪烁。等待30 s后,如果用户没有手动取消报警,则蜂鸣器发出声响,同时向目标手机和120发出报警短信。系统还设置了一键报警功能。用户的家人可以通过向本装置发送短信来获取老人的当前位置信息,防止老人走丢。
系统的硬件主要包括惯性测量单元(Inertial Measurement Unit,IMU)、GSM/GPRS模块、GPS定位模块、蓝牙4.0模块、以STM32F103ZET6为核心的控制器、电源模块、按键等。系统的结构框图如图1所示。
惯性测量单元选用的是InvenSense公司的MPU6050芯片,它能够同时检测三轴加速度和三轴角速度,可以输出数字量,并且传感器的测量范围是可选的。加速传感器的测量范围选择为±8 g,陀螺仪的测量范围选择为±1 000 dps,可以满足系统的要求。其外围电路如图2所示。利用芯片内部的数字运动处理器进行姿态解算,大大降低了开发的使用难度。
GPS定位模块选用UBLOX公司的NEO6M模组,该模块体积小、功耗低、搜星能力强,并且可以连接各种有源天线,非常适合应用到便携式设备中。
GSM/GPRS模块选用SIMCOM公司的工业级四频SIM800芯片,可以实现低功耗语音和数据的传输。用户可以通过AT指令进行拨叫号码、接收短信、启动GPRS网络等功能。
蓝牙4.0模块选用HM13系列的蓝牙模块,用蓝牙进行数据传输最有利的一个方面就是功耗低。低功耗蓝牙技术大幅降低了系统的功耗,只需要用硬币大小的电池即可保证系统正常运行几个月,非常适合应用在便携式设备中。
按键的主要功能是提供手动报警和手动取消报警,以降低系统的漏判和误判对用户造成的损失,同时还设置了一键报警的功能。
2跌倒检测算法
2.1特征值预处理
运动过程中加速度传感器测出的X轴、Y轴和Z轴的加速度分别为a2x、a2y和a2z。合成加速度为三轴加速度的平方和再开方。合成加速度的大小可以表征人体运动的激烈程度[5]。
2.2姿态解算
在进行数据解算时通过对角速度积分获得人体姿态角,短时间内精度高,但是陀螺仪存在漂移误差,经过积分运算后会变成积累误差,最终导致电路饱和。相反利用加速度求解姿态角,其测量误差不会随时间的积累而增加[6]。但是加速度传感器在人体运动时会给测量带来白噪声,短时间内精度较低。
通过上述分析可知,加速度传感器低频段动态响应较好,但是在高频段表现不好。陀螺仪动态响应好,但是存在漂移误差。所以在进行数据融合时采用自适应互补滤波算法,从频域的角度来消除噪声,发挥它们各自的优势,输出稳定可靠的姿态角[7]。互补滤波器的原理框图如图3所示。
其中x为实际的姿态角,u1和u2为传感器在测量时引入的高频噪声和低频噪声。加速度传感器引入的高频噪声由低通滤波器F1(s)滤除,陀螺仪引入的低频噪声由高通滤波器F2(s)滤除。两个滤波器在频域上具有互补特性,滤波器的传递函数满足F1(s)+F2(s)=1。
2.3分类过程
通过上一小节的分析,设计了跌倒检测算法,检测参数为合成加速度和姿态角。为了了解跌倒过程中加速度变化规律,将检测装置放于腰间,测试者模仿老人跌倒,并同时记录测试者三轴加速度变化。选取测试过程中具有代表性的一组数据,用Excel进行绘图分析。如图4所示。
从图4中可以看出,当人体静止时,合成加速度在1g左右。当测试者跌倒时,其加速度先减小,然后增大,最后趋于平稳。整个过程持续了2 s左右。由此可以得到,跌倒是一个短暂的过程,这一过程测试者经历了失重、撞击和静止三种状态。
跌倒过程中合成加速度最大值在2.6g上下,且有7个连续的采样点合成加速度都在2.0g以上。并且通过对人体姿态角采样,在跌倒后至少有一个姿态角的绝对值大于45°。
用同样的方法模拟老人正常走、快步走、坐下起立、跳跃、跑步等日常活动,同时对合成加速度和姿态角进行了采样、绘图、分析[8],结果如表1。
通过上述分析,把连续6个采样点的合成加速度大于2.0g作为分类条件,可将跌倒与正常走等非剧烈运动区分开。同时还可以将跌倒与快步走、跑步等周期性剧烈运动区分开。为了减小误判率,可将跌倒后的类静止状态作为分类条件。最后通过判断人体的姿态,进一步减小误判率。
3实验结果与分析
为了测试跌倒检测装置的误判率和漏判率,邀请5名志愿者(年龄:23~27岁,身高:160~180 cm,男2人,女3人)分别模仿老人正常走、快步走、坐下、跑步、跳跃等日常活动,共测得125组数据,如表2所示。另外让5名志愿者模仿老人向前、向后、向左、向右跌倒。共测得100组数据。
从表2可以看到,检测装置对于正常走、快步走等运动的误判率为0%,而对于跳跃、跑步等剧烈运动的误判率达4%。考虑到老人进行激烈活动的次数较少,如果出现误判,老人可以手动取消报警信号。
测试者在模仿老人跌倒试验中,向前或向后跌倒时,漏判次数较少,准确率高达92%。但是在向左或向右跌倒时,漏判次数较多。这是由于测试者均为模拟老人跌倒,而且跌倒的方向并不是严格意义上的某一方向,所以会出现不同程度的漏判。在检测到跌倒以后,该装置能够将包含测试者位置信息的短信息完整地发送到目标手机。
4结论
本文设计了一种基于单片机的老人跌倒检测装置,可以实现对老人跌倒检测,并且利用GPS对老人进行定位,同时将报警信息发送到目标手机上。此装置容易扩展,可加入可燃气体探测器、心率检测传感器,组成一套针对老人健康的检测系统。
参考文献
[1] 王剑.基于MEMS三轴加速度计的跌倒检测电路的设计[J].自动化技术与应用,2013,32(6):81-84.
[2] 陈炜,佟丽娜,宋全军,等.基于惯性传感器件的跌倒检测系统设计[J].传感器与微系统,2010,29(8):117-119.
[3] 王荣,章韵,陈建新.基于三轴加速度传感器的人体跌倒检测系统设计与实现[J].计算机应用,2012,32(5):1450-1452.
[4] 徐雷,张瑾,马腾,等.基于GSM网络的老年人身体姿态检测系统设计[J].信息化研究,2014,40(6):65-68.
[5] 谷敏敏,刘进军,安宁.基于多姿态识别的被动入侵检测模型研究[J].传感器与微系统,2015,34(6):17-20.
[6] 孙金秋,游有鹏,傅忠云.基于自适应显式互补滤波的姿态解算方法[J].测控技术,2015,34(4):24-27.
[7] 杜波,张卓,刘垚.卡尔曼滤波在人体姿态检测中的应用[J].长春工程学院学报(自然科学版),2015,16(3):98-101.
[8] 李易陆,陈洪波,蒋晓旭,等.基于三轴加速度传感器的人机交互智能手环[J].桂林电子科技大学学报,2015,35(5):412-415.