基本介紹
- 書名:窄帶物聯網NB-IoT套用開發共性技術
- 作者:王宜懷 等
- ISBN:9787121363764
- 頁數:492頁
- 定價:¥99.0
- 出版時間:2019-05
- 開本:16開
圖書信息,內容簡介,圖書目錄,
圖書信息
作譯者:王宜懷 等
出版時間:2019-05
千 字 數:784
版次:01-01
頁 數:492
開本:16開
裝幀:
I S B N :9787121363764
紙質書定價:¥99.0
內容簡介
本書遵循由個別到一般,又由一般到個別的哲學原理,研究窄帶物聯網(NB-IoT)套用開發共性技術,目標是降低開發門檻、節約開發成本、縮短開發時間。 本書從技術科學層面提出了NB-IoT套用架構,形成可復用、可移植的模板、構件和類,成為NB-IoT套用開發的“基石”。NB-IoT套用架構由終端(UE)、信息郵局(MPO)、人機互動系統(HCI)三個部分組成。針對UE,本書提出了通用嵌入式計算機(GEC)的概念,在硬體上把MCU硬體最小系統及面向具體套用的共性電路封裝成一個整體,為用戶提供晶片級的可重用的硬體實體;在軟體上,把嵌入式軟體分為BIOS程式與User程式兩部分。針對MPO,本書將其抽象為固定IP位址及連線埠。針對HCI,本書凝練出雲平台偵聽程式、客戶端程式、Web網頁程式、微信小程式、手機APP程式等套用模板,為“照葫蘆畫瓢”地完成具體的NB-IoT套用開發提供共性技術。全書形成了以GEC為核心,以構件為支撐,以套用模板為基礎的NB-IoT套用開發生態系統。
圖書目錄
第1章 概述 1
1.1 窄帶物聯網NB-IoT簡介 2
1.1.1 物聯網連線的分類 2
1.1.2 NB-IoT的起源及簡明發展歷程 3
1.1.3 NB-IoT技術特點及其與其他LPWAN技術比較 4
1.1.4 為什麼NB-IoT會流行 6
1.2 降低NB-IoT套用開發技術門檻的基本思路 8
1.2.1 NB-IoT套用開發所面臨的難題 8
1.2.2 解決NB-IoT套用開發所面臨難題的基本思路 9
1.3 本書主要內容 9
第2章 NB-IoT套用架構的基本要素 13
2.1 建立NB-IoT套用架構的基本原則 13
2.2 UE、MPO與HCI的基本定義 13
2.2.1 NB-IoT終端(UE) 14
2.2.2 NB-IoT信息郵局(MPO) 14
2.2.3 NB-IoT人機互動系統(HCI) 15
2.3 NB-IoT通信過程與套用開發相關的基本概念 15
2.3.1 與終端UE相關的基本概念 15
2.3.2 與信息郵局(MPO)相關的基本概念 17
2.3.3 與人機互動系統(HCI)相關的基本概念 19
2.4 對NB-IoT通信過程的簡明理解 20
2.5 本章小結 21
第3章 NB-IoT通信快速測試方法 22
3.1 無須終端(UE)硬體情況下測試NB-IoT通信 22
3.2 初步理解整個通信過程 25
3.3 金葫蘆IoT-GEC開發套件基本描述 27
3.3.1 金葫蘆IoT-GEC開發套件設計思想 27
3.3.2 金葫蘆IoT開發套件硬體組成 28
3.3.3 金葫蘆IoT-GEC開發套件的文檔與軟體模板 29
3.4 利用金葫蘆IoT-GEC開發套件理解NB-IoT通信過程 30
3.4.1 金葫蘆IoT-GEC開發套件的硬體系統快速測試方法 30
3.4.2 終端(UE)與人機互動系統(HCI)通信快速測試方法 31
3.5 下載與測試終端用戶程式 32
3.5.1 用戶程式更新軟體AHL-UserPrgUpdate 32
3.5.2 下載過程中常見的錯誤及解決方法 35
3.6 本章小結 37
第4章 理解NB-IoT的通信過程 38
4.1 理解終端用戶程式的執行過程 38
4.1.1 開發終端用戶程式使用的集成開發環境 38
4.1.2 終端(UE)中BIOS程式主要功能 39
4.1.3 終端(UE)的用戶程式工程結構 40
4.1.4 User_GEC_Basic主流程及中斷處理程式 42
4.2 初步理解UE與MPO的構件UECom 46
4.2.1 UECom構件的設計要點 46
4.2.2 UECom構件的頭檔案 47
4.2.3 UECom構件的使用方法 53
4.3 理解用戶伺服器偵聽程式US-Monitor的執行過程 55
4.3.1 US-Monitor工程框架 55
4.3.2 US-Monitor的執行過程 56
4.4 初步理解HCI與MPO的通信接口類HCICom 58
4.4.1 HCICom類的設計要點 58
4.4.2 HCICom類的屬性、方法和事件 60
4.4.3 HCICom類的使用方法 62
4.5 理解數據入庫過程 63
4.5.1 查看資料庫與表的簡單方法 63
4.5.2 各數據表的用途 64
4.5.3 運算元據庫的基本編程方法 66
4.6 本章小結 67
第5章 基於雲轉發服務的“照葫蘆畫瓢”樣例 68
5.1 功能需求:增加熱敏感測器 68
5.2 “照葫蘆畫瓢”:終端用戶程式的更改 70
5.2.1 終端用戶程式“畫瓢處”的查找、確認 70
5.2.2 終端用戶程式內容修改 71
5.3 “照葫蘆畫瓢”:US-Monitor的更改 73
5.3.1 US-Monitor程式“畫瓢處”的查找、確認 73
5.3.2 US-Monitor程式內容的修改 74
5.4 聯合測試及自我練習 76
5.4.1 聯合測試 76
5.4.2 自我練習 77
5.5 本章小結 77
第6章 雲伺服器偵聽程式CS-Monitor 78
6.1 雲伺服器偵聽程式CS-Monitor涉及的技術基礎 78
6.1.1 雲伺服器偵聽程式CS-Monitor的概念 78
6.1.2 WebSocket協定概述 79
6.1.3 JSON格式 80
6.2 開發CS-Monitor程式的基本條件 80
6.2.1 申請與登錄遠程雲伺服器 80
6.2.2 在雲伺服器CS上安裝必要的軟體 82
6.3 運行CS-Monitor編程模板 83
6.3.1 確認網路連線埠是否已對外開放 83
6.3.2 複製CS-Monitor工程與資料庫 84
6.3.3 修改AHL.xml檔案中有關連線配置 85
6.3.4 修改UE程式的傳送地址 85
6.3.5 運行CS-Monitor程式 86
6.4 基本理解CS-Monitor編程模板 88
6.4.1 CS-Monitor編程模板的工程框架 89
6.4.2 CS-Monitor編程模板的自動執行流程 91
6.4.3 WebSocket伺服器與客戶端的通信 101
6.4.4 CS-Monitor編程模板按鍵事件的解析 107
6.5 CS-Monitor程式的“照葫蘆畫瓢” 109
6.6 本章小結 110
第7章 通過PC客戶端的數據訪問 111
7.1 運行CS-Client及觀察自己的NB-IoT終端實時數據 111
7.1.1 直接運行CS-Client編程模板 111
7.1.2 觀察NB-IoT終端的實時數據 114
7.2 基本理解CS-Client的編程模板 115
7.2.1 CS-Client編程模板的結構 115
7.2.2 PC客戶端模板執行流程 116
7.2.3 主要按鍵事件的實現 122
7.3 CS-Client程式的“照葫蘆畫瓢” 125
7.4 本章小結 126
第8章 通過Web網頁的數據訪問 128
8.1 運行Web網頁及觀察NB-IoT終端的實時數據 128
8.1.1 打開NB-IoT的Web網頁方法 128
8.1.2 觀察NB-IoT終端實時數據 129
8.2 基本理解NB-IoT的Web網頁模板 130
8.2.1 NB-IoT的Web網頁模板的工程結構 130
8.2.2 NB-IoT的Web網頁模板功能分析 131
8.2.3 通過Web網頁的數據訪問過程 132
8.2.4 NB-IoT的Web網頁編程的進一步討論 140
8.3 NB-Web網頁的“照葫蘆畫瓢” 142
8.4 本章小結 144
第9章 通過微信小程式的數據訪問 145
9.1 運行已發布的NB-IoT微信小程式 145
9.1.1 直接運行微信小程式模板 145
9.1.2 觀察自己的NB-IoT終端實時數據 146
9.2 在開發環境中運行NB-IoT微信小程式 147
9.2.1 前期準備 147
9.2.2 運行NB-IoT微信小程式 148
9.3 基本理解NB-IoT的微信小程式模板 151
9.3.1 NB-IoT的微信小程式模板工程結構 151
9.3.2 NB-IoT的微信小程式模板開發過程 153
9.3.3 NB-IoT的微信小程式的運行分析 156
9.4 NB-IoT微信小程式編程的進一步討論 158
9.4.1 微信小程式的函式執行流程 158
9.4.2 微信小程式的WebSocket連線 160
9.4.3 數據的處理與使用 162
9.4.4 組件模板 166
9.5 “照葫蘆畫瓢”:開發自己的NB-IoT微信小程式 167
9.5.1 “照葫蘆畫瓢”:實現新增溫度的添加 168
9.5.2 “照葫蘆畫瓢”:動態組件的生成 170
9.5.3 “照葫蘆畫瓢”:添加一個頁面功能 170
9.5.4 “照葫蘆畫瓢”:導航選單的創建 171
9.6 NB-IoT微信小程式模板的發布 171
9.7 本章小結 172
第10章 通過Android APP的數據訪問 173
10.1 查看已發布的NB-IoT的Android APP 173
10.1.1 直接運行Android APP模板 173
10.1.2 觀察自己的NB-IoT終端實時數據 174
10.2 在開發環境中運行NB-IoT的Android APP 175
10.2.1 開發環境的安裝 175
10.2.2 項目導入並編譯運行 175
10.3 基本理解NB-IoT的Android APP模板 177
10.3.1 NB-IoT的Android APP開發環境 177
10.3.2 NB-IoT的Android APP模板工程結構 178
10.3.3 NB-IoT的Android APP模板的執行過程 180
10.4 NB-IoT的Android APP編程的更深入討論 185
10.4.1 APP函式執行流程 185
10.4.2 WebSocket連線的建立 185
10.4.3 WebSocket數據處理 187
10.5 “照葫蘆畫瓢”:開發自己的NB-IoT的Android APP 189
10.5.1 “照葫蘆畫瓢”:實現新增溫度的添加 190
10.5.2 “照葫蘆畫瓢”:動態生成控制項 191
10.6 本章小結 193
第11章 通用嵌入式計算機的概念與組成 194
11.1 提出GEC概念的緣由 194
11.1.1 物聯網終端開發方式存在的問題與解決辦法 194
11.1.2 提出GEC概念的時機、GEC的定義與特點 195
11.1.3 GEC在NB-IoT套用架構中的位置 197
11.2 GEC的硬體實例 198
11.2.1 金葫蘆IoT-GEC型號含義 198
11.2.2 金葫蘆AHL-A系列硬體組成 199
11.2.3 金葫蘆AHL-A系列引腳圖 202
11.2.4 金葫蘆AHL-A系列引腳功能表 203
11.3 GEC內的BIOS與User程式框架 205
11.3.1 GEC內的BIOS與User程式功能劃分 205
11.3.2 User程式軟體框架 207
11.3.3 GEC中的三類構件 209
11.4 本章小結 210
第12章 GEC常用基礎構件 211
12.1 GPIO構件 211
12.1.1 GPIO構件的知識要素 211
12.1.2 GPIO構件的API 213
12.1.3 GPIO構件API的測試方法 215
12.2 UART構件 221
12.2.1 UART構件的知識要素 221
12.2.2 UART構件的API 223
12.2.3 UART構件API的測試方法 225
12.3 ADC構件 227
12.3.1 ADC構件的知識要素 227
12.3.2 ADC構件的API 229
12.3.3 ADC構件API的測試方法 229
12.4 Flash構件 231
12.4.1 Flash構件的知識要素 231
12.4.2 Flash構件的API 232
12.4.3 Flash構件API的測試方法 234
12.5 I2C構件 235
12.5.1 I2C構件的知識要素 235
12.5.2 I2C構件的API 240
12.5.3 I2C構件API的測試方法 242
12.6 SPI構件 244
12.6.1 SPI構件的知識要素 244
12.6.2 SPI構件的API 247
12.6.3 SPI構件API的測試方法 249
12.7 PWM構件 250
12.7.1 PWM構件的知識要素 251
12.7.2 PWM構件的API 253
12.7.3 PWM構件API的測試方法 254
12.8 本章小結 255
第13章 基於GEC的UE軟/硬體設計過程 256
13.1 輸入/輸出分析 256
13.1.1 輸入/輸出的共性分析 256
13.1.2 輸入/輸出的個性分析 257
13.2 快速規範的硬體評估 258
13.2.1 複製User工程框架 258
13.2.2 編程評估各硬體單元 259
13.3 硬體原理圖繪製與PCB電路板製作 270
13.3.1 構件化硬體原理圖繪製的簡明規則 270
13.3.2 PCB布板的簡明規則 274
13.4 功能軟體的設計與測試 277
13.4.1 功能需求 277
13.4.2 GEC硬體需求 277
13.4.3 軟體設計 277
13.4.4 軟體測試 280
13.5 本章小結 281
第14章 UECom構件與HCICom類解析 282
14.1 UECom構件的設計與解析 282
14.1.1 UECom構件的基本實現過程 282
14.1.2 UECom構件主要函式的執行流程及代碼解析 286
14.1.3 UECom構件的套用流程 294
14.2 HCICom類的設計與解析 295
14.2.1 HCICom類的成員變數 295
14.2.2 理解HCICom類的對外方法 295
14.2.3 HCICom類的套用流程 301
14.3 本章小結 301
第15章 基於GEC的NB-IoT套用產品開發實例 303
15.1 基於NB-IoT的實驗室管家 303
15.1.1 LBS的輸入/輸出分析 303
15.1.2 LBS的硬體評估 305
15.1.3 LBS功能軟體設計與測試 310
15.2 基於NB-IoT的多感測器數據採集系統 316
15.2.1 TE感測器輸入/輸出分析 316
15.2.2 TE感測器的硬體評估 318
15.2.3 TE感測器軟體設計與測試 325
15.3 不同系統聯合測試及總結 330
15.3.1 實驗室管家系統的聯合測試 330
15.3.2 多感測器數據採集系統的聯合測試 331
15.3.3 軟/硬體協同測試共性總結 332
15.4 本章小結 332
第16章 進一步討論 334
16.1 新增部件基本方法 334
16.1.1 新增部件的構件製作 334
16.1.2 新增部件的測試方法 339
16.2 NB-WSN網關 343
16.2.1 NB-WSN網關的功能 343
16.2.2 NB-WSN網關實例 343
16.2.3 基於NB-WSN網關的NB-IoT套用架構 344
16.3 通信模組與MCU的更換問題 345
16.3.1 通信模組的更換問題 345
16.3.2 MCU的更換問題 345
16.4 安全問題 345
16.4.1 NB-IoT套用產品的安全需求分析 345
16.4.2 基於金葫蘆NB-IoT套用架構的加密方法 347
16.5 實時作業系統(RTOS)的融入問題 347
16.5.1 RTOS的基本作用、選擇與使用場景 348
16.5.2 RTOS中與任務相關的基本概念 348
16.5.3 RTOS下編程的一般步驟 353
16.6 本章小結 354
附錄A 開發語言概要 355
附錄B 終端(UE)涉及的文檔 397
附錄C 人機互動系統(HCI)涉及的文檔 416
附錄D HTU21D溫濕度感測器中文技術手冊 459
附錄E 術語和縮寫 473
參考文獻 475