姚 君 凌霽云
醫(yī)療設備的使用率管理是設備質量控制的范疇,但傳統(tǒng)的設備管理方式無論從收費端口或是使用登記記錄的統(tǒng)計均采用繁瑣的人工方法,占用了大量的人力時間和精力。因此,加強對于醫(yī)療設備的使用管理和監(jiān)測、提高設備管理精益化水平已成為醫(yī)院醫(yī)療設備管理重要課題[1-2]。為此,本研究設計一套智能的聯(lián)網(wǎng)監(jiān)測系統(tǒng),該系統(tǒng)包括上位機軟件(特指PC機用戶軟件)和前端數(shù)據(jù)采集單板(簡稱單板)。以WiFi為媒介連接呼吸機,將采集到的醫(yī)療設備工作狀態(tài)通過上位機二次顯示。選擇的醫(yī)療設備為遵循MediBus通信協(xié)議的Evita系列呼吸機(德國Dr?ger公司)。
在線監(jiān)測系統(tǒng)的硬件部分主要由PC機、無線路由及數(shù)據(jù)采集單板組成。數(shù)據(jù)采集單板與呼吸機通過RS232串口實現(xiàn)連接,并實現(xiàn)與呼吸機的數(shù)據(jù)通訊與預處理,將處理后的數(shù)據(jù)通過WiFi發(fā)送至上位機軟件,采用了用戶數(shù)據(jù)報協(xié)議(user datagram protocol,UDP)的通訊協(xié)議[3-4]。上位機的主要任務是實時接收各個單板發(fā)送來的數(shù)據(jù),并顯示在界面上(如圖1所示)。

圖1 在線監(jiān)測系統(tǒng)硬件總體結構圖
數(shù)據(jù)采集板的主要模塊包含了主控芯片、系統(tǒng)電源、RS232電路、WiFi模塊、微控制器單元(micro control unit,MCU)及配置接口電路等(如圖2所示)。

圖2 在線監(jiān)測系統(tǒng)數(shù)據(jù)采集單板結構圖
1.2.1 主控MCU
設計采用Kinetis L系列微控制器(MKL26Z256VLL4),內部具備了256 KB的Flash和32 KB的靜態(tài)隨機存取存儲器(static random-access memory,SRAM)。MCU并不能獨立工作,必須給其供電,配上時鐘,并提供復位信號等,也可以包括燒錄接口或者調試接口,所組成的電路成為MCU的最小系統(tǒng),是MCU工作所必須的最低規(guī)模的外圍電路[5]。
1.2.2 WiFi模塊
本研究設計采用LPB100超低功耗嵌入式WiFi模組,提供了一種將用戶的物理設備連接到WiFi無線網(wǎng)絡上,并提供通用異步收發(fā)器(universal asynchronous receiver transmitter,UART)串口等接口傳輸數(shù)據(jù)的解決方案。該模塊硬件上集成了媒體訪問控制(media access control,MAC)、基頻芯片、射頻收發(fā)單元以及功率放大器;嵌入式的固件則支持WiFi協(xié)議及配置,以及組網(wǎng)的傳輸控制協(xié)議與互聯(lián)網(wǎng)協(xié)議(transmission control protocol/internet protocol,TCP/IP)協(xié)議棧[6-7]。WiFi模塊的應用電路使用了MCU的串口0,WiFi模塊的Ready和Link引腳連接到了MCU的通用輸入與輸出(general purpose input output,GPIO),便于MCU查詢WiFi模塊的狀態(tài),MCU和WiFi模塊之間采用AT指令進行數(shù)據(jù)通訊(如圖3所示)。

