劉 剛,凌 強,徐 駿,李博倫,李 峰,王 嵩
(中國科學技術大學 自動化系,安徽 合肥 230027)
基于STM32的輸液監控系統設計與實現*
劉 剛,凌 強,徐 駿,李博倫,李 峰,王 嵩
(中國科學技術大學 自動化系,安徽 合肥 230027)
為實現靜脈輸液的智能化與網絡化,研制了一套以STM32為核心的輸液監控系統。該系統具有液滴檢測、液滴速度顯示與控制、余液顯示、無線通信和聲光報警等功能。系統采用紅外對管檢測莫菲氏滴管內的液滴滴落情況,用步進電機及配套傳動裝置控制液滴流速,用OLED顯示屏顯示液滴速度及剩余液量,用WIFI232模塊實現無線通信。若發生異常情況,利用蜂鳴器和LED燈進行聲光報警,相關人員可根據提醒及時處理。該系統具有很好的應用前景。
輸液監控;STM32;無線通信;步進電機
靜脈輸液是臨床醫學中最常用的輔助醫療方法之一。據統計,80%以上的住院患者接受靜脈輸液治療[1]。在患者進行輸液治療的過程中,醫護人員會根據藥液和患者病情選擇適宜的輸液速度。目前,大部分醫院仍然依據醫護人員的經驗通過人工調整輸液管的流速調節器來控制輸液速度,這具有很大的不確定性。同時,患者、陪侍或醫護人員需要監視藥液余量情況,這增加了護理人員的工作強度和意外情況發生的可能。
本文研制了一套基于STM32的輸液監控系統來替代人工監護。系統采用紅外對管檢測莫菲氏滴管內的液滴滴落情況,用步進電機及配套傳動裝置控制液滴速度,用OLED顯示液滴速度及剩余液量,用WIFI232模塊實現與PC機的無線通信。通過觀察上位機的監控管理軟件,醫護人員可實時掌握多個病人的輸液進程。若發生異常情況,蜂鳴器和LED燈會進行聲光報警,相關人員可根據提醒及時處理。該系統不但提高了患者輸液時的舒適程度,提高了靜脈輸液的治療效果,還降低了護理人員的勞動強度,減輕了醫護人員的工作壓力。
1.1 系統組成
基于STM32的輸液監控系統的結構組成如圖1所示。主要包括紅外液滴檢測模塊、按鍵模塊、步進電機及其驅動電路、輸液關斷傳動裝置、無線通信模塊、顯示模塊、報警模塊等。該系統采用性能優越、功耗低的32 位微處理器STM32F103ZET6作為控制核心。

圖1 系統的結構組成
1.2 工作原理
系統的工作原理:初始狀態時,步進電機控制傳動裝置擠壓關斷輸液管,此時液滴無法滴落。醫護人員根據藥液屬性和患者情況設定輸液速度,微處理器控制步進電機順時針轉動,步進電機通過齒輪組帶動傳動裝置的絲桿-螺母機構轉動。傳動裝置逐漸減緩對輸液管的擠壓,因此,輸液管內越來越多的藥液通過擠壓處。液滴檢測模塊的紅外對管實時監測液滴滴落情況,檢測電路將紅外對管監測到的液滴滴落情況轉換為高低電位傳送給微處理器處理。微處理器將高低電位情況轉換為實時速度并設定速度比較,當實時速度等于設定速度時,微處理器控制步進電機停止轉動,與步進電機相連的傳動裝置也停止運動,流經輸液管擠壓處的藥液流量恒定,輸液速度不再變化。微處理器將輸液速度、藥液剩余量以及預測輸液結束時間等數據通過無線通信模塊傳送給PC機,醫護人員觀察監控軟件管理界面的顯示情況進行處理。患者通過OLED顯示模塊觀察輸液速度和預測輸液結束時間等情況。如若需要,患者可根據自身情況通過按鍵向上或向下調整輸液速度。微處理器通過控制步進電機順時針或逆時針轉動來增加或降低輸液速度。當輸液剩余量低于設定值時,微處理器通過控制步進電機逆時針轉動來關斷輸液,通過LED燈閃爍和蜂鳴模塊報警來提醒患者,監控管理軟件通過高亮顯示剩余輸液量來提示醫護人員進行處理。
由系統組成可知,系統包含了較多的硬件單元,本文重點介紹紅外液滴檢測、輸液關斷、無線通信三個核心單元。
2.1 紅外液滴檢測
液滴信號的精確采集是計算滴速的前提,信號采集既要確保不會漏檢,又要符合衛生需要,不能接觸藥液。為此,采用紅外光電傳感技術,將紅外對管的發射管和接收管分別安裝在莫菲氏滴管的兩側[2]。紅外對管供電正常工作時,發射管發射紅外光,紅外光穿過莫菲氏滴管照射到接收管,接收管將接到的光強轉換為電流。若莫菲氏滴管內無液滴滴落時,紅外光光強損失小,接收管轉換的電流較強;莫菲氏滴管內有液滴滴落時,紅外光光強損失大,接收管轉換的電流較弱。利用此原理,設計如圖2所示的電路,將電流變化轉化為電壓變化,從而將藥液滴落情況轉換為電壓的變化情況。

