畢業(yè)論文-基于物聯(lián)網(wǎng)的智能大棚控制系統(tǒng)的設(shè)計(jì)與現(xiàn)實(shí)_第1頁
畢業(yè)論文-基于物聯(lián)網(wǎng)的智能大棚控制系統(tǒng)的設(shè)計(jì)與現(xiàn)實(shí)_第2頁
畢業(yè)論文-基于物聯(lián)網(wǎng)的智能大棚控制系統(tǒng)的設(shè)計(jì)與現(xiàn)實(shí)_第3頁
畢業(yè)論文-基于物聯(lián)網(wǎng)的智能大棚控制系統(tǒng)的設(shè)計(jì)與現(xiàn)實(shí)_第4頁
畢業(yè)論文-基于物聯(lián)網(wǎng)的智能大棚控制系統(tǒng)的設(shè)計(jì)與現(xiàn)實(shí)_第5頁
已閱讀5頁,還剩56頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、PAGE 基于物聯(lián)網(wǎng)的智能大棚控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)姓 名: 學(xué) 號:指導(dǎo)教師:專 業(yè):網(wǎng)絡(luò)工程(物聯(lián)網(wǎng))完成日期:2016年04月30日 基于物聯(lián)網(wǎng)的智能大棚控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) PAGE iii摘 要隨著我國城市化建設(shè)的進(jìn)一步推進(jìn),我國可耕種地面積在逐年減少,如何充分利用現(xiàn)有的土地資源顯得十分重要。目前,我國北方大部分地區(qū)都有溫室大棚,由于溫濕度,光照,CO2濃度直接影響作物的產(chǎn)量,因此如何給作物提供一個適宜生長的大棚環(huán)境,是一個值得研究的課題。本文設(shè)計(jì)了基于物聯(lián)網(wǎng)技術(shù)的溫室大棚系統(tǒng)。該系統(tǒng)滿足了用戶在遠(yuǎn)距離條件下對大棚內(nèi)環(huán)境參數(shù)的監(jiān)控,采用本系統(tǒng)可以實(shí)現(xiàn)大棚內(nèi)溫濕度、CO2濃度等環(huán)境變量的

2、自動調(diào)節(jié)適宜作物生長的區(qū)間,真正實(shí)現(xiàn)溫室大棚的無人化管理。本系統(tǒng)分為了三個模塊:網(wǎng)頁模塊,無線網(wǎng)絡(luò)模塊,網(wǎng)關(guān)模塊,網(wǎng)關(guān)模塊是利用QT語言作為開發(fā)語言,搭載了s3c2440處理器的ARM9開發(fā)板,SQLite3嵌入式數(shù)據(jù)庫作為后臺數(shù)據(jù)庫,在Linux系統(tǒng)下使用QT Creator進(jìn)行開發(fā),網(wǎng)頁模塊是采用PHP腳本語言作為開發(fā)語言,在開發(fā)板上搭建了小型的web服務(wù)器,并集成了Highcharts插件,使得數(shù)據(jù)顯示的更加美觀、立體。無線網(wǎng)絡(luò)模塊使用的是ZigBee協(xié)議,充分的利用了ZigBee自組網(wǎng)、低功耗的特點(diǎn),采用IAR for ARM作為開發(fā)環(huán)境。本系統(tǒng)采用了當(dāng)前熱門的物聯(lián)網(wǎng)技術(shù)、嵌入式技術(shù)和

3、無線傳感器網(wǎng)絡(luò)技術(shù)相結(jié)合的方法,并搭載了各種傳感器(溫度傳感器、濕度傳感器、光照度傳感器、土壤濕度傳感器、熱釋紅外感應(yīng)傳感器)和無線通信模塊,最終實(shí)現(xiàn)了對大棚生產(chǎn)過程中各項(xiàng)環(huán)境參數(shù)的精準(zhǔn)測量,并智能控制大棚內(nèi)各項(xiàng)環(huán)境狀況,進(jìn)而實(shí)現(xiàn)大棚環(huán)境的自動保溫、保濕、土壤濕度、歷史數(shù)據(jù)的記錄和安防監(jiān)測等功能。物聯(lián)網(wǎng)智能大棚系統(tǒng)還具有遠(yuǎn)程訪問與控制功能。用戶使用PC機(jī)不僅可以遠(yuǎn)程訪問大棚內(nèi)的相關(guān)數(shù)據(jù),實(shí)時(shí)觀察植物的長勢,還可以遠(yuǎn)程控制大棚內(nèi)部的執(zhí)行器件(風(fēng)扇、加濕器、加熱器)來改變大棚內(nèi)部環(huán)境?!娟P(guān)鍵詞】QT語言;無線傳感技術(shù);PHP腳本語言;SQLite3數(shù)據(jù)庫;ZigBee協(xié)議;Android語言Abs

4、tractWith the further advance of urbanization construction in our country, Chinas arable land area is reducing year by year, how to make full use of existing land resources is very important.At present, most areas have greenhouses in north China, due to the temperature and humidity, light, CO2 conce

5、ntration directly affect the output of crops, so how to provide a suitable for the growth of greenhouse environment, is a subject worth studying.This paper designed the greenhouses system based on Internet of things technology.The system can meet the users under the condition of long distance inside

6、 the greenhouse environment parameter monitoring, using this system can implement inside the greenhouse temperature and humidity, CO2 concentration and other environment variables automatically adjust the range of suitable for crop growth, achieve the unmanned management of greenhouses.This system i

7、s divided into three modules: the web module, wireless module, the gateway module, the gateway module is to use the QT language as a development language, carrying the s3c2440 processor ARM9 development board, SQLite3 embedded database as the back end database, using QT Creator for development under

8、 Linux system, the web module is using PHP scripting language as a development language, on the development board has set up a web server, for the small and integrate the Highcharts plug-ins, make the data more beautiful, stereo.Wireless network module is using a ZigBee agreement, fully using the Zi

9、gBee ad-hoc network and the characteristics of low power consumption, USES the IAR for ARM as a development environment.This system uses the current popular Internet of things technology, embedded technology and wireless sensor network technology with the combination of methods, and carried a variet

10、y of sensors (temperature sensor, humidity sensor, light sensor, a soil moisture sensors, pyroelectric infrared sensor) and wireless communication module, finally achieved to shed the various environmental parameters in the production process of precision measurement, and the environmental situation

11、 in the greenhouse intelligent control, thus realizes the greenhouse environment automatic heat preservation, moisture, soil humidity, historical data records and security monitoring, and other functions.The Internet of things intelligent greenhouse system also has the function of remote access and

12、control.Users not only can use PC remote access to the data inside the greenhouse, looks like the real-time observation of plants, can also remote control greenhouse internal executive components (fan, humidifier, heater) to change inside the greenhouse environment. 【key words】QT language;Wireless s

