基于Zigbee農(nóng)業(yè)灌溉系統(tǒng)設(shè)計論文_第1頁
基于Zigbee農(nóng)業(yè)灌溉系統(tǒng)設(shè)計論文_第2頁
基于Zigbee農(nóng)業(yè)灌溉系統(tǒng)設(shè)計論文_第3頁
基于Zigbee農(nóng)業(yè)灌溉系統(tǒng)設(shè)計論文_第4頁
基于Zigbee農(nóng)業(yè)灌溉系統(tǒng)設(shè)計論文_第5頁
已閱讀5頁,還剩54頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 PAGE56 / NUMPAGES59農(nóng)業(yè)大學(xué)畢 業(yè) 論 文(設(shè)計)題 目:基于Zigbee農(nóng)業(yè)灌溉系統(tǒng)設(shè)計姓 名:學(xué) 院: 機電工程學(xué)院 專 業(yè): 電氣工程與其自動化 班 級: 2010.03 學(xué) 號: 20102522 指導(dǎo)教師: 白皓然 2014年 6月16日目錄 TOC o 1-3 h z u HYPERLINK l _Toc390789338摘要 PAGEREF _Toc390789338 h IHYPERLINK l _Toc390789339Abstract PAGEREF _Toc390789339 h IIHYPERLINK l _Toc3907893401緒論 PAGER

2、EF _Toc390789340 h 1HYPERLINK l _Toc3907893411.1選題背景與研究意義 PAGEREF _Toc390789341 h 1HYPERLINK l _Toc3907893421.2國外發(fā)展概況 PAGEREF _Toc390789342 h 1HYPERLINK l _Toc3907893431.3研究容與目標(biāo) PAGEREF _Toc390789343 h 2HYPERLINK l _Toc3907893442系統(tǒng)總體設(shè)計 PAGEREF _Toc390789344 h 3HYPERLINK l _Toc3907893452.1Zigbee技術(shù) PA

3、GEREF _Toc390789345 h 4HYPERLINK l _Toc3907893462.2ASP.NET遠程控制 PAGEREF _Toc390789346 h 4HYPERLINK l _Toc3907893472.3后臺服務(wù)程序設(shè)計 PAGEREF _Toc390789347 h 5HYPERLINK l _Toc3907893482.4產(chǎn)品銷售架構(gòu)的實現(xiàn) PAGEREF _Toc390789348 h 5HYPERLINK l _Toc3907893493 硬件電路的設(shè)計與實現(xiàn) PAGEREF _Toc390789349 h 6HYPERLINK l _Toc39078935

4、03.1 CC2530Zigbee無線傳輸網(wǎng)絡(luò) PAGEREF _Toc390789350 h 6HYPERLINK l _Toc3907893513.1.1CC2530與協(xié)議棧簡介 PAGEREF _Toc390789351 h 6HYPERLINK l _Toc3907893523.1.2組網(wǎng)與傳感器連接 PAGEREF _Toc390789352 h 6HYPERLINK l _Toc3907893533.2模型網(wǎng)絡(luò)-農(nóng)業(yè)大學(xué)校園網(wǎng)絡(luò)介紹 PAGEREF _Toc390789353 h 10HYPERLINK l _Toc3907893543.3 IIS(Internet Informa

5、tion Services)服務(wù)器原理 PAGEREF _Toc390789354 h 12HYPERLINK l _Toc3907893553.3.1 IIS與Framework簡介 PAGEREF _Toc390789355 h 12HYPERLINK l _Toc3907893563.3.2網(wǎng)絡(luò)服務(wù)器配置 PAGEREF _Toc390789356 h 12HYPERLINK l _Toc3907893573.3.3ASP發(fā)布與訪問 PAGEREF _Toc390789357 h 13HYPERLINK l _Toc3907893583.4溫室模型的設(shè)計 PAGEREF _Toc3907

6、89358 h 14HYPERLINK l _Toc3907893593.4.1各等級電壓設(shè)計 PAGEREF _Toc390789359 h 15HYPERLINK l _Toc3907893603.4.2繼電器電路設(shè)計 PAGEREF _Toc390789360 h 15HYPERLINK l _Toc3907893613.4.3溫室大棚模型結(jié)構(gòu)與接線箱 PAGEREF _Toc390789361 h 15HYPERLINK l _Toc3907893624系統(tǒng)軟件設(shè)計與實現(xiàn) PAGEREF _Toc390789362 h 18HYPERLINK l _Toc3907893634.1 登錄

7、設(shè)計 PAGEREF _Toc390789363 h 18HYPERLINK l _Toc3907893644.2后臺程序主界面 PAGEREF _Toc390789364 h 20HYPERLINK l _Toc3907893654.3綜合管理界面 PAGEREF _Toc390789365 h 21HYPERLINK l _Toc3907893664.3.1 串口通信方式 PAGEREF _Toc390789366 h 21HYPERLINK l _Toc3907893674.3.2遠程訪問方式 PAGEREF _Toc390789367 h 22HYPERLINK l _Toc39078

8、93684.3.3手動模式指令控制 PAGEREF _Toc390789368 h 25HYPERLINK l _Toc3907893694.4附加功能 PAGEREF _Toc390789369 h 26HYPERLINK l _Toc3907893704.5數(shù)據(jù)庫建立與操作 PAGEREF _Toc390789370 h 27HYPERLINK l _Toc3907893714.5.1數(shù)據(jù)庫創(chuàng)建與表格設(shè)計 PAGEREF _Toc390789371 h 28HYPERLINK l _Toc3907893724.5.2 GridView和SqlDataSource控件連接數(shù)據(jù) PAGEREF

9、 _Toc390789372 h 29HYPERLINK l _Toc3907893734.5.3 數(shù)據(jù)更新 PAGEREF _Toc390789373 h 30HYPERLINK l _Toc3907893744.6母板頁設(shè)計 PAGEREF _Toc390789374 h 31HYPERLINK l _Toc3907893754.7后臺設(shè)計 PAGEREF _Toc390789375 h 32HYPERLINK l _Toc3907893765 系統(tǒng)組裝調(diào)試 PAGEREF _Toc390789376 h 34HYPERLINK l _Toc3907893775.1各集成開發(fā)環(huán)境(IDE)

10、介紹 PAGEREF _Toc390789377 h 34HYPERLINK l _Toc3907893785.2操作 PAGEREF _Toc390789378 h 35HYPERLINK l _Toc3907893795.3接線與后臺服務(wù)程序設(shè)置 PAGEREF _Toc390789379 h 37HYPERLINK l _Toc390789380參考文獻 PAGEREF _Toc390789380 h 38HYPERLINK l _Toc390789381致 PAGEREF _Toc390789381 h 40HYPERLINK l _Toc390789382附錄I:Zigbee應(yīng)用層部

11、分程序 PAGEREF _Toc390789382 h 41HYPERLINK l _Toc390789383附錄II:后臺服務(wù)程序部分 PAGEREF _Toc390789383 h 47HYPERLINK l _Toc390789384附錄III:部分 PAGEREF _Toc390789384 h 51HYPERLINK l _Toc3907893851管理界面代碼 PAGEREF _Toc390789385 h 51HYPERLINK l _Toc3907893862關(guān)于系統(tǒng)界面設(shè)計 PAGEREF _Toc390789386 h 53HYPERLINK l _Toc390789387