圖2 紅外液滴檢測電路圖
如圖2所示,在5 V電源系統供電的情況下,紅外發光二極管的發光頻率由音頻譯碼器LM567決定。當莫菲氏滴管內無液滴滴落時,接收管能接收到紅外發光二極管發出的光,從而產生較強電流。電流足以使接收管內的三極管導通,三極管所在支路產生與二極管所在支路頻率相同的電流。經過雙運算放大器LM358的放大和反相,音頻譯碼器LM567的3腳輸入信號與中心振蕩信號(圖中輸出信號)一致,根據音頻譯碼器LM567的工作原理,8腳輸出為0 V低電平。當莫菲氏滴管內有液滴滴落時,接收管接收到紅外發光二極管發出的部分光,從而產生較弱的電流。電流不足以使接收管內的三極管導通。雙運算放大器LM358的U1輸入端輸入信號與發光二極管的電流頻率不一致,故而音頻譯碼器LM567的3腳輸入信號與中心振蕩信號不一致,根據音頻譯碼器LM567的工作原理,8腳輸出為5 V高電平。
當藥液不斷滴落時,音頻譯碼器LM567的8腳輸出端口形成一個標準的矩形波正向脈沖。低電平表示無液滴滴落,高電平表示有液滴滴落。將LM567的8腳輸出端連接到STM32的I/O端口上,利用定時器的輸入捕獲功能可測量出兩個上升沿的時間間隔,也就是兩個液滴之間的時間間隔,從而計算出液滴滴落速度。
2.2 輸液關斷
系統采用Φ15mm步進電機和絲桿-螺母機構作為輸液關斷裝置。STM32微處理器通過L293D驅動步進電機轉動,與步進電機相連的齒輪組也隨之轉動。絲桿-螺母機構固定在齒輪組最后一級的齒輪上。固定螺母的橫向轉動,螺母就會在絲桿轉動的情況下軸向移動。輸液關斷裝置正是利用螺母的軸向移動來擠壓輸液管,達到控制輸液速度的目的。
由于STM32的負載能力有限,不能直接驅動步進電機轉動,所以有必要在STM32和步進電機之間加上步進電機驅動電路,增加單片機帶負載能力。系統采用L293D作為驅動芯片,該芯片完全能滿足驅動需求。
步進電機是純粹的數字控制電動機,由電脈沖信號即可轉變成角位移。由于選用的Φ15mm步進電機為兩相四線步進電機,故STM32須輸出四路脈沖信號控制電動機轉動相位角。四路脈沖信號要按照步進電機的工作原理輸入,本系統采用四相四拍脈沖輸入,輸入波形如圖3所示。

圖3 四相四拍脈沖波形
2.3 無線通信
系統上位機和下位機間的信息交換方式采用串行通信,通信的轉換方式采用RS232全雙工配置。下位機STM32的異步串行接口與RS232標準串行通信電路之間通過通信接口芯片MAX3232轉換信號電平,再經過USR-WIFI232芯片實現串口到WiFi數據包的雙向透明轉發,上位機安裝WiFi數據收發模塊,從而實現無線通信[3]。上位機可收發多個下位機的數據,實現監控的網絡化。無線通信單元的外部電路連接如圖4所示。

