基于ZigBee的無線傳感網(wǎng)的下位機軟件設(shè)計_第1頁
基于ZigBee的無線傳感網(wǎng)的下位機軟件設(shè)計_第2頁
基于ZigBee的無線傳感網(wǎng)的下位機軟件設(shè)計_第3頁
基于ZigBee的無線傳感網(wǎng)的下位機軟件設(shè)計_第4頁
基于ZigBee的無線傳感網(wǎng)的下位機軟件設(shè)計_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

天津理工大學(xué)本科畢業(yè)設(shè)計(論文)第頁基于ZigBee的無線傳感網(wǎng)的下位機軟件設(shè)計摘要本文分析了智能家居的發(fā)展現(xiàn)狀,基于協(xié)議棧設(shè)計了一個可用于監(jiān)測環(huán)境信息和家用電器開關(guān)控制的智能家居系統(tǒng)。該傳感網(wǎng)無需布線,擴展靈活,功耗低,利用價格低廉的硬件實現(xiàn)了遠程控制,安防報警,環(huán)境監(jiān)測等功能。本傳感網(wǎng)采用的是德州儀器(TI)公司的CC2530解決方案,它采用了TI業(yè)界領(lǐng)先的ZigBee協(xié)議棧,提供完整的ZigBee解決方案,能夠用極低的材料成本來構(gòu)建功能強大的網(wǎng)絡(luò)。軟件設(shè)計所使用的開發(fā)工具是IAREmbeddedWorkbench,所使用的協(xié)議棧是TI公司提供的Zigbee2007協(xié)議棧。在協(xié)議棧的基礎(chǔ)上進行軟件設(shè)計,從而實現(xiàn)應(yīng)用層各種各樣的功能,如溫度采集,紅外感應(yīng),開關(guān)控制等功能。關(guān)鍵詞:智能家居;ZigBee;CC2530;無線傳感網(wǎng)

SoftwareDesignfortheSlaveComputerBasedonZigBeeWirelessSensorNetworkAbstractAccordingtothedevelopmentofsmarthome,wehavedesignedasmarthomesystem,whichbasedonthedesignofprotocolstack,canbeusedformonitoringenvironmentalinformationandcontrollinghouseholdappliancesswitch.Withoutwiring,thissensornetworkisnotonlyexpandedveryflexibly,butalsohaslowpowerconsumption.Itmakesremotecontrol,securityalarm,environmentalmonitoringandotherfeaturescometruewithverycheaphardware.CC2530designedbyTexasinstruments(TI)companyisthesolutionofthissensornetwork.AdoptingtheleadingZigBeeprotocolstackfromTIindustry,CC2530providesasetofperfectZigBeesolution,whichbuildpowerfulnetworkwithverylowcostmaterials.ThedevelopmentaltoolofsoftwaredesignisIAREmbeddedWorkbenchandtheprotocolstackisZigbee2007protocolstackdesignedbyTIcompany.Wearedesigningtheprogramsofthisdesignonthebasisoftheprotocolstack,soastorealizevariousfunctionsofapplicationlayer,suchastemperatureacquisition,infraredsensing,switchcontrol,etc.Keywords:Intelligenthousehold;ZigBee;CC2530;Wirelesssensornetwork

