基于Zigbee技術(shù)的無線環(huán)境監(jiān)測系統(tǒng)的設(shè)計(jì)_第1頁
基于Zigbee技術(shù)的無線環(huán)境監(jiān)測系統(tǒng)的設(shè)計(jì)_第2頁
基于Zigbee技術(shù)的無線環(huán)境監(jiān)測系統(tǒng)的設(shè)計(jì)_第3頁
基于Zigbee技術(shù)的無線環(huán)境監(jiān)測系統(tǒng)的設(shè)計(jì)_第4頁
基于Zigbee技術(shù)的無線環(huán)境監(jiān)測系統(tǒng)的設(shè)計(jì)_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、陜西理工學(xué)院畢業(yè)設(shè)計(jì)題 目 基于Zigbee技術(shù)的無線環(huán)境監(jiān)測系統(tǒng)的設(shè)計(jì) 學(xué)生姓名 學(xué)號 所在學(xué)院 數(shù)學(xué)與計(jì)算機(jī)科學(xué)技術(shù)學(xué)院 專業(yè)班級 計(jì)算機(jī)科學(xué)與技術(shù)班 指導(dǎo)教師 完成地點(diǎn) 陜西理工學(xué)院 201年 6月13日    本科畢業(yè)設(shè)計(jì)任務(wù)書    院(系) 數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院 專業(yè)班級 計(jì)算機(jī)科學(xué)與技術(shù)(計(jì)算機(jī)) 學(xué)生姓名 一、畢業(yè)設(shè)計(jì)題目 基于Zigbee技術(shù)的無線環(huán)境監(jiān)測系統(tǒng)的設(shè)計(jì) 二、畢業(yè)設(shè)計(jì)工作自 201 年 11 月_ 27_日 起至 201 年 6 月 20 日止三、畢業(yè)設(shè)計(jì)進(jìn)行地點(diǎn): 陜西理工學(xué)院 四、畢業(yè)設(shè)計(jì)內(nèi)容要求:熟

2、悉嵌入式系統(tǒng)的設(shè)計(jì)過程,采用Zigbee技術(shù),傳感器技術(shù),設(shè)計(jì)實(shí)現(xiàn)基于Zigbee技術(shù)的無線環(huán)境監(jiān)測系統(tǒng),畢業(yè)設(shè)計(jì)內(nèi)容主要包括:(1)對環(huán)境信息如溫濕度、光照等通過相應(yīng)的傳感器進(jìn)行采集。(2)串口編程,通過串口通信將采集到的數(shù)據(jù)傳給zigbee通信模塊。 (3)研究Zigbee技術(shù),通過zigbee模塊將采集到的信息發(fā)送到控制端。(4)控制端將接收到信息進(jìn)行保存、信息,提供相應(yīng)的查詢功能。(5)研究如何為系統(tǒng)的管理提供人性化界面及快捷的管理方式。學(xué)生應(yīng)具備的專業(yè)知識: (1)掌握嵌入式系統(tǒng)編程的整體流程。 (2)熟練掌握C語言編程,QT編程。 (3)對zigbee的工作原理和流程有一定的了解,

3、做到熟練使用。成果形式:(1)基于Zigbee技術(shù)的無線環(huán)境監(jiān)測系統(tǒng);(2)畢業(yè)設(shè)計(jì)說明書;(3)用戶手冊。開題時(shí)間:2014年3月15日,并于此前提交開題報(bào)告課題完成時(shí)間:2014年5月30日 答辯時(shí)間:2014年6月10前 指 導(dǎo) 教 師 系(教 研 室) 計(jì)算機(jī)工程教研室 系(教研室)主任簽名 批準(zhǔn)日期 接受設(shè)計(jì)任務(wù)開始執(zhí)行日期 201 學(xué)生簽名 基于zigbee技術(shù)的無線環(huán)境監(jiān)測系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)馬強(qiáng)(陜西理工學(xué)院數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)13班)指導(dǎo)教師:陳【摘要】 本系統(tǒng)研究分析了傳感器、ZigBee技術(shù)的基本理論,設(shè)計(jì)實(shí)現(xiàn)了基于zigbee無線環(huán)境監(jiān)測系統(tǒng)。系統(tǒng)采用8

4、0C52單片機(jī)控制DHT11度傳感器采集溫濕度數(shù)據(jù)、zigbee無線模塊進(jìn)行數(shù)據(jù)傳輸,用戶在服務(wù)器端可實(shí)時(shí)的對環(huán)境參數(shù)進(jìn)行監(jiān)測。經(jīng)過測試系統(tǒng)運(yùn)行穩(wěn)定,采集數(shù)據(jù)準(zhǔn)確,可用于各種不同環(huán)境下的信息監(jiān)測?!娟P(guān)鍵詞】DHT11;無線傳感器; ZigBee;80C52Design and implementation of wireless environmental monitoring system based on ZigBee TechnologyMa longqiang(Shaanxi Institute of mathematics and computer science, computer

5、 science and technology professional 103 class)Teacher: Chen YongAbstract:The system analysis of the basic theory of the sensor, the ZigBee technology,design and implementation of wireless environmental monitoring system based on zigbee. The system uses 80C52 SCM control DHT11 temperature and humidi

6、ty data collected by sensors, ZigBee wireless data transmission module,users can real-time monitoring of environmental parameters on the server. After the test system is stable, accurate data collection, can be used for monitoringvarious environment.Keyword:DHT11 ; environmental monitoring wireless

7、sensor ; ZigBee ; 80C52 目錄引 言11 緒 論21.1 研究背景及現(xiàn)狀21.2 研究目的及意義21.3 開發(fā)工具的選擇22 硬件系統(tǒng)設(shè)計(jì)42.1 設(shè)計(jì)原則42.2 硬件系統(tǒng)結(jié)構(gòu)42.3 數(shù)據(jù)采集模塊62.4 串口通信模塊82.5 相應(yīng)供電模塊93軟件系統(tǒng)設(shè)計(jì)113.1 設(shè)計(jì)原則113.2 軟件系統(tǒng)結(jié)構(gòu)113.3 上位機(jī)監(jiān)控軟件設(shè)計(jì)113.4 單片機(jī)軟件設(shè)計(jì)113.6 zigbee網(wǎng)絡(luò)節(jié)點(diǎn)軟件設(shè)計(jì)143.7 串口軟件設(shè)計(jì)154 系統(tǒng)測試與實(shí)驗(yàn)結(jié)果分析174.1 軟件編譯與燒寫174.2 軟件測試174.3 硬件測試174.4 溫濕度傳感器節(jié)點(diǎn)測試結(jié)果分析17致 謝20參考

8、文獻(xiàn)21科技外文文獻(xiàn)22附 錄A:源程序代碼29附 錄B:系統(tǒng)使用說明34引 言環(huán)境監(jiān)測的主要目標(biāo)是通過檢測環(huán)境變量參數(shù)及變化趨勢的數(shù)據(jù),判斷環(huán)境質(zhì)量,評價(jià)當(dāng)前主要環(huán)境問題,為環(huán)境管理服務(wù)。環(huán)境監(jiān)測是科學(xué)管理環(huán)境和環(huán)境執(zhí)法監(jiān)督的基礎(chǔ)。環(huán)境監(jiān)測是環(huán)境保護(hù)必不可少的基礎(chǔ)性工作,是環(huán)保部門的立身之本。通過環(huán)境監(jiān)測可以搞清楚污染物種類和分布狀況,明確污染途徑,預(yù)測污染變化趨勢,預(yù)警可能出現(xiàn)的環(huán)境問題。環(huán)境監(jiān)測根據(jù)環(huán)境管理的需要來測定、獲取、解釋、運(yùn)用數(shù)據(jù)。環(huán)境監(jiān)測還可作為環(huán)境執(zhí)法監(jiān)督的技術(shù)基礎(chǔ)和技術(shù)仲裁,為環(huán)境管理決策、環(huán)境規(guī)劃、實(shí)施總量控制、排污收費(fèi)、環(huán)境指標(biāo)考核、環(huán)境工程、監(jiān)視污染源排污和評價(jià)治理

