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

?

基于iOS及BLE的便攜氣象監(jiān)測(cè)系統(tǒng)終端設(shè)計(jì)

2016-12-22 21:47:27賈麗云林曉煥
軟件導(dǎo)刊 2016年11期

賈麗云++林曉煥

摘 要:作為藍(lán)牙4.0技術(shù)的核心規(guī)范,藍(lán)牙低功耗(BLE)無(wú)線技術(shù)給移動(dòng)應(yīng)用程序開(kāi)發(fā)人員提供了訪問(wèn)外部硬件通道,也使硬件工程師方便可靠地從每一個(gè)主流移動(dòng)操作系統(tǒng)訪問(wèn)BLE( Bluetooth Low Energy )設(shè)備。研究了藍(lán)牙低功耗技術(shù)協(xié)議原理及架構(gòu),介紹了藍(lán)牙無(wú)線通信的幾種模式。以iOS為平臺(tái)提出了一種由BLE氣象數(shù)據(jù)采集模塊、iPhone手機(jī)以及手機(jī)上的專用APP構(gòu)成的動(dòng)態(tài)氣象監(jiān)測(cè)系統(tǒng)方案。

關(guān)鍵詞關(guān)鍵詞:iOS;iPhone;BLE;氣象監(jiān)測(cè)

DOIDOI:10.11907/rjdk.161944

中圖分類號(hào):TP319

文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào)文章編號(hào):16727800(2016)011010303

0 引言

越來(lái)越多的手機(jī)及可穿戴設(shè)備使用藍(lán)牙4.0技術(shù)。該技術(shù)優(yōu)點(diǎn):①低功耗:在靜態(tài)狀態(tài),一節(jié)鈕扣電池可支持?jǐn)?shù)年之久;②低成本:藍(lán)牙技術(shù)逐步成為智能手機(jī)標(biāo)配;③開(kāi)放性:以2.4GHz頻段全球開(kāi)放。藍(lán)牙4.0技術(shù)使可穿戴設(shè)備炙手可熱,小米手環(huán)、蘋(píng)果公司的iBeacon等產(chǎn)品受到大眾歡迎,加速了物聯(lián)網(wǎng)革命的發(fā)展進(jìn)程[1]。

1 BLE協(xié)議架構(gòu)

氣象數(shù)據(jù)監(jiān)測(cè)系統(tǒng)采集模塊使用Nordic自主研發(fā)的nRF51822藍(lán)牙低功耗2.4GHz片上系統(tǒng)。nRF51822采用優(yōu)化的32位ARM Cortex-M0處理器,使BLE模式達(dá)到-92.5dBm 敏感度,最高達(dá)+4dBm的輸出功率,支持256KB片上閃存和16KB RAM,成為行業(yè)領(lǐng)先者。

藍(lán)牙低功耗(BLE)協(xié)議棧分為應(yīng)用程序、主機(jī)和控制器3個(gè)部分,如圖1所示[2]。應(yīng)用程序負(fù)責(zé)與實(shí)際用例相關(guān)的邏輯、用戶界面和數(shù)據(jù)處理,實(shí)現(xiàn)產(chǎn)品特定功能;主機(jī)包含GAP、GATT、SMP、ATT、L2CAP以及HCI層,可管理兩個(gè)或多個(gè)BLE設(shè)備相互間的通信;控制器主要用于收發(fā)編碼過(guò)的無(wú)線信號(hào),并通過(guò)解碼這些信號(hào)獲取內(nèi)部信息包[3]。

(1)物理層(PHY)。包含模擬通信電路,負(fù)責(zé)調(diào)制解調(diào),將模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)[4]。

(2)鏈路層(LL)。負(fù)責(zé)管理設(shè)備協(xié)議棧狀態(tài),此層定義4個(gè)角色:①?gòu)V告者(Advertiser):發(fā)送廣告包的設(shè)備;②掃描儀(Scanner):掃描廣告包設(shè)備;③主人(Master):?jiǎn)?dòng)連接并對(duì)連接進(jìn)行管理的設(shè)備;④奴隸(Slave):接受連接請(qǐng)求并與控制者時(shí)間同步[5]。

(3)主機(jī)控制接口(HCI)是一個(gè)標(biāo)準(zhǔn)協(xié)議。允許主機(jī)和控制器在串行接口進(jìn)行通信[6]。

(4)邏輯鏈路控制和自適應(yīng)協(xié)議(L2CAP)。是一個(gè)協(xié)議多路復(fù)用器,負(fù)責(zé)將上層的多個(gè)協(xié)議封裝成標(biāo)準(zhǔn)的BLE數(shù)據(jù)包格式,它支持分段和重組。

(5)安全管理協(xié)議(SMP)。既是一個(gè)協(xié)議也是一系列安全算法,負(fù)責(zé)為藍(lán)牙協(xié)議棧提供生成和交換安全密鑰能力,讓各節(jié)點(diǎn)通過(guò)加密鏈接安全交流,信任遠(yuǎn)程設(shè)備身份[7]。

