基于zigbee的無線測(cè)溫管理系統(tǒng)的應(yīng)用研究【畢業(yè)設(shè)計(jì)】_第1頁
已閱讀1頁,還剩33頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  本科畢業(yè)設(shè)計(jì)(論文)</p><p><b> ?。ǘ?屆)</b></p><p>  基于ZigBee的無線測(cè)溫管理系統(tǒng)的應(yīng)用研究</p><p>  所在學(xué)院 </p><p>  專業(yè)班級(jí) 電子信息工程

2、 </p><p>  學(xué)生姓名 學(xué)號(hào) </p><p>  指導(dǎo)教師 職稱 </p><p>  完成日期 年 月 </p><p><b>  摘 要</b></p>&l

3、t;p>  大型的電器設(shè)備一般都工作在高電壓大電流環(huán)境下,為了及時(shí)的測(cè)量出電器設(shè)備的連接點(diǎn)溫度,并及時(shí)進(jìn)行預(yù)警。設(shè)計(jì)制作出一種基于ZigBee技術(shù)的無線測(cè)溫管理系統(tǒng)。</p><p>  ZigBee是一種新型的無線傳感器網(wǎng)絡(luò)技術(shù),是介于無線標(biāo)識(shí)技術(shù)和藍(lán)牙技術(shù)之間的技術(shù)提案。ZigBee將無線傳感器技術(shù)、無線通訊技術(shù)和計(jì)算機(jī)技術(shù)結(jié)合在一起,不僅可以進(jìn)行數(shù)據(jù)的采集還可以進(jìn)行數(shù)據(jù)的傳輸和處理。ZigBee具有距

4、離近、復(fù)雜度低、功耗低、數(shù)據(jù)傳輸速率低、成本低、網(wǎng)絡(luò)自組織、工作可靠等優(yōu)點(diǎn)。主要適合用于自動(dòng)控制系統(tǒng)和遠(yuǎn)程控制領(lǐng)域,并且可以嵌入到各種設(shè)備。本課題通過采用DS18B20溫度傳感器采集溫度信息、CC2430作為處理芯片通過USB接口與計(jì)算機(jī)通信。通過可視化程序設(shè)計(jì)語言Visual Basic 6.0設(shè)計(jì)監(jiān)控界面,易于實(shí)現(xiàn)無線傳感器網(wǎng)絡(luò)溫度信息的實(shí)時(shí)采集、及時(shí)報(bào)警和有效管理。</p><p>  關(guān)鍵詞:ZigBee

5、,無線測(cè)溫,DS18B20,CC2430</p><p>  Application research on wireless temperature administration system based on ZigBee</p><p><b>  Abstract</b></p><p>  A wireless temperature

6、 administration system based on ZigBee is designed for timely detecting the temperature of connection point in large electrical equipments.</p><p>  As a new technique, ZigBee wireless sensor network holds w

7、ireless sensor technique, wireless communication technique and computer technique together, and it can be provided with information collection, transmission and processing. It is intervenient wireless markers technique a

8、nd Bluetooth technique. ZigBee has lots of advantages such as short range, low complexity, low power consumption, low data transfer rate, low cost, self-organizing, reliable work, etc, mainly be suitable for automatic co

9、nt</p><p>  Keywords: ZigBee, Wireless temperature measurement, DS18B20, CC2430</p><p><b>  目錄</b></p><p><b>  摘 要I</b></p><p>  AbstractII&l

10、t;/p><p><b>  1 緒論1</b></p><p>  1.1 課題的來源1</p><p>  1.2 課題的意義1</p><p>  1.3 無線傳感器網(wǎng)絡(luò)技術(shù)國內(nèi)外發(fā)展現(xiàn)狀2</p><p>  1.3.1 國內(nèi)無線傳感器網(wǎng)絡(luò)技術(shù)的研究現(xiàn)狀2</p>&l

11、t;p>  1.3.2 國外無線傳感器網(wǎng)絡(luò)技術(shù)的研究現(xiàn)狀2</p><p>  1.4 課題研究的主要內(nèi)容3</p><p>  2 ZigBee標(biāo)準(zhǔn)和應(yīng)用領(lǐng)域4</p><p>  2.1 ZigBee協(xié)議概述4</p><p>  2.2 IEEE802.15.45</p><p>  2.3 Zi

12、gBee5</p><p>  2.4 傳感器節(jié)點(diǎn)5</p><p>  2.5 ZigBee網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)6</p><p>  2.5.1 星型網(wǎng)6</p><p>  2.5.2 網(wǎng)狀網(wǎng)6</p><p>  2.5.3 混合網(wǎng)6</p><p>  2.6 端點(diǎn)綁定7<

13、/p><p>  2.7 數(shù)據(jù)傳輸機(jī)制7</p><p>  2.8 ZigBee優(yōu)點(diǎn)7</p><p>  2.9 ZigBee與藍(lán)牙和Wi-Fi技術(shù)比較8</p><p>  2.10 ZigBee的應(yīng)用9</p><p>  2.10.1 智能家庭9</p><p>  2.10.2

14、 智能交通9</p><p>  2.10.3 工業(yè)領(lǐng)域9</p><p><b>  3硬件設(shè)計(jì)10</b></p><p>  3.1 硬件總體設(shè)計(jì)方案10</p><p>  3.2 溫度傳感器終端設(shè)計(jì)11</p><p>  3.2.1 溫度傳感器11</p>&

15、lt;p>  3.2.2 微控制器12</p><p>  3.3 溫度傳感器終端原理圖12</p><p>  3.4 溫度傳感器基站設(shè)計(jì)12</p><p>  3.4.1 CC2430芯片概述12</p><p>  3.4.2 CC2430無線收發(fā)模塊13</p><p>  3.4.3 USB

16、接口14</p><p>  4軟件程序開發(fā)設(shè)計(jì)15</p><p>  4.1 系統(tǒng)部分模塊初始化分析15</p><p>  4.1.1 DS18B20的初始化15</p><p>  4.1.2 USART的初始化16</p><p>  4.2 軟件編程16</p><p>

17、  4.2.1 DMA程序?qū)懭?6</p><p>  4.2.2監(jiān)控界面設(shè)計(jì)17</p><p>  4.2.3 部分程序代碼18</p><p>  5設(shè)計(jì)成品簡介21</p><p>  5.1 硬件介紹21</p><p>  5.2 監(jiān)控界面介紹21</p><p><

18、;b>  結(jié)論23</b></p><p><b>  參考文獻(xiàn)24</b></p><p>  致謝錯(cuò)誤!未定義書簽。</p><p><b>  附錄25</b></p><p>  附錄圖1 DMA操作流程25</p><p>  附錄圖2

19、溫度傳感器終端原理圖126</p><p>  附錄圖3 溫度傳感器終端原理圖227</p><p>  附錄圖4 CC2430片上系統(tǒng)功能模塊28</p><p>  附錄圖5 CC2430無線收發(fā)模塊29</p><p><b>  1 緒論</b></p><p><b>

20、  1.1 課題的來源</b></p><p>  物聯(lián)網(wǎng)作為一個(gè)新概念在幾年前才被提出。作為一門新興科技,指的是在計(jì)算機(jī)互聯(lián)網(wǎng)的基礎(chǔ)上,利用無線射頻技術(shù)、無線通信技術(shù)等,構(gòu)造一個(gè)覆蓋世界上所有事物的“Internet of Things”。</p><p>  無線傳感器網(wǎng)絡(luò)是信息科學(xué)領(lǐng)域中一個(gè)全新的發(fā)展方向,同時(shí)也是新興學(xué)科與傳統(tǒng)學(xué)科進(jìn)行領(lǐng)域間相互交叉的結(jié)果。[1]無線傳感