圖4 無線通信單元的外部電路連接
上位機主動查詢下位機的應答信號,若一次收不到應答,則再發送一次查詢信號;若連續三次收不到應答,則說明系統出現故障,自動報警。如果系統給出應答,則雙方按照規定的通信協議進入數據通信狀態。 該無線通信單元安全可靠、抗干擾能力強,室內通信傳輸距離可達50~60 m。
該系統的軟件部分可分為上位機監控管理軟件和嵌入式程序兩部分。其中,嵌入式程序包括主程序、滴速測量、速度控制、按鍵設置、OLED顯示、無線通信、報警等程序單元。本文只介紹上位機監控管理軟件、滴速測量子程序和無線通信子程序三個重點模塊。
3.1 上位機監控管理軟件
上位機監控管理軟件用于幫助醫護人員遠程實時監控患者的輸液情況,通過設定和修改相關參數改變輸液進程。
上位機監控管理軟件是在VS2013平臺下用C#語言編寫而成,其結構組成如圖5所示。B/S模式的前臺網頁服務程序由三部分組成:系統登錄界面程序、系統監測界面程序和系統用戶操作界面程序。對登錄的用戶采取權限處理,權限不同登錄的界面不同,進而操作也不同。C/S模式下的Windows后臺服務程序,通過Socket通信與WiFi進行數據傳輸,并且通過SQL語句把從服務器上得到的數據存入數據庫,對數據進行進一步加工,生成可視化內容供醫護人員參考,進而做出相應決策。
3.2 滴速測量子程序
由前述可知,液滴檢測電路將液滴滴落的情況轉換為高低電平信號,低電平代表無液滴滴落,高電平代表捕獲到液滴滴落,液滴不停地滴落形成PWM波形。利用STM32的定時器可實現PWM的周期測量。簡單地說就是,定時器檢測到上升沿時開始計數,當檢測到下一次上升沿時,將當前計數值存放到對應通道的捕獲/比較寄存器中,完成PWM的周期測量。
定時器測定的周期為兩個液滴滴落的時間間隔,記為T,選取計時精度為1 ms。為了便于觀察,通常記錄滴速的單位為:滴/min,因此計算滴速的公式為:V=60*1000/T。由于液滴滴落情況易受環境影響,波動較大,為提高滴速測量精度,采用連續測量3個液滴取平均速度的方法。實踐表明,此種測量方案完全能夠達到測量精度要求。滴速測量子程序流程圖如圖6所示。

圖6 滴速測量子程序流程圖
3.3 無線通信子程序
硬件搭建完成后,首先進行初始化。初始化的主要內容是設置波特率和服務器IP地址,系統的波特率設置為57 600 b/s,服務器IP地址為:10.10.100.254。初始化完成后,點擊建立TCP連接,USR-WIFI232芯片進入監測狀態,準備數據接收。
當USR-WIFI232芯片接收到程序設置的相應頻段的載波信號且接收到信號的地址信號與程序設置吻合時,芯片配對成功。設置芯片的工作模式為接收,上位機通過WiFi網絡,以設定的波特率把數據傳輸到STM32內。隨后,STM32通過 RS232串口將反饋信號傳輸至芯片,更改芯片工作模式為發送,反饋信號再通過WiFi網絡發送至監控管理軟件,系統完成一次循環[4]。重新設置芯片的工作模式為接收,重復以上過程,系統開始新的循環,接收新數據。無線通信子程序流程圖如圖7所示。

圖7 無線通信子程序流程圖
本文深入地分析了基于STM32的輸液監控系統的工作原理和實現細節。該系統能夠精確地測量和調整滴速。系統具有無線通信功能,實現了一機多能、一機多用,便于醫護人員集中管理,大大減輕了醫護人員的工作強度。測試結果表明,該系統安全、可靠、精度高,具有廣闊的應用前景。
[1] 劉枝國,劉世華. 靜脈輸液質量與風險處理預案[M]. 長沙:湖南科學技術出版社,2008.
[2] 陳宇,王璽. 基于光電技術智能輸液監控系統設計[J]. 核電子學與探測技術,2009,29 (5):1149-1154.
[3] 馮爽,蔣念平. 基于STM32的無線數據傳輸綜合應用[J]. 計算機系統應用,2012,21 (9):228-231.
[4] 楊光偉,錢志余,李韙韜,等. 一種新型智能輸液監護系統的研制[J].生物醫學工程研究,2011, 30(1):1-5.
Design and implementation of transfusion monitoring systems based on STM32
Liu Gang, Ling Qiang, Xu Jun, Li Bolun, Li Feng, Wang Song
(Department of Automation, University of Science and Technology of China, Hefei 230027, China)
In order to realize intelligent and networked intravenous transfusion, a monitoring system based on STM32 is developed. The system can perform liquid drop detection, liquid drop speed display and control, residual liquid display, wireless communication, sound and light alarm, etc. In this system, infrared tube is used to detect whether the drop in the Murphy tube is falling, step motor and its auxiliary drive devices are used to control liquid drop speed, the liquid drop speed and the residual liquid volume are displayed by OLED, wireless communication is realized by WIFI232. In the abnormal case, the alarming of buzzer and LED lights will alert to catch the attention of nurses. This system has great application potentials.
transfusion monitoring; STM32; wireless communication; step motor
國家自然科學基金(61273112)
TP23
A
1674-7720(2016)01-0091-04
劉剛,凌強,徐駿,等.基于STM32的輸液監控系統設計與實現[J].微型機與應用,2016,35(1):91-94.
2015-09-01)
劉剛(1987-),男,碩士研究生,主要研究方向:嵌入式系統。
凌強(1975-),通信作者,男,博士,副教授,博士生導師,主要研究方向:網絡化控制、嵌入式系統。E-mail: qling@ustc.edu.cn。
徐駿(1977-),男,實驗師,主要研究方向:嵌入式系統。