国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

腕帶式生命體征監(jiān)測預警裝置的設計與開發(fā)

2017-04-08 08:24黃善登
電腦知識與技術 2017年5期
關鍵詞:可穿戴設備Android系統(tǒng)

黃善登

摘要:處于老齡化時期的中國,患有心臟病、癡呆疾病的老年人數(shù)呈上升趨勢,研究具有老年病自動檢測和及時預警的可穿戴設備,具有很大的市場前景。本文以ARM為核心,Android系統(tǒng)為軟件平臺,設計開發(fā)腕帶式生命體征監(jiān)測預警裝置,包括體溫監(jiān)測,脈搏檢測,通信和報警模塊組成,通信模塊負責提供攜帶者地理位置,并將攜帶者的體征信息發(fā)送給家屬,在穿戴者出現(xiàn)危機情況時,家屬可以通過手機獲取到攜帶者的脈搏、體溫的實時體征信息,并準確定位,及時發(fā)出響亮的語音呼救信號。

關鍵詞:生命體征監(jiān)測;可穿戴設備;ARM;Android系統(tǒng)

中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2017)05-0249-04

1 引言

據(jù)《中國老齡事業(yè)發(fā)展報告》指出,我們迎來了第一個老年人口增長高峰,在2015年末,中國大陸人口共達136782萬人,其中60周歲及以上人口21242萬人,占總人口的15.5%,65周歲及以上人口13755萬人,占總人口的10.1%,中國已處于老齡化時期。與此同時,老齡化人群帶來的一些困擾就體現(xiàn)出來了,并且患有心臟病、癡呆疾病的老年人數(shù)還呈上升趨勢[1],應該給予高度重視。

目前,具有自動檢測,及時預告的可穿戴設備是備受關注的。因可穿戴設備的便攜帶、智能化等特性,具有很大的市場前景[2]。根據(jù)《2015-2020中國可穿戴設備行業(yè)發(fā)展深度調(diào)研和投資趨勢預測研究報告》[3]的內(nèi)容概括,2014年的可穿戴設備行業(yè)可以用四個字來概括“激情澎湃”,到2015年雖然趨于理性,但是從技術層面來講,帶有傳感器的人工智能手環(huán)肯定會在醫(yī)療類大放異彩[4]。

現(xiàn)在子女因上班繁忙,大多數(shù)老人獨留家中,生命體征的信息無法實時監(jiān)測,也無法及時告知家人。本項目試研發(fā)一款可穿戴式的生命體征檢測預警器[5],該儀器是一個腕帶式可穿戴的裝置,在穿戴時出現(xiàn)危機情況后,家屬可以通過手機或者電腦隨時隨地的獲取到攜帶者的脈搏、體溫的實時體征信息[6],并可以獲取攜帶者的行走路線與準確定位[7],及時的做出應對措施;并且該裝置能發(fā)出響亮的語音呼救信號,利于及時出動120急救。對于及時診治、降低醫(yī)療及護理費用、提高生命質(zhì)量、延長壽命、減少獨生子女對父母的健康的憂慮有重大的經(jīng)濟和社會效益[8]。

2 系統(tǒng)框架

本文主要研究腕帶式生命體征監(jiān)測預警裝置,包括ARM控制模塊、通信模塊和終端軟件模塊三大部分,其中關鍵內(nèi)容包括硬件模塊和終端APP設計。

1)硬件模塊設計

采用ARM控制芯片,編寫可靠完善的控制程序,作為整體控制核心。此部分主要考慮的問題有:①脈搏和體溫的實時準確采集;②GPS的精確定位,將攜帶者地理位置傳送給遠程終端;③自動判別攜帶者疾病的癥狀,攜帶者出現(xiàn)心律失常、休克、心臟停博、體溫過高過低等緊急情況時,立即發(fā)出呼救信號,提醒周圍人及時施救;

2)監(jiān)測終端APP軟件設計

以手機為遠程監(jiān)測終端,與穿戴式設備實時通信獲取生命體征與預警信息,為了對老年人的身體狀況有動態(tài)掌握,設計圖形化的界面用以顯示所在地以及生命體征信息。

3 硬件模塊設計

系統(tǒng)硬件模塊包括脈搏模塊設計、體溫模塊設計、報警器模塊設計、GPS模塊、GPRS模塊。

3.1 脈搏模塊設計

脈搏模塊是采用松恩公司的son1303模塊。該模塊通過系統(tǒng)的時鐘計數(shù)器和中斷對I/O口的數(shù)據(jù)進行處理,而后得到該I/O口波形的頻率,從而上層應用可通過讀取頻率而計算出攜帶者的心率。

