基于timac的cc2530無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)【畢業(yè)論文】_第1頁
已閱讀1頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  本科畢業(yè)設(shè)計(jì)(論文)</p><p><b>  ( 屆)</b></p><p>  論文題目 基于TIMAC的CC2530無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)</p><p>  (英文) Design of TIMAC based CC2530 Wireless Sensor Network Node</p>

2、<p>  所在學(xué)院 電子信息學(xué)院 </p><p>  專業(yè)班級 電子信息工程 </p><p>  學(xué)生姓名 學(xué)號 </p><p>  指導(dǎo)教師 職稱 </p><p>  完成日期

3、 年 月 日</p><p><b>  摘 要</b></p><p>  無線傳感器網(wǎng)絡(luò)是一項(xiàng)新興的技術(shù),并具有廣泛的應(yīng)用領(lǐng)域。而媒體訪問控制協(xié)議是保證無線傳感器網(wǎng)絡(luò)高效通信的關(guān)鍵網(wǎng)絡(luò)協(xié)議之一,介質(zhì)訪問控制MAC協(xié)議決定無線傳感器網(wǎng)絡(luò)的性能,如吞吐量、延遲性能等,在節(jié)點(diǎn)之間分配有限的無線通信資源。MAC協(xié)議處于無線傳感器網(wǎng)

4、絡(luò)協(xié)議的底層,與傳統(tǒng)網(wǎng)絡(luò)的MAC協(xié)議不相同的是,無線傳感器網(wǎng)絡(luò)的MAC協(xié)議首要考慮的因素就是節(jié)省能量。MAC協(xié)議在傳感器網(wǎng)絡(luò)中具有重要作用,是保證無線傳感器網(wǎng)絡(luò)高效通信的關(guān)鍵協(xié)議之一。</p><p>  TIMAC協(xié)議在保持周期長度不變的基礎(chǔ)上,根據(jù)通信流量動態(tài)的調(diào)整活動時間,用突發(fā)方式發(fā)送消息,減少了空閑偵聽時間,保證了消息傳輸?shù)目煽考皶r。因此,本文通過IAR Embedded Workbench嵌入式開發(fā)工

5、具進(jìn)行程序設(shè)計(jì),對CC2530實(shí)現(xiàn)點(diǎn)對點(diǎn)主從式溫度檢測,并通過計(jì)算機(jī)串口調(diào)試軟件測試正確的信息,顯示其變化曲線,從而實(shí)現(xiàn)基于TIMAC的CC2530無線傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)溫度檢測和網(wǎng)絡(luò)傳輸。</p><p>  關(guān)鍵詞:無線傳感器網(wǎng)絡(luò);CC2530;ZigBee;TIMAC</p><p><b>  Abstract</b></p><p> 

6、 Wireless sensor networks are a kind of emerging technology, and it has a wide range of applications. Media access control protocol for wireless sensor networks is to ensure that the key to efficient communication networ

7、k protocols, Media Access Control MAC protocol determines the performance of wireless sensor networks, such as throughput, delay performance, etc. It also provides balance functions to distribute limited resources among

8、the nodes in a wireless communication. MAC protocol at the bo</p><p>  TIMAC keeps maintaining the same cycle length based on the dynamic adjustment of traffic activity time, sending a message with the unexp

9、ected and reducing the idle listening time, to ensure reliable and timely transmission of the message. In this paper, we use IAR Embedded Workbench development tools for embedded software development. The main point of t

10、he CC2530 is to achieving the temperature detection, as well as debugging software testing through the computer serial port correct information.</p><p>  Key Words: wireless sensor network; CC2530; ZigBee;TI

11、MAC</p><p><b>  目 錄</b></p><p><b>  1 引言1</b></p><p>  1.1 研究背景1</p><p>  1.2 研究內(nèi)容1</p><p>  1.3 研究現(xiàn)狀2</p><p>  

12、2 無線傳感器網(wǎng)絡(luò)3</p><p>  2.1 無線傳感器網(wǎng)絡(luò)體系結(jié)構(gòu)3</p><p>  2.2 傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的特點(diǎn)4</p><p>  2.3無線傳感器網(wǎng)絡(luò)的特點(diǎn)4</p><p>  2.4 無線傳感器網(wǎng)絡(luò)的應(yīng)用5</p><p>  3 MAC協(xié)議及軟硬件開發(fā)環(huán)境6</p>

13、<p><b>  3.1 概述6</b></p><p>  3.2 無線傳感器網(wǎng)絡(luò)MAC協(xié)議研究現(xiàn)狀6</p><p>  3.3 MAC協(xié)議研究的應(yīng)用和進(jìn)展6</p><p>  3.4 開發(fā)環(huán)境6</p><p>  4 程序設(shè)計(jì)與測試錯誤!未定義書簽。</p><p

14、>  4.1 程序設(shè)計(jì)及流程11</p><p>  4.2 測試結(jié)果及分析14</p><p><b>  結(jié)論17</b></p><p><b>  致 謝18</b></p><p><b>  參考文獻(xiàn)19</b></p><p&

15、gt;  附錄1 實(shí)驗(yàn)測試步驟21</p><p>  附錄2 應(yīng)用程序源代碼22</p><p><b>  1 引言</b></p><p><b>  1.1 研究背景</b></p><p>  無線傳感器網(wǎng)絡(luò)(WSNs,Wireless Sensor Networks)是集信號處

