張 強,鄭 昊
(中國電子科技集團公司第十五研究所,北京100083)
基于安卓手機的環(huán)境信息采集傳輸系統設計與實現
張 強,鄭 昊
(中國電子科技集團公司第十五研究所,北京100083)
利用藍牙無線傳輸的便利性和互聯網傳輸數據的靈活性,采用安卓手機作為數據匯集與上傳中心,使用nRF51822作為數據采集終端控制與藍牙傳輸中心,DHT11作為溫濕度采集模塊,同時利用手機采集圖片和GPS信息。安卓手機通過藍牙連接nRF51822芯片,接收到環(huán)境數據后將其打包,通過互聯網發(fā)送到遠程服務器端,可將結果通過微信公眾號或網頁在客戶端上進行分析與展示。數據采集終端采用藍牙4.0低功耗芯片nRF51822,使用兩節(jié)5號電池即可工作半年以上。此設計滿足了環(huán)境采集傳感器的實用性和可移動性。
物聯網;數據采集;低功耗藍牙;安卓;互聯網
物聯網通過智能感知、識別技術與普適計算等通信感知技術,廣泛應用于網絡的融合中,也因此被稱為繼計算機、互聯網之后世界信息產業(yè)發(fā)展的第三次浪潮。利用物聯網技術監(jiān)測環(huán)境信息是解決環(huán)境問題的第一步。其中,監(jiān)測設備、網絡通信、數據庫管理與應用或網站的數據處理顯示組成此監(jiān)控系統。硬件與軟件的發(fā)展,推進著環(huán)境監(jiān)控向著完善前進。
很多學者使用Zigbee模塊和單片機網關的組合實現環(huán)境信息采集與傳輸[1-4],其中單片機網關的設計較為復雜,并且無法給用戶提供便捷的操作體驗。還有學者采用單片機模塊、藍牙模塊實現環(huán)境數據的采集與傳輸,安卓手機作為客戶端連接藍牙芯片進行環(huán)境數據的展示[5-9]。但是由于藍牙傳輸的近距離限制,這樣的設計無法滿足環(huán)境數據的遠程展示與分析。
文中針對環(huán)境數據的采集與傳輸,兼顧其便利性與實用性,采用安卓手機作為傳輸網關,使用藍牙4.0作為近距離通信技術,采集溫濕度、煙霧、光照、圖片、經緯度、地磁強度等信息,并通過互聯網傳輸到遠程服務器,便于后續(xù)的數據展示。
此系統包含4大功能模塊:1)nRF51822驅動環(huán)境傳感器采集環(huán)境數據;2)nRF51822通過藍牙將環(huán)境數據傳輸到安卓手機。3)安卓手機利用自身的傳感器采集環(huán)境信息。4)安卓手機通過互聯網將數據傳輸到服務器端。
利用nRF51822的傳感器驅動能力,驅動溫濕度傳感器DHT11采集溫濕度信息,驅動煙霧傳感器mq-2采集煙霧信息,驅動光傳感器采集光照信息。
nRF51822搭配低功耗藍牙4.0芯片,通過在安卓手機上編寫藍牙連接程序可以使用安卓手機發(fā)現并連接到nRF51822。安卓端程序通過預先初始化藍牙連接,可以通過輪詢來獲得每個nRF51822采集的環(huán)境數據。
目前市面上的安卓手機普遍帶有攝像頭、全球定位系統(GPS)、電子羅盤等傳感器,通過編寫安卓程序,可以獲得圖片、經緯度、地磁強度等環(huán)境信息。
安卓手機可以通過安裝的手機卡所提供的GPRS功能或者通過無線局域網功能訪問互聯網。安卓端和服務器端約定好數據傳輸格式和傳輸接口,通過互聯網,可以將通過藍牙接收到的環(huán)境數據和自身采集的環(huán)境數據發(fā)送到服務器端進行存儲保存。
本系統依據不同協議的數據傳輸分為三層架構,總體架構如圖1所示。