9、措施及效果驗(yàn)收服務(wù)。在經(jīng)歷了環(huán)境監(jiān)測是環(huán)境保護(hù)的“眼睛”、“哨兵”、“基礎(chǔ)”、“重要支柱”的認(rèn)識過程后,現(xiàn)在明確提出基于無線網(wǎng)絡(luò)的環(huán)境監(jiān)測是“一項(xiàng)政府行為”,體現(xiàn)了對環(huán)境監(jiān)測重要性認(rèn)識的深化。環(huán)境監(jiān)測在正確認(rèn)識環(huán)境質(zhì)量,解決現(xiàn)存或潛在的環(huán)境問題,改善生活環(huán)境和生態(tài)環(huán)境,協(xié)調(diào)人類和環(huán)境的關(guān)系,最終實(shí)現(xiàn)人類的可持續(xù)發(fā)展中起著舉足輕重的作用。第 34 頁 共 34 頁1 緒 論1.1 研究背景及現(xiàn)狀近年來,隨著無線網(wǎng)絡(luò)技術(shù)的發(fā)展,各種基于無線網(wǎng)絡(luò)傳感器技術(shù)的產(chǎn)品層出不窮。同時(shí),由于環(huán)境的不斷惡化,人們對環(huán)境保護(hù)和環(huán)境監(jiān)測提出了更高的要求,越來越多的企業(yè)和機(jī)構(gòu)都致力于在環(huán)境監(jiān)測系統(tǒng)中應(yīng)用無線傳感器網(wǎng)絡(luò)

10、技術(shù)的研究。基于無線傳感器網(wǎng)絡(luò)的環(huán)境監(jiān)測系統(tǒng)適合于在煤礦、油田安全監(jiān)測,溫室環(huán)境監(jiān)測、環(huán)保部門的大氣監(jiān)測、突發(fā)性環(huán)境事故的預(yù)測及分析、特殊污染企業(yè)的監(jiān)測,生物群種的生態(tài)環(huán)境監(jiān)測以及家庭、辦公室及商場空氣質(zhì)量監(jiān)測等領(lǐng)域應(yīng)用。利用無線傳感器網(wǎng)絡(luò)實(shí)現(xiàn)環(huán)境監(jiān)測的應(yīng)用領(lǐng)域一般具有以下特點(diǎn):(1)無人環(huán)境、環(huán)境惡劣或超遠(yuǎn)距離情況下信息的采集和傳送,保證系統(tǒng)工業(yè)級品質(zhì)安全可靠。(2)生物群種對于外來因素非常敏感,人類直接進(jìn)行的生態(tài)環(huán)境監(jiān)控可能反而會破壞環(huán)境的完整性,包括影響生態(tài)環(huán)境中種群的習(xí)性和分布等。(3)需要較大范圍的通信覆蓋,網(wǎng)絡(luò)中的設(shè)備相對比較多,但僅僅用于監(jiān)測或控制。(4)系統(tǒng)實(shí)施、運(yùn)行費(fèi)用要低,

11、無需鋪設(shè)大量電纜,支持臨時(shí)性安裝,系統(tǒng)易于擴(kuò)展和更新。(5)具有數(shù)據(jù)存儲和歸檔能力,能夠使大量的傳感數(shù)據(jù)存儲到后臺或遠(yuǎn)程數(shù)據(jù)庫,并能夠進(jìn)行離線的數(shù)據(jù)挖掘,數(shù)據(jù)分析也是系統(tǒng)實(shí)現(xiàn)中非常重要的一個(gè)方面。無線傳感器網(wǎng)絡(luò)是由大量節(jié)點(diǎn)組成的面向任務(wù)的分布式網(wǎng)絡(luò),它綜合了傳感器、嵌入式計(jì)算、現(xiàn)代網(wǎng)絡(luò)及無線通信、分布式信息處理等多領(lǐng)域技術(shù),通過各類微型傳感器實(shí)時(shí)采集信息,由嵌入式微處理器對信息進(jìn)行加工處理,并通過無線通信網(wǎng)絡(luò)將信息傳送至遠(yuǎn)程用戶。在國防安全、工農(nóng)業(yè)領(lǐng)域各種控制、城市管理、生物醫(yī)療、環(huán)境監(jiān)測、搶險(xiǎn)救災(zāi)、防恐反恐、危險(xiǎn)區(qū)域遠(yuǎn)程控制等許多領(lǐng)域都有重要的科研價(jià)值和實(shí)用價(jià)值,具有十分廣闊的應(yīng)用前景。無線

12、傳感器網(wǎng)絡(luò)技術(shù)作為信息科學(xué)技術(shù)領(lǐng)域的前沿性技術(shù),已經(jīng)引起了學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注。國外的許多大學(xué)和研究機(jī)構(gòu)紛紛投入大量研發(fā)力量從事無線傳感器網(wǎng)絡(luò)軟硬件系統(tǒng)的研究工作。1.2 研究目的及意義本設(shè)計(jì)以DHT11傳感器為信息采集端,AT89C52單片機(jī)作為控制核心,實(shí)時(shí)監(jiān)測目標(biāo)環(huán)境內(nèi)溫度,濕度等工業(yè)參數(shù),并將實(shí)測值通過zigbee發(fā)送至監(jiān)測終端。系統(tǒng)能對大面積的多點(diǎn)溫度,濕度進(jìn)行監(jiān)測,并將數(shù)據(jù)傳輸?shù)絇C機(jī)上進(jìn)行數(shù)據(jù)存儲與分析。整個(gè)監(jiān)測網(wǎng)絡(luò)是由基于ZigBee技術(shù)的無線溫、溫濕度傳感器節(jié)點(diǎn)和ZigBee無線網(wǎng)關(guān)組成。無線溫、濕度節(jié)點(diǎn)放置于需要測量的現(xiàn)場,執(zhí)行溫度和濕度數(shù)據(jù)采集、預(yù)處理和發(fā)送等工作。通

13、過無線傳感器發(fā)送給接收節(jié)點(diǎn),最后實(shí)時(shí)的顯示溫、濕度信息。本次課題主要是基于zigbee無線環(huán)境監(jiān)測系統(tǒng)的實(shí)現(xiàn),主要是為了解決有線環(huán)境監(jiān)測布線的繁瑣,有線監(jiān)測在環(huán)境變化后更改和重用的難度較大,無人和惡劣環(huán)境下對監(jiān)測的不可實(shí)現(xiàn)性。同時(shí),無線傳感技術(shù)作為國際備受關(guān)注的前沿?zé)狳c(diǎn)領(lǐng)域,致力于提供一種廉價(jià)的固定、便攜或者移動(dòng)設(shè)備使用的極低復(fù)雜度、成本和功耗的低速率無線通信技術(shù)。具有功耗低、數(shù)據(jù)傳輸可靠、網(wǎng)絡(luò)容量大、具有較好的兼容性及安全性?;跓o線網(wǎng)絡(luò)環(huán)境監(jiān)測系統(tǒng)的研究,對于未來人們生活更加智能化有很大的幫助。1.3 開發(fā)工具的選擇本系統(tǒng)的開發(fā)主要用到Keil uVision4 調(diào)試編譯軟件和STC-IS

