本教材根據物聯網工程本科專業的教學需要,結合無線傳感網的發展歷史、*趨勢和應用現狀編寫而成,旨在系統闡述無線傳感網的核心技術、開發平臺,為學習者提供較為全局的視角。教材內容論及近年來國際國內無線傳感網的形成歷史和TinyOS開發平臺; 分析無線傳感網的組織架構和協議棧結構,從平臺角度總結出一個無線傳感網應用開發的基本要素; 隨后從無線傳感網MAC協議、路由協議、時間同步、數據感知與融合方面詳細介紹無線傳感網關鍵技術,并簡要介紹諸如拓撲控制、節點定位等其他重要技術; *后,從無線傳感網應用開發角度重點闡述TinyOS系統和NesC程序設計語言。
本書主要針對以下讀者,包括普通高等院校學習無線傳感網課程的本科生,涉及物聯網工程、網絡工程、計算機應用、通信工程等信息技術類專業;也包括開設無線傳感網課程的職業技術學院學生,以及無線傳感網工程技術開發人員。*后,普通高等院校的碩士生、博士生也可將其作為了解和開發無線傳感網的入門參考教材。
本教材道器有效融合,既有工作原理的深入分析,也有應用開發的設計實踐,點面結合;通過核心技術 開發實踐將相關章節有效聯系起來,系統性較強。教材內容論及近年來國際國內無線傳感網的形成歷史和TinyOS開發平臺;分析無線傳感網的組織架構和協議棧結構,從平臺角度總結出一個無線傳感網應用開發的基本要素;隨后從無線傳感網MAC協議、路由協議、時間同步、數據感知與融合詳細介紹無線傳感網關鍵技術,并簡要介紹諸如拓撲控制、節點定位等其他重要技術;*后,從無線傳感網應用開發角度重點闡述TinyOS系統和NesC程序設計語言。
前言
物聯網是繼計算機、因特網之后信息技術的第三次革命浪潮,是一個新興產業,而物聯網工程專業則是教育部為該產業發展特別設立的新專業。無線傳感網作為物聯網工程專業的一門核心課程,在培養學生專業技能和課程體系建設中起著重要作用,我們總結出近年來課程建設和教學過程中的體會、經驗,以開發 平臺的視角完成教材內容的編寫工作。本書的目的是系統介紹無線傳感網的基本概念、發展歷程、基本原理和核心技術,以及學術界和工業界流行的TinyOS開發平臺,給學生較為整體的課程知識,以實踐為導向激發其專業學習興趣。
形而上者謂之道,形而下者謂之器。本書在闡述無線傳感網理論知識的同時,融入實踐的視角組織文字,力求深入淺出。另一方面,在具體介紹無線傳感網實踐開發時,又力爭抽象出工作原理,以原理指導應用開發。因此,本教材道器有效融合,既有工作原理的深入分析,也有應用開發的設計實踐,點面結合;
通過核心技術 開發實踐將相關章節有效聯系起來,系統性較強。在上述寫作方針的指導下,全書共分10章,其章節內容組織如圖1所示。
第1章為概述,介紹無線傳感網的發展概況、場景應用和發展趨勢,并簡要闡述無線傳感網節點硬件、微操作系統平臺、節點開發語言。
第2章為無線傳感網的組織結構,介紹無線傳感網整體結構、協議棧、核心技術、物理層基本概念,并通過具體應用實例,描述無線傳感網應用的程序框架,拋出學習問題。
第3章為無線傳感網MAC協議,主要包括無線廣播信道、基于競爭的介質訪問控制協議和混合介質訪問協議,詳細闡述IEEE 802.15.4標準,簡要介紹其他類型的無線傳感網MAC協議。
第4章為無線傳感網路由協議,主要包括無線傳感網路由協議的特點、路由協議設計的核心問題,詳細闡述無線傳感網分層路由協議、平面路由協議的設計,重點分析工業標準ZigBee網絡路由協議。
第5章為無線傳感網同步技術,包括無線傳感網時間同步的必要性、同步技術分類、時間同步模型,詳細闡述無線傳感網經典的時間同步機制。
第6章為無線傳感網數據感知與融合技術,主要包括典型傳感器網絡節點硬件、數據采集板和網關節點,模擬量采集
圖1本書章節內容框架結構
轉換的工作原理和組織結構,并以一個實例介紹無線傳感網數據感知、采集的系統組成和程序實現。
第7章為無線傳感網其他核心技術,包括節點的能量管理機制、拓撲控制技術、節點定位技術、網絡安全控制。
第8章為微操作系統TinyOS,主要包括TinyOS的體系結構、內核調度機制,重點探討任務、事件和任務調度模型;
深入分析TinyOS及其應用程序的啟動過程、TinyOS的網絡協議棧結構和實現、TinyOS的資源管理。
第9章為NesC程序設計語言,包括NesC語言的特點、組成,重點討論接口、組件、配置和模塊等概念;
深入分析NesC程序的運行模型、NesC語言的程序設計。
第10章為無線傳感網應用開發,以兩個實例詳細介紹無線傳感網的應用開發,包括基于節點RSSI的位置識別、基于樹狀路由的無線傳感網多跳數據傳輸。
課時安排上,考慮到各個學校有各自的側重點,不同物聯網專業辦學依托的學科不一樣,因此辦學特色也不盡相同,這些特色將決定該門課程內容講授范圍不盡相同,建議大致課時為45~75。對于同一本教材,由于教學定位不同、教學對象不同,教學內容也會有所不同,針對不同院校,為便于使用,我們建議的教學內容如表1所示,這些內容可根據實際情況做一定調整。
表1教學內容建議
教學對象
章節內容
普通高校物聯網工
程
本科專業
普通高校其他信息
技術類本科專業
職業技術類
第1章概述
▲
▲
▲
第2章無線傳感網的組織結構
2.1~2.2
▲
▲
▲
2.3
▲
▲
2.4~2.5
▲
▲
▲
第3章無線傳感網MAC協議
3.1~3.2
▲
▲
▲
3.3
▲
3.4
▲
▲
▲
3.5
▲
▲
第4章無線傳感網路由協議
4.1~4.2
▲
▲
▲
4.3~4.4
▲○
○
4.5
▲
▲
▲
4.6
▲
▲
第5章無線傳感網同步技術
5.1
▲
▲
▲
5.2
▲
5.3
▲○
▲○
▲○
5.4
▲
第6章無線傳感網數據感知與融合技術
6.1
▲○
▲○
▲
6.2
▲
▲
▲
6.3
▲
○
6.4
▲
▲
▲
第7章無線傳感網其他核心技術
7.1~7.2
○
7.3
▲
7.4
○
○
○
第8章微操作系統TinyOS
8.1~8.4
▲
▲
▲
8.5
○
第9章NesC程序設計語言
▲
▲
▲
第10章無線傳感網應用開發
10.1
10.2
▲○
▲○
▲
○
注:▲表示必講,○表示內部可選。
本書由無線傳感網課程組的老師合作編寫。熊書明負責制訂了全書的大綱、內容安排和寫作風格,負責編寫了第2~4章和第8章;
第1章由熊書明、辛燕與趙俊杰合寫完成;
辛燕負責完成第5章和第6章的編寫工作;
趙俊杰負責完成第7章和第9章的編寫工作;
包松負責完成第10章的編寫工作。熊書明負責完成了全書的統稿、組織和審校工作;
研究生郝偉強完成了本書大量插圖的繪制工作,胡永娣、王謙、蘇遠、王文駿參與了書稿的材料收集工作,感謝他們為本書付出的辛勤勞動。在此衷心感謝王良民教授,本教材的撰寫來自他對我們國家專業綜合改革試點的物聯網專業建設安排,最初是他把我帶進了傳感網研究與物聯網教學,這本教材的章節安排以及內容設計多數來自和他商談討論中獲得的啟發,也是他的鼓勵和鞭策讓我最終負責完成了這本教材的編寫。作者所在課題組從2007年開始研究無線傳感網及物聯網,先后承擔了與此有關的國家自然科學基金、國家統計局重點項目等多項課題,在無線傳感網、物聯網研究與應用方面積累了較深厚的理論和技術基礎,編寫過程得到江蘇大學重點教材建設項目的支持,在此表示感謝!本教材的相關實驗例程來自兼容TinyOS 2.x的韓伯開發套件,并根據需要做了適當調整,同時,教材編寫的一些靈感來自無錫泛太公司實驗設備使用過程中的經驗積累,也參考了眾多優秀教材的編寫,在此一并衷心感謝。
由于作者水平有限,書中難免存在錯誤和不妥之處,敬請廣大讀者批評指正,在汲取大家建議和意見的基礎上,我們會不斷修正、完善本書內容,聯系電子郵箱地址: 37939881@qq.com。專業建設任重道遠,希望本書的出版能為物聯網工程專業等的發展盡一份綿薄之力。
熊書明
2017年10月
于玉帶河畔
目錄
第1章概述
1.1無線傳感網發展概況
1.1.1無線傳感網簡介
1.1.2無線傳感網發展的幾個階段
1.1.3無線傳感網的主要特點
1.2無線傳感網的應用
1.3無線傳感網開發平臺簡介
1.3.1節點硬件
1.3.2無線傳感網微操作系統
1.3.3應用開發語言
1.4無線傳感網發展趨勢
習題
第2章無線傳感網的組織結構
2.1無線傳感網組織
2.1.1無線傳感網總體結構
2.1.2節點通信模塊
2.1.3控制器模塊
2.1.4節點其他模塊
2.2二維協議棧結構
2.3無線傳感網的物理層
2.4無線傳感網核心技術
2.5簡單無線傳感網節點應用實例
2.5.1應用的整體框架
2.5.2應用程序的功能實現
2.5.3值得思考的問題
習題
第3章無線傳感網MAC協議
3.1無線廣播信道
3.2無線傳感網MAC協議概述
3.3競爭的介質訪問協議SMAC
3.3.1協議特點
3.3.2節點的偵聽與睡眠
3.3.3介質訪問的沖突避免
3.3.4協議的通信結構設計
3.3.5協議的實現
3.3.6時延分析與性能測試
3.4混合介質訪問IEEE 802.15.4標準
3.4.1802.15.4概述
3.4.2物理層
3.4.3MAC層幀結構
3.4.4MAC子層
3.5其他無線傳感網MAC協議
習題
第4章無線傳感網路由協議
4.1無線傳感網路由概述
4.2路由設計的核心問題
4.3無線傳感網層次結構路由協議
4.3.1LEACH協議
4.3.2鏈路估計父節點選擇協議
4.3.3匯聚樹協議CTP
4.4無線傳感網平面結構路由協議
4.4.1洪泛路由協議Flooding
4.4.2定向擴散路由協議DD
4.4.3AODV路由協議
4.5ZigBee路由協議
4.5.1ZigBee概述
4.5.2ZigBee協議棧
4.5.3ZigBee拓撲結構
4.5.4網絡層幀結構
4.5.5ZigBee協議的路由機制
4.6其他無線傳感網路由協議
習題
第5章無線傳感網同步技術
5.1同步技術簡介
5.1.1WSN時間同步的必要性
5.1.2WSN時間同步分類
5.2時間同步模型
5.2.1時鐘模型
5.2.2通信模型
5.2.3時間同步的誤差源
5.3無線傳感網時間同步機制
5.3.1時間同步的性能指標和技術挑戰
5.3.2RBS時間同步協議
5.3.3TPSN時間同步協議
5.3.4LTS時間同步協議
5.4時間同步協議的分析比較
習題
第6章無線傳感網數據感知與融合技術
6.1無線傳感網節點
6.1.1Mcia系列感知節點
6.1.2其他感知節點
6.1.3傳感器與傳感器板
6.1.4網關節點
6.2節點數據感知與采集
6.2.1節點數據采集模塊的構成
6.2.2A/D與D/A轉換
6.2.3A/D轉換芯片ADC0809
6.3無線傳感網數據融合技術
6.3.1數據融合的定義和必要性
6.3.2無線傳感網數據融合的分類
6.3.3簇內數據融合技術
6.3.4網絡層數據融合技術
6.4無線傳感網數據采集實例
6.4.1數據采集系統組成
6.4.2數據采集系統的功能實現
習題
第7章無線傳感網其他核心技術
7.1能量管理
7.1.1節點級低功耗技術
7.1.2網絡級能量管理
7.1.3應用級能量管理
7.2拓撲控制
7.2.1分層拓撲控制
7.2.2功率調節拓撲控制
7.3定位技術
7.3.1GPS定位系統
7.3.2基于距離的定位技術
7.3.3距離無關的定位技術
7.4網絡安全
7.4.1無線傳感網的安全威脅
7.4.2兩類密碼體制
7.4.3無線傳感網路由安全
習題
第8章微操作系統TinyOS
8.1TinyOS概述
8.1.1TinyOS簡介
8.1.2TinyOS體系結構
8.1.3TinyOS的安裝
8.2內核調度機制
8.2.1任務
8.2.2事件
8.2.3任務調度模型
8.2.4調度器的實現
8.3TinyOS的啟動
8.3.1內核啟動的過程
8.3.2應用組件初始化
8.4TinyOS的網絡協議棧
8.4.1TinyOS網絡協議棧概述
8.4.2主動消息機制
8.4.3相關訪問接口
8.5TinyOS的資源管理
8.5.1資源概述
8.5.2資源的訪問接口
8.5.3微控制器電源管理
8.5.4通信模塊電源管理
8.5.5外設電源管理
習題
第9章NesC程序設計語言
9.1NesC語言概述
9.2NesC語言程序的組成
9.2.1接口
9.2.2組件
9.2.3配置
9.2.4模塊
9.3NesC程序的運行模型
9.3.1任務
9.3.2原子代碼
9.3.3內部函數
9.3.4代碼的同步和異步
9.4NesC語言程序設計
9.4.1可視化的組件組織
9.4.2定時器應用
9.4.3模擬量采集
9.5NesC通信程序設計舉例
習題
第10章無線傳感網應用開發
10.1基于RSSI的節點位置識別
10.1.1基于RSSI的距離測量原理
10.1.2三角測量法與Location Engine
10.1.3節點類型初始化和位置識別過程
10.1.4功能實現
10.1.5代碼編譯與運行測試
10.2利用Tree路由的多跳傳輸
10.2.1Tree路由實現的原理
10.2.2TestTreeApp配置文件和模塊文件
10.2.3TreeRouting配置文件和模塊文件
10.2.4TestTree與TreeRouting頭文件
10.2.5代碼編譯與運行測試
習題
參考文獻