首頁 搜尋 我的知識庫
未來工廠超進化!工業4.0的物聯網智慧工廠應用與實作:使用Arduino.Node-RED.Python.Grafana

未來工廠超進化!工業4.0的物聯網智慧工廠應用與實作:使用Arduino.Node-RED.Python.Grafana

作者: 王進德
出版社: 博碩
出版日期: 2024/05/29
ISBN-13: 9786263338388
書店 1







內容描述


物聯網與工業4.0是近幾年很重要的研究課題。工業4.0的主要載體是智慧工廠,物聯網在智慧工廠的應用,給傳統產業帶來全新的變革,有望產生巨大的商業價值,引領我們進入第四次工業革命。
 
  本書適用於大專院校「微處理機」、「物聯網應用」、「工業4.0概論」等課程,可提供老師教學、學生研習之用。若你是專案設計者、工廠工程師,也很適合閱讀本書。本書的內容安排由淺入深,說明了物聯網在智慧工廠應用的幾個重要主題,如RS485、Modbus協定、CAN Bus協定、OPC UA協定、MQTT協定、REST API設計理念、InfluxDB時序資料庫、Prometheus、Grafana等指標監控技術。書中安排了44個實作單元,以市面上常見的Arduino UNO R4 WiFi開發板作為實習設備,並以Node-RED作為後端平台,讓讀者可以經由實作過程,進入物聯網與工業4.0的世界。
 
  【本書精采內容】
  ♘了解工業4.0的核心精神
  ♘了解智慧工廠的重要特色
  ♘IIoT現場總線與資訊網路介紹
  ♘Arduino UNO R4 WiFi基本操作
  ♘了解RS485 / Modbus / CAN Bus重要觀念
  ♘Arduino Modbus RTU / TCP實作
  ♘Arduino CAN Bus實作
  ♘熟悉Node-RED / 儀表板操作
  ♘Python實作OPC UA伺服器 / 客戶端
  ♘MQTT與WebSocket的介紹與應用
  ♘Arduino UNO R4 WiFi MQTT實作與應用
  ♘了解REST API設計理念
  ♘Node-RED上進行MySQL資料庫的存取
  ♘透過WebSocket進行網頁監控IoT設備
  ♘InfluxDB、Prometheus及Grafana指標監控
 
本書特色
 
  將物聯網應用於智慧工廠,掌握傳統產業的轉型先機
 
  ♖透過本書充分理解頗受矚目的「工業4.0」、「物聯網」、「智慧工廠」的精髓
  ♖使用Arduino × Node-RED × Python互動串聯,建立工業4.0的物聯網世界
  ♖內容編排由淺入深,著重實作過程,共有44個實作單元
  ♖引導你進入物聯網與工業4.0的世界,掌握轉型關鍵


目錄大綱


|CHAPTER 01| 工業4.0
1.1 本章提要 
1.2 工業4.0演進
1.3 為何會有工業4.0
1.4 工業4.0九大科技
1.5 產品全生命週期管理
1.6 工業4.0核心精神
1.7 工業4.0成熟度
 
|CHAPTER 02| 智慧工廠
2.1 本章提要 
2.2 工業程序 
2.3 工業程序自動化 
2.4 生產支援系統 
2.5 CIM模型 
2.6 CIM金字塔架構 
2.7 智慧工廠 
2.8 智慧工廠關鍵技術
2.9 智慧工廠特徵
 
|CHAPTER 03| 工業物聯網
3.1 本章提要
3.2 何謂IIoT
3.3 IoT與IIoT的比較
3.4 IIoT資料流
3.5 工廠資料流
3.6 ISO/OSI模型
3.7 現場總線
3.8 現場總線類型
3.9 常見現場總線簡介
3.10 乙太網路
3.11 工業乙太網路
 
|CHAPTER 04| Arduino基本操作
4.1 本章提要 
4.2 Arduino開發板
4.3 Arduino IDE
4.4 開啟範例程式
4.5 實習1:控制LED閃爍速度
4.6 實習2:按鈕開關控制LED亮滅
4.7 實習3:PWM控制LED亮度變化
4.8 實習4:人眼感受LED亮度非線性校正
4.9 實習5:小夜燈
 
|CHAPTER 05| RS-232與RS-485
5.1 本章提要
5.2 通訊原理
5.3 RS-232C
5.4 RS-232C資料傳輸
5.5 RS-232C與UART序列埠
5.6 實習6:序列埠讀取電位計值
5.7 RS-485
5.8 實習7:Arduino RS-485序列通訊
 
|CHAPTER 06| Modbus通訊協定
6.1 本章提要
6.2 Modbus通訊堆疊
6.3 Modbus序列通訊
6.4 Modbus差錯校驗
6.5 實習8:LRC校驗
6.6 實習9:CRC校驗
6.7 Modbus常用功能碼 
6.8 Modbus記憶體區 
6.9 Arduino Modbus RTU函式庫
6.10 實習10:Arduino Modbus RTU序列通訊
6.11 Modbus TCP通訊協定
6.12 Modbus TCP客戶端/伺服器模型
6.13 實習11:Arduino Modbus TCP伺服器
6.14 實習12:Arduino Modbus TCP客戶端
 
|CHAPTER 07| CAN Bus通訊協定
7.1 本章提要
7.2 CAN Bus發展歷程
7.3 CAN Bus通訊 
7.4 CAN Bus資料通訊格式 
7.5 特定應用領域CAN通訊協定
7.6 CAN FD簡介
7.7 實習13:Arduino CAN Bus通訊
7.8 實習14:CAN Bus LED PWM調光
 