16、理、通信和傳感器三大技術(shù)于一體的全新的信息獲取和處理技術(shù),是集成了大量的傳感器、數(shù)據(jù)處理單元和通信模塊的微小節(jié)點(diǎn)構(gòu)成的全分布式的自組織網(wǎng)絡(luò)[1]。因?yàn)閿?shù)量上很多,傳感器節(jié)點(diǎn)常常會隨機(jī)式的投放在監(jiān)測區(qū)域里。為了節(jié)省功耗的同時增強(qiáng)通信的隱蔽性和抗干擾性,相鄰節(jié)點(diǎn)之間距離要短,并采用低功率的多跳通信模式。WSNs具有實(shí)時性、健壯性、自組織、分布式結(jié)構(gòu)和易擴(kuò)展等特點(diǎn),使其在農(nóng)業(yè)、建筑、軍事、醫(yī)療、環(huán)境監(jiān)測等領(lǐng)域有著傳統(tǒng)網(wǎng)絡(luò)無法比擬的優(yōu)勢[2-4

17、]。</p><p>  用于建立可靠的點(diǎn)到點(diǎn)、點(diǎn)到多點(diǎn)或多點(diǎn)共享的通信鏈路技術(shù)稱之為信道接入技術(shù)。數(shù)據(jù)鏈路層的介質(zhì)接入控制(Medium Access Control,MAC)子層的主要任務(wù)是如何控制共享信道的接入。與傳統(tǒng)的MAC層協(xié)議相比,傳統(tǒng)的MAC層協(xié)議的設(shè)計(jì)目標(biāo)是最小化時延、最大化吞吐量并且提供公平性;而為WSNs設(shè)計(jì)的MAC層協(xié)議關(guān)注的是最小化能耗,這就決定了它要適度地減小吞吐量和增加時延。由于設(shè)計(jì)W

18、SNs網(wǎng)絡(luò)MAC協(xié)議首要考慮的性能指標(biāo)是能量有效性,協(xié)議的可擴(kuò)展性和適應(yīng)網(wǎng)絡(luò)拓?fù)渥兓枰鶕?jù)應(yīng)用進(jìn)行折中,使傳統(tǒng)網(wǎng)絡(luò)的MAC協(xié)議并不適合WSNs網(wǎng)絡(luò)[5-10]。</p><p><b>  1.2 研究內(nèi)容</b></p><p>  1、本論文首先對無線通信協(xié)議中的TIMAC的基本理論進(jìn)行了介紹,然后充分了解該協(xié)議的內(nèi)容,重點(diǎn)對無線編碼傳輸結(jié)構(gòu)進(jìn)行深入研究。&l

19、t;/p><p>  2、了解CC2530的硬件系統(tǒng),簡單的電路應(yīng)用。學(xué)習(xí)開發(fā)環(huán)境IAR Embedded Workbench相關(guān)知識,學(xué)會該軟件的編程及仿真步驟。列出所需要實(shí)現(xiàn)的功能,根據(jù)所掌握的編程知識,逐一實(shí)現(xiàn)所需要的功能。</p><p>  3、通過串口通信實(shí)現(xiàn)與CC2530的通信,上位機(jī)采用串口助手,實(shí)現(xiàn)串口的無線數(shù)據(jù)收發(fā)。在實(shí)際環(huán)境中,對所編寫的程序進(jìn)行編譯測試,根據(jù)程序運(yùn)行的實(shí)

20、際效果,修改完善達(dá)到預(yù)期目標(biāo)。</p><p>  4、收集在不同環(huán)境下,數(shù)據(jù)收發(fā)的速率,傳輸距離,丟包率等信息對比理論數(shù)據(jù)。</p><p><b>  1.3 研究現(xiàn)狀</b></p><p>  近年來,隨著微電子技術(shù)、計(jì)算機(jī)技術(shù)、無線通信和傳感器技術(shù)的飛速發(fā)展和日益成熟,無線傳感器網(wǎng)絡(luò)得到迅速發(fā)展。無線傳感器網(wǎng)絡(luò)是由部署在監(jiān)測區(qū)域內(nèi)的大

21、量微型傳感器節(jié)點(diǎn)組成的。這些節(jié)點(diǎn)可以隨機(jī)或者特定地布置于目標(biāo)環(huán)境中,它們之間通過特定的協(xié)議自組織起來,能夠獲取周圍環(huán)境的信息并且相互協(xié)同工作完成特定任務(wù)。在美國商業(yè)周刊和MIT技術(shù)評論的預(yù)測未來技術(shù)發(fā)展報(bào)告中,被列為21世紀(jì)最有影響的21項(xiàng)技術(shù)和改變世界的10大技術(shù)之一是對無線傳感器網(wǎng)絡(luò)技術(shù)最好的褒獎。</p><p>  在我國,ZigBee應(yīng)該說是一門新的技術(shù),而且已經(jīng)有很大一部分人力物力投入到ZigBee的

22、研究中。不過,因?yàn)檫@項(xiàng)技術(shù)必須和射頻技術(shù)、網(wǎng)絡(luò)技術(shù)以及軟件開發(fā)相結(jié)合,很少有人能深入掌握這個比較綜合的技術(shù),也沒有實(shí)力強(qiáng)大的開發(fā)團(tuán)隊(duì),目前雖然有很多大大小小的公司在從事這個行業(yè),但是國內(nèi)真正將ZigBee技術(shù)開發(fā)成產(chǎn)品并成功地用于解決幾個領(lǐng)域的實(shí)際生產(chǎn)問題的公司并不多。</p><p>  2 無線傳感器網(wǎng)絡(luò)</p><p>  2.1 無線傳感器網(wǎng)絡(luò)體系結(jié)構(gòu)</p>&l