14、P燒錄軟件把編譯好的軟件燒寫進(jìn)開發(fā)板內(nèi)。Keil uVision4是目前使用廣泛的單片機(jī)集成開發(fā)環(huán)境,這個(gè)集成開發(fā)環(huán)境包含:編譯器,匯編器,實(shí)時(shí)操作系統(tǒng),項(xiàng)目管理器,調(diào)試器。同時(shí)還提供了KEIL C51標(biāo)準(zhǔn)C編譯器,為8051微控制器的軟件開發(fā)提供了C語言環(huán)境,同時(shí)保留了匯編代碼高效,快速的特點(diǎn)。STC-ISP是STC單片機(jī)專用的燒錄軟件,大部分STC單片機(jī)內(nèi)部固化有ISP系統(tǒng)引導(dǎo)程序,配合PC端的控制程序即可將用戶的程序代碼下載進(jìn)單片機(jī)內(nèi)部,故不需要編程器并且速度比通用編程器快。ISP軟件界面如圖1.1所示。 圖1.1 ISP軟件界面具體操作步驟:步驟1:選擇你所使用的單片機(jī)型號,STC89

15、C52RC步驟2:打開文件,要燒錄用戶程序,必須調(diào)入用戶的程序代碼(*.bin,*.hex)步驟 3:選擇串口號步驟4:設(shè)置是否雙倍速,雙倍速選中Double Speed 即可,STC89C52RC系列出廠時(shí)為單倍速,用戶可指定設(shè)為雙倍速,如想從雙倍速恢復(fù)成單倍速,則需用通用編程器擦除整個(gè)晶片方可,這會將單片機(jī)內(nèi)部已燒錄的ISP 引導(dǎo)程序擦除。一般使用缺省設(shè)置即可,無須設(shè)置。OSCDN:單片機(jī)時(shí)鐘振蕩器增益選 1/2 gain 為降一半,降低EMI;選full gain(全增益)為正常狀態(tài)步驟 5:選擇“Download/下載”按鈕下載用戶的程序進(jìn)單片機(jī)內(nèi)部,可重復(fù)執(zhí)行步驟5,也可選 擇“ R

16、e-Download/重復(fù)下載”按鈕。下載時(shí)注意看提示,主要看是否要給單片機(jī)上電或復(fù)位,下載速度比一般通用編程器快。一定要先選擇“Download/下載”按鈕,然后再給單片機(jī)上電復(fù)位(先徹底斷電),而不要先上電。2 硬件系統(tǒng)設(shè)計(jì)環(huán)境監(jiān)測具有區(qū)域內(nèi)的監(jiān)測點(diǎn)數(shù)量多、監(jiān)測時(shí)間長、監(jiān)測情況復(fù)雜等特點(diǎn)。針對傳統(tǒng)環(huán)境監(jiān)測手段的網(wǎng)絡(luò)布局困難、節(jié)點(diǎn)智能化程度低等缺點(diǎn),設(shè)計(jì)了基于ZigBee協(xié)議的無線傳感器環(huán)境監(jiān)測網(wǎng)絡(luò)系統(tǒng)。無線傳感器網(wǎng)絡(luò)是一種由傳感器節(jié)點(diǎn)構(gòu)成的網(wǎng)絡(luò),能夠?qū)崟r(shí)地監(jiān)測、感知和采集節(jié)點(diǎn)部署區(qū)域需要監(jiān)測的各種信息,并對這些信息進(jìn)行處理后以無線的方式傳送,通過無線網(wǎng)絡(luò)最終發(fā)送給監(jiān)控終端。在ZigBee傳

17、感器網(wǎng)絡(luò)中,傳感器節(jié)點(diǎn)兼顧傳統(tǒng)網(wǎng)絡(luò)節(jié)點(diǎn)的終端和路由器雙重功能,在采集、接收、處理及發(fā)送數(shù)據(jù)進(jìn)的同時(shí),還要對其他節(jié)點(diǎn)轉(zhuǎn)發(fā)來的數(shù)據(jù)進(jìn)行存儲、管理和融合等處理,并與其他節(jié)點(diǎn)協(xié)作完成一些特定任務(wù)。這里設(shè)計(jì)一套簡單基于zigbee無線環(huán)境監(jiān)測系統(tǒng),實(shí)時(shí)監(jiān)測某特定環(huán)境中的溫度和濕度,為環(huán)境控制和管理提供準(zhǔn)確的數(shù)據(jù)。本設(shè)計(jì)采用了溫濕度傳感器兩種適用于環(huán)境監(jiān)測的傳感器作為無線網(wǎng)絡(luò)的傳感器節(jié)點(diǎn)??梢詫⑦@些傳感器節(jié)點(diǎn)分布于室內(nèi)或室外環(huán)境中的各個(gè)角落。在網(wǎng)絡(luò)協(xié)調(diào)器(即中心節(jié)點(diǎn))的無線覆蓋范圍之內(nèi),布置若干個(gè)路由節(jié)點(diǎn)和終端節(jié)點(diǎn),實(shí)現(xiàn)網(wǎng)絡(luò)管理和互相通信。根據(jù)系統(tǒng)的需要,傳感器節(jié)點(diǎn)應(yīng)具備以下功能:(1)傳感器信號的采集和

18、處理。(2)無線數(shù)據(jù)的發(fā)送或轉(zhuǎn)發(fā)。(3)友好的人機(jī)交互界面。(4)RS232通訊功能。2.1 設(shè)計(jì)原則(1)盡可能選擇典型電路,并符合單片機(jī)的常規(guī)用法。為硬件電路的標(biāo)準(zhǔn)化、模塊化打下良好基礎(chǔ)。可靠性和抗干擾設(shè)計(jì)是硬件設(shè)計(jì)必不可少的一部分,它包括芯片和器件的選擇、去耦電容、濾波電容、電路板的布線等。(2)盡量朝單片方向設(shè)計(jì)硬件。硬件器件越多,器件之間相互干擾越強(qiáng),功耗也會越大,就會可避免的降低系統(tǒng)的穩(wěn)定性。(3)在速度允許的情況下,盡量使用串行為主的擴(kuò)展方式。串行擴(kuò)展具有方便、靈活、電路簡單、占用I/O資源少等特點(diǎn)。(4)留下一些指示燈或通信口以方便調(diào)試和判別系統(tǒng)問題。 2.2 硬件系統(tǒng)結(jié)構(gòu)根據(jù)

19、系統(tǒng)的組成可將系統(tǒng)化為四大模塊:信息采集模塊、信息傳輸模塊、信息處理及顯示終端、信息預(yù)警系統(tǒng)。系統(tǒng)功能模塊如圖2.1所示。圖2.1 系統(tǒng)功能模塊圖無線傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)通常由傳感器模塊、微處理器模塊、無線通信模塊和電源模塊構(gòu)成。微處理器和無線通信模塊采用支持ZigBee協(xié)議的片上系統(tǒng)級芯片CC2530,大大簡化了射頻電路的設(shè)計(jì)。傳感器模塊采用集成溫濕度傳感器DHT11,電源采用USB供電。系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)如圖2.2所示。圖2.2 系統(tǒng)結(jié)構(gòu)圖微處理器模塊負(fù)責(zé)控制整個(gè)節(jié)點(diǎn)的數(shù)據(jù)處理操作、路由協(xié)議、功耗管理、任務(wù)管理等,最主要的是需要實(shí)現(xiàn)網(wǎng)絡(luò)安全可靠的通信協(xié)議;無線通信模塊負(fù)責(zé)與其他節(jié)點(diǎn)進(jìn)行無線通信,交換

