夏頌榮 鄭超偉 凌若藍 陳超敏 常耀華 陳國強
隨著科技的發展,人們越來越關注自身的健康狀況,尤其是新生兒的健康狀況。據統計,我國的剖宮產率高居全球第一,因此控制和降低剖宮產率,倡導自然分娩成為現代婦產科學發展的重要課題[1-2]。
近年來,隨著國家對二胎政策放開,高齡孕婦的數量急劇上升,在一段時間內新生兒的數量將會顯著增加,對母體、家庭和醫生都將帶來更加嚴峻的挑戰。傳統的胎兒監護設備體積龐大,捆綁電線多,操作復雜,并且受限于在醫院監護中心實施,給行動不便的孕婦帶來諸多的不變。基于目前無線互聯網技術已經滲透到各個領域,便攜式的移動健康監護已成為重要的發展方向[3]。目前,常見的胎兒監護設備的軟件處理系統都是基于PC端,手機、平板等移動手持設備,并日益普及,為移動醫療帶來了契機,其低成本、便攜性、易操作等優勢將會促進移動醫療的普及應用。基于此,本研究設計了基于Android平臺的胎兒監護系統,可以實現對收集到的數據進行實時的顯示,使孕婦隨時隨地就可進行胎兒監護,解決了孕婦在醫院排隊難、等待時間長以及在醫院和家庭之間奔波勞累的問題,同時也解決了醫院的就醫壓力大的問題。
無線胎心宮縮探頭獲取的胎心宮縮信號通過藍牙傳輸發送給Android系統手機,然后Android端應用程序(application program,APP)可對胎心數據進行查看分析[4-5]。Android平臺的監護端主要實現的功能有:①對于首次登錄的系統用戶需進行注冊,填寫個人信息,以對用戶的個人基本信息錄入數據庫中;②用戶登錄應用程序后,點擊搜索探頭按鈕以尋找無線藍牙探頭并進行連接,無線藍牙探頭將采集到的監護數據無線發送至智能監護端,從而實現監護數據的無線傳輸;③智能監護端繪制并顯示監護數據的波形和數字,以便觀察診斷,并對超過閾值的數據進行報警顯示,并對監護數據按一定的數據格式存儲在本地文件中;④用戶基于超文本傳輸協議(hyper text transfer protocol,HTTP)訪問服務器,并將監護文件上傳至服務器,以便醫務人員進行下載診斷;⑤用戶下載醫生診斷后的診斷報告,查看診斷結果。本地無線監護端的主要功能如圖1所示。

圖1 智能監護端系統結構框圖
Android系統是基于Linux內核的操作系統,具有完全開源、開放和自由等特點,因此各大廠商將Android系統應用于各種硬件平臺上,使其得到飛躍式的發展[6]。中國移動市場研究報告指出,Android系統在中國的市場份額達到76.8%,在歐洲市場份額達到65.5%,Android設備的使用用戶達14億,已成為全球第一大系統,市場份額居世界第一。Android系統架構從上至下主要分為Java應用層、java框架、本地代碼(C/C++)框架和Java運行環境及Linux內核驅動。
Android系統應用程序的開發需要以下工具:①Eclipse軟件;②Java開發工具包(Java development kit,JDK);③Android開發工具(Android development tool,ADT)插件;④Android軟件開發工具包(software development kit,SDK)。通過Eclipse平臺安裝JDK、ADT及SDK插件,為Android應用程序開發提供支持[7]。Android系統開發環境原理如圖2所示。

圖2 Android系統開發環境原理框圖
胎監信息模塊主要包括孕婦姓名、孕次、既往史、身高體重等基本信息,可以訪問數據庫實現對用戶信息的查看、修改、刪除、保存等操作。在應用程序開發過程中,通過新建一個訪問網絡的類,并繼承線程(Thread)類[8]。把需要訪問的參數封裝成Map對象,并傳入到網絡線程中。在線程的Run()方法中實現網絡協議的訪問,主線程訪問網絡會阻塞UI線程。定義Http Url Connection的對象conn,并按照HTTP的post請求封裝數據,然后向服務器發送post請求,服務器收到post請求后,提取客戶端傳過來的訪問參數,將參數實現結構化查詢語言(structured query language,SQL)的語句,訪問胎監信息數據庫,并獲取用戶的基本信息。獲取到的用戶個人信息通過json的數據格式響應客戶端的Request請求。客戶端提取和解析Response的json數據,得到用戶的個人基本信息,胎監信息表如圖3所示。

圖3 胎監信息表界面圖
孕婦將監護文件通過網絡上傳到服務器中,醫生通過網頁下載該監護文件,并通過專門的計算機評估軟件對監護數據進行診斷和分析[9];然后填寫用戶的監護病歷報告,并上傳到服務器中。用戶發送Http協議訪問服務器,服務器以json的數據格式將病歷報告的各參數發送至手機。手機通過解析json數據,得到各項評估參數,并顯示在界面上,胎監報告界面如圖4所示。
監護端APP與無線胎心探頭連接后,實時接收發送過來的監護參數,并繪制波形和數字顯示在屏幕上。通過重寫該Activity類的onBind()和onUnbind()方法,實現與監護界面的通信[10]。程序在初始化中首先定義該設備的藍牙適配器(BluetoothAdapter)對象,并得到該對象的實例調用startLeScan()方法,重寫掃描設備的回調函數LeScanCallback,在該函數中將掃描到的設備添加到動態數組(ArrayList<BluetoothDevice>)中。onConnectionStateChange()是藍牙設備的連接狀態,當探頭連接、斷開等狀態改變時會回調該函數。onCharacteristicChanged()函數主要是實現數據的接收,當探頭向一個特性值寫數據,則應用程序會回調該函數,從該函數中提取探頭發送過來的監護參數,完成數據的無線藍牙傳輸。本系統開發的Android應用程序監護主界面如圖5所示。

圖4 胎監報告界面圖

圖5 實時監護模塊界面圖
基于Android平臺的胎兒監護軟件系統以Eclipse搭建的Android開發環境,終端系統為Android 4.4版本作為開發平臺,使用輕量級且占用資源非常小的SQlite數據庫,可存儲大量采集到的數據,實現對孕婦個人信息管理、胎心宮縮信號的實時監護以及孕婦胎監健康報告的管理。該系統具有設備體積小、無線傳輸、Android系統設備普遍使用以及易于操作等優點。此外,在當前“大數據時代”及“互聯網+”的背景下,對于開展遠程胎兒實時監護帶來機遇[11-12]。同時,為以后開發胎兒監護智能分析系統具有非常廣泛的意義和前景,促進“病發后到醫院”的傳統就醫模式向“及早預防和及早主動治療”的現代醫學模式的轉變。