12、附錄IV:截圖 PAGEREF _Toc390789387 h 54基于Zigbee農(nóng)業(yè)灌溉系統(tǒng)設(shè)計摘 要我國地大物博,但人均資源相對匱乏,農(nóng)業(yè)是國家的基礎(chǔ)產(chǎn)業(yè),水資源作為農(nóng)業(yè)發(fā)展的重要制約因素。十八屆三中全會以來提出的農(nóng)業(yè)現(xiàn)代化的發(fā)展理念逐步深入,更好的發(fā)展農(nóng)業(yè)實現(xiàn)智能控制的現(xiàn)代化農(nóng)業(yè)模式成為必然。本設(shè)計下位機以CC2530處理器為核心,構(gòu)建了農(nóng)業(yè)溫室信息Zigbee無線采集網(wǎng)絡(luò)系統(tǒng)。上位機通過ASP.NET語言,在IDE中與數(shù)據(jù)庫結(jié)合構(gòu)建一個服務(wù)器。服務(wù)器后臺程序定時檢測終端節(jié)點的實時農(nóng)業(yè)溫室信息,并發(fā)送控制指令。通過手機和網(wǎng)絡(luò)客戶端可以實時操控灌溉水泵、通風(fēng)泵與補光系統(tǒng)。實物模型驗證了本

13、系統(tǒng)的可靠性。關(guān)鍵詞:農(nóng)業(yè)物聯(lián)網(wǎng);遠程控制;Zigbee;ASPThe design of agricultural irrigation systembased on ZigbeeAbstractThe land of china is vast, but the per capita resources are relatively scarce, agriculture is the basic industries of China, and water resources is an important factor restricting the development of ag

14、riculture. Agricultural modernization development concept was put forward since the Third Plenary Session of eighteen gradual deepening. So the development of modern agriculture intelligent control agricultural model becomes inevitable.The lower machine was designed by CC2530 as processor core, and

15、the greenhouse agriculture information wireless network acquisition system was built based on Zigbee. By ASP.NET language the PC and a database in the IDE build a web server. Agricultural greenhouses real-time information was collected by the server through timing detection, and send control command

16、s. The irrigation pumps, ventilation, fan systems can be controlled real-timely through mobile phones and network clients. Physical model hacve verify the reliability of this system.Keywords: things agriculture; remote control; Zigbee; ASP Website 1緒論1.1選題背景與研究意義近年來,農(nóng)業(yè)現(xiàn)代化概念逐步深入推廣,尤其是十八屆三中全會關(guān)于全面深化改革的

17、推動,在農(nóng)業(yè)土地流轉(zhuǎn)制度下新型農(nóng)民需要種植大量的田地,而關(guān)于如何更精確更高效的完成作物日常管理是當(dāng)前急需解決的問題。智能灌溉是一個理念,現(xiàn)在國外溫室環(huán)境控制技術(shù)正朝著高科技方向發(fā)展,網(wǎng)絡(luò)技術(shù)、遙感技術(shù)已逐漸應(yīng)用到溫室大棚智能控制系統(tǒng)中讓農(nóng)業(yè)管理可以快捷的實現(xiàn)1。同時這也是一種趨勢,因為多元化的生活方式要求我們身處不同的地域,而網(wǎng)絡(luò)則是連接這一切的通道。農(nóng)業(yè)的應(yīng)用是一個極佳的物聯(lián)網(wǎng)應(yīng)用開發(fā)方向,一方面作為我國的一種基礎(chǔ)產(chǎn)業(yè),農(nóng)業(yè)的重要地位不言而喻;另一方面,在我國悠久農(nóng)業(yè)種植歷史中,人力勞作的狀況持續(xù)了幾千年,如何更好的實現(xiàn)農(nóng)業(yè)現(xiàn)代化是困擾人們的問題??萍紤?yīng)是為人類的解放服務(wù),為人力資源的充分利

18、用做貢獻的,所以在農(nóng)業(yè)的物聯(lián)網(wǎng)應(yīng)用中,本系統(tǒng)的設(shè)計只是很小的一部分,也是一個開端。隨著全球氣候變化,自然災(zāi)害的日益增多,旱澇狀況頻發(fā),就我國基本情來講,水資源總量居第六位,但人均是121位,水資源時空分布不均衡年降水量集中于6-8月,很多城市出現(xiàn)水資源短缺,更為重要的是,水資源的污染,導(dǎo)致大量的淡水無常使用2。所以如何有效合理的解決水資源瓶頸,提高利用率是一項刻不容緩的任務(wù)。農(nóng)民以前是靠天吃飯,到人工灌溉,而智能灌溉則可以更加合理有效的解放勞動力,管理多個溫室棚區(qū)的環(huán)境問題。對于無線通信網(wǎng)絡(luò)的開發(fā),現(xiàn)階段有著廣闊的市場前景。Zigbee技術(shù)是在短距離無線通信方面具有絕對優(yōu)勢的一種方式,其多個節(jié)

19、點的連接,自動分配網(wǎng)絡(luò)地址的方式以與信號的穩(wěn)定性等優(yōu)點是進行區(qū)域化種植的一個良好選擇。1.2國外發(fā)展概況自古以來,沿河而棲,河水是孕育文明的地方,就是由于采水和灌溉技術(shù)限制。農(nóng)業(yè)的灌溉就是一個持續(xù)需要解決的農(nóng)業(yè)問題。最早期的農(nóng)民靠天吃飯過程中,農(nóng)業(yè)生產(chǎn)水平十分落后;之后的水車灌溉,人們利用河水和井水進行灌溉作業(yè),但是所有的勞作長期以來都是依靠人力或者畜力進行的;隨著我國科技的進步,農(nóng)業(yè)生產(chǎn)技術(shù)水平的提高,灌溉等農(nóng)業(yè)作業(yè)的完成更加全面的依托機械電力的幫助完成。國現(xiàn)階段對于該問題的研究多實在農(nóng)林類高等院校與部分科研機構(gòu),基于長期的研究取得了一定水平的成績,但是應(yīng)用尚不廣泛。蔬菜之都壽光的現(xiàn)代化農(nóng)業(yè)

20、已經(jīng)具備了一定的雛形,農(nóng)民日常所說的“高溫棚”在溫度和采光方面借助前期的施工已經(jīng)形成了一定的模式,但是灌溉設(shè)備的建設(shè)還是有待提高。而在我國的“花卉之都”市其花卉產(chǎn)業(yè)規(guī)模較大,而大學(xué)有研究基于Zigbee和GPRS的遠程灌溉控制,也取得了不錯的成果3。對于灌溉的研究一般性的研究方向還是存在一些弊端:首先是在研究上一般都會選擇一個切入點,相比較而言在綜合利用方面存在一些問題;其次是在應(yīng)用與推廣方面力度不足,并且在推廣的方式上存在問題,有些技術(shù)或是設(shè)備已經(jīng)可以走向農(nóng)業(yè)或者是工業(yè)化應(yīng)用,但在實際操作的過程中沒有實現(xiàn)。在國外,例如美國和以色列其節(jié)水灌溉設(shè)備與技術(shù)處于世界領(lǐng)先的水平。美國雨鳥公司的節(jié)水灌溉

