《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于Android的遠程醫療監測系統設計
基于Android的遠程醫療監測系統設計
2015年微型機與應用第19期
張紅北,趙曉軍,李 瑞,王晨康,繩 丹
(河北大學 電子信息工程學院,河北 保定 071002)
摘要: 為滿足人們對于遠程醫療的需求,推出了一個應用Android移動終端的解決方案。該方案結合Android系統的特點,設計了一套采集、顯示存儲、報警推送于一體的遠程醫療監測系統。首先對Android框架與系統架構進行介紹,然后對系統涉及到的Android系統藍牙、Socket等通信方式的開發進行分析,并對Android設備在數據采集、存儲、處理中的應用進行介紹,最后應用MQTT協議完成了對報警信息的推送。結果表明Android系統在遠程醫療服務系統中有很大的應用前景。
Abstract:
Key words :

  摘  要: 為滿足人們對于遠程醫療的需求,推出了一個應用Android移動終端的解決方案。該方案結合Android系統的特點,設計了一套采集、顯示存儲、報警推送于一體的遠程醫療監測系統。首先對Android框架與系統架構進行介紹,然后對系統涉及到的Android系統藍牙、Socket等通信方式的開發進行分析,并對Android設備在數據采集、存儲、處理中的應用進行介紹,最后應用MQTT協議完成了對報警信息的推送。結果表明Android系統在遠程醫療服務系統中有很大的應用前景。

  關鍵詞: Android;遠程醫療;藍牙;消息推送;MQTT

0 引言

  隨著社會的進步,人民生活水平的提高,人們越來越關注自身的身體健康。人們都希望可以足不出戶享受來自醫院及醫生的診療或是根據自身的指標得到針對性的健康指導。對于一些慢性病患者及時將重要的生理參數告知醫生可以防止病情的突然惡化。在西方一些發達國家,遠程診療技術已經應用于實際生活,患者在當地就可以享受到千里之外的專家提供的治療服務[1]。

  另一方面,智能移動終端的普及與移動網絡的發展使得遠程醫療成為可能。智能終端如智能手機、PAD等,其強大的功能可以實現遠程醫療中醫療數據的輸入、輸出、顯示和本地存儲等。常見的智能終端操作系統有Android、iOS、kindle等,相比于其他系統,Android基于Linux內核,具有開放性和免費性的特點。現有的遠程醫療信息系統主要依賴醫生通過客戶端主動訪問服務器獲取病人信息,無法保證信息的實時性,在面對突發事件時無法及時處理。在此背景下,本文結合現有醫療信息系統與Android操作系統的特點對Android遠程醫療信息系統的應用以及相關技術進行研究。

1 遠程醫療信息系統的整體框架

  系統的第一部分是用戶生理參數的采集。用戶使用便攜式醫療設備對心率、血壓等生理數據進行采集,并通過藍牙模塊將采集到的數據發送到移動設備端。移動設備主要是安裝Android操作系統的智能手機和平板電腦,移動端應用程序需要完成兩項功能,一是接收便攜式醫療設備采集的數據并進行本地顯示與存儲,二是應用程序連接到服務器,將所接收的數據發送出去同時準備接收服務器端的推送。服務器端接收信息并存入數據庫中,同時配有前臺網頁以便用戶查詢。此外通過消息代理服務器通過訂閱/發布的形式向客戶端推送患者數據異常的消息或根據患者病史提供醫囑。其總體結構如圖1所示。

001.jpg

