【正文】
dialog_edit_username = (EditText) view .findViewById()。 圖 接收后續(xù)流程圖 界面布局 界面布局主 要由 xml配置文件管理,一般來說,應用中有多少個活動界面,就需要多少否 是 否 返回 連接藍牙 接收到數(shù)據(jù) ? 存入文件 轉換數(shù)據(jù) 讀寫標志 ? 監(jiān)測數(shù)據(jù) 波形圖 脈搏穩(wěn)定 ? 計算 BPM 開始 是 是 否 蘭州理工大學畢業(yè)設計 22 布局文件,因為本設計中并不要求有酷炫的界面效果,所有布局相對來說比較簡單。 蘭州理工大學畢業(yè)設計 21 y[i] = (i)。 // 如果心率曲線上揚則調(diào)用心率判斷方法 if (chartListSize 2) if (yTemp 0 amp。 // 響應線程 (new Runnable() { Override public void run() { refreshChart()。 和其他庫文件相似,使用 AChartEngine 引擎也要將相應的 jar 包導入項目庫文件中,如下圖所示。 } else { (bpmStr)。 int timeListSize = ()。 } // 將接收到的數(shù)據(jù)加入集合 蘭州理工大學畢業(yè)設計 18 (pluse)。 數(shù)據(jù)處理模塊 數(shù)據(jù)處理模塊被設計為對接收到的數(shù)據(jù)進行一定的算法處理,并在用戶選擇下將接收到的所有數(shù)據(jù)以文件形式保存下來,以便之后靜態(tài)觀察;另一方面,將接收到的數(shù)據(jù)進行條件分析,判斷波形的周期,并以此計算 BPM( Beat Per Minutes)。 數(shù)據(jù)接收模塊 此模塊承自藍牙模塊,當藍牙服務端準備就緒后,通過點擊設備列表進入下一個活動頁面,而在頁面切換間,就已經(jīng)啟動了數(shù)據(jù)接收功能,此處會判 斷點擊的設備是否為開發(fā)板配套的心率傳感器,如果是則會進入切換,否則是無法進入下一個頁面的。 ... private void scanLeDevice(final boolean enable) { if (enable) { // Stops scanning after a predefined scan period. (new Runnable() { Override public void run() { mScanning = false。 否 獲取藍牙適配器 開始 開啟藍牙服務 搜索 BLE 設備 連接到 GATT 服務端 搜索到 ? 讀取 BLE 屬性 接收服務端信息 結束 設備列表 是 蘭州理工大學畢業(yè)設計 15 mBluetoothAdapter = ()。 由于藍牙 在 Android 系統(tǒng)及以上才有較好的底層支持,故而無論是模擬器還是真機都使用 Android 以上的系統(tǒng)才可調(diào)試涉及藍牙 的應用,否則會出現(xiàn)亂碼數(shù)據(jù)或者無法開啟藍牙服務的現(xiàn)象。配以藍牙開發(fā)板 CC254x,連接之后可直接工作(程序代碼需自 行燒寫)。 因此,根據(jù)傳感器的敏感性質(zhì)不同,可分為兩部分介紹。其主要特點如下: ? 國際藍牙聯(lián)盟 (BT- SIG, TI 是企業(yè)成員之一 )通過的一個標準藍牙無線協(xié)議 ? 主要新特性是在藍牙標準版本上添加了 藍牙規(guī)范( 20xx 年 6 月) ? 針對無線應用程序與低功耗,低延遲,小數(shù)據(jù)包的傳輸需求 ? 主要是圍繞手機和個人電腦系統(tǒng),但也可用于其他應用程序 ? 就單模而言,和經(jīng)典藍牙設備不兼容 藍牙 開發(fā)至少要做兩方面的準備。本次設計用到的智能手機為華為榮耀 4X,操作系統(tǒng)為 Android ,支持藍牙 BLE。 圖 genymotion 和 emulator 的創(chuàng)建設備界面 另一方面, genymotion 的源碼包較為簡潔明了,創(chuàng)建虛擬設備時只需填入設備名稱即可,其他屬性均按照實際型號的真機定制,而 emulator 自定義的屬性較多,自主性較強,但大多設置并沒有必要,而且其啟動后尺寸是固定的,不能隨時進行調(diào)整,默認的屏幕尺寸高度會和 PC 的高度一致,導致開發(fā)視圖的不便(任務欄會遮住屏幕下方),相反 genymotion 就可以在啟動虛擬設備后自由調(diào)整其寬高度,以方便不同視圖的需要。 問題在于壓電傳感器過于靈敏,且受干擾較大 ,測出的波形噪聲信號難以處理,故而進度緩慢。 數(shù)據(jù)傳輸模塊承接藍牙模塊,開啟藍牙傳輸服務之后,程序會自動接收傳輸過來的數(shù)據(jù)并擬進行二次處理。 本設計則充分利用手機的無線通信功能,使用傳感器采集脈搏信號,通過手機藍牙接收信號,將智能手機變成一個“醫(yī)療設備” ( Medical Equipment[6]) 。 目前大型應用市場中已經(jīng)涌現(xiàn)了一批用于簡單醫(yī)療的 App 應用,有根據(jù)輸入的參數(shù)(如身高,體重)判斷體型是否合格的,有一些日常健康指導的(比如預防傳染病或感冒的常識),還有和硬件設備結合開發(fā)的計步器( 用于跑步時),用于調(diào)整生物鐘的睡眠鬧鐘,測心率的心率應用??但是也明顯表明,在不配合硬件的情況下,僅僅軟件是無法完成太多測試的,也無法提供用戶太多有用的信息或數(shù)據(jù)。 就時代科技背景而言,一切與便民服務相關的工作最終都將被“移動”,成為一股股“移動 XX”潮流 ,而“移動醫(yī)療”恰恰是其中的一種,也是相當重要的一種。其他功能諸如注冊功能,靜態(tài)顯示等也可通過在應用中添加相應代碼實現(xiàn),目的是通過保證數(shù)據(jù)的準確性和添加必要的功能,豐富并完善應用,使之可以廣泛使用。 關鍵詞: 脈搏;藍牙; Android;波形;健康 蘭州理工大學畢業(yè)設計 Abstract Along with rapid development of Mobile Inter,monitoring the health status by portab le terminal, bees a more feasible choice of medical design put foward an available scheme aimed at the the design,first of all,collecting human pulse signal by pulse sensor , then send it to the android terminal by bluetooth as wireless form,extract the signal from bluetooth on Android system, realizes the data read and data store, and then draw the realtime waveform according to received data, the current heart rate could be obtained through the handling of waveform analysis and testing, finally we learn on the current health status of the tester and make a simple review and advice. The datas for the design collected by photoelectric pulse sensor, the pluse sensor works by the transmission of light,to detect the change of blood concentration with the change of light intensity, result in voltage changing. The data converted to the digital signal on the bluetooth development board,and broadcast constantly .The application on the android could start bluetooth of the equipment and gained the broadcasting bluetooth signal, then established a connection and access to data services, received the pulse signal in realtime state. The data would be processed by algorithm in application, saved in the text file, and realtime waveform is given in the chart on the view of the wave form, the application could calculate the current heart rate of tester, and then application could show the the healthy condition of the tester according to the heart rate . Other functions such as registration, and static display can be achieved by adding the corresponding code in the application,such approach ensure the accuracy of the data and add the necessary function, enrich and perfect the application, make it can be widely used. Key words:pluse。眼觀當下,衣,可以在“淘寶”手機客戶端直接購買,食,可以在“大眾點評”中獲得有利信息,行,可以在“百度地圖”“攜程旅行”中隨時得知路況或踩點,住,可以在“ 58 同城”中查看租房買房信息??可以預見的是,醫(yī)療和教育將來也必會在移動互聯(lián)網(wǎng)中大放異彩,然后成為生活中耳熟能詳?shù)囊徊糠?。如果在未來,醫(yī)用設備能夠便攜化,就代表著移植到智能設備中的可能性很大,也就意味著,那是一個帶著手機就能隨時隨地檢測身體健康狀蘭州理工大學畢業(yè)設計 2 態(tài)的時代,一個真正的移動醫(yī)療時代。相對于傳統(tǒng)模式下,采集的醫(yī)療數(shù)據(jù)需要上傳到專門的服務器進行分析,移動醫(yī)療模式下 ,智能手機完全可以實現(xiàn)在手機本地對數(shù)據(jù)進行智能分析 。 數(shù)據(jù)處理模塊即在傳輸?shù)臄?shù)據(jù)基礎上,對其數(shù)據(jù)進行一系列算法處理,可將數(shù)據(jù)存入文件,也可用于繪圖。 Android 應用 +光電傳感器 由于 Android 系統(tǒng)的移植性強,裝載 Android 系統(tǒng)的設備越來越多且便攜性大大提高,計劃將此軟件移植到 Android 平臺中,利用光電傳感器和相應的藍牙開發(fā)板,將傳感器采集到的脈搏信號傳輸通過藍牙的形式傳輸?shù)街悄茉O備中,并利用 Android 下較為流行的圖表引擎AChartEngine 繪制相應的波形。 圖 為兩者創(chuàng)建虛擬設備時的界面 。 相對于模擬器來說,真機并不需要人為創(chuàng)建定制設備,可以直接投入開發(fā)使用。硬件方面,需要購買 TI 公司藍牙迷你套件,即藍牙 開發(fā)板(一般指 CC254x)以及 CC Debugger 傳真器;軟件方面, 安裝 IAR for 8051,TI 公司 BTool軟件。 壓電傳感器 壓電傳感器即壓敏電阻脈搏傳感器 HK20xxC,是在 HK20xxB 的基礎上增加了程控放大電路、基線調(diào)整電路、 A/D 轉換電路、串行通信電路,方便用戶集成及二次開發(fā)使用。關于此傳感器有一套自有的工具,主要是關于 BLE 藍牙 開發(fā)的必備工具,諸如 IAR 編輯器,SmartNRF 燒錄器,以及 CCDebug 仿真器,感興趣的讀者可自行查閱關于藍牙 的官方資料。 繪圖引擎選用 Android 下比較成熟的繪圖引擎 AChartEngine,此引擎專為繪圖而開發(fā),只要導入庫類包后就可以直接或選擇使用其中的有用類,避免開發(fā)時為自定義圖表類作太多繁瑣的工作 [9]。 ③ 開啟藍牙服務; private BluetoothAdapter mBluetoothAdapter。 (mLeScanCallback)。 數(shù)據(jù)接收并不是可以單一存在的功能,因此代碼是嵌在類中的,由 調(diào)用 中的靜態(tài)方法來達到目的。 首先,藍牙傳來的值就波形來看是上下顛倒了,故而為了波形顯示將傳過來的值一律取反,并轉換為整型值。 // 如果讀寫標志為真,則將接收到的數(shù)據(jù)寫入文件 if (saveFlag) { try { if (!()) ()。 // 求得此時與初始時刻所經(jīng)歷的時間間隔 durTime