21、設(shè)備居于世界領(lǐng)先的地位,其產(chǎn)品廣泛的應(yīng)用于高爾夫球場,公園與各種高新農(nóng)業(yè)基地;世界上很多水資源匱乏的地區(qū)在農(nóng)業(yè)智能灌溉以與節(jié)水灌溉方面有著突出的表現(xiàn),以中東地區(qū)的以色列為例,該國的農(nóng)業(yè)技術(shù)處于世界領(lǐng)先水平,有效的利用了水資源?,F(xiàn)代農(nóng)業(yè)是在國家高度提出的,可以更好的維護國家的糧食安全,更加有效的解放農(nóng)村勞動力提高農(nóng)業(yè)產(chǎn)值。在農(nóng)業(yè)應(yīng)用中一些受到自然環(huán)境限制的地區(qū),灌溉技術(shù)的研究往往會得到相對較多的重視,所以在資金投入等方面有著很多的優(yōu)勢。而國外的網(wǎng)絡(luò)技術(shù)以與物聯(lián)網(wǎng)的應(yīng)用也是發(fā)生著日新月異的變化,在工業(yè)機器人,自動駕駛汽車等人工智能領(lǐng)域都有著絕對的領(lǐng)先技術(shù)。1.3研究容與目標(biāo)研究容:人均水資源不足,

22、利用率低,水資源污染嚴(yán)重的問題督促我們警醒,同時也要開發(fā)出更加先進的設(shè)備。設(shè)計實現(xiàn)農(nóng)業(yè)智能灌溉系統(tǒng),主要是實現(xiàn)互聯(lián)網(wǎng)遠程控制,能夠更加精確的實現(xiàn)溫濕度測量,對于區(qū)域化種植更加方便的實現(xiàn)一個控制中心操作若干個節(jié)點。1、ASP的建設(shè),與數(shù)據(jù)庫連接加入銷售環(huán)節(jié)。2、服務(wù)器后臺程序設(shè)計,后臺服務(wù)程序是作為一個連接下位機或是Zigbee協(xié)調(diào)器的樞紐,對這個系統(tǒng)連接起著關(guān)鍵作用。3、Zigbee無線通信網(wǎng)絡(luò)的實現(xiàn),本系統(tǒng)以模型為主,實現(xiàn)一個協(xié)調(diào)器兩個終端節(jié)點的組網(wǎng)通信與數(shù)據(jù)采集。2系統(tǒng)總體設(shè)計本系統(tǒng)是一個統(tǒng)一的整體,在實現(xiàn)上主要分為,后臺程序,Zigbee無線網(wǎng)絡(luò)以與農(nóng)業(yè)溫室模型等幾個方面。2.1Zigb

23、ee技術(shù)Zigbee無線通信技術(shù)是新一代低功耗無線網(wǎng)絡(luò)通信方式,由于其本身具有51核,所以在處理上可以實現(xiàn)引腳擴展操作。本系統(tǒng)采用TI(儀器)開發(fā)的Zstack協(xié)議棧架構(gòu)為基礎(chǔ),主要在APP層接入傳感器的溫濕度采集模塊,借助其無線功能實現(xiàn)多點無線通信。對于灌溉系統(tǒng),我們主要使用DHT11傳感器測量溫濕度數(shù)據(jù),轉(zhuǎn)化為所需要的數(shù)字量,之后由終端節(jié)點傳送至協(xié)調(diào)器節(jié)點。Zigbee網(wǎng)絡(luò)實現(xiàn)的是系統(tǒng)自動組網(wǎng),協(xié)調(diào)器會自動的分配給終端節(jié)點一個網(wǎng)絡(luò)地址。為了實現(xiàn)多點的同步操作,在指令發(fā)送時采用廣播模式,所有終端均可接收來自協(xié)調(diào)器的網(wǎng)絡(luò)指令并進行處理,外接繼電器實現(xiàn)對外圍電路的驅(qū)動。2.2ASP.NET遠程控

24、制智能灌溉系統(tǒng)網(wǎng)站系統(tǒng)功能簡介產(chǎn)品銷售溫室模型控制后臺管理程序環(huán)境值獲取用戶管理菜單產(chǎn)品管理菜單文件管理菜單發(fā)送控制命令下位機通信圖2-1 網(wǎng)站架構(gòu)圖本系統(tǒng)初步的設(shè)計構(gòu)想是以服務(wù)器接收控制信號,以與信息處理的中心,完成互聯(lián)網(wǎng)的TCP/IP協(xié)議通信,同時通過串口(UART)方式實現(xiàn)與Zigbee協(xié)調(diào)器節(jié)點通信,使具有更好的實現(xiàn)產(chǎn)品推廣的能力。主題是分為四大模塊區(qū)分功能,分別是功能簡介,產(chǎn)品銷售,溫室模型環(huán)境控制以與后臺管理。該系統(tǒng)的各節(jié)點具體功能在后續(xù)文章中還會繼續(xù)介紹,從基本原理到代碼實現(xiàn)方法。結(jié)構(gòu)的流程如上圖2-1所示。當(dāng)服務(wù)器與訪問終端處于一個網(wǎng)絡(luò)部,通過網(wǎng)頁訪問修改數(shù)據(jù)庫中的數(shù)據(jù)4,在另

25、一部分的服務(wù)器后臺服務(wù)程序利用Timer(定時器)控件檢查數(shù)并發(fā)送指令。的整體風(fēng)格采用母板頁確定。為了實現(xiàn)產(chǎn)品更好的推廣,在加入了產(chǎn)品銷售模塊。對于的管理,產(chǎn)品的添加以與修改,均是通過后臺管理界面操作。在后臺管理中,可以實現(xiàn)用戶管理,包括增刪用戶,密碼修改等功能;另外是產(chǎn)品管理,包括產(chǎn)品名稱,圖片和基本參數(shù)的描述;還有一部分是上傳下載功能的實現(xiàn),為了方便用戶的自主學(xué)習(xí)與操作,可以下載相關(guān)文檔,驅(qū)動程序與IDE軟件。2.3后臺服務(wù)程序設(shè)計后臺服務(wù)程序即Winform窗體結(jié)構(gòu)應(yīng)用程序,本設(shè)計的開發(fā)應(yīng)用Visual Studio 2010中的C#語言。改程序在系統(tǒng)中起著紐帶作用,一方面可以連接數(shù)據(jù)庫