圖3 HF-LPB100 WiFi模塊電路圖
1.2.3 系統(tǒng)電源
設計電源電路的過程是一個權衡的過程,需要考慮的因素有:輸出電壓、電流功耗、輸入電壓、輸出紋波等,更設置于需要考慮電磁兼容、電磁干擾、體積限制、功耗限制和成本限制。考慮到便于單板的取電,采用常見的適配器供電,供電范圍為9~12 Vdc,采用AOZ1031和LM1117-3V3電源芯片實現(xiàn)降壓。
1.2.4 RS232通訊電路
MCU一般都具有全雙工的串口收發(fā)器,利用MCU實現(xiàn)RS-232通訊非常方便,但是需要加一級的電平轉化,將MCU的TTL電平轉化為RS-232電平,本設計采用了MAX3232電平轉化芯片,并使用了MCU的串口1與Evita進行通訊,如圖4所示。

圖4 MAX3232電路圖
Evita系列呼吸機具備一個RS-232-C接口(DB9母),經(jīng)測試,該頭的引腳定義并非符合規(guī)范,為此特制了一根具有DB9公頭的轉換線。在Evita開機后的界面中也需要開啟MediBus通訊功能,并設置通訊的波特率,數(shù)據(jù)位,起始停止位和校驗位等參數(shù)。
1.2.5 配置接口及存儲電路
(1)配置接口電路。單板需要配置一些參數(shù),并本地保存,如WiFi的服務集標識符(service set identifier,SSID)和Psk、遠程服務器地址與端口、Evita機所屬科室與資產(chǎn)編號等。通過MCU的串口2進行通訊并實現(xiàn)參數(shù)配置,為了便于使用,故設計了通用串行總線(universal serial bus,USB)到串口的橋接電路,采用了CH340G實現(xiàn)上述功能。
(2)存儲電路。系統(tǒng)中的配置參數(shù)需要存儲,使用AT24C系列外部電可擦除可編程只讀存儲器(electrically erasable programmable read-only memory,EEPROM)。AT24C02內部具有256x8Bits的存儲空間,使用I2C總線與MCU通訊。
(1)HF-LPB100模塊支持串口透明傳輸模式,在硬件上使用MCU的串口0與之通訊,軟件上需通過AT指令配置必要的參數(shù),上電后模塊自動連接到默認的無線網(wǎng)絡和服務器,模塊的串口在透明傳輸模式下工作,無需關心復雜的無線局域網(wǎng)協(xié)議,減少了集成無線數(shù)據(jù)傳輸?shù)能浖_發(fā)工作量,需要預設的參數(shù)為:①無線網(wǎng)絡參數(shù)。網(wǎng)絡名稱、安全模式、密鑰;②TCP/UDP連接參數(shù)。協(xié)議類型、連接類型、目的端口、目的IP地址;③串口參數(shù)。波特率、數(shù)據(jù)位、校驗位、停止位和硬件流控制[8]。
(2)HF-LPB100上電后,默認進入透傳模式,為了配置上述參數(shù),需要通過串口命令把模塊切換命令模式,默認的串口參數(shù)配置為:115200 bps/8位數(shù)據(jù)位/無校驗位/1位停止位。
(3)通過串口調試工具輸入“+++”,模塊返回“a”,在3 s內發(fā)送“a”,模塊返回“+ok”,即進入命令模式,再采用AT+WSSSID,AT+WSKEY配置無線網(wǎng)絡參數(shù),AT+Z指令可重啟模塊使設置生效,AT+NETP配置TCP/UDP連接參數(shù),最后利用AT+ENTM進入透傳模式。
MCU軟件設計的功能需求包括呼吸機數(shù)據(jù)采集、WiFi無線數(shù)據(jù)傳輸、單板配置等。呼吸機數(shù)據(jù)的采集,根據(jù)由呼吸機廠商提供Medibus通訊協(xié)議進行解析,WiFi無線數(shù)據(jù)傳輸和單板配置定義了一套通訊協(xié)議。系統(tǒng)軟件構架如圖5所示。