20、控制消息和收發(fā)數(shù)據(jù)。數(shù)據(jù)采集模塊主要負(fù)責(zé)監(jiān)測區(qū)域內(nèi)信息的采集并將各種傳感器(如溫度、濕度)采集的信號轉(zhuǎn)變?yōu)閿?shù)字信號并傳送給微處理器模塊。路由器節(jié)點(diǎn)和終端設(shè)備節(jié)點(diǎn)上都有數(shù)據(jù)采集模塊。電源模塊管理單元節(jié)點(diǎn)類型不同有不同的供電方式,在終端設(shè)備節(jié)點(diǎn)上,電源USB供電,協(xié)調(diào)器的電源是用USB供電或者交流電供電。在協(xié)調(diào)器上還有RS-232串口,與監(jiān)控主機(jī)通訊。因?yàn)榇髿猸h(huán)境監(jiān)測的地理形狀可能比較復(fù)雜,而且有時(shí)候可能根據(jù)需要移動(dòng)節(jié)點(diǎn),節(jié)點(diǎn)位置不固定,要求系統(tǒng)能根據(jù)具體的地理位置調(diào)整監(jiān)測的范圍和傳輸路徑,要求系統(tǒng)有很大的靈活性和自組織性,因此選擇具有自組織式的和自恢復(fù)式的網(wǎng)狀網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。2.2 微處理器模塊微

21、處理器是無線傳感器節(jié)點(diǎn)的核心。它采集并處理傳感器數(shù)據(jù),與無線模塊通訊并判斷何時(shí)發(fā)送和接收這些數(shù)據(jù),控制人機(jī)操作界面以及通過串口與上位機(jī)通訊。處理器必須運(yùn)行各種程序,包括時(shí)間要求嚴(yán)格的信號處理、通信協(xié)議、以及應(yīng)用程序。它是節(jié)點(diǎn)的中央處理單元(CPU)。多種處理任務(wù)可以在不同結(jié)構(gòu)的處理器上執(zhí)行,任務(wù)的分配需要考慮可行性、性能、能量效率以及成本之間的折中問題。本設(shè)計(jì)中微處理器采用TI公司的CC2530芯片和AT89C52單片機(jī)芯片共同組成。(1)CC2530芯片介紹CC2530它是ZigBee應(yīng)用的一個(gè)真正的片上系統(tǒng)解決方案,它能夠以非常低的材料成本建立強(qiáng)大的網(wǎng)絡(luò)節(jié)點(diǎn)。結(jié)合了性能優(yōu)良的RF收發(fā)器、業(yè)

22、界標(biāo)準(zhǔn)的增強(qiáng)型8051CPU、最大128KB的可編程閃存和8KB的RAM。CC2530具有不同的運(yùn)營模式,使其特別適合于超低功耗要求的場合。由于CC2530芯片內(nèi)集成了許多特色功能模塊,因此,其典型的外圍電路也就非常簡潔。其中,主時(shí)鐘晶振采用32MHZ無源晶振以及32.768KHZ時(shí)鐘晶振;無線RF模塊外圍電路采用無巴倫的阻抗匹配網(wǎng)絡(luò);天線使用50歐鞭狀負(fù)極性天線。CC2530配合很少的外圍元件就可以組成無線通信模塊。如圖2.3所示。圖2.3 CC2530外圍硬件電路原理圖CC2530芯片的主要特點(diǎn)如下:(1)工作頻帶:2405MHz2480MHz(2)支持802.15.4、ZigBee200

23、7、ZigBee PRO和ZigBee RF4CE等標(biāo)準(zhǔn)(3)主控芯片:CC2530F256(4)通信協(xié)議標(biāo)準(zhǔn):IEEE 802.15.4(5)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu):星狀、網(wǎng)狀(6)數(shù)據(jù)傳輸速率:250Kbps(7)天線模式:外置天線 (8)通信范圍:300米450米(9)接收靈敏度:-97dBm(10)發(fā)射電流:29mA(11)接收電流:24mA(12)工作溫度:-4085(13)電源:2.0V3.6V(14)模塊外形尺寸:40×34mm(2)AT89C52單片機(jī)最小系統(tǒng)設(shè)計(jì) 單片機(jī)供電電路:AT89C52需要可靠的5V供電,在電路圖中的VCC和GND為供電網(wǎng)絡(luò)標(biāo)識符;振蕩電路:AT89C

24、52需要一個(gè)穩(wěn)定的振蕩電路才能夠正常工作,單片機(jī)的時(shí)鐘信號是用來提供單片機(jī)內(nèi)各種微操作的基準(zhǔn)。在該電路中采用了12MHz的晶振作為AT89C52的時(shí)鐘源;這里采用的是內(nèi)部振蕩方式,在引腳XTAL1和XTAL2外接晶振,通過內(nèi)部振蕩得到的時(shí)鐘信號比較穩(wěn)定,在電路中使用較多。在下面的電路圖中可以看到在晶振兩側(cè)連了兩個(gè)電容C2,C3,它們是起穩(wěn)定振蕩頻率、快速起振的作用,電容值一般為530pF。本設(shè)計(jì)中用的是30pF的電容。 復(fù)位電路:復(fù)位電路是單片機(jī)正常運(yùn)行的一個(gè)必要部分。復(fù)位操作一般有兩種基本形式:上電復(fù)位和開關(guān)復(fù)位。在本設(shè)計(jì)中采用的是第二種。復(fù)位電路應(yīng)該保證單片機(jī)在上電的瞬間進(jìn)行一次有效的復(fù)位

25、,在單片機(jī)正常工作時(shí)將RST引腳置低。此外通過一個(gè)按鍵進(jìn)行手動(dòng)復(fù)位,在單片機(jī)運(yùn)行不正常時(shí)使用。上電后,由于電容充電,是RST持續(xù)一段高電平時(shí)間。當(dāng)單片機(jī)已經(jīng)在運(yùn)行時(shí),按下復(fù)位鍵也能使RST持續(xù)一段高電平,從而實(shí)現(xiàn)上電且開關(guān)復(fù)位的操作。通常我們選擇的復(fù)位電容為1050µF,電阻為110k。在本設(shè)計(jì)中復(fù)位電容選的是47µF的,電阻選的是10k的。2.3 數(shù)據(jù)采集模塊數(shù)據(jù)采集模塊的設(shè)計(jì)主要包括傳感器的選擇以及與微處理器的連接電路。本次設(shè)計(jì)基于大氣環(huán)境監(jiān)測,主要采集大氣的溫度,濕度。在傳感器的選擇中,需要考慮量程,精度需求,供電電壓以及功耗。經(jīng)過對市場中的傳感器各方面的比較,選用了

26、DHT-11溫濕度傳感器測量環(huán)境的溫度,濕度。(1)溫濕度傳感器DHT11介紹DHT11數(shù)字溫濕度傳感器是一款含有已校準(zhǔn)數(shù)字信號輸出的溫濕度復(fù)合傳感器。它應(yīng)用專用的數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品具有極高的可靠性與卓越的長期穩(wěn)定性。傳感器包括一個(gè)電阻式感濕元件和一個(gè)NTC測溫元件,并與一個(gè)高性能8位單片機(jī)相連接。因此該產(chǎn)品具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性價(jià)比極高等優(yōu)點(diǎn)。每個(gè)DHT11傳感器都在極為精確的濕度校驗(yàn)室中進(jìn)行校準(zhǔn)。校準(zhǔn)系數(shù)以程序的形式儲存在OTP內(nèi)存中,傳感器內(nèi)部在檢測信號的處理過程中要調(diào)用這些校準(zhǔn)系數(shù)。單線制串行接口,使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗

27、,信號傳輸距離可達(dá)20米以上,使其成為各類應(yīng)用甚至最為苛刻的應(yīng)用場合的最佳選則。產(chǎn)品為4針單排引腳封裝。連接方便,特殊封裝形式可根據(jù)用戶需求而提供。其溫濕度傳感器參數(shù)如表2.1所示。表2.1 DHT11溫濕度傳感器特性參數(shù)參數(shù)條件MinTypMax單位濕度分辨率111%RH16Bit重復(fù)性±1%RH精度25±4%RH050±5%RH互換性可完全互換量程范圍03090%RH252090%RH502080%RH響應(yīng)時(shí)間1/e(63%)25,1m/s 空氣61015S遲滯±1%RH長期穩(wěn)定性典型值±1%RH/yr溫度分辨率111161616Bit重復(fù)

28、性±1精度±1±2量程范圍050響應(yīng)時(shí)間1/e(63%)630SDHT11的接口在功耗以及信號讀取方面做了優(yōu)化,通過類似于IIC的兩線制串口接口與處理器直接連接。其與微控制器的接口如圖2.4所示。SCK 用于微處理器與DHT11之間的同步通訊,可以接到微控制器的I/O口,通過I/O口模擬時(shí)鐘信號來實(shí)現(xiàn)。由于接口包含了完全靜態(tài)邏輯,所以不存在最小的SCK頻率,但是當(dāng)供電電壓小于4.5V時(shí)最大頻率為1MHz。DATA三態(tài)門用于數(shù)據(jù)的讀取,DATA在SCK時(shí)鐘下降沿之后改變狀態(tài),并僅在SCK時(shí)鐘上升沿有效。數(shù)據(jù)傳輸期間,在SCK時(shí)鐘高電平時(shí),DATA必須保持穩(wěn)定。為避免

29、信號沖突,微處理器應(yīng)驅(qū)動(dòng)DATA在低電平。需要一個(gè)外部的上拉電阻將信號提拉至高電平,DHT11與微處理器接口電路圖如圖2.4所示。圖2.4 DHT11與微處理器接口電路圖DHT11含有四個(gè)引腳各個(gè)引腳都有不同的功能,因此對引腳作以說明。DHT11引腳如表2.2所示表2.2 DHT11引腳說明pin名稱注釋1VDD35.5VDC2DATA串行數(shù)據(jù),單總線3NC空腳,請懸空4GND接地,電源負(fù)極 (2)溫濕度傳感器DHT11數(shù)據(jù)傳輸方式DATA用于微處理器與DHT11之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時(shí)間4ms左右,數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說明,當(dāng)前小數(shù)部分用于以后擴(kuò)展

30、,現(xiàn)讀出為零.操作流程如下:一次完整的數(shù)據(jù)傳輸為40bit,高位先出。數(shù)據(jù)格式:8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù) +8bit校驗(yàn)和數(shù)據(jù)傳送正確時(shí)校驗(yàn)和數(shù)據(jù)等于“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結(jié)果的末8位。MCU發(fā)送一次開始信號后,DHT11從低功耗模式轉(zhuǎn)換到高速模式,等待主機(jī)開始信號結(jié)束后,DHT11發(fā)送響應(yīng)信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信號采集,此時(shí)可選擇讀取部分?jǐn)?shù)據(jù).從模式下,DHT11接收到開始信號觸發(fā)一次溫濕度采集,如果沒有接收到主機(jī)發(fā)送開始信號,DHT11不會主動(dòng)進(jìn)

31、行溫濕度采集.采集數(shù)據(jù)后轉(zhuǎn)換到低速模式??偩€空閑狀態(tài)為高電平,主機(jī)把總線拉低等待DHT11響應(yīng),主機(jī)把總線拉低必須大于18毫秒,保證DHT11能檢測到起始信號。DHT11接收到主機(jī)的開始信號后,等待主機(jī)開始信號結(jié)束,然后發(fā)送80us低電平響應(yīng)信號.主機(jī)發(fā)送開始信號結(jié)束后,延時(shí)等待20-40us后, 讀取DHT11的響應(yīng)信號,主機(jī)發(fā)送開始信號后,可以切換到輸入模式,或者輸出高電平均可, 總線由上拉電阻拉高??偩€為低電平,說明DHT11發(fā)送響應(yīng)信號,DHT11發(fā)送響應(yīng)信號后,再把總線拉高80us,準(zhǔn)備發(fā)送數(shù)據(jù),每1bit數(shù)據(jù)都以50us低電平時(shí)隙開始,高電平的長短定了數(shù)據(jù)位是0還是1。如果讀取響應(yīng)

32、信號為高電平,則DHT11沒有響應(yīng),請檢查線路是否連接正常。當(dāng)最后1bit數(shù)據(jù)傳送完畢后,DHT11拉低總線50us,隨后總線由上拉電阻拉高進(jìn)入空閑狀態(tài)。2.4 串口通信模塊串行通信是在一根傳輸線上一位一位的傳送信息,所用的傳輸線少,并且可以借助現(xiàn)成的電話網(wǎng)進(jìn)行信息傳送,因此,特別適合于遠(yuǎn)距離傳輸。對于那些與計(jì)算機(jī)相距不遠(yuǎn)的人機(jī)交換設(shè)備和串行存儲的外部設(shè)備如終端、打印機(jī)、邏輯分析儀、磁盤等,采用串行方式交換數(shù)據(jù)也很普遍。所以串行接口是微機(jī)應(yīng)用系統(tǒng)常用的接口。許多外設(shè)和計(jì)算機(jī)按串行方式進(jìn)行通信,這里所說的串行方式,是指外設(shè)與接口電路之間的信息傳送方式,實(shí)際上,CPU與接口之間仍按并行方式工作。在

33、單片機(jī)系統(tǒng)中,串口是一個(gè)非常重要的組成部分。通常使用單片機(jī)串口通過RS232接口和電平轉(zhuǎn)換芯片MAX232與上位機(jī)連接,以進(jìn)行上位機(jī)與下位機(jī)的數(shù)據(jù)交換、參數(shù)設(shè)置、組成網(wǎng)絡(luò)以及各種外部設(shè)備的連接等。RS232串行接口總線具有成本低、簡單可靠、容易使用等特點(diǎn),加上其歷史悠久,所以目前應(yīng)用仍然非常廣泛;特別對于數(shù)據(jù)量不是很大的場合,串口通信仍然是很好的選擇,有著廣闊的使用前景。在單片機(jī)編程中,串口占了很重要的地位。通信接口的選擇:為了便于QT2440開發(fā)板和各種外圍設(shè)備的串行通信連接,更廣義地來講是為了各種數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通信設(shè)備(DCE)之間的連接,制定了若干種串行通信接口標(biāo)準(zhǔn)。只要是

34、符合某種標(biāo)準(zhǔn)的設(shè)備之間就可以直接互相連接、互相通信。串行通信接口按電氣標(biāo)準(zhǔn)及協(xié)議來分包括RS-232、RS-422、RS485、USB等。 RS-232、RS-422與RS-485標(biāo)準(zhǔn)只對接口的電氣特性做出規(guī)定,不涉及接插件、電纜或協(xié)議。USB是近幾年發(fā)展起來的新型接口標(biāo)準(zhǔn),主要應(yīng)用于高速數(shù)據(jù)傳輸領(lǐng)域。在本設(shè)計(jì)中,選擇RS-232接口就可以滿足通信需求了。微控制器通過RS232與上位機(jī)通信。如圖2.5所示。串口芯片選擇MAX232,MAX232配備專有的低漏失電壓發(fā)射器輸出狀態(tài),通過雙電荷泵,在3.0V至5.5V供壓下,表現(xiàn)出真正的RS232協(xié)議器件性能,這些器件只需4個(gè)0.1µF的