21、器網(wǎng)絡(luò)的一個(gè)最顯著特點(diǎn)是智能化的傳感器。智能傳感器不再是傳統(tǒng)意義上的傳感器,而是一種嵌入了計(jì)算能力的傳感器。正是由于嵌入了計(jì)算能力,使得傳感器節(jié)點(diǎn)在原有數(shù)據(jù)采集功能的基礎(chǔ)上,還擁有了濾波、信息處理等功能。在智能傳感器的基礎(chǔ)上增加無線通信功能的無線智能傳感器,不僅大大擴(kuò)展了傳感器的感知范圍,也使得傳感器的工程實(shí)施變得十分簡便。在無線智能傳感器的基礎(chǔ)上再加入網(wǎng)絡(luò)技術(shù),傳感器就不僅是個(gè)簡單的感知體,而是能夠進(jìn)行信息交換、協(xié)調(diào)控制的微系統(tǒng),從而

22、實(shí)現(xiàn)物聯(lián)網(wǎng)的構(gòu)想——物與物的互聯(lián)。在無線智能傳感器網(wǎng)絡(luò)技術(shù)中,ZigBee技術(shù)由于其獨(dú)特的特點(diǎn)和技術(shù)優(yōu)勢(shì)無疑將成為物聯(lián)網(wǎng)技術(shù)發(fā)展的前沿科技。</p><p>  本課題是基于我國目前大力發(fā)展物聯(lián)網(wǎng)技術(shù),以及國家在“十二五”期間對(duì)物聯(lián)網(wǎng)技術(shù)的強(qiáng)烈要求的新形式以及物聯(lián)網(wǎng)技術(shù)的巨大發(fā)展?jié)摿εc指導(dǎo)教師共同商議提出的。</p><p><b>  1.2 課題的意義</b>&l

23、t;/p><p>  運(yùn)行中的大型電氣設(shè)備通常工作在高電壓和大電流狀態(tài)下,設(shè)備中存在的某些微小缺陷或損耗會(huì)導(dǎo)致設(shè)備部件的異常并使局部溫度驟升。從而造成局部溫度與接觸電阻值的惡性循環(huán),導(dǎo)致電氣設(shè)備不僅不能正常工作,甚至引起設(shè)備的燒毀、爆炸并帶來人員傷亡事故。</p><p>  無線測(cè)溫管理系統(tǒng)正是因?yàn)樯鲜鲈蚨鴤涫荜P(guān)注的。其主要的功能是對(duì)環(huán)境溫度實(shí)現(xiàn)在線的實(shí)時(shí)監(jiān)測(cè)和預(yù)警,該技術(shù)目前已廣泛應(yīng)用于

24、水溫的測(cè)量、氣溫的測(cè)量等領(lǐng)域。無線測(cè)溫技術(shù)運(yùn)用最新的無線通信技術(shù)、數(shù)字化溫度傳感技術(shù),可實(shí)時(shí)自動(dòng)檢測(cè)發(fā)電站和工程現(xiàn)場(chǎng)各高低壓關(guān)鍵點(diǎn)溫度,大幅度降低現(xiàn)場(chǎng)設(shè)備人工巡查的工作量。并且可以對(duì)危險(xiǎn)狀況進(jìn)行提前預(yù)警,通過后臺(tái)計(jì)算機(jī)輕松的實(shí)現(xiàn)無人值守和遠(yuǎn)程監(jiān)測(cè)。</p><p>  在環(huán)境溫度監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)開發(fā)中,必須考慮到實(shí)時(shí)監(jiān)測(cè)時(shí)數(shù)據(jù)采集量和傳輸量巨大,實(shí)時(shí)性要求高,監(jiān)測(cè)周期長,因此選用一種在低能耗情況下,也具有較高傳輸效

25、率、理想傳輸數(shù)率的設(shè)備與技術(shù)是十分必要的。[2]鑒于上述要求與ZigBee技術(shù)的優(yōu)點(diǎn),我們選擇ZigBee技術(shù)作為本課題的技術(shù)基礎(chǔ)。</p><p>  1.3 無線傳感器網(wǎng)絡(luò)技術(shù)國內(nèi)外發(fā)展現(xiàn)狀</p><p>  作為新一代的傳感器網(wǎng)絡(luò),無線智能傳感器網(wǎng)絡(luò)具有非常廣闊的開發(fā)應(yīng)用前景和巨大的市場(chǎng)經(jīng)濟(jì)價(jià)值?,F(xiàn)在世界上各個(gè)國家都很重視無線智能傳感器網(wǎng)絡(luò)的開發(fā)和應(yīng)用。無線智能傳感器網(wǎng)絡(luò)技術(shù)不僅被

26、美國《技術(shù)評(píng)論》雜志評(píng)為未來十大新興科技。而且,在“中國未來20年技術(shù)預(yù)見研究”的157個(gè)技術(shù)課題中,就有7項(xiàng)是直接論述無線智能傳感器網(wǎng)絡(luò)的。2006年發(fā)布的《國家中長期科學(xué)與技術(shù)發(fā)展規(guī)劃綱要》為我國信息技術(shù)未來的發(fā)展指引了三個(gè)前沿科技,而其中的智能感知技術(shù)和自組織網(wǎng)絡(luò)技術(shù)就直接與無線智能傳感器網(wǎng)絡(luò)的研究相關(guān)。[9]由此可知,無線智能傳感器網(wǎng)絡(luò)的大規(guī)模應(yīng)用將是一種必然趨勢(shì),而無線智能傳感器網(wǎng)絡(luò)的出現(xiàn)和發(fā)展應(yīng)用將會(huì)像20世紀(jì)的計(jì)算機(jī)技術(shù)、

27、激光技術(shù)一樣給人類社會(huì)的發(fā)展和社會(huì)文明帶來極大的變革。</p><p>  1.3.1 國內(nèi)無線傳感器網(wǎng)絡(luò)技術(shù)的研究現(xiàn)狀</p><p>  我國無線傳感器網(wǎng)絡(luò)技術(shù)的應(yīng)用研究與發(fā)達(dá)國家?guī)缀跬趩?dòng)。1999年首次出現(xiàn)于中科院《知識(shí)創(chuàng)新工程試點(diǎn)領(lǐng)域方向研究》的信息與自動(dòng)化領(lǐng)域報(bào)告中,作為該領(lǐng)域提出的五個(gè)重大項(xiàng)目之一。</p><p>  目前在我國,由中科院微系統(tǒng)所主

28、導(dǎo)的研發(fā)團(tuán)隊(duì)正在積極的開展基于無線傳感器網(wǎng)絡(luò)的電子圍欄技術(shù)邊境防御系統(tǒng)的研發(fā)和測(cè)試,已取得了階段性的成果。同時(shí)也有許多公司正在研究無線傳感器網(wǎng)絡(luò),例如西安華凡科技有限公司,作為無線傳感器網(wǎng)絡(luò)解決方案的專業(yè)提供商,為ZigBee技術(shù)在我國的發(fā)展做出了不懈的努力。為廣大的初學(xué)者和用戶提供了從開發(fā)學(xué)習(xí)套件、ZigBee典型應(yīng)用方案演示模型到ZigBee解決方案商業(yè)應(yīng)用的一條龍服務(wù)。杭州齊格科技有限公司與浙江農(nóng)科院合作研發(fā)了遠(yuǎn)程農(nóng)作管理決策服務(wù)

29、平臺(tái),該平臺(tái)利用無線傳感器技術(shù)實(shí)現(xiàn)對(duì)農(nóng)田溫室大棚溫度、濕度、光照等環(huán)境信息的監(jiān)測(cè)。</p><p>  1.3.2 國外無線傳感器網(wǎng)絡(luò)技術(shù)的研究現(xiàn)狀</p><p>  國際上比較有代表性和影響力的無線傳感器網(wǎng)絡(luò)研發(fā)成功的項(xiàng)目有智能塵埃(smart dust)、行為習(xí)慣監(jiān)控項(xiàng)目、戰(zhàn)場(chǎng)遙控系統(tǒng)(remote battlefield sensor system, REMBASS)等。美國俄亥俄