圖1 環(huán)境數據采集傳輸系統架構
數據采集終端由nRF51822、dht11溫濕度傳感器、mq-2煙霧傳感器、光傳感器組成,通過藍牙連接到安卓手機。安卓手機端,通過定時輪詢,可以連接多個數據采集終端。安卓手機接收到環(huán)境數據后,與自身采集的圖片等數據使用http協議通過互聯網傳輸到服務器端。
環(huán)境數據采集終端由nRF51822模塊、DHT11溫濕度傳感器、MQ-2煙霧傳感器、光傳感器組成,通過編寫運行在nRF51822上的程序,可以驅動DHT11、MQ-2、光傳感器采集環(huán)境數據,并能驅動藍牙連接模塊,進行環(huán)境數據的藍牙傳輸。
nRF51822是芬蘭NORDIC公司研發(fā)的藍牙4.0低功耗通信芯片,其搭配有32位的ARM Cortex M0處理器,一個32位定時器,兩個16位定時器,31個gpio引腳,支持4路PCM輸出[10-11],電路圖如圖2所示。
DHT11是一款有已校準數字信號輸出的溫濕度傳感器。精度濕度+-5%RH,溫度+-2攝氏度,量程濕度20~90RH,溫度0~50攝氏度。其與nRF51822連接電路圖如圖3所示。DHT11的數據輸出端口連接到nRF51822的口相連接。
MQ-2煙霧傳感器與光傳感器都是通過AO(模擬輸出)口輸出模擬值。MQ-2連接nRF51822的模擬量輸入口,光傳感器連接nRF51822的模擬量輸入口。
nRF51822搭配有ARM Cortex M0處理器,通過對nRF51822編寫程序,可以驅動環(huán)境傳感器采集數據。nRF51822的開發(fā)環(huán)境有keil5.13.0.0、Jlink4.96d、nRFgoStudio1.17.1、nRF51SDK6.1.0、SoftDevice7.1.0。Nrf51SDK提供了nRF51822的接口,keil用來編寫和調試程序,Jlink是燒錄驅動,nRFgoStudio用來燒錄程序到nRF51822,SoftDevice燒錄到nRF51822中用來驅動藍牙4.0。
燒錄程序時,使用Jlink仿真器連接nRF51822和電腦后,打開nRFgoStudio,首先燒錄SoftDevice,然后燒錄編譯后生成的二進制程序。

圖2 nRF51822電路圖

圖3 DHT11連接nRF51822電路圖
DHT11芯片內置控制器,通過單總線實現雙向通信。首先,主機發(fā)送開始信號,DHT11等待主機開始信號結束后,開始采集溫濕度信息,然后將40 bit的數據傳輸到主機,數據格式為8 bit濕度整數數據+8 bit濕度小數數據+8 bi溫度整數數據+8 bit溫度小數數據+8 bit校驗和[12-14]。
整個通訊過程如圖4所示

圖4 DHT11通信時序
nRF51822向DHT11發(fā)送開始信號的代碼如下:




MQ-2和光傳感器的輸出為模擬值,nRF51822通過讀取模擬值后,根據模擬值與煙霧濃度和光照強度的轉換關系,可以將模擬值轉換為濃度值和強度值。nRF51822讀取模擬數據的代碼如下:
開發(fā)環(huán)境由帶有攝像頭、GPS、電子羅盤的安卓手機、JDK1.8、AndroidStudio2.2.0.0組成,其中安卓手機中操作系統版本為Android5.0.2。其中,安卓手機運行編寫好的軟件采集環(huán)境信息,JDK提供java開發(fā)環(huán)境,AndroidStudio用來編寫、編譯、安裝程序到安卓手機。
程序需要使用攝像頭、GPS、電子羅盤、SD存儲卡模塊,需要首先在Android的清單文件中添加使用權限。在程序中調用Andoid SDK提供的攝像頭接口拍照,然后將照片存儲到SD存儲卡中,調用GPS接口獲得經緯度位置信息,調用電子羅盤接口獲得地磁強度。編寫好程序后,安裝到安卓手機上進行調試。
藍牙技術聯盟(Bluetooth SIG)2010年7月7日宣布,正式采納藍牙4.0核心規(guī)范(Bluetooth Core Specification Version 4.0)。藍牙4.0技術擁有極低的運行和待機功耗,使用一粒紐扣電池甚至可連續(xù)工作數年之久。
藍牙4.0規(guī)范定義了通用訪問協議(Generic Access Profile,GAP)和通用屬性協議(Generic Attribute,GATT)。GAP負責發(fā)送廣播,建立連接,初始化設別等通信準備工作,GATT負責鏈接后的數據通信[15-16]。
nRF51822做為從設備,進行廣播,當接收到連接請求后,建立連接,獲得連接建立成功事件后,開始驅動傳感器采集環(huán)境數據,然后將環(huán)境數據發(fā)送給安卓手機,當獲得連接斷開事件后,nRF51822進入低功耗,等待下一次的連接。安卓手機首先需要做一次初始化連接,初始化連接的目的是記錄后續(xù)待連接的nRF51822的物理地址(Media Access Control,MAC)。然后設置一個定時器,定時讀取已存儲的藍牙MAC地址,連接藍牙設備,讀取環(huán)境數據后斷開連接。
安卓手機通過藍牙獲得采集終端傳輸的環(huán)境數據和自身采集的環(huán)境數據后,需要通過互聯網將數據發(fā)送到服務器端,由服務器存儲處理。安卓手機通過http協議的post方法,將數值型環(huán)境數據和標識符組成鍵值對,作為傳輸參數通過一次請求傳輸到服務器。代碼如下:

對于圖片這種大二進制文件的傳輸,使用構造post請求來實現。
安卓手機作為中心點,使用定時輪詢通過藍牙獲得分散在周邊的多個采集終端的環(huán)境數據,結合本身采集的環(huán)境數據,通過互聯網發(fā)送到服務器。整個系統的工作流程如圖5所示。

圖5 環(huán)境采集傳輸系統流程圖
該系統利用藍牙低功耗技術,實現了具備長達半年以上的采集終端,結合安卓手機作為中心,方便了用戶的設置操作,更能夠調用安卓手機的攝像頭和傳感器采集圖像、位置、地磁強度等環(huán)境信息,利用安卓手機連接互聯網的方便性,實現了將環(huán)境數據上傳到服務器的功能,為最終環(huán)境數據的多方面展示、深入分析,提供了基礎。本系統所述方案已證明可行,系統的安裝便捷性和使用方便性可使其在多領域應用,目前已用于機房監(jiān)控、倉庫監(jiān)控等領域。后續(xù)需要繼續(xù)完善環(huán)境數據采集終端,利用微信和網頁實現多種類的環(huán)境數據展示,同時,大量數據的積累,為環(huán)境數據的深度分析提供了數據來源。
[1]徐全鳳,基于ZigBee技術的遠程監(jiān)控病房環(huán)境采集系統[D].曲阜,曲阜師范大學,2014.
[2]李俊斌,胡永忠,基于CC2530的ZigBee通信網絡的應用設計[J].電子設計工程,2011,19(16):108-111.
[3]韓華峰,杜克明,孫忠富,等,基于ZigBee網絡的溫室環(huán)境遠程監(jiān)控系統設計與應用[J].農業(yè)工程學報,2009,25(7):158-163.
[4]徐敬東,趙文耀,李淼,等.基于ZigBee的無線傳感器網絡設計[J].計算機工程,2010,36(10):110-112.
[5]熊獅,基于Android系統的生理數據藍牙傳輸技術[J].中國醫(yī)學物理學雜志,2012,29(6):3801-3803.
[6]范晨燦,基于藍牙4.0傳輸的Android手機心電監(jiān)護系統[D].杭州:浙江大學,2013.
[7]董世琨,張學典,常敏,等.基于Android手機藍牙的無線智能控制系統設計[J].信息技術,2014(8):22-24.
[8]楊德龍,基于Android系統的藍牙無線動態(tài)心電監(jiān)護系統設計[D].天津:天津大學,2013.
[9]鄺小磊,黃仁龍,陳曉波.基于android手機的藍牙智能家居控制系統[J].科研,2016(9):10-12.
[10]趙萬年,潘輝,黃超,等.基于nRF51822的藍牙防丟器的設計與實現[J].電子科學技術,2016,3(1):46-49.
[11]張曉飛,宋良平,宋威.nRF51822藍牙4.0的溫度墑情測量設計[J].單片機與嵌入式系統應用,2016,16(1):56-59.
[12]韓英梅,趙建平,白慧靜.基于DHT11的無線溫濕度傳感器網絡節(jié)點的設計[J].井岡山大學學報(自然科學版),2011,32(1):67-70.
[13]潘繼強.基于DHT11的空氣溫濕度監(jiān)控系統的設計與實現[J].電腦知識與技術:學術交流,2014(21):5105-5108.
[14]張冬林,李鑫,戴梅,等.基于DHT11的低成本蠶室溫濕度自動控制系統的設計[J].現代農業(yè)科技,2010(18):14-15.
[15]徐金茍.低能耗藍牙4.0協議原理與實現方法[J].微型電腦應用,2012,28(10):16-19.
[16]黃敏,張珣.基于藍牙4.0心電監(jiān)護系統的研究[J].物聯網技術,2015(1):30-31.
Design and implementation of environment information acquisition and transmission system based on Android mobile phone
ZHANG Qiang,ZHENG Hao
(The15THResearch Institute Of China Electronics Technology Group Corporation,Beijing100083,China)
The use of Bluetooth wireless transmission convenience and the flexibility of the Internet transmission of data,the use of Android mobile phone as a data collection and upload center,the use of nRF51822 as a data acquisition terminal control and Bluetooth transmission center,DHT11 as a temperature and humidity acquisition module,while using mobile phones to collect pictures and GPS information.Android mobile phone through the Bluetooth connection nRF51822 chip,after receiving the environmental data will be packaged,sent to the remote server through the Internet,the results can be displayed by WeChat public or web page on the client for analysis and display.Data acquisition terminal using Bluetooth 4.0 low-power chip nRF51822,the use of two batteries on the 5th can work more than six months.This design meets the practicality and mobility of the environmental acquisition sensor.
Internet of things;data acquisition;low power bluetooth;Android
TN914
A
1674-6236(2017)22-0069-05
2017-04-10稿件編號:201704052
張強(1992—),男,山東臨沂人,碩士研究生。研究方向:地理信息系統。