13、ensor technology;PHP scripting language;SQLite3 database;ZigBee protocol;Android languagePAGE II目 錄 TOC o 1-3 h z u HYPERLINK l _Toc4179 第1章 緒 論 PAGEREF _Toc4179 1 HYPERLINK l _Toc18652 1.1 研究背景 PAGEREF _Toc18652 1 HYPERLINK l _Toc31984 1.2國內(nèi)外研究現(xiàn)狀 PAGEREF _Toc31984 1 HYPERLINK l _Toc6617 1.3 前景意義 PA

14、GEREF _Toc6617 1 HYPERLINK l _Toc24866 1.4 系統(tǒng)特征 PAGEREF _Toc24866 2 HYPERLINK l _Toc5353 1.5 論文組織結(jié)構(gòu) PAGEREF _Toc5353 2 HYPERLINK l _Toc29091 第2章 系統(tǒng)相關(guān)技術(shù)基礎(chǔ) PAGEREF _Toc29091 3 HYPERLINK l _Toc29816 2.1 PHP技術(shù)簡介 PAGEREF _Toc29816 3 HYPERLINK l _Toc23899 2.2 Qt語言簡介 PAGEREF _Toc23899 3 HYPERLINK l _Toc228

15、41 2.3 Andriod技術(shù)簡介 PAGEREF _Toc22841 4 HYPERLINK l _Toc25082 2.3.1 AndroidStudio環(huán)境的簡介 PAGEREF _Toc25082 4 HYPERLINK l _Toc13017 2.3.2 Android Studio常用功能的介紹 PAGEREF _Toc13017 6 HYPERLINK l _Toc7753 2.4 SQLite數(shù)據(jù)庫 PAGEREF _Toc7753 8 HYPERLINK l _Toc9091 2.4.1 SQLite數(shù)據(jù)庫簡介 PAGEREF _Toc9091 8 HYPERLINK l

16、_Toc22567 第3章 系統(tǒng)概要設(shè)計(jì) PAGEREF _Toc22567 9 HYPERLINK l _Toc23668 3.1系統(tǒng)硬件設(shè)計(jì) PAGEREF _Toc23668 9 HYPERLINK l _Toc23375 3.1.1無線傳感網(wǎng)絡(luò)模塊 PAGEREF _Toc23375 9 HYPERLINK l _Toc9256 3.1.2 ZigBee無線通信模塊 PAGEREF _Toc9256 10 HYPERLINK l _Toc32594 3.1.3傳感器模塊 PAGEREF _Toc32594 10 HYPERLINK l _Toc31460 3.2系統(tǒng)軟件設(shè)計(jì) PAGER

17、EF _Toc31460 11 HYPERLINK l _Toc5745 3.2.1嵌入式網(wǎng)關(guān)軟件平臺搭建 PAGEREF _Toc5745 12 HYPERLINK l _Toc14511 3.2.2嵌入式網(wǎng)關(guān)的界面實(shí)現(xiàn) PAGEREF _Toc14511 12 HYPERLINK l _Toc21562 3.2.3 網(wǎng)絡(luò)遠(yuǎn)程控制程序設(shè)計(jì) PAGEREF _Toc21562 12 HYPERLINK l _Toc6134 3.3系統(tǒng)數(shù)據(jù)庫設(shè)計(jì) PAGEREF _Toc6134 13 HYPERLINK l _Toc29205 3.3.1 數(shù)據(jù)庫設(shè)計(jì) PAGEREF _Toc29205 13

18、HYPERLINK l _Toc31345 3.3.2數(shù)據(jù)庫概念模型圖 PAGEREF _Toc31345 13 HYPERLINK l _Toc18720 3.3.3數(shù)據(jù)詞典 PAGEREF _Toc18720 13 HYPERLINK l _Toc25088 第4章 系統(tǒng)詳細(xì)設(shè)計(jì) PAGEREF _Toc25088 15 HYPERLINK l _Toc5131 4.1 設(shè)計(jì)目標(biāo) PAGEREF _Toc5131 15 HYPERLINK l _Toc9621 4.1.1網(wǎng)關(guān)控制功能 PAGEREF _Toc9621 15 HYPERLINK l _Toc24801 4.1.2網(wǎng)頁查詢控制

19、功能 PAGEREF _Toc24801 15 HYPERLINK l _Toc27252 4.1.3 手機(jī)APP端的查詢控制功能 PAGEREF _Toc27252 15 HYPERLINK l _Toc14796 4.2 溫室大棚系統(tǒng)網(wǎng)關(guān)的詳細(xì)設(shè)計(jì) PAGEREF _Toc14796 15 HYPERLINK l _Toc27711 4.2.1 網(wǎng)關(guān)界面設(shè)計(jì) PAGEREF _Toc27711 15 HYPERLINK l _Toc1378 4.3 溫室大棚系統(tǒng)網(wǎng)頁部分的詳細(xì)設(shè)計(jì) PAGEREF _Toc1378 34 HYPERLINK l _Toc12980 4.3.1 HTML顯示界

20、面 PAGEREF _Toc12980 34 HYPERLINK l _Toc25087 4.3.2 AJAX請求腳本 PAGEREF _Toc25087 35 HYPERLINK l _Toc2565 4.3.3 傳輸數(shù)據(jù) PAGEREF _Toc2565 36 HYPERLINK l _Toc7472 4.4 溫室大棚系統(tǒng)手機(jī)APP模塊 PAGEREF _Toc7472 38 HYPERLINK l _Toc31528 第5章 系統(tǒng)測試 PAGEREF _Toc31528 45 HYPERLINK l _Toc12098 5.1 測試方案 PAGEREF _Toc12098 45 HYPE

21、RLINK l _Toc11171 5.1.1測試目的 PAGEREF _Toc11171 45 HYPERLINK l _Toc9320 5.1.2 測試原則 PAGEREF _Toc9320 45 HYPERLINK l _Toc2191 5.1.4 測試用例 PAGEREF _Toc2191 46 HYPERLINK l _Toc26662 5.1.5 測試分析 PAGEREF _Toc26662 47 HYPERLINK l _Toc32495 第6章 系統(tǒng)總結(jié)和展望 PAGEREF _Toc32495 48 HYPERLINK l _Toc19669 6.1 系統(tǒng)總結(jié) PAGEREF