30、州正在開發(fā)的能夠監(jiān)測(cè)到運(yùn)動(dòng)中的高金屬含量目標(biāo)“沙漠直線”無線傳感器網(wǎng)絡(luò)系統(tǒng)和美軍試驗(yàn)成功的“狼群”地面無線智能傳感器網(wǎng)絡(luò)已成為該技術(shù)在電子戰(zhàn)領(lǐng)域最新突破的標(biāo)志。[10]</p><p>  民用方面,美國英特爾公司和加利福尼亞州大學(xué)伯克利分校領(lǐng)導(dǎo)的“智能塵?!奔夹g(shù)的研究工作,已經(jīng)成功的創(chuàng)建了瓶蓋大小的全能型智能傳感器,可以執(zhí)行計(jì)算、監(jiān)測(cè)與通信等功能。2002年,英特爾公司又率先在俄勒岡州建立了世界上第一個(gè)無線葡萄

31、園,這是一個(gè)典型的精準(zhǔn)農(nóng)業(yè)、智能耕種的實(shí)例。在亞洲,日本制作所于2004年11月24日宣布開發(fā)出了全球體積最小的無線傳感器網(wǎng)絡(luò)終端,該終端為安裝電池的有源無線終端,可以配合搭載溫度、亮度、紅外線、加速度等各類傳感器使用。</p><p>  1.4 課題研究的主要內(nèi)容</p><p>  本課題的主要研究內(nèi)容是根據(jù)IEEE 802.15.4協(xié)議規(guī)范設(shè)計(jì)制作一個(gè)基于ZigBee的無線測(cè)溫管理

32、系統(tǒng)。該系統(tǒng)擬采用DS18B20溫度傳感器結(jié)合ZigBee技術(shù)的無線模塊CC2430搭建無線測(cè)溫網(wǎng)絡(luò),通過溫度傳感器DS18B20采集環(huán)境溫度數(shù)據(jù)。并通過ZigBee網(wǎng)絡(luò)傳輸采集到的數(shù)據(jù),最后測(cè)試基站再通過USB接口與本地計(jì)算機(jī)連接通信,實(shí)現(xiàn)溫度的在線監(jiān)測(cè)。</p><p>  本課題的難點(diǎn)在于實(shí)現(xiàn)溫度傳感器與基站以ZigBee協(xié)議的方式進(jìn)行無線通信,將模擬量溫度值轉(zhuǎn)化為數(shù)字量溫度值,編寫完善的通信協(xié)議及系統(tǒng)軟件

33、。同時(shí),由于溫度檢測(cè)時(shí)產(chǎn)生的數(shù)據(jù)量巨大,實(shí)時(shí)性要求高。因此,如何高效的傳輸數(shù)據(jù)也成為系統(tǒng)設(shè)計(jì)時(shí)必須要考慮的問題。</p><p>  “無線測(cè)溫管理系統(tǒng)”是為了更好的適應(yīng)現(xiàn)代化工業(yè)生產(chǎn)和家庭生活而設(shè)計(jì)的。它改變了傳統(tǒng)的必須通過接觸式測(cè)量的方法,實(shí)現(xiàn)了智能化監(jiān)測(cè)環(huán)境溫度,免去了大量的人工操作,同時(shí)實(shí)現(xiàn)了實(shí)時(shí)的在線監(jiān)測(cè)。設(shè)計(jì)開發(fā)完成后,應(yīng)該能夠達(dá)到以下幾點(diǎn):</p><p>  1. 可以在本

34、地PC機(jī)上觀看到實(shí)時(shí)監(jiān)測(cè)的環(huán)境溫度。</p><p>  2. 可以更換系統(tǒng)老化的溫度傳感器終端,并且不會(huì)影響原有的檢測(cè)網(wǎng)絡(luò)系統(tǒng)。</p><p>  3. 控制界面及內(nèi)容觀測(cè)方便。 </p><p>  4. 在課題結(jié)束的時(shí)候,希望能夠完成一個(gè)較為完整的測(cè)試系統(tǒng)甚至是可以投入市場(chǎng)的一個(gè)產(chǎn)品。</p><p>  2 ZigBee標(biāo)準(zhǔn)和應(yīng)用領(lǐng)

35、域</p><p>  2.1 ZigBee協(xié)議概述</p><p>  IEEE 802.15.4是IEEE針對(duì)低速率無線個(gè)人區(qū)域網(wǎng)(low-rate wireless personal area networks, LR-WPAN)制定的無線通信標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)把低能量消耗、低速率傳輸、低成本制造作為重點(diǎn)目標(biāo),旨在為個(gè)人或家庭內(nèi)不同設(shè)備之間低速率無線通信提供統(tǒng)一的標(biāo)準(zhǔn)。[19]該標(biāo)準(zhǔn)定義的

36、無線個(gè)人區(qū)域網(wǎng)絡(luò)的特征與無線傳感器網(wǎng)絡(luò)有很多相似之處,國內(nèi)外很多研究機(jī)構(gòu)已將其視為無線傳感器網(wǎng)絡(luò)的實(shí)際通信標(biāo)準(zhǔn)。</p><p>  ZigBee協(xié)議標(biāo)準(zhǔn)采用分層結(jié)構(gòu),每一層為其上層提供一系列的特殊服務(wù):數(shù)據(jù)實(shí)體主要提供數(shù)據(jù)傳輸相應(yīng)的服務(wù);而管理實(shí)體則提供其余的服務(wù)。其中支持一定數(shù)量服務(wù)原語的服務(wù)接入點(diǎn)SAP作為接口為上層提供接口服務(wù)。ZigBee標(biāo)準(zhǔn)的分層架構(gòu)并不是刻板無變化的,其基本架構(gòu)是OSI的七層模型。但

37、是在此基礎(chǔ)上也會(huì)根據(jù)實(shí)際應(yīng)用的差異來重新定義。ZigBee協(xié)議的基本體系架構(gòu)如圖1所示:</p><p>  圖1 ZigBee協(xié)議的體系結(jié)構(gòu)</p><p>  基本架構(gòu)中IEEE 802.15.4-2003標(biāo)準(zhǔn)定義了兩個(gè)底層協(xié)議:媒體訪問控制層(MAC)和物理層(PHY)。而ZigBee聯(lián)盟在底層協(xié)議上又定義了應(yīng)用層(APL)和網(wǎng)絡(luò)層(NWK)。同時(shí)在應(yīng)用層內(nèi)加入了應(yīng)用支持子層(APS

38、)和ZigBee設(shè)備對(duì)象(ZDO)。應(yīng)用框架中則加入了用戶自定義的應(yīng)用對(duì)象。[19]</p><p>  2.2 IEEE802.15.4</p><p>  2000年12月,為了滿足類似溫度傳感器這樣的小型、低成本設(shè)備也能進(jìn)行無線聯(lián)網(wǎng)的需求。電氣和電子工程師協(xié)會(huì)組織建立了IEEE 802.15.4工作小組。開發(fā)價(jià)格低廉的可供便攜或移動(dòng)設(shè)備使用的復(fù)雜度低、成本低、功耗低、速率低的無線通信

