本書詳細介紹了物聯網結合云平臺的案例開發,先講述通信協議構建、驅動開發、接口開發等物聯網的基礎開發,然后介紹物聯網案例開發,共8個簡單的開發任務,接著介紹物聯網綜合應用開發,共14個綜合案例,從簡單到復雜,一步一步引導讀者掌握物聯網和移動互聯網的開發技術。
近年來,物聯網和云計算的迅猛發展,慢慢改變了社會的生產方式,大大提高了生產效率和社會生產力。國家規劃在9大重點領域推廣物聯網,分別是智能農業、智能家居、智能電力、智能交通、智能電網、智能安防、智能物流、智能環保和智能醫療,并得到了廣泛的應用且逐步改變著這些產業的結構。
物聯網系統涉及的技術多、知識面廣,對于一個有志于從事物聯網和云平臺開發的人,需要掌握微處理器的接口驅動開發技術、傳感器的驅動開發技術、應用層開發技術,等等。本書介紹物聯網的基本知識、開發基礎,以及綜合應用開發和高級應用開發,理論知識點清晰,實踐案例豐富,逐步引導讀者掌握物聯網和云平臺的開發技術并快速應用。
全書采用任務式開發的學習方法,共14個趣味盎然、貼近生活的案例,每個案例均有完整的開發過程,分別有明確的學習目標、清晰的環境開發要求、深入淺出的原理學習、詳細的開發內容和完整的開發步驟,最后進行總結與拓展,每個案例均附上完整的開發代碼,在源代碼的基礎可以進行快速二次開發,能方便將其轉化為各種比賽的案例,或者工程技術開發人員和科研工作 人員進行科研項目開發等。
第1章介紹了物聯網基本構成和發展狀況,分析了智云平臺的基本框架和軟硬件構成,介紹了本書開發使用的硬件平臺CC2530的硬件資源。
第2章分析云平臺開發技術,先介紹智云物聯平臺的基本使用方法,并設計了一種用于數據傳輸的通信協議,介紹了基于CC2530和ZigBee無線傳感網絡的感知層硬件開發,有采集類節點、報警類節點和控制類節點,分析了云平臺的Android應用接口開發和WEB應用接口開發,并學習了云平臺調試工具,最后進行了云平臺的應用。
第3章是云平臺物聯網的綜合應用開發,共有7個綜合應用開發項目,分別是遠程溫濕度計系統、智能燈光控制系統、廚房燃氣檢測系統、農作物光強監測系統、GPS網關定位系統、GSM短信通知系統,以及視頻采集與控制系統,從物聯網的感知層、傳輸層及應用層出發,重點實現感知層和應用層的設計與開發,實現了物聯網云平臺的綜合應用。
第4章是云平臺物聯網的高級應用開發,共有7個高級應用開發項目,分別是智慧窗簾控制系統、自動澆花系統、智能門禁系統、智能安防系統、實驗室管理系統、無線抄表系統、智能家居自動控制系統,高級應用開發涉及感知層更多的環境信息采集和控制,從而達到物聯網的智慧功能。本章也對物聯網云平臺知識點進行了總結,從而構建更為完整的物聯網知識框架。
本書特色:
(1)任務式開發。拋去傳統的理論學習方法,選取合適的案例將理論與實踐結合起來,通過理論學習和開發實踐,快速入門,由淺入深掌握物聯網開發技術。
(2)各種知識點的融合。將嵌入式系統的開發技術、CC2530處理器基本接口驅動技術、傳感器驅動技術、ZigBee無線技術、Android移動互聯網開發技術等,實現了強大的物聯網數據采集、傳輸和處理。
本書是在另一本書籍《物聯網平臺開發及應用—基于CC2530和ZigBee》的基礎上,進一步地學習和開發綜合性應用項目,建議讀者先閱讀該書籍的內容,夯實基礎,以便快速進入本書的開發和應用。
本書既可作為高等院校相關專業師生的教學和自學參考書,也可供相關領域的工程技術人員查閱之用,對于物聯網開發愛好者,本書也是一本的深入淺出的讀物。
本書在編寫過程中,借鑒和參考了國內外專家、學者、技術人員的相關研究成果,我們盡可能按學術規范予以說明,但難免有疏漏之處,在此謹向有關作者表示深深的敬意和謝意。如有請疏漏,請及時通過出版社與作者聯系。
感謝中智訊(武漢)科技有限公司在本書編寫的過程中提供的幫助,特別感謝電子工業出版社的編輯在本書出版過程中給予大力支持,該書也得到了“廣東省高等職業教育品牌專業建設項目(2016gzpp044)”的資助。
由于本書涉及的知識面廣,限于筆者的水平和經驗,疏漏之處在所難免,懇請專家和讀者批評指正。
作 者
2017年3月
廖建尚,男,副教授,畢業于廣東工業大學通信與信息系統專業,碩士,現任職于廣東交通職業技術學院。長期從事物聯網技術的開發和教學工作。
第1章 智云物聯開放平臺 1
1.1 任務1:認識物聯網 1
1.1.1 物聯網 1
1.1.2 我國物聯網的發展 2
1.1.3 物聯網發展領域 3
1.1.4 物聯網和“互聯網+” 5
1.2 任務2:認識智云物聯平臺 6
1.2.1 智云物聯基本框架 7
1.2.2 智云物聯常用硬件 8
1.2.3 云平臺可實現的項目 9
1.2.4 開發預備知識 9
1.3 任務3:認識物聯網開發硬件 10
1.3.1 物聯網開發硬件―TI CC2530處理器 10
1.3.2 CC2530無線節點 10
1.3.3 跳線設置及硬件連接 11
1.3.4 CC2530無線節點硬件資源 14
1.4 任務4:認識ZigBee和ZStack協議棧 14
1.4.1 ZigBee無線傳感網絡技術 14
1.4.2 ZStack協議棧 15
第2章 云平臺開發基礎 21
2.1 任務5:智云平臺配置 21
2.1.1 學習目標 21
2.1.2 開發環境 21
2.1.3 原理學習 21
2.1.4 開發內容 22
2.1.5 開發步驟 28
2.1.6 總結與拓展 32
2.2 任務6:認識通信協議 33
2.2.1 學習目標 33
2.2.2 開發環境 33
2.2.3 原理學習 33
2.2.4 開發內容 38
2.2.5 開發步驟 39
2.2.6 總結與拓展 41
2.3 任務7:硬件驅動開發 41
2.3.1 學習目標 41
2.3.2 開發環境 41
2.3.3 原理學習 41
2.3.4 開發內容 43
2.3.5 開發步驟 53
2.3.6 總結與拓展 55
2.4 任務8:AndroidAPI開發 55
2.4.1 學習目標 55
2.4.2 開發環境 56
2.4.3 原理學習 56
2.4.4 開發內容 61
2.4.5 開發步驟 78
2.4.6 總結與拓展 80
2.5 任務9:WebAPI開發 80
2.5.1 學習目標 80
2.5.2 開發環境 80
2.5.3 原理學習 80
2.5.4 開發內容 85
2.5.5 開發步驟 123
2.5.6 總結與拓展 130
2.6 任務10:開發調試工具 130
2.6.1 學習目標 130
2.6.2 開發環境 130
2.6.3 原理學習 130
2.6.4 開發內容 131
2.6.5 開發步驟 135
2.6.6 總結與拓展 136
2.7 任務11:掌握應用項目上傳 136
2.7.1 學習目標 136
2.7.2 開發環境 137
2.7.3 原理學習 137
2.7.4 開發內容 137
2.7.5 開發步驟 144
2.7.6 總結與拓展 145
第3章 智云物聯綜合應用開發 146
3.1 任務12:遠程溫濕度計系統開發(案例1) 146
3.1.1 學習目標 146
3.1.2 開發環境 146
3.1.3 原理學習 146
3.1.4 開發內容 149
3.1.5 開發步驟 156
3.1.6 總結與拓展 158
3.2 任務13:智能燈光控制系統開發(案例2) 158
3.2.1 學習目標 158
3.2.2 開發環境 158
3.2.3 原理學習 158
3.2.4 開發內容 160
3.2.5 開發步驟 168
3.2.6 總結與拓展 169
3.3 任務14:廚房燃氣檢測系統開發(案例3) 169
3.3.1 學習目標 169
3.3.2 開發環境 169
3.3.3 原理學習 169
3.3.4 開發內容 171
3.3.5 開發步驟 180
3.3.6 總結與拓展 182
3.4 任務15:農作物光強監測系統開發(案例4) 183
3.4.1 學習目標 183
3.4.2 開發環境 183
3.4.3 原理學習 183
3.4.4 開發內容 184
3.4.5 開發步驟 192
3.4.6 總結與拓展 194
3.5 任務16:GPS網關定位系統開發(案例5) 194
3.5.1 學習目標 194
3.5.2 開發環境 194
3.5.3 原理學習 194
3.5.4 開發內容 196
3.5.5 開發步驟 200
3.5.6 總結與拓展 202
3.6 任務17:GSM短信通知系統開發(案例6) 202
3.6.1 學習目標 202
3.6.2 開發環境 202
3.6.3 原理學習 202
3.6.4 開發內容 203
3.6.5 開發步驟 205
3.6.6 總結與拓展 206
3.7 任務18:視頻采集與控制系統開發(案例7) 206
3.7.1 學習目標 206
3.7.2 開發環境 206
3.7.3 原理學習 207
3.7.4 開發內容 207
3.7.5 開發步驟 216
3.7.6 總結與拓展 218
第4章 智云物聯高級應用開發 219
4.1 任務19:UI設計與布局 219
4.1.1 學習目標 219
4.1.2 開發內容 219
4.1.3 開發步驟 227
4.2 任務20:智慧窗簾控制系統開發(案例8) 228
4.2.1 學習目標 228
4.2.2 開發環境 228
4.2.3 原理學習 228
4.2.4 開發內容 230
4.2.5 開發步驟 241
4.2.6 總結與拓展 242
4.3 任務21:自動澆花系統開發(案例9) 242
4.3.1 學習目標 242
4.3.2 開發環境 243
4.3.3 原理學習 243
4.3.4 開發內容 244
4.3.5 開發步驟 256
4.3.6 總結與拓展 258
4.4 任務22:智能門禁系統開發(案例10) 258
4.4.1 學習目標 258
4.4.2 開發環境 258
4.4.3 原理學習 258
4.4.4 開發內容 262
4.4.5 開發步驟 271
4.4.6 總結與拓展 273
4.5 任務23:智能安防系統開發(案例11) 274
4.5.1 學習目標 274
4.5.2 開發環境 274
4.5.3 原理學習 274
4.5.4 開發內容 277
4.5.5 開發步驟 294
4.5.6 總結與拓展 296
4.6 任務24:實驗室管理系統開發(案例12) 296
4.6.1 學習目標 296
4.6.2 開發環境 296
4.6.3 原理學習 296
4.6.4 開發內容 298
4.6.5 開發步驟 315
4.6.6 總結與拓展 317
4.7 任務25:無線抄表系統開發(案例13) 317
4.7.1 學習目標 317
4.7.2 開發環境 317
4.7.3 原理學習 317
4.7.4 開發內容 319
4.7.5 開發步驟 334
4.7.6 總結與拓展 335
4.8 任務26:智能家居自動控制系統開發(案例14) 336
4.8.1 學習目標 336
4.8.2 開發環境 336
4.8.3 原理學習 336
4.8.4 開發內容 337
4.8.5 開發步驟 344
4.8.6 總結與拓展 347
附錄A 常見硬件及問題 348
A.1 Android智云Android開發平臺的使用 348
A.2 無線節點鏡像固化 350
A.3 無線節點修改網絡信息 351
A.4 無線節點讀取IEEE地址 352
A.5 認識各種傳感器 353
A.6 傳感器操作說明 357
參考文獻 360