23、t;p>  雖然無線傳感器網(wǎng)絡(luò)的大規(guī)模商業(yè)應(yīng)用,但是受到技術(shù)等方面的制約還有待時日,然而最近幾年,隨著微處理器體積越來越小以及計(jì)算成本的下降,開始投入使用的無線傳感器網(wǎng)絡(luò)也為數(shù)不少了。傳感器網(wǎng)絡(luò)是由許多在空間上分布的自動裝置組成的一種計(jì)算機(jī)網(wǎng)絡(luò),這些裝置使用傳感器協(xié)作地監(jiān)控不同位置的物理或環(huán)境狀況(比如溫度、聲音、振動等)。傳感器網(wǎng)絡(luò)結(jié)構(gòu)如圖2-1所示,傳感器網(wǎng)絡(luò)系統(tǒng)通常包括傳感器節(jié)點(diǎn)(sensor node)、匯聚節(jié)點(diǎn)(sink

24、 node)、和管理節(jié)點(diǎn)。</p><p>  圖2-1 無線傳感器網(wǎng)絡(luò)體系結(jié)構(gòu)</p><p>  如圖2-1所示:無線傳感器網(wǎng)絡(luò)是大量的靜止或移動的傳感器以自組織和多跳的方式構(gòu)成的無線網(wǎng)絡(luò),其目的是協(xié)作地感知、采集、處理和傳輸網(wǎng)絡(luò)覆蓋地理區(qū)域內(nèi)感知對象的監(jiān)測信息,并報(bào)告給用戶。大量的傳感器節(jié)點(diǎn)將探測數(shù)據(jù),通過匯聚節(jié)點(diǎn)經(jīng)其它網(wǎng)絡(luò)發(fā)送給了用戶,實(shí)現(xiàn)任務(wù)管理節(jié)點(diǎn)(即觀察者)與傳感器之間的通

25、信。</p><p>  2.2 傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的特點(diǎn)</p><p>  廉價(jià):每個節(jié)點(diǎn)的期望價(jià)格在一美元左右;</p><p>  體積?。夯鸩窈谢蛴矌虐愦笮?;</p><p>  重量輕:小于100克;</p><p>  能量有限:兩節(jié)五號電池或紐扣電池供電</p><p>  無線通信

26、能力:能夠用無線電、紅外線、藍(lán)牙、超聲波等通信,帶寬低,干擾大;</p><p>  計(jì)算能力:幾百兆HZ的處理器;</p><p>  存儲能力:幾兆或幾百兆的存儲空間;</p><p>  感知能力:具有一個或幾個傳感器。</p><p>  2.3無線傳感器網(wǎng)絡(luò)的特點(diǎn)</p><p>  大規(guī)模網(wǎng)絡(luò):在監(jiān)測區(qū)域部

27、署大量傳感器節(jié)點(diǎn)是為了獲取精確信息。傳感器節(jié)點(diǎn)具有密度高,數(shù)量大的特點(diǎn)。其中包括兩個方面的含義:1.傳感器節(jié)點(diǎn)分布在很大的地理區(qū)域內(nèi),如在原始大森林采用傳感器網(wǎng)絡(luò)進(jìn)行森林防火和天氣檢測等,需要部署大量的傳感器節(jié)點(diǎn);2.傳感器節(jié)點(diǎn)部署很密集,在一個面積不是很大的空間內(nèi),會密集部署了大量的傳感器節(jié)點(diǎn)。</p><p>  絡(luò)拓?fù)浣Y(jié)構(gòu)的動態(tài)變化:由于節(jié)點(diǎn)資源受限,特別是能量有限,且傳感器節(jié)點(diǎn)會損壞,從而導(dǎo)致一些節(jié)點(diǎn)不能

28、正常工作。為了彌補(bǔ)失效節(jié)點(diǎn)、增加監(jiān)測精度一些節(jié)點(diǎn)會補(bǔ)充到網(wǎng)絡(luò)中,這樣在網(wǎng)絡(luò)中的傳感器節(jié)點(diǎn)個數(shù)就會動態(tài)地增加或減少,從而使網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)隨之動態(tài)地變化。這就要求傳感器節(jié)點(diǎn)的自組織能力來適應(yīng)這種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的動態(tài)變化。</p><p>  動態(tài)性:傳感器網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)可能由一下因素改變:1.環(huán)境條件的變化可能造成無線通信鏈路帶寬的變化,甚至出現(xiàn)有時通有時斷的現(xiàn)象;2.傳感器網(wǎng)絡(luò)的觀察者、感知對象和傳感器這三要素都可能

29、具有移動性;3.新節(jié)點(diǎn)的加入。這就要求傳感器網(wǎng)絡(luò)系統(tǒng)要能夠適應(yīng)這種變化,具有動態(tài)的系統(tǒng)可重構(gòu)性。</p><p>  2.4 無線傳感器網(wǎng)絡(luò)的應(yīng)用</p><p>  傳感器網(wǎng)絡(luò)在環(huán)境監(jiān)視方面的優(yōu)勢:通過在物理環(huán)境中部署大量廉價(jià)的理智傳感器節(jié)點(diǎn),可以獲得長時間、近距離、高分辨率的環(huán)境數(shù)據(jù),這是傳統(tǒng)監(jiān)視設(shè)備無法得到的。傳感器節(jié)點(diǎn)的計(jì)算和存儲能力允許節(jié)點(diǎn)執(zhí)行數(shù)據(jù)過濾、數(shù)據(jù)壓縮等操作,也可以執(zhí)行

