版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
目錄
序言..............................................................................2
摘要..............................................................................3
一需求分析.......................................................................4
二系統(tǒng)設(shè)計.......................................................................5
三實(shí)現(xiàn)原理.......................................................................6
3.Izigbce協(xié)議簡介................................................................6
3.2ZigBee技術(shù)的應(yīng)用領(lǐng)域.........................................................7
3.3zigbee協(xié)議棧構(gòu)造.............................................................8
四硬件設(shè)計......................................................................12
4.1傳感器節(jié)點(diǎn)模塊化設(shè)計.........................................................12
4.2CC2530芯片概述..............................................................13
4.2.1CC2530芯片基本簡介...................................................13
芯片引腳簡介.................................................................14
4.3溫度傳感器調(diào)理電路設(shè)計......................................................15
4.4網(wǎng)絡(luò)協(xié)調(diào)器外圍電路設(shè)計......................................................16
五軟件設(shè)計......................................................................18
5.1IAR開發(fā)環(huán)境..................................................................18
5.2協(xié)調(diào)器節(jié)點(diǎn)程序...............................................................19
網(wǎng)絡(luò)組建.........................................................................20
節(jié)點(diǎn)之間的數(shù)據(jù)傳播..............................................................25
5.3嵌入式網(wǎng)關(guān)程序...............................................................26
5.4傳感器節(jié)點(diǎn)程序..............................................................28
總結(jié).............................................................................29
參照文獻(xiàn).........................................................................30
道謝.............................................................................31
序言
智能家居通過物聯(lián)網(wǎng)技術(shù)將家中的多種設(shè)備(如音視頻設(shè)備、照明系統(tǒng)、窗
簾控制、空調(diào)控制、安防系統(tǒng)、數(shù)字影院系統(tǒng)、影音服務(wù)器、影柜系統(tǒng)、網(wǎng)絡(luò)家
電等)連接到一起,提供家電控制、照明控制、遠(yuǎn)程控制、室內(nèi)外遙控、防
盜報警、環(huán)境監(jiān)測、暖通控制、紅外轉(zhuǎn)發(fā)以及可編程定期控制等多種功能和手段。
在諸多應(yīng)用場所,溫度是一種很重要的一種參數(shù)。溫度H勺自動監(jiān)測己經(jīng)成為各行
業(yè)進(jìn)行安全生產(chǎn)和減少損失的重要措施之一。老式的溫度測量方式測量周期長,
施工復(fù)雜,不便于管理,并且在有些特定場所如封閉,高壓等環(huán)境下主線無法測
量。不過往往這些場所輕易引起很大的事故。因而溫度口勺無線傳播顯的越來越重
要。
摘要
伴隨社會經(jīng)濟(jì)的發(fā)展,人民生活水平向提高,人們對生活的品質(zhì)提出了更高
的規(guī)定。在設(shè)計中,為了實(shí)現(xiàn)智能家居系統(tǒng)的I遠(yuǎn)程管理和無線傳播的功能,運(yùn)用
Zigbee無線網(wǎng)絡(luò)技術(shù),以CC2530芯片和有關(guān)日勺某些外圍器件組建成整個系統(tǒng)的
家庭網(wǎng)關(guān)控制平臺,而家居內(nèi)部控制網(wǎng)絡(luò)則運(yùn)用Zigbee無線網(wǎng)絡(luò)技術(shù)來實(shí)現(xiàn)。
本設(shè)計重要從無線傳感方向進(jìn)行改善,重要設(shè)計一種基于CC2530和數(shù)字溫濕度
傳感器H勺溫濕度采集系統(tǒng)。該系統(tǒng)采用無線通信技術(shù)結(jié)合傳感器,通過運(yùn)用協(xié)議
架構(gòu)組建無線傳感網(wǎng)絡(luò),實(shí)現(xiàn)主從節(jié)點(diǎn)日勺數(shù)據(jù)采集和傳播,以及一點(diǎn)對多點(diǎn),兩點(diǎn)
之間的通信。并詳細(xì)論述了基于Zigbee協(xié)議棧的中心節(jié)點(diǎn)和終端節(jié)點(diǎn)口勺協(xié)議傳
播,重要是從協(xié)議棧網(wǎng)絡(luò)層里AODV路由協(xié)議著于,論述在網(wǎng)絡(luò)層怎樣通過AODV
路由協(xié)議進(jìn)行節(jié)點(diǎn)間的連接以及數(shù)據(jù)的收發(fā)。
關(guān)鍵字:智能家居;溫濕度數(shù)據(jù)采集;CC2530;Zigbee協(xié)議棧;
二系統(tǒng)設(shè)計
三實(shí)現(xiàn)原理
3.Izigbee協(xié)議簡介
ZigBec協(xié)議原則采用分層構(gòu)造,每一層為上層提供一系列特殊的服務(wù):數(shù)
據(jù)實(shí)體提供數(shù)據(jù)傳播服務(wù);管理實(shí)體則提供所有其他的服務(wù)。所有的服務(wù)實(shí)體都
通過服務(wù)接人點(diǎn)SAP為上層提供接口,每個SAP都支持一定數(shù)量的服務(wù)原語來實(shí)
現(xiàn)所需日勺功能。ZigBee原則日勺分層架構(gòu)是在OSI七層模型日勺基礎(chǔ)上根據(jù)市場和
應(yīng)用時實(shí)際需要定義日勺。其中IEEE802.15.4-2023原則定義了底層協(xié)議:物
理層(physicallayerfPHY)和媒體訪問控制層(mediumaccesscontrolsub—
layer,MAC)<>ZigBee聯(lián)盟在此基礎(chǔ)上定義了網(wǎng)絡(luò)層(networklayer,NWK),應(yīng)
用層(applicationlayer,APL)架構(gòu)。在應(yīng)用層內(nèi)提供了應(yīng)用支持子層
(applicationsupportsub一layer,APS)和ZigBee設(shè)備對象(ZigBeedevice
object,ZDO)。應(yīng)用框架中則加入了顧客自定義內(nèi)應(yīng)用對象。ZigBee的網(wǎng)絡(luò)層
采用基于AdHocH勺路由協(xié)議,除了具有通用的網(wǎng)絡(luò)層功能外,還應(yīng)當(dāng)與底層的
IEEE802.15.4原則同樣功耗小,同步要實(shí)現(xiàn)網(wǎng)絡(luò)的自組織和自維護(hù),以最大
程度以便消費(fèi)者使用,減少網(wǎng)絡(luò)的維護(hù)成本。應(yīng)用支持子層把不一樣的應(yīng)用映射
到ZigBee網(wǎng)絡(luò)上,重要包括安全屬性設(shè)置.、業(yè)務(wù)發(fā)現(xiàn)、設(shè)備發(fā)現(xiàn)和多種業(yè)務(wù)數(shù)
據(jù)流的匯聚等功能。ZigBee無線測溫系統(tǒng)的構(gòu)成及原理基于ZigBee技術(shù)日勺無
線測溫系統(tǒng)重要由基于ZigBee技術(shù)的底層無線傳感器網(wǎng)絡(luò)、遠(yuǎn)程數(shù)據(jù)傳播網(wǎng)絡(luò)
以及功能完善的上位監(jiān)控系統(tǒng)3部分構(gòu)成,,該系統(tǒng)是由大量H勺傳感器點(diǎn)、匯節(jié)點(diǎn)
以及遠(yuǎn)程傳播模塊構(gòu)成日勺分布式系統(tǒng)?;诖乜谏追謱訕?gòu)造具有天然日勺分布式處理
能力,簇頭就是分布式處理中心,即無線傳感器網(wǎng)絡(luò)的一種匯節(jié)點(diǎn)。每個簇組員
(傳感器節(jié)點(diǎn))都把數(shù)據(jù)傳給簇頭,數(shù)據(jù)融合后直接傳給遠(yuǎn)程傳播網(wǎng)絡(luò),中央控制
中心通過遠(yuǎn)程傳播網(wǎng)絡(luò)與多種匯節(jié)點(diǎn)連接,匯節(jié)點(diǎn)和傳感器節(jié)點(diǎn)之間通過
ZigBee技術(shù)實(shí)現(xiàn)無線的信息互換。帶有射頻收發(fā)器的無線傳感器節(jié)點(diǎn)負(fù)責(zé)對數(shù)
據(jù)的感知和處理并傳送給匯節(jié)點(diǎn);通過遠(yuǎn)程傳播網(wǎng)絡(luò)獲取采集到的有關(guān)信息,實(shí)
現(xiàn)對現(xiàn)場的有效控制和管理.。
3.2ZigBee技術(shù)的應(yīng)用領(lǐng)域
ZigBee技術(shù)的目的就是針對工業(yè)、家庭自動化、遙測遙控、汽車自動化、
農(nóng)業(yè)自動化和醫(yī)療護(hù)理等,例如燈光自動化控制、傳感器H勺無線數(shù)據(jù)采集和監(jiān)控、
油田、電力、礦山和物流管理等應(yīng)用領(lǐng)域。此外它還可以對局部區(qū)域內(nèi)移動目的
例如都市中口勺車輛進(jìn)行定位。一般,符合如下條件之一的應(yīng)用,就可以考慮采用
ZigBee技術(shù)做無線傳潘:數(shù)據(jù)采集或監(jiān)控日勺網(wǎng)點(diǎn)多;傳播的數(shù)據(jù)量不大,但要
設(shè)備成本低;規(guī)定數(shù)據(jù)傳播可性高,安全性高;設(shè)備體積很小,不便放置較大的
充電電池或者電源模塊;電池供電;地形復(fù)雜,監(jiān)測點(diǎn)多,需要較大的I網(wǎng)絡(luò)覆蓋;
既有移動網(wǎng)絡(luò)的覆蓋盲區(qū);使用現(xiàn)存移動網(wǎng)絡(luò)進(jìn)行低數(shù)據(jù)量傳播的遙測遙控系統(tǒng);
使用GPS效果差,或成本太高的局部區(qū)域移動目日勺的定位應(yīng)用。
3.3zigbee協(xié)議棧構(gòu)造
ZigBee協(xié)議棧定義了四層,分別是物理層、媒體訪問控制層、網(wǎng)絡(luò)層、應(yīng)
用層。物理層和媒體訪問控制層由IEEE802.15.4-2023定義,上層日勺網(wǎng)絡(luò)層和應(yīng)
用層由Zigbee聯(lián)盟定義。應(yīng)用層分別包括ZDO(Zigbee設(shè)備對象),APS(應(yīng)用
支持子層)和AF(應(yīng)用框架)構(gòu)成。Zigbee協(xié)議棧每一層負(fù)責(zé)完畢所規(guī)定日勺任
務(wù),并且向上層提供服務(wù),各層之間日勺接口通過所定義日勺邏輯鏈路來提供服務(wù)。
ZigBee協(xié)議棧構(gòu)造如錯誤!未找到引用源。所示。
圖2ZigBee協(xié)議棧構(gòu)造圖
1.物理層
物理層由半雙工時無線收發(fā)器及其接口構(gòu)成,重要作用是激活和關(guān)閉射頻收
發(fā)器;檢測信道的能量;顯示收到數(shù)據(jù)包的鏈路質(zhì)量;空閑信道評估;選擇信道
頻率;數(shù)據(jù)H勺接受和發(fā)送。
2.媒體訪問控制層
媒體訪問控制(MAC)層建立了一條節(jié)點(diǎn)和與其相鄰的節(jié)點(diǎn)之間可靠口勺數(shù)據(jù)
傳播鏈路,共享傳播媒體,提高通信效率。在協(xié)調(diào)器的MAC層,可以產(chǎn)生網(wǎng)絡(luò)信
標(biāo),同步網(wǎng)絡(luò)信標(biāo);支持ZigBcc設(shè)備的關(guān)聯(lián)和取消關(guān)聯(lián);支持設(shè)備加密;在信
道訪問方面,采用CSMA/CA信道退避算法,減少了碰撞概率;保證時隙分派(GTS);
支持信標(biāo)使能和非信標(biāo)使能兩種數(shù)據(jù)傳播模式,為兩個對等日勺MAC實(shí)體提供可靠
連接。
3.網(wǎng)絡(luò)層
網(wǎng)絡(luò)層負(fù)責(zé)拓?fù)錁?gòu)造的建立和維護(hù)網(wǎng)絡(luò)連接,重要功能包括設(shè)備連接和斷開
網(wǎng)絡(luò)時所采用的機(jī)制,以及在幀信息傳播過程中所采用的安全性機(jī)制。此外,還
包括設(shè)備的路由發(fā)現(xiàn)和路由維護(hù)和轉(zhuǎn)交。并且,網(wǎng)絡(luò)層完畢對一跳(one—hop)
鄰居設(shè)備的發(fā)現(xiàn)和有關(guān)結(jié)點(diǎn)信息內(nèi)存儲。一種ZigBee協(xié)調(diào)器創(chuàng)立一種新網(wǎng)絡(luò),
為新加入的設(shè)備分派短地址等。并且,網(wǎng)絡(luò)層還提供某些必要的函數(shù),保證
ZigBoc日勺MAC層正常二作,并且為應(yīng)用層提供合適的服務(wù)接口。
網(wǎng)絡(luò)層規(guī)定可以很好地完畢在IEEE802.15.4原則中MAC子層所定義的功
能,同步,又要為應(yīng)用層提供合適的服務(wù)接口。為了與應(yīng)用層進(jìn)行更好日勺通信,
網(wǎng)絡(luò)層中定義了兩種服務(wù)實(shí)體來實(shí)現(xiàn)必要的功能。這兩個服務(wù)實(shí)體是數(shù)據(jù)服務(wù)實(shí)
體(NLDE)和管理服務(wù)實(shí)體(NLME)。網(wǎng)絡(luò)層的NLDE通過數(shù)據(jù)服務(wù)實(shí)體服務(wù)訪問點(diǎn)
(NLDE-SAP)來提供數(shù)據(jù)傳播服務(wù),NLME通過管理服務(wù)實(shí)體服務(wù)訪問點(diǎn)(NLME-
SAP)來提供管理服務(wù)。NINE可以運(yùn)用NLDE來激活它日勺管理工作,它還具有對網(wǎng)
絡(luò)層信息數(shù)據(jù)庫(NTB)進(jìn)行維護(hù)的功能。在這個圖中直觀地給出了網(wǎng)絡(luò)層所提供
的實(shí)體和服務(wù)接口等。
NLDE提供內(nèi)數(shù)據(jù)服務(wù)容許在處在同一應(yīng)用網(wǎng)絡(luò)中的兩個或多種設(shè)備之間傳
播應(yīng)用協(xié)議數(shù)據(jù)單元(APM)。NLDE提供的服務(wù)有:產(chǎn)生網(wǎng)絡(luò)協(xié)議數(shù)據(jù)單元(NPDU)
和選擇通信路由。選擇通信路由,在通信中,NLDE要發(fā)送一種NPDU到一種合適
的設(shè)備,這個設(shè)備也許是通信日勺終點(diǎn)也也許只是通信鏈路中日勺一種點(diǎn)。NLME需
提供一種管理服務(wù)以容許一種應(yīng)用來與協(xié)議棧操作進(jìn)行交互。NLME需要提供如
下服務(wù):①配置一種新H勺設(shè)備(configuringanewdevice)。具有充足配置所需
操作棧的能力。配置選項(xiàng)包括:ZigBee協(xié)調(diào)器的開始操作,加入一種既有的網(wǎng)
絡(luò)等。
4.應(yīng)用層
應(yīng)用層包括三部分:應(yīng)用支持子層(APS)、ZigBee設(shè)備對象(ZDO)和應(yīng)用
框架(AF)。應(yīng)用支持子層日勺任務(wù)是提取網(wǎng)絡(luò)層的信息并將信息發(fā)送到運(yùn)行在節(jié)
點(diǎn)上的不一樣應(yīng)用端點(diǎn)。應(yīng)用支持子層維護(hù)了一種綁定表,可以定義、增長或移
除組信息;完畢64位長地址(IEEE地址)與16位短地址(網(wǎng)絡(luò)地址)一對一
映射;實(shí)現(xiàn)傳播數(shù)據(jù)的分割與重組;應(yīng)用支持子層連接網(wǎng)絡(luò)層和應(yīng)用層,是它們
之間的接口。這個接口由兩個服務(wù)實(shí)體提供:APS數(shù)據(jù)實(shí)體(APSDE)和APS管
理實(shí)體(APSME)oAPS數(shù)據(jù)實(shí)體為網(wǎng)絡(luò)中的節(jié)點(diǎn)提供數(shù)據(jù)傳播服務(wù),它會拆分和
重組不小于最大荷載量H勺數(shù)據(jù)包。APS管理實(shí)體提供安全服務(wù),節(jié)點(diǎn)綁定,建立
和移除組地址,負(fù)責(zé)64位IEEE地址與16位網(wǎng)絡(luò)地址日勺地址映射⑷o
ZigBee設(shè)備對象負(fù)責(zé)設(shè)備日勺所有管理工作,包括設(shè)定該設(shè)備在網(wǎng)絡(luò)中的角
色(協(xié)調(diào)器、路由器或終端設(shè)備),發(fā)現(xiàn)網(wǎng)絡(luò)中的設(shè)備,確定這些設(shè)備能提供的
功能,發(fā)起或響應(yīng)綁定祈求,完畢設(shè)備之間建立安全的關(guān)聯(lián)等。顧客在開發(fā)
ZigBee產(chǎn)品時,需要在ZigBee協(xié)議棧的AF上附加應(yīng)用端點(diǎn),調(diào)用ZD0功能以
發(fā)現(xiàn)網(wǎng)絡(luò)上日勺其他設(shè)備和服務(wù),管理綁定、安全和其他網(wǎng)絡(luò)設(shè)置。ZD0是一種特
殊日勺應(yīng)用對象,它駐留在每一種ZigBee節(jié)點(diǎn)上,其端點(diǎn)編號固定為0。
AF應(yīng)用框架是應(yīng)用層與APS層的接口。它負(fù)責(zé)發(fā)送和接受數(shù)據(jù),并為接受
到H勺數(shù)據(jù)尋找對應(yīng)H勺目的端點(diǎn)。
四硬件設(shè)計
4.1傳感器節(jié)點(diǎn)模塊化設(shè)計
傳感器節(jié)點(diǎn)一般由數(shù)據(jù)采集單元、數(shù)據(jù)處理單元,通信單元(即射頻模塊)
和電源單元構(gòu)成,其構(gòu)造如圖5.1所示。
傳感器模塊處理器模塊V
信
PH傳感器號無線射頻模
處理器
調(diào)I質(zhì)
溫度傳感器理
電
路存儲器IART接口網(wǎng)關(guān)節(jié)點(diǎn)
濁度傳感器
▲
電源模塊
圖5.1無線傳感器節(jié)點(diǎn)構(gòu)造圖
由于無線傳感網(wǎng)絡(luò)在通信上消耗較大能量,故處理器選用功耗較小歐J
CC2530為通信器件,沒計無線網(wǎng)絡(luò)節(jié)點(diǎn)。數(shù)據(jù)采集模塊運(yùn)用傳感器監(jiān)測外部環(huán)
境,本作品中負(fù)責(zé)采集水H勺溫度、PH值、濁度筆水質(zhì)信息,通過信號的調(diào)理輸
出,并傳送給處理器進(jìn)行處理。
4.2CC2530芯片概述
4.2.1CC2530芯片基本簡介
ZigBee新一代SOC芯片CC2530是真正日勺片上系統(tǒng)處理方案,支持原則
/ZigBee/ZigBeeRF4CE和能源的應(yīng)用。擁有龐大的快閃記憶體多達(dá)256個字節(jié),
CC2530是理想ZigBee專業(yè)應(yīng)用。支持新RemoTI的ZigBeeRF4CE,這是業(yè)界首
款符合ZigBeeRF4CE兼容的協(xié)議棧,和更大內(nèi)存大小將容許芯片無線下載,支
持系統(tǒng)編程。此外,CC2530結(jié)合了一種完全集成日勺,高性能日勺RF收發(fā)器與一種
8051微處理器,8kBFTjRAM,32/64/128/256KE閃存,以及其他強(qiáng)大口勺支持功
能和外設(shè)。
CC2530芯片具有如下重要性能:
(1)高性能和低功耗時8051微控制器核;
(2)32-KB、64-KB、128-KB或256KB日勺系統(tǒng)內(nèi)可編程閃存;
(3)8-KBRAM,具有在多種供電方式下日勺數(shù)據(jù)保持能力;
(4)集成符合IEEE802.15.4原則的2.4GHzH勺RF無線電收發(fā)機(jī);
(5)極高的接受敏捷度和抗干擾性能;
(6)可編程日勺輸出功率高達(dá)4.5dBm;
(7)只需一種晶振,即可滿足網(wǎng)狀網(wǎng)絡(luò)系統(tǒng)口勺需要;
(8)硬件支持CSMA/CA功能;
(9)較寬的電壓范圍(2.0?3.6V)。
4.2.2CC2530芯片引腳簡介
CC2530芯片如圖5.2所示。它采用6mmX6mm的QFN封裝,共有40個引
腳。所有引腳可以分為1/0端口線引腳、電源線引腳和控制線引腳三類。
aO
,,
wy
68
ss
oo
d-Jxg
n/a
o<c<Ka
j9t0Ts.
?-ed
x一dA
ldsdrdlV
11111111131
4034
GND13938373635333230-RBIAS
GND229AVDD4
GND328AVDD1
GND427AVDD2
GND
PI-55GroundPdd26-RF-N
PI-4625--------RF-P
PI-3--------724—AVDD3
Pl-2--------823-XOSC-Q2
Pl-I922XOSC-QI
DVDD2,o21AVDD5
ll1213141516171819
1I1111111I20
可
一
0gT運(yùn)eo
,,o,-
z££d££w
圖5.2CC2530芯片引腳
1.I/O端口線引腳功能
CC2530有21個可編程歐H/0口引腳,PO、P1口是完全的8位口,P2口只
有5個可使用的位。通過軟件設(shè)定一組SFR寄存器日勺位和字節(jié),可使這些引腳作
為一般日勺I/O口或作為連接ADCs計時器或USART部件的外圍設(shè)備I/O口使用。
2電源引腳功能
AVDD1(28W):為模擬電路連接2.0V?3.6V的電壓。
AVDD2(27腳):為模擬電路連接2.0V?3.6V的電壓。
AVDD3(24腳):為模擬電路連接2.0V?3.6V的電壓。
AVDD4(29腳):為模擬電路連接2.0V?3.6V的電壓。
AVDD5(21腳):為模擬電路連接2.0V~3.6V的電壓。
AVDD6(31腳):為模擬電路連接2.0V?3.6V的電壓。
DC0UPL(40腳):提供1.8VKJ數(shù)字電源去耦電壓,不使用外部電路供應(yīng)。
DVDD1(39腳):提供2.0V?3.6VH勺數(shù)字電源連接電壓。
DVDD2(10腳):提供2.0V?3.6V日勺數(shù)字電源連接電壓。
3.控制線引腳
RB1AS(30腳):為參照電流提供精確日勺偏置電阻。
RESET_N(20腳):復(fù)位引腳,低電平有效。
RF_N(26腳):在RX期間向LNA輸入負(fù)向射頻信號。
RF_P(25腳):在RX期間向LNA輸入正向射頻信號。
XOSC_Q1(22腳):32MHz的晶振引腳1,或外部時鐘輸入引腳。
XOSCQ2(23腳):32MHz的晶振引腳2。
4.3溫度傳感器調(diào)理電路設(shè)計
溫度傳感器采用Dallas企業(yè)推出日勺DS18B20數(shù)字式溫度傳感器,磨耐碰,
體積小,使用以便,封裝形式多樣,合用于空間狹小時應(yīng)用場所。只需單線接口,
電路簡樸不需要AD轉(zhuǎn)換器件和其他外圍電路,縮小了系統(tǒng)日勺體積,提高了系統(tǒng)
的可靠性。DS18B20的封裝有3腳、6腳和8腳三種方式。本次設(shè)計中選用的
是3引腳方式(TO-92封裝),如圖5.6所示。其中DQ為數(shù)字信號輸入/輸出
端,GND為電源地,VCC為外接供電電源輸入端(以寄生供電方式時接地),系
統(tǒng)把DQ端連接到CC530P0.0口,通過對DS18B20口勺初始化,溫度轉(zhuǎn)換和
讀取等指令來測量室內(nèi)質(zhì)溫度。
圖5.6溫度傳感器測量電路
4.4網(wǎng)絡(luò)協(xié)調(diào)器外圍電路設(shè)計
網(wǎng)絡(luò)協(xié)調(diào)器的外圍電路都放在擴(kuò)展板上,重要包括電源、串口等外圍電路,
用于支持ZigBcc模塊工作以及和PC機(jī)的通信。網(wǎng)絡(luò)協(xié)調(diào)器是整個網(wǎng)絡(luò)中功耗
最大的模塊,因此網(wǎng)絡(luò)協(xié)調(diào)器用時電源是通過220V交流電源轉(zhuǎn)換而來,而不是
ZigBee網(wǎng)絡(luò)中的常用的電池。在設(shè)計時為了簡化電路、減少功耗,網(wǎng)絡(luò)協(xié)調(diào)器
上所有芯片都選用工作電壓為3.3V日勺,該模塊只需要3.3V電源供電,如圖
5.7所示。
圖5.7節(jié)點(diǎn)電源處理模塊
?r5ClREGH7-3.3VCC
5
VinVout
4a
zD3
oLED1<1
J■EC3
1l
圖5.8傳感器電源處理模塊
圖5.8中D1.D2的作用是防止輸出電壓不小于輸入電壓導(dǎo)致燒壞7812或者
7805。得到5V電源后再通過一種低壓差線性穩(wěn)壓器(LDO:LowDropoutRegulator)
將5V電源轉(zhuǎn)換為工作電壓3.3V給整個模塊供電,LD0選用TI企業(yè)REG1117-3.3
穩(wěn)壓器,該芯片電路簡樸,質(zhì)量可靠,價格低。
五軟件設(shè)計
5.1IAR開發(fā)環(huán)境
lAREmbeddedWorkbench簡稱為EW,它具有向調(diào)試器和C/C++交叉編譯環(huán)
境,是當(dāng)今最易使用、最完整的嵌入式應(yīng)用開發(fā)工具。針對不一樣的微處理器提
供同樣直觀日勺顧客界面,R前支持35種以上的32位、16位、8位ARM微處理器。
EW日勺構(gòu)成部分為C-SPY調(diào)試器、嵌入式C/C++編譯器、匯編器、庫管理員、
編譯器、項(xiàng)目管理器和連接定位器。使用IAR的編譯器不僅能節(jié)省硬件資源,最
大程度減少產(chǎn)品成本,提高產(chǎn)品競爭力還能最大程度優(yōu)化和緊湊代碼。
IAREmbeddedWorkbench集成編譯環(huán)境重要有如下特性:支持高效浮點(diǎn)運(yùn)
算、完全兼容C原則、高效日勺PROMable代碼、目的J特性擴(kuò)充、內(nèi)建對應(yīng)芯片的
程序速度和大小H勺優(yōu)化器、版本控制和擴(kuò)展工具支持良好、便捷的中斷處理和模
擬、內(nèi)存模式選擇、瓶頸性能分析、工程中相對途徑支持。IAREW8051集成開
發(fā)環(huán)境如圖6.1所示。
圖6.1IAREW8051集成開發(fā)環(huán)境
5.2協(xié)調(diào)器節(jié)點(diǎn)程序
協(xié)調(diào)器口勺重要功能是建立網(wǎng)絡(luò),尚有掃描網(wǎng)絡(luò)信標(biāo)、管理網(wǎng)絡(luò)中節(jié)點(diǎn)的加入
/退出和存儲節(jié)點(diǎn)信息,同步還提供關(guān)聯(lián)節(jié)點(diǎn)之間日勺路由信息。
組建網(wǎng)絡(luò)分為網(wǎng)絡(luò)初始化和節(jié)點(diǎn)加入網(wǎng)絡(luò)兩個過程。ZigBee網(wǎng)絡(luò)日勺建立是
由協(xié)調(diào)器發(fā)起的,要組建網(wǎng)絡(luò)日勺節(jié)點(diǎn)必須滿足兩個基本規(guī)定:一是節(jié)點(diǎn)必須是
FFD節(jié)點(diǎn),具有協(xié)調(diào)器日勺能力;二是節(jié)點(diǎn)還沒有加入到其他網(wǎng)絡(luò)中,網(wǎng)絡(luò)初始化
的1流程如圖6.2所示。
圖6.2協(xié)調(diào)冷組網(wǎng)流程圖
網(wǎng)絡(luò)組建
確定網(wǎng)絡(luò)協(xié)調(diào)器、信道掃描過程、設(shè)置網(wǎng)絡(luò)ID至此網(wǎng)絡(luò)初始化就完畢,有
關(guān)代碼如下
第一步:Z-Stack由main()函數(shù)開始執(zhí)行,main()函數(shù)共做了2件事:
一是系統(tǒng)初始化,此外一件是開始執(zhí)行輪轉(zhuǎn)查詢式操作系統(tǒng)
intmain(void)
osalinitsystem。:〃第二步,操作系統(tǒng)初始化
osal_start_system();〃初始化完系統(tǒng)任務(wù)事件后,正式開始執(zhí)行操作
系統(tǒng)
第二步,進(jìn)入osal_init_systein()函數(shù),執(zhí)行操作系統(tǒng)初始化
uint8osal_init_systcm(void)
(
osal_mem_init();
osal_qHead=NULL;
osalTimerlnit();
osal_pwrmgr_init();
osallnitTasksO;〃第三步,執(zhí)行操作系統(tǒng)任務(wù)初始化函數(shù)
osal_mem_kick();
return(SUCCESS);
)
第三步,進(jìn)入osallnitTasksO函數(shù),執(zhí)行操作系統(tǒng)任務(wù)初始化
voidosalInitTasks(void)//第三步,初始化操作系統(tǒng)任務(wù)
uint8taskID=0;
tasksEvents=(uint16*)osal_mem_alloc(sizeof(uint16)*
tasksCnt);
osal_memset;tasksEvents,0,(sizeof(uintl6)*tasksCnt));
〃任務(wù)優(yōu)先級由高向低依次排列,高優(yōu)先級對.應(yīng)taskID的值反而小
macTasklnit<taskID++);〃不需要顧客考慮
nwk_init(taskID++);〃不需要顧客考慮
Hal_Init(taskID++)"/硬件抽象層初始化,需要我們考慮
#ifdefined(MT_TASK)
MT_TaskInit(taskID++);
#endif
APS_lnit(taskID++);〃不需要顧客考慮
#ifdefined(Z:GBEE_FRAGMENTATION)
APSF_Init(taskID++);
ttendif
ZDApp_Init(taskID++);〃第四步,ZDApp層,初始化,執(zhí)行ZDApp_init
函數(shù)后,假如是協(xié)調(diào)器將建立網(wǎng)絡(luò),假如是終端設(shè)備將加入網(wǎng)絡(luò)。
#ifdefined(ZIGBEE_FREQAGILITY)||defined
(ZIGBEE_PANID_CONFLICT)
ZDNwkMgrlnit(taskID++);
ttendif
SerialApp_Init(taskID);〃應(yīng)用層SerialApp層初始化,需要顧客
考慮在此處設(shè)置了一種按鍵觸發(fā)事件,
〃當(dāng)有按鍵按下的時候,產(chǎn)生一種系統(tǒng)消息
)
第四步,進(jìn)入ZDApp_inil()函數(shù),執(zhí)行ZDApp層初始化
第五步,正式執(zhí)行操作系統(tǒng)
voidosal_start_system(void)〃第五步,正式執(zhí)行操作系統(tǒng)
(
#if!defined(ZBIT)&&!defined(UB:T)
for(;;)〃死循環(huán)
ttendif
(
uint8idx=0;
osalTimeUpdate();
HalProcessPol1;);
do{
if(tasksEvents){
break;//得到待處理日勺最高優(yōu)先級任務(wù)索引號idx
)
}while(-+idx<tasksCnt);
if(idx<tasksCnt)
(
uinti6events;
halTntState_tintState;
HALENTER.CRITICAL一SECTION(intState);//進(jìn)入臨界區(qū)
events=tasksEvcnts;〃提取需要處理『、J任務(wù)中『、J事件
tasksEvcnts=0;//清除本次任務(wù)的事件
HAL_EXIT_CRITICAL_SECTION(intState);〃退出臨界區(qū)
events=(tasksArr)(idx,events);〃通過指針調(diào)用任務(wù)處理
函數(shù),緊接著跳到對應(yīng)日勺函數(shù)去處理,此為第五步
HAL_ENTER_CRmCAL_SECTION(intState);〃進(jìn)入臨界區(qū)
tasksEvents|=events;//Addbackunprocessedevents
tothecurrenttask.//保留未處理日勺事件
HAL_EXIT_CRITICAL_SECTION(intState);〃退出臨界區(qū)
)
#ifdefined(POWERSAVING)
else
osal_pwnngr_powerconserve();
}
ttendif
節(jié)點(diǎn)之間的數(shù)據(jù)傳播
在完畢協(xié)調(diào)器組網(wǎng)以及終端節(jié)點(diǎn)加入網(wǎng)絡(luò)后并進(jìn)行數(shù)據(jù)傳播,將協(xié)調(diào)器通過
RS-232和PC相連,可以通過串口助手或者對應(yīng)的開發(fā)軟件來觀測節(jié)點(diǎn)之間日勺數(shù)
據(jù)傳播。分析和處理數(shù)據(jù),進(jìn)行有關(guān)H勺控制操作,到達(dá)實(shí)時監(jiān)控和智能控制日勺目
電
協(xié)調(diào)器與上位機(jī)采用RS-232串口,傳播速率為115200bps,無校驗(yàn)位,8
個數(shù)據(jù)位,1位停止位,其軟件流程如圖6.3所示。
圖6.3串口工作點(diǎn)流程
5.3嵌入式網(wǎng)關(guān)程序
嵌入式網(wǎng)關(guān)軟件重要由硬件設(shè)備底層驅(qū)動、WECE6.0操作系統(tǒng)與協(xié)議棧歐|
裁剪與移植和網(wǎng)關(guān)應(yīng)用程序三大部分構(gòu)成。通過系統(tǒng)的軟件設(shè)計可以完畢系統(tǒng)控
制及ZigBee網(wǎng)絡(luò)和以太網(wǎng)通信等。硬件設(shè)備底層驅(qū)動是對物理硬件設(shè)備功能的
軟件封裝,提供軟件接口給Wince6.0操作系統(tǒng)內(nèi)核調(diào)用。網(wǎng)關(guān)驅(qū)動重要由以太
網(wǎng)網(wǎng)卡驅(qū)動、串口驅(qū)動、外部存儲器驅(qū)動、LCD驅(qū)動和板載初始化等構(gòu)成,嵌
入式網(wǎng)關(guān)軟件平臺參照模型如圖6.4所示。
應(yīng)用程序
TIZ_Stack協(xié)議WinCE6.0操作系統(tǒng)
網(wǎng)絡(luò)設(shè)備驅(qū)動操作系統(tǒng)移植
嵌入式網(wǎng)關(guān)硬件平臺
圖6.4軟件平臺參照模型
圖6.5嵌入式網(wǎng)關(guān)網(wǎng)絡(luò)協(xié)議轉(zhuǎn)換模型
傳感器節(jié)點(diǎn)將通過簡樸H勺處理之后傳播給協(xié)調(diào)器節(jié)點(diǎn),協(xié)調(diào)器節(jié)點(diǎn)通過串口
將數(shù)據(jù)傳播給網(wǎng)關(guān),網(wǎng)關(guān)將ZigBee網(wǎng)絡(luò)協(xié)議轉(zhuǎn)換為Internet網(wǎng)絡(luò)協(xié)議,如圖6.5
所示,便可以實(shí)現(xiàn)遠(yuǎn)程訪問。山于ZigBcc網(wǎng)絡(luò)與Internet網(wǎng)絡(luò)使用的網(wǎng)絡(luò)地址不
一樣,要想實(shí)現(xiàn)這兩種網(wǎng)絡(luò)之間的轉(zhuǎn)換,首先應(yīng)當(dāng)處理口勺就是兩種網(wǎng)絡(luò)的地址轉(zhuǎn)
換問題,網(wǎng)關(guān)就完畢了兩種地址之間的轉(zhuǎn)換,使得數(shù)據(jù)可以在兩種網(wǎng)絡(luò)之間進(jìn)行
傳播。
ZigRee網(wǎng)絡(luò)中日勺每個節(jié)點(diǎn)均有各自日勺地址信息,其中地址信息內(nèi)容包括端
點(diǎn)ID和節(jié)點(diǎn)ID兩部分。在網(wǎng)關(guān)上建立ZigBee網(wǎng)絡(luò)日勺地址映射,將每個ZigBee
網(wǎng)絡(luò)節(jié)點(diǎn)地址與一種UDP端口建立——映射關(guān)系。同步在網(wǎng)關(guān)上建立Internet
的地址映射,Inlernet地址信息包括IP地址和端口號兩部分,在網(wǎng)關(guān)上將每個
Internet主機(jī)地址與一種端點(diǎn)建立映射。這樣就在網(wǎng)關(guān)中保留了ZigBee節(jié)點(diǎn)和
Internet主機(jī)[1勺所有信息,當(dāng)ZigBee網(wǎng)絡(luò)數(shù)據(jù)報文傳到網(wǎng)關(guān)時,網(wǎng)關(guān)根據(jù)ZigBee
網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送的報文的目的端點(diǎn)ID,來判斷與這個端點(diǎn)ID對應(yīng)的Internet主機(jī)
時IP地址和端口號,以這個地址為目日勺地,將數(shù)據(jù)報文重新封裝成UDP報文并
發(fā)送,數(shù)據(jù)日勺有效部分不變。同理當(dāng)Internet網(wǎng)絡(luò)發(fā)來數(shù)據(jù)時,網(wǎng)關(guān)根據(jù)主機(jī)發(fā)
送日勺目日勺端口找到對應(yīng)端點(diǎn)ID,將Internet數(shù)據(jù)報文重新封裝并發(fā)送出去。最終
完畢數(shù)據(jù)能都在ZigBee網(wǎng)絡(luò)和Internet網(wǎng)絡(luò)中進(jìn)行傳播。嵌入式網(wǎng)關(guān)流程圖
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年湖北交通職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試備考試題及答案詳細(xì)解析
- 2026年保定幼兒師范高等??茖W(xué)校單招職業(yè)技能考試備考題庫含詳細(xì)答案解析
- 2026年南昌影視傳播職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試模擬試題及答案詳細(xì)解析
- 2026年廣東工貿(mào)職業(yè)技術(shù)學(xué)院單招職業(yè)技能考試備考試題含詳細(xì)答案解析
- 2026年武漢理工大學(xué)專業(yè)技術(shù)人員招聘25人參考考試試題及答案解析
- 2026年廣西建設(shè)職業(yè)技術(shù)學(xué)院單招職業(yè)技能考試備考試題含詳細(xì)答案解析
- 2026年上海健康醫(yī)學(xué)院單招綜合素質(zhì)筆試備考試題含詳細(xì)答案解析
- 2026年河南應(yīng)用技術(shù)職業(yè)學(xué)院單招綜合素質(zhì)考試備考題庫含詳細(xì)答案解析
- 2026年湖北交通職業(yè)技術(shù)學(xué)院單招職業(yè)技能考試備考試題含詳細(xì)答案解析
- 2026年江西科技職業(yè)學(xué)院單招綜合素質(zhì)考試模擬試題含詳細(xì)答案解析
- 醫(yī)院醫(yī)療糾紛案例匯報
- 紅外線桑拿毯行業(yè)跨境出海項(xiàng)目商業(yè)計劃書
- 2025安徽職高單招試題及答案
- 《文獻(xiàn)檢索與科技論文寫作入門》課件(共八章)
- 2025至2030鑄鐵產(chǎn)業(yè)行業(yè)市場深度研究及發(fā)展前景投資可行性分析報告
- 機(jī)電設(shè)備安裝工程中電梯系統(tǒng)全生命周期質(zhì)量管控體系
- 碎石樁施工技術(shù)
- 2025年政府采購和招標(biāo)法考試試題及答案
- 2025中考九年級語文《標(biāo)點(diǎn)符號》復(fù)習(xí)練習(xí)題
- 智能化建筑機(jī)器人施工方案和技術(shù)措施
- 征兵體檢外科標(biāo)準(zhǔn)
評論
0/150
提交評論