随着物联网、大数据、云计算等新一代信息技术的发展变革,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