微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 老龄化社会催生的跌倒检测报警系统的设计

老龄化社会催生的跌倒检测报警系统的设计

时间:07-17 来源:《单片机与嵌入式系统》 点击:

  随着人类生活水平的不断提高,人口老龄化成为一个全球性的发展趋势。目前,我国已经进入了老龄化社会[1],老年人的身心健康问题得到人们更多的关注。老年人因生理结构衰老和身体机能减退,发生意外跌倒的概率和频率非常高[2]。跌倒可以导致老年人身体组织挫伤、骨折甚至危及生命,并从心理上给老年人造成了压力和恐惧感。实际上很多伤亡并不是由于意外跌倒本身造成的,而是由于跌倒发生后,老年人没有得到及时的救治造成的[3]。尤其现在社会上存在很多讹诈现象,导致人们不敢轻易伸出援助之手。因此,在老年人发生跌倒后,如何尽早被发现,并发出求救信号进行及时救治变得格外重要。为了老年人更健康地生活,研究设计一个老年人的跌倒检测与报警系统具有十分重要的研究价值和实际意义。

  目前,研究开发人体跌倒检测系统方面的技术有很多种,最常见的是图像分析和加速度分析法。文献[4-6]都是基于视频图像分析的室内跌倒自动检测系统,这种技术准确性高,人体动作清晰可见,但需要多部摄像机同时工作,且暴露了用户的个人隐私,监测范围有限,受环境的影响也很大。另一种加速度分析方法,主要基于微机电系统(Micro-Electromechanical System,MEMS)传感器。MEMS技术近几年得到了快速发展,广泛应用在跌倒检测、状态检测、运动检测等方面。文献[7-9]都是利用MEMS技术进行人体跌倒检测的,目前国内一些基于MEMS技术的跌到检测虽可较好实现跌倒检测,但大多计算量较大、设计复杂、价格昂贵,难以得到广泛的应用。

  设计一种基于Arduino和三轴加速度传感器的跌倒检测报警系统,实时采集人体加速度参数和地理位置信息,应用于老年人意外跌倒后及时报警,兼具了性价比高、设计简单、实时性高、低功耗、可扩展的特点,实验证明了该系统的可行性和准确性。

  1 系统总体设计

  跌倒检测报警系统由Arduino最小系统、加速度参数采集模块、GPS定位模块、GSM通信模块组成,其系统框图如图1所示。

  

  图1 跌倒检测报警系统框图

  Arduino 实时接收加速度参数采集模块传来的人体加速度参数值,单片机通过接收来的加速度值,经过跌倒检测算法来判断穿戴者的体态,如果检测出跌倒的发生,便触发跌倒报警机制。当跌倒发生时,通过GPS定位模块能捕获到穿戴者的具体地理位置,然后发出包含跌倒位置的报警求救信息,通知佩戴者的监护人或医疗机构,进行后续的救治。本系统在考虑这些功能需求的前提下,采用Arduino为控制核心,外围连接加速度参数采集模块、GPS定位模块、GSM通信模块,来完成整个系统的功能。

  2 硬件设计

  硬件部分主要包括微控制器最小系统的选取、加速度参数采集模块、GPS定位模块、GSM通信模块,以及各个模块之间的连接。

  2.1 Arduino平台

  Arduino 是一款基于开源的电子原型设计平台。Arduino包含两个主要的部分:硬件部分是可以用来做电路设计的电路板,基于AVR系列单片机和ARM微控制器,有丰富的外设接口和硬件资源;软件部分则是Arduino IDE,是在计算机中的程序开发环境[10]。Arduino的模块化设计,大大简化了电子系统的设计过程。

  其中,微控制器最小系统选用 Arduino Uno,它是基于ATMEL公司的ATmega328P单片机的硬件平台,具有32KB Flash、1KB EEPROM、14路数字输入输出口(其中6路可用于PWM输出)、6路模拟输入接口。同时,Uno预置了Bootloader程序,不需要其他外部烧写器,可以直接通过USB下载程序。

  2.2 加速度传感器ADXL345

  ADXL345是ADI公司最近推出的基于iMEMS技术的3轴、数字输出加速度传感器。ADXL345具有多种可变的测量范围,高分辨率,高灵敏度,超小的封装,超低的功耗,标准的I2C或 SPI数字接口,32级FIFO存储,以及内部多种运动状态检测和灵活的中断方式等特性[11]。所有这些特性,使得 ADXL345有助于大大简化跌倒检测算法,使其成为一款非常适合用于跌倒检测器应用的加速度传感器。图2为ADXL345功能框图。

  

  图2 ADXL345功能框图

  ADXL345 标准的I2C数字接口可以和Arduino Uno的I2C接口方便通信,将ADXL345采集到的人体三轴加速度数据传给单片机进行跌倒检测算法处理,图3给出了ADXL345和单片机之间的 I2C总线典型连接图。ADXL345的(CS) ?管脚接高电平,表示ADXL345工作在I2C模式。SDA和SCL是I2C总线的数据线和时钟线,分别连接到Arduino Uno相应的I2C总线接口(A4和A5)。ADXL345的INT1管脚连接到Arduino Uno的INT0(Pin 2),用来产生中断信号。

  

  图3 ADXL345和单片机之间的I2C典型连接图

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top