2 遠程醫療系統Android應用的設計與介紹

  2.1 Android平臺簡介

  Android是由Google以及Google牽頭的開放手機聯盟于2007年11月5日推出的一款開源智能手機操作系統[2]。并且,Google采取Apache免費開源許可證的授權方式,發布了Android操作系統的源代碼,以便各手機生產商推出基于Android操作系統的智能手機,Android操作系統后來更是逐漸拓展到平板電腦及其他領域上[3]。Android系統架構由5部分組成,分別是Linux內核(Linux Kernel)、系統運行層(Android Runtime)、函數庫(Libraries)、應用框架(Application Framework)和應用層(Applications)。應用層主要包括電話程序、SMS短消息程序、瀏覽器程序等為用戶提供手機基本功能的軟件集合。應用框架層不直接與用戶接觸,主要面向Android開發人員,開發人員可以調用應用框架提供的各種API,方便對應用程序的開發。函數庫包含常用的C/C++庫,如Surface Manager、OpenGL ES、SGL、SSL、SQLite等。系統運行層可分為Android核心函數庫與虛擬機,為應用程序提供運行環境。Linux核心為Android提供主要的系統服務如安全性管理、內存管理、網絡棧、驅動模型、電源管理等[4]。

  2.2 Android的數據采集

  隨著人們生活水平的不斷提高,人們對自身的健康也越來越關注。定期體檢獲取自身生理數據、及時改變生活習慣可以有效地避免疾病的發生。傳統體檢需要人們到醫院或者社區醫療中心,由于路途遙遠設備資源有限勢必造成大量的時間浪費。便攜式醫療設備的出現極大地改變了這種現狀,人們可以隨時隨地采集自身的生理數據同時避免了路途遙遠和排隊帶來的困擾。

  市場上現有的便攜醫療設備很多都帶有藍牙功能,而Android SDK中提供了用于藍牙通信的標準API,使得通過Android移動端設備獲取便攜式醫療設備上采集的信息成為可能。Android藍牙通信主要使用BluetoothAdapter類,它提供了對于藍牙操作的各種方法。要使用藍牙首先要在AndroidManifest.xml中加入權限:

  <uses-permission android:name="android.permission.BLUETOOTH"/>

  <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

  在具體操作時首先使用enable方法打開藍牙,之后使用startDiscovery對附近的藍牙設備進行搜索。使用系統廣播的方式將設備信息加入設備列表,由于整個掃描過程需要12 s左右,對資源消耗較大,所以在連接之前需要調用cancleDiscovery方法取消查找。完成配對之后使用BluetoothSocket進行連接,雙方通過RFCOMM通道進行通信完成數據的讀寫。Android移動端通過與便攜式醫療設備之間的協議對設備進行識別,截取接收到的數據中的有用信息完成對采集端數據的接收。開發過程中使用多線程技術完成藍牙的連接和通信,以實現藍牙的后臺搜索與連接。

002.jpg

  圖2中Android端通過設備管理模塊,對藍牙設備進行操作并對接入的設備進行驗證與分類管理,驗證信息是靠便攜式醫療終端與Android設備之間的通信協議規定。數據管理模塊主要負責數據的接收、存儲與打包上傳。通過藍牙接收的數據被傳遞到UI界面進行顯示,同時數據被存儲到Android本地的SQLite數據庫中。這些數據還可以由數據管理模塊進行打包并向服務器端上傳。

  2.3 Android移動端數據的顯示與發送

  Android系統最具代表性的特點之一就是其提供了可視化的設計框架。Android利用XML語言和Java語言結合的方式控制UI布局,并提供了各種各樣的控件,在很大程度上降低了開發難度[5]。Android的界面寫在res/layout的XML文件中,一般情況下一個XML文件對應一個界面。Android操作系統自帶有一個輕量級的關系型數據庫SQLite,對于一些重要的生理數據可以將其在本地存儲起來以便于查詢。通過使用SQL語句創建表并將重要的生理數據插入表中完成對數據的本地存儲,查詢時使用SQLiteDatabase.query方法將數據展示在一個ListView中方便用戶查詢存儲的歷史信息。

  數據發送通過Android SDK中提供的socket使用TCP/IP協議與遠程的服務器進行連接,在生理數據中加入包序號、采樣時間等信息作為包頭,以數據包的形式發送到服務器端,并對因網絡不穩等因素造成的數據包丟失的情況及時請求重傳,以保證服務器可以完整地接收數據信息。

  2.4 Android移動端對推送數據的接收

  Android手機獲取服務器上不定期更新的消息主要有兩種方式:一種是不斷地發送更新請求,或者稱之為“輪詢”方式;另外一種則是在發生改變時,由服務端主動將消息推送給客戶端的用戶,這種方式稱為“推送”。兩者相比“輪詢”方式需要客戶端以一定的時間間隔向服務端發出請求,以頻繁請求的方式來保持客戶端和服務器端的同步。這種同步方案的最大問題是,當客戶端以固定頻率向服務器發起請求時,服務器端的數據可能并沒有更新,這樣會帶來很多無謂的網絡傳輸,而且頻繁的啟動數據連接必然會加速電量的消耗。而對于“推送”的情況,客戶端與服務器端完成連接以后,只有服務器端有信息更新以后才會主動向客戶端發送信息,在推送到來的周期內客戶端只需要保持最基本的連接信息,因此減少了通信流量與手機電量的消耗,是移動端實時消息通知的理想解決方案。