30、一些應(yīng)用特定的處理任務(wù)。節(jié)點(diǎn)之間的通信能力允許節(jié)點(diǎn)之間協(xié)同完成更復(fù)雜的任務(wù),如目標(biāo)跟蹤。通過任務(wù)的重新分配可以改變傳感器網(wǎng)絡(luò)的用途。</p><p>  2.4.1. 環(huán)境的監(jiān)測和保護(hù)</p><p>  應(yīng)用于環(huán)境監(jiān)測的傳感器網(wǎng)絡(luò),一般具有部署簡單、便宜、長期不需要更換電池、無需派人現(xiàn)場維護(hù),為隨機(jī)性的研究數(shù)據(jù)獲取提供了便利,并且還可以避免傳統(tǒng)數(shù)據(jù)收集方式給環(huán)境帶來侵入式破壞的優(yōu)點(diǎn)。通過

31、密集的節(jié)點(diǎn)布置,可以觀察到微觀的環(huán)境因素,為環(huán)境研究和環(huán)境監(jiān)測提供了嶄新的途徑。</p><p>  2.4.2. 醫(yī)療護(hù)理</p><p>  英特爾公司推出了無線傳感器網(wǎng)絡(luò)的家庭護(hù)理技術(shù)??茖W(xué)家使用無線傳感器創(chuàng)建了一個智能醫(yī)療房間,使用微塵來測量居住者的重要征兆(血壓、脈搏和呼吸)、睡覺姿勢以及每天24小時的活動狀況。</p><p>  2.4.3. 軍事領(lǐng)域

32、</p><p>  1.監(jiān)測人員、裝備等情況以及單兵系統(tǒng);2.監(jiān)測敵軍進(jìn)攻;3.評估戰(zhàn)果;4.核能、生物、化學(xué)攻擊的偵查。 </p><p>  3 MAC協(xié)議及軟硬件開發(fā)環(huán)境</p><p>  MAC 協(xié)議處于傳感器網(wǎng)絡(luò)協(xié)議的底層部分,對傳感器網(wǎng)絡(luò)的性能有較大影響。MAC 協(xié)議設(shè)計(jì)的好壞是保證無線傳感器網(wǎng)絡(luò)通信高效與否的關(guān)鍵因素之一。 </p>

33、<p><b>  3.1 概述</b></p><p>  媒體訪問控制協(xié)議簡稱MAC協(xié)議,處于無線傳感器網(wǎng)絡(luò)協(xié)議的底層部分,以解決無線傳感器網(wǎng)絡(luò)中節(jié)點(diǎn)以怎樣的規(guī)則共享媒體才能保證滿意的網(wǎng)絡(luò)性能問題。 在無線傳感器網(wǎng)絡(luò)體系結(jié)構(gòu)中,MAC(medium access control)協(xié)議是保證網(wǎng)絡(luò)高效通信的重要協(xié)議。MAC協(xié)議的主要作用是保證公平性和有效的資源共享。MAC機(jī)制主要

34、分為兩類:1.基于競爭的協(xié)議2.無競爭的信道協(xié)議?;诟偁幍膮f(xié)議,假定網(wǎng)絡(luò)中沒有中心實(shí)體來進(jìn)行分配信道資源,那每個節(jié)點(diǎn)必須通過競爭媒體資源來進(jìn)行傳送,當(dāng)多個節(jié)點(diǎn)同時嘗試發(fā)送時,就會發(fā)生碰撞。相反,無競爭的協(xié)議為每個需要通信的節(jié)點(diǎn)分配了專用的信道資源。無競爭的協(xié)議有效的減少了沖突,其代價(jià)是降低了突發(fā)數(shù)據(jù)業(yè)務(wù)的信道利用率。無線傳感器網(wǎng)絡(luò)與傳統(tǒng)無線網(wǎng)絡(luò)相比,有著明顯不同的性能特點(diǎn)和技術(shù)要求。傳統(tǒng)無線網(wǎng)絡(luò)MAC協(xié)議無法應(yīng)用于傳感器網(wǎng)絡(luò),從而使各

35、種針對特定傳感器網(wǎng)絡(luò)特點(diǎn)的MAC協(xié)議相繼提出。</p><p>  3.2 無線傳感器網(wǎng)絡(luò)MAC協(xié)議研究現(xiàn)狀</p><p>  目前針對不同的傳感器網(wǎng)絡(luò)應(yīng)用,研究人員從不同的方面提出了多種MAC協(xié)議,但目前還缺少一個統(tǒng)一的分類方式。</p><p>  3.3 MAC協(xié)議研究的應(yīng)用和進(jìn)展</p><p>  MAC層的特征是:聯(lián)合,分離,

36、確認(rèn)幀傳遞,通道訪問機(jī)制, 幀確認(rèn),保證時隙管理,和信令管理。對于MAC子層提供的MAC數(shù)據(jù)服務(wù),可以通過MAC公用部分子層MCPS數(shù)據(jù)服務(wù)接入進(jìn)行訪問,即請求從本地SSCS實(shí)體向另外一個對等SSCS實(shí)體傳輸數(shù)據(jù);而對于MAC管理服務(wù),可通過MLME的管理實(shí)體的服務(wù)接入點(diǎn)訪問。這兩個服務(wù)為網(wǎng)絡(luò)層和物理層提供了一個接口。</p><p>  MAC是處理所有對物理層的訪問,其表現(xiàn)為:支持個域網(wǎng)絡(luò)關(guān)聯(lián)和去關(guān)聯(lián);處理和