39、技術(shù)是這個(gè)工作小組的研究目標(biāo)。[6]在標(biāo)準(zhǔn)化工作方面,IEEE 802.15.4工作小組負(fù)責(zé)制定媒體訪問控制層和物理層的相關(guān)協(xié)議,其他協(xié)議主要參考使用現(xiàn)有的一些標(biāo)準(zhǔn)。在參考使用現(xiàn)有標(biāo)準(zhǔn)的同時(shí),IEEE 802.15.4協(xié)議也吸引了其他標(biāo)準(zhǔn)化組織的注意,例如IEEE 802.15.4工作小組就在考慮怎樣在IEEE 802.15.4標(biāo)準(zhǔn)基礎(chǔ)上實(shí)現(xiàn)傳感器網(wǎng)絡(luò)。</p><p>  正式的IEEE 802.15.4標(biāo)準(zhǔn)在

40、2003年上半年發(fā)布,芯片和產(chǎn)品已經(jīng)問世。ZigBee聯(lián)盟在IEEE 802.15.4—2003標(biāo)準(zhǔn)的基礎(chǔ)上,于2005年6月27日公布了第一份“ZigBee Specification v1.0”,并于2006年12月1日公布了改進(jìn)版本的ZigBee Specification—2006版本,再次掀起了全球范圍內(nèi)研究ZigBee技術(shù)的熱潮。</p><p>  2.3 ZigBee</p><

41、;p>  ZigBee技術(shù)是一組基于IEEE 802.15.4無線標(biāo)準(zhǔn)研制開發(fā)的有關(guān)自組織網(wǎng)絡(luò)、安全軟件方面的通信技術(shù)。[11]ZigBee名稱的由來主要源于對(duì)蜜蜂采蜜過程的觀察。在采蜜的過程中,若發(fā)現(xiàn)有新的實(shí)物源,那么蜜蜂就會(huì)跳著ZigBee形狀的舞蹈,以舞蹈的形式來告知蜂群食物源的方向、距離、位置等。同時(shí)蜜蜂的自身體積小,能量消耗少,又能傳送采集來的花粉。因此,人們將具有低成本、小體積、低能量消耗和低傳輸速率等特點(diǎn)的無線通信技

42、術(shù)叫做ZigBee技術(shù)。中文通常將ZigBee譯為“智蜂”或“紫蜂”等。[16]</p><p><b>  2.4 傳感器節(jié)點(diǎn)</b></p><p>  傳感器節(jié)點(diǎn)通常由四個(gè)部分組成:能量供應(yīng)模塊;無線通信模塊;處理器模塊(由嵌入式系統(tǒng)構(gòu)成,包括CPU、嵌入式操作系統(tǒng)等);傳感器模塊(由傳感器和模數(shù)轉(zhuǎn)換功能模塊組成)。</p><p>  

43、無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)結(jié)構(gòu)如圖2所示:</p><p>  圖2 無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)結(jié)構(gòu)</p><p>  能量供應(yīng)模塊是其他模塊能夠正常運(yùn)行的保障和基礎(chǔ),常見的能量供應(yīng)模塊是微型電池;無線通信模塊是傳感器能夠進(jìn)行控制信息和數(shù)據(jù)交換的前提,同時(shí)還兼具與其他傳感器之間進(jìn)行無線通信的功能;處理器模塊是整個(gè)傳感器節(jié)點(diǎn)的核心,處理器模塊不僅要控制整個(gè)傳感器節(jié)點(diǎn)的正常運(yùn)行,還要處理并存儲(chǔ)采集來的數(shù)據(jù)信

44、息和通過無線模塊交換來的其他節(jié)點(diǎn)的數(shù)據(jù)信息;傳感器模塊是傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的觸角,傳感器模塊負(fù)責(zé)采集監(jiān)測(cè)區(qū)域內(nèi)的信息。不僅如此,傳感器節(jié)點(diǎn)還可以選擇性的添加定位系統(tǒng)等的其他模塊。</p><p>  2.5 ZigBee網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)</p><p><b>  2.5.1 星型網(wǎng)</b></p><p>  星型網(wǎng)是最基本的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),屬于“單跳

45、”系統(tǒng)類型。星型網(wǎng)中的各網(wǎng)絡(luò)節(jié)點(diǎn)基本相同但是節(jié)點(diǎn)之間并不相互通信,所有的節(jié)點(diǎn)都只與基站雙向通信。作為網(wǎng)絡(luò)的中轉(zhuǎn)站,基站既要向各節(jié)點(diǎn)傳輸數(shù)據(jù)和命令,還要與因特網(wǎng)等高層網(wǎng)絡(luò)系統(tǒng)傳輸數(shù)據(jù)。星型網(wǎng)的優(yōu)點(diǎn)是功耗小,缺點(diǎn)是傳輸距離小。[7]</p><p><b>  2.5.2 網(wǎng)狀網(wǎng)</b></p><p>  網(wǎng)狀網(wǎng)是在星型網(wǎng)的基礎(chǔ)上開發(fā)設(shè)計(jì)的“多跳”系統(tǒng)。與星型網(wǎng)一樣,網(wǎng)

46、狀網(wǎng)中所有的傳感器節(jié)點(diǎn)也都相同;但是網(wǎng)狀網(wǎng)節(jié)點(diǎn)既與基站進(jìn)行數(shù)據(jù)傳輸和命令傳輸,節(jié)點(diǎn)之間也可以相互通信。正因?yàn)槿绱?,這種多跳系統(tǒng)的網(wǎng)狀網(wǎng)具有傳輸距離遠(yuǎn)的優(yōu)點(diǎn),但同時(shí)缺點(diǎn)也很明顯即功耗更大。 </p><p><b>  2.5.3 混合網(wǎng)</b></p><p>  為了同時(shí)具有星型網(wǎng)的低功耗優(yōu)點(diǎn)和網(wǎng)狀網(wǎng)的長距離傳輸優(yōu)點(diǎn),人們?cè)O(shè)計(jì)開發(fā)了混合網(wǎng)拓?fù)浣Y(jié)構(gòu)?;旌暇W(wǎng)由中繼器、路

47、由器、傳感器節(jié)點(diǎn)組成。[7]中繼器和路由器呈網(wǎng)狀分布,傳感器節(jié)點(diǎn)則星型的分布在中繼器和路由器周圍。中繼器與路由器的作用是提供網(wǎng)絡(luò)容故障能力,擴(kuò)展網(wǎng)絡(luò)傳輸距離。</p><p>  圖3為三種拓?fù)浣Y(jié)構(gòu):</p><p>  圖3 ZigBee網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)</p><p><b>  2.6 端點(diǎn)綁定</b></p><p>

48、;  端點(diǎn)是一個(gè)8位的字段,描述的是一個(gè)射頻端所支持的不同應(yīng)用。每一個(gè)ZigBee節(jié)點(diǎn)可以包含多個(gè)端點(diǎn)。端點(diǎn)0x00用于尋址設(shè)備配置文件,是每個(gè)ZigBee設(shè)備必須使用的端點(diǎn)。端點(diǎn)0xff用于尋址所有活動(dòng)的端點(diǎn),端點(diǎn)0xf1~0xfe暫時(shí)預(yù)留不用。因此,一個(gè)物理ZigBee射頻端在端點(diǎn)0x01~0xf0上總共可以支持240個(gè)應(yīng)用,即一個(gè)物理信道中最多可以有240條虛擬信道。</p><p>  2.7 數(shù)據(jù)傳輸機(jī)

49、制</p><p>  主設(shè)備傳輸數(shù)據(jù)到從設(shè)備和從設(shè)備傳輸數(shù)據(jù)到主設(shè)備的機(jī)制因網(wǎng)絡(luò)類型的不同而不同。在星形網(wǎng)絡(luò)中,當(dāng)從設(shè)備要發(fā)送數(shù)據(jù)時(shí),只需要等待信道變?yōu)榭臻e。當(dāng)檢測(cè)到信道空閑時(shí),就將數(shù)據(jù)發(fā)送到主設(shè)備。但是如果主設(shè)備想要將數(shù)據(jù)發(fā)送到從設(shè)備,主設(shè)備會(huì)將數(shù)據(jù)暫時(shí)保存在發(fā)送緩沖器中,直到目標(biāo)從設(shè)備查詢接收該數(shù)據(jù)為止。這種傳輸機(jī)制要求從設(shè)備的接收器是開啟的,而且可從協(xié)調(diào)器中接收數(shù)據(jù)。[8]</p><