主程序在初始化創(chuàng)建窗口界面時,會構造脈搏模塊對象,在其中配置脈搏模塊對應I/O口的模式,配置為輸入和外部中斷模式,系統(tǒng)檢測到輸入信號發(fā)生跳變時(上升沿、下降沿),會觸發(fā)中斷,在每次中斷函數(shù)中,記錄系統(tǒng)時間計數(shù)器的值,因半個周期會進入中斷函數(shù)兩次,所以可以計算出輸入信號的頻率,從而得到對應信號所表示的心率。

3.2 體溫模塊設計

體溫模塊是采用DS18b20傳感器實現(xiàn)的。DS18B20有3個引腳,只需要一個I/O口硬件資源。通過攜帶者與產(chǎn)品的接觸點,檢測出數(shù)據(jù),再通過一根數(shù)據(jù)線用串行傳輸方式,將數(shù)據(jù)傳輸?shù)竭B接的I/O口上。該模塊需要編寫一個read函數(shù),將溫度傳感器通過特定的時序所得到的數(shù)據(jù)保存到形參,上層應用只需要調(diào)用對應的read函數(shù)就能夠得到數(shù)據(jù),再通過一定的數(shù)據(jù)轉換,就能得到溫度值[9]。

在QT調(diào)用read函數(shù)后,系統(tǒng)自動調(diào)用驅動中的readAPI,先進行I/O電平復位和置位,實現(xiàn)溫度傳感器DS18b20的復位,然后寫指令(write_byte(0xcc):寫跳過讀ROM指令,write_byte(0x44):寫溫度轉換指令),再一次傳感器復位,寫指令(write_byte(0xcc),write_byte(0xbe):讀暫存器),最后讀取溫度數(shù)據(jù)。

3.3 報警器模塊設計

蜂鳴器是一種一體結構化的電子訊響器,采用直流電壓供電的電磁式蜂鳴器。蜂鳴器有3個引腳,只需要一個I/O口,該模塊通過控制I/O的高低電平,使三極管Q6處于導通或關閉狀態(tài),從而使得Speaker兩個引腳產(chǎn)生電勢差,就能使蜂鳴器發(fā)出聲響。

該模塊提供一個API來接收上層應用傳下來的不同頻率、不同占空比的信號,以此來驅動蜂鳴器發(fā)出聲響,以達到報警的效果。

在QT中調(diào)用API,通過傳遞的參數(shù)(宏定義常數(shù)PWM_IOCTL_SET_FREQ設置頻率,PWM_IOCTL_STOP關閉預警器)來判斷執(zhí)行。在設置頻率中,通過設置寄存器S3C2410_TCON、S3C2410_TCNTB、S3C2410_TCFG1及S3C2410_TCFG0的值,可以在I/O引腳產(chǎn)生對應頻率的信號(可通過對S3C2410_TCMPB寄存器設置占空比);若是上層傳來參數(shù)是PWM_IOCTL_STOP,則是準備關閉預警器,可將I/O口設置為輸出模式,配置關閉電平即可關閉預警器。

3.4 GPS模塊

利用GPS衛(wèi)星定位,在全球范圍內(nèi)實時進行定位、導航,檢測出攜帶者的地理位置。

該模塊使用的是系統(tǒng)自帶的串口驅動,通過模塊將從衛(wèi)星上得到的數(shù)據(jù)存放到串口設備對應的設備文件中,程序只需要打開設備文件讀取里面的字符即可。

在主程序初始化界面時,創(chuàng)建GPS模塊對象,在其中對要使用的串口設置參數(shù),控制當前波特率、數(shù)據(jù)大小、數(shù)據(jù)流控等等。系統(tǒng)調(diào)用read時,將收到在設備文件中的數(shù)據(jù)讀取到一個緩沖區(qū)buf中,再根據(jù)你需要的哪些數(shù)據(jù)找到在buf對應的位置,取出來再轉換為你所需的數(shù)據(jù)[10]。

3.5 GPRS模塊

GPRS是GSM移動電話用戶可用的一種移動數(shù)據(jù)業(yè)務。GPRS是以封包(Packet)式來傳輸,因此使用者所負擔的費用是以其傳輸資料單位計算,并非使用其整個頻道,理論上較為便宜。GPRS的傳輸速率可提升至56甚至114Kbps。

該模塊使用的是系統(tǒng)自帶的串口硬件資源,在主程序編輯好需要發(fā)送數(shù)據(jù),通過GPRS模塊發(fā)送短信到指定號碼。

在主程序初始化界面時,創(chuàng)建GPS模塊對象,在其中對要使用的串口設置參數(shù),控制當前波特率、數(shù)據(jù)大小、數(shù)據(jù)流控等等。主程序中,脈搏或是體溫出現(xiàn)異常,就會調(diào)用send函數(shù),該模塊將異常數(shù)據(jù)及地理位置發(fā)送給指定號碼的家屬。

