隨着物聯網、大數據、雲計算等新一代信息技術的發展變革,IoT 深刻到各類行業與應用場景,總體呈現設備多態化、業務多樣化、應用碎片化的趨勢。尤爲在工業物聯場景中,工業設備種類繁多,設計總線、協議複雜多樣,業務應用靈活多變,如何順利實現工業設備上雲是亟待解決的問題。EMQ X 系列產品提供解耦工業設備與應用的能力,構造邊緣到雲端數據通路,創建智能、網絡、輕量的數字化產品與服務模式,並與 5G 相融合,支撐工業行業應用創新。網絡
IIoT 即 Industrial Internet of Things 的簡稱,是指數以億計的工業設備所造成的工業物聯網。廣義上來說,是指在交通、能源、工業等部門的機械、車輛上應用儀器、鏈接傳感器等設備。架構
隨着 工業 4.0 概念的普及與行業實踐的深刻,傳統的集中式控制模式向分散式加強型控制模式轉變。同時,5G 時代的到來,也加速了傳統工業改造和工業物聯網化的進程。爲了實現個性化、數字化的產品與服務的靈活生產,在工業設備智能化、網絡化的過程當中,須要將新舊工業設備鏈接到互聯網中,實現對工業設備的數據採集、遠程控制、配置更新等業務。EMQ X 系列產品可提供從工業網關到平臺的總體解決方案,支持在廠區和工業現場等邊緣端實現工業設備的數據匯聚併發送到雲端。同時,其對邊緣計算流數據的處理能力,可在平臺端爲工業物聯網應用提供雲端工業設備數據接入、數據存儲以及與雲端組態和應用的對接,方便工業互聯網應用的快速開發。併發
如下,咱們將經過 EMQ X Neuron、EMQ X Broker 構建基於 Modbus 的簡易 IIoT 應用,並使用 MQTT X 訂閱/展現數據。app
EMQ 於近日發佈了佈署在邊緣網關上的 工業協議接入軟件 Neuron。做爲人與機器之間的橋樑,它能夠把 TCP/IP 協議的 0/1 數據,轉化重組成通俗易懂的 JSON 格式,並使用 MQTT 協議 輸出到雲端,更好地處理人與物之間的交互。tcp
EMQ X Neuron 支持包括 Modbus、OPC 等在內的各種工業協議,能夠基本知足大部分工業接入的需求,詳細協議列表見下圖。ide
Protocol Name | Type | Status |
---|---|---|
Allen-Bradley DF1 half-duplex for PLC2 | Serial | Avail |
Allen-Bradley DF1 half-duplex for PLC5 | Serial | Avail |
Allen-Bradley DF1 for MicroLogix | Serial | 2020 |
Allen-Bradley Ethernet/IP for MicroLogix | Ethernet | 2020 |
Allen-Bradley DF1 for ControlLogix/CompactLogix/FelxLogix | Serial | 2020 |
Allen-Bradley Ethernet/IP for ControlLogix/CompactLogix/FelxLogix | Ethernet | 2020 |
Schneider Modbus RTU | Serial | Avail |
Schneider Modbus TCP | Ethernet | Avail |
Schneider Telemecanique UNI-TE | Serial | Avail |
ABB SattControl Comli | Serial | Avail |
Omron Host Link (single) | Serial | Avail |
Omron Host Link (multiple) | Serial | Avail |
Omron FINS on Host Link | Serial | 2020 |
Omron FINS on TCP | Ethernet | 2020 |
Omron FINS on UDP | Ethernet | 2020 |
Omron Ethernet/IP for CJ/NJ | Ethernet | 2020 |
Siemens 3964R/RK512 for S5 | Serial | Avail |
Siemens 3964R/RK512 for S7 | Serial | Avail |
Siemens PPI for S7-200 | Serial | 2020 |
Siemens MPI for S7-300 | Serial | 2020 |
Siemens Fetch Write for S7-300/400 and CP443 module | Ethernet | Avail |
Siemens Industrial Ethernet ISO for S7-300/400 | Ethernet | Avail |
Siemens IE Symbolic Addressing for S7-1200 | Ethernet | 2020 |
Siemens IE Absolute Addressing for S7-1200/1500 | Ethernet | 2020 |
Mitsubishi FX0N/FX0S/FX1N/FX1S/FX2 | Serial | Avail |
Mitsubishi FX2N/FX3U/FX3G/FX3S | Serial | Avail |
Mitsubishi FX3U-ENET-L/FX3U-ENET-ADP | Ethernet | 2020 |
Mitsubishi FX5U | Serial | 2020 |
Mitsubishi FX5U Ethernet Module | Ethernet | 2020 |
Mitsubishi FX 232ADP/485BD/232BD Module | RS485 | 2020 |
Mitsubishi MC Protocol full-duplex for MELSEC-Q and C24 module | Serial | 2020 |
Mitsubishi MC Protocol for MELSEC-Q and E71 module | Ethernet | Avail |
Panasonic MEWTOCOL for FP | Ethernet | 2020 |
GE SNP for 90-30 | Serial | 2020 |
GE Ethernet for 90-30 | Ethernet | 2020 |
FANUC 0i/30i/31i/32i/35i | Serial | 2020 |
FANUC 0i/30i/31i/32i/35i Ethernet | Ethernet | 2020 |
FANUC T21/D21 for CNC machines | Ethernet | 2020 |
Modbus RTU | RS485 | Avail |
Modbus RTU over TCP | Ethernet | Avail |
Modbus TCP | Ethernet | Avail |
OPC UA | Ethernet | Avail |
BACnet/MSTP | RS485 | 2020 |
BACnet/IP | Ethernet | 2020 |
IEC 60870-5 (IEC104) | Ethernet | 2020 |
IEC 61850 | Ethernet | 2020 |
SNMP | Ethernet | 2020 |
DNP3 | Ethernet | 2020 |
DLT645-97/07 | Ethernet | 2020 |
工具名稱 | 版本 | 用途 | 操做系統 |
---|---|---|---|
PeakHMI Slave Simulator | / | Modbus 模擬器 | Windows Server 2019 |
EMQ X Neuron | 1.4.6 | 工業協議網關接入軟件 | Ubuntu 16.04 |
EMQ X Broker | 4.0.7 | MQTT Broker | Ubuntu 16.04 |
MQTT X | 1.3.2 | MQTT 客戶端工具 | macOS 10.13.4 |
1.首先解壓安裝 EMQ X Neuron 軟件包。工具
tar -xvlf neuron-1.4.2-x86_64.tar.gz sudo ~/bin/installneuron.sh
2.在配置文件配置鏈接到 EMQ X Broker 的地址,配上用戶名密碼做爲認證。測試
cd bin/ vi neuron.conf
neuron.conf 中修改 EMQ X Broker 服務端的 IP/ 端口,用戶名/密碼信息。大數據
# MQTT server name or IP address MQSERVER=127.0.0.1 # Server port no. Note that it will have SSL connection if setting the port no. # 8000 or above. MQPORTNO=1883 # Username and password MQUSERNAME=emqx123 MQPASSWORD=neuron123
3.啓動 EMQ X Neuron 軟件,無報錯即爲啓動完成。ui
./neuronsrt
4.登錄 EMQ X Neuron Web 界面,訪問 IP:7000,默認用戶名密碼 admin/0000。
5.點擊 Edit Driver,編輯 Modbus tcp 地址。
6.建立 Object,定義 Object 裏面的內容。
在這個 Object 裏面建立一個 Attribute,而後配置 Attribute 的信息,
這裏模擬定義名稱爲 Err1@@2D7WS_GAS 的報警點位,點位位置爲 1!1!07497。
在 EMQ X Broker 界面上能夠查看鏈接的 EMQ X Neuron 網關,Client ID 爲 EMQ X Neuron 網關隨機生成一串字符。
配置剛纔 1!1!07497 點位值爲 1,而後進行數據上報。
點擊 EMQ X Neuron 界面中的 Data Monitoring,Attribute 中配置 1!1!07497 點位的數值已經爲 1。
打開鏈接好的 MQTT X,鏈接到 EMQ X Broker,訂閱上面 EMQ X Neuron 發佈的主題,在 MQTT X 能夠收到 AlarmObj 裏 2D7WS 的值爲 1。客戶端收到這些數據後,能夠在應用界面上顯示告警,也能夠經過業務邏輯實現業務上的其它業務轉換.
以上咱們使用 EMQ X Neuron、EMQ X Broker、MQTT X 等工具完整進行全流程的工業接入模擬測試,對於工業設備上雲造成更加清晰與直觀的認知。固然,您也能夠結合 EMQ X Neuron 強大協議支持與 EMQ X Broker 強大的接入/轉發能力,本身開發一套應用展現系統,構建一整套 IIoT 平臺。
2020 年 9 月底,咱們將經過集成 Neuron,Edge 和 Kuiper 等軟件,實如今邊緣端的工業協議解析、數據匯聚和流式處理的一整套邊緣解決方案;該方案經過與雲端的 EMQ X Broker / Enterprise 等系列產品集成,則能夠實現一個端到端的、從邊緣到雲端的完整工業解決方案。
版權聲明: 本文爲 EMQ 原創,轉載請註明出處。原文連接:https://www.emqx.io/cn/blog/building-modbus-based-iiot-app-with-neuron