江达飞
【摘 要】针对老年人吃药难的问题,以TI低功耗单片机MSP430F5529为核心,结合RTC时钟、SYN6288语言芯片、蓝牙模块等器件设计实现一种能够按时提醒老人吃药的智能药盒。用户可以通过按钮对时间、日期和闹铃进行设置,通过LED显示屏了解老人的进药情况,同时也可以下载相应的APP,使用手机与药盒进行连接,通过APP可以对药物的食用方法及时间进行详细设置,也可以下载得到老人进食药物的相关日志。
【关键词】MSP430F5529;定时提醒;药盒
0 引言
中国老龄化问题的日益严重,很多老年人随着年龄的增长,记性会变得越来越差,按时吃药成为了他们的一个难题,特别是一些孤寡、留守老人,由于没有亲戚好友的照顾,很难按时按量的吃下他们的药物或保健品,特别是有些需要在不同时间吃不同的药,那就变得更加艰难。智能交互药盒专门针对这些老年人进行设计,是一种为了方便老年人服药而设计的药物存储容器,它可以更好地解决高龄人群吃药麻烦的问题,根据对老年人每天吃药的时间进行定时,来实现一天内对老年人每天三次或更多次的定时提醒,提醒使用者服用多种药物中的一种或多种,避免延期服药、漏服、服药量差错等导致的治疗效果降低的问题。
目前市场上已经出现了一些与智能药盒相关的产品,例如早期出现了一些便携式的小药盒,其造型简单,方便携带,但它们容量较小,电路由分立式数字电路器件构成,功能较为单一,而且功耗较大。近年来随着单片机技术的快速发展,以单片为核心的大规模集成电路在电子药盒中得到了广泛的应用,例如,Abiogenix公司开发了一款名为UBOX的智能药盒,它内含14个分区,每个分区储存一次服用的药物量。用户设定好每次吃药时间,一旦到达服药时间后,它便会发出蜂鸣声和灯光,提醒人们吃药。同时,它还能通过蓝牙,发送提示信息到用户的智能手机,并且显示最近的服药时间和次数。
虽然国内外已经有了一些与智能药盒相关的产品,但是他们面向的群体往往不是老年人,药盒设置的方法较为复杂,老年人难以掌握;提示的方式往往使用蜂鸣器,信息过于单一,老年难以掌握药物的服用剂量,另外当药物需要按不同次序被服用时,这些药盒都难以满足要求。
1 工作原理及系统结构
系统的设计方案如图1所示,该系统使用电池进行供电。主控芯片采用TI公司生产的低功耗系列芯片MSP430F5529;语音芯片使用SYN6288,用于提示用户吃药的类别以及用量,单片机使用串口实现对SYN6288的控制;显示单元采用OLED显示屏,其能够提供当前的日期以及用户进食药物的注意事项的显示,采用SPI总线与单片机进行连接;蓝牙模块使用HC-05蓝牙转串口芯片,使用户可以使用手机APP对药盒实现控制;声光报警由LED灯及蜂鸣器所组成,在用户发生误操作或者是在规定的时间没有按时服药时,结合语音模块产生报警信号。
2 智能药盒各模块分析与设计
1)单片机最小系统模块。单片机最小系统模块在整个系统中扮演者控制中心的角色。本设计使用MSP430F5529作为主控芯片,该芯片主频达25MHz,拥有8kb的RAM以及256kb的flash,可以实现多天的日志存储。3个TA0定时器,可以满足多路键盘扫描的控制。支持2路UART串口通信,可实现与SYN6288语音模块和蓝牙模块的数数据通讯。支持3路SPI总线,可以与OLED显示模块连接,显示当前不同的状态。F5529芯片内置RTC时钟,可以配置为日历模式,提供了秒钟,分钟,小时,星期,日期月份和年份,同时它还具备可编程的闹钟功能,可以实现定时提示进食药物的功能。另外,芯片可工作宽电压下,电压支持1.8v到3.6v,拥有四种工作模式,在低功耗模式下工作电流仅仅需要1.1uA,非常适合使用电池供电的场所。最小系统在上电之后首先需要完成初始化工作,本设计在初始化时,首先使能了看门狗定时器,保证机器在发生意外程序崩溃时能及时重启。使能了内部2个串口外设并配置波特率为38400和115200;设置内部定时器每隔2ms产生一次中断,并使能了多个外部中断口,用于键盘值的扫描;置位RTCMODE寄存器,将芯片内部的RTC时钟设置为日历模式,并且使能RTCAMIN分钟闹铃数值寄存器,使RTC每隔一分钟产生一次中断,当中断产生时芯片从当前的睡眠模式切换到全速运行模式,比较当前时间是否与设置的吃药时间一致;初始化完成之后,系统在显示一段时间之后进入LPM3节电模式。
2)SYN6288是一款能够将汉字或英语字符直接转换为语音的一款芯片,它具备性价比高,效果自然等特点,其支持GB2312、GBK、BIG5等多种文本编码方式,可将任意的中文汉字和英文字符翻译成准确自然的语音,同时它内部还集成了智能算法,能够对输入的文本进行分析,可以正确识别出数值、号码、时间等关键词,被广泛应用于车载信息终端语音播器、电子地图、智能手机等等地方。MSP430F5529通过内置的串口实现与SYN6288的通信,波特率使用38400;另外在设计时,考虑到系统使用电池进行供电,因此在没有进行语音合成时需要将SYN6288配置为休眠模式,睡眠模式通过串口发送0x88命令实现。
3)OLED显示技术是目前新兴的一种显示技术,该类型的屏与传统LCD显示方式不同,它无需背光灯,采用非常薄的有机材料涂层和玻璃基板,当有电流通过时,这些有机材料就会发光,传统的LCD是采用LED背光板发光或反射(分为:半透半反、全透、全反)的显示方式;OLED显示技术具备色彩饱和度高、相应时间短、省电等特点为了使得系统续航性更长,因此显示使用OLED而不是传统的LCD或LED。本设计使用SH1106芯片控制的OLED显示屏,芯片支持睡眠模式,在睡眠模式下电流仅为5μA。芯片在进行显示之前,需要对其进行初始化,初始化分为多个过程,首先在上电时需要将RES位置为低电压,并且保持时间在10μs以上,然后再将RES位置高电平,同样需要保持一定的时间,接着通过发送命令设置显示模式以及内部时钟,并在清除完内部RAM之后发送0xAF命令,开启显示功能。SH1106芯片没有内置字库,因此在显示之前需要通过取模软件对需要显示的汉字或英文进行编码,在清除CS位,置位CD后,查询当前芯片是否处于忙碌状态,如果是在空闲状态时调用SPI驱动向显示屏发送字符编码,显示字符。为了进行一步延长电池的使用寿命,显示屏在显示一段时间之后,发送0xAE命令,使其进入休眠状态。
4)HC05模块式一款高性能主从一体的蓝牙串口模块,可以同各种带蓝牙功能的电脑、蓝牙主机、手机等智能终端进行配对。本设计使用该模块来连接手机,实现手机对智能交互药盒的设置。作为连接桥梁,该模块在初始化时需要将KEY端口置为高电平,然后在波特率为38400的状态下,通过发送AT命令,使模块的工作模式设置更改为从模式,并配置波特率为115200。当配置完成时,将KEY端口电平置为低电压,单片使用115200的波特率向蓝牙模块发送数据。
5)键盘使用4*4键盘矩阵,键盘的4列被连接到单片机的外部中断上,当有任何按钮被按下时,中断被触发,系统从睡眠模式进入正常工作模式。按钮的扫描通过F5529内部定时器实现,在定时器中断内部通过行列组合的方法确定按键值,在按键值被确定以后,通过一个包含三态的状态机来确认当前的按钮是处于短按状态还是长按状态。在默认情况下,状态机处于闲置状态,当有按钮被按下时,则进入短按确认状态,如果在1s之内,该按钮被弹起,则说明是短按,状态返回至闲置状态,否则说明是长按,进入长按状态,在长按状态下,如果按钮被弹起,状态机返回至空闲状态。
3 结束语
本文采用了TI公司生产的高性能低功耗芯片MSP430F5529结合SYN6288语音模块、OLED显示模块、4*4键盘矩阵、HC05蓝牙模块等外围设备设计了一款适用于老人使用的智能交互药盒,经整机调试验证,能够实现吃药语音提示、时间显示、手机设置等功能,操作简单,电池使用寿命长,适用于老年人使用。
【参考文献】
[1]吴亚栋,孙亚,曾光.基于AT89S52的智能语音提醒药盒设计[J].安阳工学院学报,2014.
[2]唐立民,李广羽.基于单片机的模块化智能药盒的开发[J].产业与科技论坛, 2011.
[3]龚虹瑞,黄小莉.具有闹钟和短信提示功能的智能药盒设计[J].西华大学学报,2014.
[责任编辑:杨玉洁]