楊春杰,田曉旭,梁 耀
(1.西安郵電大學 自動化學院,陜西 西安 710121;2.中國石油集團測井有限公司測井技術研究院,北京 昌平,102200)
靜脈輸液是一種通過靜脈輸入大量無菌溶液或藥物的治療疾病基礎手段[1]。傳統的輸液模式需要患者在輸液過程中,實時監控或有專人陪護,存在許多弊端。隨著治療的精細化,輸液環節對輸液種類、速度和混比等要求愈加嚴格,且輸液環節中存在過敏、滾針、滴速快和透壓高等各種安全隱患,若不及時處理,嚴重時會導致重大醫療事故[2]。
目前,輸液監控技術主要包括電容式輸液、探針式輸液、機械式輸液和光電式輸液。電容式輸液因要針對不同輸液瓶容量規格設計對應裝置,生產成本極高,不適用大批量生產。探針式輸液需要探針直接接觸藥液,并不安全。機械式輸液太過依賴物理基礎,如彈簧,精度無法保證。光電式輸液利用紅外原理與單片機等技術,可以較好地解決輸液方面安全與精度問題,但其功能較為單一,僅可供患者進行單機使用,無通訊擴展功能,醫護人員無法進行全面監管,存在安全隱患。
針對當前輸液系統功能單一、滴速控制精確度不高、無通訊擴展和價格高昂等問題,擬提出一種基于窄帶物聯網的智能輸液系統。系統由輸液終端、嵌入式網關和窄帶物聯網云平臺組成。在輸液終端精確控制的基礎上,所有輸液終端通過遠距離無線通信網[3](Long Range,LoRa)進行通信架構,并利用窄帶物聯網(Narrow Band-Internet of Things,NB-IoT)技術實現網絡的外延。同時,系統通過物聯網云平臺建立輸液檔案進行數據共享,并根據個人數據庫生成相應的決策機制,為輸液過程提供相應的輔助信息支持,使輸液過程更加安全、智能。
智能輸液系統主要包括感知層、網絡層和應用層。感知層為輸液終端部分,包括輸液儀和病理手環,主要獲取輸液起始時間、持續時間、速度、異常情況和體征信息等相關輸液及病理信息。網絡層將多個輸液儀節點數據以LoRa方式匯集至智能網關,智能網關對數據處理后,將數據組包以RS232方式轉發監護上位機,并經協議轉換發送到NB-IoT基站,上傳至物聯網云平臺。應用層采用華為物聯網云平臺作為數據的接收和信令下發的中轉站,在平臺上完成設備 profile 和編解碼插件的設計,用來解析收到的數據和下發應用發送的命令。系統總體架構如圖1所示。

圖1 系統總體架構
輸液系統的核心部分為輸液儀、病理手環和智能網關,各個部分協調工作,使輸液過程安全、穩定和智能。系統硬件設計如圖2所示。

圖2 系統硬件設計
1.2.1 輸液儀結構及硬件設計
輸液儀由主控模塊、滴速檢測模塊、滴速控制模塊、驅動電源、人機交互模塊和通信模塊等組成,主要完成數據采集、信息檢測、數據融合、電機控制、人機交互和無線通信等功能。主控模塊采用STM32型號單片機,滴速檢測模塊采用紅外檢測技術,利用直射式光電傳感器,創新設計夾緊裝置結構,配合滴速控制模塊進行精確滴速控制,通信模塊由LoRa和藍牙模塊構成。
1.2.2 病理手環硬件設計
病理手環由主控模塊、體征監測模塊、藍牙通信模塊和顯示、電源管理模塊等組成,其中體征監測模塊包含溫度、血氧檢測模塊等,主要完成各項體征參數的檢測,通過藍牙模塊將數據實時發送給輸液儀。
1.2.3 智能網關硬件設計
智能網關由STM32主控模塊、LoRa通信模塊、NB-IoT通信模塊和電源管理模塊構成,搜尋和連接多個LoRa節點,將接收到的由輸液儀LoRa節點發送的輸液信息進行數據處理、協議轉換和重組打包,匯總后實時報送上位機[4],同時將其通過NB-IoT上傳至物聯網云平臺[5]。
系統主控芯片采用STM32F105VC,主要分為主控程序與BootLoader程序,其開始地址分別為0x08003000和0x08000000。輸液的所有功能設計由主程序完成,BootLoader程序則完成程序的引導與升級。當主控程序完成功能優化改進后,其對應的bin文件將通過BootLoader重新加載燒寫到對應地址中。主控程序包含初始化模塊、異常報警模塊、滴速監測模塊和通訊模塊。為了保證輸液過程可靠性,根據程序異常標志量進行針對性的操作,如當藥液余量超限時,將根據余量減少程度進行梯度報警,觸發信息遠程推送,當到達極限時,將激活本地聲光報警,并切斷輸液回路。輸液主控程序流程如圖3所示。

圖3 輸液主控程序流程
在Keil-MDK5平臺上進行智能網關軟件設計調試。智能網關的LoRa模塊接收來自輸液儀的數據,主控制器根據預設的協議對數據包進行校驗,使用NB-IoT模塊上發物聯網云平臺[6]。網關的工作流程如圖4所示。

