• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Android健康服務(wù)終端藍牙傳輸軟件的設(shè)計

      2012-06-23 06:42:36李黎國
      電子科技 2012年5期
      關(guān)鍵詞:藍牙應(yīng)用程序傳輸

      李黎國,張 輝,程 號

      (西安電子科技大學(xué)電子工程學(xué)院,陜西 西安 710071)

      隨著物聯(lián)網(wǎng)技術(shù)的不斷推動,計算機、無線通信、消費類電子呈現(xiàn)快速發(fā)展。體現(xiàn)物聯(lián)網(wǎng)應(yīng)用的熱點健康監(jiān)護領(lǐng)域,各種傳感器及無線的應(yīng)用,更能體現(xiàn)出物聯(lián)網(wǎng)技術(shù)的優(yōu)勢[1]。作為當(dāng)今市場支持范圍最廣泛、功能最豐富且安全的藍牙技術(shù)與物聯(lián)網(wǎng)技術(shù)。首先,藍牙技術(shù)包含了傳感器技術(shù)、識別技術(shù)、移動通信技術(shù)等,這些技術(shù)與物聯(lián)網(wǎng)密切相關(guān)。其次,藍牙的低功耗被看作消費電子產(chǎn)品、體育、健康護理、汽車、自動化等領(lǐng)域一大技術(shù)突破,也是物聯(lián)網(wǎng)技術(shù)的重要組成部分。尤其是藍牙4.0標準擁有著低耗能、傳輸范圍更大、支持拓撲結(jié)構(gòu)等特性。藍牙技術(shù)的不斷進步將為物聯(lián)網(wǎng)的發(fā)展提供動力。而Android操作系統(tǒng)在兩年多的時間里,飛速發(fā)展,成功超越了塞班、IOS、微軟等操作系統(tǒng),足以證明其發(fā)展?jié)摿癘S未來的發(fā)展趨勢。尤其是Android的開放性,大大降低了產(chǎn)品的成本,3.0版本及4.0版本對于平板電腦的支持,這足以使得Android在OS市場占有不敗之地。本文結(jié)合兩者的優(yōu)勢,詳細分析了藍牙技術(shù)和Android操作系統(tǒng),并研究了在Android下如何對藍牙進行應(yīng)用,最后設(shè)計出一款基于Android健康服務(wù)終端的藍牙傳輸軟件。

      1 藍牙技術(shù)

      藍牙技術(shù)聯(lián)盟(Bluetooth SIG)成立于1998年,是由愛立信、英特爾、聯(lián)想、微軟、摩托羅拉、諾基亞及東芝等公司發(fā)起成立??偛吭O(shè)在美國柯克蘭州,從建立之初到現(xiàn)在共有13528個全球成員,這些成員之間進行廣泛的合作,為藍牙技術(shù)的發(fā)展提供指導(dǎo)意見,推動藍牙的發(fā)展。同時在香港、北京、臺北和日本東京、韓國首爾和瑞典的馬爾摩都有辦事機構(gòu)。

      藍牙無線通信技術(shù)工作在工業(yè)、科學(xué)以及醫(yī)學(xué)上公用的2.4 GHz ISM公用頻段,這一頻段全球通用且無需授權(quán)。藍牙系統(tǒng)[2]采用全雙工分時傳輸信息技術(shù),信息以分組結(jié)構(gòu)的方式進行數(shù)據(jù)交換。在傳輸過程中,各信息分組用不同的跳頻算法實現(xiàn)信息傳輸?!疤l”技術(shù)是把頻帶分成若干個跳頻信道,在一次連接中,無線電收發(fā)器按一定的碼序列不斷地從一個信道“跳”到另一個信道,只有收發(fā)雙方按這個規(guī)律進行通信,而其他的干擾不可能按同樣的規(guī)律進行干擾;跳頻的瞬時帶寬很窄,這就使得來自同樣工作在2.4 GHz ISM頻段的家用電器,如微波爐等帶來干擾的可能性變得很小。與其他工作在相同頻段的無線系統(tǒng)相比,藍牙跳頻每秒可以達到1600次,速度更快,而且數(shù)據(jù)包更短,從而使藍牙比其他系統(tǒng)更穩(wěn)定。此外,藍牙通信還具有以下優(yōu)點:(1)消耗功率極低。(2)輻射小,對人體安全影響不大。(3)成本低廉,容易實現(xiàn)。

      目前,藍牙技術(shù)已經(jīng)得到普遍的應(yīng)用,全球大約80%以上的手機使用了藍牙技術(shù)。藍牙技術(shù)的普及為物聯(lián)網(wǎng)的發(fā)展提供了一種技術(shù)選擇,具有極大的發(fā)展空間。

      2 Android操作系統(tǒng)

      Android是專為移動終端打造的開放、完整的移動平臺,它是一款基于Linux內(nèi)核的開源操作系統(tǒng),由操作系統(tǒng)、中間件、用戶界面和應(yīng)用程序組成。由Google及其開放手機聯(lián)盟共同研發(fā),并在2008年9月份推出了Android第一版。

      Android操作系統(tǒng)架構(gòu)[3]從下到上有5部分組成:Linux內(nèi)核、Android Runtime、庫、應(yīng)用程序框架、應(yīng)用程序。Android系統(tǒng)架構(gòu)如圖1所示。

      圖1 Android系統(tǒng)架構(gòu)

      Linux內(nèi)核(Linux Kernel)。Android基于 Linux 2.6提供核心系統(tǒng)服務(wù),這是Android平臺開放的基礎(chǔ),它提供了例如安全機制、內(nèi)存管理、進程管理、網(wǎng)絡(luò)堆棧、驅(qū)動模型等內(nèi)容。Linux Kernel也作為硬件和軟件之間的抽象層,它隱藏具體硬件細節(jié)而為上層提供統(tǒng)一的服務(wù),使得應(yīng)用開發(fā)人員無需關(guān)心硬件細節(jié)。

      Android Runtime。Android包含一個核心庫的集合,提供大部分在Java編程語言核心類庫中可用的功能。每一個Android應(yīng)用程序是Dalvik虛擬機中的實例,運行在他們自己的進程中。Dalvik被設(shè)計成在一個設(shè)備可以高效地運行多個虛擬機。Dalvik VM虛擬機可執(zhí)行文件格式是.dex,dex格式是專為Dalvik設(shè)計的一種壓縮格式,適合內(nèi)存和處理器速度有限的系統(tǒng)。

      Libraries。Android包含一個C/C++庫的集合,這些庫供Android系統(tǒng)的不同組件使用。這些功能通過Android的應(yīng)用程序框架(Application Framework)暴露給開發(fā)者

      Application Framework。通過提供開放的開發(fā)平臺,Android使開發(fā)者能夠編制極其豐富和新穎的應(yīng)用程序。開發(fā)者可以自由地利用設(shè)備硬件優(yōu)勢、訪問位置信息、運行后臺服務(wù)、設(shè)置鬧鐘、向狀態(tài)欄添加通知等等,很多很多。

      應(yīng)用層(Applications)。Android裝配一個核心應(yīng)用程序集合,包括電子郵件客戶端、SMS程序、日歷、地圖、瀏覽器、聯(lián)系人和其他設(shè)置。所有應(yīng)用程序都是用Java編程語言寫的。

      Android作為第一款完整的、開放的、免費的平臺,在僅僅兩年多的時間,從最初的1.0版本到現(xiàn)在主流的2.3版本,以至剛剛發(fā)布的4.0版本,每個版本的發(fā)布對于Google來說都是一個質(zhì)的飛躍,根據(jù)市研機構(gòu)Gartner在2011年第二季度的OS份額調(diào)查數(shù)據(jù)顯示,Android市場占有率達43.4%,成為最大的智能手機系統(tǒng),隨著Android手機的普及,Android應(yīng)用的需求必定會越來越大,這將是一個有著巨大潛力的市場。

      3 Android操作系統(tǒng)下藍牙的研究

      Android平臺支持藍牙協(xié)議棧[4],因此支持在兩個藍牙設(shè)備之間進行數(shù)據(jù)的傳輸。Android應(yīng)用框架層提供了允許藍牙進行連接的API,通過這些API可以實現(xiàn)通過藍牙的應(yīng)用程序是無線連接,建立端到端的連接模式。使用藍牙API,可以實現(xiàn)應(yīng)用的如下功能:

      (1)尋找其他藍牙設(shè)備。

      (2)查詢與本地藍牙適配器配對的設(shè)備。

      (3)建立RFCOMM信道。

      (4)在兩個不同的藍牙設(shè)備之間傳輸數(shù)據(jù)。

      (5)管理多個藍牙連接。

      下面詳細介紹幾個重要的API:

      BluetoothAdapter:代表本地的藍牙適配器,是所有藍牙交互的的入口點。利用它可以發(fā)現(xiàn)其他藍牙設(shè)備,查詢已經(jīng)綁定的設(shè)備,使用已知的MAC地址實例化一個藍牙設(shè)備和建立一個BluetoothServerSocket來監(jiān)聽來自其他設(shè)備的連接。

      BluetoothDevice類:代表遠端的藍牙設(shè)備,使用它請求遠端藍牙設(shè)備連接或獲取遠端藍牙設(shè)備的名稱、地址、種類和綁定狀態(tài)。

      Bluetoothsocket類:代表藍牙套接字的接口,它是應(yīng)用程序通過輸入、輸出流與其他藍牙設(shè)備通信的連接點。

      Blueboothserversocket類:代表打開服務(wù)連接來監(jiān)聽可能到來的連接請求,為連接兩個藍牙設(shè)備必須有一個設(shè)備作為服務(wù)器打開一個服務(wù)套接字。當(dāng)遠端設(shè)備發(fā)起連接請求,并且已經(jīng)連接到了的時候,Blueboothserversocket類將會返回一個bluetoothsocket。

      Bluetoothclass類:描述了藍牙設(shè)備的一般特點和能力。它的只讀屬性集定義了設(shè)備的主、從設(shè)備類和一些相關(guān)服務(wù)。

      4 藍牙傳輸軟件的實現(xiàn)

      4.1 軟件功能描述

      藍牙傳輸軟件主要實現(xiàn)對各個模塊的管理,模塊數(shù)據(jù)的接收、分析、存儲、發(fā)送及復(fù)雜的人機交互等任務(wù)。為能夠合理分配硬件資源、提供更人性化的界面以及使用通用的硬件設(shè)備,在軟件設(shè)計時,健康服務(wù)終端采用Android操作系統(tǒng)為用戶界面。

      4.2 圖形用戶界面設(shè)計

      程序界面主要包括3個與用戶進行交互的Activity:(1)模塊顯示。(2)血氧歷史記錄。(3)血壓歷史記錄。

      為減少應(yīng)用所需的內(nèi)存量,項目沒有添加任何圖片及聲效。界面簡單直觀,便于操作。首先將各模塊列表作為應(yīng)用程序的主界面。程序運行的最開始加載此項。

      當(dāng)應(yīng)用程序啟動后,第一個顯示出各個模塊的列表和當(dāng)前測試數(shù)據(jù)。界面設(shè)計通過XML的資源文件進行定義。

      歷史記錄模塊采用了專為Android系統(tǒng)設(shè)計的圖形庫AChartEngine[5],可以用于繪制多種圖表。

      歷史記錄的顯示主要通過不同的線條顏色,點的形狀來區(qū)分顯示的不同內(nèi)容。

      4.3 軟件功能設(shè)計

      軟件功能設(shè)計包括藍牙管理,連接建立,數(shù)據(jù)傳輸及數(shù)據(jù)處理。

      藍牙部分設(shè)計

      在Android操作系統(tǒng)下,提供了對藍牙管理的API,藍牙開發(fā)流程如圖2所示。首先要判斷設(shè)備是否支持藍牙,并且保證藍牙可用。

      mBluetoothAdapter=BluetoothAdapter.getDefault-Adapter();

      如果藍牙可用,則mBluetoothAdapter不為空,然后判斷藍牙是否打開,若未打開,則提示用戶打開藍牙。

      到此,藍牙設(shè)備已經(jīng)打開。

      在Android應(yīng)用程序開發(fā)中,若要建立兩個藍牙設(shè)備的連接,必須實現(xiàn)客戶端和服務(wù)器端代碼。一個用來開啟服務(wù)監(jiān)聽,一個發(fā)送連接請求。當(dāng)它們都擁有一個藍牙套接字在同一RFECOMM信道上時,說明它們之間已經(jīng)建立好連接。服務(wù)器端采用accept()方法來建立連接。由于accept()方法是一種阻塞調(diào)用,因此不應(yīng)該放在主Acitvity里,要新建一個線程來管理。

      圖2 藍牙開發(fā)流程

      而客戶端則采用connect()方法來建立連接。同樣也是一種阻塞調(diào)用,同樣需要新建一個線程來管理。

      當(dāng)設(shè)備連接上以后,每個設(shè)備都擁有各自的Bluetoothsocket?,F(xiàn)在就可以實現(xiàn)設(shè)備之間數(shù)據(jù)共享了。同樣讀取和寫操作都是阻塞調(diào)用,需要建立一個專用的線程來管理。

      在兩個Activity之間,可以用Handler傳遞信息,使用getInputStream()獲得由傳感器傳來的數(shù)據(jù)并顯示在主界面中。

      4.4 藍牙傳輸軟件的運行與測試

      由于藍牙不能在虛擬機中測試,所以將程序打包后,安裝到支持藍牙的Android手機中,然后點擊血壓按鈕,將與血壓模塊建立連接,同時實時顯示當(dāng)前血壓值。點擊歷史記錄按鈕,則會顯示一周內(nèi)測試結(jié)果,并以圖片形式顯示出來。程序運行結(jié)果如圖3和圖4所示。

      圖3 主界面

      5 結(jié)束語

      圖4 歷史記錄界面

      Android在OS市場份額的不斷增加,足以體現(xiàn)出Android的優(yōu)勢,而藍牙4.0版本低功耗技術(shù)更適合于遠程控制、醫(yī)療保健及運動感應(yīng)器等新興市場。文中結(jié)合兩者的優(yōu)勢,設(shè)計出一款基于android的藍牙傳輸軟件,主要應(yīng)用于健康服務(wù)領(lǐng)域,在實際生活中具有很強的應(yīng)用性。論文介紹了軟件的初步設(shè)計,還有很多功能需要完善,比如界面的美化,更方便快捷地管理藍牙設(shè)計,數(shù)據(jù)傳輸?shù)姆€(wěn)定性及準確性等,這些將是以后研究的重點。

      [1]謝昕.基于物聯(lián)網(wǎng)的遠程家庭健康監(jiān)護傳感器網(wǎng)絡(luò)研究[D].北京:北京郵電大學(xué),2011.

      [2]浦東兵,趙東來,張雪,等.基于藍牙的智能家居網(wǎng)管設(shè)計[J].信息技術(shù),2010(2):11 -12.

      [3]E2EColud工作室.深入淺出 Google Android[M].北京:人民郵電出版社,2009.

      [4]黃偉敏.Android平臺的即時通信系統(tǒng)客戶端設(shè)計方案[J].現(xiàn)代電子技術(shù),2011,35(16):148 -150.

      [5]鮑立,莊奕琪.基于藍牙的MPEG4無線視頻傳輸研究[J].電子科技,2003,16(12):37 -39,41.

      [6]白璐,李國民.Android系統(tǒng)WMA文件播放功能的設(shè)計與實現(xiàn)[J].電子科技,2011,24(9):158 -161.

      猜你喜歡
      藍牙應(yīng)用程序傳輸
      藍牙音箱的直線之美
      混合型隨機微分方程的傳輸不等式
      牽引8K超高清傳輸時代 FIBBR Pure38K
      刪除Win10中自帶的應(yīng)用程序
      電腦報(2019年12期)2019-09-10 05:08:20
      電子制作(2018年18期)2018-11-14 01:48:00
      簡單、易用,可玩性強Q AcousticsBT3藍牙音箱
      適合自己的才是最好的 德生(TECSUN) BT-50藍牙耳機放大器
      緊急:藍牙指尖陀螺自燃!安全隱患頻出
      玩具世界(2017年8期)2017-02-06 03:01:38
      支持長距離4K HDR傳輸 AudioQuest Pearl、 Forest、 Cinnamon HDMI線
      關(guān)閉應(yīng)用程序更新提醒
      電腦迷(2012年15期)2012-04-29 17:09:47
      申扎县| 潍坊市| 潞城市| 金山区| 镇雄县| 台北县| 余江县| 金阳县| 白银市| 比如县| 沾化县| 深圳市| 乌拉特后旗| 衡阳县| 宁化县| 疏勒县| 石景山区| 宣威市| 清镇市| 科尔| 青冈县| 安福县| 大荔县| 三原县| 武鸣县| 大田县| 通道| 永平县| 邻水| 阿城市| 讷河市| 江口县| 闽清县| 横峰县| 大关县| 昌乐县| 札达县| 天祝| 安达市| 和林格尔县| 齐河县|