50、p>  在點(diǎn)對(duì)點(diǎn)的通信網(wǎng)絡(luò)中,每個(gè)節(jié)點(diǎn)必須始終保持它們的接收器為開啟狀態(tài)或者在某個(gè)時(shí)間段內(nèi)同時(shí)開啟接收器。這樣就能保證某一節(jié)點(diǎn)發(fā)送的數(shù)據(jù)能夠被其它節(jié)點(diǎn)接收。為了降低功耗,從設(shè)備并不始終開啟接收器,而是在查詢主設(shè)備時(shí)才定期地喚醒從設(shè)備來處理數(shù)據(jù)。在大多數(shù)時(shí)間里從設(shè)備都是處在休眠狀態(tài)的。用這種方式降低功耗的缺點(diǎn)是主設(shè)備必須將數(shù)據(jù)都保存在內(nèi)部緩沖器中,以等待從設(shè)備的喚醒和查詢。但是如果網(wǎng)絡(luò)中有很多休眠時(shí)間較長的從設(shè)備,主設(shè)備就必須增大R

51、AM的空間以保存數(shù)據(jù)。</p><p>  2.8 ZigBee優(yōu)點(diǎn)</p><p>  IEEE 802.15.4標(biāo)準(zhǔn)定義的LR-WPAN網(wǎng)絡(luò)具有以下優(yōu)點(diǎn):</p><p>  (1)數(shù)據(jù)傳輸可靠。ZigBee采用“碰撞避免機(jī)制”來提高可靠性。遵循“主設(shè)備發(fā)送—從設(shè)備確認(rèn)接收—主設(shè)備回復(fù)”機(jī)制,如果從設(shè)備沒有收到主設(shè)備的回復(fù),主設(shè)備將會(huì)再次發(fā)送數(shù)據(jù)。</p&

52、gt;<p> ?。?)功耗低。ZigBee技術(shù)的信號(hào)處理時(shí)間短,非工作期又采用設(shè)備休眠模式,使得ZigBee節(jié)點(diǎn)模塊功耗極低。</p><p> ?。?)工作頻段靈活。使用的頻段分別為2.4GHz(全球)、868MHz(歐洲)及915MHz(美國),均為免執(zhí)照頻段。</p><p> ?。?)網(wǎng)絡(luò)容量大。一個(gè)ZigBee網(wǎng)絡(luò)最多可包括65535個(gè)ZigBee網(wǎng)絡(luò)節(jié)點(diǎn),其中一

53、個(gè)為主設(shè)備,其余均是從設(shè)備。各個(gè)網(wǎng)絡(luò)由協(xié)調(diào)器可實(shí)現(xiàn)相互連接,整個(gè)網(wǎng)絡(luò)容量巨大。</p><p> ?。?)成本低。ZigBee通信模塊的單位成本低,而且ZigBee協(xié)議是無需專利費(fèi)的。</p><p>  2.9 ZigBee與藍(lán)牙和Wi-Fi技術(shù)比較</p><p>  無線個(gè)人網(wǎng)(WPAN)主要包括Bluetooth(藍(lán)牙),Wi-Fi, ZigBee等。<

54、;/p><p>  三種技術(shù)的參數(shù)比較如圖4所示: </p><p>  圖4 ZigBee、Bluetooth、Wi-Fi技術(shù)比較</p><p>  在ZigBee與藍(lán)牙的關(guān)系上,ZigBee聯(lián)盟認(rèn)為ZigBee和藍(lán)牙是互為補(bǔ)充的,而不是相互競(jìng)爭(zhēng)。</p><p>  在系統(tǒng)復(fù)雜性方面,ZigBee的系統(tǒng)復(fù)雜度遠(yuǎn)小于藍(lán)牙。安全性方面,兩種協(xié)議

55、在一定程度上都能夠保證數(shù)據(jù)傳輸?shù)陌踩?,但是ZigBee比藍(lán)牙更為靈活,也更有利于控制系統(tǒng)成本。功耗方面,低功耗是ZigBee的一個(gè)重要特征。藍(lán)牙技術(shù)采用兩種方式來控制功率:自適應(yīng)發(fā)射功率和調(diào)整基帶連接模式。相比較而言ZigBee功耗更低。</p><p>  Wi-Fi是一種用的較多的無線技術(shù)。除了在筆記本電腦中,目前在許多網(wǎng)絡(luò)設(shè)備中也增加了處理802.11協(xié)議的能力。但是使用Wi-Fi的缺點(diǎn)包括功耗大、成本高

56、、協(xié)議開銷大、需要特殊接入點(diǎn)等。隨著低速率應(yīng)用市場(chǎng)需求的不斷增長,ZigBee和Wi-Fi系統(tǒng)共存的可能性也越來越大。但是兩種技術(shù)都是工作在2.45GHz的ISM頻段,因而不可避免的會(huì)產(chǎn)生相互干擾。所以,如何讓W(xué)i-Fi和ZigBee共存是急需解決的問題。</p><p>  2.10 ZigBee的應(yīng)用</p><p>  采用ZigBee技術(shù)的無線網(wǎng)絡(luò)應(yīng)用領(lǐng)域有智能家庭、智能交通、工業(yè)

57、與環(huán)境控制、醫(yī)療護(hù)理、環(huán)境監(jiān)測(cè)等。其典型應(yīng)用領(lǐng)域如下:</p><p>  2.10.1 智能家庭</p><p>  ZigBee技術(shù)可以應(yīng)用于家庭的照明、溫度監(jiān)測(cè)、安全等各個(gè)方面。可以將ZigBee模塊安裝在電視機(jī)、電燈、空調(diào)系統(tǒng)等家電產(chǎn)品中。例如打開電視機(jī)時(shí),燈光會(huì)自動(dòng)減弱;電話鈴聲響起時(shí),電視機(jī)會(huì)自動(dòng)靜音等。通過ZigBee終端設(shè)備可以收集各種信息,傳輸?shù)街醒肟刂圃O(shè)備到達(dá)遠(yuǎn)程監(jiān)控的

58、目的。例如韓國一家公司已經(jīng)開始研制世界上第一款ZigBee手機(jī),該手機(jī)可將家庭電腦、家電設(shè)備電源開關(guān)等連接起來。通過這種手機(jī)可以讓手機(jī)用戶在短距離操控電源開關(guān)和控制其他電子設(shè)備。</p><p>  2.10.2 智能交通</p><p>  如果在街道、高速公路等地裝備大量的ZigBee終端設(shè)備,將不會(huì)再出現(xiàn)迷路的狀況。安裝在汽車內(nèi)的ZigBee設(shè)備會(huì)告訴人們所處的方位及去向。這與全球定

59、位系統(tǒng)(GPS)類似,但是這種系統(tǒng)能提供更加精確的信息而且還可以部署在GPS覆蓋不到的隧道、地鐵等地。</p><p>  2.10.3 工業(yè)領(lǐng)域</p><p>  通過ZigBee網(wǎng)絡(luò)自動(dòng)收集各類信息并及時(shí)將信息傳輸?shù)较到y(tǒng)進(jìn)行處理分析,以便于工廠掌握整體的信息。例如火警的預(yù)警和通知,照明系統(tǒng)的感測(cè)等都可以由ZigBee網(wǎng)絡(luò)提供相關(guān)的信息。目前市場(chǎng)上已經(jīng)出現(xiàn)有基于ZigBee的無線抄表系