003.jpg

  本文使用MQTT協議完成對客戶端信息的推送,MQTT是一個機器對機器(M2M)的“物聯網”連接協議,是一個極其輕量級的基于發布/訂閱的消息傳輸協議,其主要結構如圖3所示[6]。與現有常用的GCM與XMPP推送相比,GCM推送方式受限于谷歌服務器,在國內運行不夠穩定,而XMPP協議發展成熟且具有較強的擴展性,但其協議冗余、復雜,對電量與流量的消耗較大。MQTT是專門為低帶寬、不穩定網絡以及計算和處理能力受限的設備所設計的,協議采用小型傳輸,耗電量小,能大大降低網絡流量,最小化數據包可有效分配與傳輸,非常適合移動系統上的應用[7]。

  服務器端對于MQTT協議的實現主要依靠Mosquitto,Mosquitto是一款開源的MQTT broker,它比較完整地實現了MQTT協議要求的各種基本功能,負責完成協議底層的網絡通信機制以及針對各種不同類型消息的收發機制。Android端在應用編寫時加入Eclipse Paho API,這個API幫助完成服務器連接、話題的發布與訂閱等功能。在訂閱話題時設置為永久訂閱以保證客戶端在離線或者關閉等無法接收信息的情況下,再次連接服務器時仍可以接收到之前沒有接收的信息。除了Activity以外,應用還使用Service組件,當用戶退出應用時其繼續在后臺運行定時向服務器端發送心跳以保證連接不被斷開,心跳以客戶端發送PINGREQ報文并接受從BROKER返回PINGREQ報文的形式維持長連接。當被監控對象出現生理指標異常時,系統會向其家屬、醫生等共同訂閱此話題的客戶端推送消息,推送數據時將以Notification通知的形式提醒用戶。

  2.5 服務器結構

  服務器端主要由服務器網站界面、后臺Windows服務、數據庫以及推送代理服務器組成。前臺網站界面是使用B/S模式的網頁程序,可以為有權限的用戶(例如患者及其家屬或主治醫生等)提供歷史數據的查詢及數據折線圖的顯示等。后臺Windows服務程序是運行在服務器上的后臺程序,負責接收通過socket發送的數據,并對數據進行解包、驗證、分組存入數據庫中。后臺數據庫主要用來把數據分組建表儲存起來(數據包括病人信息、血壓、血氧等生理數據),以便后期數據的訪問。當接收到的生理數據有嚴重異常時,Windows服務程序將消息發送給推送代理服務器,代理服務器負責將消息推送出去。代理服務器接收到生理指數異常、存在危險的信息后發布話題,所有訂閱該話題的手機客戶端將接收到推送的警告消息。服務器端整體結構如圖4所示。

004.jpg