22、 _Toc19669 48 HYPERLINK l _Toc21394 6.2 展望 PAGEREF _Toc21394 49 HYPERLINK l _Toc14459 參考文獻(xiàn) PAGEREF _Toc14459 49 HYPERLINK l _Toc32527 致 謝 PAGEREF _Toc32527 51基于物聯(lián)網(wǎng)的智能大棚控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)PAGE 53第1章 緒 論1.1 研究背景在“十二五”規(guī)劃中,物聯(lián)網(wǎng)成為了新興高新產(chǎn)業(yè)中最為熱門的技術(shù)之一。隨著物聯(lián)網(wǎng)的廣泛應(yīng)用,各行各業(yè)將得到快速的發(fā)展。物聯(lián)網(wǎng)在農(nóng)業(yè)中實(shí)現(xiàn)的智能化系統(tǒng),能夠降低勞動力成本,將傳統(tǒng)的勞動密集型產(chǎn)業(yè)逐步轉(zhuǎn)型。本

23、文從實(shí)際農(nóng)業(yè)種植、管理的角度出發(fā),闡述了物聯(lián)網(wǎng)在農(nóng)業(yè)中的信息化應(yīng)用,提高產(chǎn)業(yè)效率,改革農(nóng)業(yè)管理,所闡述的智能農(nóng)業(yè)系統(tǒng)已經(jīng)得到實(shí)際應(yīng)用,能更清晰地看到物聯(lián)網(wǎng)的重要作用。1.2國內(nèi)外研究現(xiàn)狀本文介紹了智能農(nóng)業(yè)系統(tǒng)軟硬件設(shè)計(jì),采用ZigBee技術(shù)構(gòu)建的無線傳感器網(wǎng)絡(luò)克服了有線傳感器網(wǎng)絡(luò)的局限性,具有低成本、低功耗、安全性高、易擴(kuò)展、維護(hù)部署方便等特點(diǎn)。本系統(tǒng)監(jiān)控溫室內(nèi)狀態(tài)不受地理位置限制,并完善移動終端系統(tǒng)。本系統(tǒng)的創(chuàng)意在于將日漸成熟的物聯(lián)網(wǎng)技術(shù)與農(nóng)業(yè)大棚系統(tǒng)結(jié)合起來。通過無線采集技術(shù)及無線控制技術(shù)組建了一個可以遠(yuǎn)程管理的農(nóng)業(yè)大棚。采集的數(shù)據(jù)可以通過網(wǎng)絡(luò)傳輸?shù)街骺刂行倪M(jìn)行數(shù)據(jù)關(guān)聯(lián)、數(shù)據(jù)分析,實(shí)現(xiàn)智能

24、農(nóng)業(yè)大棚系統(tǒng)從數(shù)據(jù)采集、遠(yuǎn)程監(jiān)控、數(shù)據(jù)分析匯總的一體化解決方案。1.3 前景意義對于農(nóng)業(yè)工作人員而言,作物對環(huán)境溫度、濕度的光照要求強(qiáng)度的要求往往很高,從而要求用戶具備一定的農(nóng)學(xué)專業(yè)知識。并且傳統(tǒng)的農(nóng)業(yè)大棚投入人力很多,人力和管理成本的增加無疑會大大境地農(nóng)業(yè)大棚的創(chuàng)收。智能農(nóng)業(yè)大棚系統(tǒng)可方便遠(yuǎn)程調(diào)控大棚內(nèi)的環(huán)境狀況,實(shí)現(xiàn)農(nóng)業(yè)大棚的科學(xué)管理,提高農(nóng)業(yè)人員的工作效率,降低綜合成本,帶來客觀的經(jīng)濟(jì)效益。對于科研人員而言,智能農(nóng)業(yè)大棚系記錄大棚內(nèi)各項(xiàng)作物不同時(shí)期的生長情況和各項(xiàng)數(shù)據(jù),方便了科研工作。 總之,智能農(nóng)業(yè)大棚系統(tǒng)可以使農(nóng)業(yè)行業(yè)的發(fā)展更加的迅速,前景更加的美好。1.4 系統(tǒng)特征本系統(tǒng)分為無線傳

25、感網(wǎng)絡(luò)、網(wǎng)關(guān)和主控中心三個部分,把嵌入式技術(shù),傳感器檢測技術(shù),無線通信等技術(shù)相結(jié)合。無線傳感網(wǎng)絡(luò)由協(xié)調(diào)器、路由器、四個數(shù)據(jù)采集節(jié)點(diǎn)(安防傳感器節(jié)點(diǎn)、光照度傳感器節(jié)點(diǎn)、溫度傳感器節(jié)點(diǎn)、濕度傳感器節(jié)點(diǎn))及一個控制節(jié)點(diǎn)組成。四個數(shù)據(jù)采集節(jié)點(diǎn)負(fù)責(zé)采集大棚內(nèi)溫度、濕度、光照度、安防信息并將采集到的數(shù)據(jù)經(jīng)路由器傳輸?shù)絽f(xié)調(diào)器。路由節(jié)點(diǎn)保障每個節(jié)點(diǎn)的有效數(shù)據(jù)傳輸路徑,確保數(shù)據(jù)傳輸穩(wěn)定。協(xié)調(diào)器負(fù)責(zé)對采集的數(shù)據(jù)進(jìn)行匯總處理,一方面將控制命令發(fā)給控制節(jié)點(diǎn),控制控制節(jié)點(diǎn)執(zhí)行風(fēng)扇、加濕器、加熱器的開關(guān)來協(xié)調(diào)大棚內(nèi)的環(huán)境,另一方面,協(xié)調(diào)器與網(wǎng)關(guān)通過串口通信傳遞大棚內(nèi)各種設(shè)置參數(shù)、命令及數(shù)據(jù)。網(wǎng)關(guān)架起了無線傳感網(wǎng)絡(luò)與局域網(wǎng)

26、通信渠道,將物聯(lián)網(wǎng)連入了互聯(lián)網(wǎng)。它通過標(biāo)準(zhǔn)串口與ZigBee協(xié)調(diào)器連接,收集無線傳感器網(wǎng)絡(luò)上傳的數(shù)據(jù),一方面接收協(xié)調(diào)器傳送的數(shù)據(jù),一方面通過無線路由器與主控中心聯(lián)系,將實(shí)時(shí)信息傳送給控制中心,并接收主控中心的命令,完成遠(yuǎn)程監(jiān)控大棚內(nèi)的環(huán)境信息。系統(tǒng)功能如下:1.實(shí)時(shí)監(jiān)測溫濕度、光照度、安防等信息。2.傳感器的歷史曲線。3.安防報(bào)警4.自動控制5.遠(yuǎn)程控制1.5 論文組織結(jié)構(gòu)本論文共分七章。論文的第1章為緒論,這一章主要講述了本系統(tǒng)的研究背景、國內(nèi)外研究現(xiàn)狀、前景意義、系統(tǒng)結(jié)構(gòu)和論文的組織結(jié)構(gòu);第2章主要介紹了開發(fā)本系統(tǒng)的相關(guān)技術(shù)基礎(chǔ),主要介紹了JSP,Java,MySQL和SQL語言的簡介等基

