『壹』 無線感測器網路系統主要有什麼組成
感測器網路系統通常包括感測器節點(sensor)、匯聚節點(sink node)和管理節點。大量感測器節點隨機部署在監測區域(sensor field)內部或附近,能夠通過自組織方式構成網路。感測器節點監測的數據沿著其他感測器節點逐跳地進行傳輸,在傳輸過程中監測數據可能被多個節點處理,經過多跳後路由到匯聚節點,最後通過互聯網或衛星到達管理節點。用戶通過管理節點對感測器網路進行配置和管理,發布監測任務以及收集監測數據。
感測器網路節點的組成和功能包括如下四個基本單元:感測單元(由感測器和模數轉換功能模塊組成)、處理單元(由嵌入式系統構成,包括CPU、存儲器、嵌入式操作系統等)、通信單元(由無線通信模塊組成)、以及電源部分。此外,可以選擇的其它功能單元包括:定位系統、運動系統以及發電裝置等。
『貳』 什麼是無線感測器網路
本教程操作環境:windows10系統、Dell G3電腦。
什麼是無線感測器網路無線感測器網路(Wireless Sensor Networks, WSN)是一種分布式感測網路,它的末梢是可以感知和檢查外部世界的感測器。WSN中的感測器通過無線方式通信,因此網路設置靈活,設備位置可李戚以隨時更改,還可以跟互聯網進行有線或無線方式的連接。通過無線通信方式形成的一個多跳自組織網路。
基本信息
無線感測器網路是一項通過無線通信技術把數以萬計的感測器節點以自由式進行組織與結合進而形成的網路形式。
構成感測器節點的單元分別為:數據採集單元、數據傳輸單元、數據處理單元以及能量供應單元。
其中數據採集單元通常都是採集監測區域內的信息並加以轉換,比如光強度跟大氣壓力與濕度等;數據傳輸單元則主要以無線通信和交流信息以及緩扒發送接收那些採集進來的數據信息為主;數據處理單元通常處理的是全部節點的路由協議和管理任務以及定位裝置等;能量供應單元為縮減感測器節點占據的面積,會選擇微型電池的構成形式。
無線感測器網路當中的節點分為兩種,一個是匯聚節點,一個是感測器節點。
匯聚節點主要指的是網關能夠在感測器節點當中將錯誤的報告數據剔除,並與相關的報告相結合將數據加以融合,對發生的事件進行判斷。
匯聚節點與用戶節點連接可藉助廣域網路或者衛星直接通信,並對收集到的數據進行處理。
相較於傳統式的網路和其他感測器相比,無線感測器網路有以下特點:
(1)組建方式自由。無線網路感測器的組建不受任何外界條件的限制,組建者無論在何時何地,都可以快速地組建起一個功能完善的無線網路感測器網路,組建成功之後的維護管理工作也完全在網路內部進行。
(2)網路拓撲結構的不確定性。從網路層次的方向來看,無線感測器的網路拓撲結構是變化不定的,哪哪陵例如構成網路拓撲結構的感測器節點可以隨時增加或者減少,網路拓撲結構圖可以隨時被分開或者合並。
(3)控制方式不集中。雖然無線感測器網路把基站和感測器的節點集中控制了起來,但是各個感測器節點之間的控制方式還是分散式的,路由和主機的功能由網路的終端實現各個主機獨立運行,互不幹涉,因此無線感測器網路的強度很高,很難被破壞。
(4)安全性不高。無線感測器網路採用無線方式傳遞信息,因此感測器節點在傳遞信息的過程中很容易被外界入侵,從而導致信息的泄露和無線感測器網路的損壞,大部分無線感測器網路的節點都是暴露在外的,這大大降低了無線感測器網路的安全性。
組成結構:
無線感測器網路主要由三大部分組成,包括節點、感測網路和用戶這3部分。其中,節點一般是通過一定方式將節點覆蓋在一定的范圍,整個范圍按照一定要求能夠滿足監測的范圍;感測網路是最主要的部分,它是將所有的節點信息通過固定的渠道進行收集,然後對這些節點信息進行一定的分析計算,將分析後的結果匯總到一個基站,最後通過衛星通信傳輸到指定的用戶端,從而實現無線感測的要求。
『叄』 無線感測器網路體系結構包括哪些部分,各部分的
結構
感測器網路系統通常包括感測器節點EndDevice、匯聚節點Router和管理節點Coordinator。
大量感測器節點隨機部署在監測區域內部或附近,能夠通過自組織方式構成網路。感測器節點監測的數據沿著其他感測器節點逐跳地進行傳輸,在傳輸過程中監測數據可能被多個節點處理,經過多跳後路由到匯聚節點,最後通過互聯網或衛星到達管理節點。用戶通過管理節點對感測器網路進行配置和管理,發布監測任務以及收集監測數據。
感測器節點
處理能力、存儲能力和通信能力相對較弱,通過小容量電池供電。從網路功能上看,每個感測器節點除了進行本地信息收集和數據處理外,還要對其他節點轉發來的數據進行存儲、管理和融合,並與其他節點協作完成一些特定任務。
匯聚節點
匯聚節點的處理能力、存儲能力和通信能力相對較強,它是連接感測器網路與Internet 等外部網路的網關,實現兩種協議間的轉換,同時向感測器節點發布來自管理節點的監測任務,並把WSN收集到的數據轉發到外部網路上。匯聚節點既可以是一個具有增強功能的感測器節點,有足夠的能量供給和更多的、Flash和SRAM中的所有信息傳輸到計算機中,通過匯編軟體,可很方便地把獲取的信息轉換成匯編文件格式,從而分析出感測節點所存儲的程序代碼、路由協議及密鑰等機密信息,同時還可以修改程序代碼,並載入到感測節點中。
管理節點
管理節點用於動態地管理整個無線感測器網路。感測器網路的所有者通過管理節點訪問無線感測器網路的資源。
無線感測器測距
在無線感測器網路中,常用的測量節點間距離的方法主要有TOA(Time of Arrival),TDOA(Time Difference of Arrival)、超聲波、RSSI(Received Sig nalStrength Indicator)和TOF(Time of Light)等。
『肆』 無線感測器網路的特點與應用
無線感測器網路是一種新型的感測器網路,其主要是由大量的感測器節點組成,利用無線網路組成一個自動配置的網路系統,並將感知和收集到的信息發給管理部門。目前無線感測器網路在軍事、生態環境、醫療和家居方面都有一定應用,未來無線感測器網路的發展前景將是不可估量的。
一、無線感測器網路的特點
(一)節點數量多
在監測區通常都會安置許多感測器節點,並通過分布式處理信息,這樣就能夠提高監測的准確性,有效獲取更加精確的信息,並降低對節點感測器的精度要求。此外,由於節點數量多,因此存在許多冗餘節點,這樣就能使系統的容錯能力較強,並且節點數量多還能夠覆蓋到更廣闊的監測區域,有效減少監測盲區。
(二)動態拓撲
無線感測器網路屬於動態網路,其節點並非固定的。當某個節電出現故障或是耗盡電池後,將會退出網路,此外,還可能由於需要而被轉移添加到其他的網路當中。
(三)自組織網路
無線感測器的節點位置並不能進行精確預先設定。節點之間的相互位置也無法預知,例如通過使用飛機播散節點或隨意放置在無人或危險的區域內。在這種情況下,就要求感測器節點自身能夠具有一定的組織能力,能夠自動進行相關管理和配置。
(四)多跳路由
無線感測網路中,節點之間的距離通常都在幾十到幾百米,因此節點只能與其相鄰的節點進行直接通信。如果需要與范圍外的節點進行通信,就需要經過中間節點進行路由。無線感測網路中的多跳路由並不是專門的路由設備,所有傳輸工作都是由普通的節點完成的。
(五)以數據為中心
無線感測網路中的節點均利用編號標識。由於節點是隨機分布的,因此節點的編號和位置之間並沒有聯系。用戶在查詢事件時,只需要將事件報告給網路,並不需要告知節點編號。因此這是一種以數據為中心進行查詢、傳輸的方式。
(六)電源能力局限性
通常都是用電池對節點進行供電,而每個節點的能源都是有限的,因此一旦電池的能量消耗完,就是造成節點無法再進行正常工作。
二、無線感測器網路的應用
(一)環境監測應用
無線感測器可以用於進行氣象研究、檢測洪水和火災等,在生態環境監測中具有明顯優勢。隨著我國市場經濟的不斷發展,生態環境污染問題也越來越嚴重。我國是一個幅員遼闊、資源豐富的農業大國,因此在進行農業生產時利用無線感測器進行對生產環境變化進行監測能夠為農業生產帶來許多好處,這對我國市場經濟的'不斷發展有著重要意義。
(二)醫療護理應用
無線感測器網路通過使用互聯網路將收集到的信息傳送到接受埠,例如一些病人身上會有一些用於監測心率、血壓等的感測器節點,這樣醫生就可以隨時了解病人的病情,一旦病人出現問題就能夠及時進行臨時處理和救治。在醫療領域內感測器已經有了一些成功案例,例如芬蘭的技術人員設計出了一種可以穿在身上的無線感測器系統,還有SSIM(Smart Sensors and Integrated Microsystems)等。
(三)智能家居建築應用
文物保護單位的一個重要工作就是要對具有意義的古老建築實行保護措施。利用無線感測器網路的節點對古老建築內的溫度是、濕度、關照等進行監測,這樣就能夠對建築物進行長期有效的監控。對於一些珍貴文物的保存,對保護地的位置、溫度和濕度等提前進行檢測,可以提高展覽品或文物的保存品質。例如,英國一個博物館基於無線感測器網路設計了一個警報系統,利用放在溫度底部的節點檢測燈光、振動等信息,以此來保障文物的安全[5]。
目前我國基礎建設處在高速發展期,建設單位對各種建設工程的安全施工監測越來越關注。利用無線感測器網路使建築能夠檢測到自身狀況並將檢測數據發送給管理部門,這樣管理部門就能夠及時掌握建築狀況並根據優先等級來處理建築修復工作。
另外,在傢具或家電匯中設置無線感測器節點,利用無線網路與互聯網路,將家居環境打造成一個更加舒適方便的空間,為人們提供更加人性化和智能化的生活環境。通過實時監測屋內溫度、濕度、光照等,對房間內的細微變化進行監測和感知,進而對空調、門窗等進行智能控制,這樣就能夠為人們提供一個更加舒適的生活環境。
(四)軍事應用
無線感測器網路具有低能耗、小體積、高抗毀等特性,且其具有高隱蔽性和高度的自組織能力,這為軍事偵察提供有效手段。美國在20世紀90年代就開始在軍事研究中應用無線感測器網路。無線感測器網路在惡劣的戰場內能夠實時監控區域內敵軍的裝備,並對戰場上的狀況進行監控,對攻擊目標進行定位並能夠檢測生化武器。
目前無線感測器網路在全球許多國家的軍事、研究、工業部門都得到了廣泛的關注,尤其受到美國國防部和軍事部門的重視,美國基於C4ISR又提出了C4KISR的計劃,對戰場情報的感知和信息綜合能力又提出新的要求,並開設了如NSOF系統等的一系列軍事無線感測器網路研究。
總之,隨著無線感測器網路的研究不斷深入和擴展,人們對無線感測器的認識也越來越清晰,然而目前無線感測器網路的在技術上還存在一定問題需要解決,例如存儲能力、傳輸能力、覆蓋率等。盡管無線感測器網路還有許多技術問題待解決使得現在無法廣泛推廣和運用,但相信其未來發展前景不可估量。
『伍』 無線感測器網路操作系統TinyOS的目錄
第1章 緒論 1
1.1 無線感測器網路概述 1
1.1.1 無線感測器網路的研究進展 2
1.1.2 無線感測器網路的體系特徵 3
1.2 無線感測器網路操作系統 8
1.2.1 無線感測器網路對操作系統的需求 8
1.2.2 現有的無線感測器網路操作系統 10
1.3 TinyOS操作系統概述 13
1.3.1 設計理念 14
1.3.2 技術特點 15
1.3.3 體系結構 16
1.3.4 版本說明 17
1.4 與其他WSN操作系統的比較 20
1.5 本書章節安排 24
第2章 開發環境 26
2.1 TinyOS 2.1在Windows中的安裝 26
2.1.1 搭建Java環境 27
2.1.2 安裝Cygwin平台 30
2.1.3 安裝平台交叉編譯器 34
2.1.4 安裝TinyOS源碼與工具包 36
2.1.5 安裝Graphviz圖形工具 38
2.2 其他安裝方法 39
2.2.1 在Ubuntu 9.10中的安裝 39
2.2.2 使用RPM包的手動安裝 41
2.2.3 TinyOS 1.x升級到TinyOS 2.x 42
2.2.4 使用CVS更新TinyOS 2.x文件 46
2.3 TinyOS安裝後的測試 47
2.3.1 TinyOS文件概覽 47
2.3.2 檢查運行環境 48
2.3.3 模擬測試 49
2.4 程序的編譯和下載 50
2.4.1 代碼編輯工具 50
2.4.2 編譯程序 52
2.4.3 USB串口驅動 53
2.4.4 下載程序 54
2.5 本章小結 57
第3章 nesC編程語言 58
3.1 nesC語言簡介 58
3.2 nesC語言規范 59
3.2.1 介面 61
3.2.2 組件 62
3.2.3 模塊及其組成 65
3.2.4 配件及其組成 68
3.3 基於nesC語言的應用程序 73
3.3.1 nesC應用程序簡介 73
3.3.2 Blink實例 77
3.3.3 BlinkSingle實例 82
3.3.4 移植TinyOS 1.x代碼到2.x 86
3.4 nesC程序運行模型 88
3.4.1 任務 88
3.4.2 內部函數 91
3.4.3 分階段作業 92
3.4.4 同步與非同步 94
3.4.5 原子性代碼 95
3.4.6 無線模塊的開啟過程 96
3.5 編程約定 98
3.5.1 通用約定 98
3.5.2 軟體包 98
3.5.3 語法約定 99
3.5.4 TinyOS約定 101
3.6 可視化組件關系圖 103
3.7 本章小結 104
第4章 基本操作 106
4.1 點對點的無線通信 106
4.1.1 主動消息概述 106
4.1.2 通信介面和組件 107
4.1.3 消息緩存抽象 109
4.1.4 通過無線電發送消息 110
4.1.5 通過無線電接收消息 117
4.2 節點與PC的串口通信 119
4.2.1 信息源和埠測試 119
4.2.2 基站和監聽工具 121
4.2.3 MIG消息介面生成工具 123
4.2.4 SerialForwarder和其他信息源 126
4.2.5 發送信息包到串口 129
4.2.6 基於printf庫的列印調試 130
4.2.7 常見的串口通信故障 133
4.3 感測 134
4.3.1 感測簡介 134
4.3.2 Sense實例 135
4.3.3 Oscilloscope實例 138
4.4 存儲 140
4.4.1 存儲簡介 140
4.4.2 配置數據的存儲 141
4.4.3 日誌數據的存儲 146
4.4.4 大數據塊的存儲 148
4.5 本章小結 149
第5章 系統內核 151
5.1 硬體抽象架構 151
5.1.1 架構簡介 151
5.1.2 不同層次抽象的結合 154
5.1.3 橫向分解 155
5.1.4 微處理器抽象 156
5.1.5 HIL抽象級別 156
5.2 任務和調度 157
5.2.1 任務簡介 157
5.2.2 TinyOS 1.x的任務和調度器 157
5.2.3 TinyOS 2.x的任務 159
5.2.4 TinyOS 2.x的調度器 160
5.2.5 調度器的替換 162
5.2.6 調度器的具體實現 165
5.3 系統啟動順序 168
5.3.1 啟動順序簡介 168
5.3.2 TinyOS 1.x的啟動順序 168
5.3.3 TinyOS 2.x的啟動介面 169
5.3.4 TinyOS 2.x的啟動順序 170
5.3.5 系統啟動和軟體初始化 174
5.4 資源仲裁 175
5.4.1 資源簡介 175
5.4.2 資源類型 176
5.4.3 資源仲裁 178
5.4.4 共享資源的應用實例 183
5.5 微控制器的電源管理 187
5.5.1 微控制器電源管理簡介 187
5.5.2 TinyOS 1.x的電源管理 188
5.5.3 TinyOS 2.x的電源管理 189
5.5.4 外圍設備和子系統 191
5.6 外圍設備的電源管理 191
5.6.1 外圍設備電源管理簡介 191
5.6.2 電源管理模型 192
5.6.3 顯式電源管理 193
5.6.4 隱式電源管理 196
5.7 串口通信 199
5.7.1 串口通信協議簡介 199
5.7.2 串口協議棧的實現 200
5.7.3 串口協議棧的抽象 207
5.8 本章小結 207
第6章 平台與模擬 210
6.1 平台 210
6.1.1 平台簡介 210
6.1.2 底層I/O口 211
6.1.3 新平台的建立 215
6.1.4 CC2430平台的移植 223
6.2 編譯系統 226
6.2.1 編譯系統簡介 226
6.2.2 自定義編譯系統 227
6.2.3 makefile入門 228
6.2.4 編寫Makefile文件 230
6.2.5 編譯工具 232
6.3 TOSSIM模擬 233
6.3.1 TOSSIM簡介 233
6.3.2 模擬編譯 234
6.3.3 基於Python的模擬 237
6.3.4 調試語句 239
6.3.5 網路配置 242
6.3.6 變數的觀察 250
6.3.7 注入消息包 253
6.3.8 C++介面 256
6.3.9 gdb調試 258
6.4 本章小結 261
第7章 網路協議 262
7.1 分發協議 262
7.1.1 分發協議簡介 262
7.1.2 相關介面和組件 263
7.1.3 EasyDissemination實例 265
7.1.4 Drip庫和DIP庫 269
7.2 匯聚協議 276
7.2.1 匯聚協議簡介 276
7.2.2 相關介面和組件 277
7.2.3 CTP協議 279
7.2.4 CTP實現 281
7.2.5 EasyCollection實例 287
7.3 本章小結 291
第8章 高級應用技術 293
8.1 低功耗應用程序 293
8.1.1 能耗管理簡介 293
8.1.2 外圍設備的電源管理 294
8.1.3 無線模塊的電源管理 297
8.1.4 微處理器的電源管理 300
8.1.5 低功耗感測的應用實例 300
8.2 低功耗監聽 300
8.2.1 低功耗監聽簡介 300
8.2.2 相關介面 302
8.2.3 message_t元數據 304
8.2.4 HAL層的改進建議 305
8.3 TOSThreads線程 305
8.3.1 TOSThreads線程簡介 305
8.3.2 nesC語言的API介面 306
8.3.3 C語言的API介面 309
8.3.4 支持新的系統服務 310
8.4 CC2420聯網安全功能 312
8.4.1 CC2420安全模式簡介 313
8.4.2 發送端的配置 313
8.4.3 接收端的配置 314
8.4.4 RadioCountToLeds實例 315
8.5 本章小結 319
第9章 基於TinyOS的應用開發實例 320
9.1 基於TSL2550感測器的光照檢測 320
9.1.1 TSL2550簡介 320
9.1.2 驅動實現 323
9.1.3 感測測試 330
9.2 基於GSM簡訊的遠程數據傳輸 334
9.2.1 系統簡介 334
9.2.2 功能實現 338
9.2.3 簡訊測試 348
9.3 基於簡單蟻群演算法的路由協議 350
9.3.1 演算法簡介 350
9.3.2 協議實現 353
9.3.3 模擬測試 366
9.4 本章小結 370
附錄A nesC語言基本語法 371
附錄B TinyOS編程技巧 374
附錄C 英漢對照術語表 375
參考文獻與網址 378