37、維護(hù)時隙機(jī)制;信標(biāo)的同步;如果設(shè)備是協(xié)調(diào)器,需要產(chǎn)生網(wǎng)絡(luò)信標(biāo);并且支持設(shè)備安全規(guī)范以及提供MAC實(shí)體間的可靠連接。</p><p>  MAC層定義了如下的基本幀結(jié)構(gòu):信標(biāo)幀,它是提供給協(xié)商者使用的,在信標(biāo)幀中超幀描述字段規(guī)定了這個超幀的持續(xù)時間,活躍部分持續(xù)時間以及競爭訪問持續(xù)時間等信息;響應(yīng)幀,它確保幀的順利傳輸;數(shù)據(jù)幀,它承載著所有的數(shù)據(jù),它用來傳輸上層發(fā)到MAC子層的數(shù)據(jù);以及MAC命令幀,它是用來處理M

38、AC對等實(shí)體之間數(shù)據(jù)的控制傳送。以上幀結(jié)構(gòu)的設(shè)計(jì)是為了保證網(wǎng)絡(luò)在有噪聲的信道上得以可靠、有效、穩(wěn)定的傳輸將網(wǎng)絡(luò)的復(fù)雜性降低到最少。</p><p>  國內(nèi)外WSN的研究主要在網(wǎng)絡(luò)協(xié)議、能量、可靠性等問題,其中MAC層協(xié)議的研究是其中的熱點(diǎn)。它決定著無線信道的使用方式,為節(jié)點(diǎn)分配資源,直接影響整個網(wǎng)絡(luò)性能從而使之成為WSN研究的重點(diǎn)。</p><p>  傳感器網(wǎng)絡(luò)有著巨大的應(yīng)用前景,使其

39、研究正逐步受到各國研究人員的重視。在我國,清華大學(xué),北京郵電大學(xué),中科院研究所等也開始對傳感器網(wǎng)絡(luò)進(jìn)行研究,并取得了一些初步進(jìn)展。</p><p><b>  3.4 開發(fā)環(huán)境</b></p><p>  1. IAR Embedded Workbench嵌入式開發(fā)工具: 為了配合CC2530芯片里增強(qiáng)型的8051內(nèi)核,在安裝時選擇了相應(yīng)的MSC-51的模式,它是8位

40、處理器,但I(xiàn)AR也大量應(yīng)用在8位、16位還有32位的控制器。IAR EW為用戶提供了高效的工作環(huán)境,運(yùn)用IAR工具,用戶的開發(fā)時間可以顯著的節(jié)省。它包括高度優(yōu)化的 IAR AVR C/C++編譯器; AVR IAR 匯編器;通用 IAR XLINK Linker; IAR XAR 庫創(chuàng)建器和 IAR XLIB Librarian;一個強(qiáng)大的編輯器;一個工程管理器; TM IAR C-SPY 調(diào)試器,一個具有世界先進(jìn)水平的高級語言調(diào)試器。

41、</p><p>  圖3-2 IAR開發(fā)環(huán)境安裝界面</p><p>  圖3-3 MCS-51開發(fā)界面</p><p>  2. 硬件介紹:飛比Zigbee系列開發(fā)套件目前共有四種推薦配置,入門型套件(MDK)、進(jìn)階型套件(ADK)、網(wǎng)絡(luò)型套件(NDK)和無線傳感網(wǎng)套件(WSNDK)。它可同時實(shí)現(xiàn)環(huán)境的溫度與濕度數(shù)據(jù)的采集。其溫度采集精度可達(dá)±0.

42、5℃,濕度精度可達(dá)±3.5%RH。其采用雙向兩線串行數(shù)據(jù)接口與CC2530-Zigbee模塊進(jìn)行通訊,大大節(jié)省了系統(tǒng)資源,簡化了其采集系統(tǒng)的設(shè)計(jì)。另外,其超低功耗與超穩(wěn)定的工作性能,極其適合作為zigbee網(wǎng)絡(luò)中的傳感器。</p><p>  圖3-4 高性能 2.4G 射頻模塊</p><p>  圖3-5 多功能開發(fā)板</p><p><b&g

43、t;  產(chǎn)品功能</b></p><p>  飛比CC2530MDK名稱中的“M”代表Multi,即多功能開發(fā)套件。其多功能體現(xiàn)在:它不僅僅是一個Zigbee的開發(fā)套件,同時它還是RF4CE的開發(fā)套件,并且兼容了紅外遙控器的收發(fā)功能。 另外,由于這個多功能擴(kuò)展底板FB2530EB與TI的SmartRF05EB可以完美兼容,所以軟件平臺并不僅僅于ZStack與RemoTI,TI現(xiàn)有的軟件平臺,如Basi

44、cRF、TIMAC、SimpliciTI等平臺,甚至將包括TI以后將發(fā)布的基于SmartRF05EB的平臺,都能在硬件上完美運(yùn)行。</p><p>  4 程序設(shè)計(jì)與測試</p><p>  4.1 程序設(shè)計(jì)及流程</p><p>  4.1.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)圖</p><p>  圖4-1 系統(tǒng)結(jié)構(gòu)框圖</p><p&

45、gt;  流程簡介:采集節(jié)點(diǎn)講采集片內(nèi)溫度和節(jié)點(diǎn)電源的電壓,并顯示在LCD。同時將采集的數(shù)據(jù)通過TIMAC協(xié)議發(fā)送給接收節(jié)點(diǎn),接收節(jié)點(diǎn)講接收到的數(shù)據(jù)通過串口發(fā)送給電腦,并在電腦上顯示測到的溫度和電壓。</p><p>  4.1.2 發(fā)送流程簡介及框圖</p><p>  在采集節(jié)點(diǎn)的程序中,首先是初始化溫度,即:</p><p>  void initTempSe