60、統(tǒng),該系統(tǒng)無需人工進(jìn)行手動(dòng)抄表。而是通過讀取智能化的電表就可以很方便將用電信息顯示在本地計(jì)算機(jī)上。這樣不僅節(jié)省了勞力更節(jié)約了成本。[20]</p><p><b>  3硬件設(shè)計(jì)</b></p><p>  3.1 硬件總體設(shè)計(jì)方案</p><p>  當(dāng)前最常用的溫度監(jiān)測(cè)系統(tǒng)是在一定區(qū)域內(nèi)放置大量的溫度計(jì),由人工定期的抄錄溫度信息并匯總比較。

61、雖然這種系統(tǒng)布局簡單、保養(yǎng)容易,但是依然存在很大的缺點(diǎn):</p><p> ?。?)溫度計(jì)放置數(shù)量和位置難以確定。由于監(jiān)測(cè)區(qū)域的大小和檢測(cè)環(huán)境的區(qū)別,很難規(guī)范化的給出溫度計(jì)的放置數(shù)量。另外,由于監(jiān)測(cè)溫度要求的全方位性,一些人工難以到達(dá)的地方就成了監(jiān)測(cè)的死角,溫度計(jì)不僅不易安放也不利于人工的讀取。</p><p> ?。?)溫度計(jì)讀取數(shù)據(jù)的難度大。人工讀取溫度數(shù)據(jù)時(shí),由于溫度計(jì)多,位置雜,因

62、此很容易疏忽一些溫度計(jì)。造成溫度信息的不全面從而影響了溫度控制方式的決策。</p><p>  另外,市場(chǎng)上常見的溫度計(jì)均為玻璃質(zhì)的水銀溫度計(jì),不僅容易損壞而且水銀一旦漏出還會(huì)污染環(huán)境危害人體健康。</p><p>  采用無線溫度傳感器網(wǎng)絡(luò)監(jiān)測(cè)環(huán)境溫度不僅解決了上述問題還可以配合其他系統(tǒng)實(shí)現(xiàn)完全智能化的溫度監(jiān)測(cè)與控制。</p><p>  整個(gè)無線溫度監(jiān)測(cè)系統(tǒng)如圖

63、5所示,由溫度傳感器終端,溫度傳感器基站,PC機(jī)組成。溫度傳感器終端采集溫度信息并通過ZigBee網(wǎng)絡(luò)將其發(fā)送到溫度傳感器基站。溫度傳感器基站再以USB串口通信方式將數(shù)據(jù)顯示在PC上。</p><p>  圖5 無線溫度網(wǎng)絡(luò)監(jiān)測(cè)系統(tǒng)框圖</p><p>  3.2 溫度傳感器終端設(shè)計(jì)</p><p>  3.2.1 溫度傳感器</p><p>

64、;  傳統(tǒng)的溫度傳感器終端需要將獲得的模擬式溫度值轉(zhuǎn)換為計(jì)算機(jī)能夠識(shí)別的數(shù)字式的溫度值?;具^程為先經(jīng)電橋電路獲取電壓模擬量,再經(jīng)信號(hào)放大和A/D轉(zhuǎn)換成數(shù)字信號(hào)。</p><p>  傳統(tǒng)溫度傳感器的缺點(diǎn)是在更換傳感器時(shí)會(huì)因放大器出現(xiàn)零點(diǎn)漂移而必須對(duì)電路進(jìn)行重新調(diào)試,以適應(yīng)零漂效應(yīng)造成的電路參數(shù)變化。</p><p>  為避免上述情況,本次設(shè)計(jì)采用了美國DALLAS半導(dǎo)體器件公司生產(chǎn)的單

65、線數(shù)字化智能集成溫度傳感器DS18B20。其突出的優(yōu)點(diǎn)如下:</p><p> ?。?)功能強(qiáng)。DS18B20可將被測(cè)溫度直接轉(zhuǎn)換成數(shù)字信號(hào)輸出,即降低了電路的復(fù)雜度,也避免了更換傳感器時(shí)必須進(jìn)行的調(diào)試工作。</p><p> ?。?)使用簡便。DS18B20能夠提供9~12位的溫度讀數(shù),精度高且其信息傳輸只需要1根信號(hào)線,與計(jì)算機(jī)接口連接十分簡便。并且其讀寫及溫度轉(zhuǎn)換的功耗全部來自于數(shù)據(jù)

66、線,因此不需要額外的附加電源就能正常工作。</p><p> ?。?)集合度高。每個(gè)DS18B20都含有一個(gè)唯一的序列號(hào),這樣就可以在同一條總線上連接多個(gè)DS18B20構(gòu)成溫度檢測(cè)網(wǎng)絡(luò),實(shí)現(xiàn)全方位檢測(cè)。</p><p> ?。?)抗干擾強(qiáng)。當(dāng)出現(xiàn)操作失誤將DS18B20的電源極性接反時(shí),DS18B20不能正常工作卻不會(huì)因?yàn)榘l(fā)熱而燒毀。</p><p>  DS18B

67、20實(shí)物圖與引腳圖如圖6所示:</p><p>  圖6 DS18B20實(shí)物圖、引腳圖、封裝圖</p><p>  3.2.2 微控制器</p><p><b>  1.DMA控制器</b></p><p>  CC2430內(nèi)置了一個(gè)存儲(chǔ)器直接讀取控制器DMA(direct memory access)。這是一種高速的數(shù)

68、據(jù)傳輸模式,ADC、UART、RF收發(fā)器等外設(shè)單元與存儲(chǔ)器之間可以直接在DMA控制器的控制下交換數(shù)據(jù)信息而幾乎不需要CPU的干預(yù),這樣就保證了CPU在休眠狀態(tài)下時(shí),系統(tǒng)依然能夠正常運(yùn)行。而除了在數(shù)據(jù)傳輸開始和結(jié)尾時(shí)需要CPU作一點(diǎn)處理外,傳輸過程的這段時(shí)間內(nèi)CPU可以進(jìn)行其他的工作。這樣,CPU和數(shù)據(jù)交換在大部分時(shí)間里是出于并行工作狀態(tài)的,通過這種方式可以有效的減輕8051CPU內(nèi)核的負(fù)擔(dān)。[3]</p><p>

69、;<b>  2.DMA的操作</b></p><p>  DMA 控制器有信道DMA 0~4共5個(gè)信道,每個(gè)信道能夠從DMA存儲(chǔ)器空間傳送數(shù)據(jù)到外部數(shù)據(jù)(XDATA)空間。</p><p>  DMA操作流程圖如附錄圖1所示。</p><p>  當(dāng) DMA 信道配置完畢后,在允許數(shù)據(jù)傳送初始化之前,必須進(jìn)入工作狀態(tài)。DMA信道通過將DMA信

70、道工作狀態(tài)寄存器中指定位(即DMAARM)置1,就可以進(jìn)入工作狀態(tài)。</p><p>  3.3 溫度傳感器終端原理圖</p><p>  溫度傳感器終端原理圖如附錄圖2、3所示。</p><p>  3.4 溫度傳感器基站設(shè)計(jì)</p><p>  3.4.1 CC2430芯片概述</p><p>  CC2430整合

71、了電子行業(yè)內(nèi)領(lǐng)先的2.4GHz IEEE 802.15.4/ZigBee 收發(fā)機(jī)CC2420以及工業(yè)標(biāo)準(zhǔn)的增強(qiáng)型8051 MCU,還包括8KB的SRAM、大量閃存等強(qiáng)大的性能。CC2430有三個(gè)版本:CC2430—F32/F64/F128,編號(hào)后綴分別表示芯片具有32KB、64KB、128KB的閃存。[3]</p><p>  CC2430擁有卓越的射頻性能、超低的功耗、高靈敏度、出眾的抗干擾能力。所集成的MCU

