基于無線傳感網絡的空氣質量監測系統設計_第1頁
基于無線傳感網絡的空氣質量監測系統設計_第2頁
基于無線傳感網絡的空氣質量監測系統設計_第3頁
基于無線傳感網絡的空氣質量監測系統設計_第4頁
基于無線傳感網絡的空氣質量監測系統設計_第5頁
已閱讀5頁,還剩39頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

摘要空氣品質對人的影響至關重要,利用傳感器檢測空氣質量是當今流行的一種方法,本文介紹了傳感器在空氣質量檢測方面的原理應用及監控系統的網絡設計。本系統采用無線傳感器網絡來實現數據的采集與發送。無線傳感器網絡是由部署在監測區域內大量的廉價微型傳感器節點組成,通過無線通信方式形成一個多跳的自組織的網絡系統,其目的是協作地感知、采集和處理網絡覆蓋區域中感知對象的信息,并發送給觀察者。本設計系統采用CC2430無線通信模塊、溫濕度傳感器DHT90、空氣質量傳感器QS-01、電源模塊構建無線傳感器網絡,通過RS-232串口和監控中心通信,使用軟件開發平臺IAREmbeddedWorkbench開發ZigBee協議棧,基于ZigBee的無線網絡技術以低功耗、低成本、低復雜度等特點受到越來越多企業和個人的青睞??諝赓|量監測系統特別適合于數據吞吐量小、網絡建設投資少、網絡安全要求較高、不便頻繁更換電池或充電的場合。預計將在消費類電子設備、家庭智能化、工控、醫用設備控制、農業自動化等領域獲得廣泛應用,利用ZigBee技術完成傳感器節點和匯聚節點的應用程序,最終能夠實現空氣質量的監測。關鍵字:無線傳感器;cc2430;DTH90;zigbee技術;空氣質量檢測ABSTRACTAirqualityimpactonpeopleisveryimportant,usingsensorstodetectairqualityisnowapopularmethod,thispaperintroducesthesensorinairqualitytestingprinciple,analyzestheadvantagesanddisadvantagesofgassensor,andgassensordevelopmenttrendandprospects.Thesystemuseswirelesssensornetworkstoachievedata’scollectionandtransmission.Wirelesssensornetworksarecomposedofalargenumberoflow-costmicro-sensornodeswhicharedeployedinthemonitoringregion,useswirelesscommunicationmeanstoformamulti-hop'sself-organizingnetwork,withtheaimofperception,collectionandprocessingofperceivedtargetinformationinthenetworkcoverageregion,andsendthemtoobservers.ThissystemusesCC2430wirelesscommunicationmodule,temperatureandhumiditysensorDHT90,airqualitysensorQS-01,powermoduletobuildwirelesssensornetworks,andusesRS-232serialporttocommunicatewithmonitoringcenter.UsethesoftwaredevelopmentplatformIAREmbeddedWorkbenchtodevelopZigBeeprotocolstack.BasedontheZigBeewirelessnetworkingbylowcharacteristicsandsoonpowerloss,lowcost,lowcomplexityreceivesmoreandmoremanyenterprisesandindividualfavor.TheZigBeetechnologysuitsspeciallyinthedatavolumeofgoodshandledsmall,thenetworkconstructioninvestsfew,thenetworksecurityrequestishigh,inconvenientreplacesthebatteryorthechargesituationfrequently.Theestimateintheexpenseclasselectronicinstallation,thefamilyintellectualization,thelaborwillcontrol,medicaldomainsandsoondevicecontrol,agriculturalautomationobtainsthewidespreadapplicationThesecandefinitivelyachievethepurposeofairqualitymonitoring.Keywords:wirelesssensor;CC2430;DTH90;ZigBeetechnology;airqualitytesting目錄摘要 IABSTRACT II1緒論 11.1引言 11.2課題背景和研究意義 11.3無線傳感器網絡的研究進展 21.4論文的研究內容與組織結構 42無線傳感器網絡概述 62.1無線傳感器網絡簡介 62.2無線傳感器網絡體系結構概述 62.3無線傳感器網絡特點 72.4無線傳感器網絡應用 102.5 無線傳感器網絡關鍵技術 102.6無線傳感器網絡拓撲結構 123空氣質量監測系統硬件設計 163.1ZigBee技術 163.2系統總體結構設計 173.3傳感器節點的硬件設計 193.3.1節點硬件總體結構 193.3.2處理器和無線通信模塊HFZ-CC2430EM-22 203.3.2傳感器模塊 223.4匯聚節點的硬件設計 273.4.1電源模塊 273.4.2RS-232串口模塊 284空氣質量監測系統軟件設計 294.1ZigBee協議 294.2IAR開發環境介紹 304.3傳感器節點應用程序設計 314.4匯聚節點應用程序設計 335系統測試與結果分析 355.1測試方案 355.1.1硬件測試 355.1.2溫度采集及串口顯示測試 355.1.3數據通信測試 35參考文獻 36附錄C部分程序 384.2.1 原語概念 444.2.2 建立新網絡 444.2.3 ZigBee設備加入網絡過程 451緒論1.1引言1.2課題背景和研究意義1.3無線傳感器網絡的研究進展無線傳感器網絡相關的課題,國內也有越來越多的企業開始關注無線傳感器網絡技術的發展,開始推出針對無線傳感器網絡及ZigBee的解決方案,而無線網絡應用在生活中的研究也是剛剛起步[7]。目前ZigBee網絡的應用范圍非常廣泛,很多我們想象不到的地方也在使用ZigBee技術。例如,在工業領域,ZigBee技術不僅用來控制照明燈的開關,它還有一個用途是檢查高速路上照明燈的工作情況。以前工程師要開車到高速路上檢查哪些照片燈已經壞掉了,需要維修,但因為車速較快,不能記下所有要檢修燈的編號,但通過ZigBee網絡,工程師只需坐在計算機,就可以很清楚地監測到整個高速路上照明燈的工作情況,這是目前的一個熱點應用。再如,ZigBee技術用于進出的控制,可以記錄汽車的進出,也可以在人員進出時用于傳輸相關指紋來識別數據,進行身份認證。此外,通過ZigBee網絡的路由器功能,它還可以用來實時監控煤礦內各點的安全狀況,防止事故的發生。在加油站,一些客戶不希望布線,他們正在考慮采用ZigBee無線技術來傳輸相關數據。在消費類電子方面,ZigBee技術可以替現在的紅外遙控,于紅外遙控相比,ZigBee的優勢在于每一個操作都會有反饋信息,告訴他們是否實現了相關操作。現今我們也可以看到ZigBee用于家庭保安,消費者在家中的門和窗上都安裝了ZigBee網絡,當有人闖入時,ZigBee可以控制開啟室內攝像裝置,這些數據再通過Internet或WLAN網絡反饋給主人,從而實現報警[8]。當在家電產品如空調,熱水器等安裝ZigBee模塊后,用戶可以通過ZigBee無線網絡來控制這些產品的開啟。在建筑智能化領域,各種燈光的控制,氣體的感應與監測,如煤氣泄漏的感應和報警都可以應用ZigBee技術。ZigBee在未來的幾年里將在工業控制,工業無線定位,家庭網絡,汽車自動化,樓宇自動化,消費電子,醫用設備控制等多個領域具有廣泛的應用前景,特別是家庭自動化和工業控制,將成為今后ZigBee芯片的主要應用領域。在工業領域,利用傳感器和ZigBee網絡,使得數據的自動采集,分析和處理變得更加容易,可以作為決策輔助系統的重要組成部分。在汽車領域,主要是傳遞信息的通用傳感器。由于很多傳感器只能內置在飛轉的車輪或者發動機中,比如輪胎壓力監測系統,這就要求內置無線通信設備使用的電池有較長的壽命,同時應該克服嘈雜的環境和金屬結構對電磁波的屏蔽效應。在精確農業領域,傳統農業主要使用孤立的,沒有通信能力的機械設備,主要是依靠人力監測作物的生產狀況,采用了傳感器和ZigBee網絡后,農業將可以逐漸地轉向以信息和軟件為中心的生產模式,使用更多的自動化,網絡化,職能化和遠程控制的設備來耕種。在家庭和樓宇自動化領域,家庭自動化系統作為電子技術的集成得以迅速擴展,易于進入,簡單明了和廉價的安裝成本等成了驅動自動化居家,建筑開發和應用無線技術的主要動因[8]。在醫學領域,將借助于各種傳感器和ZigBee網絡準確而且實時地監測病人的血壓,體溫和心跳速度等信息,從而減輕醫生的查房的工作負擔,有助于醫生做出快速的反應,特別是對重病和病?;颊叩谋O護和治療。在消費和家用自動化市場,可以聯網的家用設備有電視,錄像機,無線耳機,PC外設,運動與休閑器械,兒童玩具,游戲機,窗戶和窗簾,照明設備,空調系統和其它家用電器。1.4論文的研究內容與組織結構研究內容:本論文研究了如何利用傳感器檢測空氣質量及介紹了傳感器在空氣質量檢測方面的原理應用,分析了當前氣體傳感器的特點,以及氣體傳感器的發展趨勢和前景本包括系統的軟硬、件設計及其具體實現,主要研究內容如下。一是,目前我國采用的空氣質量監測方法的研究,基于無線傳感器網絡的空氣質量監測系統的研究意義和無線傳感器網絡的概述,概述包括基本概念、結構、體系結構、特點、應用、關鍵技術和網絡拓撲結構。二是,該系統的硬件設計。該系統采用符合IEEE802.15.4標準的ZigBee無線技術來實現網絡中節點間的無線通信。溫濕度傳感器節點由西安華凡科技有限公司的HFZ-CC2430EM-22模塊,溫濕度傳感器DHT90和兩節五號電池組成。氣體傳感器節點由西安華凡科技有限公司的HFZ-CC2430EM-22模塊,空氣質量傳感器QS-01和5V鋰電池組成。研究了HFZ-CC2430EM-22模塊的結構、特性和CC2430芯片的內部結構、外在電路;研究了DHT90的工作原理并實現了傳感器通信,最終焊接制作出溫濕度傳感器節點。匯聚節點由西安華凡科技有限公司的HFZ-CC2430EM-22模塊和SmartRF07DB母板組成。主要應用母版的串口電路和電源模塊,因為匯聚節點一直處于工作狀態因此選擇持續的USB供電方式,通過串口連接匯聚節點和PC機并顯示測試數據,而串口電平與TTL電平幅值不同無法直接相連,因此需要串口電路轉換電平。三是,該系統的軟件設計。論文研究了德州儀器開發的ZigBee協議棧Z-Stack的軟件構架,并在IAR集成開發環境中開發該協議棧,根據傳感器節點和匯聚節點的應用流程添加自己的溫濕度采集應用程序和修改主文件中的任務處理函數,最終實現功能。論文結構:共分為5章,結構安排如下:第1章:緒論。介紹了目前的空氣質量監測方法,課題的研究背景及研究意義,無線傳感器網絡的研究進展和論文的主要研究內容和組織框架。第2章:無線傳感器網絡概述。介紹了無線傳感器網絡的基本構架、體系結構、特點、應用和關鍵技術。第3章:空氣質量監測系統硬件設計。介紹了ZigBee技術,系統的總體結構設計,傳感器節點和匯聚節點的硬件設計。第4章:空氣質量監測系統軟件設計。介紹了ZigBee協議棧,IAR集成開發環境,傳感器節點和匯聚節點的應用程序設計。第5章:總結與展望。總結本論文所做的工作,提出現有方案的不足之處,并對下一步工作進行了展望。2無線傳感器網絡概述2.1無線傳感器網絡簡介無線傳感器網絡是新一代的傳感器網絡,具有非常廣泛的應用前景,其發展和應用,將會給人類的生活和生產的各個領域帶來深遠影響。發達國家如美國,非常重視無線傳感器網絡的發展,IEEE正在努力推進無線傳感器網絡的應用和發展。波士頓大學,還于最近創辦了傳感器網絡協會,期望能促進傳感器聯網技術開發。美國的《技術評論》雜志在論述未來新興十大技術時,更是將無線傳感器網絡列為第一項未來新興技術,《商業周刊》預測的未來四大新技術中,無線傳感器網絡也被列入其中[10]??梢灶A計,無線傳感器網絡的廣泛應用是一種必然趨勢,它的出現將會給人類社會帶來極大的變革。2.2無線傳感器網絡體系結構概述[11]2.3無線傳感器網絡特點[12][13][14][15]2.4無線傳感器網絡應用[17][18]無線傳感器網絡關鍵技術無線傳感器網絡作為當今信息領域新的研究熱點,有非常多的關鍵技術有待發現和研究。而功耗和安全問題對于無線傳感器網絡來說,是兩個最重要的性能指標,所以WSN的關鍵技術必然以降低網絡功耗和確保網絡安全為主線。下面介紹網絡拓撲控制、數據融合等部分關鍵技術。1)網絡拓撲控制對于自組織的傳感器網絡而言,網絡拓撲控制具有特別重要的意義。通過拓撲控制自動生成的良好的網絡拓撲結構,能夠提高路由協議和MAC協議的效率,可為數據融合、目標定位等很多方面奠定基礎,有利于節省節點的能量來延長網絡的生存期。所以,拓撲控制是WSN研究的核心技術之一[19]。WSN拓撲控制目前主要研究的問題是在滿足網絡覆蓋度和連通度的前提下,通過功率控制和骨干網節點選擇,剔除節點之間不必要的無線通信鏈路,生成一個高效的數據轉發的網絡拓撲結構。拓撲控制分為節點功率控制和層次型拓撲結構控制兩個方面。功率控制機制調節網絡中每個節點的發射功率,在滿足網絡連通度的前提下,減少節點的發送功率,均衡節點單跳可達的鄰居數目;目前已經提出了以鄰居節點度為參考依據的算法,以及利用鄰近圖思想生成拓撲結構的DRNG和DLSS算法。層次型的拓撲控制利用分簇機制,讓一些節點作為簇頭,由簇頭形成一個處理并轉發數據的骨干網,其他非骨干網節點可以暫時關閉通信模塊,進入休眠狀態以節省能量。2)數據融合在無線傳感器網絡中,節點傳感器采集數據并將它發送到網絡終端。但是在數據的采集和傳輸過程中,總要對采集的數據進行處理,因此存在如何對采集的數據進行處理、融合的問題。如果完全在本地節點上處理采集的數據而只發送處理后的結果,可以降低傳輸數據的功耗,但增加了本地節點處理器的功耗;如果傳輸原始采集的數據,可以降低節點處理器的功耗但增加了節點傳輸數據的功耗。因此,如何對采集的數據進行處理與融合對降低節點能耗起到相當大的作用。通常網絡中的傳感器數量很多,傳感器采集的數據具有一定的冗余度,因此將多個節點采集的數據相互結合起來進行處理可以降低整個網絡數據的傳輸量,有效降低系統功耗,問題是如何尋找本地節點處理與節點聯合處理的平衡點。3)定位技術位置信息是傳感器節點采集數據中不可缺少的部分,沒有位置信息的監測消息通常毫無意義。為了提供有效位置信息,隨機部署的傳感器節點必須能夠在布置后確定自身位置。由于傳感器節點存在資源有限、隨機部署、通信易受環境干擾甚至節點失效等特點,定位機制必須滿足自組織性、健壯性、能量高效、分布式計算等要求?,F有的WSN定位算法根據定位機制的不同,可以分為基于測距的方法與不基于測距的方法兩類?;跍y距的定位機制利用到達時間延遲、信號到達時差和接收信號強度來估計距離或來波方向,然后使用三邊測量法或最大似然估計等計算未知節點的位置。而不基于測距的定位機制無需距離或角度信息,或者不用直接測量這些信息,僅根據網絡的連通性等信息實現節點的定位。距離無關的定位機制的定位性受環境因素的影響小,雖然定位誤差相應有所增加,但定位精度能夠滿足多數傳感器網絡應用的需求,是目前大家重點關注的定位機制[20]。4)無線通信技術傳感器網絡需要低功耗短距離的無線通信技術。IEEE802.15.4標準是針對低速無線個人域網絡的無線通信標準,把低功耗、低成本作為設計的主要目標。由于IEEE802.15.4標準的網絡特征與無線傳感器網絡存在很多相似之處,因此很多研究機構把它作為無線傳感器網絡的無線通信平臺。另外,超寬帶無線通信以其高速率、低功耗、抗多徑、低成本等諸多優勢,已成為室內短距離無線網絡的首選方案,這為WSN的數據傳輸開辟了一種嶄新的方案。5)時間同步傳感器網絡中由于節能策略,節點在大部分時間是休眠的,所以要求解決通信同步問題,即通信節點雙方需要在通信時同時喚醒。另外,傳感器網絡是一個分布式網絡,所有節點在通信上地位對等,沒有優先級可言。所以要讓整個網絡能夠工作在有效狀態,往往需要做到全網或者一定范圍內所有節點的同步,而不是通信雙方的簡單同步。2.6無線傳感器網絡拓撲結構從無線傳感器組網形態和方法來看,有集中式、分布式和混合式。集中式類似于移動通信的蜂窩結構,可以集中管理;分布式結構類似于Ad-hoc網絡結構,可自組織網絡接入連接,可以分步管理;混合式結構是集中式和分布式結構的組合。其中無線傳感器按節點功能及結構層次來看,有可分為平面網絡結構、分級網絡結構、混合網絡結構以及Mesh網絡結構[21]。1)平面網絡:結構如下圖2-2所示,是無線傳感器網絡中最簡單的拓撲結構,每個節點都為對等結構,具有完全一致的功能特性,也就是每個節點包含相同的MAC、路由、管理和安全等協議。但是由于采用自組織協同算法形成網絡,其組網算法比較復雜:圖2-2無線傳感器網絡平面網絡結構Fig2-2levelnetworkstructureofWirelesssensornetwork2)分級網絡結構(層次網絡結構):如下圖2-3所示,分級網絡分為上層和下層兩個部分—上層為中心骨干節點;下層為一般傳感器節點。骨干節點之間或者一般傳感器節點間采用的是平面網絡結構,然而骨干節點和一般節點之間采用的是分級網絡結構。一般傳感器節點沒有路由、管理及匯聚處理等功能。圖2-3無線傳感器網絡分級網絡結構Fig2-3hierarchicalnetworkstructureofwirelesssensornetwork3)混合網絡結構:如下圖2-4所示,混合網絡結構時無線傳感器網絡中平面網絡結構和分級網絡結構的一種混合拓撲結構。這種結構和分級網絡結構不同的是一般傳感器節點之間可以直接通信,可不需要通過匯聚骨干節點來轉發數據,但是對所需硬件成本更高[22]。圖2-4無線傳感器網絡的混合網絡結構Fig2-4hybridnetworkstructureofWirelesssensornetwork4)Mesh網絡結構:如下圖2-5所示,這是新型的網絡拓撲結構,這是種規則分步的網絡,不同于完全連接的網絡結構。通常只允許和節點最近的鄰居通信。網絡內部的節點一般也是相同的,因此Mesh網絡也稱為對等網。由于通常Mesh網絡結構節點之間存在多條路由路徑,網絡對于單點或單個鏈路故障具有較強的容錯能力。其中優點就是盡管所有節點都是對等的地位[23],且具有相同的計算和通信傳輸功能,某個節點可被指定為簇首節點,而且可執行額外的功能,一旦簇首節點失效,另外一個節點可以立刻補充并接管原簇首那些額外執行的功能。圖2-5無線傳感器網絡的Mesh網絡結構Fig2-5MeshnetworkstructureofWirelesssensornetwork從技術上看,基于Mesh網絡結構的無線傳感器具有以下特點:a.由無線節點構成網絡:這種類型的網絡節點是由一個傳感器或執行器構成且連接到一個雙向無線收發器。b.節點按照Mesh拓撲結構部署:網內每個節點至少可以和一個其他節點通信,這種方式可以實現比傳統的集線式或星型拓撲更好地網絡連接性。具有自我形成、自愈功能,以確保存在一條更加可靠的通信路徑。c.支持多跳路由:來自一個節點的數據在其到達一個主機網關或控制器前,可以通過多個其余節點轉發。通過Mesh方式的網絡連接,只需短距離的通信鏈路,經受較少的干擾,因而可以為網絡提供較高的吞吐率及較高的頻譜復用效率。d.功耗限制和移動性取決于節點類型及應用的特點:通?;净騾R聚節點移動性較低,感應節點可移動性較高。基站不受電源限制,而感應節點通常由電池供電。e.存在多種網絡接入方式:可以通過新型、Mesh等節點方式和其他網絡集成。無線傳感器節點結構:如下圖2-6所示,無線傳感器由傳感器模塊、處理器模塊、無線通信模塊和能量供應模塊這四部分組成。其中,傳感器模塊(傳感器和模數轉換器)負責監測區域內信息的采集和數據轉換;處理器模塊(CPU、存儲器、嵌入式操作系統等)負責控制整個傳感器節點的操作,存儲和處理本身采集的數據;無線通信模塊(網絡、MAC、收發器)負責與其他傳感器節點進行無線通信;能量供應模塊為傳感器節點提供運行所需的能量,通常采用微型電池。圖2-6無線傳感器節點結構Fig2-6Wirelesssensornodestructure除了這四個模塊外,傳感器節點還可以包括其他輔助單元,如移動系統、定位系統和自供電系統等。由于傳感器節點采用電池供電,因此盡量采用低功耗器件,以獲得更高的電源效率。3空氣質量監測系統硬件設計3.1ZigBee技術[24]3.2系統總體結構設計EEE802.15.4和ZigBee協議中明確定義了三種拓撲結構:星型結構(Star)、網狀結構(Mesh)和星-網結構(ClusterTrec),如圖3-1所示。在星型網絡結構中,ZigBee協調器負責整個網絡的控制,無其它路由節點,ZigBee終端設備直接與zigBee。協調器通信,終端設備間的通信則需通過協調器轉發。這是最簡單的拓撲結構,網絡通信范圍十分有限,單獨使用這種拓撲結構的情況很少。圖3-1Zigbee的三種網絡拓撲結構Fig3-1ThreekindsnetworktopologystructureofZigBee在網狀網絡和簇樹型網絡中,ZigBee協調器負責網絡的建立和初始參數設定,網絡都可以通過ZigBee路由器進行擴展。但是,在簇樹型網絡中,路由器采用分級路由策略傳送數據和控制信息,并且通常是基于信標(Beacon)的通信模式。而在網狀網中則是完全對等的點對點通信,路由器不會定期發送信標,僅在網內設備要求時對其單播信標。對于簇樹型網絡,其通信路由相對單一,骨干網絡中一旦有路由節點癱瘓,則相應區域就進入通信癱瘓狀態,要等待該部分網絡重組后,才能恢復通信。但是,簇樹型網定期發送信標,使網內節點能做到很好的同步,便于節點定期進入休眠狀態,降低功耗,延長網絡壽命。在網狀網中情況則恰好相反,完全的點對點通信使路由有多種選擇,提高了網絡的容錯性,但是不定期發送信標使網絡中節點很難達到同步,必須采取別的手段來實現,如廣播。因此,網狀結構與簇樹結構的層次融合,必定是ZigBee網絡拓撲結構的一個發展方向。網狀網的優點是容錯能力和可靠性高,缺點是不易維護和管理、費用高、安裝復雜和不經濟?;谝陨戏治觯试O計選擇星狀網絡拓撲結構。總體設計圖如圖3-2:圖3-2總體設計圖Fig3-2Overalldesign3.3傳感器節點的硬件設計無線傳感器網絡節點的設計主要考慮以下幾點原則:1)成本低:為了滿足工業控制上的某些需要,無線傳感器網絡一般大量分布在被監測區域,因此無線傳感器節點設計應盡量簡單,降低成本。2)功耗低:無線傳感器網絡一般應用人工方式現場采集困難的高危環境下,工作人員往往無法接近的場所,終端節點一般要求不能經常更換供電設備,要求功耗盡可能較低。并要求節點通常在僅以小型電池供電的情況下,工作數月或更長。所以在無線傳感器節點的設計中,節能是至關重要的。3)尺寸小:無線傳感器節點尺寸應盡量小,保證對目標系統本身不會造成影響。并能被放置在任何物理環境下,能適應不同的環境要求。4)擴展性靈活性:無線傳感器節點需要定義統一、完整的外部接口,在需要添加新的硬件部件時,可以在現有的節點上直接添加,不需要開發新的節點。同時,節點可以按照功能拆分成多個組件,組件之間通過標準接口自由組合,維護方便。在不同的應用環境下,選擇不同組件自由配置系統,這樣就不必為每個應用都開發一個全新的硬件系統[25]。3.3.1節點硬件總體結構如圖3-3所示,無線傳感器網絡節點,一般由數據采集單元(各種傳感器)、數據處理單元(微控制器等)、數據收發單元(射頻收發器、天線等)、電池供電單元組成。可以根據具體要求在數據采集單元模塊上進行相應的傳感器的擴充以完成特定數據采集。圖3-3傳感器節點的硬件設計框圖Fig3-3Hardwareblockdiagramofsensornode3.3.2處理器和無線通信模塊HFZ-CC2430EM-22CC2430單片機是TI公司(德州儀器)生產的一款專用于IEEE802.15.4和ZigBee協議通信的片上系統解決方案。其RF內核是基于工業領先的射頻通信芯片CC2420。在單個芯片上集成了CPU、存儲器、常用片內外設和RF射頻單元。它具有1個8位CPU(8051),主頻達32MHZ,具有最大128KB可編程FLASH和8KB的SRAM,片內外設非常豐富,主要包括1個5通道8位至14位可編程ADC轉換器、4個定時器(其中包括一個MAC定時器)、2個USART,1個DMA控制器、1個AES128協同處理器、1個看門狗定時器、1個內部穩壓器、21個可編程I/O引腳,可配置為通用I/O,也可配置為外設專用引腳。CC2430芯片采用0.18μmCMOS工藝生產,在接收和發射模式下,電流損耗分別低于27mA和25mA。具有3種休眠模式,從休眠模式轉換到正常模式僅需54us,特別適合要求電池長期供電的應用場合[26]。其主要特點如下:(1)高性能和低功耗的8051微控制器核。(2)集成符合IEEE802.15.4標準的2.4GHz的RF無線電收發機。(3)優良的無線接收靈敏度和強大的抗干擾性。(4)32,64,128KB在線系統可編程flash。(5)多通道DMA控制器。(6)非常少的外部組件。(7)低電流功耗(運行在32MHZ時,RX:27mA,TX:25mA)。(8)在休眠模式時僅0.9μA的電流功耗,外部的中斷或RTC能喚醒系統。(9)在待機模式時少于0.6μA的流耗,外部的中斷能喚醒系統。(10)低功耗到正常工作模式需要的時間極少。硬件支持CSMA/CA功能。(11)較寬的電壓范圍(2.0~3.6V)。(12)支持數字RSSI/LQI指示。(13)具有電池監測和溫度傳感器。(14)8通道8~14位模數轉換的ADC。(15)集成AES安全協處理器。(16)帶有2個強大的支持多組串行協議的USART。(17)1個符合IEEE802.15.4規范的MAC定時器,1個16位定時器和2個8位定時器。(18)21個通用I/O引腳,其中有2個具有20mA灌電流和拉電流能力。(19)靈活功能強大的的開發環境。圖3-4CC2430內部結構示意圖Fig3-4TheCC2430internalstructurediagramCC2430芯片內部集成了大量必要電路,因此只需很少的外圍電路就可以正常運行并實現無線收發功能。圖3-5是CC2430外圍電路設計圖[27]。圖3-5CC2430外圍電路設計Fig3-5CC2430peripheralcircuitdesign在圖3-5中電容C8到C6通過除去雜波干擾穩定電壓,還可以用來濾波,其電容值分別是220nF,220nF,100nF。0.1uF的電容C5可以防止單片機錯誤復位,部分去除雜波干擾。C14,C13,C12,C11,C10是對電源進行濾波以提高工作穩定性的去耦電容。一個PCB微波傳輸線和電感值分別為8.2nH,22nH,1.8nH的電感L1,L2,L3電感以及5.6pF的電容C9組成非平衡變壓器,滿足RF輸出/輸入對匹配電阻(50Ω)的要求。偏置電阻R2的阻值為56kΩ,32MHZ晶體振蕩器的精密偏置電流由阻R1值為43kΩ的偏置電阻設置。用于正常工作的32MHZ晶振電路由電容值為22pF的電容C2,C1連接起來。用于休眠工作的32.768KHZ晶振電路由電容值為15pF的電容C4,C3連接起來,從而減少能量消耗。選用外置天線,選用兩節干電池為低功耗的CC2430芯片供電[28]。3.3.2傳感器模塊1.溫濕度傳感器DHT90DHT90/91/95系列插針型溫濕度傳感器采用原裝進口數字溫濕度傳感器芯片,引腳插針為標準2.54插針。該傳感器品質卓越、響應超快、抗干擾能力強、性價比極高。他適用代工生產用戶,免焊接、免水合處理,縮短開發時間,提高開發效率;精確測量相對濕度、溫度、露點;全標定輸出,使用時無需重新校準;卓越的長期穩定性;高精度兩線制數字接口,直接與單片機相連;請求式測量,超低能耗;無需其他外部元件;自動休眠。實物如圖3.6所示,由圖可知提供4針單排引腳封裝,從下至上為一到四號引腳。一號引腳SCK(時間線),二號引腳VDD(電源線),三號引腳GND(接地線),四號引腳DATA(數據線)。DHT90的工作電壓范圍為2.4-5.5V,最佳工作電壓為3.3V,一般在二號引腳(VDD)和三號引腳(GND)之間加一個去耦電容,穩定電壓。一號引腳(SCK)用于微處理器和DHT90的通信同步,不存在最小SCK頻率,因為有一個完全靜態邏輯的接口。四號引腳(DATA)是讀取數據的三態門引腳。數據線在時鐘線上升沿有效,在時鐘線下降沿之后改變狀態。當傳輸數據時,時鐘線處于高電平時數據線需要堅持穩定,微處理器使數據線處于低電平來解決信號的沖突問題,因而需要上拉一個電阻拉高電平。DHT90是數字溫濕度傳感器系列中插針型的傳感器。實物如圖3-6,傳感器輸出全標定的數字信號,并把信號處理和傳感元件連在一起。為確保產品的穩定性與可靠性采用采用專利的CMOSens技術。傳感器主要由一個14位的A/D轉換器,串行接口電路,一個由能隙材料制作的測試溫度的元件和一個敏感的電容性聚合體測試濕度元件組成。默認14位分辨率輸出溫度值,12位分辨率輸出濕度值,通過狀態寄存器將為12位和8位[29]。圖3-6DHT90實物Fig3-6DHT90因此,DHT90具有體積小,全標定,數字輸出,低功耗,卓越的長期穩定性,4針單排引腳封裝易于安裝,超快響應,可靠的CRC校驗功能,抗干擾能力強和性價比高等優點。DHT90的測濕范圍為0~100%RH,測溫范圍為-40~120℃,溫度響應時間小于30s,濕度響應時間為8s,溫度測量精度為±0.5℃,濕度測量精度為±4.5%RH,安裝2.54mm插針。傳感器DHT90的通信實現主要由以下幾步組成。首先是啟動傳感器,根據DHT90的供電電壓范圍選擇適當的電壓向傳感器通電,上電后傳感器進入休眠狀態,在此狀態的11ms內不可以向傳感器發送任何命令。傳感器啟動后,開始發送命令,先由微處理器向傳感器發送一個“啟動傳輸”的時序,完成傳輸采集數據的初始化工作?!皢觽鬏敗睍r序如圖3-7所示,SCK高電平時DATA是低電平,隨后SCK翻轉為低電平,之后SCK翻轉為高電平時DATA也變為高電平[20]。圖3-7“啟動傳輸”時序Fig3-7Starttimingtransmission初始化時序發送之后,微處理器向DHT90發送測量命令,一個字節的測量命令的高三位是地址位(目前值為000),低五位是命令位(濕度測量為00101,溫度測量為00011,寫狀態寄存器為00110,讀狀態寄存器為00111,軟復位為11110。DHT90通過第八個和第九個SCK時鐘下降沿之后DATA先后為低電平和高電平來確定接收到命令,正確接收。微處理器向DHT90發送了測量命令,并確定DHT90已經正確接收到了命令,之后就是耐心的等待測量數據,由DHT90感知采集數據,然后DHT90通過把DATA變為低電平并進入空閑模式來表示數據測量完畢。測量數據結束前微處理器不可以觸發SCK時鐘。測量完成的數據在讀出之前可以先存儲在DHT90的存儲器中[21]。數據測量完畢之后重新啟動時鐘,開始向微處理器傳輸數據,測量時序如圖3-8所示。如圖由一個字節的CRC校驗和兩個字節的測量數據形式傳輸結果,每個字節間通過拉低DATA來判斷,數據右對齊從MSB開始傳輸,最后一位叫做確認位用來結束通信[22]。圖3-8測量時序Fig3-8Measurementtime微處理器用復位串口時序如圖3-9,避免中斷與DHT90的通信。發送完復位時序后發送其他命令之前要發送一個“啟動傳輸”時序[23]。圖3-9復位串口時序Fig3-9ResetserialporttimingDHT90與CC2430的接口電路如圖3-10所示。圖3-10DHT90與CC2430的接口電路Fig3-10DHT90andCC2430interfacecircuit通過上圖可得,DHT90的一號引腳SCLK與CC2430的P1_0口相連,二號引腳VDD與電源相連,三號引腳GND接地,四號引腳DATA與CC2430的P1_3口相連,其中電源與地間接上0.1uF的去耦電容,提供穩定電壓,數據線與電源間接一個10K的上拉電阻提高驅動能力。空氣質量傳感器QS-01QS-01是一種二氧化錫半導體氣體傳感器,對各種空氣污染源(諸如:VOC)都有很高的靈敏度,并且響應時間很快,傳感器采用塑料外殼,有3個引腳,可在極低的功耗情況下獲得極好的感應特性,這款產品非常適合應用于空氣品質控制系統、排風電扇和空氣清新機。空氣質量傳感器QS-01的外部結構圖如圖3-11所示。其中1號管腳為電源線接5.0V電壓,2號管腳為模擬信號線,3號管腳為接地線。其中2號管腳和3號管腳之間需要接一個適當阻值的負載電阻RL[30]。圖3-11空氣質量傳感器QS-01外部結構圖Fig3-11TheairqualitysensorQS-01externalstructurediagram傳感器QS-01內部由一個傳感器電阻RS和一個加熱器電阻RH組成。傳感器電阻RS在空氣中的阻值范圍為5KΩ~20KΩ,當有有害氣體時RS變小,傳感器電阻RS變化體現在負載電阻RL上的電壓變化,RS=(VC*RL)/VRL-RL。2號管腳信號線與CC2430的內部A/D轉化器接口P0.7口相接,CC2430芯片的24號引腳為其內部的A/D轉換器提供1.8V的工作電壓,因此要保證2號管腳的輸出電壓VRL小于1.8V。經計算設定負載電阻RL阻值為280Ω,加熱器電阻RH為91Ω[31]。圖3-12是空氣質量傳感器QS-01與CC2430的接口電路。圖3-12空氣質量傳感器QS-01與CC2430的接口電路Fig3-12theairqualitysensorQS-01andtheinterfacecircuitofCC24303.4匯聚節點的硬件設計無線傳感器網絡中匯聚節點由處理器模塊,無線收發模塊,電源模塊組成。其中處理器模塊和無線收發模塊與傳感器節點形同都采用HFZ-CC2430EM-22模塊,不同的是電源模塊。匯聚節點一直處于開啟狀態,等待接收傳感器節點的采集數據,所以匯聚節點應該一直供電,本系統選用USB供電模式。系統中匯聚節點將處理后的采集數據通過串口發送給PC機進而進行實時數據監控,因此在匯聚節點上要增設一個RS-232串口電路,這里我們采用西安華凡科技有限公司的SmartRF07DB母板來實現電源模塊和串口電路。3.4.1電源模塊匯聚節點的電源模塊電路如圖3-13所示。圖3-13電源模塊電路原理圖Fig3-13schematicdocumentofthepowermodule由圖可知該模塊可以滿足多種供電方式,如電池供電、實驗室電源供電、PWRjack供電和USB供電。本系統的匯聚節點采用USB供電方式。當該模塊與PC機通過USB總線連接時,可以直接獲取USB總線上的電源,經板子上的LP2985-3.3線性穩壓芯片后輸出3.3V(和1.8V)電壓。3.4.2RS-232串口模塊RS-232接口經常直接于PC機或者其他設備進行通信,包括MAX3232串口電平轉換器,標準DB9female接口。RS-232接口原理圖如圖3-14所示[32]。圖3-14RS-232接口原理圖Fig3-14RS-232interfacediagramMAX3232為雙通道串口電平轉換芯片,其與串口線和CC2430的連接情況如下。MAX3232的RS-232電平收發端R2IN與T20UT引腳和串口線的收發端RS232-RTS與RS232-CTS引腳相連,TTL電平收發端T2IN與R2OUT引腳和CC2430的P0.5與P0.4端口相連。MAX3232的TllN引腳接CC2430的P0.3引腳,RIOUT引腳接CC2430的P0.2引腳,接收CC2430匯聚節點通過ZigBee通信傳送過來的數據。4空氣質量監測系統軟件設計4.1ZigBee協議無線傳感器網絡節點要進行相互的數據交流就要有相應的無線網絡協議(包括MAC層、路由、網絡層、應用層等),傳統的無線協議很難適應無線傳感器的低花費、低能量、高容錯性等的要求,這種情況下,ZigBee協議應運而生。Zigbee的基礎是IEEE802.15.但IEEE僅處理低級MAC層和物理層協議,因此Zigbee聯盟擴展了IEEE,對其網絡層協議和API進行了標準化。Zigbee是一種新興的短距離、低速率的無線網絡技術。主要用于近距離無線連接。它有自己的協議標準,在數千個微小的傳感器之間相互協調實現通信。這些傳感器只需要很少的能量,以接力的方式通過無線電波將數據從一個傳感器傳到另一個傳感器,所以它們的通信效率非常高。ZigBee是一個由可多到65000個無線數傳模塊組成的一個無線數傳網絡平臺,十分類似現有的移動通信的CDMA網或GSM網,每一個ZigBee網絡數傳模塊類似移動網絡的一個基站,在整個網絡范圍內,它們之間可以進行相互通信;每個網絡節點間的距離可以從標準的75米,到擴展后的幾百米,甚至幾公里;另外整個ZigBee網絡還可以與現有的其它的各種網絡連接。通常,符合如下條件之一的應用,就可以考慮采用ZigBee技術做無線傳輸:需要數據采集或監控的網點多;要求傳輸的數據量不大,而要求設備成本低;要求數據傳輸可靠性高,安全性高;設備體積很小,不便放置較大的充電電池或者電源模塊;電池供電;地形復雜,監測點多,需要較大的網絡覆蓋;現有移動網絡的覆蓋盲區;使用現存移動網絡進行低數據量傳輸的遙測遙控系統;使用GPS效果差,或成本太高的局部區域移動目標的定位應用。值得注意的是,在已經發布的ZigBeeV1.0中并沒有規定具體的路由協議,具體協議由協議棧實現如圖4-1。圖4-1zigbee協議棧Fig4-1theZigBeeprotocolstackZigBee協議的基本要求包括:一個8位處理器,完整協議軟件需要32K字節的ROM,而最小的協議軟件僅需要4K字節的ROM。ZigBee協議易于實現、簡單、緊湊,雖然該協議模型是在標準開放式系統互連(OSI)模型之上建立的,但只定義涉及到ZigBee的層。ZigBee協議總共四層分別為:應用層(APL)、網絡層(NWK)、介質接入控制子層(MAC)和物理層(PHY)。應用層由制造商制訂的應用對象、ZigBee設備對象(ZDO)和應用支持子層(APS)組成,該層的功能是為網絡層提供服務接口、定義用戶對象和提供必要函數。網絡層的功能是定義網絡拓撲結構、傳送數據、路由查找、拋棄或者接受其他節點、實現節點離開或者加入網絡。MAC層的功能是支持PAN連接和分離、為兩個對等MAC實體提供可靠鏈路、訪問無線信道并產生同步信號和網絡信號。物理層的功能是定義了MAC層與物理層的接口,定義了物理無線信道的信道頻率、信道接入方式和信道能量監測。每層為上一層提供服務:管理實體提供其他全部所有服務,數據實體只提供數據傳輸服務。通過服務接入點(SAP)每一層為上一層提供服務,相應的功能是通過SPA提供的原語實現的。4.2IAR開發環境介紹本系統設計選擇了IAREmbeddedWorkbench作為軟件開發平臺,其界面友好,調試功能強大得到了廣泛應用。IAREmbeddedWorkbench為開發不同的目標處理器的項目提供了強有力的集成開發工具。該集成開發環境中IAR的C/C++編輯器,匯編工具,鏈接器,庫管理器,文件編輯器,工程管理器和C-SPY調試器。通過其內置的針對不同芯片的代碼優化器,IAREmbeddedWorkbench可以為8051系列芯片生成非常高效和可靠的FLASH/PROMable代碼。不僅有這些過硬的技術,IARSystems還能提供專業的全球技術支持[32]。IAREW適用于開發基于8位、16位以及32位微處理器的嵌入式系統,其集成開發環境具有統一界面,為用戶提供了一個易學和具有最大代碼繼承能力的開發平臺,以及對各種特殊目標的支持。IARSystems的C/C++編譯器可以生成高效可靠的可執行代碼,并且應用程序規模越大,效果越明顯;與其他的工具開發商相比,系統提示使用全局和針對具體芯片的優化技術;連接器提供的全局類型檢測和范圍檢測對于生成目標代碼的質量是至關重要的。IAREmbeddedworkbench生成的可執行代碼可以運行于更小尺寸、更低成本的微處理之上,從而降低了產品的開發成本。IAREmbeddedworkbench集成的編譯器的主要產品特征有:(1)高效的PROMable代碼。(2)完全標準C兼容。(3)內建對芯片的程序速度和大小優化器。(4)目標特性擴充。(5)版本控制和擴展工具支持良好。(6)便捷的中斷處理和模擬。(7)瓶頸性能分析。(8)高效浮點支持。(9)內存模式選擇。用IAREW進行開發的典型步驟如下:第一步:配置開發環境,選擇芯片類型、程序堆棧大小、仿真器類型等;第二步:編輯并編譯源文件;第三步:連接目標文件,包含調試選項;第四步:調試程序,若發現錯誤,返回第二步,修改文件后繼續進行;第五步:調試通過后,去掉調試選項,重新連接;第六步:生成程序代碼,下載到Soc片上系統中。4.3傳感器節點應用程序設計本系統中的無線傳感器節點的工作流程是先進行初始化工作,包括初始化操作系統、應用幀層協議、MAC層協議、非易失變量、FLASH存儲、各個硬件模塊、堆棧、系統時鐘等十余項,形成芯片MAC地址,監測芯片電壓。初始化完成后,傳感器節點發出信號請求加入網絡,這里采用父節點直接方式加入網絡,具體在前面做過介紹,如果傳感器節點入網成功,傳感器節點開始對監測區域內的對象進行數據采集,數據采集結束后向匯聚節點即協調器發送采集數據,發送成功之后返回到信息采集階段,繼續采集數據,周而復始不斷采集數據發送數據[29]。以下是程序設計的主要實現過程,以溫度作為監控采集的數據。1.主程序設計終端節點的主要功能:加入到現在的網絡中去,能夠讀取采集數據信息,將其發送至中心節點,能夠接收來自中心節點傳來的數據和命令。終端節點流程圖如圖4.5所示。終端節點首先進行初始化,包括處理器、開發板、協議棧、中斷、串口、指示燈以及其他一些外設。其次發送連接網絡信號,試圖加入網絡,如果加入網絡失敗將繼續嘗試若干次。成功加入網絡之后,進行數據采集并發送,如果發送失敗繼續嘗試,直到發送成功為止。2.初始化程序在CC2430上電復位后,首先進行初始化工作,包括協議棧初始化、串口初始化、定時器初始化、硬件初始化、變量初始化、AD初始化等。圖4-2終端傳感器節點流程圖Fig4-2FrameformatofterminalnodevoidSAPI_Init(bytetask_id);//任務初始化函數voidHalAdcInit(void);//AD初始化HAL_BOARD_INIT();//硬件初始化zmain_ram_init();//協議棧初始化InitBoard(OB_COLD);//I/O串口初始化3.無線數據的收發無線數據的發送:voidzb_SendDataRequest(uint16destination,uint16commandId,uint8len,uint8*pData,uint8handle,uint8txOptions,uint8radius);//發送函數afStatus_tAF_DataRequest(afAddrType_t*dstAddr,endPointDesc_t*srcEP,uint16cID,uint16len,uint8*buf,uint8*transID,uint8options,uint8radius);//發送數據部分函數在該程序中,首先進行初始化,關閉接收機,并定義發送數據包字節數,在不超過最大字節數的前提下,將采集到的溫度傳至幀格式的數據載荷中存儲,之后進行發送。無線數據的接收:voidzb_ReceiveDataIndication(uint16source,uint16command,uint16len,uint8*pData);//接收函數在該程序中,首先進行初始化,打開接收機,當上一個數據包已經成功讀取完畢,之后進行接收。4.數據采集程序uint8myApp_ReadTemperature(void);//溫度采集在該程序中,首先對溫度傳感器ADC進行初始化,然后進行溫度采集并取平均值。4.4匯聚節點應用程序設計本系統中匯聚節點即協調器的工作流程情況為先是進行初始化,具體情況與傳感器節點類似。然后組建網絡,組建網絡過程在上文已經做過詳細的介紹,組網成功之后匯聚節點等待傳感器節點的采集數據,當收到傳感器節點的采集數據時,匯聚節點通過ZigBee無線通信技術接收數據,對采集數據進行一定處理后通過串口發送給PC機然后向傳感器節點發送應答信息,發送完畢返回到之前的等待信息狀態,依次循環下去[33]。1.主程序設計協調器的主要功能:組建網絡,接收數據,處理數據,串口發送數據至PC機并進行顯示。程序流程圖[34]如圖4-3所示。初始化包括處理器、開發板、協議棧、中斷、串口、指示燈以及其他一些外設。協調器節點首先進行初始化,然后初始化一個網絡,網絡的具體形成見上一小節,如果網絡初始化成功,可以在液晶屏上看到網絡初始化的一些信息。如協調器節點的物理地址、已建立網絡的網絡ID號和頻道號等。之后等待來自終端的采集數據信息,將其通過串口發送至PC機進行顯示,同時,其所有信息都可以在液晶屏上進行顯示。初始化函數和無線數據的收發與終端節點類似,這里就不再重述。僅在接收部分加入了與計算機串口通信程序,這一部分將在下一章進行簡單介紹。圖4-3匯聚節點流程圖Fig4-3sinkframeformat2.串口通信及PC顯示程序voiddebug_str((uint8*)buf);//將采集到的溫度值發送至串口首先進行串口初始化,將采集到的溫度信息通過串口發送字符串函數傳至計算機,并在每次傳完溫度后將采集到的溫度顯示在串口調試助手界面上。3.液晶顯示程序voidHalLcdWriteString(char*str,uint8option);//在LCD上顯示行voidHalLcdWriteScreen(char*line1,char*line2);//在LCD上顯示所有的行通過液晶顯示程序將一些初始化信息及采集到的數據信息顯示到開發母版上的LCD上面,能夠實時對程序進行跟蹤,為程序設計的完成有很大的幫助。5系統測試與結果分析5.1測試方案本測試方案利用一個網絡協調器、一個終端節點虛擬一個實驗平臺,首先在平臺上進行硬件測試,然后利用數字溫度傳感器和ZigBee芯片搭建溫度采集系統,在實驗平臺上進行數據傳輸和顯示測試,在PC機上運行的IAR開發環境可以實時顯示采集的數據[36],從中可以看出,所設計的節點能達到預期的設計目的,完成對空氣質量數據采集的整體要求。5.1.1硬件測試硬件測試主要側重于檢查線路板有無斷路或短路的地方,使用的芯片及元器件有無問題。然后對各個主要部分分別進行調試。系統中的硬件調試和軟件調試是不能分開的,許多硬件錯誤是在軟件調試過程中被發現和糾正。但通常是先排除明顯的硬件故障之后,再和軟件結合起來調試。硬件調試的大概步驟如下[35]:1)在系統加電之前,先用萬用表等工具,測試一下電源和地是否短路,然后根據硬件接線圖仔細檢查線路的正確性,元器件封裝的正確性,元件安裝是否符合要求。2)在系統加電后,檢查電源芯片輸出的電壓是否達到標準值,然后逐個檢查各個插件上引腳的電平是否正常。經過這兩步完成硬件的調試工作。5.1.2溫度采集及串口顯示測試選取實驗平臺中的一個終端節點來進行溫度采集及串口顯示測試。終端節點上附加數字溫度傳感器DHT90,并將終端節點通過串口線與PC相連,編寫不用組網通信的簡單程序測試溫度采集與串口顯示功能。5.1.3數據通信測試采用2塊ZigBee模塊來組建個簡單的網絡,其中一個作為匯聚節點,另一個作為ZigBee終端節點;數據采集終端我們采用的是美國DALLAS公司生產的DHT90可組網數字溫度傳感器,數據采集終端直接連接到ZigBee開發母版,同時ZigBee協調器節點與PC機之間用串口線相連。ZigBee終端節點將采集到的數據信息通過無線的方式將數據傳送到ZigBee協調器節點,ZigBee協調器節點通過RS232串口傳送給PC機參考文獻[1]朱天樂.室內空氣污染控制[M].北京:化學工業出版社,2003.[2]潘峰.室內空氣污染不容忽視[J].科學時報,1999(3)23.[3]周中平,趙壽堂,朱立.室內污染檢測與控制[M].北京:化學工業出版社,2003[4]參見《民用建筑工程室內環境污染控制規范》1.0.3節,中華人民共和國國家標準GB50325—2001.[5]檀建國.居室裝修污染對人體健康的危害與防治[J].邯鄲醫學高等??茖W報,2005,18.[6]孫利民,李建中,陳渝,朱紅松.無線傳感器網絡[M].北京:清華大學出版社,2005.5.[7]劉堅.無線環境監測網絡網關節點和數據終端的設計[D].上海交通大學,2009年.[8]鐘輝,錢志鴻,劉影,劉丹,王雪.無線傳感器網絡中節能吉林大學學報(工學版),2011年3月.[9]陳玉蘭.基于CC2420的無線傳感器網絡的硬件節點設計[D].東南大學,2006年.[10]楊寧,田輝,張平,李立宏.無線傳感器網絡拓撲研究[J].無線電工程,2006年,3(2):11~13.[11]雷震洲,面向低速率應用的全球標準zigbee.現代電信科技.2004年12月.[12]龍承志.馬玉秋.沈樹群.基于低速率的短距離無線通信網絡新技術—ZigBee.數據通信.[13]王權平,王莉.Zigbee技術及其應用.現代電信科技.2004年9月.50-65.[14]原弈,蘇紅根.基于zigbee技術的無線網絡應用研究.計算機應用軟件.2004年7月.06-34.[15]彭天平,廖曉紅.基于zigbee的WPAN的構建方案.電信工程技術與標準.2003年5月.08-210.[16]崔文華.ZigBee協議棧的研究與實現[D].華東師范大學,2007.[17]耿瑞芬.ZigBee無線傳感器網絡的研究與應用[D].山東大學.2007.[18]LinKe,Huangtinglei,Lilifang.DesignofTemperatureandHumidityMonitoringSystemBasedonZigbeeTechnology[J].IEEE,2009.[19]Lee,Jin-Shyan.DesignandimplementationofZigBee/IEEE802.15.4nodesforwirelesssensornetworks[C].MeasurementandControl,August,2006,39(7):204-208.[20]BoChen,MingguangWu,ShuaiYao,NiBinbin.ZigBeeTechnologyandItsAppliationonWirelessMeter-readingSystem[C].IndustrialInformatics.2006IEEEInternationalConferenceonAug,2006Page(s):1257-1260.[21]閆沫.ZigBee的協議棧的分析與設計[D].廈門大學,2007.[22]張瑛瑛,朱雙東.基于ZigBee的數據采集系統[J].寧波大學學報(理工版),2009年9月,第22卷第3期.[23]金德新,郭宇.應用于無線數據采集網絡的ZigBee技術[J].鞍山師范學院學報,2009-08,11(4):54-57.[24]陸克中,黃劉生,萬穎渝,徐宏力.無線傳感器網絡中傳感器節點的布置[J].小型微型計算機系統,2006年11月,27(11):2003~2006.[25]李莉,李海霞,劉卉.基于無線傳感器網絡的溫室環境監測系統[J].農業機械學報,2009年9月,第40卷增刊.[26]武風波,強云霄.基于ZigBee技術的遠程無線溫濕度測控系統的設計[J].西北大學學報(自然科學版),2008年10月,第38卷第5期.[27]黃海.ZigBee技術在無線定位領域的應用[J].全國計算機網絡與通信學術會議論文集,2009.[28]成銳,李靜,雷鳴,雷志勇.基于ZigBee的無線傳感器網絡設計方案[J].電子元器件應用,2007,(12).[29]屈明佑,雷航,郭文生.基于ZigBee的現場數據采集系統設計與實現[J].電訊技術,2008,(04).[30]梁振亞,鄧壯,陳明.基于ZigBee的信息采集系統設計研究[J].黑龍江科技信息,2007,(23)[31]穆乃剛.ZigBee技術簡介[J].電信技術,2006.[32]宋迪,程志華,牛斗,姚翔.基于SHT11的WSN在礦井測控系統中的應用[J].傳感器世界,2008年6月:45~49.[33]張愷,劉志勤.基于WSN的汽車尾氣監測系統匯聚節點硬件設計[J].計算機工程與設計,2010年,32(7):1469~1472.[34]孫德輝,龔關飛,楊揚.基于CC2430的無線傳感器網絡系統設計[J].現代電子技術,2010年,第13期總第324期:66~72.[35]耿軍濤,周小佳,張冰潔.基于無線傳感器網絡的大氣環境監測系統設計[J].西華大學學報自然科學版,2007年7月,26(4):44~46.[36]于金濤,韓軻,姜海濤,李俊玲,丁明理,李云.基于CC2430的無線傳感器網絡系統節點設計[J].哈爾濱商業大學學報,2010年4月,26(2):192~195.附錄C部分程序/*******************************************************************函數功能:發送函數*入口參數:幀格式參數*返回值:無******************************************************************/voidzb_SendDataRequest(uint16destination,uint16commandId,uint8len,uint8*pData,uint8handle,uint8txOptions,uint8radius){afStatus_tstatus;afAddrType_tdstAddr;txOptions|=AF_DISCV_ROUTE;//Setthedestinationaddressif(destination==ZB_BINDING_ADDR){//BindingdstAddr.addrMode=afAddrNotPresent;}else{//UseshortaddressdstAddr.addr.shortAddr=destination;dstAddr.addrMode=afAddr16Bit;if(ADDR_NOT_BCAST!=NLME_IsAddressBroadcast(destination)){txOptions&=~AF_ACK_REQUEST;}}//SettheendpointdstAddr.endPoint=sapi_epDesc.simpleDesc->EndPoint;//Sendthemessagestatus=AF_DataRequest(&dstAddr,&sapi_epDesc,commandId,len,pData,&handle,txOptions,radius);if(status!=afStatus_SUCCESS){SAPI_SendCback(SAPICB_DATA_CNF,status,handle);}}/*******************************************************************函數功能:接收函數*入口參數:幀格式參數*返回值:無******************************************************************/CONSTuint8strDevice[]="Device:0x";CONSTuint8strTemp[]="Temp:";CONSTuint8strBattery[]="Battery:";voidzb_ReceiveDataIndication(uint16source,uint16command,uint16len,uint8*pData){uint8buf[32];uint8*pBuf;uint8tmpLen;uint8sensorReading;if(command==SENSOR_REPORT_CMD_ID){sensorReading=pData[1];//ReceivedreportfromasensortmpLen=(uint8)osal_strlen((char*)strDevice);//Iftoolavailable,writetoserialportpBuf=osal_memcpy(buf,strDevice,tmpLen);_ltoa(source,pBuf,16);pBuf+=4;*pBuf++='';if(pData[0]==BATTERY_REPORT){tmpLen=(uint8)osal_strlen((char*)strBattery);pBuf=osal_memcpy(pBuf,strBattery,tmpLen);*pBuf++=(sensorReading/10)+'0';//conventmsbtoascii*pBuf++='.';//decimalpoint(batteryreadingisinunitsof0.1V*pBuf++=(sensorReading%10)+'0';//convertlsbtoascii*pBuf++='';*pBuf++='V';}else{tmpLen=(uint8)osal_strlen((char*)strTemp);pBuf=osal_memcpy(pBuf,strTemp,tmpLen);*pBuf++=(sensorReading/10)+'0';//conventmsbtoascii*pBuf++=(sensorReading%10)+'0';//convertlsbtoascii*pBuf++='';*pBuf++='C';}*pBuf++='\r';*pBuf++='\n';*pBuf='\0';#ifdefined(MT_TASK)debug_str((uint8*)buf);#endif//canalsowritedirectlytouart}}/*******************************************************************函數功能:溫度測量*入口參數:無*返回值:溫度返回給載荷******************************************************************/uint8myApp_ReadTemperature(void){#ifdefinedHAL_MCU_CC2430uint16value;/*ClearADCinterruptflag*/ADCIF=0;ADCCON3=(HAL_ADC_REF_125V|HAL_ADC_DEC_512|HAL_ADC_CHN_TEMP);/*Waitfortheconversiontofinish*/while(!ADCIF);/*Gettheresult*/value=ADCL;value|=((uint16)ADCH)<<8;/**valuerangesfrom0to0x8000indicating0Vand1.25V*VOLTAGE_AT_TEMP_ZERO=0.743V=19477*TEMP_COEFFICIENT=0.0024V/C=62.9/C*Thesepar

溫馨提示

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

評論

0/150

提交評論