畢業(yè)論文基于zigbee技術(shù)的蔬菜大棚管理系統(tǒng)設(shè)計說明書_第1頁
畢業(yè)論文基于zigbee技術(shù)的蔬菜大棚管理系統(tǒng)設(shè)計說明書_第2頁
畢業(yè)論文基于zigbee技術(shù)的蔬菜大棚管理系統(tǒng)設(shè)計說明書_第3頁
畢業(yè)論文基于zigbee技術(shù)的蔬菜大棚管理系統(tǒng)設(shè)計說明書_第4頁
畢業(yè)論文基于zigbee技術(shù)的蔬菜大棚管理系統(tǒng)設(shè)計說明書_第5頁
已閱讀5頁,還剩73頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于zigbee技術(shù)的蔬菜大棚管理系統(tǒng)設(shè)計摘要:隨著計算機技術(shù)、無線通信技術(shù)以及農(nóng)業(yè)設(shè)施的不斷完善,蔬菜大棚也慢慢向著無線、經(jīng)濟、智能化的方向發(fā)展。而溫濕度是蔬菜大棚環(huán)境監(jiān)控的一項重要指標,從早期的人工管理、自動控制,以及到現(xiàn)在要求的智能化,溫濕度的監(jiān)控越來越安全、經(jīng)濟、高效、便捷。本文以增強型工業(yè)標準的8051內(nèi)核cc2430為硬件平臺、ieee 802.15.4為協(xié)議標準以及和數(shù)據(jù)庫等的軟件結(jié)合,設(shè)計了一個基于zigbee網(wǎng)絡(luò)的遠程蔬菜大棚溫濕度的監(jiān)控系統(tǒng)。該系統(tǒng)運行可靠、功耗低、成本低達到了我們對蔬菜大棚溫濕度的遠程實時監(jiān)控。為提高農(nóng)作物的生產(chǎn)量、為農(nóng)民增收帶來了很好的經(jīng)濟和社會效益。關(guān)

2、鍵詞:zigbee; 實時監(jiān)控;無線通信; 數(shù)據(jù)庫;智能化 managing system of greenhouses based on zigbee huang xiongfengsanming university college of mathematics and information engineering grade 2008 computer science and technology (orientation: embedded technology)abstract:with the continuous perfection of computer technolog

3、y, wireless communication technology and agricultural facilities, the technology of greenhouses is also developing in the direction of wireless-ness, economy and intelligentization. humiture is an important indicator in monitoring the environment of greenhouses. with the early labor control, automat

4、ic management and the present required intelligentization, the monitoring of humiture is becoming more and more safe, economical, efficient and convenient. with enhanced industry-standard 8051 kernel cc2430 as hardware platform, ieee 802.15.4 as protocol standards and softwares combined with databas

5、e, the paper designs a remote monitoring system of greenhouses based on zigbee. the system is dependable and helps to achieve real-time remote monitoring of the humiture of greenhouses with its low power consumption and cost. it can increase the production of crops and thus bring great economic and

6、social benefits to farmers.key words:zigbee; real-time remote monitoring; wireless communication; database; intelligentization目 錄第一章 緒論11.1 本文研究的背景和意義11.2 相關(guān)領(lǐng)域國內(nèi)外的研究現(xiàn)狀21.3 本人主要工作31.4 本文組織結(jié)構(gòu)3第二章 系統(tǒng)結(jié)構(gòu)框架分析和設(shè)計42.1 無線蔬菜大棚模型結(jié)構(gòu)分析42.2 系統(tǒng)整體框架設(shè)計6第三章 系統(tǒng)開發(fā)環(huán)境和軟硬件選型83.1 系統(tǒng)開發(fā)環(huán)境83.2 系統(tǒng)軟硬件選型8第四章 系統(tǒng)軟硬件的設(shè)計和實現(xiàn)144.1 數(shù)據(jù)采

7、集節(jié)點的設(shè)計和實現(xiàn)144.1.1 溫濕度數(shù)據(jù)采集模塊144.1.2 無線通信模塊164.2 基站節(jié)點的設(shè)計和實現(xiàn)184.2.1 ieee802.15.4標準和zigbee協(xié)議介紹184.2.2 基站節(jié)點實現(xiàn)功能描述194.2.3溫濕度數(shù)據(jù)解碼224.3節(jié)點程序的燒錄234.4 服務(wù)端的設(shè)計和實現(xiàn)274.5 遠程主機端的設(shè)計和實現(xiàn)284.5.1 主機服務(wù)端應用軟件設(shè)計分析294.5.2 主機服務(wù)端應用軟件部分功能實現(xiàn)30第五章 系統(tǒng)運行和驗證37第六章 結(jié)論39參考文獻40致 謝41第一章 緒論隨著人類社會的發(fā)展,溫室大棚的出現(xiàn)促進了農(nóng)業(yè)發(fā)展、帶動了農(nóng)民的增收,給人類的農(nóng)業(yè)發(fā)展帶來了可觀的經(jīng)濟和

8、社會效益。溫濕度作為農(nóng)作物生長的重要因素,便成為了蔬菜大棚智能化控制的主要研究部分。1.1 本文研究的背景和意義作為世界四大文明古國之一,我國也是世界上的農(nóng)業(yè)大國。有著悠久的農(nóng)業(yè)種植歷史,但國外的溫室種植,溫室控制管理技術(shù)已經(jīng)相對比較成熟,而我國的農(nóng)業(yè)設(shè)施、控制技術(shù)、管理技術(shù)等卻遠遠落后于歐美等一些發(fā)達國家。隨著改革開放,特別是90年代以來,在過去的二十幾年里先后從國外引進了許多溫室種植技術(shù),以蔬菜大棚、花卉為主的植物栽培設(shè)施在大江南北遍地開花,隨著政府對城市蔬菜產(chǎn)業(yè)的不斷投入,鄉(xiāng)鎮(zhèn)內(nèi)蔬菜大棚產(chǎn)業(yè)被看作是21世紀最具活力的新產(chǎn)業(yè)之一。顯然引進國外的先進技術(shù)是實現(xiàn)我國現(xiàn)代化農(nóng)業(yè)的一條快捷路徑,與

9、此同時我們也要發(fā)展適合我國環(huán)境資源特點的有我們自主知識產(chǎn)權(quán)的溫室控制技術(shù)1。我國地大物博,但可耕植的土地卻很少,加上人口眾多,人均占有耕地面積少。因此,想要提高農(nóng)業(yè)生產(chǎn)值,只靠增加耕地面積是不現(xiàn)實的,所以我們要想辦法來提高單位產(chǎn)量。溫室大棚技術(shù)就是其中一個好的方法。溫室大棚是一種可以改變植物生長環(huán)境、為植物生長創(chuàng)造最佳條件、避免外界四季變化和惡劣氣候?qū)ζ溆绊懙囊粋€場所。通過建立一個模擬適合生物生長的氣候條件,創(chuàng)造一個人工氣象環(huán)境,來消除生物生長對溫濕度等環(huán)境的依賴。而且它能使傳統(tǒng)的季節(jié)性作物不再依賴以季節(jié)氣候等因素,使得在某個季節(jié)里可以長出人類所需的作物。由于溫室大棚能達到調(diào)節(jié)產(chǎn)期,促進生長發(fā)