27、礎(chǔ)知識;第3章是對系統(tǒng)做的整體設(shè)計(jì),主要對系統(tǒng)的整體架構(gòu)構(gòu)架出來一個模型,確定各個模塊大體應(yīng)該能夠完成的功能,還對數(shù)據(jù)庫做了一個大體的設(shè)計(jì)。包含數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計(jì)、模型設(shè)計(jì)和物理設(shè)計(jì)等;論文從第4章開始介紹開發(fā)此系統(tǒng)的詳細(xì)過程,主要包括系統(tǒng)UI的設(shè)計(jì),業(yè)務(wù)邏輯的設(shè)計(jì)、通信邏輯及其協(xié)議的設(shè)計(jì)。包含了業(yè)務(wù)流程圖、系統(tǒng)功能結(jié)構(gòu)圖,系統(tǒng)詳細(xì)設(shè)計(jì)包括設(shè)計(jì)目標(biāo)、邏輯結(jié)構(gòu)設(shè)計(jì)、具體實(shí)現(xiàn)的功能等;第五章是對系統(tǒng)進(jìn)行的測試。測試各個功能是否能夠正常的工作。包括了測試用例圖;最后一章是對本系統(tǒng)的總結(jié)與對未來發(fā)展和改善的展望。第2章 系統(tǒng)相關(guān)技術(shù)基礎(chǔ)2.1 PHP技術(shù)簡介PHP是一種服務(wù)器端的,嵌入HTML的腳本

28、語言。PHP區(qū)別其他像客戶端JavaScript的地方是它的代碼在服務(wù)器端執(zhí)行.PHP能做什么?最低水平,PHP可以做任何其他CGI程序所能做的事務(wù),例如收集表格數(shù)據(jù),生成動態(tài)頁面內(nèi)容,或者收發(fā)cookies??赡茏顝?qiáng)大的、最有意義的特性是PHP支持大范圍的數(shù)據(jù)庫。書寫一個支持?jǐn)?shù)據(jù)庫的Web頁面是難以置信的簡單。當(dāng)前PHP支持的數(shù)據(jù)庫:Adabas D、IterBase、Solid、dBase、MySQL、SyBase、Velocis、FilePro、Oracle、Unix、DBM、Informix、PostgreSQL、SQLite。PHP通過協(xié)議也支持與其他服務(wù)的”交談”,像IMAP,SN

29、MP,NNTP,POP3,設(shè)置是HTTP也可以打開晦澀的網(wǎng)絡(luò)接口和其他協(xié)議交互。除此之外,用PHP寫出來的Web后端CGI程序,可以很輕易的移植到不同的系統(tǒng)平臺上。例如,先以LInux架的網(wǎng)站,在系統(tǒng)負(fù)荷過高時(shí),可以快速地將整個系統(tǒng)移到SUN工作站上,不用重新編譯CGI程序。這也是本論文選擇PHP作為服務(wù)器端語言的非常重要的原因之一。2.2 Qt語言簡介 Qt是一個基于C+的跨平臺應(yīng)用程序和UI開發(fā)框架。它包含一個類庫,和用于跨平臺開發(fā)及國際化的工具。由挪威Trolltech公司開發(fā),目前已被Nokia收購,而且Qt的”write once,compile anywhere”的跨平臺特性非常的

30、優(yōu)秀,QT語言有非常多的優(yōu)點(diǎn),像剛提到過的優(yōu)良的跨平臺特性,面向?qū)ο蟮奶匦裕篞T的良好封裝機(jī)制使得Qt的模塊化程度非常高,可重用性較好,對于用戶開發(fā)來說是非常方便的。Qt提供了一種稱為signals/slots的安全類型來替代callback,使得各個元件之間的協(xié)同工作變得十分簡單。另外Qt還有豐富的API,Qt包含多達(dá)到500個以上的C+類,還提供了基于模板的collections,serialization,file,I/O devices,directory management,data/time類。甚至還包括正則表達(dá)式的處理功能以及對XML的支持都使得Qt語言作為網(wǎng)關(guān)界面開發(fā)的最有力

31、的證據(jù)。2.3 Andriod技術(shù)簡介 Android一詞最早出現(xiàn)于法國作家利爾亞當(dāng)在1886年發(fā)表的科幻小說未來夏娃中,他將外表像人的機(jī)器人起名為Android。2010年2月3日,Linux內(nèi)核開發(fā)者Greg Kroah-Hartman將Android的驅(qū)動程序從Linux內(nèi)核“狀態(tài)樹”上除去,從此Android與Linux核心開發(fā)分道揚(yáng)鑣。Android是Google開發(fā)的基于Linux平臺的開源手機(jī)操作系統(tǒng)。它包括操作系統(tǒng)、用戶界面和應(yīng)用程序-移動電話工作的全部所需軟件,而且不存在任何以往阻礙移動產(chǎn)業(yè)創(chuàng)新的專有障礙。Android以Java為變成語言,使接口到功能,都有層出不窮的變化,

32、2014年5月16日,在I/O大會上,谷歌推出新的Android開發(fā)環(huán)境-Android Studio,并對開發(fā)者控制臺進(jìn)行改進(jìn)。2.3.1 AndroidStudio環(huán)境的簡介 Android Studio 是一個Android開發(fā)環(huán)境,基于 HYPERLINK /view/2735945.htm t /_blank IntelliJ IDEA. 類似 HYPERLINK /subview/23576/9374802.htm t /_blank Eclipse HYPERLINK /view/1237351.htm t /_blank ADT,Android Studio 提供了集成的 An

33、droid 開發(fā)工具用于開發(fā)和調(diào)試。在 HYPERLINK /view/92629.htm t /_blank IDEA的基礎(chǔ)上,Android Studio 提供:基于 HYPERLINK /view/9916271.htm t /_blank Gradle的構(gòu)建支持Android 專屬的重構(gòu)和快速修復(fù)提示工具以捕獲性能、可用性、版本兼容性等問題支持 HYPERLINK /view/1834969.htm t /_blank ProGuard和應(yīng)用簽名基于模板的向?qū)砩沙S玫?Android 應(yīng)用設(shè)計(jì)和組件功能強(qiáng)大的布局編輯器,可以讓你拖拉 UI 控件并進(jìn)行效果預(yù)覽 2013年2013年5

34、月16日,在I/O大會上,谷歌推出新的Android開發(fā)環(huán)境Android Studio,并對開發(fā)者控制臺進(jìn)行了改進(jìn),增加了五個新的功能。Android Studio是谷歌推出了新的Android開發(fā)環(huán)境,開發(fā)者可以在編寫程序的同時(shí)看到自己的應(yīng)用在不同尺寸屏幕中的樣子。2015年5月29日,在谷歌I/O開發(fā)者大會上,谷歌發(fā)布AndroidStudio 1.3版,支持C+編輯和查錯功能。Android Studio 1.3版開發(fā)碼代碼變得更加容易,速度提升,而且支持C+編輯和查錯功能。Android Studio的主界面非常的美觀,如圖2-1所示:圖 2-1 Android Studio的主界面