72、為強(qiáng)大的8位、單周期8051微控制核心。另外還有強(qiáng)大的外設(shè)資源,如DMA、看門狗定時(shí)器、AES-128協(xié)處理器、8-14位ADC等。CC2430芯片片上系統(tǒng)功能模塊結(jié)構(gòu)如附錄圖4所示。</p><p>  CC2430接收機(jī)傳輸模式下的電流損耗分別為27mA及25mA。其睡眠模式與工作模式的轉(zhuǎn)換時(shí)間極短,使得RF-IC成為針對(duì)超長電池使用壽命應(yīng)用的理想解決方案。CC2430結(jié)合ZigBee協(xié)議??梢詰?yīng)用在ZigB

73、ee系統(tǒng)的各個(gè)設(shè)備上,CC2430也被認(rèn)為是最具競(jìng)爭(zhēng)力的ZigBee解決方案。</p><p>  3.4.2 CC2430無線收發(fā)模塊</p><p>  基于802.15.4的CC2430無線收發(fā)模塊核心是CC2420射頻收發(fā)器,其結(jié)構(gòu)如附錄圖5所示。</p><p>  CC2430發(fā)送器是基于上變頻器。發(fā)送的信號(hào)由硬件模數(shù)轉(zhuǎn)換電路將數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào),并

74、給數(shù)據(jù)幀加入前導(dǎo)符和開始符。</p><p>  CC2430接收器接收的是低頻信號(hào),信號(hào)接收后經(jīng)放大器放大轉(zhuǎn)換到中頻。數(shù)據(jù)緩沖區(qū)使用是FIFO的方式來接收128 位的數(shù)據(jù)。</p><p>  CRC校驗(yàn)同樣由硬件實(shí)現(xiàn)。并將相應(yīng)的信號(hào)指標(biāo)信號(hào)幀中。</p><p>  CC2430射頻通信基本流程圖如圖7所示:</p><p>  圖7 C

75、C2430射頻通信基本流程圖</p><p>  3.4.3 USB接口</p><p>  USB是一種外部總線標(biāo)準(zhǔn),用于規(guī)范電腦和外部設(shè)備的連接與通訊。USB設(shè)備之所以會(huì)被廣泛的應(yīng)用,主要具有以下優(yōu)點(diǎn):</p><p> ?。?)有統(tǒng)一的標(biāo)準(zhǔn)。幾乎所有的常用電子設(shè)備均支持USB接口機(jī)制。</p><p> ?。?)使用方便。幾乎所有的US

76、B設(shè)備都是小巧型的設(shè)備,例如U盤、移動(dòng)硬盤等,這些設(shè)備不僅使用方便攜帶也很便利。</p><p>  (3)可熱插拔。USB設(shè)備可以在運(yùn)行的電腦上直接拔插使用,而不用關(guān)機(jī)后再插入U(xiǎn)SB設(shè)備。</p><p>  (4)多設(shè)備共用。個(gè)人電腦均具有多個(gè)USB接口,并且可以同時(shí)連接驅(qū)動(dòng)多個(gè)USB設(shè)備。</p><p>  USB接口實(shí)物圖與電路圖如圖8所示。</p&

77、gt;<p><b>  圖8 USB接口</b></p><p><b>  4軟件程序開發(fā)設(shè)計(jì)</b></p><p>  軟件部分需要解決的問題有:初始化設(shè)計(jì)、DS18B20模塊設(shè)計(jì)、讀溫度函數(shù)、數(shù)值處理函數(shù)設(shè)計(jì)以及USB串口通信設(shè)計(jì)等。</p><p>  4.1 系統(tǒng)部分模塊初始化分析</p&

78、gt;<p>  4.1.1 DS18B20的初始化</p><p>  DS18B20初始化復(fù)位脈沖時(shí)序圖如圖9所示。當(dāng)主器件開始與從器件DS18B20進(jìn)行通信時(shí),主器件必須先給出復(fù)位脈沖,經(jīng)給定時(shí)間,DS18B20發(fā)出存在的脈沖。表示已經(jīng)準(zhǔn)備好發(fā)送或接受由主器件發(fā)送的ROM命令和存儲(chǔ)器操作命令。[18]</p><p>  圖9 DS18B20初始化復(fù)位脈沖時(shí)序圖<

79、/p><p>  DS18B20初始化函數(shù)如下:</p><p>  Void DS18B20_reset(void) //DS18B20復(fù)位函數(shù)</p><p>  { char exist=1; //設(shè)置DS18B20存在標(biāo)志</p><p>  while(exist

80、) //DS18B20是否存在</p><p><b>  {</b></p><p>  while(exist) //DS18B20是否存在</p><p><b>  {</b></p><p>  DQ=

81、1;_nop_( ); _nop_( ); //一線制總線置高2us準(zhǔn)備寫過程</p><p>  DQ=0;delay(50); //一線制總線置低550us,滿足復(fù)位延長時(shí)間條件</p><p>  DQ=1;delay(6); //一線制總線置高66us滿足復(fù)位延長時(shí)間條件</p><p>  exist =DQ; // exis

82、t =0,復(fù)位成功,繼續(xù)下一步</p><p><b>  } </b></p><p>  Delay(45); //延遲500us,此時(shí)DQ已經(jīng)被上拉電阻置高</p><p>  exist =~DQ; //DQ置高,退出循環(huán)</p><p><b>  

83、}</b></p><p>  DQ=1; } //一線制總線置高,完成復(fù)位過程</p><p>  4.1.2 USART的初始化</p><p>  CC2430在利用串口USART0通信時(shí),需要定義傳輸波特率、通信模式等。需要將通用控制寄存器(U0GCR)、USART0控制與狀態(tài)寄存器(U0CSR)、控制寄存

84、器(U0UCR)、波特率控制寄存器(U0BAUD)初始化才能正常的運(yùn)行使用。</p><p>  通信需要的初始化子程序如下所示:</p><p>  VOID SENDDATA (UINT8 A, UINT8 B) </p><p>  { HALWAITMS(2);</p><p>  U0DBUF =0XAA;</p>

85、<p>  UTX0IF = 0;</p><p>  HALWAITMS(2);</p><p>  U0DBUF =a;</p><p>  UTX0IF = 0;</p><p>  HALWAITMS(2);</p><p>  U0DBUF =B;</p><p>  UTX

86、0IF = 0; }</p><p><b>  4.2 軟件編程</b></p><p>  4.2.1 DMA程序?qū)懭?lt;/p><p>  在32MHz系統(tǒng)時(shí)鐘下,用DMA 向閃存內(nèi)部寫入程序的流程圖。DMA向Flash寫程序流程如圖10所示。</p><p>  圖10 DMA 向閃存寫程序流程圖</p&

87、gt;<p>  4.2.2監(jiān)控界面設(shè)計(jì)</p><p>  監(jiān)控界面采用VB 6.0語言編寫,通過PC機(jī)COM口連接。將接收到的溫度數(shù)據(jù)在本地計(jì)算機(jī)監(jiān)控界面中顯示出來,從而能夠?qū)崟r(shí)的觀察到監(jiān)測(cè)環(huán)境的溫度,實(shí)現(xiàn)本課題的設(shè)計(jì)。</p><p>  VB可視化界面因其簡單高效的特點(diǎn)已經(jīng)廣泛應(yīng)用到各個(gè)領(lǐng)域,通過使用VB的MSComm通信控件就可以很方便的完成通信軟件的開發(fā)。[5]&

88、lt;/p><p>  MSComm控件通過串口收發(fā)數(shù)據(jù)信息,為應(yīng)用程序提供串行通信功能。MSComm通信控件有以下幾類屬性:</p><p>  (1)CommPort屬性。CommPort用于對(duì)通信連接端口的設(shè)置或返回。</p><p>  (2)Output屬性。Output用于向發(fā)送緩沖區(qū)寫入數(shù)據(jù)。</p><p>  (3)Input屬