10、育,防治病蟲害及提高質(zhì)量和產(chǎn)量等眾多的作用,并且已成為農(nóng)民增收的主要手段,所以在世界上越來越普及溫室大棚技術(shù)。隨著大棚技術(shù)的普及,溫室大棚數(shù)量不斷增多,溫室大棚的溫濕度控制便成為一個十分重要的課題。自18世紀工業(yè)革命以來,工業(yè)發(fā)展與是否能掌握溫濕度有著密切的聯(lián)系。在冶金、鋼鐵、石化、水泥、玻璃、醫(yī)藥等行業(yè),可以說幾乎80%的工業(yè)部門都不得不考慮著溫濕度的因素。溫濕度不但對于工業(yè)如此重要,在農(nóng)業(yè)生產(chǎn)中溫濕度的監(jiān)測與控制也有著十分重要的意義。傳統(tǒng)的溫濕度控制是在溫室大棚內(nèi)部懸掛溫度計和濕度計,通過讀取溫度值和濕度值了解實際溫濕度,然后根據(jù)現(xiàn)有溫濕度與額定溫濕度進行比較,看溫濕度是否過高或過低,然后

11、進行相應的通風或者灑水。這些操作都是在人工情況下進行的,耗費了大量的人力物力?,F(xiàn)在,隨著國家經(jīng)濟的快速發(fā)展,農(nóng)業(yè)產(chǎn)業(yè)規(guī)模的不斷提高,農(nóng)產(chǎn)品在大棚中培育的品種越來越多,對于數(shù)量較多的大棚,傳統(tǒng)的溫度控制措施就顯現(xiàn)出很大的局限性2。溫室大棚的建設(shè)對溫濕度檢測與控制技術(shù)也提出了越來越高的要求。現(xiàn)在我們生活在一個智能化的世界中,其中單片機等計算機技術(shù)是功不可沒的一部分。單片機是單片微型計算機的簡稱,其功能強大、體積小、可靠性高、造價低和開發(fā)周期短等優(yōu)點使其成為自動化和各個測控領(lǐng)域中必不可少且廣泛應用的器件,尤其在日常生活中也發(fā)揮越來越大的作用。它比專用處理器更適合應用于嵌入式系統(tǒng),因此它得到了最多的應

12、用。事實上單片機是世界上數(shù)量最多的計算機?,F(xiàn)代人類生活中所用的幾乎每件電子和機械產(chǎn)品中都會集成有單片機。工業(yè)控制、尖端武器、通信設(shè)備、信息處理、家用電器等各測控領(lǐng)域都有其身影。采用單片機來對農(nóng)業(yè)大棚中的溫濕度進行監(jiān)測、控制等,不僅具有簡單方便、控制性強和實時性高等優(yōu)點,而且可以大幅度提高被控溫濕度的技術(shù)指標,從而能夠大大提高產(chǎn)品的質(zhì)量和數(shù)量,而且單片機對溫濕度的控制問題是一個工農(nóng)業(yè)生產(chǎn)中經(jīng)常會遇到的問題。因此,本課題圍繞基于單片機的溫室大棚控制系統(tǒng)展開了應用研究工作。1.2 相關(guān)領(lǐng)域國內(nèi)外的研究現(xiàn)狀國外對溫室大棚內(nèi)的諸多環(huán)境進行控制的研究比我國早,大約始于20世紀70年代。最初采用的是人工的現(xiàn)

13、場采集、記錄、統(tǒng)計等手段來進行對溫室大棚內(nèi)的環(huán)境進行相應的控制等。大概到了80年代末則迅速的采用自動化控制。而這些都離不開人的因素參與在里面,所以目前各個國家在已有的基礎(chǔ)上對溫室大棚進行了更深入的研究,讓溫室大棚的管理和計算機、無線網(wǎng)絡(luò)等實現(xiàn)無人值守等方面發(fā)展。從國內(nèi)外溫室控制技術(shù)的發(fā)展狀況來看,溫室環(huán)境控制技術(shù)大致經(jīng)歷三個發(fā)展階段:(1)手動控制。手動控制產(chǎn)生于人類對溫室栽培作物的前期,在這個時期,溫室大棚內(nèi)的環(huán)境因素都必須有人類來進行觀察、測量、記錄,從而進行溫室大棚內(nèi)環(huán)境的調(diào)整,諸如光線、溫濕度等。在此基礎(chǔ)上產(chǎn)生的經(jīng)驗將記錄在文獻中,從而成為人類對溫室大棚技術(shù)研究及其實踐的理論依據(jù)。在這

14、個時期,由于人的因素是溫室環(huán)境控制的主導,雖然溫室大棚產(chǎn)生的經(jīng)濟效益比傳統(tǒng)作物生長產(chǎn)生的經(jīng)濟效益高出了許多,但是其生產(chǎn)效率低下也讓人類慢慢的在研究新的控制方法,從而讓農(nóng)業(yè)的發(fā)展更加向工業(yè)化式的生產(chǎn)靠近。(2)自動控制。隨著人類對手動控制階段的深入探索,加上工業(yè)化程度的漸漸成熟,人類對溫濕度大棚的環(huán)境監(jiān)測、控制等又進入另一個階段:自動化控制。在這個階段人類根據(jù)以往的經(jīng)驗,對溫室大棚內(nèi)作為生長的環(huán)境有了深入的了解,以是采用工業(yè)控制的手段對大棚內(nèi)的環(huán)境進行調(diào)整。拿對大棚內(nèi)光線強度的控制來舉例。大棚管理員先對大棚內(nèi)作物對光線需求量的上下閥值進行了預先的設(shè)置,接著根據(jù)大棚內(nèi)光線傳感器傳來的數(shù)據(jù)與上下閥值

15、進行對比,再根據(jù)對比的結(jié)果來決定是否對大棚內(nèi)的光線強度進行調(diào)整控制等,從而實現(xiàn)了農(nóng)業(yè)大棚的工業(yè)化式生產(chǎn)、農(nóng)業(yè)生產(chǎn)效率得到了進一步的提高。我國對國外的溫室大棚設(shè)備及其控制技術(shù)的引入等大多數(shù)都是停留在這個階段。(3)智能化控制。隨著計算機科學技術(shù)的不斷發(fā)展,工業(yè)控制領(lǐng)域慢慢向著智能化方向發(fā)展,溫室大棚控制技術(shù)也將面臨著進一步的改革。到了智能化控制階段人類根據(jù)祖先留下的關(guān)于溫室大棚控制的文獻和經(jīng)驗的傳承,進一步總結(jié)對溫室大棚內(nèi)環(huán)境控制的經(jīng)驗等,從而研究出一種不同作物、不同環(huán)境等的控制技術(shù),漸漸的淡化人的因素,從而更大程度的提高生產(chǎn)效率。讓溫室大棚控制技術(shù)逐漸的朝著智能化、無人值守、先進、高收益等方向