35、 這個界面,顯示了我們使用 Android Studio時(shí)經(jīng)常接觸到的功能面板。下面分別進(jìn)行介紹: 1.Project 面板。用于瀏覽項(xiàng)目文件。 Project 面板會顯示當(dāng)前的所有的 module 。android application module 會顯示一個手機(jī)圖標(biāo)(下圖中的 app);android library module 會顯示一個書架圖標(biāo)(下圖中的 android-lib);java library module 會顯示一個咖啡圖標(biāo)(下圖中的 javalib)。 2.Build Variants 面板。用于設(shè)置當(dāng)前項(xiàng)目的 Build Variants ( Gradle 知識

36、)。所有的 Module 默認(rèn)都會有 release 和 debug 兩種選項(xiàng)。當(dāng)你添加了 BuildTypes 和 productFlavors ,這里將出現(xiàn)更多的選項(xiàng)( Gradle 知識)。默認(rèn)情況下, release 和 debug 的區(qū)別并不是很明顯;針對于代碼來說,是沒有區(qū)別的。 3.Android 面板。功能類似于 Eclipse 中的 Logcat ,但是比其多了一些常用功能,例如:截圖,查看系統(tǒng)信息等。 4.編輯區(qū)。用于編輯文件。Gradle 面板。Gradle 任務(wù)列表,雙擊可執(zhí)行 Gradle 任務(wù)。常用任務(wù): build 、clean 、assemble 、assemb

37、leRelease 、assembleDebug 、lint 。2.3.2 Android Studio常用功能的介紹另外,Android Studio還提供了一些使用的功能:常用按鈕(1)編譯右側(cè) module 列表中顯示的 module 。(2)當(dāng)前 project 的 module 列表。(3)運(yùn)行左側(cè) module 列表中顯示的 module 。(4)debug 左側(cè) module 列表中顯示的 module 。(5)attach debugger to Android process 。(6)設(shè)置。(7)項(xiàng)目屬性。(8)使用 Gradle 編譯 project 。(9)虛擬機(jī)。(10

38、)SDK Manager 。(11)DDMS。2.常用面板Structure 用于顯示當(dāng)前活動文件的結(jié)構(gòu)。不僅僅支持 Java 文件,同時(shí)支持 Xml 文件、 .properties 配置文件等其他文件。如圖 所示:當(dāng)你查看布局文件或者 drawable 的 Xml 文件時(shí),右側(cè)會有 Preview 選項(xiàng),用于預(yù)覽效果。2.4 SQLite數(shù)據(jù)庫2.4.1 SQLite數(shù)據(jù)庫簡介 SQLite,是一款輕型數(shù)據(jù)庫,是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它包含在一個相對小的C庫中。它是D.RichardHipp建立的公有領(lǐng)域項(xiàng)目。它的設(shè)計(jì)目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占

39、用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語言相結(jié)合,比如TCL、C#、PHP、Java等,還有ODBC接口,同樣比起MySQL、PostgreSQL這兩款開源的世界著名數(shù)據(jù)庫管理系統(tǒng)來講,它們的處理速度比它們都快。SQLite第一個Alpha版本誕生于2000年5月。至2015年已經(jīng)有15個年頭,SQLite也迎來一個版本SQLite3已經(jīng)發(fā)布。 不像常見的客戶-服務(wù)器范例,SQLite引擎不是個程序與之通信的獨(dú)立進(jìn)程,而是連接到程序中成為它的一個主要部分。所以主要的通信協(xié)議是在編程語言內(nèi)

40、的直接API調(diào)用。這在消耗總量、延遲時(shí)間和整體簡單性上有積極的作用。整個數(shù)據(jù)庫(定義、表、索引和數(shù)據(jù)本身)都在宿主存儲在一個單一的文件中。它的簡單設(shè)計(jì)是通過在開始一個事務(wù)的時(shí)候鎖定整個數(shù)據(jù)文件而完成的。它的功能特性有:ACID事務(wù)、零配置-無需安裝和管理配置、儲存在單一磁盤文件中的一個完整的數(shù)據(jù)庫、數(shù)據(jù)庫文件可以在不同字節(jié)順序的機(jī)器間自由的共享、支持?jǐn)?shù)據(jù)庫大小至2TB、足夠小,大致13萬行C語言,4.43M、比一些流行的數(shù)據(jù)庫和大部分普通數(shù)據(jù)庫中操作要快、簡單,輕松的API、包含TCL綁定,同時(shí)通過Wrapper支持其他語言的綁定、良好注釋的源代碼,并且有著90%以上的測試覆蓋率、獨(dú)立:沒有額

41、外依賴、源碼完全的開源,你可以用于任何用途,包括出售它、支持多種開發(fā)語言,C,C+,PHP,Perl,Java,C#,Python,Buby等。 同時(shí)它還支持事務(wù)處理功能等等。也有人說它像Miscrosoft的Access,有時(shí)候真的覺得有點(diǎn)像,但是事實(shí)上它們區(qū)別很大。比如SQLite支持跨平臺,操作簡單,能夠使用很多語言直接創(chuàng)建數(shù)據(jù)庫,而不像Access一樣需要Office的支持。如果你是個很小型的應(yīng)用,或者你想做嵌入式開發(fā),沒有合適的數(shù)據(jù)庫系統(tǒng),那么你可以考慮使用SQLite。同時(shí)因?yàn)閿?shù)據(jù)庫結(jié)構(gòu)簡單,系統(tǒng)源代碼也不是很多,也適合想研究數(shù)據(jù)庫系統(tǒng)開發(fā)的專業(yè)人士。第3章 系統(tǒng)概要設(shè)計(jì)智慧農(nóng)業(yè)園

42、系統(tǒng)分為無線傳感網(wǎng)絡(luò)、網(wǎng)關(guān)和主控中心三個部分。嵌入式網(wǎng)關(guān)采用基于ARM A8處理器的開發(fā)板實(shí)現(xiàn),是整個系統(tǒng)的主控中心。網(wǎng)關(guān)通過標(biāo)準(zhǔn)串口與ZigBee協(xié)調(diào)器連接,收集無線傳感器網(wǎng)絡(luò)上傳的數(shù)據(jù),進(jìn)行分析,通過SOCKET通訊傳給UI界面進(jìn)行查看控制;另一方面通過網(wǎng)線與無線路由器連接,架起了無線傳感器網(wǎng)絡(luò)與局域網(wǎng)之間的數(shù)據(jù)通訊渠道,將物聯(lián)網(wǎng)連入了互聯(lián)網(wǎng),通過無線路由器,用戶可以遠(yuǎn)程訪問無線傳感器網(wǎng)絡(luò)所采集的數(shù)據(jù),可以設(shè)置系統(tǒng)的溫度和濕度參數(shù),可以向無線傳感器網(wǎng)絡(luò)中的控制節(jié)點(diǎn)發(fā)送控制命令,進(jìn)而遠(yuǎn)程控制執(zhí)行器件來調(diào)節(jié)溫室內(nèi)部環(huán)境,實(shí)現(xiàn)了人與物之間的信息交互。系統(tǒng)整體功能框圖如圖3-1所示:圖3-1 系統(tǒng)