圖5 在線監(jiān)測系統(tǒng)軟件構架圖
2.2.1 MediBus通信協(xié)議
MediBus是德爾格醫(yī)療設備與外部醫(yī)療設備或非醫(yī)療設備之間進行數(shù)據(jù)交換的通信協(xié)議,MediBus主要用于具備RS232接口的儀器,分為命令指令和命令響應兩種類型的信息:①命令指令,發(fā)送于一臺儀器向另一臺儀器請求數(shù)據(jù)或控制的時候;②命令響應,發(fā)送于一臺儀器對于另一臺儀器發(fā)來的命令做出響應時。在初始化通信或重新啟動通信超時階段,設備必須發(fā)送初始化通信命令[9]。
對呼吸機發(fā)送命令指令,若能收到響應則認為該呼吸機處于在線狀態(tài),不帶參數(shù)發(fā)送格式見表1。

表1 不帶參數(shù)的發(fā)送格式[字節(jié)(Byte)]
根據(jù)MediBus通信協(xié)議,用USB轉RS232串口線將呼吸機與PC機相連接,前期用串口調試助手來調試和接收命令,確定PC機和呼吸機連接正常,基于上步正確的指令響應數(shù)據(jù),然后利用特制的串口線將數(shù)據(jù)采集單板和呼吸機相連接,利用PC機與呼吸機的通訊格式進行通訊,如此即可檢測到呼吸機是否在線[10-11]。
2.2.2 串口配置與WiFi無線數(shù)據(jù)傳輸
該系統(tǒng)包括上位機軟件和前端數(shù)據(jù)采集單板。其中,上位機軟件分為參數(shù)配置軟件與服務器軟件,參數(shù)配置軟件可以用于配置單板的一些固有屬性,如單板ID、本機IP地址與端口、服務器IP地址與端口、WiFi的SSID與PSK等。單板與參數(shù)配置軟件間采用串口通訊,使用USB線進行連接;WiFi無線數(shù)據(jù)傳輸,單板利用LPB100嵌入式WiFi模塊接入局域網(wǎng)絡,控制核心MCU與LPB100模塊采用了串口通訊,LPB100具備串口透明傳輸模式,與服務器建立連接后的網(wǎng)絡UDP通訊實為串口通訊,如圖6所示。

圖6 在線監(jiān)測系統(tǒng)LPB100應用圖
為了滿足上述兩種串口通訊,定義了串口通訊字節(jié)流通訊格式。


CheckSum是整個數(shù)據(jù)報的檢驗和,計算方法為從0x7E開始至CheckSum之前的所有數(shù)據(jù)按字節(jié)累計相加取低16位,高8位存于CheckSum1,低8位存于CheckSum2,串口配置通訊的幀類型分為握手、讀取配置及寫入配置。
網(wǎng)絡通訊主要分為登錄通訊和數(shù)據(jù)通訊兩類通訊過程:①登錄通訊,單板在兩種情況下會發(fā)起登錄通訊,一種是設備上電或者復位,另一種是與PC機斷開了連接,需要重新登錄;②數(shù)據(jù)通訊,由單板單方向發(fā)起,重要前提是單板在線。
網(wǎng)絡通訊整體流程:①單板向PC機通過UDP發(fā)起登錄幀,表示成功在線;②單板向PC機通過UDP發(fā)送設備狀態(tài)幀,且僅登錄過的單板發(fā)送的狀態(tài)幀有效;③在PC端收到狀態(tài)幀之后應向該單板發(fā)送確認數(shù)據(jù)幀,以確保雙方數(shù)據(jù)通訊不會中斷。
當單板開機會向被設置的目的PC機發(fā)送登錄幀,其中包括了固有的ID、本地IP與端口。在發(fā)送狀態(tài)幀時,也會包含此ID、本地IP與端口。在PC機軟件端,僅登錄過的ID的狀態(tài)幀才有效。在PC端若256 s內都未接受到狀態(tài)幀則進行設備斷開顯示。在單板處,若在發(fā)送完成狀態(tài)幀之后的10 s之內都未收到PC端的確認數(shù)據(jù)幀,則表示網(wǎng)絡鏈路斷開,則重新登陸該PC機,且停止發(fā)送狀態(tài)幀。
2.2.3 單片機軟件工作流程
單片機是數(shù)據(jù)采集單板的核心,在其控制下各個模塊展開工作,其初始化主要包括了GPIO初始化、串口初始化、定時器初始化、中斷初始化和EEPROM數(shù)據(jù)初始化,隨后其包括了3個關鍵的任務:①負責接收來自串口的配置數(shù)據(jù)用于配置單板;②負責接收和發(fā)送網(wǎng)絡數(shù)據(jù);③負責與呼吸機通訊的數(shù)據(jù)采集任務。MCU軟件整體流程如圖7所示。
0x51為MediBus的初始化通訊命令(ICC),通過對呼吸機發(fā)送該指令有無響應可以判斷呼吸機是否在線,其流程如圖8所示。