16、發(fā)展。1.3 本人主要工作在對國內(nèi)外的一些文獻的閱讀,以及對計算機技術(shù)在工業(yè)控制領(lǐng)域的研究、傳感器技術(shù)的了解以及對無線網(wǎng)絡(luò)技術(shù)的研究,利用這些現(xiàn)有的設(shè)備和技術(shù),分析和總結(jié)出國內(nèi)外對溫室大棚環(huán)境控制技術(shù)的經(jīng)驗和成敗教訓等,再從實際的種植、生產(chǎn)情況出發(fā),根據(jù)預先設(shè)計好的完整流程,用更短的時間、盡量少的資源生產(chǎn)出更優(yōu)質(zhì)的作物產(chǎn)物,從而提高了農(nóng)業(yè)生產(chǎn)效率,為人類獲得更多達大的經(jīng)濟效益。從系統(tǒng)的整體功能出發(fā),本文將討論該系統(tǒng)的硬件構(gòu)成和軟件設(shè)計,即系統(tǒng)的數(shù)據(jù)采集節(jié)點部分,數(shù)據(jù)轉(zhuǎn)發(fā)部分(基站),服務(wù)器端部分以及遠程主機部分(提供用戶數(shù)據(jù)查詢)。其中數(shù)據(jù)采集部分和數(shù)據(jù)轉(zhuǎn)發(fā)部分是基于增強型工業(yè)標準的8051核

17、單片機處理器構(gòu)成的;服務(wù)器端主要是收集基站發(fā)來的數(shù)據(jù)、存儲、并負責將數(shù)據(jù)傳輸?shù)竭h程用戶使用端;遠程主機部分主要實現(xiàn)從服務(wù)端接收溫濕度數(shù)據(jù),并以此為基礎(chǔ)為用戶提供豐富軟件功能。本系統(tǒng)重點將放在軟件設(shè)計和實現(xiàn)上。1.4 本文組織結(jié)構(gòu)本文總共分6章來講述關(guān)于無線蔬菜大棚的設(shè)計和實現(xiàn)。第一章主要陳述了研究本系統(tǒng)的背景和意義、國內(nèi)國外相關(guān)領(lǐng)域的研究現(xiàn)狀以及本人在本系統(tǒng)中所作的工作;第二章主要介紹了整個系統(tǒng)的整體框架以及一些必要流程圖來幫助理解本系統(tǒng);第三章主要論述了開發(fā)本系統(tǒng)所用到的開發(fā)環(huán)境、工具等;第四章對本系統(tǒng)的軟硬件實現(xiàn)進行了詳細的描述;第五章將對本系統(tǒng)運行的結(jié)果進行驗證;第六章對本系統(tǒng)及本文進行

18、了總結(jié)。第二章 系統(tǒng)結(jié)構(gòu)框架分析和設(shè)計2.1 無線蔬菜大棚模型結(jié)構(gòu)分析經(jīng)過對zigbee無線組網(wǎng)技術(shù)的了解、對蔬菜大棚的自動化控制的了解、溫濕度采集等環(huán)節(jié)的了解,再根據(jù)預期開始時間、成本、經(jīng)濟效益的方面的考慮,本系統(tǒng)的模型主要分為四塊:溫濕度的數(shù)據(jù)采集節(jié)點、負責從節(jié)點接收數(shù)據(jù)并向主機發(fā)送數(shù)據(jù)的基站節(jié)點、主機(服務(wù)器)以及最終的用戶。該系統(tǒng)的模型框架如圖2-1所示:遠程主機端服務(wù)端程序基站節(jié)點數(shù)據(jù)采集節(jié)點圖2-1 系統(tǒng)整體模型框架圖溫濕度采集節(jié)點是由cc2430核心板和溫濕度傳感器構(gòu)成的。其中cc2430是用來實現(xiàn)zigbee應用的片上系統(tǒng),它支持2.4ghz ieee 802.15.4/zig

19、bee通信協(xié)議。該模塊集成了增強型工業(yè)標準的8051單片機、flash、sram和rf收發(fā)器3。數(shù)據(jù)采集節(jié)點的工作流程圖如圖2-2所示:開始n收集溫濕度數(shù)據(jù)系統(tǒng)初始化定時時間到y(tǒng)發(fā)送溫濕度數(shù)據(jù)圖2-2 數(shù)據(jù)采集節(jié)點工作流程圖數(shù)據(jù)采集節(jié)點是定時的(默認設(shè)置成10s采集一次溫濕度數(shù)據(jù))采集數(shù)據(jù),這個時間間隔是可以網(wǎng)絡(luò)中的基站向溫濕度傳感器節(jié)點發(fā)送重新設(shè)置時間間隙的控制命令來完成設(shè)置的。ppp(point-to-point protocol)協(xié)議是在設(shè)計和實現(xiàn)網(wǎng)絡(luò)中基站節(jié)點功能所要用到的技術(shù)。ppp協(xié)議是為在同等單元之間傳輸數(shù)據(jù)包這樣的簡單鏈路設(shè)計的鏈路層協(xié)議。這種鏈路提供全雙工操作,并按照順序傳遞

20、數(shù)據(jù)包。設(shè)計目的主要是用來通過撥號或?qū)>€方式建立點對點連接發(fā)送數(shù)據(jù),使其成為各種主機、網(wǎng)橋和路由器之間簡單連接的一種共通的解決方案。傳感器應用了其技術(shù)從而實現(xiàn)了數(shù)據(jù)的接力傳送,從而提高了網(wǎng)絡(luò)通信的效率4。溫濕度采集節(jié)點也是基于zigbee通信協(xié)議的終端設(shè)。zigbee的基礎(chǔ)是ieee 802.15.4。但ieee僅處理低級mac層和物理層協(xié)議,因此zigbee聯(lián)盟擴展了ieee,對其網(wǎng)絡(luò)層協(xié)議和api進行了標準化。與其他無線標準802.11或802.16不同,zigbee以250kbps的最大傳輸速率承載有限的數(shù)據(jù)流量。它滿足國際標準組織(iso)開放系統(tǒng)互連(osi)參考模型,主要包括物理層

21、、數(shù)據(jù)鏈路層5。zigbee是一種新興的短距離、低速率、低功耗的無線可自組的網(wǎng)絡(luò)技術(shù)。主要用于近距離無線連接。在數(shù)千個微小的傳感器之間相互協(xié)調(diào)實現(xiàn)通信,這些傳感器只需要很少的能量,以接力的方式通過無線電波將數(shù)據(jù)從一個傳感器傳到另一個傳感器,所以它們的通信效率非常高。zigbee是一個最多可容納65000個無線數(shù)值傳輸模塊組成的一個無線網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)钠脚_。圖3-2是zigbee的協(xié)議棧的體系結(jié)構(gòu)圖。圖2-3 zigbee協(xié)議棧體系結(jié)構(gòu)zigbee網(wǎng)絡(luò)和中國移動通信的cdma/gsm網(wǎng)絡(luò)非常的相似,每一個zigbee無線網(wǎng)絡(luò)數(shù)據(jù)傳輸模塊類似于移動網(wǎng)絡(luò)中的一個基站,在其構(gòu)成的真整個無線網(wǎng)絡(luò)范圍內(nèi),它