89、性。Input用于從接收緩沖區(qū)讀取數(shù)據(jù)。</p><p>  (4)Settings屬性。Settings用于對(duì)參數(shù)的初始化設(shè)置。Settings以字符串的形式設(shè)置或返回奇偶校驗(yàn)、數(shù)據(jù)位、停止位、聯(lián)機(jī)速率。</p><p>  (5)InputMode屬性。InputMode用于對(duì)數(shù)據(jù)格式的讀取設(shè)置。當(dāng)InputMode為1時(shí),數(shù)據(jù)以二進(jìn)制的形式讀??;當(dāng)InputMode為O時(shí),數(shù)據(jù)以文字

90、的形式讀取。</p><p>  (6)Portopen屬性。Portopen用于對(duì)通信串口的狀態(tài)設(shè)置或返回。當(dāng)Portopen為True時(shí),表示串口為打開狀態(tài);當(dāng)Portopen為False時(shí),表示串口為關(guān)閉狀態(tài)。</p><p>  串口通信初始化程序用于對(duì)數(shù)據(jù)緩沖區(qū)和串口的初始化,串口初始化包括定義串口的數(shù)據(jù)格式、選擇通信的串口等。[5]</p><p>  

91、初始化的部分程序代碼如下:</p><p>  MSComm1.CommPort=3 //使用Com3口,即串口3</p><p>  MSComm1.Settings="9600,n,8,1" //設(shè)置通訊參數(shù)</p><p>  MSComm1.InbufferCount=0 //清空接收緩沖區(qū)&

92、lt;/p><p>  MSComm1.OutbufferCount=0 //清空發(fā)送緩沖區(qū)</p><p>  MSComm1.PortOpen=True //打開串口</p><p>  MSComm1.InputMode=1 //通過Input屬性以二進(jìn)制形式取回?cái)?shù)據(jù)</p><p>  MSC

93、omm1.InputLen=0 //Input屬性一次讀取緩沖區(qū)內(nèi)全部數(shù)據(jù)</p><p>  4.2.3 部分程序代碼</p><p>  Void main (void)</p><p><b>  {</b></p><p>  Disdata=0xff; //初始化端口</p&g

94、t;<p>  discan=0xff;</p><p>  TMOD=0x20; //定時(shí)器工作方式2 </p><p>  TL1=0xfd; </p><p><b>  TH1=0xfd;</b></p><p>  REN=1; //允許串口接收</p&

95、gt;<p>  SM0=0; //串口工作方式1</p><p>  TR1=1; //定時(shí)器1 開始工作</p><p><b>  SM1=1; </b></p><p>  ES=1; //串口中斷允許</p><p>  

96、EA=1; //中斷允許</p><p>  for(t=0;t<4;t++) //開機(jī)顯示"0000"</p><p><b>  {</b></p><p>  display[t]=0;</p><p><b>  }</b><

97、;/p><p>  DS18B20_reset ( ); //開機(jī)復(fù)位</p><p>  write (0xcc); //skip ROM</p><p>  write (0x44); //發(fā)轉(zhuǎn)換命令</p><p>  for(t=0;t<100;t++)</p><

98、;p><b>  {</b></p><p>  scan( ); } //顯示掃描函數(shù)</p><p>  SBUF=temp;</p><p>  while(TI!=1);</p><p>  TI=0; //串口發(fā)送中斷標(biāo)志位</p>

99、<p><b>  ES=1;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  /****************DS18B20復(fù)位函數(shù)************************/</p><p> 

100、 Void DS18B20_reset(void) //DS18B20復(fù)位函數(shù)</p><p><b>  { </b></p><p>  char exist=1; //設(shè)置DS18B20存在標(biāo)志</p><p>  while(exist)

101、 //DS18B20是否存在</p><p><b>  {</b></p><p>  while(exist) //DS18B20是否存在</p><p><b>  {</b></p><p>  DQ=1;_nop_( ); _n

102、op_( ); //一線制總線置高2us準(zhǔn)備寫過程</p><p>  DQ=0;delay(50); //一線制總線置低550us,滿足復(fù)位延長時(shí)間條件</p><p>  DQ=1;delay(6); //一線制總線置高66us滿足復(fù)位延長時(shí)間條件</p><p>  exist =DQ; // exist =0,復(fù)位成功,繼續(xù)下一

103、步</p><p><b>  } </b></p><p>  Delay(45); //延遲500us,此時(shí)DQ已經(jīng)被上拉電阻置高</p><p>  exist =~DQ; //DQ置高,退出循環(huán)</p><p><b>  }</b></p>

104、<p><b>  DQ=1; </b></p><p>  } //一線制總線置高,完成復(fù)位過程</p><p>  /**************DS18B20讀字節(jié)函數(shù)************************/</p><p>  uchar DS18B20_read(

105、void) //通過一線制總線向18B20讀一個(gè)字節(jié)</p><p><b>  {</b></p><p><b>  uchar i;</b></p><p>  uchar value=0;</p><p>  for(i=8;i>0;i- -)

106、 //循環(huán)一個(gè)字節(jié)數(shù)</p><p><b>  {</b></p><p>  DQ=1;_nop_();_nop_(); //一線制總線置高2us,準(zhǔn)備讀過程</p><p>  value>>=1; //暫存變量右移一位</p><p>  DQ=0;_nop_()

107、;_nop_();_nop_();_nop_(); </p><p>  //一線制總線置低4us給出讀過程條件</p><p>  DQ=1;_nop_();_nop_();_nop_();_nop_(); </p><p>  //一線制總線置高4us準(zhǔn)備讀數(shù)據(jù)位</p><p>  if(DQ)value|=0x80; //讀

108、取數(shù)據(jù)位并存入暫存變量</p><p>  delay(6); //延遲66 us,滿足讀數(shù)據(jù)條件</p><p><b>  }</b></p><p>  DQ=1; return(value); //一線制總線置高,完成讀過程</p><p><b>  }<

109、/b></p><p>  /****************DS18B20寫命令函數(shù)************************/</p><p>  void DS18B20_write (uchar val) //通過一線制總線向18B20寫一個(gè)字節(jié)</p><p><b>  {</b></p><p>

110、;<b>  uchar i;</b></p><p>  for(i=8;i>0;i- -) //循環(huán)1個(gè)字節(jié)位數(shù)</p><p><b>  {</b></p><p>  DQ=1;_nop_();_nop_(); //一線制總線置高2us,準(zhǔn)備寫過程<

111、;/p><p>  DQ=0;_nop_();_nop_();_nop_();_nop_()_nop_(); </p><p>  //一線制總線置低5us,給出寫過程條件</p><p>  DQ=val&0x01; //向一線制總線移除最低位</p><p>  delay(6); //延

112、遲66 us,滿足寫過程條件</p><p>  val=val/2; //寫字節(jié)右移1位</p><p><b>  }</b></p><p>  DQ=1; //一線制總線置高,完成寫過程</p><p><b>  delay(1);<

113、/b></p><p><b>  }</b></p><p>  /****************讀出溫度函數(shù)************************/</p><p>  Void read_temperature( ) //從DS18B20讀書溫度</p><p><b>  {&

114、lt;/b></p><p>  DS18B20_reset( ); //DS18B20總線復(fù)位</p><p>  DS18B20_write (0xcc); //發(fā)送skip ROM命令</p><p>  DS18B20_write (0xBE); //發(fā)送讀溫度命令</p><p>  tem

115、p_data[0]= DS18B20_read( ) //溫度低8位</p><p>  temp_data[1]= DS18B20_read( ) //溫度高8位</p><p>  DS18B20_reset( ) //DS18B20總線復(fù)位</p><p>  DS18B20_write (0xcc); //發(fā)送skip

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論