本設計針對傳統(tǒng)的數(shù)據(jù)通信傳輸中存在的干擾問題以及點對點錯誤傳輸問題,引用計算機領域流行的Hash算法,應用Hash的加密功能,為每一個腕帶生成一個“身份證”——特征碼,遠程監(jiān)測終端輸入特征碼后,就可以實時獲得該腕帶佩戴者的檢測信息。將Hash算法的錯誤糾正應用于腕帶與監(jiān)護人終端的通信傳輸中,確保檢測到的脈搏與體溫信息準確無誤地傳輸,并保證傳輸信息完整,避免遺漏報警或誤報警情況的發(fā)生,在攜帶者出現(xiàn)異常情況時,及時立馬的將攜帶者的生命體征數(shù)據(jù)以及事發(fā)地點發(fā)送給指定用戶(界面可選擇)。以便對方及時知道情況,做出相應措施。

4 程序設計

軟件設計包括軟件設計流程、QT界面設計、主程序設計、Android APP設計。

4.1 軟件設計流程

本次軟件設計的主要流程[11]:

(1)在Linux下驅動編寫,到ARM板調(diào)試;

(2)燒寫驅動到內(nèi)核,并配置好內(nèi)核的其他資源(適當裁剪);

(3)編譯內(nèi)核生成Zimage鏡像文件;

(4)文件系統(tǒng)、Uboot、Zimage3個鏡像文件一起加載到ARM;

(5)配置好ARM的QT運行環(huán)境;

(6)配置好Linux下的交叉編譯環(huán)境、QT編譯環(huán)境;

(7)QT編寫,生成執(zhí)行文件燒寫到ARM板查看并調(diào)試;

(8)編寫腳本,使QT界面在開機后直接運行。

軟件設計的流程圖如圖1所示。

4.2 QT界面設計

QT是一個1991年由奇趣科技開發(fā)的跨平臺C++圖形用戶界面應用程序開發(fā)框架[12]。它既可以開發(fā)GUI程序,也可用于開發(fā)非GUI程序,比如控制臺工具和服務器。QT是面向對象的框架,使用特殊的代碼生成擴展以及一些宏,易于擴展,允許組件編程。

QT具有如下特性:

(1)優(yōu)良的跨平臺性質(zhì),支持多個平臺開發(fā).有:Microsoft Windows 95/98, Microsoft Windows NT, Linux, Solaris, SunOS, HP-UX, Digital UNIX (OSF/1, Tru64), Irix, FreeBSD等;

(2)面向對象,良好的封裝機制使得QT的模塊化程度非常高,元件工作協(xié)調(diào)變得簡單;

(3)豐富的API接口,多大250+的C++類,還包括正則表達式的處理功能;

(4)支持2D/3圖形渲染,支持openGL。

本設計是通過C++的思想[13],將每個模塊封裝成一個類,再在每個cpp文件中將對應模塊中讀取的數(shù)據(jù)提取出來,再通過QT的UI設計出一個界面,將得到的數(shù)據(jù)填充到對應的位置,最后在執(zhí)行腳本,將界面顯示到液晶屏上。顯示設計布局及實物圖如圖2所示。

4.3 主程序設計

(1)初始化界面:調(diào)用ui的API(setText、setValue、setRange以及insertItem)對不同的編輯框填充數(shù)據(jù);

(2)讀取數(shù)據(jù):都是打開硬件對應的設備文件,調(diào)用read函數(shù),系統(tǒng)自動調(diào)用驅動的read函數(shù)獲得數(shù)據(jù);

(3)解析數(shù)據(jù):

1)GPS:根據(jù)數(shù)據(jù)解析協(xié)議將讀取到的字符串,在對應的數(shù)據(jù)位置將字符數(shù)據(jù)轉換為數(shù)字,得到相應的數(shù)據(jù);

2)體溫:在得到的兩個字符數(shù)buf[2]中,高八位buf[1]中高五位為符號位,低八位buf[0]中低四位為小數(shù)位,參考公式:tem=(buf[1]&0x7)*16 + buf[0]*0.0625,符號位單獨判斷;

3)脈搏:直接讀取數(shù)據(jù)即可;

(4)界面顯示:同初始化界面一樣,調(diào)用對應的API將解析得到的數(shù)據(jù)填充到編輯框里面;

(5)異常:讀取數(shù)據(jù)超出設定范圍值(通過界面設置);

(6)發(fā)送數(shù)據(jù)到手機:將需要發(fā)送的信息寫(write)到GPRS所對應的串口設備文件,在此之前,需要寫入一些協(xié)議類的字符串。

4.4 Android APP設計