22、們之間可以進行相互通信;每個網(wǎng)絡(luò)節(jié)點間的距離可以從標準的75米,到擴展后的幾百米,甚至幾公里,這樣子可以滿足通信設(shè)備逐漸變大的今天;另外整個zigbee網(wǎng)絡(luò)還可以與現(xiàn)有的其它的各種網(wǎng)絡(luò)連接6。2.2 系統(tǒng)整體框架設(shè)計本系統(tǒng)根據(jù)現(xiàn)有的農(nóng)業(yè)設(shè)施、計算機軟件基礎(chǔ)上進行了設(shè)計,主要分為傳感器數(shù)據(jù)采集節(jié)點部分,數(shù)據(jù)轉(zhuǎn)發(fā)部分(基站),服務(wù)器端部分以及遠程主機4部分。終端節(jié)點既考慮到了功耗的要求,又考慮到了數(shù)據(jù)的安全性。各個傳感器節(jié)點每隔一定的時間采集一次它周圍的溫濕度,并將溫濕度數(shù)據(jù)通過臨近節(jié)點或直接傳給基站核心板上;基站核心板負責收集從各個幾點上傳來的數(shù)據(jù),并通過串口轉(zhuǎn)傳到服務(wù)器端上;遠程主機將建立數(shù)據(jù)

23、庫來存儲這些數(shù)據(jù),為用戶提供查詢操作,主機也可以實現(xiàn)報警等功能。本系統(tǒng)的總體框架如圖2-4所示。圖2-4無線蔬菜大棚系統(tǒng)總體框架圖以下是對這4部分功能的詳細介紹:1、溫濕度傳感器數(shù)據(jù)采集節(jié)點:本系統(tǒng)中該環(huán)節(jié)主要是通過cc2430集成的暴露在空氣中的溫濕度傳感器來采集菜蔬大棚里空氣的溫濕度,將其轉(zhuǎn)化成數(shù)字信號,并通過zigbee無線網(wǎng)絡(luò)將這些采集到的數(shù)據(jù)發(fā)送到基站節(jié)點。數(shù)據(jù)采集節(jié)點并不是多對一的傳輸關(guān)系,每個節(jié)點都有路由轉(zhuǎn)發(fā)功能,也可以接受來自鄰近節(jié)點的數(shù)據(jù),并將其轉(zhuǎn)發(fā)給基站節(jié)點,從而擴大了測量的距離,解決了無線測量范圍有限的難題7。2、基站:基站作為本系統(tǒng)的核心環(huán)節(jié),它需要完成收集從自己網(wǎng)內(nèi)各

24、個數(shù)據(jù)采集節(jié)點發(fā)來的數(shù)據(jù),并將這些數(shù)據(jù)通過串口發(fā)送到計算機(也可以稱作服務(wù)器上)進行存儲,從而為上層用戶提供查詢等服務(wù)提供了數(shù)據(jù)依據(jù)?;疽彩且粔Kcc2430的增強型工業(yè)標準的嵌入式核心板,它在組網(wǎng)中的序號必須是01號,否則將接受不到數(shù)據(jù),此部分將在下面的章節(jié)詳解介紹。3、服務(wù)器端:服務(wù)器端通過串口線將從基站收到的數(shù)據(jù)存儲在數(shù)據(jù)庫中,并通過gprs網(wǎng)絡(luò)傳輸給遠程主機端,從而為上層軟件的設(shè)計、用戶的使用提供了數(shù)據(jù)依據(jù)。本系統(tǒng)的一個重點是在服務(wù)器端建立一個軟件系統(tǒng)來管理這些數(shù)據(jù)。4、遠程用戶端:該部分主要負責從服務(wù)器端收集數(shù)據(jù),并存儲在自己的數(shù)據(jù)庫中,并以此為數(shù)據(jù)基礎(chǔ)為用戶提供數(shù)據(jù)。本系統(tǒng)在該軟件

25、設(shè)計中實現(xiàn)數(shù)據(jù)接收的控制、溫濕度數(shù)據(jù)的顯示、歷史數(shù)據(jù)的查詢、刪除、溫濕度的自報警以及系統(tǒng)用戶等的管理。第三章 系統(tǒng)開發(fā)環(huán)境和軟硬件選型3.1 系統(tǒng)開發(fā)環(huán)境本系統(tǒng)的開發(fā)環(huán)境可以分為硬件環(huán)境和軟件環(huán)境:(1)硬件環(huán)境主要有:1、溫濕度數(shù)據(jù)采集節(jié)點:若干個基于cc2430溫濕度傳感器節(jié)點;2、基站節(jié)點:基于cc2430的核心板;3、服務(wù)器端:sim300v1.5開發(fā)板。4、遠程主機:個人pc機。(2)軟件環(huán)境主要有:1、涉及的開發(fā)工具環(huán)境:sql servver 2005、microsoft visual studio c+6.0、cygwin等;2、涉及的操作系統(tǒng):tinyos、microsoft

26、 windowsxp professional等。3.2 系統(tǒng)軟硬件選型本系統(tǒng)選用集成了shtxx系列的cc2430增強型8051內(nèi)核的芯片作為溫濕度數(shù)據(jù)采集模塊和基站模塊。圖3-1是溫濕度采集節(jié)點及其基站的實物展示。圖3-1 溫濕度數(shù)據(jù)采集及其基站節(jié)點數(shù)據(jù)采集節(jié)點及其基站節(jié)點是一組安放在蔬菜大棚實地內(nèi)的傳感器和無線通信模塊的終端集合。主要是負責大棚內(nèi)空氣的溫濕度的數(shù)據(jù)采集,并接收從基站發(fā)來的指令,定時通過無線模塊將本節(jié)點采集到的溫濕度數(shù)據(jù)傳輸給基站節(jié)點。數(shù)據(jù)采集節(jié)點主要由電源模塊、處理器模塊、溫濕度傳感器收集模塊和無線通信模塊4個模塊構(gòu)成的:1、電源:采用兩節(jié)1.5v的紐扣電池組成的3v直流

27、電為整個系統(tǒng)供電。2、處理器模塊和無線通信模塊:采用增強型工業(yè)標準的cc2430核心板,它是加強版的zigbee模塊。3、溫濕度傳感器收集模塊:采用cc2430核心板集成溫濕度傳感器sht10。數(shù)據(jù)采集節(jié)點的硬件框圖如圖3-2所示:圖3-2 為數(shù)據(jù)采集節(jié)點硬件框架圖該芯片的主要優(yōu)點有以下幾點8:1、功耗低:由于該節(jié)點應用了zigbee技術(shù),而zigbee采用了多種節(jié)省功耗的工作模式,所以使用2節(jié)的5號電池可以確保節(jié)點工作12年。從而解決了功耗的問題。2、成本低:由于zigbee協(xié)議是免專利費用以及其工作的頻段為2.4hz(免執(zhí)照頻段),所以減少了設(shè)備的成本。3、自組網(wǎng)、自愈能力強:網(wǎng)絡(luò)間個個節(jié)

28、點之間無需人為操作下,可自行感知周圍其他節(jié)點,并與其建立連接關(guān)系,組成相應的網(wǎng)絡(luò)。當刪除或添加網(wǎng)絡(luò)中的一個節(jié)點時,或則是節(jié)點故障等情況發(fā)生不會導致網(wǎng)絡(luò)癱瘓,因為自身網(wǎng)絡(luò)能夠進行自我的修復、調(diào)整,從而使整個系統(tǒng)繼續(xù)正常工作。4、除了以上優(yōu)點外,該芯片還具有節(jié)點間通訊間距遠、可靠性高、數(shù)據(jù)安全以及網(wǎng)絡(luò)容納量大等眾多優(yōu)點。本系統(tǒng)中負責服務(wù)端和遠程主機端通信的設(shè)備采用的是simcom公司(希姆)生產(chǎn)的一款三頻段gsm/gprs模塊sim300以及外圍外接的單片機芯片組成的。由于其內(nèi)嵌tcp/ip協(xié)議棧以及gprs標準,再加上其低功耗、高傳輸速率以及性能優(yōu)良等諸多特點,所以sim300的應用范圍很廣泛,