43、功能框圖3.1系統(tǒng)硬件設(shè)計(jì)智慧農(nóng)業(yè)園監(jiān)控系統(tǒng)的硬件部分主要由無線傳感網(wǎng)絡(luò)模塊、嵌入式網(wǎng)關(guān)模塊構(gòu)成。3.1.1無線傳感網(wǎng)絡(luò)模塊 智慧農(nóng)業(yè)園的無線傳感網(wǎng)絡(luò)硬件采用模塊化的思路完成設(shè)計(jì),主要包括傳感器模塊、控制器模塊和ZigBee無線通信模塊三部分。傳感器模塊和控制器模塊是搭載在ZigBee無線通信模塊之上。這樣的結(jié)構(gòu)化設(shè)計(jì)方便用戶更換器件,最大限度的滿足實(shí)際設(shè)計(jì)的需求。其中ZigBee無線通信模塊和傳感器模塊組合為數(shù)據(jù)采集節(jié)點(diǎn),ZigBee無線通信模塊和控制模塊組合為控制節(jié)點(diǎn)。3.1.2 ZigBee無線通信模塊 ZigBee無線通信模塊是由核心板和外接主板組成。 ZigBee無線通信核心板的主控

44、芯片采用TI公司生產(chǎn)的ZigBee無線通信芯片CC2530,負(fù)責(zé)驅(qū)動傳感器以及數(shù)據(jù)的接收和發(fā)送。CC2530是一個真正用于IEEE802.15.4的ZigBee和RF4CE應(yīng)用的片上系統(tǒng)(SOC)解決方案,其能以較低的成本建立強(qiáng)大的網(wǎng)絡(luò)節(jié)點(diǎn)。CC2530集成了業(yè)界領(lǐng)先的RF收發(fā)器、增強(qiáng)工業(yè)標(biāo)準(zhǔn)的8051MCU,在系統(tǒng)可編程Flash存儲器,8kB的RAM和其他功能,且適合需要超低功耗的系統(tǒng)。協(xié)調(diào)器節(jié)點(diǎn)負(fù)責(zé)網(wǎng)絡(luò)的組建,完成各個終端節(jié)點(diǎn)的數(shù)據(jù)匯總打包,并將打包后的數(shù)據(jù)信息通過串口傳送給嵌入式網(wǎng)關(guān)。3.1.3傳感器模塊 傳感器模塊由不同的傳感器實(shí)現(xiàn),包括溫濕度傳感器、光照度傳感器、土壤濕度傳感器和熱

45、釋紅外傳感器。 1.溫濕度傳感器 溫濕度數(shù)據(jù)采集節(jié)點(diǎn)采用SHT10采集農(nóng)業(yè)大棚中的溫度和濕度,工作電壓2.4-2.5V,測濕精度為+-4.5%RH,足以滿足大棚要求。SHT10采用SMD貼片封裝,用兩條串行線與處理器進(jìn)行數(shù)據(jù)通信。數(shù)據(jù)采集完后ZigBee無線通信芯片將數(shù)據(jù)傳輸?shù)絽f(xié)調(diào)器,完成了一次數(shù)據(jù)采集。 2.光照度傳感器光照度傳感器實(shí)現(xiàn)光照數(shù)據(jù)采集功能,它采用光敏電阻采集環(huán)境的光照度信息,當(dāng)光照度發(fā)生變化時(shí),光敏電阻的阻值會減小。數(shù)據(jù)采集后轉(zhuǎn)化為電壓值送給CC2530單片機(jī),并通過CC2530單片機(jī)的射頻通信模塊將數(shù)據(jù)經(jīng)路由器傳輸?shù)絽f(xié)調(diào)器,完成一次數(shù)據(jù)采集。光照傳感器電路輸出的為電壓模擬信號

46、,需要用CC2530內(nèi)部的A/D轉(zhuǎn)換器將模擬信號轉(zhuǎn)換成數(shù)字信號,光照度傳感器與CC2530的P0_0相連,P0_0端口設(shè)置為ADC輸入工作模式。圖3-2 光照度節(jié)點(diǎn)電路圖 3.控制器模塊 控制模塊主要實(shí)現(xiàn)設(shè)備的開關(guān)控制,主要由繼電器及控制電路組成。采用USB接口與外圍設(shè)備連接??刂乒?jié)點(diǎn)負(fù)責(zé)執(zhí)行上協(xié)調(diào)器發(fā)送的開關(guān)設(shè)備的命令。控制節(jié)點(diǎn)配備繼電器模組,通過繼電器來驅(qū)動風(fēng)扇,調(diào)節(jié)室內(nèi)的通風(fēng)。光照度采集節(jié)點(diǎn)將光照信息采集送給協(xié)調(diào)器節(jié)點(diǎn),協(xié)調(diào)器向網(wǎng)關(guān)發(fā)送實(shí)時(shí)光照度數(shù)據(jù),通過繼電器控制設(shè)備的開關(guān)。 4.嵌入式網(wǎng)關(guān)模塊 嵌入式網(wǎng)關(guān)采用基于ARM A8處理器的開發(fā)板實(shí)現(xiàn),是整個系統(tǒng)的主控中心,由ARM嵌入式系統(tǒng)

47、及其外擴(kuò)器件組成。 5.主控中心模塊 主控中心和網(wǎng)關(guān)之間通過構(gòu)建以太網(wǎng)來完成兩者之間的數(shù)據(jù)通訊和交換。網(wǎng)關(guān)部分需要有一個無線網(wǎng)卡,網(wǎng)關(guān)將從協(xié)調(diào)器接收來的各傳感器的數(shù)據(jù)經(jīng)過處理后經(jīng)過無線網(wǎng)卡通過UDP協(xié)議發(fā)送給主控中心的應(yīng)用程序,主控中心從而將接收來數(shù)據(jù)進(jìn)行解析后顯示出來。同樣,當(dāng)用戶的在主控中心操作農(nóng)業(yè)園內(nèi)的設(shè)備時(shí),也需要將數(shù)據(jù)進(jìn)行封裝通過以太網(wǎng)發(fā)送給網(wǎng)關(guān)的網(wǎng)卡,網(wǎng)卡接收后,解析并將相應(yīng)的數(shù)據(jù)交給應(yīng)用程序進(jìn)行處理,來完成對農(nóng)業(yè)園內(nèi)的設(shè)備的控制。3.2系統(tǒng)軟件設(shè)計(jì)系統(tǒng)軟件設(shè)計(jì)是實(shí)現(xiàn)系統(tǒng)功能的重要組成部分。本系統(tǒng)分無無線傳感器模塊ZigBee協(xié)議棧軟件設(shè)計(jì)部分和嵌入式網(wǎng)關(guān)軟件設(shè)計(jì)部分。ZigBee

