聂影 邵世云龙
摘 要:随着当今社会老龄化进程的逐步加剧,我们在新闻中经常能看到老人跌倒了,无人扶,进而导致老人的死亡。本文提出了一种基于ADXL345倾角传感器的跌倒检测与报警系统。通过ADXL345倾角传感器实时采集老人在日常活动中产生的倾角数据,然后将数据送到单片机STC89C52进行处理,并判断老年人的运动状态,另外运用DS18B20实时检测人体温度。当系统检测到跌倒发生时,发出报警声音提醒老人和周围的人,并且能够将报警短信发送到相关人员手机上。
关键词:老人防跌系统;单片机STC89C52;ADXL345倾角传感器
一、研究背景
21世纪被称为“银发世纪”,人口老龄化是当今社会面临的重大挑战之一。随着全球人口老龄化的到来,失独老人的比例也越来越大。年亲人忙于工作,在外打拼。如果父母均在还能相互扶持,但如果只剩下单亲,而经济条件又不允许请保姆看护的情况下,老人的安全问题就有了很大的隐患。
据世界卫生报告,跌倒已经成为老年人致死的大概率事件。世界卫生报告数据如下,全球每年有约40万的老人死于跌倒后无人看护、及时就医。其中60岁以上的占50%以上,70岁以上的占40%。世卫组针对居住在社区的65岁及以上的老年人进行调查,发现其中30%在一年中发生过跌倒,80岁以上的则达到了50%。大约70%的老人,都因跌倒后无人送医而落下残疾或者直接死亡。由于老年人的身体恢复慢,跌倒会严重影响他们的生活质量,衣食住行等都很不方便,而且长期就医也会到来沉重的经济负擔。因此我们希望设计出一种能感应老年人是否跌倒,以及能监考老人体温的检测器。在发现老年人跌倒或高烧等症状后,能够及时通过GSM发出求救信号通知其家人或医护人员,使老年人能够在第一时间得到及时的救助,从而降低伤害,提高老年人的生活质量。
二、方案设计
本设计由STC89C52单片机电路+ADXL345加速度传感器电路+按键电路+蜂鸣器报警电路+DS18B20温度传感器电路+LED灯电路+GSM模块电路+电源电路组成。
(1)板子竖直放置的时候,蜂鸣器不报警,板子歪倒一定角度,则蜂鸣器鸣叫报警。一段时间约15s未回复正确状态,GSM发送报警信息给手机:Help me!!。
(2)如果温度超过38度,蜂鸣器报警,持续温度过高约15s左右,同时短信报警:has a cold。
(3)设计带有误报警按键,蜂鸣器报警的时候,如果老人认为是误报警,则按键按下,蜂鸣器停止报警,如果持续问题存在还会报警。
(4)短信处理过程有指示灯显示。
(5)GSM模块是SIM800A,能在芯片检测到跌倒或者高温后发送信息给家人或者医护人员,使老人第一时间能够得到救助。
本系统具体框图如图1所示:
STC89C52单片机最小系统电路由复位电路、时钟电路和电源电路。拥有这三部分电路后,单片机即可正常工作。单片机最小系统原理图如图2所示。
如图3所示,本设计选择倾角传感器ADXL345模块,能够实时检测相关的状态信息。ADXL345是一款小而薄的超低功耗3轴加速度计,分辨率高,测量范围达±16g。数字输出数据为16位二进制补码格式,可通过SPI(3线或4线)或I2C数字接口访问。ADXL345非常适合移动设备应用。
DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。如图4,DS18B20传感器耐磨耐碰,体积小,使用方便。封装形式多样,是电子设计中最为常见的一款温度测量传感器,适用于各种狭小空间设备数字测温和控制领域。
三、系统软件设计
完整的控制系统由硬件系统和软件系统组成,前面主要阐述了系统的硬件电路的设计方案,若要充分发挥系统的设计功能,则需要支持硬件平台的软件程序,即烧写到单片机内部的程序。
本设计中单片机开发环境是Keil uVision5,Keil uVision5开发软件是同时支持51系列单片机,以及STM32系列单片机,是目前最主流的程序开发软件,Keil uVision5是STC公司推出最新一代单片机处理器的编译、连接和调试集成环境。它可以降低开发周期,从而减少很多成本。Keil uVision5可支持Windows的多种开发环境界面,软件可以使用C/C++语言。Keil uVision5与C语言匹配效率很高,且能检测C语言编写的语法逻辑错误,能够非常便捷地编程、查错、更正,使使开发者非常方便地用C语言进行程序编程。
四、系统调试
在搭建调试平台后,需要对软件程序进行调试。若程序调试通过后,就可验证系统功能。检查倾角超过45度后,系统是否能够发送信号。若功能有问题,需要找到问题所在,多次重复调试,直到问题解决,所有功能正常运行为止。
软件调试步骤如下:
(1)在Keil5软件中先创建一个工程:单击菜单栏中的“工程”,输入新建工程名“老人防跌报警装置”,并保存;然后器件选择“Atmel”目录下的“AT89C52”。
(2)新建用户源文件:新建一个空白文档,保存为“老人防跌报警装置.c”,在空白文档中编写源代码。再将.c文档添加到工程文件中。
(3)程序编译和调试:程序编写完成后,单击编译按钮,系统会对文件进行运行。一般编写的程序,会出现一些错误或警告。此时可以在输出窗口中可看到提示信息,根据提示找出错误行并改正。如此多次重复操作,直到提示没有错误为止。
(4)若程序编译无错误后,链接生成.HEX文件,将生成的.HEX文件通过串口烧写到单片机中。烧写成功后,开始验证系统功能是否满足要求。测试倾角报警功能,高温报警功能等是否正常。若功能有问题,需要找到问题所在,多次重复调试,直到问题解决,所有功能正常运行为止。
经过测试,系统测试正常。倾角歪倒超过45度,则蜂鸣器鸣叫报警。一段时间约15s未回复正确状态,GSM发送报警信息给手机:Help me!!。温度超过38度,蜂鸣器报警,持续温度过高约15s左右,同时短信报警:has a cold。通过此设计,大大减少了老人独自在家,跌倒或发烧无人照看的几率,采取措施有效挽救老人的生命!
参考文献:
[1]徐驰宇,齐庆堃,雷巍,王峰.智能导盲拐杖设计[J].电子世界,2018(07):167-169.
[2]袁杰.基于视觉的老人跌倒检测系统设计与研究[D].江西理工大学,2018.
[3]俞政.基于ZigBee和以太网的社区老人跌倒监护系统的设计与实现[D].华南理工大学,2018.
[4]张墅,陆渊章.高职院校学生电子设计创新社团的实践研究[J].职业技术,2020,19(07):71-75.
[5]苗文刚.基于倾角传感器的塔吊垂直度分段测量系统[D].河北工业大学,2015.
基金:1.校级课题《信息化教学背景下的智能控制技术专业课程改革与实践》(项目编号:2019JG03):2.省质量工程教改建设省级课题《工业4.0背景下的电气自动化专业改革探究》(项目编号:GDJD-2018-63);3.省级课题青年创新人才类(自热科学)《5G时代下万物互联的智慧交通模型研究》(项目编号:2019GkQNCX014);4.攀登计划《基于人口老龄化现状而制作的老人跌倒安全预警装置》(项目编号:pdjh2020a1447);5.攀登计划《基于Arduino控制的可语音识别的智能分类垃圾桶》(项目编号:pdjh2020a1444)