46、nsor(void){</p><p>  DISABLE_ALL_INTERRUPTS(); //關(guān)閉所有中斷</p><p>  InitClock(); //設(shè)置系統(tǒng)主時鐘為32M</p><p>  *((BYTE __xdata*) 0x624B) = 0x01; //開啟溫度傳感器&l

47、t;/p><p>  *((BYTE __xdata*) 0x61BD) = 0x01; //將溫度傳感器與ADC連接起來</p><p><b>  }</b></p><p>  然接著初始化端口: </p><p>  void initUARTtest(void)</p><p><

48、b>  {</b></p><p>  CLKCONCMD &= ~0x40; //晶振</p><p>  while(!(SLEEPSTA & 0x40)); //等待晶振穩(wěn)定</p><p>  CLKCONCMD &= ~0x47; //TICHSPD128分頻,CLKSPD

49、不分頻SLEEPCMD |= 0x04; //關(guān)閉不用的RC振蕩器</p><p>  PERCFG = 0x00; //位置1 P0口</p><p>  P0SEL = 0x3c; //P0用作串口</p><p>  U0CSR |= 0x80; //UART方式</p><p>

50、  U0GCR |= 10; //baud_e = 10;</p><p>  U0BAUD |= 216;//波特率設(shè)為57600</p><p>  UTX0IF = 1;</p><p>  U0CSR |= 0X40; //允許接收</p><p>  IEN0 |= 0x84; //開

51、總中斷,接收中斷</p><p><b>  }</b></p><p>  經(jīng)過初始化,接下將執(zhí)行采集片內(nèi)溫度和電源電壓的任務(wù),其程序大致如下:</p><p>  ADC_SINGLE_CONVERSION(ADC_REF_1_25_V|ADC_14_BIT|ADC_TEMP_SENS); value = ADCL >> 2;

52、value |= (((uint16)ADCH) << 6);該程序執(zhí)行的是以1.25V內(nèi)部電壓為參考電壓,以512抽取率、12為分辨率的配置對溫度進(jìn)行AD轉(zhuǎn)換,然后將得到的vlaue值執(zhí)行ADC14_TO_CELSIUS(value);#define ADC14_TO_CELSIUS(ADC_VALUE) ( ((ADC_VALUE) >> 4)-315 )。經(jīng)過這條程序?qū)⒌玫椒蠈?shí)際的溫度值。</p&g

53、t;<p>  而電壓的采集方式和溫度的AD轉(zhuǎn)換類似,只是得到的電源電壓是為原來的三分之一,所以要將AD結(jié)果的值做乘3的步驟。最后將得到的數(shù)據(jù)依次裝入pTxData數(shù)組,將得到的數(shù)據(jù)發(fā)送給另外一個節(jié)點(diǎn)。</p><p>  4.1.3 流程框圖</p><p>  圖4-2 收集節(jié)點(diǎn)流程圖</p><p>  串口發(fā)送字符串函數(shù):</p>

54、<p>  void UartTX_Send_String(char *Data,int len)</p><p><b>  {</b></p><p><b>  int j;</b></p><p>  for(j=0;j<len;j++)</p><p><b>

55、  {</b></p><p>  U0DBUF = *Data++;</p><p>  while(UTX0IF == 0);</p><p>  UTX0IF = 0;</p><p><b>  }</b></p><p><b>  }</b></

56、p><p>  void UartTX_Send_word(char word)</p><p><b>  {</b></p><p>  U0DBUF = word;</p><p>  while(UTX0IF == 0);</p><p>  UTX0IF = 0;</p>&l

57、t;p><b>  }</b></p><p>  如果已經(jīng)接收到數(shù)據(jù),則將pRxData[i]數(shù)組中的數(shù)據(jù)依次通過串口發(fā)送到PC機(jī)上,提供監(jiān)測的數(shù)據(jù)。</p><p>  4.2 測試結(jié)果及分析</p><p>  圖4-3 測試結(jié)果一</p><p>  圖4-3是剛上電時采集節(jié)點(diǎn)測得的電源電壓,該測得溫度為3

58、6度,該溫度是片內(nèi)的溫度。接下來通過手接觸芯片來增加片內(nèi)的溫度,測試該溫度檢測是否正常工作。</p><p>  圖4-4 測試結(jié)果二</p><p>  從圖4-4可以看到,當(dāng)手接觸芯片時,芯片的溫度變?yōu)榱?9度。</p><p>  圖4-5 測試結(jié)果三</p><p>  圖4-5顯示溫度為49度,如果繼續(xù)放這手指片內(nèi)溫度還會提升。&l

59、t;/p><p>  從以上測試的結(jié)果可以說明,采集節(jié)點(diǎn)基本達(dá)到了測量節(jié)點(diǎn)溫度的要求。接下觀察接收節(jié)點(diǎn)是否接收到了響應(yīng)的數(shù)據(jù)。</p><p>  圖4-6 接收點(diǎn)串口數(shù)據(jù)</p><p>  當(dāng)我們改變片內(nèi)的溫度和電源電壓的時候,接收點(diǎn)的數(shù)據(jù)在串口調(diào)試助手的窗口上也得到了相應(yīng)的變化,從而證明兩節(jié)點(diǎn)已經(jīng)實(shí)現(xiàn)正常工作狀態(tài)。</p><p><

