魏東杰,劉美麟,張峻山,田官權
(1.西南科技大學 信息工程學院,四川 綿陽 601010;2.西南科技大學 制造科學與工程學院,四川 綿陽 621010)
隨著科技的快速發展,人們的生活漸漸智能化,讓科技走進民生乃大勢所趨,而醫療又是民生的最大需求之一。目前對于一些采取人工取藥方式的醫院,存在勞動強度較大、處方處理速度慢等問題,因此研究智能設備服務于醫院乃大勢所趨[1]。對此現狀,利用STM32作為主控,運用NB-IoT技術、檢測技術、云數據庫技術、圖形UI應用程序開發、微信小程序開發等研究了一種自動揀藥裝置,用于管理藥品信息并能實現對多種藥品的自動上藥、儲藥與揀藥過程的管理與監控,提高藥房的運行效率。
本文揀藥系統整體采用分布式控制系統結構進行設計,這種結構的基本思想是分級管理、配置靈活。從設備級到管理級共4個分級,分別是管理級、監控級、控制級、設備級。系統整體框圖如圖1所示。

圖1 系統整體框圖
管理級包括藥物管理數據庫,手機端小程序和PC端人機交互界面。根據系統所面臨的實際業務及性能需求,選擇合適的數據庫存儲藥品信息;使用Qt設計合適的PC端UI界面,讓醫護人員能方便實現上藥取藥等功能;使用微信小程序開發工具設計小程序,實現患者端取藥狀態監測與藥方查看等功能。
監控級便是物聯網平臺,物聯網平臺選用阿里云,其為用戶提供了安全可靠的通信能力,其支持設備數據采集上云,規則引擎流轉數據和云端數據下發設備端,在揀藥系統中發揮著數據傳輸的重要作用[2]。
控制級采用STM32主控,通過控制步進電機和傳送帶實現上藥,通過GPRS模組連接阿里云,完成實時上報數據到云端的操作,通過與Qt界面通信和手機端小程序實現取藥。
設備級為揀藥系統裝置,其由上藥部分和取藥部分組成。根據特性與參數,選擇滿足本項目需求的型號,運用運動控制技術,通過智慧揀藥裝置的電磁閥和步進電機等對系統進行操作。
揀藥系統機械結構設計如圖2所示,主要由三維移動滑臺模組構成自動上藥部分,水平傳送帶組成該系統的儲藥以及取藥部分,在無用藥需求時藥品存儲在傳送帶上,當醫生操作管理系統取藥時,相應藥品的傳送帶在系統控制器的控制下向前移動合適的距離,使得藥品掉落,完成出藥。

圖2 系統機械結構
主控采用STM32F1系列單片機。對于揀藥系統的自動上藥及取藥的控制需求,F1系列單片機能夠較好滿足,同時不會因資源冗余而造成不必要的浪費。此外,STM32支持基于Paho MQTT協議棧連接阿里云,為揀藥機連接阿里云物聯網平臺提供了保障。
系統設計時選用GPRS模組。相比WiFi模塊而言,GPRS模塊連接網絡更為方便,能滿足揀藥系統的移動性需求。GPRS模組采用安信可A9G模組,該模組不僅能通過串口發送指令實現信息發送、語音通話等功能,還能連接物聯網。由于其功能豐富,故被廣泛應用于諸多領域。模組電路連接如圖3所示,左側為A9G芯片、右上為SIM卡槽、右下為咪頭,采用該模組可以將STM32連接阿里云物聯網平臺,同時通過AT指令實現數據的發布與訂閱。

圖3 GPRS聯網模組
揀藥系統采用TCRT5000傳感器實現對在傳送帶上藥物的監測。傳送帶末端傳感器用于檢測系統是否處于上藥狀態并核實上藥數量;傳送帶前端傳感器用于檢測控制調取規定數量的藥品。TCRT5000傳感器具有高靈敏度等特點,且其輸出信號經過施密特電路整形后信號穩定可靠,盡力保證藥品檢測時不出現誤檢[3]。此外,在上藥過程中為防止機械爪把藥品抓壞,特加入了壓力傳感器模塊,當壓力傳感器檢測到壓力后停止舵機轉動,有效保證藥品完好無損。
揀藥裝置端程序流程如圖4所示。在裝置啟動后,系統自動檢測是否插入SIM卡,若不存在則提示用戶;若裝置內存在SIM卡,且該卡功能正常,裝置自動接入阿里云。裝置成功接入阿里云后便開始不斷執行信息上報、信息獲取并顯示、觸發上藥及取藥等一系列操作。

圖4 藥盒端程序功能
對于上藥裝置,機械爪上的攝像頭通過識別藥盒上特定的條碼,利用步進電機組成的三維立體裝置將藥品放置在對應傳送帶上,并把藥品信息上傳至云端。對于取藥裝置,當客戶使用微信小程序進行購藥、取藥操作時,相應的傳送帶便會移動一定距離使藥品掉落,通過傳送帶上傳感器識別的次數來計算剩余的藥品并上傳至云端。對于Qt界面,顯示藥品信息,方便用戶使用。
揀藥裝置與微信小程序依靠阿里云物聯網平臺聯系在一起,通過MQTT協議的訂閱/發布完成揀藥裝置端與小程序端的信息交互[4]。MQTT發布、訂閱信息相對更簡單、容易。使用該協議,消息發送與接收方均不受時空限制。通過阿里云平臺,揀藥裝置與小程序可以實現遠程連接、完成數據傳輸以及遠程控制等。
標準的MQTT協議一般直接訂閱雙方相應的主題,然后向主題發布消息。但需要注意的是,阿里云物聯網平臺的主題訂閱設有權限,并且在訂閱主題之后還需要設定相應的規則轉發數據,否則即使訂閱了相應的主題,還是不會收到控制端或其他設備端發送的消息。通過使用規則引擎—云產品流轉,可實現標準MQTT的相互收發。
微信小程序提供有云開發功能,通過使用其提供的云數據庫、云函數等,開發者可以較為容易的滿足數據存儲等需求[5]。在小程序中,通過調用MQTT相關庫,可以較容易連接阿里云平臺。小程序的功能如圖5所示。小程序自動連接阿里云物聯網平臺并獲取云端數據,顯示在主界面。由主界面可以完成對藥物信息的查看和選購。在信息管理界面可以實現個人資料的設置,保護病人隱私[6-8]。

圖5 小程序端程序功能
針對當前社會醫院藥房人工取藥效率低下等問題,文中設計了一個應用NB-IoT技術、檢測技術、云數據庫技術、圖形UI應用程序開發、微信小程序開發等可實現相關功能的智慧揀藥系統,該系統采用PC端界面及微信小程序進行管理與監控,便于醫生及用戶操作和查看信息。系統采用分模塊設計,技術方實施較為簡單,穩定性強。隨著生活的智能化,智慧揀藥系統具有較好的應用空間[9-10]。