秦海亮 戈力娟 汪亨 劉宇恒 張皓然 桑曉凱
摘要:本文設計的基于RFID的智能藥盒以STM32單片機作為核心控制器,采用RC522射頻刷卡模塊讀取IC卡在刷卡后會利用LCD1602液晶顯示屏顯示藥名,用戶可以實現通過按鍵設置系統(tǒng)時間及吃藥時間,在吃藥時間到后蜂鳴器發(fā)出提醒的效果。
關鍵詞:單片機;RFID;智能藥盒
1 設計背景
隨著人們的年齡增大,避免不了身體的各方面技能都有所下降,抵抗力也會隨之下降,導致各種疾病的發(fā)生,有一種疾病就是健忘癥,學名叫阿爾茲海默癥,人們常說的老年癡呆。由于現在環(huán)境不好,許多的老人都有些病痛難免要用藥物來維持[1]。但是很多的老人對于吃藥的時間就會忘記,需要其他人提醒才會想起來,但是不是時時刻刻身邊都有人提醒老人去吃藥,而且吃藥并不是只吃一種藥,現在的藥品都是互相搭配,對于記性不好的老人來說很難記住應該吃哪些藥以及藥量,這也給老人造成了很大的困擾。智能藥盒可以根據個人的作息時間來設定時間,也不僅僅只是體現在吃藥方面,還可以提醒其他要做的事情,而且藥盒的容量也隨之擴大,可以放置更多的藥品[2]。這樣的藥盒更加符合市場的需求,也更加具有實用價值。
2 研究內容
本文所介紹的基于RFID的智能藥盒系統(tǒng),運用單片機技術,可以設置每天早中晚三次吃藥的時間和藥物種類以及劑量,當吃藥時間到了燈閃爍,當藥盒打開,語音播報藥物及劑量,并可判斷老年人是否按時吃藥,如果未按時吃藥可以將提醒信息發(fā)送給老人的監(jiān)護人。在文中對系統(tǒng)的軟件、電路和實物功能、測試等都做了詳實的介紹,根據現在老人健忘癥的人數較多,照顧自己不便,因此本次設計結合單片機與OneNET平臺來實現智能提醒。
3 系統(tǒng)硬件設計
3.1單片機最小系統(tǒng)電路設計
基于RFID的智能藥盒系統(tǒng)中,將STM32F103C8T6單片機作為了核心的開發(fā)平臺,在燒錄程序時可以反復修改、擦除。STM32F103C8T6單片機最小系統(tǒng)電路由復位、起振和電源組成。
3.2顯示電路設計
基于RFID的智能藥盒系統(tǒng)采用LCD1602液晶顯示屏顯示當前的時間。LCD1602液晶顯示屏的顯示原理也是利用了所有液晶顯示屏的統(tǒng)一特性,通過手冊的指令集和時序圖就可以了解到LCD1602的顯示原理,實現內容的顯示。LCD1602液晶顯示屏與STM32F103C8T6單片機從電路上的連接來看是很簡單的,引腳VSS負極與引腳VDD電源正極都要分別與單片機電路中的地和電連接,其中LCD1602液晶顯示屏的V0引腳連接了10K的可調節(jié)的滑動變阻器,在連接后可以調節(jié)這個滑動變阻器實現調節(jié)顯示屏的電壓,從而控制顯示屏的分辨率和背光亮度。而與單片機的PB8口和PB15口相連接的8個引腳是顯示屏的數據線,用于顯示數據。另外的RS引腳、RW和EN引腳都是用于讀寫、使能等作用的引腳,實現LCD16032液晶顯示屏電路的連接。
3.3 RFID模塊電路設計
系統(tǒng)采用RC522 射頻刷卡模塊采用刷卡的方式讀取藥名,每一張IC卡對應一種藥品名稱,在刷卡后會顯示藥品名稱。RC522刷卡模塊,其電路很容易,采用3.3V電壓供電,但是本系統(tǒng)的供電電源為5V,因此需要變壓模塊將5.5V電壓轉為3.3V。模塊的RST引腳與單片機P3.3口相連,MISO引腳與單片機的P3.4口相連,MISO、 MOSI、SCK、SDA引腳依次與單片機的PA3、PA2、PA1及PA0口相連,8引腳和GND引腳與變壓模塊相連接。
3.4 按鍵電路設計
獨立按鍵的原理就是通過電平的變化來判斷被按下的按鍵,在按鍵被按下的時候,與單片機連接時,單片機的I/O口都會有上拉電阻,如果這個I/O接口輸出了高電平,在我們按下了這個按鍵后這個I/O口的電平就會自動變成低電平,因此通過代碼中來判斷I/O口的高低電平狀態(tài)就可以了解到按鍵是否被按下。
3.5 聲光報警電路設計
在基于RFID的智能藥盒系統(tǒng)設計中,在吃藥時間到后就會通過蜂鳴器與LED報警電路發(fā)出聲光報警,提示用戶吃藥。在單片機的電路中,我們主要采用三極管的截止區(qū)和飽和區(qū)實現開關的功能。NPN類型的驅動電路,在高電平的情況下有效,就是當單片機的I/O口輸出的是高電平的情況下蜂鳴器會發(fā)出聲響;PNP型的驅動電路在低電平的情況下有效,就是單片機的I/O口輸出低電平的情況下蜂鳴器發(fā)出聲響。
3.6 與ONENET通信電路設計
由于要將老人吃藥的時間、藥名以及用量發(fā)送到OneNET網絡平臺,家屬通過OneNET即可了解到老人的吃藥情況,而與OneNET的功能是利用ESP8266 WIFI模塊實現的。ESP8266 WIFI模塊與OneNET利用TCP的協(xié)議連接方式進行連接,在建立好WIFI熱點后,通過手機搜索對應的熱點名稱,輸入密碼后就可以連接。
4 系統(tǒng)軟件設計
本系統(tǒng)中選用的KEIL軟件開發(fā)軟件內部就包含了各種接口軟件、開發(fā)工具組和環(huán)境的數據庫等支撐代碼編寫的各類工具。
4.1 系統(tǒng)主程序設計
(1)初始化程序,在系統(tǒng)程序中包括對RFID射頻模塊、顯示屏及串口的初始化,在完成初始化之后才能進入各模塊的功能程序及子程序的調用;
(2)利用STM32F103C8T6內部的RTC獲取時間并且顯示時間;
(3)進入到判斷,在程序中讀取按鍵,用來設置吃藥時間;
(4)吃藥時間到后發(fā)出聲光報警,提醒用戶吃藥;
(5)連接WIFI后,將吃藥信息發(fā)送至ONENET物聯(lián)網平臺。
4.2 顯示程序設計
主程序直接調用LCD1602液晶顯示屏的子程序即可實現吃藥時間等內容的顯示。LCD1602液晶顯示屏程序代碼需要經過信號的檢測、延時等一系列流程實現顯示程序。
4.3 RFID射頻模塊流程設計
RC522刷卡模塊的程序開始后,首先等待用戶刷卡,在用戶刷卡后開始識別卡片,進行尋卡,當確定卡片無誤時,會選定卡片,然后讀取卡的ID,進行ID的匹配,如果ID匹配失敗,則會重新讀取卡的ID,如果匹配成功,刷卡就會成功。
4.4 OneNET平臺
在基于RFID的智能藥盒系統(tǒng)中,利用ESP8266 WIFI模塊將老人吃藥的時間、藥名以及用量發(fā)送到OneNET網絡平臺,家屬通過OneNET即可了解到老人的吃藥情況。在搭建OneNET平臺時首先需要執(zhí)行注冊OneNET個人賬號。
在OneNET平臺的首頁,可以點擊“開發(fā)者中心”可以進入到開發(fā)者中心的界面中,在開發(fā)者中心可創(chuàng)建產品,即我們需要創(chuàng)建的平臺項目。
在已經創(chuàng)建好的產品列表中可以打開智能藥盒的產品,可查看老人吃藥的時間、藥名以及用量,家屬通過OneNET即可了解到老人的吃藥情況。
5 結語
在本文中對基于RFID的智能藥盒系統(tǒng)的硬件電路和軟件代碼的設計與調試后,經過實物的測試,系統(tǒng)實現利用IC卡了解藥名、吃藥時間的設置功能,到時間提醒功能及與OneNET實現物聯(lián)網通信等功能。
參考文獻
[1]王振運,孟立凡,李菠.多功能基于RFID的智能藥盒系統(tǒng)設計與實現[J].電子世界,2016(01):189-190.
[2]陳燕萍,梁惠萍,李欣陳.老年人智能藥盒設計研究[J].藝術科技,2016,29(12):24.