劉彥偉,孟慶琰,張蘭芹
1. 泰安市中心醫院 設備科,山東 泰安 271000;2. 山東第一醫科大學第二附屬醫院 醫學裝備部,山東 泰安 271000
人體生理多參數監護儀可以實時監測病人的血壓、血氧飽和度、心率和體溫等人體生命體征[1-2],對實時了解病人的狀況具有很大的意義,隨著Android手機的普及和物聯網技術的發展,使通過手機遠程監測病人的生理參數信息成為可能[3-4]。本文設計了一款多參數監護儀及遠程監測系統,該監護儀可以準確測出人體的生理參數信息并將信息通過Wi-Fi上傳到服務器。遠程監測系統通過Android手機客戶端實現多個病人的生理參數信息的查詢、顯示、保存本地手機SD卡及語音播報功能,方便及時了解病人的身體狀況。
本文設計的監護儀主要測量人體的血壓、血氧飽和度、心率和體溫四項生理參數信息,監護儀采用STM32F103作為系統的控制芯片,其主要功能是利用人體生理參數各部分的傳感器及檢測處理電路準確、快速測出人體的生理參數信息,STM32F103內部程序檢測到生理參數信息采集完成后,將生理參數信息通過監護儀內部的Wi-Fi模塊實時上傳到服務器。本文設計的多參數監護儀硬件主要包括血壓、血氧飽和度、心率和體溫的檢測及處理電路、Wi-Fi模塊電路,監護儀硬件的結構框圖如圖1所示。

圖1 監護儀硬件結構框圖
本文設計的人體血壓測量是通過示波法的方法來檢測的,該部分主要由電源電路、氣泵和電磁閥驅動電路、血壓檢測及轉換電路并配合外部袖帶組成。該部分電路框圖如圖2所示。

圖2 人體多生理參數監護儀血壓測量電路框圖
預先在控制芯片STM32F103程序中設置充氣的最大壓力值(本文設定220 mmHg),當STM32F103內部程序檢測到血壓測量按鈕按下時,會通過控制氣泵驅動電路來驅動氣泵給袖帶充氣,當檢測到壓力達到220 mmHg時,停止給袖帶充氣,并開始控制放氣電磁閥給袖帶放氣。當袖帶開始放氣時,血壓檢測電路內部的壓力傳感器實時檢測壓力值,當檢測到脈搏波跳動強度隨著血壓袖帶內部氣體壓力的減小而增強時,這個拐點測到的血壓值為收縮壓,當袖帶繼續放氣達到某一點時,脈搏波跳動強度會隨著袖帶內氣壓得較小而減弱,這個拐點測到的血壓值為平均壓值,利用測出的收縮壓和平均壓可以計算出舒張壓[5-6]。
本文設計的血氧檢測探頭由發紅光和紅外光的兩個不同波長的二極管反向并聯構成,紅光和紅外光的波長分別為660 nm和940 nm[7-8]。血氧檢測探頭的紅光驅動電路由2個MMBT05L三極管和相應的電路組成,紅外光的驅動電路由2個MMBT55LT1三極管和相應電路組成,利用控制芯片STM32F103的4個端口分別控制輸出電壓和二極管的發光強度。
當血氧傳感器探頭夾上手指后, STM32F103會產生兩路時序脈沖信號驅動血氧探頭內的兩個不同波長的二極管交替發光[9],發光二極管發出的光通過人體指端后由光電三極管接收并通過前置差分濾波及轉換電路濾波放大后轉換成數字信號反饋給STM32F103芯片,由控制芯片STM32F103根據血氧飽和度的計算公式測量出人體的血氧飽和度值。本文設計的血氧飽和度的電路框圖如3所示。

圖3 人體多生理參數監護儀血氧飽和度電路框圖
本文設計的血氧飽和度采集電路可以同時采集到人體指端的容積脈搏波信號,通過提取兩個相鄰脈搏波波峰點的采樣點數,設為n,根據本文指端脈搏波采集設置的采樣時間T=0.007s,即可計算出人體的心率值(Heart Rate,HR),HR的計算公式[10]如公式(1)所示。