29、特別是在于開發(fā)一些gsm/gprs的無線應用產(chǎn)品更受到業(yè)內(nèi)人士的鐘愛。圖3-3是sim300及其外圍芯片實物圖。圖3-3 sim300及其外圍芯片實物圖使用串口將應用系統(tǒng)和sim300及其外圍電路連接起來,應用系統(tǒng)通過gprs模塊的at指令向sim300核心板發(fā)送控制指令,從而對其產(chǎn)生控制行為。sim300模塊擁有一套完整的、標準的at命令集,包括一般命令、(中英文)短消息控制命令、電話本控制命令、gprs命令、網(wǎng)絡(luò)服務(wù)命令以及呼叫控制命令等。本系統(tǒng)的sim300模塊主要負責從基站接收數(shù)據(jù),并存儲在數(shù)據(jù)庫中,并通過gprs網(wǎng)絡(luò)以及對相應的at指令的響應后發(fā)送到遠程的主機上。從而實現(xiàn)將基站的數(shù)據(jù)

30、存儲在服務(wù)端的數(shù)據(jù)以及遠程主機上。圖3-4是sim300模塊反面電話卡的插槽實物圖。圖3-4 反面電話卡插槽本系統(tǒng)中數(shù)據(jù)采集節(jié)點及其基站節(jié)點程序是采用nesc編寫,通過cygwin環(huán)境平臺編譯的。nesc 是對c語言的擴展(也有一種說法是說nesc是集結(jié)了c、c+、java等三種語言的),它基于體現(xiàn)tinyos 的結(jié)構(gòu)化概念和執(zhí)行模型而設(shè)計的。這是一種針對于程序工作者開發(fā)基于結(jié)構(gòu)化的組件編程而產(chǎn)生的新語言。nesc 語言主要是用在傳感器網(wǎng)絡(luò)(特別是無線傳感器網(wǎng)絡(luò))等嵌入式系統(tǒng)。與c語言的存儲格式不同,用nesc語言編寫的文件是以“nc”為后綴。nesc的最大特點是將組件化模塊化思想和基于事件驅(qū)

31、動的執(zhí)行模型相結(jié)合。圖3-5是源程序到燒錄的示意圖。圖3-5 源碼到燒錄的示意圖所以每個nc文件實現(xiàn)一個組件功能(組件化模塊化)。在nesc程序中,主要定義兩種功能不同的組件組件(configuration)和模塊(module) 9。 組件主要是描述組件不同接口的關(guān)系,完成各個組件接口之間的相互連接和調(diào)用。一個組件必須實現(xiàn)它提供接口的指令和它的使用的接口事件。組件之間通過接口彼此靜態(tài)地相連。組件相關(guān)執(zhí)行部分主要包含提供給其他組件的接口和配件要使用的接口的組件接口列表和如何將各個組件接口連接在一起的執(zhí)行連接列表。在應用程序中存在多個配置文件,并且配件之間存在一個層次關(guān)系。 模塊主要用于描述組件

32、的接口函數(shù)功能以及具體的實現(xiàn)過程,每個模塊的具體執(zhí)行都由4個相關(guān)部分組成:數(shù)據(jù)幀、一組執(zhí)行線程、事件函數(shù)和命令函數(shù)。不同的模塊可以實現(xiàn)相同的接口。一個nesc應用程序有3個部份組成:聲明和定義、接口類型和組件,每一個nesc應用程序是由一個或則多個組件通過接口鏈接起來,并通過ncc或gcc編譯生成一個完整的可執(zhí)行程序。cygwin是一個類linux模擬仿真器,但它是運行在windows環(huán)境下的。cygwin是由cygnus solutions公司開發(fā)的自由軟件。cygwin包括了一套庫,該庫在win32系統(tǒng)下實現(xiàn)了posix系統(tǒng)所要調(diào)用的應用程序接口(api);以及自己的一套gnu開發(fā)工具集(

33、如gdb、gcc),這樣我們可以在windows下進行簡單的unix軟件開發(fā);還有一些unix系統(tǒng)下的常見程序10。cygnus solutions公司把gas、gdb、gcc等軟件開發(fā)工具進行了一些的改進,使它們能夠生成并解析win32的目標文件。接著公司的工程師們要把這些工具移植到windows平臺上去。他們寫了一個cygwin庫(共享庫),把win32 api中沒有的unix風格的調(diào)用等全部封裝在該共享庫里。那么,在開發(fā)程序的過程中,我們只要把共享庫和這些工具的源代碼鏈接起來,就可以通過unix上的交叉編譯器生成在windows平臺上運行的工具集。從而程序開發(fā)者就可以在windows平臺

34、上使用用戶工具盒開發(fā)工具,并可以運行bash等工具,從而在windows環(huán)境下使用unix的工具。本系統(tǒng)采用微軟的基礎(chǔ)類庫mfc作為服務(wù)端和遠程主機端程序的編寫。并采用sql server 2005作為系統(tǒng)后臺數(shù)據(jù)庫的支持。mfc是microsoft foundation classes(微軟基礎(chǔ)類)的簡稱。它以c+的編程風格封裝了windows的api,即減少了大量在建立windows程序時必須編寫的代碼,同時還為程序工作者提供了一個應用程序框架,從而大大的提高了程序工作者的工作效率。由于它是c+的風格,所以它還提供了所有一般c+編程的優(yōu)點,例如繼承和封裝。mfc是可移植的,例如,在wind

35、ows 3.1下編寫的代碼可以很容易地移植到windows nt或windows 95上11。mfc是一個擴展了c+類層次結(jié)構(gòu)的類庫,而且是一個很龐大的類庫,它讓程序工作者在開發(fā)windows應用程序時不再像以前晦澀難懂。mfc 可以兼容整個 windows 家族的應用程序開發(fā),也就是說,無論是 windows3.x、windows95 還是 windows nt,所使用的 mfc 類庫都是兼容的。每每有新的windows版本出現(xiàn)時,mfc類庫工作者都會根據(jù)新版windows特點來修改類庫,從而使得無論新舊編譯器都可以兼容mfc,以便減輕程序工作者的工作量和兼容性。通過visual c+6.0

36、建立的mfc框架如圖3-6所示12。 圖3-6 mfc應用程序框架sql server 2005 是microsoft公司推出的全面的關(guān)系型數(shù)據(jù)庫服務(wù)器產(chǎn)品,是面向企業(yè)級用戶的數(shù)據(jù)庫應用平臺。它給企業(yè)級應用數(shù)據(jù)和分析程序帶來了極高的安全性與穩(wěn)定性,并以其易于操作與管理的特性極大地提升了企業(yè)的運營效率13。sql即structured query language的縮寫,中文譯為結(jié)構(gòu)化查詢語言。server中文譯為服務(wù)器,而2005代表的是版本號。sql server 2005不同于以往的數(shù)據(jù)庫服務(wù)器,它不僅是一個網(wǎng)絡(luò)數(shù)據(jù)庫服務(wù)器,實質(zhì)上還是一個關(guān)系型數(shù)據(jù)庫,同時還是一個數(shù)據(jù)分析平臺。它為用戶提

