0 引言
目前,社会老龄化及独居老人的安全问题已引起人们广泛重视。老年人视力差、记忆力减弱,自主用药困难。据报道,每年由于误食药物引起的安全事故超过百万起。老年人较差的视力和记忆力也使得他们在自主寻找药品及按时服药方面存在一定的困难,忘服或者误服药物都会危害到老人的身体健康。基于此,设计了一种具有分类提醒功能的智能药箱。
作品主要由可移动的车体和分类放置药品的箱体两大部分组成,车体通过麦克纳姆轮可遥控四向运行进行送药服务;箱体内设处理器,外接监测传感器、时钟芯片、语音模块、通信模块及门控执行机构,具有分类放药、定时提醒、自动开门、语音互动、药箱环境监测、可遥控移动等功能;利用APP平台还可将老人吃药的情况及时告知子女,并辅有温馨提醒、语音互动、紧急求救等功效,为老人提供智能服务,安全管理老人吃药问题。
1 系统组成及功能规划
整个系统是由分类放置药品的箱体和可移动的车体两大部分组成,如图1所示。
图1 系统总体设计方案
箱体设置有多个独立的小药箱,可放置多种不同的药物,并可根据医生建议来设置吃药时间间隔,当吃药时间到,相应的药箱门会自动弹开,并进行语言提醒。在放药、取药时,通过语音模块可以得到相应的语音回馈。当药箱门长时间处于打开状态,即老人未在规定时间内服药时,系统会将老人未服药的情况通过WiFi和短信方式告知子女。此外,使用温湿度传感器,可将温湿度数据显示在APP界面上,实时监测药物储存环境,防止药物霉变。当家中无人,而老人又遇到突发情况需要救助时,可按下求救功能按键立即发送求救信息通知子女。
车体安放了一个协处理器,用以处理遥控器发出的蓝牙信号,再根据信号驱动电机,实现车体移动。
系统功能规划如下:
(1)分类定时功能。通过手机APP为智能药箱分类设置吃药时间,到达预定时间自动打开箱门并进行语音提示。
(2)环境监测功能。箱体内设有温湿度传感器,实时监测药物储存环境,防止药物霉变。
(3)语音互动播报功能。系统中设置的语音模块,可以在放药、取药时进行语音提醒,在系统开启和关闭时进行温馨提示,也可以与老人进行语音互动。
(4)通信功能。若老人未取药,系统将把老人未服药的情况通过短信和app告知给子女。
(5)可遥控操作功能。智能药箱可由老人通过蓝牙遥控器控制其自由运动,方便老人及时用药。
2 系统功能设计
2.1 箱体设计
2.1.1 主控制器
主控制器是智能药箱的核心,为了保证可靠的驱动信号和有条理的通信时序,采用STC15系列单片机。该系列单片机是STC生产的单时钟周期的单片机,是新一代的8051单片机,指令代码完全兼容传统8051,但速度快8~12倍,内部集成高精度RC时钟,有三路CCP/PWM/PCA,两组超高速异步通信端口,足以满足该设计的控制要求。
2.1.2 分类定时功能
使用DS1302时钟模块获得精确的时间信息,单片机可通过串行方式与之通信。在单片机中设置一个二维数组用以保存各个药物的用药时间,在每一次读取时钟模块时,分别与各药物的用药时间进行比对,若相同则弹开对应的小药箱,语音通知老人吃药。DS1302的电路原理图如图2所示。
图2 DS1302电路原理图
2.1.3 环境检测功能
DHT11是一款含有已校准数字信号输出的温湿度一体的传感器,它使用高分子湿敏电阻作为传感元件,经过单片机的采集处理转化成数字信号输出。在此系统中用来采集温湿度参数,随后将信息反馈给主控制器,再通过WiFi模块传送到服务器上,可让其子女通过app查看药箱环境,防止药物霉变。
2.1.4 语音互动播报功能
为实现该功能,采用LD3320A语音识别模块。该模块可支持550句对话,实现人机对话,播放MP3功能,支持8位并行接口和SPI串行接口两种连接驱动方式。通过修改剧本即可实现老人和智能药箱的对话,对于老人发出的语音命令,可直接传输到单片机上,让智能药箱完成相应功能,大大方便老人的使用。该模块电路原理图如图3所示。
图3 LD3320电路原理图
2.2 车体设计
车轮采用麦克纳姆轮结构,其外围是多个围绕成一圈的小滚轮,每个小滚轮与车轮滚动方向成45°角,在前进或后退的时候会形成两个方向上的力,配合4个轮子不同的转向,将会使车体完成各方向的移动。
采用蓝牙对车体遥控,自制一蓝牙遥控器可在小范围内控制车体。采用H桥驱动电机,可以让电机正反转,配合麦克纳姆轮即可实现多方位移动,便于老人控制。
图4 电机驱动电路图
2.3 通信设计
2.3.1 短信通知
采用SIM900A模块,该模块内嵌TCP/IP协议,配合着串口AT指令来向指定号码发送短信。经过程序的提前设定,该模块会在特定的条件下触发短信发送,从而实现数据传输。当老人在规定时间内没有吃药,就会触发老人未吃药事件,在该事件的处理中加入发送短信至其子女的功能,就可让其子女获知,从而采取相应措施。
2.3.2 WiFi通信
ESP8266是典型的WiFi模块,支持串口AT指令集,支持串口透传,IO控制等。故可将数据传输到服务器中,再通过APP来接收,即可实现远距离传输数据。
利用单片机的串口将药箱周围环境、老人服药情况通过WiFi模块传送到服务器,再通过C程序进行读取,分析等操作,然后写入到数据库。再通过Servlet搭建WEB服务器来作为APP的数据后台,手机APP通过访问Servlet即可获取到这些信息,完成数据读入。
2.3.3 蓝牙通信
采用主从机一体的蓝牙模块HC-05,配备成功后只需当作串口使用即可。蓝牙通信距离短,但适合老人在小范围内操纵车体的移动,便于拿药。
2.4 软件设计
2.4.1 主控制器软件设计
主控制器软件部分需要完成各模块的初始化。初始化两个串口用以WiFi模块和短信模块的驱动,此外还需要根据相应的串行协议完成对时钟模块、温湿度模块、语音模块的初始化。在主函数中循环读取时间、温湿度并实时发送相应数据到服务器中,当用药时间到、未吃药、温湿度过阈值等事件到达,就调用相应的处理函数。主控制器软件流程图如图5所示。
图5 主控制器软件流程图
2.4.2 协控制器软件设计
协控制器接收蓝牙发送的信号,需要简单处理后得到相应控制命令驱动电机,低端8位处理器就可符合要求。软件中仅需开启一个定时器模拟出两个PWM波分别控制两电机转速,最后再分别测试出占空比参数用以各方向的移动。
2.4.3 蓝牙遥控器软件设计
蓝牙遥控器需要检测按钮输入,然后通过串口发送控制命令,低端8位处理器就可符合要求。软件中开启一个定时器维持系统节拍,定时扫描按键状态,当按键按下就串口发送出相应控制命令即可。
2.4.4 应用层软件设计
利用HTML5+进行开发安卓APP。HTML页面负责内容实体;CSS对页面样式进行优化;JS负责与用户交互,并调用原生APP的函数。前台使用HBuilder工具进行APP的开发,其兼容Eclipse的相关插件;后台使用Servlet技术开发,配合Apache的Tomcat使用,即可搭建成一个后台服务器。这样,前台通过访问这个服务器,可以实时获取到数据库的相关数据,APP端就可以进行实时操作。
开发好的安卓APP如图6所示。
图6 APP界面
3 结语
智能药箱可实现遥控送药服务、智能管理用药时间、智能语音提醒、智能信息显示等多种功能,减小了空巢独居老人误服、漏服药及药物霉变等安全隐患,可在养老院、医疗护理场所进行普及,具有一定的推广应用前景。
参考文献
[1]王霞.中国人口结构变动与老龄化问题研究[J].济南大学学报(社会科学版),2015,25(2):66-69.
[2]宏晶科技有限公司.STC15F100系列单片机器件手册.
[3]刘振.基于STM32智能家居的无线网关设计与实现[D].杭州:浙江理工大学,2016
[4]俞磊,陆阳,朱晓玲,等.物联网技术在医疗领域的研究进展[J].计算机应用研究,2012,29(1):1-7.
(作者陈豹系安徽工业大学学生)