發表於2024-12-19
本書在介紹物聯網的組成、典型架構和應用的基礎上,采用實例代碼講述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 電子書物品全新,一次愉快的購物。
評分開始學習python和物聯網
評分非常好用已經迴購很多次瞭
評分物品全新,一次愉快的購物。
評分開始學習python和物聯網
評分專業綜閤網上購物商城,銷售超數萬品牌,4020萬種商品
評分物品全新,一次愉快的購物。
評分專業綜閤網上購物商城,銷售超數萬品牌,4020萬種商品
評分此用戶未填寫評價內容
物聯網Python開發實戰 mobi epub pdf txt 電子書 格式下載 2024