37、供了一個安全、可靠、高效的開發(fā)平臺,能夠廣泛的應用于企業(yè)數(shù)據(jù)管理和商業(yè)智能。通過全面的功能集、現(xiàn)有系統(tǒng)的集成性以及對日常任務(wù)的自動化管理能力,sql server 2005為不同規(guī)模的企業(yè)提供全面的、集成的、端到端的數(shù)據(jù)解決方案。sql server 2005 的組件架構(gòu)如圖3-7所示14。圖3-7 sql server 2005 的組件架構(gòu)第四章 系統(tǒng)軟硬件的設(shè)計和實現(xiàn)早期對蔬菜大棚內(nèi)溫濕度的監(jiān)控是采用手工控制的,通過長期的經(jīng)驗積累,對蔬菜大棚內(nèi)農(nóng)作物的生長狀況的記錄等形成的依據(jù),直接對大棚的溫濕度進行調(diào)節(jié)以使給大棚里的作物一個適宜生長的環(huán)境。而基于zigbee網(wǎng)絡(luò)的蔬菜大棚監(jiān)控系統(tǒng)可以節(jié)省

38、一定的人力資源,將收集到的數(shù)據(jù)和系統(tǒng)設(shè)置的上下限進行對比,將準確的進行報警,通知相關(guān)人員進行處理。相比于人工管理階段,本系統(tǒng)一定程度上提高了生產(chǎn)效率15。在設(shè)計本系統(tǒng)的時候,充分考慮到了系統(tǒng)界面的友好、方便于用戶操作;數(shù)據(jù)傳輸和接收的實時性以及整個系統(tǒng)的穩(wěn)定、安全等因素。本系統(tǒng)主要致力于軟件的設(shè)計上,實現(xiàn)了系統(tǒng)的啟動和關(guān)閉、溫濕度的實時監(jiān)控、險情警示、溫濕度上下閥值設(shè)置、查詢歷史記錄、按需刪除歷史記錄、管理用戶等功能。4.1 數(shù)據(jù)采集節(jié)點的設(shè)計和實現(xiàn)數(shù)據(jù)采集節(jié)點按功能模塊劃分可分為:溫濕度數(shù)據(jù)采集模塊和數(shù)據(jù)發(fā)送模塊(無線通信模塊)。下面詳細介紹這兩個模塊。4.1.1 溫濕度數(shù)據(jù)采集模塊溫濕度采

39、集模塊式采用溫濕度傳感器sht10。sht10 是一款含有已校準數(shù)字信號輸出的溫濕度復合傳感器,采用cmosens專利技術(shù)將溫度濕度傳感器、a/d轉(zhuǎn)換器及數(shù)字接口無縫結(jié)合。sht10與cc2430連接電路原理圖如圖4-1所示:圖4-1 cc2430與sht10連接電路原理圖該傳感器由1個能隙式測溫元件、1個電容式聚合體測濕元件、1個14位a/d轉(zhuǎn)換器和1個2-wire數(shù)字接口組成,使得該產(chǎn)品具有體積小、精度高、功耗低、反應快、抗干擾能力強等優(yōu)點。而且sht10 數(shù)字式傳感器具有類似i2c 總線數(shù)字接口的通信方式與crc 數(shù)據(jù)傳輸校驗。數(shù)據(jù)采集節(jié)點在上電后,經(jīng)過11ms后,sht10會從休眠狀態(tài)

40、恢復到等待狀態(tài);接著發(fā)送一組“傳輸啟動”時序進行數(shù)據(jù)傳輸?shù)某跏蓟ぷ?6。然后發(fā)送一組測量命令(其中相對濕度rh量的時序命令為“0000 0101”,攝氏溫度t量的時序命令為“0000 0011”)開始測量周圍的溫濕度量,等待測量結(jié)束(大約需要20/80/320ms對應其8/12/14位的時間);最后sht10將下拉data到低電平(進入空閑模式)表示測量結(jié)束了,并傳入一個字節(jié)的crc校驗并開始接收數(shù)據(jù)17。該流程圖如圖4-2所示:開始傳輸啟動測量命令設(shè)p1.1為輸入yp1.1=1?n接收數(shù)據(jù)返回圖4-2為溫濕度數(shù)據(jù)采集模塊流程圖其中產(chǎn)生啟動傳輸時序的程序片段如下:/相關(guān)其他的代碼p1_1=1

41、;p1_0=1;wait(1);p1_1=0;wait(1);p1_0=0;wait(1);p1_0=1;wait(1);p1_1=1;wait(1);p1_0=0;/其他相關(guān)代碼4.1.2 無線通信模塊cc2430是一塊符合ieee802.15.4標準的片上zigbee芯片。它的無線通信模塊的基礎(chǔ)是數(shù)據(jù)采集節(jié)點之間是采用點對點的通信方式。其數(shù)據(jù)采集的流程圖如圖4-3所示:圖4-3 數(shù)據(jù)采集節(jié)點流程圖在系統(tǒng)啟動,數(shù)據(jù)采集節(jié)點開啟后,并完成初始化工作后,節(jié)點將開始搜索其無線范圍內(nèi)的網(wǎng)絡(luò)信息。由于zibgee網(wǎng)絡(luò)內(nèi)的節(jié)點具有路由轉(zhuǎn)發(fā)的功能,所以節(jié)點之間也可以互發(fā)數(shù)據(jù),直至將源數(shù)據(jù)發(fā)送到最終的基站節(jié)

42、點。接下來介紹點對點通信的實現(xiàn)。表4-1 mac層數(shù)據(jù)幀格式11111222目標地址(da)源地址(sa)標志位(flags)有效負載(payload)幀校驗(fcs)由上表4-1可知:1、目標地址是用1個字節(jié)表示,它是數(shù)據(jù)采集節(jié)點在同組網(wǎng)絡(luò)中自身的編號。2、源地址也是用1個字節(jié)表示,它和目標地址是一個相對的概念。3、標志位用1個字節(jié)來表示,當?shù)?位為1時,表示目標節(jié)點在收到該數(shù)據(jù)幀后要答復;當?shù)?位為1時表示該幀是接收到數(shù)據(jù)幀后的答復幀;當?shù)?位為1時,表示該幀是超時重傳的數(shù)據(jù)幀;當當數(shù)據(jù)幀中flags字節(jié)的第8位為1時,表示該幀是數(shù)據(jù)序列中的一幀。4、有效負載是用1122不等字節(jié)表示,由于

43、ieee802.15.4協(xié)議的規(guī)范中規(guī)定了數(shù)據(jù)在傳輸時的物理服務(wù)數(shù)據(jù)單元(psdu)的最大負載量為127個字節(jié),而由于已經(jīng)被使用了5個字節(jié),所以數(shù)據(jù)的有效負載的長度只能介于1122個字節(jié)之間。每當有超過有效負載長度(超過122個字節(jié))的數(shù)據(jù)需要發(fā)送時,我們需要將數(shù)據(jù)進行拆解,拆解成符合ieee802.15.4協(xié)議規(guī)定的數(shù)據(jù)長度。而負責接收數(shù)據(jù)的節(jié)點則需要將分成段得數(shù)據(jù)進行整合后才可進行使用。5、幀校驗由2字節(jié)組成,它是對物理層協(xié)議的數(shù)據(jù)單元mpdu的校驗。如果cc2430芯片中的rf寄存器相關(guān)的某些控制位設(shè)為高電平(即為1)的時候,幀校驗fcs將由硬件自動來繼續(xù)調(diào)整,燃油由多項式x16+x12

