祝陽祝朝坤
(1.中國石油新疆油田公司,新疆克拉瑪依 834000;2.河南理工大學(xué)萬方科技學(xué)院,河南鄭州 450000)
基于Android手機的無線環(huán)境監(jiān)測系統(tǒng)的設(shè)計與應(yīng)用
祝陽1祝朝坤2
(1.中國石油新疆油田公司,新疆克拉瑪依 834000;2.河南理工大學(xué)萬方科技學(xué)院,河南鄭州 450000)
當前技術(shù)浪潮中,由于物聯(lián)網(wǎng)技術(shù)的盛行,小到家居生活,大到宇宙空間,智能化的概念已經(jīng)無孔不入的滲透入各種設(shè)備和領(lǐng)域。本文中對于環(huán)境的監(jiān)控這一課題繼續(xù)進行研究,創(chuàng)新點在于本設(shè)計采用智能手機作為監(jiān)測終端,通過采用藍牙協(xié)議進行數(shù)據(jù)的無線傳輸,為遠程讀取環(huán)境數(shù)據(jù)信息提供了可能。在生活中,人們可以通過手機來實時獲取室內(nèi)外所安裝的環(huán)境節(jié)點采集到的數(shù)據(jù);在工業(yè)上,例如在一些不方便人們進入的實驗室環(huán)境和環(huán)境條件惡劣的設(shè)備工作場所,工人們可以使用本設(shè)計,手機遠程讀取所需測量位置的環(huán)境信息。
單片機 藍牙協(xié)議 傳感器 環(huán)境監(jiān)測 智能手機
最近幾年,“物聯(lián)網(wǎng)”技術(shù)浪潮正以席卷全球的趨勢迅速蔓延開來,如逐漸成熟的智能農(nóng)業(yè)、智能工業(yè),以及被炒作的熱火朝天的智能家居等,無處不體現(xiàn)出了高科技新技術(shù)在生活和社會生產(chǎn)中無限的活力。在物聯(lián)網(wǎng)時代即將到來的新一輪產(chǎn)業(yè)革命背景之下,污染源自動監(jiān)控、環(huán)境在線監(jiān)控、衛(wèi)星遙感等技術(shù)手段的應(yīng)用不僅會改變“廢氣靠看、廢水靠聞、噪聲靠聽”的落后監(jiān)管局面,也將對環(huán)境管理理念、方法、體制、機制的變革形成推動力量。
本設(shè)計能夠運用在一些日常需要實時監(jiān)測溫濕度和光照數(shù)據(jù)的場景,例如智能農(nóng)業(yè)大棚,智能家居、工業(yè)等場景。設(shè)計中通過STC系列單片機對溫濕度傳感器,光照傳感器的數(shù)據(jù)進行采集。并在采集到相關(guān)數(shù)據(jù)之后進行處理和分析,同時通過單片機的串口將數(shù)據(jù)傳輸給藍牙模塊,Android手機通過和單片機外接藍牙模塊的配對,對傳感器采集來的數(shù)據(jù)進行接收。并將其在事先寫好的Android手機APP上顯示出來。
設(shè)計分為硬件設(shè)計和軟件設(shè)計兩大部分,其中硬件包括包含單片機在內(nèi)的硬件節(jié)點的設(shè)計,和各模塊的整合;軟件設(shè)計則分為單片機程序的編寫,以及Android智能手機上的APP的開發(fā)。其設(shè)計框架如圖2.1所示。
2.1 硬件的選型和設(shè)計
基于STC系列單片機的mini環(huán)境節(jié)點的設(shè)計。
節(jié)點設(shè)計采用性價比較高的STC89C系列單片機做為微控制器,采用相關(guān)的環(huán)境參數(shù)傳感器進行環(huán)境信息的采集,同時使用藍牙模塊將采集的數(shù)據(jù)通過無線的方式發(fā)送給手機,從而設(shè)計出一種簡單實用的無線環(huán)境監(jiān)測節(jié)點。下面對設(shè)計中所使用的傳感器和藍牙模塊進行簡要的介紹。
(1)設(shè)計中采用的傳感器簡介。
①DHT22一體化溫濕度傳感器。DHT22濕敏電容數(shù)字溫濕度模塊是一款含有己校準數(shù)字信號輸出的溫濕度復(fù)合傳感器。傳感器包括一個電容式感濕元件和一個高精度測溫元件,并與一個高性能8位單片機相連接。因此該產(chǎn)品具有超低能耗、超快響應(yīng)、抗干擾能力強、性價比高等優(yōu)點。
②基于BH1750FVI的光照強度模塊。此模塊采用I2C總線和單片機進行通信,在模塊內(nèi)部將光照度轉(zhuǎn)換為響應(yīng)的數(shù)字信號進行輸出,輸出光照強度范圍為1~65535Lux。它的工作溫度范圍也很廣,可以在-45℃到+85℃的溫度條件下進行工作,滿足一般的工業(yè)生產(chǎn)的條件。同時也具有較高的靈敏的和精確度。
以上兩種傳感器是本節(jié)點中將要用到的傳感器,他們主要采集周圍環(huán)境中實時變化的溫濕度和光照度這三類信息。
(2)藍牙串口模塊簡介。藍牙,是一種支持設(shè)備短距離通信(一般10m--20m左右)的無線電技術(shù)。能在包括移動電話、PDA、無線耳機、筆記本電腦、相關(guān)外設(shè)等之間進行無線信息交換。利用“藍牙”技術(shù),能夠有效地簡化移動通信終端設(shè)備之間的通信,也能夠簡化設(shè)備與因特網(wǎng)Internet之間的通信,從而數(shù)據(jù)傳輸變得更加迅速高效。藍牙采用分散式網(wǎng)絡(luò)結(jié)構(gòu)以及快跳頻和短包技術(shù),支持點對點及點對多點通信,工作在全球通用的2.4GHz ISM(即工業(yè)、科學(xué)、醫(yī)學(xué))頻段。同時由于藍牙技術(shù)具有低功耗,傳輸速度快等優(yōu)勢,因此被廣泛的運用在日常生活和生產(chǎn)場合。本設(shè)計中采用的藍牙串口模塊的RX、TX分別與單片機串口TX、RX的直接連接,通過單片機的串口通信方式,對采集到的數(shù)據(jù)進行傳輸。
(3)節(jié)點的整體效果圖。在本設(shè)計中STC89C52用作核心控制器,用來對DHT22和BH1750FVI傳感器的信息采集與處理,并控制藍牙模塊的收發(fā)工作有序的進行。在設(shè)計中起到至關(guān)重要的作用。環(huán)境節(jié)點的整體運行效果如圖2.2所示。
2.2 Android客戶端程序設(shè)計
Android手機上的APP設(shè)計。
Android客戶端應(yīng)用程序做為本系統(tǒng)的的手機客戶端是本系統(tǒng)的亮點設(shè)計,Android終端程序初步設(shè)計總共具有1個主頁面,以及三個子界面。其中三個子界面包括:環(huán)境信息監(jiān)控頁面、燈光控制頁面、攝像頭監(jiān)控點選擇頁面。現(xiàn)僅將已經(jīng)具體實現(xiàn)的環(huán)境監(jiān)測子界面以及部分代碼進行主要介紹。
(1)程序設(shè)計流程。
①主頁面。用戶打開應(yīng)用程序首先進入的是主頁面,該頁面具體效果圖如下圖2.3所示。
界面環(huán)境搭建主要通過在main.xml文件中,用代碼對文件進行布局,下面對main.xml文件的布局進行簡要說明。文件使用LinearLayout對界面進行整體布局,其中使用TextView和ImageView對界面中的文字以及圖片進行基本定義。在使用Button控件在界面的特定位置放置按鈕。即可得到如上所示界面布局。
具體對主界面按鈕的控制則由Main_activity類完成,該類繼承自Activity,通過重載父類的onCreate()方法實現(xiàn)對main.xml中各控件的操作,然后分別對其中的三個Button按鈕注冊監(jiān)聽事件,當點擊對應(yīng)的按鈕時,將觸發(fā)所對應(yīng)的監(jiān)聽器,即可轉(zhuǎn)入相對應(yīng)的界面,部分代碼如下所示:
由以上代碼我們可以看出,當點擊“環(huán)境信息”、“視頻監(jiān)控”以及“電燈”三個不同的按鈕時,會觸發(fā)不同的監(jiān)聽事件,轉(zhuǎn)入對應(yīng)的子頁面中去。
②“環(huán)境信息”子頁面。環(huán)境信息子頁面效果圖如下圖2.4所示:
界面環(huán)境搭建主要在environment.xml文件中進行定義,類似于主頁面的搭建形式,在此不再贅述。同時我們可以看到關(guān)于本頁面會有對外界溫濕度光照等傳感器數(shù)據(jù)信息的一個采集。傳感器數(shù)據(jù)信息是通過手機上自帶的藍牙功能與mini環(huán)境節(jié)點上的藍牙模塊進行點對點通信獲得的不斷變化著的實時數(shù)據(jù)。具體實現(xiàn)需要調(diào)用Android藍牙模塊相關(guān)的一些方法。首先android手機需要對自己周圍的藍牙設(shè)備進行掃描,并連接mini環(huán)境節(jié)點所對應(yīng)的藍牙模塊。當與環(huán)境節(jié)點的藍牙模塊進行連接之后,即可進一步對單片機發(fā)送來的數(shù)據(jù)信息進行獲取。
(2)Android應(yīng)用程序APP的生成。當一系列軟件開發(fā)工作都完成之后,則需要對所開發(fā)的app進行測試。在基于Android的Eclipse開發(fā)環(huán)境下,只需要點擊編輯器中Run菜單下的的Run As---Android Application一項即可運行,同時會在工程文件夾下的bin目錄下生成一個.apk的壓縮文件,也就是APP的安裝包。接下來只需要將其拷貝到Android智能手機上進行安裝即可。
(3)Android智能手機端功能測試。Android智能手機終端功能測試主要分為以下幾個方面:
①首先將apk應(yīng)用程序安裝到Android智能手機上,安裝完成后會出現(xiàn)名為“智能監(jiān)控系統(tǒng)”的應(yīng)用程序小圖標。
②點擊運行應(yīng)用程序后,即可進入如文中圖2.3所示的環(huán)境監(jiān)控系統(tǒng)主界面。
③點擊“環(huán)境信息”,并連接硬件節(jié)點所對應(yīng)的藍牙設(shè)備,將出現(xiàn)如文中圖2.4所示的環(huán)境監(jiān)控信息頁面。在此頁面下,我們可以看到硬件節(jié)點上的傳感器采集到的各種環(huán)境數(shù)據(jù)。這些環(huán)境信息隨著當前環(huán)境的不斷改變而實時變化。
至此,該設(shè)計的主要功能已經(jīng)實現(xiàn)。通過藍牙方式完美的將硬件節(jié)點所采集到的傳感器信息傳輸給Android智能手機,并實現(xiàn)了對環(huán)境信息的實時監(jiān)測功能。
本設(shè)計的主要是以Android JAVA編程、單片機C語言為主要開發(fā)語言,以單片機開發(fā)板、各種傳感器模塊、PC機、Android智能手機為硬件平臺,設(shè)計并實現(xiàn)了環(huán)境信息監(jiān)測系統(tǒng),該系統(tǒng)已初步實現(xiàn)了通過藍牙的無線方式實時獲得監(jiān)控點環(huán)境信息的功能,同時也實現(xiàn)了通過Android智能手機實時監(jiān)測一定范圍內(nèi)的環(huán)境信息的目的。
在接下來的設(shè)計中,還希望能夠完成對當前環(huán)境下的實時視頻監(jiān)控功能,也會在接下來的時間里對本設(shè)計發(fā)現(xiàn)的問題及時更正,期待能夠在實際運用中不斷改進,不斷完善,達到更加完美的效果,以便更好的用于生活和工業(yè)生產(chǎn)。