(6)屬性協(xié)議(ATT)。是一個(gè)簡(jiǎn)單的客戶端/服務(wù)器無(wú)狀態(tài)協(xié)議,在BLE中,每個(gè)設(shè)備是一個(gè)客戶端或一個(gè)服務(wù)器,或者兩者兼有。

(7)通用訪問(wèn)配置(GAP)。允許BLE設(shè)備相互操作。它提供一個(gè)框架,任何BLE實(shí)現(xiàn)必須允許設(shè)備發(fā)現(xiàn)彼此、廣播數(shù)據(jù)、建立安全連接以及執(zhí)行其它基本操作標(biāo)準(zhǔn)。

(8)通用屬性協(xié)議(GATT)。它是基于屬性協(xié)議(ATT),添加了一個(gè)層結(jié)構(gòu)和數(shù)據(jù)抽象模型,定義數(shù)據(jù)如何在應(yīng)用程序之間組織和交換 [8]。

2 藍(lán)牙無(wú)線通信原理

對(duì)BLE網(wǎng)絡(luò)中的角色、藍(lán)牙通信過(guò)程中廣告包類型及通信模式介紹如下。

2.1 BLE網(wǎng)絡(luò)中的角色

通用訪問(wèn)配置(GAP)定義了BLE網(wǎng)絡(luò)中4個(gè)角色,每個(gè)特定設(shè)備可同時(shí)扮演一個(gè)或多個(gè)角色。

(1)廣播角色(Broadcaster):定期發(fā)送廣告包數(shù)據(jù),不建立連接,使用鏈路層(LL)廣告角色。

(2)觀察角色(Observer):優(yōu)化了廣播設(shè)備收集數(shù)據(jù)的應(yīng)用程序,觀察者角色偵聽(tīng)從廣播端嵌入在廣告包中的數(shù)據(jù),使用鏈路層(LL)掃描儀角色。

(3)中心角色(Central):相當(dāng)于鏈路層(LL)主人角色,能夠建立多個(gè)連接設(shè)備,是連接的發(fā)起者。中心角色通常由智能手機(jī)或平板電腦扮演。

(4)外圍角色(Peripheral):相當(dāng)于鏈路層(LL)奴隸角色,這個(gè)角色通過(guò)廣告包使中心角色找到它,隨后建立連接[9]。

2.2 廣告包分類

藍(lán)牙通訊廣告包分3種類型:①是否可連接。掃描儀在接收廣告包時(shí)是否可開(kāi)啟連接,如果不能,則這個(gè)包只用來(lái)廣播;②是否可掃描。在收到廣告包時(shí)掃描儀是否可發(fā)起掃描請(qǐng)求;③是否定向。定向的廣告包只包含廣告者和目標(biāo)掃描儀的藍(lán)牙地址,不允許負(fù)載用戶數(shù)據(jù),所有的定向廣告包都可連接,不定向廣告包不針對(duì)任何特定掃描儀,可包含用戶數(shù)據(jù)[10] 。

3 系統(tǒng)搭建

軟件整體設(shè)計(jì)基于MVC(Model-View-Controller),即模型-視圖-控制器,簡(jiǎn)稱MVC。模型提供應(yīng)用程序所需數(shù)據(jù)資源。視圖是用戶可以看到并與之交互的界面??刂破黜憫?yīng)視圖傳遞的用戶事件,調(diào)用模型和視圖資源滿足用戶需求。MVC模式分工明確,降低了模塊之間的耦合性,是一種非常流行的設(shè)計(jì)模式[11]。

3.1 系統(tǒng)框架設(shè)計(jì)

系統(tǒng)通過(guò)藍(lán)牙4.0傳輸協(xié)議接收氣象數(shù)據(jù)采集模塊發(fā)送的數(shù)據(jù),在iPhone上進(jìn)行氣象數(shù)據(jù)處理分析及顯示,系統(tǒng)框架如圖2所示。

3.2 模型處理

本系統(tǒng)主要對(duì)溫度、濕度、氣壓數(shù)據(jù)進(jìn)行實(shí)時(shí)監(jiān)測(cè),并繪制相應(yīng)的變化趨勢(shì)圖,提供氣象預(yù)測(cè)功能。通常,氣壓隨時(shí)間增加預(yù)示晴天,氣壓不斷減小則更接近陰天或下雨,模型如表1所示。采用滑動(dòng)均值濾波算法,采樣間隔為30分鐘。

3.3 數(shù)據(jù)庫(kù)設(shè)計(jì)

數(shù)據(jù)庫(kù)采用蘋(píng)果自帶的Core Data框架,它提供了對(duì)象-關(guān)系映射(ORM)功能,能夠?qū)C對(duì)象轉(zhuǎn)化成數(shù)據(jù),保存在SQLite數(shù)據(jù)庫(kù)文件中,也能夠?qū)?shù)據(jù)還原成OC對(duì)象。本方案創(chuàng)建了兩個(gè)實(shí)體對(duì)象:WeatherFob(氣象設(shè)備對(duì)象)和WeatherReading(數(shù)據(jù)對(duì)象),是一對(duì)多關(guān)系,如圖3所示。