在創(chuàng)建android應用[14]之前,先將android開發(fā)環(huán)境配置好。

在界面的調(diào)整上,一方面可以通過圖形界面,拖動圖形框到相應的位置,不過這樣會因為鼠標的移動單位距離和認為因素影響,可能會達不到理想的效果;另一方面,可以通過圖形界面生成的文件中,找到對應圖形框的那段代碼,修改圖形的大小,位置等其他參數(shù),達到理想效果。

這次設計因為在ARM的內(nèi)存因素影響,沒能在ARM板上調(diào)用百度API將經(jīng)緯度轉換為具體的地理位置,不過通過GPRS將數(shù)據(jù)發(fā)送給手機后,可在手機上調(diào)用百度API將接收到的經(jīng)緯度數(shù)據(jù)轉換出來,用地圖的形式在手機界面上顯示。

AndroidAPP編寫流程圖包括:接收信息API編寫,繼承百度地圖類,重寫類中的API,對圖形布局的XML文件進行修改等。

(1)接收信息API:繼承BroadcastReceiver,重寫onReceive函數(shù)[15],處理接收到的信息(地點、時間、體溫、心率);

(2)繼承百度地圖類:OnGetGeoCoderResultListener,該類將接收到的經(jīng)緯度信息轉換為實際地址;

(3)重寫對應API:重寫activity類中的onCreate(初始化實例對象)、onGetGeoCodeResult(查詢是否有匹配地址)

(4)Xml文件修改:activity_main.xml文件中有各個小圖標的詳細參數(shù)(位置、標簽、大?。?,androidManifest.xml文件是系統(tǒng)清單文件,可控制android應用的名稱、圖標、訪問權限等整體屬性。

5 總結

本系統(tǒng)實現(xiàn)了對攜帶者的脈搏、體溫數(shù)據(jù)的采集以及所處位置的定位,能夠在數(shù)據(jù)超出設定范圍時,立刻向指定的用戶手機發(fā)送信息,并且蜂鳴器響起,用以告知路人,有利于及時對攜帶者急救。對于及時診治、降低醫(yī)療及護理費用、提高生命質(zhì)量、延長壽命、減少獨生子女對父母的健康的憂慮有重大的經(jīng)濟和社會效益。

參考文獻:

[1] 胡國海.可穿戴生命體征檢測儀及監(jiān)測方法[P].中國專利,CN201410491676.5.2015.2.18.

[2] 滕曉菲,張元亭.移動醫(yī)療:穿戴式醫(yī)療儀器的發(fā)展趨勢 [J].中國醫(yī)療器械雜志(ISTIC),2006,30(5):13-15.

[3] 趙蘊博.一種腕式生命體征監(jiān)測裝置及其監(jiān)測方法[P].中國專利,CN10341720202A.2013.12.4.

[4] 俞渺.腕表式生命體征監(jiān)測報警裝置及方法[P].中國專利,CN201210368660.6.2012.12.26.

[5] 楊龍頻,周林,陳陽陽,等.依托無線物聯(lián)網(wǎng)技術的實時醫(yī)療健康監(jiān)測系統(tǒng)[J].中國衛(wèi)生信息管理雜志,2013(6),23-28.

[6] 西藏民族學院.基于GPS/GPRS的移動式生命體征遠程監(jiān)測裝置[P].中國專利CN201220574926.8.2013.4.24.

[7] 鮑淑娣,張元亭.遠程醫(yī)療:穿戴式生物醫(yī)療儀器 [J].中國醫(yī)療器械信息,2004,10(5):34-36.

[8] 陳柏煒,劉靜.淺析可穿戴式治療系統(tǒng)[J].科技導報,2008,26(11):42-46

[9] 郭天祥.新概念51單片機C語言教程[M].北京:電子工業(yè)出版社,2009:20-45.

[10] (林登).C專家編程[M].北京:人民郵電出版社,2008:247-250.

[11] (美)里科.C和指針[M].北京:人民郵電出版社,2008:325-343.

[12] (加)布蘭切特,(英)薩摩菲爾德.C++GUI QT4[M].北京:電子工業(yè)出版社,2013:23-45.

[13] (美)普拉達.C++Primer Plus第六版[M].北京:人民郵電出版社,2012:340-419.

[14] 王峰, 宣伯凱,楊鵬.基于Android的家庭移動醫(yī)療監(jiān)護系統(tǒng)的設計[J].計算機測量與控制,2015,23(5):3-41.

[15] 余志龍.Google Android SDK開發(fā)范例大全.北京:人們郵電出版社,2009:47-65.

猜你喜歡
可穿戴設備Android系統(tǒng)
基于汽車用戶行為研究的矯正司機開車姿勢穿戴設備設計