本論文設計體溫測量電路由測溫電橋電路、電壓基準電路和差分放大反饋電路組成,其電路框圖如圖4所示。

圖4 人體多生理參數監護儀體溫測量電路框圖
溫度變化在較小范圍內時,利用高精度鉑電阻PT100的阻值與溫度良好的線性關系(式2)與其他四個精密電阻組成測溫電橋電路[11],電壓基準電路由電壓基準芯片REF3030和相應電路組成,主要功能為測溫電橋電路提供3.0 V標準基準電壓,測溫電橋電路測出電阻值由差分放大電路由差分放大反饋放大后,經模數轉換電路轉換成數字信號反饋給控制芯片STM32F103。

根據公式(2),即可計算出人體的體溫值T,如公式(3)所示。

當鉑電阻的溫度為0℃時,其阻值為100 Ω[12],PT100阻值Rt與溫度T的線性系數A為0.385。
人體生理參數信息采集后保存在存儲器內,當STM32F103檢測到所有數據采集完成后,把血壓、血氧飽和度、心率和體溫通過串口 UART依次發送到Wi-Fi模塊ST-MW-08 S,Wi-Fi模塊ST-MW-08 S將接收到的數據信息上傳至服務器[13]。Wi-Fi模塊的工作參數和工作方式可以通過串口軟件實現配置,Wi-Fi模塊ST-MW-08 S內部集成了Wi-Fi的驅動,同時支持 ARP、ICMP、UDP、TCP/IP、DHCP 客戶端以及 DHCP 服務器等諸多協議,具備多路通用 I/O的輸入輸出接口,編程方便等優點[14]。
本文設計的監護儀遠程監測系統是一款基于Android手機的APP軟件,它可以實現醫生注冊、登錄,多病人歷史信息查詢、顯示,病人生理參數信息數據保存和查詢到的病人生理參數信息的語音播報,該APP軟件結構框圖如圖5所示。

圖5 監護儀遠程監測系統框圖
有注冊權限的醫生信息會預先保存在數據庫中,當醫生首次登陸時,軟件會提示醫生填寫注冊信息,注冊信息包括用戶名(真實姓名)、手機號、密碼及性別的選擇,當醫生的信息與數據庫中的信息匹配時,才能注冊成功。當醫生注冊成功后,可通過用戶名和密碼實現登陸,若登陸信息忘記時,可以通過手機號找回密碼,本文設計的App軟件的注冊、登錄界面如圖6所示。在設計注冊界面時,添加了4個TableRow 表格行,在其中添加了4個TextView文本框 和4個EditText 編輯框控件,分別用來顯示和填寫用戶名、手機號、密碼和確認密碼。在EditText 控件中的 android:singleLine = “true”表示單行輸入文本, android:inputType= “password” 表示輸入的內容為密碼,并用 “ . ” 代替輸入的內容,避免密碼泄露。設計登錄界面時,添加了2個TableRow 表格行,在其中添加了2個TextView文本框 和2個EditText 編輯框控件。

圖6 遠程監測系統注冊及登錄界面
該功能采用通過POST的請求方法同服務器進行交互,POST請求是把所有的要訪問服務器提交的數據放在請求的請求體當中,POST向服務器提交的數據沒有限制,可以大數據訪問數據庫數據。要實現POST請求,需在Manifest文件中注冊打開訪問網絡的權限:<uses-permission android:name =“android.permission.INTERNET” />, 輸 入 病人名字后,點擊查詢按鍵,界面會跳轉到病人生理參數信息顯示界面,該界面會從上到下依次顯示從服務器上獲得的人體血壓、血氧飽和度、心率和體溫值,該界面如圖7所示。
醫生通過輸入病人的姓名和床號查詢病人的生理參數信息,通過POST方式將提交到服務器數據轉換為JSON格式數據字符串,代碼如下:

在主程序中利用text.setText("" + value)顯示從服務器上返回的數據,其中text為定義的血壓、血氧飽和度、心率和體溫生理參數,value為從服務器上返回的生理參數數據。
點擊圖7界面上的保存按鍵,程序會檢測手機本地的SD卡是否已準備好,若SD卡已準備就緒,系統內部程序利用File sdCardDir = Environment.getExternalStorageDirectory()得到SD卡根的目錄,在SD卡的data文件夾下創建以病人名字命名的文件夾,程序如下所示:


圖7 遠程監測系統查詢到的生理參數顯示界面
病人的基本信息及生理參數信息會以日期+時間.txt文檔的命名形式保存在手機的內部存儲卡中,獲得當前日期及時間的方法的程序如下:
獲得當前日期的方法:


圖8 保存在SD中的病人信息文檔及生理參數信息
醫生查看病人信息時,可以選擇打開語音播報功能,打開后該APP軟件會自動播報病人的信息,當醫生忙碌無法觀看手機時,該功能可以方便醫生了解病人的情況。默認情況下,Android平臺無法實現中文到語音的轉換,必須安裝中文文字轉換語音Text To Speech(TTS)的語音包,并將該包引入到所建工程的buildPath中。導入第三方科大訊飛語音包的方法是右鍵工程,選擇Build path,Configure Build Path,選擇libraries選項卡中選擇右側的Add External JARs,然后選擇要導入的第三方的jar 包,點擊“確定”,語音jar包會被一起打包到apk中,本文采用第三方科大訊飛開發提供的TTS語音包,導入工程后如圖9所示,下載并安裝訊飛語音APK軟件,安裝成功后,在語音設置選項中打開系統識別接口、設置發音的方式、語速和音效,如圖10所示。

圖9 工程中導入訊飛語音包

圖10 安裝訊飛APK后及語音設置界面
當醫生打開語音播報功能后,即可實現對病人信息的語音播報功能,語音播報的程序如下:

實驗者靜息5 min待身體完全放松后,采用醫院常用的邁瑞PM 7000監護儀作為參照,分別用本文設計的監護儀和邁瑞PM 7000監護儀采集10名實驗者的血壓、心率、血氧飽和度和體溫值。
利用Bland-Altman方法[15]對兩種儀器測量的血壓值進行一致性分析,分析結果是這10個數據均在一致性界限以內,其中收縮壓和舒張壓兩者差值的均值和標準差分別為 -0.6000和-0.9000, 1.5793和 1.7640,收縮壓和舒張壓的95%一致性界限分別為(-3.6954,2.4954)和(-4.3575,2.5575)。兩種儀器測出的10名實驗者的心率的相關系數r=0.9830;血氧飽和度數據的最大絕對誤差為1,最小絕對誤差為0,最大相對誤差為1.01%;體溫值的最大絕對誤差為0.5℃,最小絕對誤差為0,最大相對誤差為1.43%。
血壓實驗數據分析說明本論文設計的監護儀測出的血壓值與邁瑞PM7000監護儀測出的血壓具有很好的一致性。兩種儀器測出的HR的相關性很大,說明本文設計的監護儀測出的HR具有很高的準確性[16];兩種儀器測出的血氧飽和度和體溫值的相對誤差均很小,說明了本論文設計的監護儀測出的血氧飽和度和體溫值具有很高準確性,符合人體生理參數測量的要求。
本文設計出了一款人體多生理參數的監護儀及遠程監測系統,監護儀硬件部分能夠快速測準確測出人體的血壓、血氧飽和度、心率和體溫值,利用邁瑞PM 7000監護儀作為對比,分析了10名實驗者的測試數據,結果證明了本文設計的監護儀測量人體生理參數的可靠性和準確性,并實現了將病人基本信息和生理參數信息上傳到服務器。本文設計的遠程監測系統Android手機APP軟件,實現了從服務器上查詢病人歷史信息并顯示,實現了病人信息保 存到本地SD卡功能,實現了病人信息的語音播報功能,達到了本文設計的要求。