35、外部小電容,用于電荷泵。發(fā)光二極管TX-LED,RX-LED用來觀察MAX232工作是否正常,是否有數(shù)據(jù)通過該模塊,RS232電路圖如圖2.5所示。圖2.5 RS232電路對于終端節(jié)點(diǎn),微控制器與232之間采用標(biāo)準(zhǔn)的MODBUS協(xié)議進(jìn)行通訊,用于設(shè)置終端節(jié)點(diǎn)的系統(tǒng)參數(shù)。對于中心節(jié)點(diǎn),微控制器將無線模塊接收到的數(shù)據(jù)通過232傳到上位機(jī)軟件顯示。2.5 相應(yīng)供電模塊無線傳感器網(wǎng)絡(luò)一般應(yīng)具有移動(dòng)性,所以節(jié)點(diǎn)大多數(shù)需要采用電池供電,從上面各章節(jié)可以看出,在硬件元器件的選取中,已經(jīng)考慮到了盡量降低系統(tǒng)的功耗,各個(gè)模塊的供電電壓都比較低,綜合比較,可以采用2節(jié)1.5V的堿性電池進(jìn)行供電。電源原理圖如圖2.

36、6所示。圖2.6 電源電路圖由于仿真器可以提供穩(wěn)定的電壓,也可以選擇匹配電源。在電源模塊的設(shè)計(jì)時(shí),采用開關(guān)選擇是否選用外接電池供電或者電腦供電,這樣可以在調(diào)試和燒寫程序的時(shí)候采用電腦供電,保持電壓的穩(wěn)定,在應(yīng)用時(shí)采用電池供電。這樣即可以簡化電源電路的設(shè)計(jì),又可以保證調(diào)試的正常進(jìn)行。而協(xié)調(diào)器的電源則是應(yīng)用USB供電或者交流電供電。3軟件系統(tǒng)設(shè)計(jì)3.1 設(shè)計(jì)原則(1)明確任務(wù),弄清軟件所承擔(dān)的任務(wù)細(xì)節(jié)。(2)軟件結(jié)構(gòu)設(shè)計(jì),合理的軟件結(jié)構(gòu)是設(shè)計(jì)出一個(gè)性能優(yōu)良的單片機(jī)應(yīng)用系統(tǒng)軟件的基礎(chǔ)。模塊化程序設(shè)計(jì),是單片機(jī)應(yīng)用中最常用的程序設(shè)計(jì)技術(shù)。將一個(gè)完整的程序分解成若干個(gè)功能相對獨(dú)立的較小的程序模塊,對各個(gè)

37、程序模塊分別進(jìn)行設(shè)計(jì)、編制和調(diào)試,最后將各個(gè)調(diào)試好的程序模塊進(jìn)行聯(lián)調(diào)。 而面向?qū)ο蟪绦蛟O(shè)計(jì)的數(shù)據(jù)抽象可以在保持外部接口不變的情況下改變內(nèi)部實(shí)現(xiàn),從而減少甚至避免對外界的干擾;通過繼承大幅減少冗余的代碼,并可以方便地?cái)U(kuò)展現(xiàn)有代碼,提高編碼效率,也減低了出錯(cuò)概率,降低軟件維護(hù)的難度;結(jié)合面向?qū)ο蠓治?、面向?qū)ο笤O(shè)計(jì),允許將問題域中的對象直接映射到程序中,減少軟件開發(fā)過程中中間環(huán)節(jié)的轉(zhuǎn)換過程。 (3)編寫程序。根據(jù)系統(tǒng)功能和操作過程,列出程序的功能流程圖。在完成流程圖的設(shè)計(jì)之后,便可編寫程序了。3.2 軟件系統(tǒng)結(jié)構(gòu)軟件系統(tǒng)設(shè)計(jì)可分為單片機(jī)軟件設(shè)計(jì)、zigbee無線通信模塊軟件設(shè)計(jì)、串口通信模塊軟件設(shè)計(jì)

38、。如圖3.1所示。圖3.1 軟件設(shè)計(jì)模塊功能圖3.3 上位機(jī)監(jiān)控軟件設(shè)計(jì)上位機(jī)軟件是一個(gè)軟件系統(tǒng),它負(fù)責(zé)完成采集終端采集到數(shù)據(jù)的顯示,存儲。它提供了一個(gè)顯示數(shù)據(jù)和控制節(jié)點(diǎn)工作的界面。圖中只顯示了傳感器節(jié)點(diǎn)采集到的數(shù)據(jù),當(dāng)上位機(jī)緩沖器接收到協(xié)調(diào)器傳來的數(shù)據(jù)時(shí),會觸發(fā)一個(gè)串口消息事件,然后開始讀取數(shù)據(jù)。上位機(jī)監(jiān)控界面也可以對網(wǎng)絡(luò)中的節(jié)點(diǎn)發(fā)送命令,按下“打開串口”和“關(guān)閉串口”按鈕可以控制節(jié)點(diǎn)是否采集數(shù)掘,這些命令通過串口發(fā)送給協(xié)調(diào)器,然后通過協(xié)調(diào)器再將其轉(zhuǎn)發(fā)到網(wǎng)絡(luò)中的所有節(jié)點(diǎn)上,節(jié)點(diǎn)收到命令之后,會按照相應(yīng)的命令進(jìn)行數(shù)據(jù)采集操作。3.4 單片機(jī)軟件設(shè)計(jì)單片機(jī)采用C52在keil uvision4的

39、開發(fā)環(huán)境進(jìn)行編程,在仿真軟件中調(diào)試成功后,再把生成的HEX文件燒到單片機(jī)中,在真實(shí)的硬件環(huán)境下進(jìn)行測試。具體設(shè)計(jì)主要分兩部分,一是溫濕度傳感器的驅(qū)動(dòng)和測溫程序,另一個(gè)是利用單片機(jī)串口編寫的無線傳輸程序。下面將對程序中的關(guān)鍵部分進(jìn)行闡述。溫濕度傳感器接口軟件設(shè)計(jì)單片機(jī)從DHT11完成溫濕度數(shù)據(jù)讀取要經(jīng)過以下步驟:單片機(jī)發(fā)送一次開始信號后,DHT11從低功耗模式轉(zhuǎn)換到高速模式,等待主機(jī)開始信號結(jié)束后,DHT11發(fā)送響應(yīng)信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信號采集,用戶可選擇讀取部分?jǐn)?shù)據(jù).從模式下,DHT11接收到開始信號觸發(fā)一次溫濕度采集,如果沒有接收到主機(jī)發(fā)送開始信號,DHT11不會主動(dòng)進(jìn)行溫

40、濕度采集。采集數(shù)據(jù)后轉(zhuǎn)換到低速模式。流程圖如圖3.2所示。圖3.2 單片機(jī)軟件設(shè)計(jì)的流程圖主要源碼如下void COM(void)U8 i; for(i=0;i<8;i+)/對一個(gè)字節(jié)進(jìn)行編碼 U8FLAG=2; while(!P2_0)&&U8FLAG+);Delay_10us();Delay_10us();Delay_10us(); U8temp=0; if(P2_0)U8temp=1; U8FLAG=2;while(P2_0)&&U8FLAG+); if(U8FLAG=1)break; /超時(shí)則跳出for循環(huán) U8comdata<<=1;