26、,實現(xiàn)數(shù)據(jù)狀態(tài)掃描,另一方面可以實現(xiàn)對下位機的連接,發(fā)送指令實現(xiàn)串口通信。主要的功能在于手動操作模式和遠程控制模式的實現(xiàn)上,后臺程序需要兼?zhèn)涠喾矫娴墓δ埽卿浗缑婵刂浦踩珯?quán)限的設(shè)置;主界面完成對各個子程序的連接;附加一些功能性程序?qū)崿F(xiàn)對日常一些常規(guī)管理的操作。2.4產(chǎn)品銷售架構(gòu)的實現(xiàn)快捷的購買與支付是產(chǎn)品銷售的購買體驗,本系統(tǒng)借助網(wǎng)絡(luò)連接,在淘寶開設(shè)店鋪。當(dāng)用戶需要購買相關(guān)產(chǎn)品時可以跳轉(zhuǎn)頁面至淘寶店鋪,通過支付寶付款,之后的步驟是我們?nèi)粘>W(wǎng)購一樣的。3 硬件電路的設(shè)計與實現(xiàn)3.1 CC2530Zigbee無線傳輸網(wǎng)絡(luò)3.1.1CC2530與協(xié)議棧簡介在農(nóng)業(yè)現(xiàn)代化、智能家居和工業(yè)等領(lǐng)域Zigb

27、ee無線通信技術(shù)得到了廣泛的應(yīng)用,它基于IEEE802.15.4協(xié)議。由于程序是開源的,很多的開發(fā)者會選擇這種通信方式,一方面免除了開發(fā)的技術(shù)難度,另外也是符合共享的精神。協(xié)議棧簡而言之就是一系列的通信標(biāo)準(zhǔn),是工程項目開發(fā)人員與無線數(shù)據(jù)傳輸之間的一個接口,各個層都是通過Zigbee協(xié)議棧作為一個連接橋梁實現(xiàn)相互之間的連接。對于協(xié)議棧的大部分容大都是模塊化進行的,我們的日常應(yīng)用一般集中的應(yīng)用層的修改便可以達到常規(guī)功能要求。對于其網(wǎng)絡(luò)層的結(jié)構(gòu)組成可以參見下圖,其中的各層通過協(xié)議棧構(gòu)成一個完整的整體,用戶可以通過其中以函數(shù)調(diào)用等方式,實現(xiàn)代碼編寫與其他各種操作。協(xié)議棧在物理層,硬件層,網(wǎng)絡(luò)層以與應(yīng)用

28、層等方面有著固定的連接。各個層之間的連接都有著其鏈路,通過底層程序進行數(shù)據(jù)傳輸。作為一款優(yōu)秀的片上系統(tǒng)解決方案,其信號的穩(wěn)定性,良好的擴展性為多區(qū)域連接操作奠定了堅實的基礎(chǔ)。3.1.2組網(wǎng)與傳感器連接圖3-1 Zigbee無線網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)組網(wǎng)時由協(xié)調(diào)器發(fā)起,然后終端節(jié)點接收協(xié)調(diào)器所發(fā)來的信號,其中發(fā)起模式是檢測終端的節(jié)點的數(shù)量后分配網(wǎng)絡(luò)地址以確保其連接。其詳細(xì)組網(wǎng)流程圖可以參見下圖。一般而言星形網(wǎng)絡(luò)適用于簡單網(wǎng)絡(luò)結(jié)構(gòu);網(wǎng)狀結(jié)構(gòu)一般較為穩(wěn)定;對于樹狀網(wǎng)絡(luò)由于其良好的擴展性一般應(yīng)用于比較大型的Zigbee網(wǎng)絡(luò)中。設(shè)備的組網(wǎng)是一個相互建立的過程,在組網(wǎng)的過程中一般需要首先設(shè)置網(wǎng)絡(luò)的協(xié)調(diào)器節(jié)點,在確認(rèn)

29、協(xié)調(diào)器節(jié)點的存在后,其余各終端設(shè)備分別以協(xié)調(diào)器為父節(jié)點,加入該網(wǎng)絡(luò)。該網(wǎng)絡(luò)結(jié)構(gòu)采用的是廣播模式,各個終端設(shè)備都可以接收到協(xié)調(diào)器的指令。首先設(shè)置參數(shù),其代碼如下:SampleApp_Periodic_DstAddr.addrMode = (afAddrMode_t)AddrBroadcast; SampleApp_Periodic_DstAddr.endPoint = SAMPLEAPP_ENDPOINT; SampleApp_Periodic_DstAddr.addr.shortAddr = 0 xFFFF;設(shè)置周期性廣播代碼如下:void SampleApp_SendPeriodicMess

30、age( void )T_H0=wendu_shi+48;T_H1=wendu_ge%10+48;T_H2=shidu_shi+48;T_H3=shidu_ge%10+48;if ( AF_DataRequest( &SampleApp_Periodic_DstAddr, &SampleApp_epDesc,SAMPLEAPP_PERIODIC_CLUSTERID,4,T_H,&SampleApp_TransID,AF_DISCV_ROUTE,AF_DEFAULT_RADIUS ) = afStatus_SUCCESS )由于無線網(wǎng)絡(luò)中發(fā)起模式是檢測終端的節(jié)點的數(shù)量后分配網(wǎng)絡(luò)地址以確保其連接,

31、對于本系統(tǒng)的傳感器連接在采用的是DHT11溫濕度傳感器,其主程序編寫是在解決方案的APP層中附加的一個C程序文件,本系統(tǒng)采用的是溫濕度傳感器實現(xiàn),對于其他類型的傳感器方法類似如DS18B20或者是煙霧與光照或者二氧化碳傳感器5。系統(tǒng)初始化選父設(shè)備發(fā)入網(wǎng)請求存在協(xié)調(diào)器?收到后響應(yīng)?設(shè)為協(xié)調(diào)器選信道,分地址設(shè)備加入成功等待數(shù)據(jù)傳輸啟動,接收入網(wǎng)分配短地址發(fā)送響應(yīng)入網(wǎng)成功?任務(wù)輪詢圖3-2 Zigbee設(shè)備組建無線區(qū)域網(wǎng)絡(luò)流程圖示基于51核的CC2530可以很容易的實現(xiàn),其關(guān)鍵是通信代碼的編寫,因為需要通過串口發(fā)回采集到的數(shù)據(jù)6。uchar temp2=0,0; uchar temp15=temp=

32、;uchar humidity2=0,0;uchar humidity19=humidity=;/*/延時函數(shù)*/void Delay_us(void) /1 us延時 MicroWait(1); 之后是數(shù)據(jù)傳感器啟動后,將其測得的值轉(zhuǎn)化為數(shù)字量,待寫入完成后重新配置IO口P0DIR &= 0 x40;其余過程可見程序的具體過程,之后是對數(shù)字量分別轉(zhuǎn)化為十位和個位的數(shù)值。傳感器測得數(shù)值只是數(shù)據(jù)通信的第一步,接下來是讓Zigbee終端節(jié)點將數(shù)據(jù)發(fā)送給協(xié)調(diào)器7-8。由于無線網(wǎng)絡(luò)開始已經(jīng)組建完畢,所以根據(jù)其網(wǎng)固定的獨有網(wǎng)絡(luò)地址便可以將數(shù)據(jù)傳送到協(xié)調(diào)器,當(dāng)然這都是以之前提到的協(xié)議棧為基礎(chǔ)框架進行。在協(xié)