|CHAPTER 08| Node-RED
8.1 本章提要 
8.2 Windows安裝Node-RED
8.3 Node-RED基本操作 
8.4 Node-RED核心節點
8.5 實習15:使用Node-RED核心節點
8.6 實習16:建立Hello World網頁
8.7 實習17:加入Bootstrap美化網頁
8.8 實習18:Node-Red讀取Opendata
 
|CHAPTER 09| Node-RED儀表板
9.1 本章提要 
9.2 安裝dashboard模組 
9.3 新增Tab節點及Group節點
9.4 實習19:亂數折線圖
9.5 實習20:Sin與Cos圖形
9.6 實習21:slider與gauge節點
9.7 實習22:長條圖及圓餅圖
9.8 實習23:自建UI元件
 
|CHAPTER 10| OPC UA
10.1 本章提要
10.2 OPC的演進
10.3 傳統OPC 
10.4 傳統OPC運作方式 
10.5 OPC UA
10.6 OPC UA客戶端
10.7 OPC UA伺服器
10.8 OPC UA伺服器的互相存取 
10.9 UPC UA資訊模型
10.10 OPC UA安全模型
10.11 Python opcua-asyncio套件
10.12 建立簡易OPC UA伺服器
10.13 建立OPC UA客戶端
10.14 實習25:OPC UA伺服器與客戶端
 
|CHAPTER 11| MQTT協定
11.1 本章提要
11.2 發布-訂閱機制 
11.3 MQTT主題
11.4 服務品質
11.5 安裝MQTT伺服器
11.6 使用Mosquitto MQTT伺服器
11.7 實習25:Node-RED測試MQTT
 
|CHAPTER 12| Arduino MQTT應用
12.1 本章提要 
12.2 掃描無線網路
12.3 PubSubClient函式庫
12.4 PubSubClient常用函式
12.5 DHT11簡介
12.6 實習26:Arduino發布溫濕度值
12.7 實習27:Node-RED顯示溫濕度值
12.8 實習28:Arduino發布及接收MQTT訊息
12.9 實習29:Node-RED顯示光照值及控制LED
 
|CHAPTER 13| REST API
13.1 本章提要 
13.2 何謂API 
13.3 REST架構風格
13.4 統一介面的主要群組
13.5 以HTTP協定實現REST 
13.6 使用Postman測試API 
13.7 使用Curl測試API
13.8 實習30:建立REST API訊息回應
13.9 路由路徑
13.10 資料傳輸
13.11 實習31:前端與後端資料傳輸
 
|CHAPTER 14| Node-RED與MySQL
14.1 本章提要 
14.2 建立MySQL資料庫 
14.3 安裝mysql套件 
14.4 實習32:新增紀錄
14.5 實習33:紀錄查詢API
14.6 實習34:萬用字元查詢API
14.7 實習35:時間區間查詢API
14.8 實習36:紀錄更新API
14.9 實習37:移除紀錄API
 
|CHAPTER 15| WebSocket上的MQTT
15.1 本章提要 
15.2 Mosquitto伺服器致能WebSocket
15.3 測試WebSocket 
15.4 Paho MQTT客戶端套件 
15.5 paho-mqtt.js套件說明 
15.6 實習38:JavaScript MQTT客戶端
15.7 網頁監控IoT設備 
15.8 實習39:網頁訂閱及發布訊息
15.9 實習40:Python訂閱及發布訊息
 
|CHAPTER 16| InfluxDB時序型資料庫
16.1 本章提要 
16.2 下載InfluxDB 
16.3 InfluxDB使用者介面 
16.4 InfluxDB的資料模型
16.5 line協定
16.6 實習41:產生line協定資料
16.7 Flux腳本語言 
16.8 執行Flux查詢 
16.9 Python influxdb-client函式庫
16.10 實習42:Python寫入InfluxDB
16.11 實習43:Python查詢influxDB
 
|CHAPTER 17| Prometheus監控系統
17.1 本章提要 
17.2 PromQL查詢語言
17.3 安裝Prometheus伺服器 
17.4 啟動Prometheus 
17.5 實習44:使用PromQL表達式
17.6 執行Windows Exporter
17.7 Prometheus監控Windows Exporter
17.8 警報
17.9 使用Alertmanager
 
|CHAPTER 18| Grafana資料分析與視覺化平台
18.1 本章提要 
18.2 安裝Grafana 
18.3 連接Grafana伺服器 
18.4 加入TestData資料來源 
18.5 建立儀表板及面板 
18.6 Grafana連接至Prometheus伺服器
18.7 加入統計面板
18.8 加入表格面板 
18.9 加入狀態時間軸面板 
18.10 Grafana連接至InfluxDB


作者介紹


作者簡介
 
王進德
 
  國立中央大學電機工程博士。曾在科技大學電機系及資工系任教,也曾在業界擔任工程師及技術長,具有電機及資訊專業背景。由於有多年的教書經驗,所以深知初學者的學習困境,希望撰寫一系列淺顯易懂的技術書籍,協助初學者的學習。目前的研究興趣為智慧控制及智慧物聯網等課題。






相關書籍

零基礎入門的機器學習圖鑑:2大類機器學習╳ 17種演算法 ╳ Python基礎教學,讓你輕鬆學以致用

實戰ROS機器人作業系統與專案實作(第二版)

AI世代必備!Python×ChatGPT高效率工作術:從網路爬蟲到辦公室自動化超實務

Premiere Pro 視訊影音剪輯設計