44、+x5+1進行crc軟件校驗和生成。數(shù)據(jù)采集節(jié)點發(fā)送數(shù)據(jù)的步驟可以總結(jié)為5步,具體的流程如下:1、系統(tǒng)初始化主要是將整個系統(tǒng)的工作頻率(晶振頻率)設(shè)置為32mhz,,為后面的rf初始化調(diào)工了必要的條件。2、rf初始化主要是設(shè)置通信頻率,設(shè)置電源,并使用代碼清空rx和tx,并開啟rx等工作。3、dma的初始化主要是為tx分配1個空閑的dma通道,并為其設(shè)置相應的數(shù)據(jù)結(jié)構(gòu)。4、當設(shè)置為tx準備的dma通道時,需將數(shù)據(jù)的源地址設(shè)為所要發(fā)送數(shù)據(jù)的起始地址,目標地址設(shè)為寄存器rfd的地址。然后,在設(shè)置所要發(fā)送數(shù)據(jù)的長度。并設(shè)置dma數(shù)據(jù)按字節(jié)進行傳輸以及一些必要位的設(shè)置從而完成dma的設(shè)置。5、等到dm

45、a描述等的設(shè)置好后,系統(tǒng)將啟動dma通道上數(shù)據(jù)塊的傳輸。而在我們啟動dma通道數(shù)據(jù)傳輸之前,將當前數(shù)據(jù)幀的標志字節(jié)、目標節(jié)點地址、源節(jié)點地址、數(shù)據(jù)長度通過直接寫寄存器rfd的方式寫入txfifo。通過這樣的流程后,我們在啟動dma通道傳輸后,完整的數(shù)據(jù)幀將會被傳輸?shù)絫xfifo。最后發(fā)送指令istxoncca給csp來啟動tx傳輸。這樣子就完成發(fā)送一幀數(shù)據(jù)的整個過程。數(shù)據(jù)采集節(jié)點發(fā)送數(shù)據(jù)的流程圖如圖4-4所示:開始 系統(tǒng)初始化rf初始化dma初始化dma設(shè)置將幀數(shù)據(jù)寫入緩存nrssl正常?y開啟tx并延時啟動tx返回圖4-4 發(fā)送數(shù)據(jù)流程圖4.2 基站節(jié)點的設(shè)計和實現(xiàn)4.2.1 ieee802

46、.15.4標準和zigbee協(xié)議介紹ieee(institute of electrical and electronics engineers 美國電氣和電子工程師協(xié)會)無線個人區(qū)域網(wǎng)工作組的ieee802.15.4技術(shù)標準是zigbee的技術(shù)基礎(chǔ)。ieee802.15.4標準的制定是為低能耗的簡單設(shè)備提供有效覆蓋范圍在10m之內(nèi)的低速連接,用用于用于無線監(jiān)測、工業(yè)控制等消費與商用應用領(lǐng)域。ieee802.15.4支持兩種的網(wǎng)絡(luò)拓撲結(jié)構(gòu),即單跳星狀或當通信線路超過10 m時的多跳對等拓撲。但是對等拓撲的邏輯結(jié)構(gòu)由網(wǎng)絡(luò)層定義。lr-wpan中的器件既可以使用64位ieee地址,也可以使用在關(guān)聯(lián)

47、過程中指配的16位短地址。一個ieee802.15.4網(wǎng)最多可以容納216個器件。ieee802.15.4標準最重要的特點是低功耗。因為在現(xiàn)實中用電池供電的嵌入式器件,經(jīng)常的更換電池所產(chǎn)生的費用往往比器件本身的成本還要高。所以在ieee802.15.4標準的制定中,在數(shù)據(jù)傳輸過程中引入了節(jié)省功率的機制。多數(shù)機制是基于信標使能的方式,主要是限制器件或協(xié)調(diào)器之收發(fā)信機的開通時間,或者在無數(shù)據(jù)傳輸時使它們處于休眠狀態(tài)18,從而很大程度上降低了嵌入式應用設(shè)備的功耗量。ieee802.15.4標準里有三種不同的數(shù)據(jù)傳輸方式從而突出了低功耗的特點:間接數(shù)據(jù)傳輸、直接數(shù)據(jù)傳輸和有時隙保證的數(shù)據(jù)傳輸。zigb

48、ee網(wǎng)絡(luò)是一種高可靠性的無線數(shù)字傳輸網(wǎng)絡(luò),它可工作在三種流行的免費頻段上(如全球流行的2.4ghz、美國流行的915 mhz 和歐洲流行的868mhz)。其傳輸速率分別可以達到250kbit/s、40kbit/s和20kbit/s。zigbee是一組基于ieee批準通過的ieee802.15.4無線標準研制開發(fā)的組網(wǎng)、安全和應用軟件方面的技術(shù)標準。并由zigbee alliance和ieee 802.15.4小組共同制定了zigbee技術(shù)標準。zigbee棧體系結(jié)構(gòu)由一組稱為層的塊兒組成。每個層為上層執(zhí)行指定一套服務(wù):數(shù)據(jù)實體提供數(shù)據(jù)傳輸服務(wù),管理實體提供所有其它服務(wù)。每個服務(wù)實體通過一個服務(wù)

49、接入點(sap)為上層提供一個接口,每個sap支持一些服務(wù)原語來完成必須的功能19。zigbee網(wǎng)絡(luò)層(nwk)支持星形、樹狀形和網(wǎng)狀拓撲結(jié)構(gòu)三種結(jié)構(gòu)。在星狀形的拓撲結(jié)構(gòu)里,整個網(wǎng)絡(luò)是由一個獨立的通信設(shè)備zigbee協(xié)調(diào)器來進行控制20。zigbee協(xié)調(diào)器的功能主要是負責對已連入網(wǎng)絡(luò)中的節(jié)點進行控制和維護。在樹狀形拓撲和網(wǎng)狀拓撲結(jié)構(gòu)里,zigbee協(xié)調(diào)器得功能主要是對已建立的網(wǎng)絡(luò)中的一些參數(shù)進行選擇、確定和設(shè)置等。zigbee網(wǎng)絡(luò)的組建主要是為工業(yè)化的現(xiàn)場實現(xiàn)自動化控制時對數(shù)據(jù)的傳輸。它的協(xié)議規(guī)范使得設(shè)備功耗低、工作可靠、工作安全、結(jié)構(gòu)簡單、價格低廉、使用方便等特點。而移動通信網(wǎng)的cdma網(wǎng)或

50、gsm網(wǎng)主要是為用戶的語音的通信而建立的,其單個基站的費用一般都在百萬元以上,而zigbee協(xié)議中的每個zigbee的基站價值卻不到人民幣1000元?;谝陨蠈igbee節(jié)點的分析,我們選擇使用cc2430的基站節(jié)點。4.2.2 基站節(jié)點實現(xiàn)功能描述基站節(jié)點是作為整個系統(tǒng)的核心部分,它應用zigbee網(wǎng)絡(luò)從數(shù)據(jù)采集節(jié)點收集它們的溫濕度數(shù)據(jù),然后按一定的數(shù)據(jù)格式編碼后,最后通過串口通信方式將數(shù)據(jù)傳到上位機(服務(wù)端)上。圖4-5向我們展示了基站節(jié)點的實物圖:圖4-5 基站節(jié)點實物圖上位機是負責從基站那里收集數(shù)據(jù),并將數(shù)據(jù)存儲在上位機(或則其他上位機)的數(shù)據(jù)庫里面,這樣子上位機就可以為用戶提供豐富