33、調(diào)器與電腦之間的通信上采用的是串口方式,由于計算機本身是沒有單獨引出的串口作為通信的部件,所以采用一個USB轉(zhuǎn)串口的方式進行(計算機需要安裝驅(qū)動程序)。協(xié)調(diào)器的串口輸出程序如下:switch ( pkt-clusterId ) case SAMPLEAPP_PERIODIC_CLUSTERID: /*溫度打印*/ HalUARTWrite(0,T:,2); /提示接收到數(shù)據(jù),T表示溫度值 HalUARTWrite(0,&pkt-cmd.Data0,2); /讀取在協(xié)議棧一個程序的地址 HalUARTWrite(0,n,1); / 回車換行 /*濕度打印* HalUARTWrite(0,&pkt

34、-cmd.Data2,2); /濕度 HalUARTWrite(0,n,1); / 回車換行 break;對于溫濕度的值,其循環(huán)發(fā)送的設(shè)置是一個設(shè)置參數(shù)的方式,在開發(fā)環(huán)境中可以找到函數(shù): (SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT + (osal_rand() & 0 x00FF) );需要跳轉(zhuǎn)至括號的函數(shù)定義,在下面的一個函數(shù):#define SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT 5500/參數(shù)設(shè)定在協(xié)議棧部的個程序之間都是通過固定的模式連接在一起,函數(shù)之間很多都是通過跳轉(zhuǎn)的方式實現(xiàn),無論是對與溫室環(huán)境的檢測,還是其他的方面9。

35、3.2模型網(wǎng)絡(luò)-農(nóng)業(yè)大學(xué)校園網(wǎng)絡(luò)介紹農(nóng)業(yè)大學(xué)校園網(wǎng)是為了滿足廣大師生教學(xué),科研,學(xué)習(xí)等目的而構(gòu)建的一個功能復(fù)雜而全面的網(wǎng)絡(luò)。2005年校園網(wǎng)進行了大規(guī)模的改擴建之后,成為連接學(xué)校各區(qū)域,海都校區(qū)以與翰林院家屬區(qū)的一個重要信息樞紐。其核心是采用我國通信設(shè)備制造商華為生產(chǎn)的S8512做雙機備份,之后應(yīng)用多臺S6503做匯聚,之后樹狀展開更多的交換機,最后連接電腦終端。由于校址由遷移到,其接入教育網(wǎng)的方式也由原來的通過大學(xué)改為通過中國海洋大學(xué)進行教育網(wǎng)絡(luò)接入。而這個網(wǎng)絡(luò)也是一個局域網(wǎng)形式,相對封閉,但是部網(wǎng)絡(luò)連接好。主題架構(gòu)編寫完成后,需要進一步解決遠程登錄方面的問題。本系統(tǒng)所設(shè)置的后臺登錄系統(tǒng)與數(shù)

36、據(jù)庫直接進行對接,在設(shè)置方面產(chǎn)品的各項參數(shù)也是存儲在SQL2008數(shù)據(jù)庫,所有的數(shù)據(jù)讀取都是依托與數(shù)據(jù)庫之間的數(shù)據(jù)交換進行連接實現(xiàn)。在沒有申請域名與空間之前,如果將發(fā)布在IIS上則只能通過局域網(wǎng)絡(luò)進行訪問,局域網(wǎng)絡(luò)是一個相對的概念,在本設(shè)計的測試中,校園網(wǎng)就可以被當(dāng)作一個可靠的局域網(wǎng)絡(luò)進行系統(tǒng)測試。校園網(wǎng)的設(shè)施基礎(chǔ)為本系統(tǒng)的設(shè)計和測試提供了良好的環(huán)境。教育網(wǎng),經(jīng)海大校園網(wǎng)學(xué)校各區(qū)域翰林院家屬區(qū)海都學(xué)院圖3-3 青島農(nóng)業(yè)大學(xué)校園網(wǎng)絡(luò)分布本系統(tǒng)的測試選取的地址分別是實驗室部,教學(xué)樓以與宿舍區(qū)。在實驗室部可以實現(xiàn)在服務(wù)器以路由器發(fā)出的無線路由器為接入點,其他的網(wǎng)絡(luò)終端分別接入該無線路由網(wǎng)絡(luò)進行的訪問

37、。這是因路由器為自動的分配一個IP地址給予服務(wù)器,其他的終端也是一個類似的IP地址類型,一般是192.168.*.*這種方式是一種部的無線登錄形式;但是在校區(qū)其他位置訪問時服務(wù)器接入互聯(lián)網(wǎng)的方式必須是一個IP固定的IP地址,這樣才可以實現(xiàn)遠程登錄形式。在不同的網(wǎng)絡(luò)測試的基礎(chǔ)是所有的網(wǎng)絡(luò)都已物理連接,本設(shè)計在宿舍上網(wǎng)采用我校的賽爾網(wǎng):該網(wǎng)絡(luò)是一種全國各高校應(yīng)用比較普遍的一種網(wǎng)絡(luò),其基本特點是需要固定的IP地址,并且需要開通登錄才可以使用。而校園網(wǎng)其余區(qū)域才需要設(shè)置自動獲取IP地址的方式,通過CMD命令提示操作對話框進行IP地址查詢后得知。IP地址是服務(wù)器在網(wǎng)絡(luò)中的屬性,終端設(shè)備發(fā)送訪問請求后,查

38、詢地址,之后由服務(wù)器做出響應(yīng)。圖3-4 IP地址設(shè)置對話框3.3 IIS(Internet Information Services)服務(wù)器原理3.3.1 IIS與Framework簡介IIS服務(wù)器是發(fā)布所必須的一個工具,在沒有購買域名和托管服務(wù)器的前提下,如果想發(fā)布則需要在Internet Information Services即互聯(lián)網(wǎng)信息服務(wù)發(fā)布,可以實現(xiàn)局域網(wǎng)的訪問。常規(guī)情況下只有安裝配置了IIS才可以實現(xiàn)的發(fā)布,一些功能的實現(xiàn)例如FTP服務(wù)就是依托這一基礎(chǔ)8。同樣起著關(guān)鍵作用的是Framework4.0網(wǎng)絡(luò)框架,做一個形象的比喻:如果我們?nèi)粘>W(wǎng)上瀏覽的信息是車的話,那么Framewo

39、rk便是路,它提供給每一個信息傳輸與交互的工具。由于Framework版本逐步升級換代所實現(xiàn)的信息交互服務(wù)也是日益提升。正如我們的道路系統(tǒng)有普通公路,省道,國道和高速公路一樣,信息的通道也是在逐步改善。Framework是信息交互的基礎(chǔ),在互聯(lián)網(wǎng)中的應(yīng)用都是依據(jù)不同的框架進行的,不同的版本代表著不同的時代微軟公司的Framework框架是現(xiàn)今一種流行的開發(fā)設(shè)計基礎(chǔ),得到了廣泛的應(yīng)用。3.3.2網(wǎng)絡(luò)服務(wù)器配置想要發(fā)布,配置服務(wù)器是必須的一個步驟。在安裝IIS7.0之后,在控制面板/管理工具打開Internet信息服務(wù)(IIS)管理器,如圖3-5所示:圖3-5 IIS配置界面對于編輯好的文件,生成

40、后存檔,發(fā)布在本地計算機。如果想通過別的終端進行訪問,首先要指明默認(rèn)文檔所在位置。因為互聯(lián)網(wǎng)訪問途徑為先通過IP地址在網(wǎng)絡(luò)中選出服務(wù)器,然后再通過IIS設(shè)置的默認(rèn)文檔路徑進入文件。發(fā)布后其運行是獨立的,但是功能的實現(xiàn)要依托服務(wù)器響應(yīng)進行。同時需要服務(wù)器開設(shè)一個端口允許其它終端的進入,我們配置服務(wù)器時通常會選擇開放計算機的80或8080端口讓外部終端訪問。在服務(wù)器配置過程中由于文件屬性,計算機設(shè)置等方面的原因經(jīng)常會遇到一些問題。例如其他終端訪問時出現(xiàn)500.19部服務(wù)器錯誤,在訪問頁面上顯示無法打開目標(biāo)文件,物理路徑錯誤,錯誤代碼:0 x80070005;或者是數(shù)據(jù)庫訪問出錯等問題。運行調(diào)試就是

41、一個一個的發(fā)現(xiàn)并解決問題的過程,因為小型的配置與發(fā)布等服務(wù)在現(xiàn)在的技術(shù)層面已經(jīng)相當(dāng)成熟,所以網(wǎng)上有大量教程供學(xué)習(xí)參考,解決遇到的問題。上面所說的問題就是設(shè)置文件屬性,在其訪問與管理權(quán)限上需要設(shè)置Everyone用戶,另外就是IIS與Framework的配合上,解決其安全和權(quán)限的問題。圖3-6 默認(rèn)文檔設(shè)置3.3.3ASP發(fā)布與訪問對于的發(fā)布,是在編輯好文檔后選擇將其發(fā)布在IIS上即可實現(xiàn),這里應(yīng)當(dāng)注意其路徑?;谛@網(wǎng)的測試,在開通網(wǎng)絡(luò)服務(wù)的網(wǎng)口進行連接后,服務(wù)器會有一個IP地址,其他終端在瀏覽器輸入即可進行訪問,在局域網(wǎng)的與之前所說的也是類似。在系統(tǒng)設(shè)計的測試過程中,終端設(shè)備在瀏覽器框中輸入

42、服務(wù)器的IP(須在查詢已知的情況下進行)3.4溫室模型的設(shè)計該灌溉系統(tǒng)的起點是傳感器檢測農(nóng)業(yè)溫室的溫濕度值或是加上傳感器檢測其他條件,之后依靠Zigbee無線網(wǎng)絡(luò)傳送到協(xié)調(diào)器,之后傳送至服務(wù)器,服務(wù)器通過后臺服務(wù)程序簡稱作“中間件”做三方面的工作:一是將數(shù)據(jù)顯示到窗體結(jié)構(gòu)的界面上;二將數(shù)據(jù)實時更新至數(shù)據(jù)庫,并通過Data Gridview控件綁定數(shù)據(jù)顯示在的界面上供用戶讀取,并根據(jù)情況判斷是否發(fā)出相關(guān)指令;三是循環(huán)執(zhí)行掃描數(shù)據(jù)庫部操作表的指令數(shù)據(jù)。環(huán)境值值設(shè)備驅(qū)動電路后臺程序遠程用戶ASP網(wǎng)站傳感器終端節(jié)點協(xié)調(diào)器傳感器數(shù)據(jù)庫終端節(jié)點驅(qū)動電路設(shè)備環(huán)境值值圖3-7 系統(tǒng)結(jié)構(gòu)框圖第一個環(huán)節(jié)結(jié)束后后臺

43、服務(wù)程序?qū)崟r發(fā)送控制命令至協(xié)調(diào)器,協(xié)調(diào)器以廣播的方式將控制命令發(fā)送至終端節(jié)點,終端節(jié)點的將命令字符處理后會發(fā)出控制信號,而控制信號接通農(nóng)業(yè)溫室灌溉系統(tǒng)模型上面框架結(jié)構(gòu)所示,每一個終端用戶訪問時可以實時的查看環(huán)境值。3.4.1各等級電壓設(shè)計表3-1 模型溫室系統(tǒng)電壓統(tǒng)計表供電電壓等級統(tǒng)計情況設(shè)備名稱所需電壓等級供電方式Zigbee(協(xié)調(diào)器與終端)5V干電池與USB灌溉設(shè)備(水泵)12V開關(guān)電源照明燈220V照明電接入總電源220V照明電接入在模型搭建與制作過程中,很多的演示操作需要不同的電壓等級如220V,12V或者是5V,在所做的設(shè)備模型中,我們采用照明電接入設(shè)備,逐級分別變壓,下面分別介紹一

44、下各電路之間的連接與構(gòu)造。協(xié)調(diào)器是一個信息節(jié)點,和后臺服務(wù)程序一起發(fā)揮著承上啟下的關(guān)鍵作用。由于采用低電壓供電方式,所以安放在計算機服務(wù)器附近,一方面是供電方便,另外一方面是可以實現(xiàn)USB轉(zhuǎn)串口的連接以實現(xiàn)通信。對于終端設(shè)備可以使用干電池供電方法,優(yōu)點是可以實現(xiàn)任意的移動和安置,當(dāng)然缺點是需要定期更換相對麻煩一些。3.4.2繼電器電路設(shè)計由于終端節(jié)點接收到的只是一個控制命令,在進行相關(guān)處理后的動作設(shè)置是某一個引腳的電平進行高低變化,所以采用繼電器驅(qū)動的方式控制電路的通斷,從而實現(xiàn)對設(shè)備的開關(guān)控制。繼電器是應(yīng)用廣泛的一種電氣設(shè)備,通常會當(dāng)作一種開關(guān)設(shè)備接入電路。它是將芯片的控制轉(zhuǎn)化開關(guān)電氣設(shè)備的

45、關(guān)鍵。本實驗采用的是三路獨立繼電器模塊。在Zigbee終端節(jié)點各引腳分別輸出高低電平信號。繼電器接入常開或者是常閉觸點。3.4.3溫室大棚模型結(jié)構(gòu)與接線箱溫室大棚模型為了方便觀看其部場景與實驗測試方便,該系統(tǒng)采用了通體玻璃結(jié)構(gòu),用玻璃膠固定連接,其部分別布置了相關(guān)的電路與設(shè)備。對于接線盒采用我們?nèi)粘R姷亩嗝襟w接線漆包盒。圖3-8 溫室模型圖3-9 終端節(jié)點接線圖對于所采用的玻璃結(jié)構(gòu)是為了便于查看情況,在模仿溫室框架的同時,有利于很好的參觀,另外在材料的質(zhì)地上比較堅硬且具有防水功能。為了有效的完成接線盒的固定工作,本設(shè)計采用的是玻璃膠進行粘合,在風(fēng)干后其連接穩(wěn)定性與其好。另外在線路的布設(shè)方面,采

46、用實心銅線,確保良好的導(dǎo)電性,在接線柱上同時保證了優(yōu)良的絕緣性能。4系統(tǒng)軟件設(shè)計與實現(xiàn)在本系統(tǒng)中,后臺服務(wù)程序起著承上啟下的作用。一方面接收協(xié)調(diào)器傳送的信息數(shù)據(jù),實現(xiàn)數(shù)據(jù)收取處理,通過Text控件顯示在操作界面上;另一方面它與數(shù)據(jù)庫進行數(shù)據(jù)連接,循環(huán)更新數(shù)據(jù),在這里調(diào)用的是Update數(shù)據(jù)控件10。本設(shè)計的后臺服務(wù)程序主要體現(xiàn)一下幾個方面:一是對所有的用戶權(quán)限進行相應(yīng)的管理,利用數(shù)據(jù)庫對用戶和密碼存儲比對;二利用一個常規(guī)界面實現(xiàn)對Zigbee數(shù)據(jù)的實時顯示,即一個串口界面;三是附加的一些其他功能如鎖定程序,修改密碼,以與一些附件的調(diào)用等。4.1 登錄設(shè)計用戶登錄與管理的設(shè)計,對于整個系統(tǒng)的管理

47、而言不可能每個人都具備權(quán)限,所以設(shè)置登錄界面。在上位機程序中,與數(shù)據(jù)庫的連接可以實現(xiàn)軟件與后臺數(shù)據(jù)的連通11,利用連接字符串:SqlConnection(server=(local);database=Design;Integrated Security=true);這里的sever指的是服務(wù)器名稱,在安裝數(shù)據(jù)庫時會有設(shè)計,實驗所用筆記本電腦的服務(wù)器名稱為(local);database指數(shù)據(jù)庫名,為在數(shù)據(jù)庫軟件SQL2008中所創(chuàng)建;最后一句是安全認(rèn)證方式。當(dāng)用戶打開該應(yīng)用程序時會彈出一個登錄對話框,在該系統(tǒng)中已經(jīng)預(yù)設(shè)了一個用戶admin輸入對用密碼電機登錄即可進入管理主界面。在點擊登錄的時

48、候有一個用戶名和密碼與數(shù)據(jù)庫中所存儲的數(shù)據(jù)匹配的一個過程,它的實現(xiàn)方式是定義數(shù)據(jù)庫命令在數(shù)據(jù)庫表中選擇一個用戶名為所輸入的用戶名密碼為輸入的密碼,然后進行匹配。int i = Convert.ToInt32(cmd.ExecuteScalar(); /定義一個i為轉(zhuǎn)換的檢測值if (i 0) /對檢測結(jié)果進行判斷cmd = new SqlCommand(select * from GH_User where UserName= + txtName.Text + , conn); /進行賦值操作SqlDataReader sdr = cmd.ExecuteReader(); /檢測的與讀取值匹配

49、sdr.Read();conn.Close(); /關(guān)閉數(shù)據(jù)庫連接frmMain main = new frmMain(); /打開主界面對話框圖4-1 后臺應(yīng)用程序登錄界面運行程序輸入信息單擊取消單擊登錄N退出程序登錄錯誤?N確認(rèn)?YY退出程序主程序圖4-2 登錄驗證流程圖上面的登錄流程圖可以一目了然的表示整個過程:這種認(rèn)證的方式就像是我們要進入一個旅游觀光景點類似,是一種查證或者是驗證的操作,之后進入主界面。這樣的認(rèn)證方式也是我們經(jīng)常用到的,當(dāng)然在后臺登錄中也是運用了這種方法,給予一個用戶超級管理員權(quán)限進入后臺,可以添加或刪除用戶與產(chǎn)品,編輯產(chǎn)品的詳細(xì)信息同時對的相關(guān)文件上傳等12。4.2

50、后臺程序主界面主界面的菜單欄位于對話框的最上方,是以下拉菜單的方式呈現(xiàn)。在該操作界面中從左至右分別為綜合管理里面包括Daily和Sample選項實現(xiàn)復(fù)雜操作和日常的簡單操作;系統(tǒng)設(shè)置選項主要是有鎖定和口令操作;用戶管理主要提供用戶密碼修改,用戶注冊以與刪除等操作;輔助功能主要提供一些簡單的程序調(diào)用,有記事本,日歷和計算機均為系統(tǒng)程序的調(diào)用操作;另外兩個為單選按鈕,介紹版本以與退出;在下方是一些信息提示語言,分別為登錄名稱權(quán)限和時間。圖4-3 后臺程序主界面主界面是連接各個子程序的重要接入點,在程序編寫過程中主要是運用子程序界面疊加彈出方式即打開子程序的同時并不關(guān)閉主界面程序的方法。在該界面的上

51、面設(shè)有特定的退出登錄,下方顯示的是登錄進入系統(tǒng)的用戶相關(guān)信息,并且在旁邊顯示出登錄時間,這是通過調(diào)用系統(tǒng)函數(shù)的形式加入一個控件實現(xiàn)的。4.3綜合管理界面綜合管理的的實現(xiàn)是一個重點容,主要涉與以下幾個方面:一是串口的實現(xiàn),它是進行通信的基礎(chǔ);二是開設(shè)一個遠程訪問端口,一個按鍵管理整個系統(tǒng)的遠程技術(shù)這是利用一種循環(huán)掃描算法實現(xiàn)的操作;三是一些簡單的按鍵操作主要實現(xiàn)對溫室模型各終端硬件的手動控制。圖4-4 日常綜合管理界面4.3.1串口通信方式我們?nèi)粘Kf的串口通信方式是一種按位進行通信的方法,該方式與人們熟知的并口在比較中差異是速度相對較慢,但是它比較簡單。常見的串口通信方式分為RS232,RS4

52、22和RS485三種,在本系統(tǒng)中采用的是RS232方式,只需要三根線(TX,RX,地線)對應(yīng)連接即可在串口程序的編寫過程中。主要是設(shè)定COM口的編號,通信過程中所使用的波特率另外就是校驗的加入。串口數(shù)據(jù)幀通常情況下由五個數(shù)據(jù)模塊組成,為了詳細(xì)的說明數(shù)據(jù)格式的通信方式,特別用表進行了說明表4-1 數(shù)據(jù)幀格式數(shù)據(jù)塊12345定義幀 頭類型長度數(shù)據(jù)校驗數(shù)據(jù)長度211N2說明十六進制0 x96,0 x690:主動發(fā)送1:回復(fù)響應(yīng)數(shù)據(jù)塊4和5的數(shù)據(jù)長度 要發(fā)送的數(shù)據(jù)塊 CRC校驗在選用的RS232通信方式中,數(shù)據(jù)連接的雙方設(shè)定同樣的波特率、數(shù)據(jù)位、停止位和奇偶校驗位。波特率是是通信速度的一種表示參數(shù)。它

53、以秒為單位確定一秒鐘時間傳輸?shù)腷it的個數(shù)。一般比特率設(shè)定的值會比較大,可以加快數(shù)據(jù)傳輸速度,但是波特率和距離成反比,所以在選取時要結(jié)合自身需要。數(shù)據(jù)位和停止位是指的數(shù)據(jù)包的形式發(fā)送的具體容,數(shù)據(jù)位一般不足八位通常會有5位7位或是8為例如在標(biāo)準(zhǔn)ASCII碼的數(shù)據(jù)位設(shè)計時選擇7位,這個主要看情況需要進行具體的選擇處理。停止位標(biāo)準(zhǔn)指示的是數(shù)據(jù)停止,其位置在包的最后一位。通信過程中的奇偶校驗是相對簡單的一中數(shù)據(jù)檢驗錯誤的方法,主要是檢測傳輸和接受的數(shù)據(jù)是否同步,可以預(yù)測是否受到了噪聲干擾等情況。在現(xiàn)行的標(biāo)準(zhǔn)中有四種檢驗方式:偶、奇、高和低。一般的小型通信系統(tǒng)沒有校驗位也是可以的,一些小的問題可以忽略

54、。4.3.2遠程訪問方式在該控制界面設(shè)置了一個Button按鍵,作為一個復(fù)用開關(guān),在外觀表示上表現(xiàn)為開啟和關(guān)閉狀態(tài)的切換。對于循環(huán)掃描數(shù)據(jù)庫表格數(shù)據(jù)的算法設(shè)計是一個重點也是一個難點,因為不論通過數(shù)據(jù)庫直接修改還是通過網(wǎng)頁綁定的Gridview控件進行修改,操作所改變的只是數(shù)據(jù)庫表格的一項數(shù)據(jù)容并沒有發(fā)送指令13。所以就一般意義上而言,它并沒有起到實質(zhì)性的作用。而掃描算法是一種連接方式,將數(shù)據(jù)的修改轉(zhuǎn)化為一條條字符指令通過串口通信方式傳送到Zigbee協(xié)調(diào)器,直至作用到終端設(shè)備。后臺服務(wù)程序的關(guān)鍵之處是開啟一個可以進行遠程訪問的服務(wù)。其次是實現(xiàn)單機控制,在軟件界面中設(shè)置一些開關(guān)按鈕,分別對應(yīng)終端

55、設(shè)備的不同狀態(tài)。其實現(xiàn)的流程圖如下圖所示:開啟與數(shù)據(jù)庫進行連接循環(huán)檢測數(shù)據(jù)庫Zigbee協(xié)調(diào)器數(shù)據(jù)庫內(nèi)容改動Zigbee終端節(jié)點圖4-5 遠程訪問方式的實現(xiàn)流程對于狀態(tài)切換指令的實現(xiàn),可以參見以下代碼,這里會涉與到一個Timer(定時器)控件,在其屬性中設(shè)定一個動作周期,每經(jīng)過一個周期的時間都會把定時器中的代碼執(zhí)行一次。首先是切換狀態(tài)顯示方法的實現(xiàn):private void button15_Click_1(object sender, EventArgs e) /Button按鍵if (button15.Text = 服務(wù)器端口已開啟) /檢測按鍵的初始狀態(tài)button15.Text = 服

56、務(wù)器端口已關(guān)閉; /之前開啟則轉(zhuǎn)化為關(guān)閉toolStripStatusLabel1.Text = 手動模式開啟遠程訪問關(guān)閉;/下方狀態(tài)欄顯示timer3.Enabled = false; /定時器控件關(guān)閉elsebutton15.Text = 服務(wù)器口已開啟; /如果之前已是關(guān)閉狀態(tài),轉(zhuǎn)為開啟toolStripStatusLabel1.Text = 自動模式開啟遠程訪問開啟;timer3.Enabled = true; /讓定時器使能開始進行掃描工作timer3.Start();在定時器開始工作之后,就需要進行一系列的動作,在數(shù)據(jù)庫連接狀態(tài)完好的情況下,可以用以下代碼實現(xiàn)掃描數(shù)據(jù)庫數(shù)據(jù)發(fā)送操作

57、指令的設(shè)計14。由于這里的代碼控制的終端設(shè)備相對較多,但是都是以類似的方法實現(xiàn),所以僅以灌溉控制和溫度調(diào)節(jié)對算法的實現(xiàn)進行說明:string 灌溉控制,溫度調(diào)節(jié)1; /定義字符串,數(shù)據(jù)庫表中列名稱為依據(jù)private void timer3_Tick(object sender, EventArgs e) /定時器操作if (sdr.Read()灌溉控制=sdr灌溉控制.ToString().Trim(); 溫度調(diào)節(jié)1= sdr溫度調(diào)節(jié)1.ToString().Trim(); /進行數(shù)據(jù)匹配sdr.Close();conn.Close(); /關(guān)閉數(shù)據(jù)讀取和連接功能bytezd = new b

58、yte1;if (SerialPort1.IsOpen = true) /檢測串口是否開啟 if (灌溉控制=on) /檢測讀取的數(shù)據(jù)zd0 = (byte)A; /定義一個數(shù)組SerialPort1.Write(zd, 0, 1); /串口寫出數(shù)據(jù)else if (灌溉控制=off) /如檢測到另外一種狀態(tài)zd0 = (byte)B;SerialPort1.Write(zd,0,1); /串口對用寫出另外的命令System.Threading.Thread.Sleep(300); /程序暫停給串口傳送時間if (溫度調(diào)節(jié)1= on) /讀取另外一列的數(shù)據(jù)值zd0 = (byte)C;Seri

59、alPort1.Write(zd,0,1);else if (溫度調(diào)節(jié)1 =off) zd0 = (byte)D;SerialPort1.Write(zd, 0, 1); /分別對應(yīng)不同的讀取值發(fā)送不同指令4.3.3手動模式指令控制在服務(wù)器電腦上可以通過后天軟件進行系統(tǒng)的手動控制,主要實現(xiàn)方式是在串口通信方式下通過按鍵進行指令發(fā)送。在控制界面中對于所需要控制的終端設(shè)備分別有不同的劃分,左邊是操作設(shè)備終端的名稱,之后對應(yīng)著“ON”“OFF”選項,與之對應(yīng)的是設(shè)備的開關(guān)狀態(tài)。手動模式的開啟需要以服務(wù)器、串口以與按鍵操作為基礎(chǔ),通過按鍵串口發(fā)送指令到下位機即Zigbee的協(xié)調(diào)器節(jié)點,并且會顯示動作。

60、下面以一個終端的操作代碼實現(xiàn)為例講解手動模式的實現(xiàn)過程。界面按鍵顯示狀態(tài)傳送命令手動模式串口工作服務(wù)器圖4-6 手動模式控制與工作流程private void button11_Click(object sender, EventArgs e) /圖示的一個ON按鍵byte data = new byte1; /定義一個數(shù)組替代之后的字符if (SerialPort1.IsOpen = true) /檢測串口類是否開啟data0 = (byte)A; /把命令字符賦值給數(shù)組SerialPort1.Write(data, 0, 1); /串口類寫出數(shù)據(jù)命令private void button7

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論