目錄26673基于ZigBee的無線傳感網(wǎng)的下位機軟件設(shè)計 I11310摘要 I20295SoftwareDesignfortheSlaveComputerBasedonZigBeeWirelessSensorNetwork II14016Abstract II29753第1章緒論 5280481.1本課題的背景和意義 510141.2物聯(lián)網(wǎng)與智能家居的概念 5129171.2.1物聯(lián)網(wǎng)的概念 599981.2.2智能家居的概念 524201.3智能家居的發(fā)展前景 682901.4課題闡述 7258961.5本論文的主要內(nèi)容 728247第2章系統(tǒng)方案介紹 8122122.1系統(tǒng)硬件結(jié)構(gòu) 8272802.2STM32微控制器系列 9153782.2.1STM32微控制器系列的簡介 1011452.2.2STM32微控制器系列的內(nèi)核 10273782.2.3STM32微控制器系列的主要優(yōu)點 10218012.3ZigBee技術(shù) 11265122.3.1ZigBee技術(shù)特點 11326162.3.2ZigBee的協(xié)議棧 12174422.3.3ZigBee網(wǎng)絡(luò)拓撲結(jié)構(gòu) 129442第3章硬件系統(tǒng)詳述 15150523.1硬件系統(tǒng)結(jié)構(gòu) 15168303.2STM32單片機STM32F103RBT6 16162003.3ENC28J60以太網(wǎng)控制器 1626193.4CC2530模塊 17119303.5傳感器模塊 185223.5.1DS18B20溫度傳感器 1955073.5.2MQ-2氣敏元件 208763.5.3光敏電阻元件 2029763.5.4D-SUN人體感應(yīng)模塊 2123658第4章軟件系統(tǒng)的實現(xiàn) 21205554.1ZigBee模塊軟件設(shè)計 2268124.1.1ZigBee開發(fā)環(huán)境的配置 22326984.1.2Z-Stack協(xié)議棧 2387964.1.3ZigBee協(xié)調(diào)器軟件設(shè)計 24107434.1.4ZigBee路由器軟件設(shè)計 26215894.2ZigBee協(xié)調(diào)器與ARM之間的串口協(xié)議 2788614.2.1上位機的請求命令與數(shù)據(jù)格式 27237614.2.2下位機的應(yīng)答命令與數(shù)據(jù)格式 27224024.3傳感器模塊軟件設(shè)計 28251414.3.1DS18B20軟件設(shè)計 28117064.3.2MQ-2氣體傳感器軟件設(shè)計 30134434.3.35537光敏電阻軟件設(shè)計 3080784.3.4D-SUN人體感應(yīng)模塊軟件設(shè)計 3128134第5章整機聯(lián)調(diào) 3127493第6章總結(jié)與展望 3313449參考文獻 3425257附錄1DS18B20軟件程序設(shè)計 354176附錄2MQ-2氣體傳感器程序設(shè)計 378502附錄25537光敏電阻程序設(shè)計 386952附錄4D-SUN人體感應(yīng)模塊程序設(shè)計 39PAGE40第1章緒論1.1本課題的背景和意義 隨著物聯(lián)網(wǎng)技術(shù)的蓬勃發(fā)展,市面上出現(xiàn)了各式各樣的智能家居控制系統(tǒng),本課題在現(xiàn)有的智能家居系統(tǒng)基礎(chǔ)上,分析了目前國內(nèi)外物聯(lián)網(wǎng)系統(tǒng)的發(fā)展現(xiàn)狀以及未來趨勢,提出了一種以STM32處理器和ZigBee無線技術(shù)相融合的互聯(lián)網(wǎng)通信技術(shù)的設(shè)計方案。 本課題研究的對象是基于ARM與ZigBee的智能家居控制系統(tǒng),該系統(tǒng)設(shè)計突破了傳統(tǒng)的智能家居,無需個人電腦(PC)長時間工作去維持服務(wù)器運轉(zhuǎn),通過基于ARM的嵌入式服務(wù)器,大大降低了系統(tǒng)能耗。不僅如此,用戶除了通過局域網(wǎng)對家居環(huán)境監(jiān)測,還可以通過外網(wǎng)接入實現(xiàn)。因此,本課題的研究具有很強的理論價值,對智能家居推廣普及具有一定的現(xiàn)實意義。1.2物聯(lián)網(wǎng)與智能家居的概念隨著我們慢慢走進數(shù)字化、網(wǎng)絡(luò)化、智能化的時代,再加上這“三化”相互的促進作用下,以物聯(lián)網(wǎng)為基礎(chǔ)的“三化”產(chǎn)品已經(jīng)成為了我們未來的一種新的生活所需。這種現(xiàn)象也反映了在某種程度上,當(dāng)今社會“三化”的一種新型發(fā)展趨勢。1.2.1物聯(lián)網(wǎng)的概念物聯(lián)網(wǎng)的概念最早于1999年提出,其英文全稱是INTERNETOFTHINGS,也有人稱作WEBOFTHINGS。換句話說,物聯(lián)網(wǎng)是物品與物品緊密相連的互聯(lián)網(wǎng)。這當(dāng)中有2層意思:一是指物聯(lián)網(wǎng)依然以互聯(lián)網(wǎng)為基礎(chǔ),依靠互聯(lián)網(wǎng)的延伸和擴展的網(wǎng)絡(luò);二是把用戶端之間的聯(lián)系延伸到了物品與物品之間的聯(lián)系,并且物與物之間可進行信息交換。因此,物聯(lián)網(wǎng)的定義是通過規(guī)定的協(xié)議,把所有物品通過互聯(lián)網(wǎng)相連接在一起,形成一個可進行信息交換和溝通,智能化識別和監(jiān)控物品的一種無線網(wǎng)絡(luò)。1.2.2智能家居的概念在21世紀(jì),隨著信息科學(xué)技術(shù)和眾多開放式應(yīng)用不斷發(fā)展,智能家居系統(tǒng)成為一個熱門的研究。智能家居系統(tǒng)逐漸走進我們的生活,在美國的家庭,大概有七千多萬家庭擁有智能家庭設(shè)備??偠灾悄芗揖酉到y(tǒng)具有巨大的市場發(fā)展,逐漸受到眾多企業(yè)的研究和追捧。我國在上世紀(jì)90年代末才開始接觸智能家居,卻得到了騰飛的發(fā)展。因為我國與許多發(fā)達國家國情不同,國外的住房以獨立別墅為主,而國內(nèi)的住房則以密集的樓宇小區(qū)為主,因此國內(nèi)智能家居的發(fā)展?fàn)顩r與國外有較大區(qū)別。在最近這幾年里,國內(nèi)智能家居產(chǎn)品大量涌現(xiàn)于我們的眼前,但是,這些品牌由于價格居高不下,一般生活水平的老百姓望而卻步。1.3智能家居的發(fā)展前景智能家居系統(tǒng)流行于上世紀(jì)80年代,尤其是在歐美和日本。經(jīng)過十多年的發(fā)展,我國不斷對住宅產(chǎn)業(yè)格局進行改善,智能家居系統(tǒng)在我國早已顯現(xiàn)出風(fēng)雨來襲的前兆。智能家居在國外已得到了長足發(fā)展,經(jīng)濟較發(fā)達國家如美國、歐洲、加拿大以及澳大利亞等地區(qū)先后提出了各種各樣的智能家居設(shè)計方案。目前,智能家居系統(tǒng)已從開始的以個人電腦為主要控制中心逐漸轉(zhuǎn)向以嵌入式MCU為核心的嵌入式系統(tǒng)領(lǐng)域。所以智能家居系統(tǒng)變得更便利,以及在研究嵌入式智能家居系統(tǒng)上提供了廣闊的市場背景。在所有智能家居的發(fā)展,三星的發(fā)展更為迅速。三星早已在中國和韓兩國同時推出自家設(shè)計的智能家居系統(tǒng),該系統(tǒng)主要通過網(wǎng)絡(luò)和電視機頂盒,將家庭自動化,家電信息化,娛樂信息化和設(shè)備安全化匯聚成一個智能的家庭控制網(wǎng)絡(luò)。在國內(nèi)眾多智能家居開發(fā)公司,家庭局部建網(wǎng)大多數(shù)采用的是有線方案,而少數(shù)無線通信的組網(wǎng)大部分是使用設(shè)計過于簡單的協(xié)議,而沒有考慮到采用比較安全的智能家居系統(tǒng)的協(xié)議。目前,國內(nèi)較為典型的智能家居系統(tǒng)有:清華同方研發(fā)的數(shù)字家園、Hisense公司設(shè)計的智能家居控制系統(tǒng)以及KELON集團研制的智能網(wǎng)絡(luò)家居系統(tǒng)等等方案。由于市面上各種產(chǎn)品所設(shè)計的技術(shù)標(biāo)準(zhǔn)都不統(tǒng)一,產(chǎn)品的相互兼容性存在著許多的問題。在當(dāng)今的信息時代,較為完善的有線組網(wǎng)技術(shù)的主要代表有電話線、Ethernet、電力線等等技術(shù)。但它們都受著傳統(tǒng)的有線限制,存在著擴展困難,布線復(fù)雜,管理麻煩等問題。與傳統(tǒng)的有線組網(wǎng)技術(shù)相比,無線組網(wǎng)技術(shù)在智能家居的應(yīng)用上更具有更多的優(yōu)勢,它無須受地緣限制布線、能快速建網(wǎng)、管理和維護更加方便、能便捷地拓展無線用戶。如今,無線通信技術(shù)飛速發(fā)展,越來越多的智能家居系統(tǒng)設(shè)計采用無線通信技術(shù)組網(wǎng)。隨著無線通信技術(shù)的不斷發(fā)展和完善,智能家居系統(tǒng)的發(fā)展將變得更加快速,其應(yīng)用也變得越來越豐富?;贏RM微型控制器和ZigBee無線通信技術(shù)的智能家居控制系統(tǒng)可以給智能家居的發(fā)展帶來更多的可研究突破點。與此同時,這種智能家居控制系統(tǒng)的發(fā)展使智能家居更趨向于微型化,同時大大提高了控制效率和數(shù)據(jù)管理,也很好地解決了以下這幾個問題:傳統(tǒng)的有線組網(wǎng)方案,都存在著布線麻煩,若對設(shè)備進行增添要重新布線組網(wǎng),組網(wǎng)效率低。過于依賴個人電腦的管理,傳統(tǒng)的智能家居系統(tǒng)大部分要通過個人電腦的管理才能正常運轉(zhuǎn),如果智能家居系統(tǒng)出現(xiàn)了故障,要修復(fù)和維護都十分不方便。所有公司所設(shè)計的標(biāo)準(zhǔn)不統(tǒng)一,這使得不同的智能家居設(shè)備之間沒有國際統(tǒng)一通信和控制的協(xié)議進行通信,并且這些設(shè)備編碼算法不夠完善。所以說,以ARM和ZigBee為核心的智能家居無線控制系統(tǒng)的研究是很有意義的,而且該研究也具有很明顯的實用性,將會帶來更加廣闊的市場發(fā)展前景。1.4課題闡述本課題基于現(xiàn)有的智能家居系統(tǒng),分析了智能家庭網(wǎng)絡(luò)系統(tǒng)的發(fā)展現(xiàn)狀和未來發(fā)展趨勢,提出了一種基于ARM處理器和ZigBee無線技術(shù)的新型設(shè)計方案,并且該方案融合了互聯(lián)網(wǎng)通信技術(shù)。本設(shè)計無線傳感網(wǎng)采用了ZigBee技術(shù)進行無線傳感網(wǎng)的通信,該無線傳感網(wǎng)布置四個ZigBee模塊,各模塊都能采集溫度、光強、紅外感應(yīng)等功能。本設(shè)計通過接入Internet的計算機或者智能手機上的瀏覽器方便地訪問系統(tǒng),進行相關(guān)數(shù)據(jù)查詢與控制的操作,實現(xiàn)遠程對智能家居系統(tǒng)進行實時的監(jiān)控和管理。本課題是此項目的一個組成部分,專注于基于ZigBee的無線傳感網(wǎng)的下位機軟件設(shè)計,其工作包括ZigBee無線傳感網(wǎng)的組建,各模塊的各種傳感器數(shù)據(jù)的處理和與上位機通信的協(xié)議的編寫。1.5本論文的主要內(nèi)容本論文編排了6個章節(jié),各章節(jié)的所論述內(nèi)容有以下幾部分:第1章(緒論)簡要介紹了現(xiàn)在物聯(lián)網(wǎng)與智能家居的現(xiàn)狀和概念,對智能家居的發(fā)展與前景作了簡單的描述。第2章(系統(tǒng)方案介紹)主要介紹本設(shè)計的系統(tǒng)方案,包括硬件的實現(xiàn)框圖、上位機微控制器以及無線通信技術(shù)的技術(shù)特點。第3章(硬件系統(tǒng)詳述)介紹了硬件系統(tǒng)的具體實現(xiàn)總體方案,并詳細對硬件系統(tǒng)的各個模塊進行介紹,包括STM32模塊、以太網(wǎng)模塊、ZigBee控制芯片CC2530以及各類傳感器模塊。第4章(軟件系統(tǒng)的實現(xiàn))主要介紹了本設(shè)計軟件系統(tǒng)的總體框架,介紹開發(fā)環(huán)境的配置,ZigBee協(xié)議棧的工作流程,ZigBee協(xié)調(diào)器和路由器的軟件設(shè)計,各傳感器模塊軟件設(shè)計,以及ZigBee協(xié)調(diào)器與ARM之間的串口協(xié)議設(shè)計。第5章(整機聯(lián)調(diào))介紹本設(shè)計的最后網(wǎng)頁系統(tǒng)調(diào)試。第6章(總結(jié))基于當(dāng)前智能家居系統(tǒng)的發(fā)展趨向,總結(jié)本設(shè)計的優(yōu)點與缺點。第2章系統(tǒng)方案介紹2.1系統(tǒng)硬件結(jié)構(gòu)本設(shè)計以ARM為核心,通過串口處理ZigBee協(xié)調(diào)器從各ZigBee路由器所采集到的信息,基于ARM搭建一個嵌入式網(wǎng)頁系統(tǒng),在該網(wǎng)頁系統(tǒng)顯示所有ZigBee路由器模塊的各傳感器信息。訪問該網(wǎng)頁系統(tǒng)有兩種方式,一是手機、平板電腦、筆記本通過無線局域網(wǎng)訪問,二是手機、平板電腦、筆記本等上網(wǎng)設(shè)備通過廣域網(wǎng)訪問。圖2.1為本設(shè)計系統(tǒng)硬件結(jié)構(gòu)框圖。無線局域網(wǎng)手機平板筆記本基于ARM搭建的網(wǎng)頁系統(tǒng)ZigBee協(xié)調(diào)器ZigBee路由器4無線局域網(wǎng)手機平板筆記本基于ARM搭建的網(wǎng)頁系統(tǒng)ZigBee協(xié)調(diào)器ZigBee路由器4ZigBee路由器3ZigBee路由器1ZigBee路由器2無線路由器以太網(wǎng)模塊廣域網(wǎng)手機平板筆記本臺式機煙霧、溫度、紅外、光強等傳感器模塊煙霧、溫度、紅外、光強等傳感器模塊煙霧、溫度、紅外、光強等傳感器模塊煙霧、溫度、紅外、光強等傳感器模塊ZigBee無線傳感網(wǎng)UARTSPI網(wǎng)絡(luò)映射2.2STM32微控制器系列STM32系列微控制器是32位閃存MCU,它采用了源自ARM公司最具突破性的Cortex-M3內(nèi)核。該內(nèi)核通過專業(yè)的設(shè)計,具有集高速性能、低能耗、實時性強,再加上相比同行較低的價格,微控制器在嵌入式領(lǐng)域占了不少的優(yōu)勢。通過Cortex-M3在系統(tǒng)結(jié)構(gòu)上的增強,STM32功能更加強大;Thumb-2?指令集使得指令效率提升到一個更高水平,擁有更強大的性能;通過強大的NVIC,響應(yīng)和處理中斷事件比以以往更快;除了這些出眾的優(yōu)勢,STM32功耗完勝了業(yè)界的同類產(chǎn)品。2.2.1STM32微控制器系列的簡介STM32F103增強型系列采用的是高性能的Cortex-M3內(nèi)核。該內(nèi)核是32位的RISC內(nèi)核,運行頻率為72MHz,擁有高達128KB的Flash和20KB的SRAM,以及豐富的增強型I/O端口。STM32微控制器都擁有2個12位的模數(shù)轉(zhuǎn)換器、3個通用16位計數(shù)器和1個PWM。不僅如此,其通信接口采用的都是國際標(biāo)準(zhǔn)接口,如I2C、SPI、USB和CAN等等。該系列的微控制器工作溫度在-40℃到+105℃之間,工作電壓在2.0V到3.6V之間,內(nèi)部具有省電模式,能保證微控制器低功耗工作。STM32F103增強型系列都擁有豐富的外設(shè)配置,這使得它們適合于各種應(yīng)用領(lǐng)域:電機驅(qū)動和機械控制醫(yī)療設(shè)備電腦外設(shè)全球定位系統(tǒng)平臺智能家居系統(tǒng)2.2.2STM32微控制器系列的內(nèi)核STM32系列微控制器使用的內(nèi)核是當(dāng)今最新的Cortex-M3。該內(nèi)核著重于MCU領(lǐng)域和嵌入式領(lǐng)域的應(yīng)用開發(fā),其具有完整和科學(xué)的結(jié)構(gòu),以更少的代碼數(shù)據(jù)和卓越的性能,創(chuàng)造出了一個簡約而又低功耗的理想平臺。2.2.3STM32微控制器系列的主要優(yōu)點Cortex-M3處理器是新一代的嵌入式ARM處理器,該處理器成本便宜、系統(tǒng)功耗低,同時還擁有超強的運算性能以及響應(yīng)速度快的中斷系統(tǒng)在。該系列MCU具有以下幾個主要優(yōu)勢:Cortex-M3為該MCU的內(nèi)核,它采用哈佛結(jié)構(gòu),內(nèi)置了響應(yīng)速度快的中斷系統(tǒng),相比于ARM7運行速度可快35%,且代碼占用空間可節(jié)省45%??茖W(xué)均衡功耗和效率,在運行模式下提高MCU工作效率,在待機狀態(tài)下能最大限度降低能耗。內(nèi)部集成度高,最小系統(tǒng)只需7個外部無源器件,減少MCU對外圍器件的依賴。開發(fā)軟件提供易用的函數(shù),可以讓用戶輕松體驗各個標(biāo)準(zhǔn)外設(shè)的功能以及了解它們的所有特性。這些開發(fā)軟件包提供的免費驅(qū)動涵蓋了GPIO、CAN、SPI、和USART等全部標(biāo)準(zhǔn)外設(shè)驅(qū)動。因此,本課題選用STM32F103作為網(wǎng)關(guān)的核心處理器。2.3ZigBee技術(shù)ZigBee是一種新型的低功耗、低速率無線網(wǎng)絡(luò)通信技術(shù)。它的結(jié)構(gòu)相當(dāng)于融合了一個增強型8051單片機模塊和一個無線模塊,單片機模塊用于數(shù)據(jù)處理,而無線模塊用于組建無線傳感網(wǎng)。ZigBee除了采用IEEE802.15國際標(biāo)準(zhǔn),還有自身的無線通信標(biāo)準(zhǔn),通過這標(biāo)準(zhǔn),幾千多個微型傳感器就能實現(xiàn)安全可靠的無線通信。只需很低的能量,它們就能像接力一樣把數(shù)據(jù)從一個ZigBee模塊傳到另一個模塊。因此,ZigBee的通信效率極高。2.3.1ZigBee技術(shù)特點ZigBee技術(shù)特點包括以下幾方面:可靠性高:采用了防碰撞避機制,解決了發(fā)送數(shù)據(jù)時的冒險競爭和沖突等問題;具有自動動態(tài)組網(wǎng)的功能,通過自動路由選擇的方式進行數(shù)據(jù)傳輸,提高了信息傳輸?shù)目煽啃?。時延短:優(yōu)化需要響應(yīng)速度的應(yīng)用,從休眠狀態(tài)到工作狀態(tài)的時延非常短。一般通信時延在15~30毫秒之間。網(wǎng)絡(luò)容量龐大:最多能支持65000個網(wǎng)絡(luò)節(jié)點。安全性高:提供了數(shù)據(jù)完整性檢查和檢驗功能,采用AES128作為加密算法。保密性高:采用64位出廠代號,通過AES128加密,難以解密。功耗低:在低功耗模式,兩節(jié)普通5號干電池可供ZigBee模塊工作6個月到2年。成本低:由于傳輸速率低,協(xié)議設(shè)計簡單,協(xié)議免收專利費用,成本大大降低。網(wǎng)絡(luò)拓撲能力強:ZigBee能自我重建無線網(wǎng)絡(luò),可任意選擇星型、樹型和網(wǎng)狀型網(wǎng)絡(luò)結(jié)構(gòu)。有效范圍廣:一般有效范圍為10~75m,若通過功放可組建1000m以上的無線網(wǎng)絡(luò)。工作頻段靈活:可使用頻段為全球標(biāo)準(zhǔn)的2.4GHz、歐洲標(biāo)準(zhǔn)的868MHz以及美國標(biāo)準(zhǔn)的915MHz,都是免執(zhí)照的頻段。2.3.2ZigBee的協(xié)議棧ZigBee是面向低速率網(wǎng)絡(luò)系統(tǒng)開發(fā)的無線網(wǎng)絡(luò)協(xié)議。IEEE802.15.4協(xié)議規(guī)范制定了物理層和MAC層以及數(shù)據(jù)鏈路層的結(jié)構(gòu)框架,ZigBee協(xié)議規(guī)范制定了網(wǎng)絡(luò)層、應(yīng)用會聚層等高級應(yīng)用規(guī)范接口,如表2.3.2為ZigBee協(xié)議的完整結(jié)構(gòu)圖。表2.3.2ZigBee協(xié)議棧組成應(yīng)用層應(yīng)用匯聚層網(wǎng)絡(luò)層數(shù)據(jù)鏈路層LLCMAC物理層ZigBee協(xié)議棧由多層規(guī)范接口構(gòu)成,從高層向底層提供數(shù)據(jù)信息,數(shù)據(jù)傳輸服務(wù)由數(shù)據(jù)實體提供,而其他相關(guān)服務(wù)由管理實體提供,ZigBee協(xié)議棧各層的功能如下:應(yīng)用層:作為協(xié)議棧的最頂層接口,其具有各類型的應(yīng)用服務(wù)。應(yīng)用匯聚層:映射各類型的應(yīng)用,把多個業(yè)務(wù)數(shù)據(jù)流匯聚在一起,起到提高系統(tǒng)安全與健全網(wǎng)絡(luò)業(yè)務(wù)等作用。網(wǎng)絡(luò)層:具有MAC管理、無線網(wǎng)絡(luò)安全管理、路由管理以及網(wǎng)絡(luò)拓撲管理等功能。數(shù)據(jù)鏈路層:該層包括LLC子層以及MAC子層。與IEEE802.2相同,LLC子層主要完成數(shù)據(jù)包分段和重組工作,提高數(shù)據(jù)包順序傳輸?shù)目煽啃?。MAC子層在協(xié)議上支持LLC子層的標(biāo)準(zhǔn),提供確認(rèn)模式的幀傳送和校驗、無線鏈路的建立和拆遷等功能。物理層:該層規(guī)定了三類流量等級:處于868MHz使用單信道,傳輸速率為20KB/s;處于915MHz使用10信道,傳輸速率為40KB/s;處于2.4GHz使用16信道,傳輸速率為250KB/s。2.3.3ZigBee網(wǎng)絡(luò)拓撲結(jié)構(gòu)ZigBee協(xié)議棧中的網(wǎng)絡(luò)層為控制各設(shè)備的加入和撤離以及為新建立的網(wǎng)絡(luò)設(shè)備分別自動分配IP地址,提供數(shù)據(jù)安全和路由選擇機制,通過網(wǎng)絡(luò)層偵聽,確保各網(wǎng)絡(luò)設(shè)備之間路由能正常工作。ZigBee網(wǎng)絡(luò)層提供三類通信的網(wǎng)絡(luò)拓撲結(jié)構(gòu),包括星型、網(wǎng)狀以及樹叢狀網(wǎng)絡(luò)拓撲。星型網(wǎng)絡(luò)是ZigBee最常用的網(wǎng)絡(luò),適合長時間運工作的網(wǎng)絡(luò)系統(tǒng);網(wǎng)狀網(wǎng)絡(luò)是較為可靠的可檢測網(wǎng)絡(luò),它可提供多路數(shù)據(jù)通道,是一種高冗余型網(wǎng)絡(luò),當(dāng)其中一個數(shù)據(jù)通道出現(xiàn)問題時,可以選擇其它的通道進行傳輸;樹叢狀則綜合了星型和網(wǎng)狀網(wǎng)絡(luò)的特點,平衡了成本和可靠性,屬于一種混合型網(wǎng)絡(luò)。IEEE802.15一般較為常用的有兩種網(wǎng)絡(luò)拓撲結(jié)構(gòu):星型和點對點網(wǎng)絡(luò)通信結(jié)構(gòu)。與IEEE802.15.4標(biāo)準(zhǔn)相比,ZigBee網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)則提供了更多的網(wǎng)絡(luò)拓撲結(jié)構(gòu),如星型、樹型以及對等型網(wǎng)絡(luò)拓撲結(jié)構(gòu),ZigBee網(wǎng)絡(luò)結(jié)構(gòu)如圖2.3.3所示。圖2.3.3ZigBee的三種網(wǎng)絡(luò)拓撲結(jié)構(gòu)星型網(wǎng)絡(luò)由一個ZigBee協(xié)調(diào)器設(shè)備作為中心節(jié)點,ZigBee協(xié)調(diào)器負責(zé)無線網(wǎng)絡(luò)的初始化和允許其他路由器設(shè)備的加入。而在樹型和對等拓撲結(jié)構(gòu)中,ZigBee協(xié)調(diào)器負責(zé)建立無線網(wǎng)絡(luò)和配置關(guān)鍵的函數(shù)參數(shù),可以通過ZigBee路由器的設(shè)備加入擴展網(wǎng)絡(luò)。IEEE802.15.4的LR-WPAN網(wǎng)絡(luò)包括的設(shè)備:FFD(全能設(shè)備)以及RFD(簡化功能設(shè)備)。其中FFD提供三種工作模式:個人區(qū)域網(wǎng)協(xié)調(diào)設(shè)備、終端設(shè)備和普通協(xié)調(diào)設(shè)備。個人區(qū)域網(wǎng)設(shè)備負責(zé)無線網(wǎng)絡(luò)的核心控制任務(wù)。FFD不僅可以與FFD通信,同時也可以與RFD通信,然而RFD僅能和FFD之間進行數(shù)據(jù)傳輸,不能和RFD相互通信。在通信過程中,RFD發(fā)送很少的控制數(shù)據(jù),這使得系統(tǒng)存儲空間和資源占用大大減少,能實現(xiàn)低成本且操作簡單的控制系統(tǒng)。星型網(wǎng)絡(luò)只需要一個PAP協(xié)調(diào)設(shè)備,而對等型網(wǎng)絡(luò)需要PAN協(xié)調(diào)設(shè)備以及其余的協(xié)調(diào)器設(shè)備才能正常工作。星型系統(tǒng)有著成本低、耗電量少和組網(wǎng)簡單的優(yōu)點,同時也存在著網(wǎng)絡(luò)覆蓋范圍窄以及可靠性低的缺點,當(dāng)中心設(shè)備出現(xiàn)了故障,與中心設(shè)備通信的網(wǎng)絡(luò)設(shè)備將無法正常工作。不僅如此,星型網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)還存在著使用壽命短、路由管理和修復(fù)復(fù)雜的缺點?;旌蠣钔負浣Y(jié)構(gòu)則融合了以上二者的特點。綜合分析了三種拓撲結(jié)構(gòu)的優(yōu)缺點以及本設(shè)計的應(yīng)用情況,決定應(yīng)用星型結(jié)構(gòu)。第3章硬件系統(tǒng)詳述3.1硬件系統(tǒng)結(jié)構(gòu)本設(shè)計的硬件系統(tǒng)結(jié)構(gòu)框圖如圖3.1所示。以STM32開發(fā)板為系統(tǒng)核心,無線網(wǎng)絡(luò)使用ZigBee無線傳感網(wǎng)。以太網(wǎng)模塊通過SPI接口和STM32單片機相連,ZigBee協(xié)調(diào)器通過UART串口和STM32相連。用戶可通過手機、平板、筆記本等上網(wǎng)設(shè)備登陸到Web服務(wù)器,瀏覽該網(wǎng)頁系統(tǒng)。HTML請求臺式機平板筆記本手機瀏覽器廣域網(wǎng)煙霧、溫度、紅外、光強等傳感器模塊煙霧、溫度、紅外、光強等傳感器模塊煙霧、溫度、紅外、光強等傳感器模塊煙霧、溫度、紅外、光強等傳感器模塊ZigBee路由器2ZigBee路由器1ZigBee路由器3ZigBee路由器4HTML請求臺式機平板筆記本手機瀏覽器廣域網(wǎng)煙霧、溫度、紅外、光強等傳感器模塊煙霧、溫度、紅外、光強等傳感器模塊煙霧、溫度、紅外、光強等傳感器模塊煙霧、溫度、紅外、光強等傳感器模塊ZigBee路由器2ZigBee路由器1ZigBee路由器3ZigBee路由器4ZigBee無線傳感網(wǎng)上傳消息請求消息STM32開發(fā)板UART數(shù)據(jù)處理程序ZigBee協(xié)調(diào)器Web服務(wù)器圖3.1硬件系統(tǒng)結(jié)構(gòu)框圖ZigBee無線傳感網(wǎng)上傳消息請求消息STM32開發(fā)板UART數(shù)據(jù)處理程序ZigBee協(xié)調(diào)器Web服務(wù)器3.2STM32單片機STM32F103RBT6STM32F103RBT6采用了ARM最新的Cortex-M3內(nèi)核,是32位的RISC處理器,提高了代碼的運行效率。該單片機內(nèi)置了ARM公司的Cortex-M3內(nèi)核,因此它能與所有ARM軟件開發(fā)工具相互兼容。STM32F103RBT6具有主要以下優(yōu)勢:內(nèi)置20KB的靜態(tài)RAM,CPU幾乎無需等待就能進行讀寫訪問。內(nèi)置128KB的Flash存儲器,能儲存大量的程序和數(shù)據(jù)。內(nèi)置NVIC,最多可以處理43個可屏蔽和16個優(yōu)先級中斷通道。支持3種低功耗模式,可以平衡低功耗、快速啟動和多事件喚醒的需求。內(nèi)置高速USART,其一個通信速率可達4.5Mbit/s,其他的通信速率可達2.25Mbit/s。USART接口可以兼容DMA操作。本設(shè)計的STM32系統(tǒng)結(jié)構(gòu)如圖3.2.1所示:圖3.2.1STM32系統(tǒng)結(jié)構(gòu)圖3.3ENC28J60以太網(wǎng)控制器ENC28J60是帶有行業(yè)標(biāo)準(zhǔn)串行外設(shè)接口(SerialPeripheralInterface,SPI)的獨立以太網(wǎng)控制器。作為一個以太網(wǎng)接口控制器,它符合IEEE802.3的所有標(biāo)準(zhǔn),還內(nèi)置了一個DMA模塊,在軟件上實現(xiàn)數(shù)據(jù)高速吞吐,在硬件上支持IP校驗。該以太網(wǎng)控制器與MCU的通信通過2個中斷管腳和一個SPI接口實現(xiàn),最高傳輸速率為10Mbps。2盞LED工作燈通過LEDA和LEDB引腳連接,用來指示以太網(wǎng)的工作狀態(tài)。ENC28J60由七個主要功能模塊組成:SPI接口:是MCU和以太網(wǎng)控制器的數(shù)據(jù)通信通道??刂萍拇嫫鳎嚎刂坪捅O(jiān)視以太網(wǎng)控制器。雙端口RAM緩沖器:接收和發(fā)送數(shù)據(jù)包。判優(yōu)器:當(dāng)DMA或接發(fā)單元發(fā)出請求時,對緩沖器的訪問進行判優(yōu)??偩€接口:解析SPI接口所接收的數(shù)據(jù)和命令。MAC:實現(xiàn)符合IEEE802.3標(biāo)準(zhǔn)的MAC邏輯。PHY:為雙絞線提供接口,對模擬數(shù)據(jù)進行編碼和譯碼。本設(shè)計的ENC28J60接口如圖3.3所示:圖3.3ENC28J60接口圖3.4CC2530模塊CC2530方案是用于2.4-GHzIEEE802.15.4、ZigBee和RF4CE應(yīng)用的一個真正的SoC解決方案,它能夠以極低的總材料成本建立一個強大的無線網(wǎng)絡(luò)。該芯片擁有高性能的射頻收發(fā)器,引進了國際標(biāo)準(zhǔn)的增強型8051內(nèi)核,內(nèi)置了可編程Flash,8KBRAM和其它強大的功能。CC2530共有4種不同的閃存版本:CC2530F32/64/128/256,分別具有32/64/128/256KB的閃存容量。CC2530可切換不同的工作模式,通過功耗和性能的合理平衡,能實現(xiàn)超低功耗和超高效率的系統(tǒng)。本設(shè)計的CC2530的系統(tǒng)框圖如圖3.4所示:圖3.4CC2530系統(tǒng)框圖3.5傳感器模塊傳感器是通過敏感元件感受規(guī)定的被測量,再經(jīng)過轉(zhuǎn)換元件,把一定規(guī)律轉(zhuǎn)換成可用于輸出電信號的器件,它是實現(xiàn)ZigBee無線傳感網(wǎng)數(shù)據(jù)采集的重要環(huán)節(jié)。3.5.1DS18B20溫度傳感器DS18B20溫度傳感器是DALLAS公司的“一線”元器件,“一線”即僅使用單總線。DS18B20具有布線簡便,體積小的特點。因此可以把多個傳感器模塊組成一個多點測溫網(wǎng)絡(luò),該網(wǎng)絡(luò)采用總線網(wǎng)絡(luò)結(jié)構(gòu),通過一根數(shù)據(jù)線,就可以掛載多個溫度傳感模塊,模塊拓展也十分方便簡單。DS18B20有以下特點:僅需要一根數(shù)據(jù)線就能實現(xiàn)數(shù)據(jù)傳輸。每個DS18B20都有唯一的S/N號。無需外加任何元器件便能實現(xiàn)測溫功能??蓽y量溫度范圍在-55℃到+125℃之間。可選擇9位到12位分辨率??稍O(shè)置內(nèi)部的上、下限溫度。本設(shè)計所采用的DS18B20的封裝是TO-92,圖3.5.1為DS18B20的引腳圖。其相對應(yīng)的引腳功能描述見表3.5.2。圖3.5.1DS18B20引腳表3.5.2DS18B20引腳功能序號名稱引腳的功能描述1GND接電源負極。2DQ該引腳負責(zé)數(shù)據(jù)的輸入輸出。3VDD可選擇接電源正極。如果工作在寄生電源時,必須接電源負極。3.5.2MQ-2氣敏元件該氣敏元件具有探測范圍廣闊、靈敏度高、響應(yīng)迅速恢復(fù)、穩(wěn)定性好、壽命長、驅(qū)動電路簡單的特點,被廣泛用于家居和工廠可燃氣體泄漏監(jiān)測系統(tǒng)。它主要由微型氧化鋁陶瓷管、二氧化錫敏感層,測量電極和加熱器構(gòu)成,加熱器的作用是提高溫度讓氣敏元件達到工作條件。圖3.5.2為氣敏元件的結(jié)構(gòu)和外觀。圖3.5.2MQ-2氣敏元件的結(jié)構(gòu)和外觀3.5.3光敏電阻元件光敏電阻又稱光敏電阻器,一般采用硫化鎘制作而成,在一定波長的光線照射下,其阻值會快速降低。這是因為元件在光線照射下產(chǎn)生了載流子,而這些載流子都參與了導(dǎo)電,在外電場的推動下作漂移運動,電子流向電源的正極,空穴流向電源的負極,從而光敏元件的阻值會快速降低。光敏電阻器常用于光強的測量和光電轉(zhuǎn)換的一種測量控制器。其光敏度和人眼對可見光的敏感度十分接近,所以,只要是人眼可感受的光,光敏電阻器都能敏感測量出來。本設(shè)計所采用的光敏電阻器型號是5537,其主要電氣參數(shù):最大電壓(V-dc):150最大功耗(mW):100環(huán)境溫度(℃):-30~+70光譜峰值(nm):540光電阻(MΩ):2響應(yīng)時間(ms):上升:20/下降:303.5.4D-SUN人體感應(yīng)模塊人體紅外感應(yīng)模塊核心技術(shù)是采用了紅外線技術(shù)。其具有超快速的響應(yīng)、系統(tǒng)穩(wěn)定可靠、超低能耗,很多人體感應(yīng)設(shè)備都采用了該模塊作為核心控制器。本設(shè)計所采用的人體紅外感應(yīng)模塊是D-SUNPIR,其主要電氣參數(shù):工作電壓范圍:直流電壓4.8~20V靜態(tài)電流:<50μA輸出電平:高:3.3V/低:0V觸發(fā)方式:重復(fù)觸發(fā)延時時間:0.5~200s封鎖時間:幾秒到幾十秒其原理圖電路如圖3.5.4。圖3.5.4人體紅外感應(yīng)模塊第4章軟件系統(tǒng)的實現(xiàn)本設(shè)計的軟件設(shè)計包括ZigBee模塊軟件設(shè)計和與ARM網(wǎng)關(guān)之間的串口協(xié)議設(shè)計這兩大部分。其中ZigBee模塊軟件設(shè)計包括ZigBee路由器的數(shù)據(jù)采集以及ZigBee無線傳感網(wǎng)路由器和協(xié)調(diào)器之間的數(shù)據(jù)傳輸兩大部分。4.1ZigBee模塊軟件設(shè)計本設(shè)計主要所采用的開發(fā)工具是IAREmbeddedWorkbench8.10.3,它是最簡便的嵌入式系統(tǒng)開發(fā)軟件,內(nèi)置了C/C++語言編譯器和調(diào)試器的IDE、RTOS和中間件、一系列開發(fā)工具、硬件仿真器等等工具。它還可以支持8位、16位以及32位的處理器的系統(tǒng)開發(fā),為不同微處理器提供同一直觀的系統(tǒng)開發(fā)界面。4.1.1ZigBee開發(fā)環(huán)境的配置在對ZigBee模塊進行開發(fā)之前,我們需要搭建好它的軟件開發(fā)環(huán)境,一般主要是從以下三個方面出發(fā):(1)編寫和開發(fā)ZigBee模塊主要需要用到的軟件開發(fā)工具是IRA7.51A,它相當(dāng)于單片機開發(fā)的KEIL軟件,是一款開源的C/C++開發(fā)工具,如圖4.1.1所示。圖4.1.1ZigBee開發(fā)環(huán)境(2)安裝ZigBee協(xié)議棧安裝包,該安裝包主要用來支持ZigBee底層協(xié)議802.15.4和ZigBee協(xié)議棧封裝。(3)安裝下載器驅(qū)動程序,構(gòu)成相應(yīng)的協(xié)議分析儀,主要用于完成程序的燒寫和調(diào)試功能。CC2530下載器采用的是TI公司的FlashProgrammer軟件進行下載。FlashProgrammer軟件打開后如圖4.1.2所示。圖4.1.2FlashProgrammer軟件界面4.1.2Z-Stack協(xié)議棧本設(shè)計考慮到ZigBee模塊的通用性以及可移植性,采用了TI公司的Z-Stack-2.4.0-1.4.0作為協(xié)議棧。該協(xié)議棧是ZigBee2007規(guī)范的協(xié)議棧,可兼容IEEE802.15.4的CC2530SoC解決方案。TI公司提供的ZigBee協(xié)議棧部分用庫的形式進行封裝,其結(jié)構(gòu)簡單明了、移植方便、層次分明,能快速響應(yīng)多任務(wù)環(huán)境中的數(shù)據(jù)請求。這不僅方便了對無線網(wǎng)絡(luò)節(jié)點的設(shè)計,而且還具有一定的開發(fā)性及可移植性。該協(xié)議棧采用了操作系統(tǒng)的架構(gòu),即采用了事件輪循機制,當(dāng)各層初始化完畢后,系統(tǒng)進入低功耗模式,若有事件發(fā)生請求時,喚醒系統(tǒng),處理該中斷事件,處理完畢后又重新進入低功耗模式。假如有幾個事件發(fā)生同時,則進行優(yōu)先級判斷,按優(yōu)先權(quán)逐個處理。這樣的系統(tǒng)構(gòu)架合理地平衡了功耗和響應(yīng)速度的關(guān)系,大大降低了功耗。系統(tǒng)框架圖如圖4.1.3所示。圖4.1.2Z-Stack流程圖4.1.3ZigBee協(xié)調(diào)器軟件設(shè)計在本設(shè)計中,ZigBee協(xié)調(diào)器主要有2個工作:一是創(chuàng)建新的無線傳感網(wǎng)絡(luò)并允許其它ZigBee路由器加入到該網(wǎng)絡(luò);二是能夠接收ZigBee路由器發(fā)送的傳感器數(shù)據(jù),并將這些數(shù)據(jù)分析處理,整理成一個數(shù)據(jù)包,通過串口傳送到上位機。這一部分的軟件設(shè)計主要實現(xiàn)的任務(wù)是協(xié)調(diào)器的初始化、協(xié)調(diào)器建立網(wǎng)絡(luò)、允許路由器加入網(wǎng)絡(luò)、傳感器數(shù)據(jù)的收發(fā)和分析處理等任務(wù)。在處理ZigBee協(xié)調(diào)器與上位機之間的通信時,協(xié)調(diào)器接收到上位機的數(shù)據(jù)請求后,通過串口通信發(fā)給上位機;當(dāng)上位機判斷該請求正確無誤以后,將返回數(shù)據(jù)發(fā)送到協(xié)調(diào)器,協(xié)調(diào)器通過無線的方式發(fā)送到各路由器。在處理ZigBee協(xié)調(diào)器與ZigBee路由器之間的通信時,協(xié)調(diào)器首先初始化,初始化完畢后等待路由器發(fā)送傳感器數(shù)據(jù),當(dāng)接收到路由器發(fā)送過來的數(shù)據(jù)后,對數(shù)據(jù)進行整理和儲存,完畢后又重回等待狀態(tài)。ZigBee協(xié)調(diào)器軟件流程如圖4.1.3所示。開始開始協(xié)調(diào)器初始化協(xié)調(diào)器初始化協(xié)調(diào)器等待接收來自ARM串口或ZigBee路由器數(shù)據(jù)協(xié)調(diào)器等待接收來自ARM串口或ZigBee路由器數(shù)據(jù)是是否否是是否否數(shù)據(jù)接收完畢?數(shù)據(jù)存儲完畢?收到ZigBee路由器數(shù)據(jù)?收到ARM串口數(shù)據(jù)?是是否否是是否否數(shù)據(jù)接收完畢?數(shù)據(jù)存儲完畢?收到ZigBee路由器數(shù)據(jù)?收到ARM串口數(shù)據(jù)?協(xié)調(diào)器發(fā)送傳感器數(shù)據(jù)給ARM圖4.1.3ZigBee協(xié)調(diào)器工作流程圖協(xié)調(diào)器發(fā)送傳感器數(shù)據(jù)給ARM4.1.4ZigBee路由器軟件設(shè)計ZigBee路由器負責(zé)從ZigBee協(xié)調(diào)器接收控制命令,把數(shù)據(jù)發(fā)送給ZigBee協(xié)調(diào)器。各路由器在上電后首先進行初始化,初始化完畢后路由器向協(xié)調(diào)器發(fā)送加入網(wǎng)絡(luò)請求,協(xié)調(diào)器確認(rèn)無誤后允許路由器加入網(wǎng)絡(luò)。系統(tǒng)中無線網(wǎng)絡(luò)是由協(xié)調(diào)器組建的,協(xié)調(diào)器會分配給路由器16位短地址。當(dāng)ZigBee路由器成功加入網(wǎng)絡(luò)后,黃色指示燈亮起,路由器返回段地址給協(xié)調(diào)器。如果此時還有其他事件,沒有完成,系統(tǒng)就轉(zhuǎn)去處理這些事件,當(dāng)處理完畢后才進入定時程序。定時程序是讓路由器定時地采集傳感器數(shù)據(jù)并向協(xié)調(diào)器發(fā)送數(shù)據(jù)包,若發(fā)送成功,協(xié)調(diào)器返回一個地址,系統(tǒng)繼續(xù)對數(shù)據(jù)進行采集和發(fā)送;若發(fā)送失敗,系統(tǒng)則會自動檢測該網(wǎng)絡(luò)是否添加成功,嘗試重新加入網(wǎng)絡(luò)。ZigBee路由器的主要任務(wù)是實時處理ZigBee協(xié)調(diào)器的控制命令,因此路由器大部分時間向協(xié)調(diào)器傳輸傳感器數(shù)據(jù)。路由器任務(wù)的執(zhí)行是通過事件驅(qū)動的,當(dāng)接收到協(xié)調(diào)器數(shù)據(jù)請求時,路由器則發(fā)送數(shù)據(jù)給協(xié)調(diào)器,發(fā)送完畢后又重新保持原來狀態(tài)。這樣的系統(tǒng)設(shè)計合理地減少了資源的開支,因此路由器功耗也就大幅度地降低了。ZigBee路由器軟件流程如圖4.1.4所示。任務(wù)處理路由器初始化開始任務(wù)處理路由器初始化開始否否是是處理完畢?傳輸數(shù)據(jù)?否否是是處理完畢?傳輸數(shù)據(jù)?圖4.1.4ZigBee路由器工作流程圖4.2ZigBee協(xié)調(diào)器與ARM之間的串口協(xié)議本設(shè)計的串口協(xié)議規(guī)定ARM為上位機,ZigBee協(xié)調(diào)器為下位機。上位機和下位機的關(guān)系是主從關(guān)系,上位機發(fā)送數(shù)據(jù)請求,下位機收到后發(fā)送數(shù)據(jù)返回,若非上位機的數(shù)據(jù)請求,下位機不作任何數(shù)據(jù)返回。該通信過程均為上位機發(fā)送請求數(shù)據(jù),下位機數(shù)據(jù)返回。本協(xié)議采用UART通訊方式,波特率為38400bps,其中有8bit數(shù)據(jù)位和1bit停止位,無校驗位。4.2.1上位機的請求命令與數(shù)據(jù)格式表4.2.1為上位機請求命令與數(shù)據(jù)格式。表4.2.1上位機請求命令與數(shù)據(jù)格式起始符命令數(shù)據(jù)高位數(shù)據(jù)低位校驗和結(jié)束符0XEFCMDDataHDataLSUM0XFE校驗和SUM=CMD+DataH+DataL;每個數(shù)據(jù)位均為1byte,校驗和舍掉高位字節(jié),只取低位字節(jié)。協(xié)議中的所有數(shù)據(jù)采用的是十六進制。命令(CMD):(1)上傳ZigBee所有數(shù)據(jù)命令(0xC0)說明:ARM上位機向ZigBee下位機發(fā)送上傳ZigBee所有數(shù)據(jù)命令,下位機校驗接收正確后,返回各路由器的所有傳感器數(shù)據(jù)。格式:起始符+命令字節(jié)+數(shù)據(jù)高位+數(shù)據(jù)低位+校驗和+結(jié)束符。例:EFC00000C0FE(2)對ZigBee節(jié)點繼電器控制命令(0xC5)說明:ARM上位機對ZigBee下位機節(jié)點繼電器進行控制。格式:起始符+命令字節(jié)+節(jié)點編號+開關(guān)數(shù)據(jù)+校驗和+結(jié)束符。例:EFC50100C6FE(關(guān)閉節(jié)點1的繼電器)4.2.2下位機的應(yīng)答命令與數(shù)據(jù)格式表4.2.2為下位機應(yīng)答命令與數(shù)據(jù)格式。表4.2.2下位機應(yīng)答命令與數(shù)據(jù)格式起始符命令節(jié)點編號溫度高位溫度低位氣體數(shù)據(jù)光強燈狀態(tài)報警狀態(tài)校驗和結(jié)束符0XEFCMDIDTemp[1]Temp[0]GasDataLightLevelLightStatusAlarmStatusSUM0XFE校驗和SUM=CMD+ID+Temp[1]+Temp[0]+GasData+LightLevel+LightStatus+AlarmStatus每個數(shù)據(jù)位均為1byte,校驗和舍掉高位字節(jié),只取低位字節(jié)。協(xié)議中的所有數(shù)據(jù)采用的是十六進制。命令(CMD):1)上傳ZigBee所有數(shù)據(jù)應(yīng)答命令(0x80)說明:ZigBee下位機收到ARM上位機的上傳ZigBee所有數(shù)據(jù)請求后,發(fā)送ZigBee所有數(shù)據(jù)應(yīng)答。格式:起始符+命令字節(jié)+節(jié)點編號+溫度高位+溫度低位+氣體數(shù)據(jù)+光強+燈狀態(tài)+報警狀態(tài)+校驗標(biāo)志+結(jié)束符(1)。 例:EF800100000000000081FE(上傳節(jié)點1的所有數(shù)據(jù)應(yīng)答命令)4.3傳感器模塊軟件設(shè)計傳感器輸出結(jié)果通常分為數(shù)字信號和模擬信號,數(shù)字信號型的傳感器只有高電平和低電平兩種信號,而模擬信號型的傳感器輸出的是一個模擬法值。因此,對于數(shù)字信號型的傳感器模塊,只需通過ZigBee路由器上的CC2530芯片判斷該傳感器輸出電平是高電平還是低電平就行;而對于模擬信號型的傳感器模塊,則要通過A/D轉(zhuǎn)換得到的電壓去測量該傳感器的測量值。4.3.1DS18B20軟件設(shè)計由于DS18B20采用的是單總線協(xié)議,但對STM32F103微控制器來講,硬件上沒有內(nèi)置單總線協(xié)議。因此,我們將使用軟件的方法來實現(xiàn)單總線的協(xié)議的讀寫時序,完成對DS18B20的訪問和數(shù)據(jù)收發(fā)。DS18B20是靠一根總線來進行數(shù)據(jù)傳輸?shù)模攒浖O(shè)計要嚴(yán)格按照讀寫的數(shù)據(jù)位的時序要求。正因為嚴(yán)格的通信協(xié)議,總線上的數(shù)據(jù)才能準(zhǔn)確完整地傳輸。該單總線協(xié)議定義了以下3種信號的時序:初始化設(shè)備、讀取數(shù)據(jù)以及寫入數(shù)據(jù)。在這些時序中,MCU作為主機設(shè)備,DS18B20作為從機設(shè)備。命令的請求和數(shù)據(jù)的傳輸都是由主機設(shè)備寫時序發(fā)起,若是請求從機設(shè)備返回數(shù)據(jù)時,在完成寫命令后,主機設(shè)備要發(fā)起讀時序才能接收返回數(shù)據(jù)。在所有傳輸過程中,數(shù)據(jù)都是低位在前,高位在后。DS18B20的復(fù)位時序如圖4.3.1所示。圖4.3.1DS18B20的復(fù)位時序DS18B20的讀時序分為讀0和讀1兩種時序過程。在讀時序過程中,主機設(shè)備首先將單總線置為低電平,在15微秒之內(nèi)釋放單總線,等待溫度傳感器把返回數(shù)據(jù)傳送到單總線上。該溫度傳感器要完成一個讀時序全過程,至少需要60微秒。DS18B20的讀時序如圖4.3.2所示。圖4.3.2DS18B20的讀時序DS18B20的寫時序同樣也分為寫0和寫1兩個時序過程。對寫0和寫1時序的要求大不相同,在寫0時序的過程中,單總線至少在60微秒內(nèi)置為低電平,保證DS18B20在15微秒到45微秒之間準(zhǔn)確地采樣單總線上的低電平,在寫1時序的過程中,單總線置為低電平的15微秒內(nèi)就得釋放單總線。DS18B20的讀時序如圖4.3.3所示。圖4.3.3DS18B20的寫時序DS18B20軟件設(shè)計詳細程序請查看附錄1。4.3.2MQ-2氣體傳感器軟件設(shè)計如圖4.3.4所示,MQ-2氣體傳感器可輸出數(shù)字信號和模擬信號,因此直接用CC2530芯片讀取電平信號和用A/D轉(zhuǎn)換讀取模擬信號即可。MQ-2氣體傳感器軟件設(shè)計詳細程序請查看附錄2圖4.3.4MQ-2氣體傳感器引腳圖4.3.35537光敏電阻軟件設(shè)計光敏電阻隨著光線的變化,阻值也跟著發(fā)生變化。因此,CC2530芯片對光敏電阻端口進行A/D轉(zhuǎn)換,可計算得出光敏電阻兩端的電壓,從而算出不同光強下電阻的阻值是多少。5537光敏電阻軟件設(shè)計詳細軟件設(shè)計請查看附錄3。4.3.4D-SUN人體感應(yīng)模塊軟件設(shè)計人體紅外感應(yīng)模塊是一種數(shù)字型傳感器模塊,輸出信號為電平信號。因此,CC2530芯片讀取D-SUN人體感應(yīng)模塊輸出端電平,即可知道模塊是否有人在附近。D-SUN人體感應(yīng)模塊軟件設(shè)計詳細軟件設(shè)計請查看附錄4第5章整機聯(lián)調(diào)本設(shè)計的用戶終端為筆記本或者手機,筆記本連接上無線路由器,打開瀏覽器,輸入HTTP://90/12345。智能家居網(wǎng)頁系統(tǒng)界面如圖5.1所示:圖5.1智能家居網(wǎng)頁系統(tǒng)界面調(diào)試流程說明:1)給STM32開發(fā)板上電,打開瀏覽器,輸入HTTP://90/12345,進入網(wǎng)頁系統(tǒng)。2)使用串口大師,測試STM32串口接收和發(fā)送的協(xié)議是否有誤。3)給ZigBee協(xié)調(diào)器上電,當(dāng)LED2燈亮?xí)r,證明無線傳感網(wǎng)建立成功。4)按次序分別給4個ZigBee路由器上電,當(dāng)路由器LED2燈亮?xí)r,證明路由器與協(xié)調(diào)器成功連接;5)分別按下4個ZigBee路由器的RT按鍵,當(dāng)路由器LED4燈亮?xí)r,證明路由器向協(xié)調(diào)器發(fā)送傳感器數(shù)據(jù)。6)使用串口大師,測試ZigBee協(xié)調(diào)器串口接收和發(fā)送的協(xié)議是否有誤。7)確定STM32和ZigBee協(xié)調(diào)器的串口傳輸都無誤后,將STM32和ZigBee協(xié)調(diào)器的串口RxD和TxD交叉相接。打開筆記本的瀏覽器,輸入HTTP://90/12345,進入網(wǎng)頁系統(tǒng),點擊網(wǎng)頁系統(tǒng)刷新連接,能刷新各ZigBee路由器節(jié)點的傳感器數(shù)據(jù),而且能對各路由器節(jié)點的繼電器進行開關(guān)控制。STM32和ZigBee整機聯(lián)調(diào)如圖5.2所示圖5.2STM32和ZigBee整機聯(lián)調(diào)第6章總結(jié)與展望本設(shè)計分析了目前國內(nèi)外智能家居系統(tǒng)的發(fā)展現(xiàn)狀和未來趨勢,根據(jù)了相關(guān)技術(shù)設(shè)計了一個基于ARM和ZigBee的智能家居系統(tǒng)。在現(xiàn)有的ZigBee無線傳感網(wǎng)解決方案基礎(chǔ)上,采用ST公司基于ARMCortex-M3內(nèi)核的STM32F103處理器作為嵌入式服務(wù)器的主控制器平臺,提出了ARM處理器和ZigBee無線技術(shù)相結(jié)合的設(shè)計方案。相對于傳統(tǒng)的智能家居系統(tǒng),本設(shè)計融合了互聯(lián)網(wǎng)通信技術(shù),無需PC長時間在線工作,實現(xiàn)了真正意義上的物聯(lián)網(wǎng),用戶可以通過外網(wǎng)遠程對智能家居系統(tǒng)進行實時的數(shù)據(jù)采集和開關(guān)控制。隨著物聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,智能家居越來越接近我們的生活,給我們的生活帶來了更多的便捷和安全,足不出戶就能解決生活上的種種麻煩。本課題提出的設(shè)計方案可以在無線路由器和嵌入式智能家居網(wǎng)頁系統(tǒng)的融合作延伸,2014年初,小米公司推出了一款小米路由器,它不僅僅具備了普通路由器的功能,作為家庭數(shù)據(jù)中心,它還支持遠程下載。最近,小米公司正式宣布把小米智能家居控制中心業(yè)務(wù)和小米路由器融為一體,小米路由器具有智能家居業(yè)務(wù)的所有強大功能。相信不久的未來,路由器會成為智能家居系統(tǒng)的一個重要控制中心。由于實驗條件有限、時間的不足和自身能力的限制,本設(shè)計還存在著許多不足之處,在后續(xù)工作中需要改進的有以下幾個方面:本設(shè)計中的嵌入式Web服務(wù)器僅是一個靜態(tài)HTML,沒有建立一個完整的數(shù)據(jù)庫,無法查詢歷史的傳感器數(shù)據(jù),還需考慮用戶對查詢歷史數(shù)據(jù)和實時曲線圖的需要。整個設(shè)計都是從理想的角度下進行開發(fā),因此,對系統(tǒng)的安全性、實時性、穩(wěn)定性考慮得還不夠全面,還需在實際環(huán)境下進行多次的測試。參考文獻[1]袁霞,羅克露.STM32和CC2520的智能家居系統(tǒng)網(wǎng)關(guān)設(shè)計[J].單片機與嵌入式系統(tǒng)應(yīng)用,2013,05.[2]陳莉.基于ZigBee協(xié)議的環(huán)境監(jiān)測無線傳感器網(wǎng)絡(luò)測量節(jié)點的設(shè)計[D].上海交通大學(xué),2008.[3]閆沫.ZigBee協(xié)議棧的分析與設(shè)計[D].廈門大學(xué),2007.[4]梁華軍.基于ARM9與ZigBee無線監(jiān)測系統(tǒng)的開發(fā)研究[D].華南理工大學(xué),2012.[5]孟令許.基于S3C2440A的ZigBee+WiFi的智能家居控制系統(tǒng)[D].成都理工大學(xué),2012.[6]王風(fēng).基于CC2530的ZigBee無線傳感器網(wǎng)絡(luò)的設(shè)計與實現(xiàn)[D].西安電子科技大學(xué),2012.[7]崔茭.基于ARM和ZIGBEE的物聯(lián)網(wǎng)智能家居系統(tǒng)的設(shè)計[D].東華大學(xué),2013.[8]師振偉.基于ARM和ZigBee的智能家居無線終端控制系統(tǒng)的設(shè)計[D].西安工業(yè)大學(xué),2013.[9]龐博.基于ARM與無線自組網(wǎng)的家庭安全監(jiān)測系統(tǒng)[D].東北石油大學(xué),2013.[10]張道勇,張輝.基于嵌入式以太網(wǎng)與ZigBee協(xié)議的測控系統(tǒng)設(shè)計[J].科學(xué)技術(shù)與工程,2011,32.附錄1DS18B20軟件程序設(shè)計voidinit_1820(void){SET_OUT;SET_DQ;//輸出1CL_DQ;Delay_nus(550);//拉低一段時間550SET_DQ;//釋放SET_IN;//輸入Delay_nus(20);//釋放總線后等待15-60us40while(IN_DQ){;}//等待回復(fù)Delay_nus(240);//回復(fù)的低電平在60到240usSET_OUT;SET_DQ;//回到初始DQ=1;}voidwrite_1

溫馨提示

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

評論

0/150

提交評論