圖4 網關工作流程
物聯網平臺中的網絡層采用華為物聯網云平臺作為數據的接收和信令下發的中轉站,完成設備 profile 和編解碼插件的設計,解析收到的數據和下發應用發送的命令[7]。華為物聯網云平臺提供的 OceanBooster 平臺可以進行無碼化開發 Web 應用。應用層主要包括智慧輸液的后臺管理系統,采用圖形用戶界面應用程序開發框架Qt作為平臺,完成設備數據監控、設備遠程控制和設備定位等功能。Qt 具有良好的跨平臺特性,所設計的桌面應用程序不僅可以用于 Windows 平臺,還可以通過簡單的設置和修改將其移植到嵌入式設備,使設計的管理平臺具有更廣泛的應用場景。
在患者輸液時,輸液管中的藥液成脈動式流淌,只有在液滴滴落時,藥液液面和其內部壓強會發生微細的更新[8]。藥液流動的伯努利方程[9]為
(1)
式中:P為藥液中某點的壓強;v為藥液在某處的流動速率;ρ為該瓶藥液的密度;g為重力加速度;h為該點所在的高度;C為一個常量。忽略其損失。
在輸液過程中,設大氣壓強為P0,輸液瓶上部的氣體壓強為P1,輸液瓶上液面處液體流速為v1,輸液瓶口處藥液流速和壓強分別為v2和P2,茂菲氏滴管上部控制夾處藥液流速和壓強分別為v3和P3,茂菲氏滴管中氣液連接處藥液流速和壓強分別為v4和P4,茂菲氏滴管口處藥液的流速和壓強分別為v5和P5,針頭處藥液流速和壓強分別為v6和Pp,輸液瓶中液面高度為Δh1,上輸液管中藥液高度為Δh2,茂菲氏滴管內部藥液高度為Δh3,下輸液管中藥液高度為Δh4,則建立的滴速控制模型如圖5所示。

圖5 滴速控制模型
近似認為v1=0,v2=0,由式(1)可推導得出
(2)
當排除輸液系統的漏氣、漏水和阻塞等非正常情況的影響時,當前每分鐘輸液藥液的流量公式可表示為
Q=S·v3=d·V
(3)
式中:d為輸液速率;V為藥滴的體積;S為輸液管切面的面積。
根據式(2)和式(3),輸液速率可表示為
(4)
為了使滴速控制的過程更加精確穩定,系統采用步進電機作為執行器[10],根據電機型號不同選取相應參數構造傳遞函數,其表達式[11]為
(5)
式中:s為復變量;θi為步距角(輸入);θ0為轉子實際轉過的角度(輸出);Zr為轉子齒數;iA為相電流;L為相電感;B為電機粘滯阻尼系數;J為轉子轉動慣量。
為了達到對滴速的精確控制,系統采用基于遺傳算法比例積分微分(Proportion Integration Differentiation,PID)控制器對輸液速率進行控制[12]。以二次性能指標最優為衡量標準,利用遺傳算法整定PID參數KP,KI和KD。遺傳算法優化PID的流程如圖6所示。

圖6 遺傳算法優化PID流程
采用誤差絕對值時間積分性能指標作為參數選擇的最小目標函數[13],為滴速控制模型選取最優的遺傳參數。為了使滴速控制模型僅使用最小的控制能量達成最優的效果,目標函數中加入一個平方項,并在目標函數中加入懲罰函數為避免超調[14]。若產生超調,則將超調量作為一項最優指標,若系統無超調,其代價函數為[15]
(6)
式中:e(t)為系統誤差;u(t)為控制器輸出;tu為上升時間;α、β和η分別為e(t)、u(t)和tu對應的權重。經過權重選擇與調試,α取0.999,β取0.001,η取2。
當產生超調時,式(6)可表示為
(7)
其中,
ye(t)=y(t)-y(t-1)
式中,γ為其權重,且γ?max(α,β,η),γ取100;y(t)為被控對象的輸出。
為了驗證滴速控制模型及智能控制算法的可行性,采用實驗環境為Windows 10,CPU型號為Intel i5-6200U的計算機,利用Matlab R2016a軟件進行仿真[16]。為了使控制效果更加穩定,系統采用步進電機作為被控對象,選取參數Zr=50,iA=1.5 A,B=0.03,J=0.114,L=6.5代入式(5),得到其執行器的傳遞函數為
(8)
設定遺傳算法的種群大小為30,交叉概率為0.9,變異概率為0.033,采用實數編碼方式,迭代150次,基于遺傳算法PID控制器進行參數尋優,得到PID的3個參數值分別為KP=48.848 9,KI=0.895 7,KD=34.212 3。其代價函數F的優化過程如圖7所示。采用基于遺傳算法PID控制器的單位階躍響應如圖8所示。

圖7 代價函數F優化過程
由圖7可以看出,代價函數F的值隨時間逐漸減小,即逐漸得到優化,最優代價函數F=31.406 1,驗證了滴速控制模型及算法可行性。

圖8 階躍響應
由圖8可以看出,通過階躍響應對基于遺傳算法優化PID的峰值時間為0.071 s,無超調,驗證了滴速控制模型的控制時間短、精度高。
為了驗證輸液儀的滴速控制效果,改變點滴的給定值,實驗條件為輸液管形變范圍為0~1.5 mm,滴速控制范圍為0~100滴/min,最終測試數據如表1所示。

表1 測試結果數據
從表1中數據可以看出,輸液儀對滴速的控制可以達到預設值,并且誤差為100±1滴,效果良好。
基于窄帶物聯網的智能輸液系統采用多元通信網絡架構,通過建立滴速控制模型,利用基于遺傳算法PID控制器控制滴速,實現了對輸液情況的實時監測與精準控制。同時,實時采集現場信息并調整輸液進程,包括輸液速度、是否發生報警信號等,實現了輸液監控的安全化、智能化、網絡化和信息化。實驗結果表明,該系統對滴速的控制可以達到預設值,誤差僅為100±1滴,控制精度高。通過較完備的異常報警機制和可靠的窄帶物聯網傳輸,實現了輸液全過程智能化管理。