




已閱讀5頁,還剩39頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
基于 CC2430 無線信道選擇的軟件設(shè)計 基于基于 CC2430 無線信道選無線信道選 擇的軟件設(shè)計畢業(yè)論文擇的軟件設(shè)計畢業(yè)論文 目錄 摘要摘要 I ABSTRACT II 引言引言 1 1 無線傳感器網(wǎng)絡(luò)概述無線傳感器網(wǎng)絡(luò)概述 2 1 1 無線傳感器網(wǎng)絡(luò) WSN 的定義 2 1 2 無線傳感器網(wǎng)絡(luò)技術(shù)的發(fā)展歷程 2 1 3 無線傳感器網(wǎng)絡(luò)技術(shù)的發(fā)展趨勢 3 1 3 1 靈活 自適應(yīng)的網(wǎng)絡(luò)協(xié)議體系 3 1 3 2 跨層設(shè)計 3 1 3 3 ZigBee 標準規(guī)范 3 1 3 4 與其他網(wǎng)絡(luò)的融合 3 1 4 無線傳感器網(wǎng)絡(luò)的結(jié)構(gòu) 3 1 4 1 通信結(jié)構(gòu) 3 1 4 2 節(jié)點結(jié)構(gòu) 4 1 4 3 拓撲結(jié)構(gòu) 4 1 4 4 通信協(xié)議棧 5 1 5 線傳感器網(wǎng)絡(luò)技術(shù)的應(yīng)用 6 1 5 1 軍事應(yīng)用 6 1 5 2 基礎(chǔ)設(shè)施安全監(jiān)控 6 1 5 3 醫(yī)療應(yīng)用 6 1 5 4 環(huán)境監(jiān)控 7 1 5 5 自動交通流量監(jiān)控 7 1 5 6 動物跟蹤監(jiān)控 7 1 5 7 居住環(huán)境監(jiān)控 7 1 5 8 其他方面的應(yīng)用 7 2 ZIGBEE 協(xié)議協(xié)議 8 2 1 ZIGBEE簡介 8 2 2 ZIGBEE的發(fā)展 8 2 3 ZIGBEE的特點 9 2 3 1 低功耗 9 2 3 2 低成本 9 2 3 3 低速率 9 2 3 4 近距離 9 2 3 5 短時延 9 基于 CC2430 無線信道選擇的軟件設(shè)計 2 3 6 高容量 10 2 3 7 高安全 10 2 3 8 免執(zhí)照頻段 10 2 4 ZIGBEE的框架 10 2 4 1 ZigBee 的 IEEE 相關(guān) 10 2 4 2 網(wǎng)絡(luò)層次 11 2 4 3 應(yīng)用層 12 2 5 ZIGBEE的應(yīng)用 14 3 程序開發(fā)環(huán)境程序開發(fā)環(huán)境 15 3 1 TINYOS 概述 15 3 1 1 TinyOS 的定義 15 3 1 2 TinyOS 的特點 16 3 2 NESC 的基本概念 16 3 2 1 nesC 簡介 16 3 2 2 nesC 語法結(jié)構(gòu) 16 4 軟件設(shè)計軟件設(shè)計 19 4 1 軟件設(shè)計原理 19 4 2 程序設(shè)計流程圖 20 4 3 程序的編譯 運行 21 結(jié)論結(jié)論 30 致謝致謝 31 參考文獻參考文獻 32 附錄附錄 34 1 無線傳感器網(wǎng)絡(luò)概述 無線傳感器網(wǎng)絡(luò)是一種全新的信息獲取和處理技術(shù) 它集成了傳感器 微 機電系統(tǒng)和網(wǎng)絡(luò)三大技術(shù) 這里從無線傳感器的概念出發(fā) 概括介紹其發(fā)展歷 程及其發(fā)展趨勢 并對無線傳感器網(wǎng)絡(luò)的結(jié)構(gòu)及關(guān)鍵技術(shù)做了詳細介紹 最后介 紹了無線傳感器網(wǎng)絡(luò)技術(shù)在各領(lǐng)域的應(yīng)用及發(fā)展狀況 1 1 無線傳感器網(wǎng)絡(luò) WSN 的定義 無線傳感器網(wǎng)絡(luò) wireless Sensor Networks WSN 就是由大量的密集部 署在監(jiān)控區(qū)域的智能傳感器節(jié)點構(gòu)成的一種網(wǎng)絡(luò)應(yīng)用系統(tǒng) 由于傳感器節(jié)點數(shù) 量眾多 部署時只能采用隨機投放的方式 傳感器節(jié)點的位置不能預(yù)先確定 在任意時刻 節(jié)點間通過無線信道連接 采用多跳 multi hop 對等 peer to 基于 CC2430 無線信道選擇的軟件設(shè)計 peer 通信方式 自組織網(wǎng)絡(luò)拓撲結(jié)構(gòu) 傳感器節(jié)點間具有很強的協(xié)同能力 通 過局部的數(shù)據(jù)采集 預(yù)處理以及節(jié)點間的數(shù)據(jù)交換來完成全局任務(wù) 1 2 無線傳感器網(wǎng)絡(luò)技術(shù)的發(fā)展歷程 1996 年 美國 UCLA 大學(xué)的 William J Kaiser 教授向美國國防部遠景研究 計劃局 DARPA 提交的 低能耗無線集成微型傳感器 揭開了現(xiàn)代 WSN 網(wǎng)絡(luò)的序 幕 1998 年 同是 UCLA 大學(xué)的 Gregory J Pottie 教授從網(wǎng)絡(luò)研究的角度重新 闡釋了 WSN 的科學(xué)意義 在其后的 10 余年里 WSN 網(wǎng)絡(luò)技術(shù)得到學(xué)術(shù)界 工業(yè) 界乃至政府的廣泛關(guān)注 成為在國防軍事 環(huán)境監(jiān)測和預(yù)報 健康護理 智能 家居 建筑物結(jié)構(gòu)監(jiān)控 復(fù)雜機械監(jiān)控 城市交通 空間探索 大型車間和倉 庫管理以及機場 大型工業(yè)園區(qū)的安全監(jiān)測等眾多領(lǐng)域中最有競爭力的應(yīng)用技 術(shù)之一 美國商業(yè)周刊將 WSN 網(wǎng)絡(luò)列為 21 世紀最有影響的技術(shù)之一 麻省理工 學(xué)院 MIT 技術(shù)評論則將其列為改變世界的 10 大技術(shù)之一 第一代傳感器網(wǎng)絡(luò)出現(xiàn)在 20 世紀 70 年代 使用具有簡單信息信號獲取能 力的傳統(tǒng)傳感器 采用點對點傳輸 連接傳感控制器構(gòu)成傳感器網(wǎng)絡(luò) 第二代 傳感器網(wǎng)絡(luò) 具有獲取多種信息信號的綜合能力 采用串 并接口 如 RS 232 RS 485 與傳感控制器相聯(lián) 構(gòu)成有綜合多種信息的傳感器網(wǎng)絡(luò) 第三代 傳感器網(wǎng)絡(luò)出現(xiàn)在 20 世紀 90 年代后期和本世紀初 用具有智能獲取多種信息 信號的傳感器 采用現(xiàn)場總線連接傳感控制器 構(gòu)成局域網(wǎng)絡(luò) 成為智能化傳 感器網(wǎng)絡(luò) 第四代傳感器網(wǎng)絡(luò)正在研究開發(fā) 目前成形并大量投入使用的產(chǎn)品 還沒有出現(xiàn) 用大量的具有多功能多信息信號獲取能力的傳感器 采用自組織 無線接入網(wǎng)絡(luò) 與傳感器網(wǎng)絡(luò)控制器連接 構(gòu)成無線傳感器網(wǎng)絡(luò) 1 3 無線傳感器網(wǎng)絡(luò)技術(shù)的發(fā)展趨勢 1 3 1 靈活 自適應(yīng)的網(wǎng)絡(luò)協(xié)議體系 由于面向不同應(yīng)用背景的無線傳感器網(wǎng)絡(luò)所使用的路由機制 數(shù)據(jù)傳輸模 式 實時性要求以及組網(wǎng)機制等都有很大的差異 因此現(xiàn)有的各種網(wǎng)絡(luò)協(xié)議都 是基于某種特定的應(yīng)用提出的 這給 WSN 通用性的設(shè)計和使用帶來了巨大困難 如何設(shè)計可裁剪 自主靈活 可重構(gòu)和適應(yīng)于不同應(yīng)用需求 的 WSN 體系結(jié)構(gòu)將 是未來 WSN 發(fā)展的重要方向 1 3 2 跨層設(shè)計 由于 WSN 采用分層的體系結(jié)構(gòu) 因此需要實現(xiàn)為邏輯上并不相鄰協(xié)議層之 間設(shè)計互動與性能平衡的跨層設(shè)計 同時 將 MAC 與路由相結(jié)合進行的跨層設(shè) 計可以節(jié)省能量 延長網(wǎng)絡(luò)的壽命 基于 CC2430 無線信道選擇的軟件設(shè)計 1 3 3 ZigBee 標準規(guī)范 ZigBee 是一種新型無線網(wǎng)絡(luò)通信規(guī)范 主要用于近距離無線連接 ZigBee 的基礎(chǔ)是 IEEE 無線個域網(wǎng)工作組制定的 IEEE 802 15 4 技術(shù)標準 ZigBee 的 優(yōu)勢有 能夠在眾多微小的傳感器節(jié)點之間相互協(xié)調(diào)實現(xiàn)通信 這些節(jié)點只需 要很低的功耗 以多跳接力的方式在節(jié)點間傳送數(shù)據(jù) 因而通信效率非常高 1 3 4 與其他網(wǎng)絡(luò)的融合 無線傳感器網(wǎng)絡(luò)與現(xiàn)有的網(wǎng)絡(luò)融合將帶來新的應(yīng)用 例如 WSN 與互聯(lián)網(wǎng) 移動通信網(wǎng)的融合 一方面使無線傳感器網(wǎng)絡(luò)得以借助這兩種傳統(tǒng)網(wǎng)絡(luò)傳遞信 息 另一方面這兩種網(wǎng)絡(luò)可以利用傳感信息實現(xiàn)應(yīng)用的創(chuàng)新 1 4 無線傳感器網(wǎng)絡(luò)的結(jié)構(gòu) 1 4 1 通信結(jié)構(gòu) 在傳感器網(wǎng)絡(luò)中 節(jié)點任意散落在被監(jiān)測區(qū)域內(nèi) 除了感測特定的對象 還進行簡單的計算并維持互相之間的網(wǎng)絡(luò)連接 傳感器網(wǎng)絡(luò)具有自組織的功能 單個節(jié)點經(jīng)過初始的通信和協(xié)商 形成一個傳輸信息的多跳網(wǎng)絡(luò) 每個傳感網(wǎng) 絡(luò)裝備有一個連接到傳輸網(wǎng)絡(luò)的網(wǎng)關(guān) 傳輸網(wǎng)絡(luò)是由一個單跳鏈接或一系列的 無線網(wǎng)絡(luò)節(jié)點組成的 網(wǎng)關(guān)通過這個傳輸網(wǎng)絡(luò)把感測數(shù)據(jù)從傳感區(qū)域發(fā)送到提 供遠程連接和數(shù)據(jù)處理的基站 基站再通過 Internet 聯(lián)系到遠程數(shù)據(jù)庫 最后 采集到的數(shù)據(jù)經(jīng)過分析 挖掘后通過一個界面提供給終端用戶 1 4 2 節(jié)點結(jié)構(gòu) 傳感器網(wǎng)絡(luò)節(jié)點的基本組成包括 4 個基本單元 傳感單元 由傳感器和模數(shù) 轉(zhuǎn)換功能模塊組成 處理單元 包括 CPU 存儲器 嵌入式操作系統(tǒng)等 通信 單元 由無線通信模塊組成 以及電源 此外 可以選擇的其他功能單元包括 定位系統(tǒng) 移動系統(tǒng)以及電源自供電系統(tǒng)等 節(jié)點結(jié)構(gòu)如圖 1 1 基于 CC2430 無線信道選擇的軟件設(shè)計 節(jié)點定位系統(tǒng)移動系統(tǒng) 模數(shù) 傳感器 轉(zhuǎn)換 處理器 存儲器 無線通信 模塊 電源 處理單元 傳感單元 通信單元 電源自供電系統(tǒng)統(tǒng) 圖1 1 電源為傳感器提供正常工作所必需的能源 感知單元用于感知 獲取外界 的信息 并將其轉(zhuǎn)換為數(shù)字信號 處理單元負責協(xié)調(diào)節(jié)點各部分的工作 如對 感知單元獲取的信息進行必要的處理 保存 控制感知單元和電源的工作模式 等 通信模塊負責與其他傳感器或收發(fā)者的通信 軟件則為傳感器提供必要的 軟件支持 如嵌入式操作系統(tǒng) 嵌入式數(shù)據(jù)庫系統(tǒng)等 1 4 3 拓撲結(jié)構(gòu) 無線傳感器網(wǎng)絡(luò)的拓撲結(jié)構(gòu)有 3 種 星狀網(wǎng) 網(wǎng)狀網(wǎng)及混合網(wǎng) 每種拓撲 結(jié)構(gòu)都有自身的優(yōu)點和缺點 開發(fā)人員必須充分了解這些網(wǎng)絡(luò)特點以滿足不同 無線傳感器網(wǎng)絡(luò)的應(yīng)用要求 基本的星狀網(wǎng)拓撲結(jié)構(gòu)是一個單跳 single hop 系統(tǒng) 網(wǎng)絡(luò)中所有無線傳 感器節(jié)點都與基站和網(wǎng)關(guān)進行雙向通信 圖 1 2 a 基站可以是一臺 PC PDA 嵌入式網(wǎng)絡(luò)服務(wù)器 或其它與高數(shù)據(jù)率設(shè)備通信的網(wǎng)關(guān) 除了向各節(jié) 點傳輸數(shù)據(jù)和命令外 基站還與因特網(wǎng)等更高層系統(tǒng)之間傳輸數(shù)據(jù) 各節(jié)點將 基站作為一個中間點 相互之間并不傳輸數(shù)據(jù)或命令 在各種無線傳感器網(wǎng)絡(luò) 中 星狀網(wǎng)整體功耗最低 但節(jié)點與基站間的傳輸距離有限 一般只有幾十米 網(wǎng)狀拓撲結(jié)構(gòu)是多跳 multi2hop 系統(tǒng) 其中所有無線傳感器節(jié)點都相同 而且 直接互相通信 圖 1 2 b 網(wǎng)狀網(wǎng)的每個傳感器節(jié)點都有多條路徑到達網(wǎng)關(guān)或 其它節(jié)點 因此它的容故障能力較強 這種多跳系統(tǒng)比星狀網(wǎng)的傳輸距離遠得 多 但功耗也更大 因為節(jié)點必須一直 監(jiān)聽 網(wǎng)絡(luò)中某些路徑上的信息和變 基于 CC2430 無線信道選擇的軟件設(shè)計 化 混合網(wǎng)力求兼具星狀網(wǎng)的簡潔和低功耗以及網(wǎng)狀網(wǎng)的長傳輸距離和自愈性 等優(yōu)點 圖 1 2 c 在混合網(wǎng)中 路由器和中繼器組成網(wǎng)狀結(jié)構(gòu) 而傳感器節(jié) 點則在它們周圍呈星狀分布 中繼器擴展了網(wǎng)絡(luò)傳輸距離 同時提供了容故障 能力 當某個中繼器發(fā)生故障或某條無線鏈路出現(xiàn)干擾時 網(wǎng)絡(luò)可在其它路由 器周圍進行自組 a 星狀網(wǎng) 絡(luò) b 網(wǎng)狀網(wǎng)絡(luò) c 星 網(wǎng)混合網(wǎng) 絡(luò) 圖1 2 無線傳感器網(wǎng)絡(luò)拓撲結(jié)構(gòu) 1 4 4 通信協(xié)議棧 隨著應(yīng)用和體系結(jié)構(gòu)的不同 無線傳感網(wǎng)絡(luò)的通信協(xié)議棧也不盡相同 圖 1 3 是傳感節(jié)點使用的最典型的協(xié)議模型 該模型既參考了現(xiàn)有通用網(wǎng)絡(luò)的 TCP IP 和 OSI 模型的架構(gòu) 同時又包含了傳感網(wǎng)絡(luò)特有的電源管理 移動管理 及任務(wù)管理 應(yīng)用層為不同的應(yīng)用提供了一個相對統(tǒng)一的高層接口 如果需要 傳輸層可為傳感網(wǎng)絡(luò)保持數(shù)據(jù)流或保證與 Internet 連接 網(wǎng)絡(luò)層主要關(guān)心數(shù)據(jù) 的路由 數(shù)據(jù)鏈路層協(xié)調(diào)無線媒質(zhì)的訪問 盡量減少相鄰節(jié)點廣播時的沖突 物理層為系統(tǒng)提供一個簡單 穩(wěn)定的調(diào)制 傳輸和接收系統(tǒng) 除此而外 電源 移動和任務(wù)管理負責傳感節(jié)點能量 移動和任務(wù)分配的監(jiān)測 幫助傳感節(jié)點協(xié) 調(diào)感測任務(wù) 盡量減少整個系統(tǒng)的功耗 基于 CC2430 無線信道選擇的軟件設(shè)計 應(yīng)用層 網(wǎng)絡(luò)層 數(shù)據(jù)鏈路 物理層 傳輸層 任 務(wù) 管 理 移 動 管 理 電 源 管 理 圖1 3 無線傳感器網(wǎng)絡(luò)通信協(xié)議棧 1 5 線傳感器網(wǎng)絡(luò)技術(shù)的應(yīng)用 傳感器網(wǎng)絡(luò)的應(yīng)用前景非常廣闊 能夠廣泛應(yīng)用于軍事 環(huán)境監(jiān)測和預(yù)報 健康護理 智能家居 建筑物狀態(tài)監(jiān)控 復(fù)雜機械監(jiān)控 城市交通 空間探索 大型車間和倉庫管理 以及機場 大型工業(yè)園區(qū)的安全監(jiān)測等領(lǐng)域 隨著傳感 器網(wǎng)絡(luò)的深入研究和廣泛應(yīng)用 傳感器網(wǎng)絡(luò)將逐漸深入到人類生活的各個領(lǐng)域 1 5 1 軍事應(yīng)用 無線傳感器網(wǎng)絡(luò)技術(shù)將會給戰(zhàn)場帶來革命性變化 并將改變戰(zhàn)爭樣式 傳 感器網(wǎng)絡(luò)也可以為火控和制導(dǎo)系統(tǒng)提供準確的目標定位信息 1 5 2 基礎(chǔ)設(shè)施安全監(jiān)控 傳感器網(wǎng)絡(luò)可用于基礎(chǔ)設(shè)施安全監(jiān)控和反恐應(yīng)用 關(guān)鍵性的建筑物或設(shè)施 是重點保護的對象 比如電廠 通信中心等 具有聲音 圖像和其他傳感器的 網(wǎng)絡(luò)配置在建筑物的周圍 可以及早地探測可能存在的危險 1 5 3 醫(yī)療應(yīng)用 在病人家中建置無線傳感器網(wǎng)絡(luò) 這些傳感器能追蹤病人的行為模式 一 旦偵測到病人日常行動遭遇困難 便會提供必要的視覺與聲響提示 如果在住 院病人身上安裝特殊用途的傳感器節(jié)點 如心率和血壓監(jiān)測設(shè)備 利用傳感器 網(wǎng)絡(luò) 醫(yī)生就可以隨時了解被監(jiān)護病人的病情 進行及時處理 還可以利用傳 基于 CC2430 無線信道選擇的軟件設(shè)計 感器網(wǎng)絡(luò)長時間地收集人的生理數(shù)據(jù) 這些數(shù)據(jù)在研制新藥品的過程中是非常 有用的 而安裝在被監(jiān)測對象身上的微型傳感器也不會給人的正常生活帶來太 多的不便 1 5 4 環(huán)境監(jiān)控 環(huán)境傳感器網(wǎng)絡(luò)可監(jiān)測環(huán)境變化 如大氣 沙漠 平原 海洋表面和山脈 等 研究環(huán)境變化對農(nóng)作物的影響 檢測農(nóng)作物中害蟲情況等 A2LERT 系統(tǒng)中 就有數(shù)種傳感器來監(jiān)測降雨量 河水水位和土壤水分 并依此預(yù)測爆發(fā)山洪的 可能性 1 5 5 自動交通流量監(jiān)控 無線交通傳感器網(wǎng)絡(luò)可監(jiān)測高速公路或城市里的汽車交通情況 建立實時 準確 全面 高效的綜合交通運輸管理系統(tǒng) 1 5 6 動物跟蹤監(jiān)控 使用無線傳感器網(wǎng)絡(luò)可以在不干涉動物正常生活習(xí)慣的情況下監(jiān)視其行蹤 及生存環(huán)境 1 5 7 居住環(huán)境監(jiān)控 通過無線傳感器網(wǎng)絡(luò)可以監(jiān)控我們的生活環(huán)境 為我們提供更加舒適 健 康 方便和人性化的智能的居家環(huán)境 1 5 8 其他方面的應(yīng)用 無線傳感器網(wǎng)絡(luò)的自組織 微型化和對外部世界的感知能力決定了它在許 多領(lǐng)域會有不少的機會 比如 空間探索方面 NASA 的 JPL 實驗室研制的 Sensor Webs 就是為火星探測而準備的 德國某研究機構(gòu)正在利用傳感器網(wǎng)絡(luò) 技術(shù)為足球裁判研制一套系統(tǒng) 以減小足球比賽中越位和進球的誤判率 此外 在基礎(chǔ)設(shè)施安全 災(zāi)難拯救 先進制造 物流管理 交互式博物館等眾多領(lǐng)域 無線傳感器網(wǎng)絡(luò)都會孕育出全新的設(shè)計和應(yīng)用模式 基于 CC2430 無線信道選擇的軟件設(shè)計 2 ZigBee 協(xié)議 2 1 ZigBee 簡介 ZigBee 是基于 IEEE802 15 4 標準的低功耗個域網(wǎng)協(xié)議 根據(jù)這個協(xié)議規(guī) 定的技術(shù)是一種短距離 低功耗的無線通信技術(shù) 簡單的說 ZigBee 是一種 高可靠的無線數(shù) 據(jù)傳輸網(wǎng)絡(luò) 類似于 CDMA 和 GSM 網(wǎng)絡(luò) ZigBee 數(shù)傳模塊 類似于移動網(wǎng)絡(luò) 基站 通訊距離從標準的 75m 到幾百米 幾公里 并且支 持無限擴展 與移動通信的 CDMA 網(wǎng)或 GSM 網(wǎng)不同的是 ZigBee 網(wǎng)絡(luò)主要是為工業(yè)現(xiàn) 場自動化控制數(shù)據(jù)傳輸而建立 因而 它必須具有簡單 使用方便 工作可 靠 價格低的特點 而移動通信網(wǎng)主要是為語音通信而建立 每個基站價值 一般都在百萬元人民幣以上 而每個ZigBee 基站 卻不到 1000 元人民 幣 每個 ZigBee 網(wǎng)絡(luò)節(jié)點不僅本身可以作為監(jiān)控對象 例如其所連接的 傳感器直接進行數(shù)據(jù)采集和監(jiān)控 還可以自動中轉(zhuǎn)別的網(wǎng)絡(luò)節(jié)點傳過來的數(shù) 據(jù)資料 除此之外 每一個 ZigBee 網(wǎng)絡(luò)節(jié)點 FFD 還可在自己信號覆蓋的 范圍內(nèi) 和多個不承擔網(wǎng)絡(luò)信息中轉(zhuǎn)任務(wù)的孤立的子節(jié)點 RFD 無線連接 2 2 ZigBee 的發(fā)展 1999 年 藍牙技術(shù)開始走向應(yīng)用 但因芯片價格高 廠商支持力度不夠 傳輸距離限制以及抗干擾能力差等問題而發(fā)展緩慢 低功耗 低成本的無線網(wǎng) 絡(luò)需求使 ZigBee 應(yīng)運而生 ZigBee 一詞來源于蜂群使用的賴以生存和發(fā)展的 通信方式 蜜蜂通過條 ZigZag 形狀的舞蹈來傳遞新發(fā)現(xiàn)和食物源的位置 距離 與方向等信息 2000 年的 12 月 IEEE 美國電子和電氣工程師協(xié)會 成立了 IEEE 802 15 4 工作組 致力于開發(fā)一種可應(yīng)用在固定 便攜或移動設(shè)備上的 低成 本 低功耗的低速率無線連接技術(shù) 2001 年 8 月 美國 HONEYWELL 等公司發(fā)起成立了 ZigBee 聯(lián)盟 他們提出 的 ZigBee 技術(shù)被確認為 IEEE 802 15 4 標準 2002 年 摩托羅拉 飛利浦和三菱等企業(yè)加盟 ZigBee 聯(lián)盟 06 年中國的 華為公司也加入了該聯(lián)盟 現(xiàn)聯(lián)盟內(nèi)有 180 多個成員企業(yè) 包括軟件供應(yīng)商 系統(tǒng)集成商和終端產(chǎn)品商 2003 年 IEEE 802 15 4 標準獲得通過 并在 2004 年 12 月推出了 ZigBee 技術(shù)規(guī)范 1 0 版本 基于 CC2430 無線信道選擇的軟件設(shè)計 ZigBee 技術(shù)主要應(yīng)用在短距離范圍內(nèi)以及數(shù)據(jù)傳輸速率不高的各種電子設(shè) 備之間 因此非常適用于家電和小型電子設(shè)備的無線控制指令傳輸 其典型的 傳輸數(shù)據(jù)類型有周期性數(shù)據(jù) 如傳感器 間歇性數(shù)據(jù) 如照明控制 和重復(fù)低 反應(yīng)時間數(shù)據(jù) 如鼠標 其目標功能是自動化控制 它采用跳頻技術(shù) 使用的 頻段分別為 2 4GHz ISM 868MHz 歐洲 及 915MHz 美國 而且均為免執(zhí)照 頻段 有效覆蓋范圍 10 75m 當網(wǎng)絡(luò)速率降低到 28kb s 時 傳輸范圍甚至可 以擴大到 134m 具有更高的可靠性 2 3 ZigBee 的特點 2 3 1 低功耗 在低耗電待機模式下 2 節(jié) 5 號干電池可支持 1 個節(jié)點工作 6 24 個月 甚至更長 這是 ZigBee 的突出優(yōu)勢 相比較 藍牙能工作數(shù)周 WiFi 可工作 數(shù)小時 TI 公司和德國的 Micropelt 公司共同推出新能源的 ZigBee 節(jié)點 該節(jié)點 采用 Micropelt 公司的熱電發(fā)電機給 TI 公司的 ZigBee 提供電源 2 3 2 低成本 通過大幅簡化協(xié)議 不到藍牙的 1 10 降低了對通信控制器的要求 按預(yù) 測分析 以 8051 的 8 位微控制器測算 全功能的主節(jié)點需要 32KB 代碼 子功 能節(jié)點少至 4KB 代碼 而且 ZigBee 免協(xié)議專利費 每塊芯片的價格大約為 2 美 元 2 3 3 低速率 ZigBee 工作在 20 250kbps 的速率 分別提供 250 kbps 2 4GHz 40kbps 915 MHz 和 20kbps 868 MHz 的原始數(shù)據(jù)吞吐率 滿足低速率傳輸數(shù)據(jù) 的應(yīng)用需求 2 3 4 近距離 傳輸范圍一般介于 10 100m 之間 在增加發(fā)射功率后 亦可增加到 1 3km 這指的是相鄰節(jié)點間的距離 如果通過路由和節(jié)點間通信的接力 傳 輸距離將可以更遠 2 3 5 短時延 ZigBee 的響應(yīng)速度較快 一般從睡眠轉(zhuǎn)入工作狀態(tài)只需 15ms 節(jié)點連接進 入網(wǎng)絡(luò)只需 30ms 進一步節(jié)省了電能 相比較 藍牙需要 3 10s WiFi 需要 基于 CC2430 無線信道選擇的軟件設(shè)計 3 s 2 3 6 高容量 ZigBee 可采用星狀 片狀和網(wǎng)狀網(wǎng)絡(luò)結(jié)構(gòu) 由一個主節(jié)點管理若干子節(jié)點 最多一個主節(jié)點可管理 254 個子節(jié)點 同時主節(jié)點還可由上一層網(wǎng)絡(luò)節(jié)點管理 最多可組成 65000 個節(jié)點的大網(wǎng) 2 3 7 高安全 ZigBee 提供了三級安全模式 包括無安全設(shè)定 使用訪問控制清單 Access Control List ACL 防止非法獲取數(shù)據(jù)以及采用高級加密標準 AES 128 的對稱密碼 以靈活確定其安全屬性 2 3 8 免執(zhí)照頻段 使用工業(yè)科學(xué)醫(yī)療 ISM 頻段 915MHz 美國 868MHz 歐洲 2 4GHz 全 球 由于此三個頻帶物理層并不相同 其各自信道帶寬也不同 分別為 0 6MHz 2MHz 和 5MHz 分別有 1 個 10 個和 16 個信道 這三個頻帶的擴頻和調(diào)制方式亦有區(qū)別 擴頻都使用直接序列擴頻 DSSS 但從比特到碼片的變換差別較大 調(diào)制方式都用了調(diào)相技術(shù) 但 868MHz 和 915MHz 頻段采用的是 BPSK 而 2 4GHz 頻段采用的是 OQPSK 在發(fā)射功率為 0dBm 的情況下 藍牙通常能有 10 米的作用范圍 而 ZigBee 在室內(nèi)通常能達到 30 50 米的作用距離 在室外空曠地帶甚至可以達到 400 米 TI CC2530 不加功率放大 所以 ZigBee 可歸為低速率的短距離無線通信技術(shù) 2 4 ZigBee 的框架 2 4 1 ZigBee 的 IEEE 相關(guān) 要想弄清楚 ZigBee 就要了解 IEEE 802 15 4 它就是 ZigBee 物理層和 MAC 層的模板 IEEE802 15 4 網(wǎng)絡(luò)是指使用相同無線信道并通過 IEEE 802 15 4 標準相互 通信的一組設(shè)備的集合 在這個網(wǎng)絡(luò)中 根據(jù)設(shè)備所具有的通信的能力 可以 分為全功能設(shè)備 和精簡功能設(shè)備 全功能設(shè)備之間以及全功能設(shè)備與精簡功 能設(shè)備之間都可以通信 與精簡功能設(shè)備相關(guān)的全功能設(shè)備通常稱之為協(xié)調(diào)器 IEEE802 15 4 定義了兩種拓撲結(jié)構(gòu) 分別為星狀拓撲 理論上一個協(xié)調(diào)器和多 基于 CC2430 無線信道選擇的軟件設(shè)計 達 255 個子設(shè)備 和點對點模式 此協(xié)議定義了 27 個信道 868MHz 頻段一個 信道 915MHz 頻段 10 個信道 2450MHz 頻段 16 個信道 其調(diào)制過程如圖 2 1 圖 2 2 PPDU 物理層協(xié)議數(shù)據(jù)單元 PPDU 比特數(shù) 據(jù) 差分編 碼器 比特到 片序列 轉(zhuǎn)換 BPSK 調(diào)制 調(diào)制信 號 圖 2 1 868 915MHz 頻段的調(diào)制過程 PPDU 比特數(shù) 據(jù) 差分編 碼器 比特到 片序列 轉(zhuǎn)換 O QPSK 調(diào)制 調(diào)制信 號 圖 2 2 2 4GHz 頻段的調(diào)制過程 物理幀的第一個字段是四個字節(jié)的前導(dǎo)碼 收發(fā)器在接收前導(dǎo)碼期間 會 根據(jù)前導(dǎo)碼序列的特征完成片同步和符號同步 幀起始分隔符 SFD 字段長度 為一個字節(jié) 其值固定為 0 xA7 標識一個物理幀的開始 收發(fā)器接收完前導(dǎo)碼 后只能做到數(shù)據(jù)的位同步 通過搜索 SFD 字段的值 0 xA7 才能同步到字節(jié)上 幀 長度由一個字節(jié)的低 7 位表示 其值就是物理幀的長度 而且物理幀的負載長 度是可變的 稱之為物理服務(wù)數(shù)據(jù)單元 PSDU 一般用來承載 MAC 幀 簡要描 述見表 2 1 表 2 1 IEEE802 15 4 物理幀 4 字節(jié)1 字節(jié)1 字節(jié)長度可變 前導(dǎo)碼 preamble SFD幀長度 7 比特 保留位PSDU 同步頭物理幀頭PHY 負載 IEEE802 15 4 mac 層 IEEE802 15 4 的重點部分 MAC 層主要功能有協(xié)調(diào) 器產(chǎn)生并發(fā)送信標 信標使能模式 普通設(shè)備根據(jù)協(xié)調(diào)器的信標幀與協(xié)調(diào)器同 步 支持關(guān)聯(lián) 一個設(shè)備加入一個特定的網(wǎng)絡(luò)時 向協(xié)調(diào)器注冊以及身份認證 的過程 與取消關(guān)聯(lián)操作 在 ZigBee 中也相當重要 支持無線信道通信安全 使用 CSMA CA 機制訪問信道 支持時槽保障機制 支持不同設(shè)備的 MAC 間的可 靠傳輸 基于 CC2430 無線信道選擇的軟件設(shè)計 2 4 2 網(wǎng)絡(luò)層次 網(wǎng)絡(luò)層次是一個邏輯上的概念 不是什么實體 比如物理層 我們可以理 解為物理收發(fā)機 MAC 層可以理解為調(diào)整什么時候開收發(fā)機 數(shù)據(jù)鏈路層可以理 解為檢查開了收發(fā)機以后 那效果怎么樣 能不能很好的完成任務(wù) 網(wǎng)絡(luò)層就 是要把分散的單元連成一個網(wǎng)絡(luò) 應(yīng)用層就是說明任務(wù)要干什么 當然典型的 TCP IP 網(wǎng)絡(luò)的七層結(jié)構(gòu)也可以用這種類比的方式進行思考 ZigBee 網(wǎng)絡(luò)層的主要功能就是提供一些必要的函數(shù) 確保 ZigBee 的 MAC 層的正常工作 實際上就是提供網(wǎng)絡(luò)支持 為了向應(yīng)用層提供其接口 網(wǎng)絡(luò)層 提供了兩個必須的功能服務(wù)實體 這些個實體只是邏輯上的概念 有助于理清 楚邏輯思維 如圖 2 3 所示 圖 2 3 網(wǎng)絡(luò)層參考模型 MCPS SAP MAC 公共部分子層的服務(wù)接入點 MLME SAP MAC 管理實體服務(wù) 接入點 NLDE SAP 網(wǎng)絡(luò)層數(shù)據(jù)實體服務(wù)接入點 NLME SAP 網(wǎng)絡(luò)層管理實 體服務(wù)接入點 實際上所謂的管理實體就是管理如何組織不同的數(shù)據(jù) 以實現(xiàn) 不同的功能 按照上面網(wǎng)絡(luò)層次的分析 網(wǎng)絡(luò)層的參考模型邏輯不難理清 網(wǎng) 絡(luò)層數(shù)據(jù)實體通過網(wǎng)絡(luò)層數(shù)據(jù)實體服務(wù) 網(wǎng)絡(luò)管理層實體通過網(wǎng)絡(luò)層管理實體 服務(wù)接入點 NLME SAP 提供網(wǎng)絡(luò)管理服務(wù) 網(wǎng)絡(luò)層管理實體利用網(wǎng)絡(luò)層數(shù)據(jù) 實體完成一些網(wǎng)絡(luò)的管理工作 并且完成對網(wǎng)絡(luò)信息庫 NIB 的維護和管理 網(wǎng)絡(luò)層通過 MCPS SAP 和 MLME SAP 接口 為 MAC 層提供接口 通過 NLDE SAP 與 NLME SAP 接口為應(yīng)用層提供接口服務(wù) 上述工作流程只是一個邏輯 事實上 只要懂得上述流程就可以組織相關(guān)代碼 所謂的服務(wù)接入點并沒有什么具體的 操作 只是一個邏輯層次的過度 2 4 3 應(yīng)用層 要了解應(yīng)用層先要了解兩個概念 ProfileProfile 在 ZigBee 網(wǎng)絡(luò)中 兩個設(shè)備之間的通信的關(guān)鍵是同意一個 基于 CC2430 無線信道選擇的軟件設(shè)計 Profile 模式 典型例子就是智能家居 這個 ZigBee Profile 是一個配置文 件 允許一系列設(shè)備類型交換控制消息來構(gòu)造一個無線智能家居應(yīng)用 這個概 念容易跟描述 discriptor 混淆 一般而言可以做如下理解 Profile 是對 邏輯設(shè)備及其接口的描述集合 是面向某個應(yīng)用類別的公約 準則 Descriptor 是為分布式應(yīng)用提供的描述項 多種描述項共同組成描述集合 Profile 它根據(jù)應(yīng)用必須處理的數(shù)據(jù)包和必須執(zhí)行的操作來描述分布式應(yīng)用配 置文件使得 ZigBee 設(shè)備可以互操作 ZigBee 聯(lián)盟已經(jīng)定義了很多標準的這樣 的配置 Profile 是配置文件的一種 文件 比如遠程控制開關(guān)配置文件和光 傳感器配置文件等 任何遵循某一標準配置文件的節(jié)點都可以與其他實現(xiàn)相同 配置文件的節(jié)點進行互操作 所以說 profile 是面向某個應(yīng)用 解決一系列事 務(wù)的公約 是對邏輯設(shè)備及其接口關(guān)系的描述集合 任何遵循這一描述集合的 節(jié)點之間都可以交互工作 只要雙方可以通信 ZDOZDO ZDO ZigBee 設(shè)備對象 是在應(yīng)用層中的一種應(yīng)用解決方案 它位于 ZigBee 協(xié)議棧的應(yīng)用支持子層之上 ZDO 負責初始化應(yīng)用支持子層 網(wǎng)絡(luò)層 安全服務(wù)提供模塊及非 1 240 斷點應(yīng)用的的其他 ZigBee 設(shè)備層 另外 ZDO 還負 責從終端應(yīng)用收集配置信息來實現(xiàn)設(shè)備和服務(wù)發(fā)現(xiàn) 安全管理 網(wǎng)絡(luò)管理 綁 定管理和節(jié)點管理功能 其實可以理解為 ZDO 就是與 ZigBee 設(shè)備相關(guān)的一些應(yīng) 用層邏輯范疇上的設(shè)備操作的一些雜七雜八的算法的集合 整個 ZigBee 其實就 是一個大算法 在應(yīng)用層上有些零碎的關(guān)于設(shè)備操作的算法 我們就把它稱作 為 ZDO 雖然這樣說不夠全面 但在絕大多數(shù)情況下這種理解還是行的通的 APS 應(yīng)用支持子層模型如圖 2 4 ZigBee 應(yīng)用層中的核心部分 事實上只 有這一部分才是應(yīng)用層邏輯的描述 APSDE SAP 支持子層數(shù)據(jù)實體 NLDE SAP APSME SAP 支持子層管理實體 NLME SAP APSIB 圖 2 4 應(yīng)用支持子層參考模型 APSDE 應(yīng)用支持子層數(shù)據(jù)實體 APSME 應(yīng)用支持子層管理實體 NLDE 網(wǎng)絡(luò)層數(shù)據(jù)實體 NLME 網(wǎng)絡(luò)層管理實體 圖中簡明的標明了應(yīng)用支持 基于 CC2430 無線信道選擇的軟件設(shè)計 子層的工作流程 這只是一個邏輯操作 分析時可以仿照網(wǎng)絡(luò)層的邏輯進行分 析 應(yīng)用支持子層的數(shù)據(jù)實體 APSDE 向網(wǎng)絡(luò)層提供數(shù)據(jù)服務(wù) 完成兩個或多 個設(shè)備之間傳輸應(yīng)用層數(shù)據(jù)單元 APSDE 將應(yīng)用層協(xié)議數(shù)據(jù)單元加上適當?shù)膮f(xié) 議幀頭生成應(yīng)用子層的協(xié)議數(shù)據(jù)單元 APSDE 還包括綁定 集團地址過濾 可 靠傳輸 拒絕重復(fù) 數(shù)據(jù)鏈路層的相關(guān)處理 與 MAC 層上方的數(shù)據(jù)鏈路層交叉 在 ZigBee 中沒有明確的數(shù)據(jù)鏈路層 但網(wǎng)絡(luò)層次只是一個邏輯上的概念 有與 沒有這個網(wǎng)絡(luò)層次的概念 只要有一套完整的邏輯就說的過去的 大批量傳輸 碎片傳輸 流控制 阻塞控制等服務(wù) 而 APSME 提供應(yīng)用層信息庫管理 安全 服務(wù)等功能 應(yīng)用層主要有應(yīng)用幀和確認幀兩種具體內(nèi)容 可依據(jù)協(xié)議棧的說明進行填 寫 2 5 ZigBee 的應(yīng)用 ZigBee 并不是用來與藍牙或者其他已經(jīng)存在的標準競爭 它的目標定位于 現(xiàn)存的系統(tǒng)還不能滿足其需求的特定的市場 它有著廣闊的應(yīng)用前景 ZigBee 聯(lián)盟預(yù)言在未來的四到五年 每個家庭將擁有 50 個 ZigBee 器件 最后將達到 每個家庭 150 個 據(jù)估計 到 2007 年 ZigBee 市場價值將達到數(shù)億美元 其 應(yīng)用領(lǐng)域主要包括 家庭和樓宇網(wǎng)絡(luò) 空調(diào)系統(tǒng)的溫度控制 照明的自動控制 窗簾的自動控 制 煤氣計量控制 家用電器的遠程控制等 工業(yè)控制 各種監(jiān)控器 傳感器的自動化控制 商業(yè) 智慧型標簽等 公共場所 煙霧探測器等 農(nóng)業(yè)控制 收集各種土壤信息和氣候信息 醫(yī)療 老人與行動不便者的緊急呼叫器和醫(yī)療傳感器等 基于 CC2430 無線信道選擇的軟件設(shè)計 3 程序開發(fā)環(huán)境 3 1 TinyOS 概述 3 1 1 TinyOS 的定義 TinyOS 是一個開源的嵌入式操作系統(tǒng) 它是由加州大學(xué)的伯利克分校開發(fā) 出來的 主要應(yīng)用于無線傳感器網(wǎng)絡(luò)方面 其作為一系列合作項目的結(jié)果 它 是基于一種組件 Component Based 的架構(gòu)方式使得快速的更新成為可能 而這又減小了受傳感網(wǎng)絡(luò)存儲器限制的代碼長度 能夠快速實現(xiàn)各種應(yīng)用 它 的首先出現(xiàn)是做為 UC Berkeley 和 Intel Research 合作實驗室的杰作 用來嵌 入智能微塵當中 之后慢慢演變成一個國際合作項目 即 TinyOS 聯(lián)盟 TinyOS 的程序采用的是模塊化設(shè)計 所以它的程序核心往往都很小 一般 來說核心代碼和數(shù)據(jù)大概在 400 Bytes 左右 能夠突破傳感器存儲資源少的限 制 這能夠讓 TinyOS 很有效的運行在無線傳感器網(wǎng)絡(luò)上并去執(zhí)行相應(yīng)的管理工 作等 TinyOS 程序由基于組件的軟件工程 software component 建構(gòu) 它們中一 些表現(xiàn)了硬件的抽象概念 組件用接口互相連接 TinyOS 為普通的抽象描述 提供了接口和組件 例如數(shù)據(jù)包通信 路由 感知 行為和儲存 TinyOS 2 x 版本后完全的 non blocking 它配備了一個單獨的堆棧 因此 所有的持續(xù)超過幾百微秒 I O 操作都以異步進行并且?guī)в谢亟泄δ?為了使本 地的編譯器更加出色地優(yōu)化交叉調(diào)用邊界 TinyOS 用 nesC 的特性去連接這些回 叫 叫作事件 non blocking 系統(tǒng)可以讓 TinyOS 在單一存儲器下保持高度的 協(xié)同性 它強迫程序用 stitching together many small event handlers 的方 法編寫復(fù)合邏輯 為了支持更高的計算量 TinyOS 提供了任務(wù) 其比 Deferred Procedure Call and interrupt handler bottom halves 小 一個 TinyOS 組建可以發(fā)布一個任務(wù) 操作系統(tǒng)可以把它排入列表以待之后 執(zhí)行 任務(wù)是沒有優(yōu)先權(quán)的并且按照 FIFO 運行 這個簡單的協(xié)同模型是典型 的滿足了以 I O 為中心的應(yīng)用 但這樣的模型對于 CPU 負荷重的應(yīng)用程序來說 不是太好的 因為它會導(dǎo)致向 OS 多次提出線程間協(xié)同處理的請求 TinyOS 代碼與程序代碼進行靜態(tài)連接 然后用 GNU toolchain 編譯到一個 小的二進制系統(tǒng)中 它的聯(lián)盟為 TinyOS 的應(yīng)用 提供完整的開發(fā)平臺 基于 CC2430 無線信道選擇的軟件設(shè)計 TinyOS 的構(gòu)件包括網(wǎng)絡(luò)協(xié)議 分布式服務(wù)器 傳感器驅(qū)動及數(shù)據(jù)識別工具 其良好的電源管理源于事件驅(qū)動執(zhí)行模型 該模型也允許時序安排具有靈活性 TinyOS 已被應(yīng)用于多個平臺和 tinyos 感應(yīng)板中 TinyOS 操作系統(tǒng) 庫和程序 服務(wù)程序是用 nesC 寫的 3 1 2 TinyOS 的特點 TinyOS 提供一系列可重用的組件 一個應(yīng)用程序可以通過連接配置文件 A Wiring Specification 將各種組件連接起來 以完成它所需要的功能 TinyOS 的應(yīng)用程序都是基于事件驅(qū)動模式的 采用事件觸發(fā)去喚醒傳感器 工作 tasks 一般用在對于時間要求不是很高的應(yīng)用中 且 tasks 之間是平等的 即在執(zhí)行時是按順序先后來得 而不能互相占先執(zhí)行 一般為了減少 tasks 的 運行時間 要求每一個 task 都很短小 能夠使系統(tǒng)的負擔較輕 events 一般用在對于時間的要求很嚴格的應(yīng)用中 而且它可以占先優(yōu)于 tasks 和其他 events 執(zhí)行 它可以被一個操作的完成或是來自外部環(huán)境的事件 觸發(fā) 在 TinyOS 中一般由硬件中斷處理來驅(qū)動事件 在 TinyOS 中由于 tasks 之間不能互相占先執(zhí)行 所以 TinyOS 沒有提供任 何阻塞操作 為了讓一個耗時較長的操作盡快完成 一般來說都是將對這個操 作的需求和這個操作的完成分開來實現(xiàn) 以便獲得較高的執(zhí)行效率 3 2 nesC 的基本概念 3 2 1 nesC 簡介 nesc 是一種擴展 C 的編程語言 主要用于傳感器網(wǎng)絡(luò)的編程開發(fā) 加州大 學(xué)伯克利分校研發(fā)人員為這個平臺開發(fā)出微型操作系統(tǒng) TinyOS 和編程語言 nesC 同時國內(nèi)外很多大學(xué)和機構(gòu)利用這一平臺進行相關(guān)問題的研究 nesc 主 要用在 Tinyos 中 tinyos 也是由 nesc 編寫完成的 TinyOS 操作系統(tǒng)就是為用 戶提供一個良好的用戶接口 基于以上分析 研發(fā)人員在無線傳感器節(jié)點處理 能力和存儲能力有限情況下設(shè)計一種新型的嵌入式系統(tǒng) TinyOS 具有更強的網(wǎng) 絡(luò)處理和資源收集能力 滿足無線傳感器網(wǎng)絡(luò)的要求 為滿足無線傳感器網(wǎng)絡(luò) 的要求 研究人員在 TinyOS 中引入 4 種技術(shù) 輕線程 主動消息 事件驅(qū)動和 組件化編程 輕線程主要是針對節(jié)點并發(fā)操作可能比較頻繁 且線程比較短 傳統(tǒng)的進程 線程調(diào)度無法滿足 使用傳統(tǒng)調(diào)度算法會產(chǎn)生大量能量用在無效的 進程互換過程中 的問題提出的 基于 CC2430 無線信道選擇的軟件設(shè)計 3 2 2 nesC 語法結(jié)構(gòu) 在 nesC 語言中結(jié)構(gòu)和內(nèi)容的分離的 程序由組件構(gòu)成 它們裝配在一起構(gòu) 成完整程序 根據(jù)接口的設(shè)置說明組件功能 接口可以由組件提供或使用 被 提供的接口表現(xiàn)它為使用者提供的功能 被使用的接口表現(xiàn)使用者完成它的作 業(yè)所需要的功能 NesC 語言結(jié)構(gòu)如下 3 1 圖 3 1 NesC 語言結(jié)構(gòu) 模塊組件是接口的實現(xiàn)者和使用者 模塊組件包含兩部分內(nèi)容 模塊組件 使用和提供的接口描述和模塊組件內(nèi)部的實現(xiàn)代碼 模塊組件名也必須與文件 名同名 配置組件是一個完整的配置列表 配置組件可以像模塊組件一樣使用外部 的接口并且對外提供接口 配置組件與模塊組件一樣包含兩部分內(nèi)容 配置使 用和提供的接口描述和配置內(nèi)部的實現(xiàn)代碼 配置列表 配置組件名也必須與 文件名同名 接口放在一個單獨的文件中 nc 接口的名稱應(yīng)與文件名對應(yīng) 例如 interface1 的接口則必須對應(yīng)于文件名 interface1 nc 有關(guān)接口的語法有 provides interface A1 提供接口 uses interface A1 使用接口 provides interface A1 as A2 接口別名 uses interface A1 as A2 接口的作用是聲明命令 command 而模塊組件的作用是實現(xiàn)命令 command 命令是接口中的一種函數(shù) 這種函數(shù)要求接口的提供者實現(xiàn) 而接口的使 nc 文件 組件 Conponents 接口 Interface 配置組件 Configuration 模塊組件 Module 基于 CC2430 無線信道選擇的軟件設(shè)計 用者則會調(diào)用這種函數(shù) 形象的稱為 command 即為接口提供的可供調(diào)用的命 令 接口語法結(jié)構(gòu)類 C 語言 只是在最前面增加 command 關(guān)鍵字 事件也是接口中的一種函數(shù) 這種函數(shù)要求接口的提供者調(diào)用 而接口的 使用者則會實現(xiàn)這種函數(shù) 形象的稱為 event 即為接口使用者所實現(xiàn)的事件 處理函數(shù) 語法結(jié)構(gòu)類 C 語言 只是在最前面增加 event 關(guān)鍵字 任務(wù) task 是 TinyOS 系統(tǒng)提供的一種特殊的機制 類同于線程 task 一般為一個函數(shù) 無參數(shù) 無返回值 task 可以在一般的 TinyOS 程序中發(fā)出 而 task 的執(zhí)行是由 TinyOS 系統(tǒng)內(nèi)核來實現(xiàn)的 并且 task 的執(zhí)行是不影響調(diào)用 者的 將會在發(fā)出 task 后的某一個時刻被調(diào)度運行 基于 CC2430 無線信道選擇的軟件設(shè)計 4 軟件設(shè)計 4 1 軟件設(shè)計原理 在基于 CC2430 無線傳感器網(wǎng)絡(luò)中發(fā)射信道是可變的 可以通過對位于 FSCTRLH FREQ 9 8 和 FSCTRLL FREQF 7 0 的 10 位頻率字編程設(shè)置操作頻率 以 MHz 為單位的操作頻率 Fc 由下式表示 Fc 2048 FREQ 9 0 式中 FREQ 9 0 是由 FSCTRLH FREQ 9 8 FSCTRLL FREQ 7 0 提供的值 在接收模式下 由于所用的中頻 IF 是 2MHz 因此實際本地振蕩器 LO 頻率是 Fc 2MHz 在發(fā)送模式下 采用直接轉(zhuǎn)換 此時本地振蕩器頻率 等于 Fc 中頻 2MHz 有 CC2430 自動提供 IEEE802 15 4 指定 16 個信道 它們位于 2 4GHz 頻率之間 步長為 5MHz 編號為 11 26 信道 k 的 RF 頻率由 IEEE802 15 4 指定如下 Fc 2405 5 k 11 MHz k 11 12 26 運行在信道 k 寄存器 FSCTRLH FREQ FSCTRLL FREQ 應(yīng)當設(shè)置為 FSCTRLH FREQ FSCTRLL FREQ 357 k 11 基于 CC2430 無線信道選擇的軟件設(shè)計 4 2 程序設(shè)計流程圖 否 是 圖 4 1 軟件設(shè)計圖 開始 輸出頻道信息 是否改變 頻道值 輸入頻道值 輸入頻道值 設(shè)置成功 發(fā)送數(shù)據(jù) 接收數(shù)據(jù) 輸出數(shù)據(jù)長度 輸出發(fā)送路徑 基于 CC2430 無線信道選擇的軟件設(shè)計 4 3 程序的編譯 運行 點開 Notepad for ZigbemDS 打開代碼編譯器 如圖 4 2 所示 圖 4 2 代碼編譯器 在目錄中找到程序文件夾 SetRFChannel 單擊打開模塊文件 SetRFChannelM nc 如圖 4 3 所示 基于 CC2430 無線信道選擇的軟件設(shè)計 圖 4 3 打開軟件模塊 連接仿真器 通過 usb 線連接 cc debugger 和傳感器節(jié)點如圖 4 4 圖 4 4 連接仿真器和節(jié)點 安裝 CC Debuger 仿真器驅(qū)動 打開設(shè)備管理器 打開 端口 COM 和 LPT 查看節(jié)點連接情況 如圖 4 5 所示 基于 CC2430 無線信道選擇的軟件設(shè)計 圖 4 5 查看節(jié)點連接 單擊運行 Make zigbem install 將程序編譯并下載到仿真器中 如圖 4 6 所示 圖 4 6 下載和編譯 基于 CC2430 無線信道選擇的軟件設(shè)計 程序已經(jīng)燒寫到網(wǎng)管時 會有編譯結(jié)果如圖 4 7 圖 4 8 所示 圖 4 7 編譯過程 圖 4 8 編譯完成 基于 CC2430 無線信道選擇的軟件設(shè)計 使用串口調(diào)試助手運行程序結(jié)果 如圖 4 9 圖 4 9 信道信息顯示 在串口工具中輸入 y 回車 在輸入 12 把節(jié)點 1 的信道改為 12 如圖 4 10 所示 圖 4 10 信道改變 無線傳感器網(wǎng)絡(luò)硬件節(jié)點的搭建 基于 CC2430 無線信道選擇的軟件設(shè)計 使用 usb 連接匯聚節(jié)點 如圖 4 11 圖 4 12 所示 圖 4 11 連接匯聚節(jié)點 圖 4 12 匯聚節(jié)點和傳感器節(jié)點 在 pc 端打開監(jiān)控軟件 ZigbemPC 運行結(jié)果如下 基于 CC2430 無線信道選擇的軟件設(shè)計 地圖監(jiān)控如圖 4 13 所示 圖 4 13 地圖監(jiān)控 點擊即時監(jiān)控查看節(jié)點情況 點擊即時數(shù)據(jù)查看傳感器得到的數(shù)據(jù) 如圖 4 14 所示 圖 4 14 即時數(shù)據(jù) 基于 CC2430 無線信道選擇的軟件設(shè)計 點擊網(wǎng)絡(luò)結(jié)構(gòu)查看當前網(wǎng)絡(luò)結(jié)構(gòu) 無線傳感器網(wǎng)絡(luò)會自動生成不同的網(wǎng)絡(luò) 結(jié)構(gòu)如圖 4 15 圖 4 16 圖 4 17 所示 圖 4 15 網(wǎng)絡(luò)結(jié)構(gòu) 圖 4 16 網(wǎng)絡(luò)結(jié)構(gòu) 基于 CC2430 無線信道選擇的軟件設(shè)計 圖 4 17 網(wǎng)絡(luò)結(jié)構(gòu) 通過程序在串口調(diào)試助手中的運行可以看到程序的基本功能 顯示信道信 息和更改信道 隨后通過監(jiān)控軟件查看了程序在各個傳感器中的運行情況 可 以看到各傳感器運行正常 傳感器與匯聚節(jié)點之間的信息傳輸正常 驗證了程 序的正確性 基于 CC2430 無線信道選擇的軟件設(shè)計 結(jié)論 本課題是基于 CC2430 無線信道選擇的軟件設(shè)計 在能夠熟練掌握基于 CC2430 的無線傳感器網(wǎng)絡(luò)原理以及其開發(fā)環(huán)境的安裝和運行基礎(chǔ)上 深入學(xué)習(xí) nesC 語言的編程規(guī)則及運用 完成了關(guān)于無線信道的軟件設(shè)計 掌握無線傳感 器網(wǎng)絡(luò)硬件環(huán)境的搭建 通過對程序的編譯和運行驗證了軟件設(shè)計可行性和正 確性 基于 CC2430 無線信道選擇的軟件設(shè)計 致謝 基于 CC2430 無線信道選擇的軟件設(shè)計 參考文獻 1 王小強 歐陽駿 黃寧淋 ZigBee 無線傳感器網(wǎng)絡(luò)設(shè)計與實現(xiàn) 北京 化學(xué)工業(yè)出版社 2012 5 2 宋文 無線傳感器網(wǎng)絡(luò)技術(shù)與應(yīng)用 M 北京 電子工業(yè)出版社 2009 3 潘浩 董齊芬 張貴軍 俞立等 無線傳感器網(wǎng)絡(luò)操作系統(tǒng) TinyOS 北京 清華大學(xué)出 版社 2011 8 4 David Gay Philip Levis David Culler Eric Brewer nesC 1 1 語言參考手冊 2003 5 5 李文仲 段朝玉等 ZigBee 無線網(wǎng)絡(luò)技術(shù)入門與實戰(zhàn) M 北京 北京航空航天大學(xué)出版 社 2007 6 崔吉 徐桂云 張燕超 李輝 無線傳感器的概述 中國礦業(yè)大學(xué)機電學(xué)院 2009 年 7 趙洪磊 王英龍 張先毅 無線傳感器網(wǎng)絡(luò)熱點問題的研究 J 信息技術(shù)與信息化 2008 2 50 52 8 尹航 張奇松 程志林 基于 ZigBee 無線網(wǎng)絡(luò)的溫濕度監(jiān)測系統(tǒng) 幾點工程 2008 25 11 20 23 9 成小良 鄧志東 基于 ZigBee 規(guī)范構(gòu)建大規(guī)模無線傳感器網(wǎng)絡(luò) 期刊論文 通信學(xué)報 2008 11 10 任豐原 黃海寧 林闖 無線傳感器網(wǎng)絡(luò) J 軟件學(xué)報 2003 14 7 1282 1291 11 林喜源 基于 TinyOS 無線傳感器網(wǎng)絡(luò)協(xié)議研究 D 武漢理工大學(xué) 2007 年 12 林麗萍 無線傳感器網(wǎng)絡(luò)節(jié)點的研究與應(yīng)用 J 安徽職業(yè)技術(shù)學(xué)院學(xué)報 2010 年 04 期 13 肖本強 張鑫 林之光 姜宇 基于 CC2430 的 Tinyos 實現(xiàn) A 計算機技術(shù)與應(yīng)用進 展 2007 全國第 18 屆計算機技術(shù)與應(yīng)用 CACIS 學(xué)術(shù)會議論文集 C 2007 年 14 李婧 趙保華 張英堂 無線傳感器網(wǎng)絡(luò)實驗平臺的實現(xiàn) J 微型機與應(yīng)用 2005 年 09 期 15 趙得斌 陳遠知 楊仕勇 無線傳感器網(wǎng)絡(luò)操作系統(tǒng) Tiny OS J 中國傳媒大學(xué)學(xué)報 自 然科學(xué)版 2008 年 04 期 16 韓樹人 溫如春 王軍 無線傳感器網(wǎng)絡(luò)中的 nesC 嵌入式編程語言 單片機與嵌入 式系統(tǒng)應(yīng)用 2010 年 05 期 17 呂治安 ZigBee 網(wǎng)絡(luò)原理與應(yīng)用開發(fā) 北京航空航天大學(xué)出版社 2008 基于 CC2430 無線信道選擇的軟件設(shè)計 18 紀晴 段陪永 基于 ZigBee 的無線傳感器網(wǎng)絡(luò)協(xié)議研究與實現(xiàn) 傳感器世界 13 10 30 35 2007 19 順舟科技提供的技術(shù)文檔 ZigBee 技術(shù)應(yīng)用概述 20 成都無線龍公司提供的參考文檔 CC2430 模塊說明 pdf 成都無線龍公司提供的參考文檔 ZigBee 開發(fā)進階 pdf 基于 CC2430 無線信道選擇的軟件設(shè)計 附錄 附錄一附錄一 程序代碼程序代碼 應(yīng)用程序模塊應(yīng)用程序模塊 define DBG L
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 浙江警官職業(yè)學(xué)院《機電傳動控制技術(shù)》2024-2025學(xué)年第一學(xué)期期末試卷
- 廣東江門幼兒師范高等??茖W(xué)校《生物科學(xué)導(dǎo)論系列》2024-2025學(xué)年第一學(xué)期期末試卷
- 2025前端金融面試題庫及答案
- 2025普惠金融試題及答案
- 2025農(nóng)行金融常識考試題庫及答案
- 2025空乘公務(wù)員考試題及答案
- 2025年上半年全國海船船員考試輪機部主推進動力裝置8201選擇題訓(xùn)練含答案
- 技術(shù)經(jīng)濟學(xué)考試題庫及答案(二)
- 天然石粉施工方案(3篇)
- 飛鏢社團活動方案策劃(3篇)
- 2025年高考化學(xué)試卷真題完全解讀(黑吉遼蒙卷)
- 《臨床執(zhí)業(yè)助理醫(yī)師大綱2024版》
- 班主任常規(guī)管理實施策略
- 腹股溝膿腫的護理查房
- 2024-2025學(xué)年廣東省深圳市南山區(qū)七年級(下)期末語文試卷
- 兒童急性支氣管炎培訓(xùn)
- Lesson9ChinasMostFamous“Farmer”課件-冀教版九年級英語上冊
- 危險化學(xué)品應(yīng)急演練計劃
- 2025-2030中國催化裂化催化劑行業(yè)前景展望及需求趨勢預(yù)測報告
- 電廠設(shè)備清潔管理制度
- 公司六一活動家屬開放日活動方案
評論
0/150
提交評論