圖7 在線監(jiān)測系統(tǒng)MCU軟件整體流程圖

圖8 在線監(jiān)測系統(tǒng)MediBus數(shù)據(jù)采集流程圖
醫(yī)療設備在線監(jiān)控系統(tǒng)的軟件部分是整個軟件系統(tǒng)正常運作的核心之一,系統(tǒng)將PC機作為上位機。上位機軟件采用微軟公司的應用開發(fā)工具Visual Studio 2010,選用C#語言開發(fā)界面具有一定的優(yōu)勢,因此上位機軟件選擇用C#作為開發(fā)編程語言,生成可執(zhí)行文件。上位機軟件的核心功能主要包括了單板參數(shù)的配置(串口通訊)和呼吸機在線監(jiān)控顯示(網(wǎng)絡通訊),其功能模塊如圖9所示。

圖9 在線監(jiān)測系統(tǒng)上位機軟件功能模塊圖
通訊配置模塊用于配置串口通訊和網(wǎng)絡通訊所需的串口號、波特率、UDP端口號等信息。
串口通訊模塊和網(wǎng)絡通訊模塊在正確的通訊參數(shù)配置下完成最底層的串口數(shù)據(jù)的收發(fā),供數(shù)據(jù)解碼模塊解析處理,這些數(shù)據(jù)是數(shù)據(jù)記錄導出模塊和圖形界面的原始數(shù)據(jù)。通訊模塊和數(shù)據(jù)解碼模塊程序基于通訊協(xié)議編寫,主要實現(xiàn)上位機和單板的通訊。串口配置過程流程如下:PC端通過串口發(fā)送握手信號→單板發(fā)出回應與PC機建立聯(lián)系→PC將編輯界面的數(shù)據(jù)組成數(shù)據(jù)幀發(fā)送至單板→單板正確解析后寫入EEPROM→保存并更新單板配置。網(wǎng)絡通訊部分主要是在開啟服務器后不斷接收來自單板發(fā)出的數(shù)據(jù)幀,根據(jù)協(xié)議解析呼吸機是否在線,將設備名稱、地理位置、科室、固定資產(chǎn)編號和工作狀態(tài)顯示在界面中,并可以根據(jù)設定的時間段導出運行數(shù)據(jù),作為統(tǒng)計依據(jù),上位機軟件界面如圖10所示。

圖10 在線監(jiān)測系統(tǒng)上位機網(wǎng)絡通訊軟件界面圖
通過兩臺Evita4呼吸機的采樣試點和聯(lián)網(wǎng)測試,本研究成功收集了兩臺呼吸機在線狀態(tài)數(shù)據(jù),驗證了該系統(tǒng)運行的可行性,但是該產(chǎn)品在設計上還有很大的提升空間,可根據(jù)MediBus通信協(xié)議擴展呼吸機的運行數(shù)據(jù)監(jiān)測,進一步減輕護理人員的床邊工作量;也可擴展到其他多種類別的醫(yī)療設備在線監(jiān)測,為統(tǒng)計分析使用率提供更大的便利[12]。