41、 U8comdata|=U8temp; /0 void RH(void)/主機(jī)拉低18ms P2_0=0; Delay(180);P2_0=1;/總線由上拉電阻拉高 主機(jī)延時(shí)20usDelay_10us();Delay_10us();Delay_10us();Delay_10us();/主機(jī)設(shè)為輸入 判斷從機(jī)響應(yīng)信號 P2_0=1;/判斷從機(jī)是否有低電平響應(yīng)信號 如不響應(yīng)則跳出,響應(yīng)則向下運(yùn)行 if(!P2_0) /T ! U8FLAG=2; /判斷從機(jī)是否發(fā)出 80us 的低電平響應(yīng)信號是否結(jié)束 while(!P2_0)&&U8FLAG+); U8FLAG=2; /判斷從機(jī)是

42、否發(fā)出 80us 的高電平,如發(fā)出則進(jìn)入數(shù)據(jù)接收狀態(tài) while(P2_0)&&U8FLAG+); /數(shù)據(jù)接收狀態(tài) COM(); U8RH_data_H_temp=U8comdata; COM(); U8RH_data_L_temp=U8comdata; COM(); U8T_data_H_temp=U8comdata; COM(); U8T_data_L_temp=U8comdata; COM(); U8checkdata_temp=U8comdata; P2_0=1; /數(shù)據(jù)校驗(yàn) U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_da

43、ta_H_temp+U8RH_data_L_temp); if(U8temp=U8checkdata_temp) U8RH_data_H=U8RH_data_H_temp; U8RH_data_L=U8RH_data_L_temp; U8T_data_H=U8T_data_H_temp; U8T_data_L=U8T_data_L_temp; U8checkdata=U8checkdata_temp; 3.5 節(jié)點(diǎn)程序設(shè)計(jì)流程與開發(fā)平臺在對節(jié)點(diǎn)進(jìn)行軟件設(shè)計(jì)過程中,需要經(jīng)歷軟件平臺安裝、編程、生成可執(zhí)行文件、寫入可執(zhí)行文件和軟件調(diào)試等幾個(gè)步驟,具體流程圖如圖3.3所示。圖3.3 軟件設(shè)計(jì)流程圖本

44、文的軟件開發(fā)設(shè)計(jì)平臺采用QT,編程語言采用C語言。由于C語言具有簡單易懂、采用模塊化的程序結(jié)構(gòu)、編寫效率高等特點(diǎn),因此開發(fā)周期短、可讀性高也便于修改。3.6 zigbee網(wǎng)絡(luò)節(jié)點(diǎn)軟件設(shè)計(jì)在設(shè)計(jì)中所有數(shù)據(jù)都發(fā)往協(xié)調(diào)器,如果協(xié)調(diào)器失效,會導(dǎo)致所有數(shù)據(jù)不斷重發(fā),影響網(wǎng)絡(luò)運(yùn)行。協(xié)調(diào)器工作流程圖如圖3.3所示。它的事件主要有接收子節(jié)點(diǎn)發(fā)來的數(shù)據(jù),將數(shù)據(jù)顯示,上傳至監(jiān)控主機(jī),按鍵命令等。圖3.4 協(xié)調(diào)器工作流程圖協(xié)調(diào)器上電后,初始化板上硬件、軟件,建立網(wǎng)絡(luò):協(xié)調(diào)器通過掃描空信道嘗試建立一個(gè)新的網(wǎng)絡(luò)。作為掃描過程的一步,協(xié)調(diào)器從當(dāng)前頻帶的第一個(gè)信道開始發(fā)送BEACON_REQ幀。如果有另一個(gè)協(xié)調(diào)器處于同一信

45、道,它將響應(yīng)BEACON_REQ,而原來的協(xié)調(diào)器將認(rèn)為此信道已被占用。然后它會切換到下一個(gè)信道并重復(fù)該過程直到?jīng)]有接收到任何對其BEACON_REQ幀的響應(yīng)時(shí)為止。一旦找到某個(gè)信道為空,它會選擇一個(gè)隨機(jī)的個(gè)人區(qū)域網(wǎng)絡(luò)(Personal Area Network,PAN)ID并開始偵聽該信道。此時(shí)就建立了網(wǎng)絡(luò)。從現(xiàn)在開始,如果另一個(gè)協(xié)調(diào)器廣播BEACON_REQ 幀,我們原來的協(xié)調(diào)器將響應(yīng)并聲明其存在。該協(xié)調(diào)器準(zhǔn)備開始接受新的終端設(shè)備節(jié)點(diǎn)加入其網(wǎng)絡(luò)。當(dāng)一個(gè)新的終端設(shè)備希望加入網(wǎng)絡(luò)時(shí),它首先會發(fā)出BEACON_REQ以檢測是否存在協(xié)調(diào)器。一旦終端設(shè)備確認(rèn)了在某個(gè)特定的信道上存在協(xié)調(diào)器時(shí),它會開始進(jìn)

46、行關(guān)聯(lián)或孤立通知過程,以加入或重新加入網(wǎng)絡(luò),一個(gè)協(xié)調(diào)器只可以加入六個(gè)節(jié)點(diǎn),當(dāng)它加滿時(shí),其它節(jié)點(diǎn)若想加入此網(wǎng)絡(luò),即需要尋找子節(jié)點(diǎn)加入,依次即可形成龐大的網(wǎng)絡(luò)。ZigBee協(xié)議棧運(yùn)行在一個(gè)OSAL(操作系統(tǒng)抽象層)操作系統(tǒng)上。該操作系統(tǒng)基于任務(wù)調(diào)度機(jī)制,通過對任務(wù)的事件觸發(fā)來實(shí)現(xiàn)任務(wù)調(diào)度。每個(gè)任務(wù)都包含若干個(gè)事件,每個(gè)事件都對應(yīng)一個(gè)事件號。當(dāng)一個(gè)事件產(chǎn)生時(shí),對應(yīng)任務(wù)的事件就被設(shè)置為相應(yīng)的事件號,這樣,事件調(diào)度就會調(diào)用相應(yīng)的任務(wù)處理程序。OSAL中的任務(wù)可以通過任務(wù)API將其添加到系統(tǒng)中,這樣就可以實(shí)現(xiàn)多任務(wù)機(jī)制。當(dāng)收到其他節(jié)點(diǎn)的加入網(wǎng)絡(luò)的請求時(shí),協(xié)調(diào)器會給這個(gè)節(jié)點(diǎn)分配一個(gè)網(wǎng)絡(luò)地址。協(xié)調(diào)器節(jié)點(diǎn)在本設(shè)

47、計(jì)中主要用來接收所有節(jié)點(diǎn)的數(shù)據(jù),顯示在自己的LCD上,并將接收到的數(shù)據(jù)全部上傳至監(jiān)控主機(jī)以便于數(shù)據(jù)的分析和保存。在此期間,也可以向下發(fā)送命令。若有多個(gè)設(shè)備節(jié)點(diǎn)同時(shí)向協(xié)調(diào)器節(jié)點(diǎn)發(fā)送請求,協(xié)調(diào)器節(jié)點(diǎn)來不及響應(yīng)處理會丟掉一些請求,發(fā)現(xiàn)自己的請求未得到響應(yīng)的設(shè)備節(jié)點(diǎn)過幾秒鐘再次發(fā)出請求,直到得到協(xié)調(diào)器節(jié)點(diǎn)的響應(yīng)為止。協(xié)調(diào)器不休眠,它會一直處于正常工作狀態(tài)。當(dāng)協(xié)調(diào)器將網(wǎng)絡(luò)建立好之后,協(xié)調(diào)器在網(wǎng)絡(luò)中的作用與路由器相同。如果斷掉協(xié)調(diào)器,網(wǎng)絡(luò)還可以維持,即可以繼續(xù)進(jìn)行數(shù)據(jù)傳輸?shù)?,但是不能有新的?jié)點(diǎn)加入。由于在設(shè)計(jì)中所有數(shù)據(jù)都發(fā)往協(xié)調(diào)器,如果協(xié)調(diào)器失效,會導(dǎo)致所有數(shù)據(jù)不斷重發(fā),影響網(wǎng)絡(luò)運(yùn)行。3.7 串口軟件設(shè)計(jì)