60、b>  結(jié)論</b></p><p>  本文論述了使用IAR Embedded Workbench嵌入式開發(fā)工具進(jìn)行CC2530上點(diǎn)對點(diǎn)主從溫度檢測應(yīng)用開發(fā)的過程和技術(shù)問題,在此過程中了解了CC2530芯片的基本工作原理,基本掌握適用于CC2530的TIMAC通信協(xié)議內(nèi)容,研究TIMAC通信流程和工作機(jī)制。</p><p>  通過IAR Embedded Workbe

61、nch嵌入式開發(fā)工具進(jìn)行CC2530上點(diǎn)對點(diǎn)主從溫度檢測應(yīng)用的開發(fā),記錄實(shí)驗(yàn)所得到的數(shù)據(jù),發(fā)現(xiàn)節(jié)點(diǎn)能夠采集環(huán)境的溫度,并將采集的數(shù)據(jù)在節(jié)點(diǎn)中傳播。</p><p>  由于條件的不足,沒有對長距離的通信進(jìn)行實(shí)際測試,有待在以后的學(xué)習(xí)中不斷進(jìn)步。</p><p><b>  致 謝</b></p><p>  在這次設(shè)計(jì)期間,整個過程遇到了許多

62、意想不到的問題,不過在施老師和同學(xué)的耐心幫助下,逐一解決了出現(xiàn)的問題,最終圓滿的完成了要求。讓我更快,更輕松的解決了一次次實(shí)驗(yàn)中出現(xiàn)的問題。在此,我要衷心地感謝施老師,感謝他對我在畢業(yè)設(shè)計(jì)上的指導(dǎo)和幫助!</p><p><b>  參考文獻(xiàn)</b></p><p>  [1]任豐原,黃海寧,林闖.無線傳感器網(wǎng)絡(luò)[J].軟件學(xué)報(bào),2003,14(7):1282-129

63、1.</p><p>  [2]吳光榮,章劍雄.基于cc2430的無線傳感器網(wǎng)絡(luò)的實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2008,12:21-124.</p><p>  [3]David C. Steere, Antonio Baptista, Dylan McNamee, Calton Pu, Jonathan Walpole. Research Challenges in Environment

64、al Observation and Forecasting systems[C]. Proceedings of the 6th ACM/IEEE MobiCOM, 2000: 292-299.</p><p>  [4]鄭增威,吳朝暉,金水祥.無線傳感器網(wǎng)絡(luò)及其應(yīng)用[J].計(jì)算機(jī)科學(xué),2003,30(10):138-140.</p><p>  [5]曾鵬,于海斌,梁英,尚志軍,王忠鋒

65、.分布式無線傳感器網(wǎng)絡(luò)體系結(jié)構(gòu)及應(yīng)用支撐技術(shù)研究[J].信息與控制,2004,33(3):307-313.</p><p>  [6]叢秋波.2.4GHz RF解決方案用于低功耗無線網(wǎng)絡(luò)系統(tǒng)開發(fā)[J].電子設(shè)計(jì)技術(shù), 2009,11(7):4-15.</p><p>  [7]宋杰.無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)及Delphi監(jiān)控軟件開發(fā)[D].天津:河北大學(xué)學(xué)位論文, 2010.</p&g

66、t;<p>  [8]楊德斌,伍俊,陽建宏.無線數(shù)字傳感器網(wǎng)絡(luò)節(jié)點(diǎn)[J].儀表技術(shù)與傳感器,2007,21(9):1-53.</p><p>  [9]周麗敏,田斌,廖婷.無線傳感器網(wǎng)絡(luò)T-MAC協(xié)議的研究[J].傳感器與微系統(tǒng),2007,25(6):36-38.</p><p>  [10]石為人,馮會偉,唐云建.一種無線傳感器網(wǎng)絡(luò)MAC層協(xié)議設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)科學(xué),

67、2009,7,36(7):60-67.</p><p>  [11]李文仲,段朝玉.ZigBee2006無線網(wǎng)絡(luò)與無線定位實(shí)戰(zhàn)[M].北京:北京航空航天大學(xué)出版社,2008,1.</p><p>  [12]Ran Peng,Sun Mao-heng.Zou Tou-min,ZigBee Routing Selection Strategy Based on Data Services a