48、協(xié)議棧主要負(fù)責(zé)信息和的采集并且與嵌入式網(wǎng)關(guān)通信,嵌入式網(wǎng)關(guān)界面的設(shè)計(jì)主要是與無線傳感網(wǎng)絡(luò)模塊通信同時(shí)進(jìn)行服務(wù)器相關(guān)處理。協(xié)調(diào)器通信協(xié)調(diào)器通信Linux操作系統(tǒng)InternetQt界面硬件平臺圖 3-3 嵌入式網(wǎng)關(guān)軟件結(jié)構(gòu)圖3.2.1嵌入式網(wǎng)關(guān)軟件平臺搭建 嵌入式網(wǎng)關(guān)采用基于ARM A8處理器的開發(fā)板實(shí)現(xiàn),網(wǎng)關(guān)通過標(biāo)準(zhǔn)串口與 ZigBee 協(xié)調(diào)器連接,收集無線傳感器網(wǎng)絡(luò)上傳的數(shù)據(jù),進(jìn)行計(jì)算處理。另一方面通過無線網(wǎng)卡與無線路由器連接,架起了無線傳感器網(wǎng)絡(luò)與局域網(wǎng)之間的數(shù)據(jù)通訊渠道,將物聯(lián)網(wǎng)連入了互聯(lián)網(wǎng)。通過無線路由器,用戶可以遠(yuǎn)程訪問無線傳感器網(wǎng)絡(luò)所采集的數(shù)據(jù),可以設(shè)置系統(tǒng)的溫度和濕度參數(shù),可以向

49、無線傳感器網(wǎng)絡(luò)中的控制節(jié)點(diǎn)發(fā)送控制命令,進(jìn)而遠(yuǎn)程控制執(zhí)行器件來調(diào)節(jié)溫室內(nèi)部環(huán)境,實(shí)現(xiàn)了人與物之間的信息交互。3.2.2嵌入式網(wǎng)關(guān)的界面實(shí)現(xiàn) 嵌入式網(wǎng)關(guān)的主界面采用QT語言編寫,整個嵌入式網(wǎng)關(guān)系統(tǒng)主要分為:實(shí)時(shí)數(shù)據(jù)、歷史數(shù)據(jù)、控制、設(shè)置四部分功能。其中,實(shí)時(shí)數(shù)據(jù)用于采集農(nóng)業(yè)園內(nèi)個傳感器的實(shí)時(shí)數(shù)據(jù),可以觀察到農(nóng)業(yè)園內(nèi)的實(shí)時(shí)的數(shù)據(jù)信息,歷史數(shù)據(jù)可以對農(nóng)業(yè)園內(nèi)的歷史數(shù)據(jù)進(jìn)行記錄,這種設(shè)計(jì)可以供研究人員對農(nóng)業(yè)園內(nèi)的各環(huán)境因素進(jìn)行分析,研究人員可以通過查看歷史數(shù)據(jù),方便的研究各種數(shù)據(jù)信息對農(nóng)作物生長的影響,控制主要用于對農(nóng)業(yè)園內(nèi)的各種控制設(shè)備進(jìn)行管理,可以采取手動和自動的模式來管理農(nóng)業(yè)園內(nèi)的控制設(shè)備,設(shè)置

50、主要用于設(shè)置溫室內(nèi)的個環(huán)境因素的閾值,通過閾值的設(shè)置,可以更加方便自動控制系統(tǒng)模式的管理,而且特別配備的安防系統(tǒng)也可以真正的實(shí)現(xiàn)無人值守的功能,總之,本系統(tǒng)軟件的設(shè)置更加方便和人性化。3.2.3 網(wǎng)絡(luò)遠(yuǎn)程控制程序設(shè)計(jì) PC端的網(wǎng)絡(luò)遠(yuǎn)程控制主要包含HTML顯示頁面、AJAX請求腳本、PHP編寫的CGI接口,主要完成通過UDP向Qt主程序發(fā)送請求并獲得數(shù)據(jù)。手機(jī)端的網(wǎng)絡(luò)遠(yuǎn)程控制主要包含手機(jī)應(yīng)用程序I界面的設(shè)計(jì),網(wǎng)關(guān)應(yīng)用程序服務(wù)器端設(shè)計(jì),手機(jī)Android應(yīng)用程序客戶端設(shè)計(jì),客戶端和服務(wù)器端通過Socket進(jìn)行數(shù)據(jù)交換以及編碼方式設(shè)計(jì)等。3.3系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)3.3.1 數(shù)據(jù)庫設(shè)計(jì) 數(shù)據(jù)庫概念設(shè)計(jì),將

51、各實(shí)體屬性及其關(guān)系表示出來。 如圖3-4所示:為溫室大棚數(shù)據(jù)庫的E-R圖。圖 3-4 溫室大棚數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)圖3.3.2數(shù)據(jù)庫概念模型圖本系統(tǒng)數(shù)據(jù)庫采用SQLite數(shù)據(jù)庫,根據(jù)系統(tǒng)功能設(shè)計(jì)要求,本系統(tǒng)數(shù)據(jù)庫概念設(shè)計(jì)如圖4-1所示。圖 3-5 溫室大棚數(shù)據(jù)庫模型設(shè)計(jì)圖如圖所示,數(shù)據(jù)庫屬性為id,temp,soilhumi,airhumi,co2densi,illumdesi;3.3.3數(shù)據(jù)詞典(1)data表為傳感器的各種數(shù)據(jù)項(xiàng)表,表結(jié)構(gòu)如表5-1所示。表5-1 data表的結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否主鍵描述IDINT8是區(qū)別不同時(shí)間段的TEMPFLOAT32否 溫度SOILHUMIFLOAT3

