基于九轴惯性传感器的跌倒监测系统的研究
2014-07-25王亚青张文涛赵国如
王亚青,张文涛,赵国如
(桂林电子科技大学 电子工程与自动化学院,广西 桂林541000)
随着我国老龄化社会的到来,65岁及以上老年人已达1.5亿,按30%的发生率估算每年将有4 000多万老年人至少发生1次跌倒,如果跌倒的老年人不能得到及时的救援,伤残和死亡的比率会大大增加,据卫生部统计,跌倒成为了威胁老年人生命安全和增加社会负担的第一因素。因此在不影响老年人正常生活的情况下,研发一种可以检测老年人行为并能及时将信息反馈的智能化跌倒检测装置具有重要现实意义。目前国内外的相关人体跌倒识别方法种类较多,根据其研究中获取信息的来源和类型不同,主要可分为以下三种:
(1)基于视频和模式识别的方法。通过摄像装置实时监测区域内的人体运动,当人体在非正常位置卧倒过长时间,判断为跌倒。有部分研究者利用图像中的人体部位异常动作来判断是否跌倒,如ROUGIE C通过计算头部移动速率等参量跟踪头部轨迹检测跌倒[1]。
(2)基于振动分析的方法。当跌倒发生时,振动传感器会探测到相应振动的波形,通过分析对比波形可检测出人体跌倒行为。
(3)基于惯性传感器的可穿戴式人体跌倒监测系统。此类装置可以自动检测人体摔倒行为并利用无线通信装置报警。
前两种方法都受到空间上的限制,只能检测特定区域内的跌倒,而且视频监测可能会因隐私问题而使用户产生排斥心理。第三种方法与前两种方法相比有很大的优势,更实用,有更广阔的应用前景。目前国内外有很多此类研究装置及方法,但很多都采用单一的三轴角速度传感器或者结合压力传感器辅助检测。如BIANCHI F等介绍了一种使用压力传感器和加速度传感器检测人体跌倒的方法,系统把一个三轴加速度计和压力传感器置于腰间,通过判断加速度数据和压力数据识别跌倒[2];在国内,孙新香等人介绍过一种基于加速度传感器的跌倒探测器[3];陈炜、佟丽娜等设计了一种基于惯性传感器件的跌倒检测系统[4]。结合国内外的研究现状,本文将九轴惯性传感器作为跌倒检测终端,实现远程定位报警等功能。
基于九轴惯性传感器的跌倒监测系统可以在任何时间、地点和环境下监测并获取跌倒警报信息,通过GPS与GSM集成的模块端口将采集到的地理信号和报警信号通过移动网络发送到远程监控平台。平台查询事件人基本信息通过短信通知监护人,以达到及时救治的目的。
1 系统构架
跌倒监控系统设计平台主要是穿戴式的跌倒检测终端、手机、远程监护平台三者间进行通信的移动网络,系统总体方案结构如图1所示。
图1 系统总体方案结构
跌倒检测终端主要负责对人体加速度、角速度和姿态角的数据采集,并具有地理信息采集和远程通信等功能。当检测到佩戴者发生跌倒时,终端会发出声光报警,同时将跌倒报警信号传送到远程服务器端和手机客户端,以便通知监护人提供及时的救治。终端还具有主动/取消报警、电量监测和低电量提示等功能。
远程监护平台由手机和监控服务器组成。手机主要用于及时接收短信或电话报警,并将接收的地理信息在手机地图中显示。远程监护服务器运行于PC端,基于MFC开发,主要功能是事件处理和用户管理,用于医院及社区对跌倒事件进行更有效的处理,以及对跌倒检测终端进行更有效的管理。跌倒事件发生时,由终端向PC监护平台发送一条跌倒事件,PC监护平台接收到事件后以弹出对话框和声音警告的方式提示操作人员有紧急情况发生。
通信网络由GPRS组成。GPRS网络主要负责将报警信息以短信或电话的方式通知监护人。
2 跌倒监测系统构架
2.1 硬件设计
硬件部分主要是跌倒检测终端,该终端由电源单元、跌倒检测、微处理器、GPS/GSM 、声光报警、“清除/求助”按钮组成。各模块在MSP430F2418单片机的控制下相互配合,实现系统的各种功能,系统硬件连接原理框图如图2所示。跌倒检测模块采用 ADXL345三轴加速度传感器、三轴磁力计MAG3110和三轴陀螺仪集成的九轴惯性传感器,用于实时监测人体角速度和加速度参数。三轴陀螺仪能够测量沿一个轴或几个轴运动的角速度,可与ADXL345形成优势互补,而加速度计和陀螺仪这两种传感器能够更好地跟踪并捕捉三维空间的完整运动,当GPS在室内无法搜索到足够卫星信号时使用。
图2 监控系统硬件连接原理框图
卫星定位模块采用西门子公司的 SIM908,该模块集成了GPS+GSM+GPRS功能,通过AT指令完成与核心处理器配置,实时监测老年人跌倒时所处位置的经纬度,跌倒事件发生后将地理位置信息发送到远程监护平台同时接收用户监护人的查询请求。
2.2 跌倒检测算法
基于运动的跌倒检测算法主要依据传感器输出的加速度和角速度信号。加速度信号表征了人体的移动快慢及方向等信息,是穿戴式跌倒检测的主要特征信号量。角速度信号表征人体姿态信息。由于传感器采集到的是3个正交方向的加速度和角速度信号,而单一方向的信号难以表征整体的运动,因此取其和的平方根:
其中,Acc_x、Acc_y、Acc_z分别表示 3个正交方向的加速度信号,Gyr_x、Gyr_y、Gyr_z是三轴陀螺仪正交角速度信号。人体倒地后,从刚接触地面到相对静止于地面,此过程为“冲击过程”。在这个过程中,人体的加速度从最大突变到接近重力加速度,在波形上形成一个向上的尖峰,通过对此尖峰进行检测从而判定跌倒的发生。人体在执行日常行为(ADL)动作时,都没有“失重过程”和“冲击过程”。通过检测加速度和角速度的尖峰,即可判断跌倒事件的发生,确认跌倒事件发生后启用GPS定位和GSM通信,将报警信号和地理位置信号通过短信方式发送到服务端和手机端。图3所示为判断跌倒发生的软件流程图。
图3 跌倒检测终端软件设计
首先单片机要进行串口通信模块、系统时钟及I/O端口的初始化,对各个控制寄存器进行参数设置。读取九轴惯性传感器采集运动信息(即加速度和角速度的值),当合加速度和合角速度超出阈值时,触发报警器,开始报警音提示以及LED闪烁,提示时间持续20 s,在无人触动求助/解除按钮的情况下,通过GSM或GPRS发出报警短信到监护平台和指定监护人员手机。当紧急情况主动报警,通过触动求助/解除按钮,持续20 s,在无人触动求助/解除按钮的情况下,启动GPS定位和GPRS通信将跌倒信号以短信方式发送到监测终端和监护人的手机。
3 基于MFC构架远程监控平台
远程监控平台基于Visual Studio 2010开发环境,利用 MFC构架开发,为操作人员提供系统录入,事件发生以弹出对话框和声音警告的方式提示操作人员有紧急情况发生。系统人员查看事件相关信息,包括跌倒事件发生人员、跌倒时间、发生地点、跌倒事件的可信程度和预处理方案等。远程监护不仅可以实时监控老年人的健康状况、记录监护人信息、接受并处理跌倒事件,而且还有健康信息推送、天气预报、短新闻、故事笑话、周边社区生活信息播报等功能。该监控平台根据跌倒事件信息做出实施救助的方案,并立即展开救助活动,最大程度地对需要救助的人员实施最快的救助。
3.1 ADO接口访问SQL Server数据库
Window系统上常见的数据库接口包括:ODBC(开放数据库互连)、DAO(数据访问对象)、OLE DB(对象连接嵌入数据库)、ADO(ActiveX数据对象)。在各种访问数据库技术中,ADO是最新的访问技术,建立在OLE DB之上,属于高层的数据库。ADO支持任何的OLE DB服务器,并提供更多的编程语言。ADO提供自动化接口,还支持COM的数据扩展类型。故本文采用ADO组件访问SQL Server 2008数据库。
在使用ADO对象之前必须先初始化COM环境。ADO库包含3个基本接口:ConnectionPtr接口、CommandPtr接口、RecordsetPtr接口。 ConnectionPtr创建一个数据连接或执行一条不返回任何结果的SQL语句。CommandPtr接口返回一个记录集,提供了一种简单的方法来执行返回记录集的存储过程和SQL语句。RecordsetPtr是一个记录集对象,与前两种对象相比,它对记录集提供了更多的控制功能,如记录锁定、游标控制等。
首先要建立Connection连接,接口通过Connection对象中的 Execute方法建立对象的指针 _bstr_t,strConnect设置连接字符串,利用Connection对象Open方法建立数据库连接。Recordset对象由记录和列(字段)组成,用于容纳数据库表的记录集。使用Recordset函数创建记录集对象,使用记录集对象中的Open方法取得表中的记录。ExecuteSQL函数直接执行SQL语句获取表中的数据。m_pConnection检查是否已经连接数据库,利用Connection对象的Execute方法查询语句。CommandText是命令字串,通常是SQL命令。使用ExitConnect()函数即可完成数据集的关闭、断开数据库连接、释放环境等功能。
3.2 Socket网络通信
本文采用Windows Socket API函数编写Windows Socket网络通信程序 。当跌倒报警信息发生时,基于MFC构架跌倒监控平台按照Windows的消息驱动机制把消息发送给相应的套接字对象,并调用作为该对象成员函数的事件处理——函数套接字类的通知函数(notification functions)。如果调用成功或者发生了WSAEWOULDBLOCK错误,当调用结束返回时,都会发生FD_CONNECT事件,MFC框架会自动调用客户端套接字的OnConnect()事件处理函数,并将错误代码作为参数传送给它。服务器接受跌倒监测终端的连接请求,使用CAsyncSocket流式套接字对象。
4 测试与结果分析
为了验证系统及跌倒算法的有效性,动作主要分为两类:日常行为ADL和跌倒行为FALL。本实验设计了四类实验:正常行走或站立;跑步;行走跑步变化;向前、向后、侧向跌倒。在跌倒实验测试时,将该系统束在腰部,执行设定好的动作。实验结果显示,当合加速度与合角速度的阈值分别设置为20 m/s2和2 rad/s时,测得一组各个行为的合加速度和合角速度实验结果分别如图4、图5所示,跌倒检测均能准确识别并进行相应的报警(无漏 报警)。
图4 ADL和跌倒行为时的合角速度信号
图5 ADL和跌倒行为时的合加速度信号
进行20次实验,结果如表1所示,该跌倒检测原型系统能正确地区分绝大多数的跌倒事件,可识别出无跌倒事件发生,无警报发出,基本达到了预期效果。
由于该实验中跌倒事件是由学生模拟测试来完成的,不能完全模拟老人跌倒行为,在实际应用中可能需要根据不同人的个体差异进行调整参数,以适应不同个体、不同年龄段的用户需要。
表1 实验结果统计表
本文介绍的系统集成度高、体积小、智能化、可靠性强,利用Internet网络实现位置信息等信号的传输以及诊断信息反馈,具有不受患者活动状态、活动地点和活动时间的限制,老年人之间能够及时沟通等优点;实现了远程数据的传输、回放和人体状态的快速分析诊断以及医患之间的信息交互,最大限度地减少由跌倒造成的伤残甚至死亡,具有十分重要的社会价值和经济价值。
[1]WOON S B,DONG M K,FAISAL B,et al.Real life application fall detection system based on wireless body area net work[C].the 10thIEEE CCNC-eHealth,2013:62-67.
[2]BIANCHI F,REDMOND S J,NARAYANAN M R,et al. Barometric pressure and triaxial accelerometry-based falls event detection[C].IEEE Transactions on Neural Systems and Rehabilitation Engineering,2010,18(6):619-627.
[3]孙新香.基于三轴加速度传感器的跌倒检测技术的研究与应用[D].上海:上海交通大学,2008.
[4]陈炜,佟丽娜,宋全军,等.基于惯性传感器件的跌倒检测系统设计[J].传感器与微系统,2010,29(8):117-125.