68、nd Energy-balanced ZigBee Rounting[C].Proceedings of the 2006IEEEAsia-PacificConferenceon Services Computing(APSCC'06),Dec,2006.</p><p>  [13]Kwang Koog Lee,Seong Hoon Kim,Yong Soon Choi,Hong Seong Park.

69、A Mesh routing Protocol using Cluster Label in the ZigBee Network[C].Mobil Adhoc and Sensor Sysetems(MASS).2006 IEEE International Conference on,Oct. 2006</p><p>  附錄1 實(shí)驗(yàn)測試步驟</p><p>  步驟一:將采集程序

70、下載到一塊開發(fā)板,可以在液晶屏上看到實(shí)時測量的溫度和電壓。此時,該節(jié)點(diǎn)已經(jīng)在發(fā)送數(shù)據(jù)。</p><p>  步驟二:將接收程序下載到另一塊開發(fā)板,并且打開串口調(diào)試助手,可以看到溫度和電壓在電腦上顯示。</p><p>  步驟三:將手放在CC2530芯片上來改變片內(nèi)溫度,可以發(fā)現(xiàn)采集點(diǎn)和電腦屏幕上溫度的變化。</p><p>  步驟四:將原來電源供電改為電池供電可

71、以發(fā)現(xiàn)實(shí)測電壓也發(fā)生了變化。</p><p>  附錄2 應(yīng)用程序源代碼</p><p>  /**********************采集發(fā)射節(jié)點(diǎn)程序*****************************/</p><p>  #include "hal_types.h"</p><p>  #include

72、"hal_key.h"</p><p>  #include "hal_timer.h"</p><p>  #include "hal_drivers.h"</p><p>  #include "hal_led.h" /* MAC Applicat

73、ion Interface */</p><p>  #include "mac_api.h" /* Application */</p><p>  #include "msa.h" /* OSAL */</p><p>  #include &quo

74、t;OSAL.h"</p><p>  #include "OSAL_Tasks.h"</p><p>  #include "OnBoard.h"</p><p>  #include "OSAL_PwrMgr.h"</p><p>  #define Conversio

75、nNum 20 </p><p>  #define led1 P1_0 //定義LED1為P10口控制</p><p>  #define led2 P1_1 //定義LED2為P11口控制</p><p>  /* This callback is triggered when a key is

76、pressed */</p><p>  void MSA_Main_KeyCallback(uint8 keys, uint8 state);</p><p>  /*********溫度傳感器初始化函數(shù)************************************/</p><p>  void initTempSensor(void)</p&g

77、t;<p><b>  {</b></p><p>  DISABLE_ALL_INTERRUPTS(); //關(guān)閉所有中斷</p><p>  InitClock(); //設(shè)置系統(tǒng)主時鐘為32M</p><p>  *((uint8 __xdata*) 0x

78、624B) = 0x01; //開啟溫度傳感器</p><p>  *((uint8 __xdata*) 0x61BD) = 0x01; //將溫度傳感器與ADC連接起來</p><p><b>  }</b></p><p>  /***************讀取溫度傳感器AD值函數(shù)**********************

79、**/</p><p>  int8 getTemperature(void){</p><p>  uint8 i;</p><p>  uint16 AdcValue;</p><p>  uint16 value;</p><p>  AdcValue = 0;</p><p> 

80、 for( i = 0; i < 4; i++ )</p><p><b>  {</b></p><p>  ADC_SINGLE_CONVERSION(ADC_REF_1_25_V | ADC_14_BIT | ADC_TEMP_SENS); //使用1.25V內(nèi)部電壓,14位分辨率,AD源為:溫度傳感器</p&g

81、t;<p>  ADC_SAMPLE_SINGLE(); //開啟單通道ADC</p><p>  while(!ADC_SAMPLE_READY()); //等待AD轉(zhuǎn)換完成</p><p>  value = ADCL >> 2; /ADCL寄存器低2位無效</p><p

82、>  value |= (((uint16)ADCH) << 6); </p><p>  AdcValue += value; //AdcValue被賦值為4次AD值之和</p><p><b>  }</b></p><p>  value = AdcValue >>

83、2; //累加除以4,得到平均值</p><p>  return ADC14_TO_CELSIUS(value); //根據(jù)AD值,計(jì)算出實(shí)際的溫度</p><p><b>  }</b></p><p>  /**********************主函數(shù)**********************

84、******************/</p><p>  int main(void)</p><p><b>  {</b></p><p>  /* Initialize hardware */</p><p>  HAL_BOARD_INIT();</p><p>  /* Initial

85、ze the HAL driver */</p><p>  HalDriverInit();</p><p>  /* Initialize MAC */</p><p>  MAC_Init();</p><p>  /* Initialize the operating system */</p><p>  o

86、sal_init_system();</p><p>  /* Enable interrupts */</p><p>  HAL_ENABLE_INTERRUPTS();</p><p>  /* Setup Keyboard callback */</p><p>  HalKeyConfig(MSA_KEY_INT_ENABLED,

87、MSA_Main_KeyCallback);</p><p>  /* Blink LED on startup */</p><p>  HalLedBlink (HAL_LED_4, 0, 40, 200);</p><p>  /* Start OSAL */</p><p>  osal_start_system(); // No R

88、eturn from here</p><p><b>  return 0;</b></p><p><b>  }</b></p><p>  /************************CALL-BACKS*************************/</p><p>  void

89、 MSA_Main_KeyCallback(uint8 keys, uint8 state)</p><p><b>  {</b></p><p>  if ( MSA_TaskId != TASK_NO_TASK )</p><p><b>  {</b></p><p>  MSA_Handl

90、eKeys (keys, state);</p><p><b>  }</b></p><p><b>  }</b></p><p>  /********************************************************************/</p><p>

91、  void MSA_PowerMgr(uint8 enable)</p><p><b>  {</b></p><p>  /* enable OSAL power management */</p><p>  if (enable)</p><p>  osal_pwrmgr_device(PWRMGR_BATT

92、ERY);</p><p><b>  else</b></p><p>  osal_pwrmgr_device(PWRMGR_ALWAYS_ON);</p><p><b>  }</b></p><p>  /******************************************

93、************************* / </p><p>  AvgTemp = 0;</p><p>  for(i = 0 ; i < 64 ; i++)</p><p><b>  {</b></p><p>  AvgTemp += getTemperature();

94、 </p><p>  AvgTemp >>= 1; //每次累加后除2.</p><p><b>  }</b></p><p>  temp=AvgTemp/10;</p><p>  msg[0]=temp; </p>

95、;<p>  temp1=AvgTemp%10;</p><p>  msg[1]=temp1;</p><p>  toggleLED(1); // 開關(guān)ED 的第一個燈</p><p><b>  break;</b></p><p>  sprintf(TempValue, (char *)&quo

96、t;%dC/r", (INT8)AvgTemp);</p><p>  UartTX_Send_String(TempValue,4); </p><p>  RLED = !RLED; // LED1燈閃一次</p><p>  Delay(50000);</p><p><b>

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論