48、用C+具體實(shí)現(xiàn)串口的通信,必須掌握Qt中對串口操作的方法,每種語言都提供了對串口讀寫操作。在這里我們使用Qt提供的API通信函數(shù)實(shí)現(xiàn)步驟是,它是先打開串口,在得到串口句柄后,再進(jìn)行串口參數(shù)的配置。步驟如圖3.5所示。圖3.5 串口通信程序?qū)崿F(xiàn)步驟源碼如下:QMyCom:QMyCom(QObject *parent) : QObject(parent) myCom = new Win_QextSerialPort("COM5",QextSerialBase:EventDriven); /創(chuàng)建串口對象,指定串口名和查詢方式 myCom->open(QIODevice:Re

49、adWrite); /以讀寫方式打開 myCom->setBaudRate(BAUD19200); /設(shè)置波特率 myCom->setDataBits(DATA_8); /設(shè)置數(shù)據(jù)位 myCom->setParity(PAR_NONE); /設(shè)置奇偶校驗(yàn),無校驗(yàn) myCom->setStopBits(STOP_1); /設(shè)置終止位,1位 myCom->setFlowControl(FLOW_OFF); /設(shè)置數(shù)據(jù)流控制,無數(shù)流控制 myCom->setTimeout(500);/ QMessageBox:information(0,"write&q

50、uot;,"123"); QObject:connect(myCom,SIGNAL(readyRead(),this,SLOT(readCom();4 系統(tǒng)測試與實(shí)驗(yàn)結(jié)果分析4.1 軟件編譯與燒寫軟件是系統(tǒng)實(shí)現(xiàn)的關(guān)鍵,程序代碼的好壞直接影響系統(tǒng)實(shí)現(xiàn)的優(yōu)劣,PC機(jī)通過與單片機(jī)相連,將已編譯好的程序下載到目標(biāo)開發(fā)板上的C52單片機(jī)中,單片機(jī)通過程序控制傳感器進(jìn)行數(shù)據(jù)采集。具體操作步驟如下:(1) 啟動(dòng)程序燒錄軟件。(2)在打開的界面中設(shè)置端口號、波特率、單片機(jī)型號。(3)在界面中點(diǎn)擊選擇程序文件項(xiàng),選擇需要燒錄的程序,保證單片機(jī)型號設(shè)置成AT89C52,選擇好要燒錄程序文件后,

51、點(diǎn)擊download,即可進(jìn)行程序到單片機(jī)處理器的下載。 (4) 將燒好程序的單片機(jī)芯片,插入已經(jīng)焊好的面包板上,進(jìn)行上電,傳感器即開始溫濕度數(shù)據(jù)的采集。4.2 軟件測試(1)傳感器采樣程序測試26:以1 s或2s間隔頻率采集各個(gè)傳感器,連續(xù)采集24小時(shí)以上,觀察數(shù)據(jù)顯示是否有異常數(shù)據(jù)出現(xiàn)。測試結(jié)果:采樣正常,數(shù)據(jù)可靠。(2)單片機(jī)與無線模塊通訊測試:單片機(jī)每采樣到一次傳感器信號,處理后及時(shí)將數(shù)據(jù)發(fā)送到無線模塊,通過觀察電路板上的通訊指示燈觀察無線模塊是否接收到數(shù)據(jù)。測試結(jié)果:無線模塊接收正常。(3)顯示終端監(jiān)控界面程序測試:多次重復(fù)操作按鍵菜單,設(shè)置各個(gè)系統(tǒng)參數(shù),查看程序是否跑死,分析是否有

52、bug。測試結(jié)果:程序運(yùn)行無錯(cuò)誤,無死機(jī)現(xiàn)象。(4)預(yù)警模塊程序測試,設(shè)置溫濕度范圍偏小,使得采集到的數(shù)據(jù)超出監(jiān)測范圍,查看綁定的手機(jī)是否會收到短信報(bào)警提醒。4.3 硬件測試本設(shè)計(jì)中硬件網(wǎng)絡(luò)節(jié)點(diǎn)實(shí)物圖如圖4.1所示。圖4.1 網(wǎng)絡(luò)節(jié)點(diǎn)實(shí)物圖電路板焊接完畢后,找出硬件整體上的錯(cuò)誤,如接口松動(dòng)、接觸不良,電源不穩(wěn)定等。(1)穩(wěn)定性測試:長時(shí)間運(yùn)行系統(tǒng)檢查電源電壓,傳感器,無線模塊等。經(jīng)測試系統(tǒng)各電源運(yùn)行正常,電壓均在正常值范圍之內(nèi);傳感器工作正常,采樣的數(shù)據(jù)正確;無線模塊無死機(jī)現(xiàn)象。(2)硬件安全性:檢查各類接口,保證電路不出現(xiàn)短路等問題。長時(shí)間運(yùn)行程序并檢查芯片工作情況與工作狀態(tài)(溫度、電壓等)

53、。經(jīng)測試系統(tǒng)各接口運(yùn)行正常。4.4 溫濕度傳感器節(jié)點(diǎn)測試結(jié)果分析在本設(shè)計(jì)中,首先無線網(wǎng)關(guān)創(chuàng)建網(wǎng)絡(luò),等待節(jié)點(diǎn)的加入,此時(shí)顯示終端屏如圖4.2所示。圖4.2 等待節(jié)點(diǎn)加入網(wǎng)絡(luò)時(shí)的終端顯示情況節(jié)點(diǎn)加入網(wǎng)絡(luò)后,則在顯示終端上顯示測得的溫度、濕度具體數(shù)值。如圖4.3所示。圖4.3 測得此時(shí)溫濕度顯示情況通過實(shí)驗(yàn)測定,最宜人的室內(nèi)溫濕度是:冬天溫度為 18至 25 ,濕度為30%至80%;夏天溫度為23至28,濕度為30%至60% 。 因此通過比較我們所測的溫濕度值符合人體適宜溫濕度范圍???結(jié)ZigBee無線傳感器網(wǎng)絡(luò)是基于ZigBee協(xié)議的無線傳感器網(wǎng)絡(luò),是ZigBee協(xié)議與傳感技術(shù)的結(jié)合,是應(yīng)用性非常強(qiáng)的技術(shù),它具有耗資小、安裝方便、維護(hù)和更新費(fèi)用低等優(yōu)勢,非常適合于對布線困難、人員不能到達(dá)的區(qū)域和一些臨時(shí)場合的狀況進(jìn)行遠(yuǎn)程監(jiān)控,如大型建筑的健康狀態(tài)監(jiān)控、空間探索、災(zāi)害預(yù)測,養(yǎng)殖環(huán)境監(jiān)測等,它在當(dāng)前我國環(huán)境監(jiān)測系統(tǒng)中有著巨大的應(yīng)用潛力的。目前市場上的近距離無線通信技術(shù)有很多種,如無線局域網(wǎng)WiFi、藍(lán)牙、IrDA、UWB、RF等。經(jīng)過市場調(diào)研,發(fā)現(xiàn)ZigBee無線通信技術(shù)在在無線傳感網(wǎng)絡(luò)中占有廣泛的市場,具有低功耗、數(shù)據(jù)傳輸可靠、網(wǎng)絡(luò)容量大、兼容性強(qiáng)、安全性高、成本低等特點(diǎn)。本設(shè)計(jì)采用了ZigBee技術(shù)實(shí)現(xiàn)無線網(wǎng)絡(luò)的搭建。選用了一款性能較好的STDSM

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論