江達飛

【摘 要】針對老年人吃藥難的問題,以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.
[責任編輯:楊玉潔]