52、2否 土壤濕度AIRHUMIFLOAT32否 空氣濕度CO2DENSIFLOAT32否二氧化碳濃度ILLUMDESIFLOAT32否 光照強(qiáng)度圖 3-6 溫室大棚數(shù)據(jù)庫物理設(shè)計(jì)圖第4章 系統(tǒng)詳細(xì)設(shè)計(jì)4.1 設(shè)計(jì)目標(biāo)本系統(tǒng)是根據(jù)需求分析按照用戶的需求以及結(jié)合人機(jī)交互方面的考慮設(shè)計(jì)的系統(tǒng),主要實(shí)現(xiàn)如下功能:4.1.1網(wǎng)關(guān)控制功能 網(wǎng)關(guān)控制功能如下所示: 1. 網(wǎng)關(guān)主界面顯示整個溫室大棚進(jìn)行監(jiān)測和控制大棚內(nèi)的溫度、濕度、光照和二氧化碳等參數(shù)。2. 實(shí)現(xiàn)無人值守的操作,通過設(shè)置相應(yīng)的閾值來對大棚內(nèi)的各項(xiàng)參數(shù)進(jìn)行規(guī)定,使得大棚在無人值守的情況下也能保持在一個恒定的環(huán)境。3. 工網(wǎng)關(guān)的歷史參數(shù)的數(shù)據(jù)曲線,

53、以供后期分析數(shù)據(jù)。4.1.2網(wǎng)頁查詢控制功能網(wǎng)頁查詢控制功能如下所示:1. 通過網(wǎng)頁遠(yuǎn)程查看大棚數(shù)據(jù)。2. 通過網(wǎng)頁遠(yuǎn)程控制大棚內(nèi)的設(shè)備和設(shè)置閾值。3. 通過HighCharts圖表實(shí)時(shí)的直觀的顯示。4.1.3 手機(jī)APP端的查詢控制功能手機(jī)APP端的查詢控制功能如下所示:1. 查詢數(shù)據(jù)。2. 緊急報(bào)警。3. 分享數(shù)據(jù)。4.2 溫室大棚系統(tǒng)網(wǎng)關(guān)的詳細(xì)設(shè)計(jì)4.2.1 網(wǎng)關(guān)界面設(shè)計(jì) 網(wǎng)關(guān)界面的設(shè)計(jì),主要包括主界面設(shè)計(jì)、實(shí)時(shí)數(shù)據(jù)界面的設(shè)計(jì)、歷史曲線界面的設(shè)計(jì)、控制界面的設(shè)計(jì)、閾值界面的設(shè)計(jì)。 下面分別介紹這幾個界面的設(shè)計(jì): 1.如圖4-1所示,為網(wǎng)關(guān)主界面的設(shè)計(jì):圖4-1 網(wǎng)關(guān)主界面的設(shè)計(jì)網(wǎng)關(guān)主界面

54、包括了一個棗莊學(xué)院的logo和一個溫室大棚的實(shí)體圖,在界面的下面包含四個按鈕,分別用于對實(shí)時(shí)數(shù)據(jù)、歷史數(shù)據(jù)、控制、設(shè)置等界面的切換。如圖4-2所示:為實(shí)時(shí)數(shù)據(jù)界面。圖 4-2 實(shí)時(shí)數(shù)據(jù)界面 實(shí)時(shí)數(shù)據(jù)主要將網(wǎng)關(guān)收到協(xié)調(diào)器匯總的傳感器的溫度、濕度、光照、土壤濕度、安防的數(shù)據(jù)信息顯示在界面上。如圖4-3所示:為控制界面的設(shè)計(jì)。圖4-3 控制界面控制界面主要是對溫室大棚內(nèi)的空調(diào)、加濕器、風(fēng)扇、安防警報(bào)器等進(jìn)行控制,右上角還有打開手動控制的復(fù)選框,可以選擇是手動控制,還是在無人值守的情況下的自動控制。4.如圖4-4所示:為歷史曲線界面。圖4-4 歷史數(shù)據(jù)界面歷史曲線界面是將歷史的溫度、濕度和光照信息進(jìn)行

55、存儲,然后顯示,并繪制出直觀的曲線。5.如圖4-5所示:為閾值界面。圖4-5 閾值界面 閾值設(shè)計(jì)界面可以設(shè)置溫度的上限、下限、溫度和光照的閾值,用于無人值守時(shí)系統(tǒng)可以根據(jù)閾值自動的對大棚內(nèi)的設(shè)備進(jìn)行控制來保持大棚保持在一個恒定的環(huán)境下。4.2.2 網(wǎng)關(guān)與協(xié)調(diào)器通信設(shè)計(jì) 網(wǎng)關(guān)與ZigBee協(xié)調(diào)器通信功能使用libwsncomm提供的二次開發(fā)接口來實(shí)現(xiàn),工作原理如圖4-6所示:圖4-6 溫室控制系統(tǒng)主要代碼如下:/* * GreenHouseController.cpp * * 溫室控制系統(tǒng)的主要邏輯控制程序 */#include GreenHouseController.h#include #i

56、nclude GreenHouseController *GreenHouseController:_instance = NULL;GreenHouseController:GreenHouseController(QObject *parent) : QObject(parent), ctrlValid(false), isAutoCtrl(true), isSecure(true), wsnUser(NULL) / 用于保存最新的傳感器的數(shù)據(jù) curTemperature = 0.0; curHuminity = 0.0; curLight = 0.0; curIRPers = fals

57、e; unsigned int i; for(i = 0; i bind(9600, QUdpSocket:ShareAddress | QUdpSocket:ReuseAddressHint) qDebug()error bind to 9600 port!; / 連接UDP服務(wù)器接收到數(shù)據(jù)的信號,由onSockReadReady()函數(shù)來處理接收到的數(shù)據(jù) connect(udpSock, SIGNAL(readyRead(), this, SLOT(onSockReadReady();GreenHouseController:GreenHouseController() if(wsnUse

58、r) wsncomm_unregister(wsnUser); delete udpSock;/* * brief GreenHouseController:createInstance * * 用于創(chuàng)建控制實(shí)例,主要為了保證一個系統(tǒng)中僅通過new創(chuàng)建一個GreenHouseController */void GreenHouseController:createInstance() if(_instance != NULL) return; _instance = new GreenHouseController();/* * brief GreenHouseController:destr

59、oyInstance * * 用于銷毀控制實(shí)例 */void GreenHouseController:destroyInstance() if(_instance = NULL) return; delete _instance; _instance = NULL;/* * brief GreenHouseController:instance * * 獲取當(dāng)前的控制實(shí)例 */GreenHouseController *GreenHouseController:instance() if(_instance = NULL) createInstance(); return _instance

60、;/* * brief GreenHouseController:isCtrlInProcess * * 判斷當(dāng)前是否處于工作狀態(tài) */bool GreenHouseController:isCtrlInProcess() const return ctrlValid;/* * brief GreenHouseController:startControl * * 讓溫室控制邏輯開始工作 * 調(diào)用該函數(shù)后,GreenHouseController就開始接收ZigBee系統(tǒng)傳遞過來的數(shù)據(jù) */void GreenHouseController:startControl() if(wsnUser

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論