51、的軟件服務(wù)提供了數(shù)據(jù)支持。而基站向服務(wù)器端發(fā)送的數(shù)據(jù)要有一定的數(shù)據(jù)格式(數(shù)據(jù)傳輸協(xié)議),從而來規(guī)范和保證數(shù)據(jù)傳輸?shù)恼_性。基站和上位機通訊的協(xié)議如表4-2所示:表4-2 基站和上位機通訊協(xié)議表字段長度字節(jié)序內(nèi)容包頭包頭標志1字節(jié)默認為0x37硬件類型2字節(jié)big endian默認值0x24 0x30包負載長度2字節(jié)big endian減去9字節(jié)后為傳感器數(shù)據(jù)長度數(shù)據(jù)傳感器類型2字節(jié)big endian詳細定義參考表4-3下一跳節(jié)點編號2字節(jié)big endian若如果節(jié)點的數(shù)據(jù)經(jīng)過路由轉(zhuǎn)發(fā),那么第一次轉(zhuǎn)發(fā)的節(jié)點編號便是該字段值源發(fā)數(shù)據(jù)節(jié)點編號2字節(jié)big endian最初發(fā)送傳感器數(shù)據(jù)的節(jié)點編號

52、順序號2字節(jié)big endian保留 默認為0x00 0x00跳數(shù)1字節(jié)路由轉(zhuǎn)發(fā)過程中所經(jīng)過的節(jié)點數(shù)傳感器數(shù)據(jù)(包負載長度-9)字節(jié)big endian源節(jié)點傳輸?shù)臄?shù)據(jù)校驗位校驗碼1字節(jié)除包頭標志外所有字節(jié)的異或的結(jié)果通過串口調(diào)試可以驗證我們收到的收據(jù)也是20個字節(jié)的,詳細數(shù)據(jù)如圖4-6所示:圖4-6 從基站收到的數(shù)據(jù)由表4-2和圖4-5可知基站給上位機傳輸?shù)臄?shù)據(jù)是由三部分組成的:包頭、數(shù)據(jù)和校驗碼。其中1、包頭段:包頭段共有5個字節(jié),其中1個字節(jié)的包頭標志、2個字節(jié)的硬件類型和2個字節(jié)的包負載長度。包頭標志固定是0x37。硬件類型也是固定的0x30 0x24。包負載長度指定了基站向上位機所傳

53、輸?shù)臄?shù)據(jù)的字節(jié)數(shù)。2、數(shù)據(jù)段:數(shù)據(jù)段的總字節(jié)數(shù)取決于傳感器數(shù)據(jù)的字節(jié)數(shù),由如圖3-9可知包負載長度為0x0e所以傳感器數(shù)據(jù)的字節(jié)數(shù)是5個字節(jié),所以數(shù)據(jù)段的總字節(jié)數(shù)是14個字節(jié)。其中包含2個字節(jié)的傳感器類型,該段的定義詳見表4-3;接著是2個字節(jié)的數(shù)據(jù)來表示嚇一跳節(jié)點的id,如果節(jié)點是直接和基站通表4-3 傳感器類型定義圖傳感器名稱縮寫類型值溫濕度th1溫度t2光light3流量flux4血壓blood_pressure5海拔高度altitude6磁場hoare7雨滴rain8訊的該字段應該同最初發(fā)送信息節(jié)點的id是一致的,否則說明節(jié)點的數(shù)據(jù)是被其他節(jié)點轉(zhuǎn)發(fā)到基站的,并且這個字段的值就是首發(fā)轉(zhuǎn)發(fā)

54、的節(jié)點的id;再接著就是2個字節(jié)的字段來表示最初發(fā)送信息節(jié)點的id;然后是用2個字節(jié)來表示節(jié)點的順序號,該字段的值是保留值為0x00 0x00;接著用1個字節(jié)數(shù)據(jù)來表示節(jié)點的跳數(shù);最后使用5個字節(jié)來傳輸節(jié)點傳來的溫濕度數(shù)據(jù),關(guān)于溫濕度數(shù)據(jù)的解碼將在下一小節(jié)進行詳解。3、校驗碼段:校驗碼字段是用1個字節(jié)來表示的。它的值是前面除包頭標志外的所有字節(jié)異或的結(jié)果。4.2.3溫濕度數(shù)據(jù)解碼基站將溫濕度數(shù)據(jù)傳輸給上位機后,上位機的應用軟件將這些數(shù)據(jù)進行解碼,讓數(shù)據(jù)以更直觀的形式展示給用戶。這些數(shù)據(jù)包括溫濕度采集節(jié)點的編號、該位置節(jié)點測到的溫度和濕度:1、節(jié)點編號的解碼:由圖4-7可知在傳輸?shù)膮f(xié)議中的9、1

55、0字節(jié)決定了是哪個編號的節(jié)點傳來的數(shù)據(jù),所以在上位機的應用軟件中使用a = rxdata9*256 + rxdata10;便可以解碼出節(jié)點的編號,其中rxdata就是我們接收到的一次數(shù)據(jù)編碼,它共有20個字節(jié),由圖4-8也可知道。2、溫度數(shù)據(jù)的解碼:經(jīng)過多次的數(shù)據(jù)收集和計算,最后可知溫度數(shù)據(jù)是由1418字節(jié)中的15、16字節(jié)決定的。再根據(jù)如圖4-7公式和圖4-8的系數(shù)可以得到溫度數(shù)據(jù)圖4-7 溫度轉(zhuǎn)化公式圖4-8 相關(guān)系數(shù)參考圖4-9中temperature是我們所要解碼的溫度數(shù)據(jù),d1和d2系數(shù)的值要參考圖4-10中的值。經(jīng)過多次計算對比可以得到該段的程序源碼如圖4-9所示:圖4-9 溫度解

56、碼程序3、濕度數(shù)據(jù)的解碼:濕度數(shù)據(jù)的解碼比溫度復雜了許多,它還需要溫度的數(shù)據(jù)。為了補償濕度傳感器的非線性以獲得準確的數(shù)據(jù),首先我們要進行如圖4-10的公式來修正輸出數(shù)值:圖4-10 濕度非線性補償公式其中c1、c2、c3系數(shù)的值如圖4-11所示,sorh的值是我們協(xié)議中17、18字節(jié)的數(shù)據(jù)決定的。圖4-11 濕度轉(zhuǎn)換系數(shù)接著需要對濕度傳感器相對濕度的溫度補償?shù)挠嬎?,依?jù)圖4-12的公式:圖4-12 濕度傳感器相對于溫度的轉(zhuǎn)化公式該公式中的t是我們測出的溫度數(shù)據(jù),t1、t2的系數(shù)值參照圖4-13:圖4-13 t1、t2系數(shù)參考經(jīng)過多次的測量、比較、計算可得到如圖4-14的源程序來解碼濕度數(shù)據(jù):圖4-14 解碼濕度數(shù)據(jù)源碼

溫馨提示

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

評論

0/150

提交評論