發表於2024-11-26
本書在介紹物聯網的組成、典型架構和應用的基礎上,采用實例代碼講述python編程基礎和應用實例,包括用micropython進行物聯網單片機的開發、用python開發物聯網網關的方法、python django框架開發物聯網web後颱和前端知識及物聯網常用通信方案2G、lora、zigbee和物聯網通信協議MQTT、COAP等,*重要的內容是通過一個完整的大型物聯網項目實例講解python開發物聯網的細節。
安翔 ,東北大學電子信息專業,曾就職於疊拓、GE、長虹從事多個領域的軟件開發工作,擅長嵌入式Linux和Python開發,目前在中移物聯網負責物聯網操作係統的設計和研發。熱愛開源、分享和技術寫作,CSDN博客專傢,著有《Micropython加速物聯網開發》、《python Django web實戰》、《樹莓派體驗》等專欄。
第1章物聯網邂逅Python
1��1物聯網組成架構
1��2物聯網發展現狀
1��2��1終端設備
1��2��2物聯網操作係統
1��2��3通信手段
1��2��4網絡建設
1��2��5應用協議
1��2��6物聯網雲平颱
1��3物聯網典型應用
1��3��1共享單車
1��3��2智能傢居
1��3��3智慧農業
1��4使用Python的理由
1��4��1Python特性
1��4��2Python無處不在
1��4��3開發速度有時更重要
1��5美麗的相遇
1��5��1Python與終端
1��5��2Python與網關
1��5��3Python與雲平颱
1��5��4物聯網Python全棧開發
第2章開啓Python之旅
2��1Python版本的選擇
2��2搭建開發環境
2��2��1安裝VMware
2��2��2在VMware上安裝Ubuntu
2��2��3安裝VMware Tools工具
2��2��4虛擬機的網絡配置
2��2��5Samba共享設置
2��2��6修改Python版本
2��3開始編寫Python程序
2��3��1交互式解釋器
2��3��2源代碼執行
2��3��3注釋
2��3��4代碼塊和縮進
2��3��5繼續和分隔
2��3��6輸入和輸齣
2��4變量和數據類型
2��4��1變量賦值
2��4��2常量
2��4��3數據類型
2��5條件和循環
2��5��1if語句
2��5��2while循環
2��5��3for�豹豹眎n循環
2��5��4跳齣循環
2��5��5pass語句
2��6函數
2��6��1定義函數
2��6��2函數調用
2��6��3函數的參數
2��6��4內置函數
2��7變量進階
2��7��1全局變量與局部變量
2��7��2global關鍵字
2��7��3nonlocal關鍵字
2��7��4變量作用域
2��8模塊與包
2��8��1使用模塊
2��8��2包
2��9異常處理
第3章Python數據結構
3��1字符串
3��1��1索引和切片
3��1��2字符串運算符
3��1��3字符串格式化
3��1��4字符編碼
3��2列錶
3��2��1訪問列錶
3��2��2更改列錶
3��2��3列錶操作符
3��2��4列錶常用函數
3��3元組
3��3��1訪問元組
3��3��2元組操作符
3��3��3元組內置函數
3��4字典
3��4��1訪問字典
3��4��2修改字典
3��4��3字典鍵的特性
3��4��4字典函數
3��5集閤
3��5��1忽略重復元素
3��5��2無序
3��5��3常用操作
第4章Python高級特性
4��1生成器
4��1��1列錶推導式
4��1��2生成器錶達式
4��1��3生成器函數
4��2迭代器
4��3函數式編程
4��3��1高階函數
4��3��2內置高階函數
4��3��3閉包
4��3��4裝飾器
4��3��5匿名函數
4��3��6偏函數
4��4麵嚮對象編程
4��4��1類與對象
4��4��2訪問限製
4��4��3繼承
4��4��4多重繼承
4��4��5多態
4��4��6運算符重載
第5章物聯網核心組件
5��1網絡通信方案
5��1��1WIFI網絡
5��1��2移動網絡
5��1��3Zigbee
5��1��4BLE
5��1��5LoRa
5��1��6NB-IoT
5��2網絡通信協議
5��2��1HTTP
5��2��2WebSocket
5��2��3XMPP
5��2��4CoAP
5��2��5MQTT
5��3硬件
5��4物聯網雲平颱
5��4��1OneNet
5��4��2AWS IoT
5��4��3Waston IoT
第6章MicroPython開發物聯網終端
6��1MicroPython簡介
6��1��1MicroPython項目
6��1��2MicroPython特點
6��1��3MicroPython源碼
6��2MicroPython開發闆
6��2��1官方開發闆PYBoard
6��2��2國內開發闆TPYBoard
6��2��3OpenMV
6��2��4LoPy
6��3第一個MicroPython程序
6��4交互式解釋器
6��5按鍵中斷與迴調
6��6定時器的使用
6��7串口測試
6��8SPI接口驅動液晶屏
6��8��1硬件連接
6��8��2LCD屏驅動
6��8��3字庫說明
6��8��4主程序
6��9源碼編譯與固件升級
6��9��1準備編譯環境
6��9��2源碼下載與編譯
6��9��3固件燒寫
6��10MicroPython多綫程
6��10��1MicroPython綫程簡介
6��10��2MicroPython綫程使用
6��10��3多綫程中的鎖
6��11安全模式及恢復齣廠設置
6��11��1安全模式
6��11��2恢復齣廠設置
第7章構建物聯網網關
7��1網關概述
7��1��1網關的構成
7��1��2常用物聯網網關
7��2自主構建網關
7��2��1交叉編譯
7��2��2編譯引導程序
7��2��3內核配置與編譯
7��2��4製作文件係統
7��2��5分區與下載
7��2��6係統啓動流程簡介
7��2��7移植Python3
7��3樹莓派作網關
7��3��1初次啓動樹莓派
7��3��2串口登錄樹莓派
7��3��3SSH訪問樹莓派
7��3��4升級Python版本
7��3��5必備工具安裝
7��3��6闆載WIFI配置
7��3��7串口通信
第8章網關數據編碼與處理
8��1讀寫CSV文件
8��1��1讀取CSV文件
8��1��2寫入CSV文件
8��2JSON解析
8��2��1JSON數據格式
8��2��2編碼
8��2��3解碼
8��3XML操作
8��3��1XML簡介
8��3��2解析XML
8��3��3創建與修改
8��4二進製數據的讀寫
8��5Base64編解碼
8��6正則錶達式
8��6��1正則錶達式簡介
8��6��2re模塊
8��6��3貪婪匹配
第9章網關多進程與多綫程
9��1多進程
9��1��1multiprocessing模塊
9��1��2進程同步
9��1��3進程間通信
9��2多綫程
9��2��1threading模塊
9��2��2綫程同步
9��2��3綫程間通信
9��3多綫程和多進程的思考
9��3��1多核CPU利用率實驗
9��3��2GIL全局鎖
9��3��3切換的開銷
9��3��4多綫程與多進程的選擇
9��4異步IO
9��4��1協程
9��4��2協程與多綫程對比
9��4��3asyncio
第10章網關數據持久化
10��1文件操作
10��1��1讀寫文本數據
10��1��2操作文件和目錄
10��1��3讀寫壓縮文件
10��1��4內存映射
10��1��5臨時文件與目錄
10��1��6序列化Python對象
10��2SQLite數據庫
10��2��1SQLite簡介
10��2��2命令行操作SQLite
10��2��3創建數據庫
10��2��4創建錶
10��2��5SQL語句
10��2��6SQLite的Python編程
第11章Python擴展
11��1Python擴展的原因
11��2連接硬件的紐帶
11��3C語言擴展Python
11��3��1簡單的C語言Python擴展
11��3��2傳遞整型參數
11��3��3傳遞字符串參數
第12章網關網絡編程
12��1網關網絡通信方案
12��2Socket編程
12��3requests
12��3��1上傳文件
12��3��2下載文件
12��4hbmqtt
12��4��1安裝
12��4��2hbmqtt命令操作
12��4��3hbmqtt API編程
12��5LoRa網絡通信
12��5��1LoRa模塊初始化
12��5��2數據監聽與接收
12��5��3數據緩存
第13章物聯網後颱Web開發
13��1Django簡介
13��2創建一個網站
13��2��1Django安裝
13��2��2創建項目
13��2��3運行與訪問
13��3網站首頁
13��3��1源碼文件結構
13��3��2視圖與URL配置
13��4Django模闆
13��4��1Django模闆係統
13��4��2模闆繼承
13��5Django模型
13��5��1安裝MySQL數據庫
13��5��2創建模型
13��5��3必要的配置
13��6用戶注冊
13��7賬號登錄
第14章物聯網Python項目實戰
14��1項目簡介
14��2終端設備程序開發
14��2��1采集空氣溫濕度
14��2��2獲取環境光強度
14��2��3雨量檢測
14��2��4水位檢測
14��2��5土壤濕度檢測
14��2��6水泵的控製
14��2��7入侵檢測
14��2��8燈光控製
14��2��9電量檢測
14��2��10LoRa通信
14��2��11JSON消息
14��3網關程序開發
14��3��1終端通信
14��3��2數據庫管理
14��3��3文件備份
14��3��4服務器通信
14��3��52G模塊的使用
14��5服務器端程序開發
14��5��1與網關通信
14��5��2環境數據可視化
14��5��3滴灌控製
14��5��4燈光控製
14��5��5報警顯示與設置
14��5��6設備管理
14��5��7備份文件管理
本書內容寫作安排:
第1章——物聯網邂逅Python
本章大緻介紹物聯網的組成、架構、發展現狀及當前市麵上典型的物聯網應用方案,闡述Python這門編程語言的特性和優點,講述用Python語言開發物聯網終端設備、網關設備、Web後颱程序的具體方法及優勢。
第2章——開啓Python之旅
本章從零開始講解如何使用Python語言進行編程,通過大量的實例代碼帶領Python初學者掌握基本的Python編程技巧。
第3章——Python數據結構
Python除瞭擁有比較通用的字符串、列錶等數據結構外,還有元組、字典、集閤等特有的數據結構。熟練掌握和運用Python的各種數據結構是編寫高質量Python程序的基礎。
第4章——Python高級特性
Python作為一門高級編程語言,擁有眾多自身特有的高級特性,如生成器、迭代器、裝飾器等。同時,Python也可麵嚮對象編程,隻有掌握Python高級特性的使用方法,纔能抓住Python編程的精髓。
第5章——物聯網核心組件
本章介紹物聯網的核心組成部分及關鍵技術點,首先介紹WIFI、移動網絡、Zigbee通信、BLE、LoRa、NB-IoT等網絡通信方案,以及HTTP、Websocket、XMPP、CoAP、MQTT等網絡通信協議;其次介紹常用的硬件設備種類,包括處理器、傳感器、通信模塊等;最後介紹幾種市麵上常用的物聯網雲平颱,如中國移動的OneNet平颱、AWS IoT平颱、IBM的Waston IoT平颱。
第6章——MicroPython開發物聯網終端
終端是物聯網連接真實世界的第一層,是物聯網産品中數量最為龐大的部件。本章重點講解目前非常火爆的MicroPython,可用於開發單片機程序,單片機是物聯網終端設備的核心,除瞭介紹MicroPython的基本使用外,還會用MicroPython構建一個液晶屏顯示程序實例。
第7章——構建物聯網網關
網關是連接終端設備和後颱的樞紐,同時還負責局域網的組建和維護、本地數據存儲、通信規則製定、業務邏輯管理等。在實際項目中,網關通常是一個運行Linux操作係統並搭載物聯網通信模塊及其他外設的嵌入式設備。本章將介紹網關上嵌入式Linux的相關知識及Python環境的構建方法,為後續講解網關Python的開發提供基本的軟、硬件環境。
第8章——網關數據編碼與處理
網關作為物聯網應用中的通信樞紐,在通信過程中有多種格式的數據需要處理。其方式包括轉發、編解碼、解析等。本章講述網關如何通過Python語言處理各種格式的數據,包括CSV、JSON、XML、二進製數據、Base64格式的數據。
第9章——網關多進程與多綫程
物聯網網關往往需要管理大量的終端設備,還要承擔通信、運算、IO操作等多種任務。本章介紹Python編程時實現多任務的方式及多進程、多綫程、協程、異步IO等多種Python程序模型,並對它們做齣對比,針對CPU密集型和IO密集型不同應用場景下方案的選擇,使網關程序性能更優。
第10章——網關數據持久化
網關是運算中心與通信樞紐,也是局域網數據存儲中心。數據持久化是一個係統穩定運行的必要條件。所有數據存放在內存中時,一旦設備發生軟、硬件故障,將發生數據丟失。為瞭避免這種情況,某些關鍵數據需要固化到磁盤上。本章介紹兩種數據固化到磁盤上的兩種方式——普通文件和數據庫,並介紹Python程序對這兩種數據存儲方式的實際運用。
第11章——Python擴展
Python在物聯網行業的應用與其他行業的應用有很大不同:物聯網涉及硬件操作且物聯網設備的CPU處理能力通常非常有限。因此,在某些特殊場景,需要使用C語言編寫操作硬件的程序從而提供Python調用接口以實現Python對硬件的操作,而且在某些效率要求非常高的場景,使用運行效率更高的C語言編寫程序,再編譯成Python擴展庫,可提高程序執行效率。本章主要講解使用C語言擴展Python的方法。
第12章——網關網絡編程
網關負責局域網的組建和維護,同時需要與後颱通信以完成數據、指令的傳輸。本章首先介紹使用Python進行基本的Socket編程,接著以實戰項目為例,分彆講解基於requests模塊的文件傳輸及基於MQTT協議實現的hbmqtt編程。
第13章——物聯網後颱Web開發
本章介紹基於Python的 Django Web框架基礎知識,包括視圖與URL配置、模闆、模型、錶單、靜態文件處理、用戶注冊與登錄,主要介紹Django框架Web編程的基礎知識儲備,以便能夠理解實戰項目中的Web程序。
第14章——物聯網Python項目實戰
本章介紹一個基於物聯網的智能種植項目,從項目架構、功能及項目所包含的終端設備、網關、後颱程序等方麵全麵展示開發過程。該項目在GitHub提供瞭完整的源碼,讀者通過該實戰項目能夠瞭解一個完整物聯網項目的全貌,掌握物聯網Python開發的細節。
物聯網Python開發實戰 下載 mobi pdf epub txt 電子書 格式 2024
物聯網Python開發實戰 下載 mobi epub pdf 電子書非常好用已經迴購很多次瞭
評分非常好用已經迴購很多次瞭
評分專業綜閤網上購物商城,銷售超數萬品牌,4020萬種商品
評分最後一章的實戰項目有點坑,我以為會有整個係統的代碼呢,另外書有幾頁的角摺瞭,封麵摺瞭,嚴重懷疑是不是有人用過
評分書本質量很好,孩子很喜歡看。搞活動買的,很劃算。
評分物品全新,一次愉快的購物。
評分看瞭一部分,內容一般般,湊閤
評分專業綜閤網上購物商城,銷售超數萬品牌,4020萬種商品
評分非常好用已經迴購很多次瞭
物聯網Python開發實戰 mobi epub pdf txt 電子書 格式下載 2024