3 實現結果

  經測試,在便攜式醫療設備采集數據并發送時,Android端可以通過藍牙接收到便攜式醫療設備采集的生理指標,并且在服務器端有消息推送時,Android端可以以消息通知的方式顯示接收的信息。實驗結果如圖5所示。

005.jpg

4 結束語

  本文主要研究Android系統在遠程醫療中的應用,通過使用帶有Android系統的智能設備將便攜式醫療設備采集的數據進行處理與發送。使用基于MQTT協議的推送系統,對緊急情況進行實時通知。結果表明,Android系統在遠程醫療的數據采集與發送、緊急事件的通知方面具有良好的應用前景。

參考文獻

  [1] 劉建,周保利.遠程醫療發展和管理問題的探討[J].中華醫院管理雜志,2001,17(1):50-51.

  [2] 胡偉. Android系統架構及其驅動研究[J].廣州廣播電視大學學報,2010,10(4):96-101.

  [3] 梁柱.Android應用程序自動化功能測試平臺的研究與開發[D].廣州:華南理工大學,2012.

  [4] 黃彬華.Android 4.X應用與開發實戰手冊(第2版)——適用Android 4.X~2.X[M].北京:清華大學出版社,2013.

  [5] 楊越譯.精通Android2[M].北京:人民郵電出版社,2010.

  [6] HUNKELER U, TRUONG H L, STANFORD-CLARK A. MQTT-S-a publish/subscribe protocol for wireless sensor networks[C]. 2008 3rd International Conference on Communication Systems Software and Middleware and Workshops, 2008:791-798.

  [7] IBM. MQTelemetryTransport[EB/OL]. (2013-06-05) [2015-06-01]. http://mqtt.org.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲综合不卡| 一二三四社区欧美黄| 欧美日本在线| 久久国产精品一区二区| 亚洲午夜久久久| 最新亚洲一区| 欧美一区二区三区在线| av成人天堂| 亚洲激情成人在线| 狠狠做深爱婷婷久久综合一区| 国产精品毛片a∨一区二区三区|国 | 亚洲大胆av| 午夜精品区一区二区三| 正在播放亚洲一区| 亚洲精品极品| 亚洲高清网站| 一区二区在线视频| 国产一区二区毛片| 国产亚洲一本大道中文在线| 国产精品夜夜夜| 国产精品r级在线| 午夜精品理论片| 亚洲一区二区黄色| 中文一区二区| 亚洲午夜激情网页| 亚洲图片激情小说| 国产精品99久久久久久久久| 亚洲免费观看在线观看| 亚洲精品美女免费| 亚洲伦理在线观看| 亚洲国产高清在线| 性刺激综合网| 性做久久久久久久免费看| 香蕉乱码成人久久天堂爱免费 | 国产在线精品自拍| 国产亚洲综合性久久久影院| 国产欧美日韩精品丝袜高跟鞋 | 午夜精彩国产免费不卡不顿大片| 亚洲一区三区电影在线观看| 亚洲永久视频| 午夜一级在线看亚洲| 欧美亚洲一区三区| 久久精品国产视频| 亚洲国产专区| 亚洲美女在线看| 中文日韩在线视频| 性xx色xx综合久久久xx| 久久国内精品自在自线400部| 久久精品理论片| 久久全国免费视频| 欧美激情偷拍| 国产精品久久7| 国产欧美大片| 加勒比av一区二区| 亚洲精品国产拍免费91在线| 一本一本久久| 一区二区三区视频在线播放| 亚洲自拍偷拍视频| 久久精品日韩欧美| 日韩午夜中文字幕| 亚洲欧美精品| 久久综合图片| 欧美精品自拍| 国产精品久久久久免费a∨| 国产视频亚洲精品| 在线观看国产一区二区| 日韩网站在线| 亚洲欧美在线播放| 亚洲第一天堂av| 99亚洲一区二区| 欧美亚洲三级| 免费亚洲电影| 欧美日韩视频在线一区二区观看视频| 欧美性做爰毛片| 国产精品你懂的| 激情综合色综合久久| 亚洲伦理在线免费看| 亚洲综合二区| 久久av资源网| 国产精品99久久久久久www| 久久精品2019中文字幕| 欧美激情亚洲一区| 国产午夜精品久久| 亚洲人在线视频| 午夜视频精品| 亚洲第一在线| 亚洲午夜久久久久久久久电影院| 久久不射网站| 欧美日韩国产综合视频在线观看| 国产精品一区二区男女羞羞无遮挡 | 欧美精品一区二区三区高清aⅴ| 国产精品乱子久久久久| 尤物九九久久国产精品的特点| 一区二区三区精品| 亚洲国产激情| 午夜精品一区二区三区在线| 欧美成人影音| 国产一区二区久久| 中文国产成人精品久久一| 亚洲国产精品va在看黑人| 午夜久久久久久| 欧美精品福利在线| 黄色成人av网| 先锋影音国产一区| 亚洲欧美精品一区| 欧美三区在线视频| 亚洲美女91| 99热免费精品在线观看| 欧美激情视频一区二区三区不卡| 在线观看成人一级片| 亚洲国产高清在线观看视频| 久久综合伊人77777| 国产一区深夜福利| 欧美在线免费一级片| 久久精品人人做人人爽| 国产精品永久免费视频| 亚洲欧美国产精品va在线观看| 午夜精品久久久久久久| 国产精品国产三级国产a| 在线亚洲观看| 性色av香蕉一区二区| 国产毛片久久| 欧美亚洲在线视频| 久久精品一区二区三区四区| 国产字幕视频一区二区| 亚洲国产精品女人久久久| 久久免费视频在线| 在线看片成人| 日韩一区二区电影网| 欧美日韩视频在线一区二区观看视频 | 中日韩视频在线观看| 亚洲综合精品自拍| 国产精品视频一区二区高潮| 亚洲免费影视| 久久免费黄色| 亚洲电影成人| 在线视频免费在线观看一区二区| 欧美日韩综合精品| 亚洲一区二三| 久久久天天操| 亚洲精品乱码久久久久久| 亚洲视频免费观看| 国产免费亚洲高清| 久久精品国产免费观看| 欧美激情国产日韩| 中文在线一区| 久久精彩视频| 亚洲国产精品尤物yw在线观看| 一本色道久久88综合亚洲精品ⅰ| 国产精品对白刺激久久久| 亚洲男人第一av网站| 久久男女视频| 亚洲免费av电影| 欧美在线视频一区二区| 在线看成人片| 亚洲欧美国产高清| 一区福利视频| 亚洲一区二区影院| 激情亚洲一区二区三区四区| 一个色综合导航| 国产一区二区三区黄| 亚洲久久成人| 国产精品日韩专区| 亚洲欧洲日本专区| 欧美aa在线视频| 一区二区三区你懂的| 午夜激情久久久| 亚洲天堂网在线观看| 欧美风情在线| 在线欧美视频| 久久精品亚洲| 久久精品人人| 欧美日韩视频免费播放| 亚洲国产精品精华液网站| 亚洲另类黄色| 羞羞答答国产精品www一本| 悠悠资源网久久精品| 亚洲女人天堂成人av在线| 激情懂色av一区av二区av| 亚洲深夜激情| 免费日韩av电影| 18成人免费观看视频| 亚洲制服av| 亚洲福利国产| 亚洲欧美三级伦理| 亚洲黄色成人| 欧美在线观看一区| 99re6热只有精品免费观看| 久久偷窥视频| 亚洲一区二区三区在线| 欧美激情在线狂野欧美精品| 欧美一区二区三区免费观看视频 | 欧美色区777第一页| 亚洲国产精品一区二区第一页| 国产精品美女诱惑| 99精品视频免费观看视频| 伊人久久婷婷色综合98网| 欧美在线免费观看| 一区二区不卡在线视频 午夜欧美不卡'| 玖玖视频精品|