3.4 藍(lán)牙模塊設(shè)計(jì)

BLE氣象設(shè)備信號(hào)采集與處理采用CoreBluetooth框架,與第三方藍(lán)牙4.0設(shè)備交互。為了減少數(shù)據(jù)傳輸開(kāi)銷,方案采用不可連接的藍(lán)牙通信模式,將用戶數(shù)據(jù)封裝在廣告包中進(jìn)行廣播,過(guò)程如圖4所示。本方案創(chuàng)建了一個(gè)ConnectionManager對(duì)象,繼承自NSObject類,遵守CBCentralManagerDelegate協(xié)議,實(shí)現(xiàn)協(xié)議中兩個(gè)方法:

4 系統(tǒng)測(cè)試

方案將原始廣告包打印在Xcode中的控制臺(tái),如圖5所示,外圍設(shè)備名稱是WS,其中氣象設(shè)備發(fā)送的數(shù)據(jù)包含在KCBAdvDataManufactureData對(duì)應(yīng)關(guān)鍵字中,KCBAdvDataIsConnectable = 0代表該氣象設(shè)備不可連接。系統(tǒng)將原始數(shù)據(jù)進(jìn)行拆分解析顯示在iPhone手機(jī)上,如圖6所示。

5 結(jié)語(yǔ)

本方案充分利用了iOS設(shè)備強(qiáng)大的計(jì)算能力、靈活的

可編程性、足夠的存儲(chǔ)空間、網(wǎng)絡(luò)連接功能、便攜性等特點(diǎn),使用藍(lán)牙4.0技術(shù)很好地解決了設(shè)備能耗問(wèn)題,使本方案成本更低、速度更快、距離更遠(yuǎn),在花費(fèi)較少的情況下,實(shí)現(xiàn)了便攜氣象監(jiān)測(cè)系統(tǒng)功能。

參考文獻(xiàn):

[1] GENTILI M, SANNINO R, PETRACCA M. Bluevoice: voice communications over Bluetooth Low Energy in the internet of things scenario[J]. Computer Communications, 2016(1):116119.

[2] SEO J, CHO K, CHO W, et al. A discovery scheme based on carrier sensing in selforganizing Bluetooth Low Energy networks[J]. Journal of Network and Computer Applications, 2016(65): 7283.

[3] 徐金茍. 低能耗藍(lán)牙 4.0 協(xié)議原理與實(shí)現(xiàn)方法[J]. 微型電腦應(yīng)用, 2012, 28(10): 1619.

[4] 陳子龍, 張紅雨, 李俊斌. 藍(lán)牙 4.0 無(wú)線傳感網(wǎng)數(shù)據(jù)采集及以太網(wǎng)傳輸設(shè)計(jì)[J]. 電聲技術(shù), 2013 (10): 7477.

[5] 范晨燦. 基于藍(lán)牙 4.0 傳輸?shù)?Android 手機(jī)心電監(jiān)護(hù)系統(tǒng) [D]. 杭州: 浙江大學(xué), 2013.

[6] DEORDICA B, ALEXANDRU M. Advertisement using Bluetooth Low Energy[J]. Review of the Air Force Academy, 2014 (2): 6566.

[7] GALININA O, MIKHAYLOV K, ANDREEV S, et al. Smart home gateway system over Bluetooth low energy with wireless energy transfer capability[J]. EURASIP Journal on Wireless Communications and Networking, 2015(1): 118.

[8] ROSEVALL J, RUSU C, TALAVERA G, et al. A wireless sensor insole for collecting gait data[J]. Stud. Health Technol. Inform, 2014(200): 176178.

[9] PHAN R C W, MINGARD P. Analyzing the secure simple pairing in Bluetooth v4.0[J]. Wireless Personal Communications, 2012, 64(4): 719737.

[10] LIN Z M, CHANG C H, CHOU N K, et al. Bluetooth Low Energy (BLE) based blood pressure monitoring system[C].Intelligent Green Building and Smart Grid (IGBSG), 2014 International Conference on. IEEE, 2014: 14.

[11] 郭昊. 基于 ASP .NET MVC3 和jQuery的網(wǎng)站應(yīng)用開(kāi)發(fā)[D]. 武漢: 華中師范大學(xué), 2013.

(責(zé)任編輯:杜能鋼)

襄城县| 泰和县| 乐都县| 德惠市| 嘉兴市| 全南县| 安多县| 长沙市| 龙游县| 佛学| 若尔盖县| 崇仁县| 铜陵市| 阿巴嘎旗| 大方县| 铁岭市| 隆安县| 苏尼特右旗| 疏勒县| 星子县| 昂仁县| 成安县| 怀远县| 桐城市| 巨野县| 九寨沟县| 三河市| 左云县| 西宁市| 荥经县| 齐河县| 渝中区| 新野县| 浙江省| 南投市| 六枝特区| 龙岩市| 石景山区| 广东省| 东安县| 陇南市|