Skip to content

Commit 1a54c4d

Browse files
committed
sync blog
1 parent 3491f67 commit 1a54c4d

8 files changed

+338
-209
lines changed

README-ZH.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,12 +60,12 @@ Get to know the preferred protocol in IoT from beginner to master.
6060
## [MQTT Broker](https://www.emqx.com/zh/blog/category/mqtt-broker)
6161

6262
- [MQTT服务器(MQTT Broker):工作原理与快速入门指南](https://www.emqx.com/zh/blog/the-ultimate-guide-to-mqtt-broker-comparison) ([Edit](https://github.com/emqx/blog/blob/main/zh/202508/the-ultimate-guide-to-mqtt-broker-comparison.md))
63+
- [2025最全面的开源MQTT服务器(MQTT Broker)对比](https://www.emqx.com/zh/blog/a-comprehensive-comparison-of-open-source-mqtt-brokers-in-2023) ([Edit](https://github.com/emqx/blog/blob/main/zh/202508/a-comprehensive-comparison-of-open-source-mqtt-brokers-in-2023.md))
64+
- [2025最适用于工业物联网领域的三款开源MQTT服务器(MQTT Broker)](https://www.emqx.com/zh/blog/top-3-open-source-mqtt-brokers-for-industrial-iot-in-2023) ([Edit](https://github.com/emqx/blog/blob/main/zh/202508/top-3-open-source-mqtt-brokers-for-industrial-iot-in-2023.md))
6365
- [在 Windows 平台搭建 MQTT 服务](https://www.emqx.com/zh/blog/install-mqtt-broker-on-windows) ([Edit](https://github.com/emqx/blog/blob/main/zh/202407/install-mqtt-broker-on-windows.md))
64-
- [2024 最全面的开源 MQTT Broker 对比](https://www.emqx.com/zh/blog/a-comprehensive-comparison-of-open-source-mqtt-brokers-in-2023) ([Edit](https://github.com/emqx/blog/blob/main/zh/202312/a-comprehensive-comparison-of-open-source-mqtt-brokers-in-2023.md))
6566
- [Mosquitto MQTT Broker:优缺点、教程和替代方案](https://www.emqx.com/zh/blog/mosquitto-mqtt-broker-pros-cons-tutorial-and-modern-alternatives) ([Edit](https://github.com/emqx/blog/blob/main/zh/202312/mosquitto-mqtt-broker-pros-cons-tutorial-and-modern-alternatives.md))
6667
- [MQTT Broker 集群解析:基础概念与高级实现](https://www.emqx.com/zh/blog/mqtt-broker-clustering) ([Edit](https://github.com/emqx/blog/blob/main/zh/202306/mqtt-broker-clustering.md))
6768
- [MQTT 服务新趋势:了解 MQTT 多租户架构](https://www.emqx.com/zh/blog/multi-tenancy-architecture-in-mqtt) ([Edit](https://github.com/emqx/blog/blob/main/zh/202306/multi-tenancy-architecture-in-mqtt.md))
68-
- [2023 年最适用于工业物联网领域的三款开源 MQTT Broker](https://www.emqx.com/zh/blog/top-3-open-source-mqtt-brokers-for-industrial-iot-in-2023) ([Edit](https://github.com/emqx/blog/blob/main/zh/202305/top-3-open-source-mqtt-brokers-for-industrial-iot-in-2023.md))
6969
- [Mosquitto vs NanoMQ | 2023 MQTT Broker 对比](https://www.emqx.com/zh/blog/mosquitto-vs-nanomq-2023-mqtt-broker-comparison) ([Edit](https://github.com/emqx/blog/blob/main/zh/202304/mosquitto-vs-nanomq-2023-mqtt-broker-comparison.md))
7070
- [EMQX vs VerneMQ | 2023 MQTT Broker 对比](https://www.emqx.com/zh/blog/emqx-vs-vernemq-2023-mqtt-broker-comparison) ([Edit](https://github.com/emqx/blog/blob/main/zh/202304/emqx-vs-vernemq-2023-mqtt-broker-comparison.md))
7171
- [EMQX vs NanoMQ | 2023 MQTT Broker 对比](https://www.emqx.com/zh/blog/emqx-vs-nanomq-2023-mqtt-broker-comparison) ([Edit](https://github.com/emqx/blog/blob/main/zh/202304/emqx-vs-nanomq-2023-mqtt-broker-comparison.md))
@@ -98,13 +98,13 @@ Get to know the preferred protocol in IoT from beginner to master.
9898
## [MQTT Programming](https://www.emqx.com/zh/blog/category/mqtt-programming)
9999
Best practice of MQTT in various clients.
100100

101+
- [如何在 Python3 中使用 MQTT 客户端库 Paho Client](https://www.emqx.com/zh/blog/how-to-use-mqtt-in-python) ([Edit](https://github.com/emqx/blog/blob/main/zh/202508/how-to-use-mqtt-in-python.md))
101102
- [在 C++ 项目中使用 MQTT:物联网开发综合指南](https://www.emqx.com/zh/blog/using-mqtt-with-cpp) ([Edit](https://github.com/emqx/blog/blob/main/zh/202508/using-mqtt-with-cpp.md))
102103
- [如何在 Electron 项目中使用 MQTT](https://www.emqx.com/zh/blog/how-to-use-mqtt-in-electron) ([Edit](https://github.com/emqx/blog/blob/main/zh/202503/how-to-use-mqtt-in-electron.md))
103104
- [如何在 PHP 项目中使用 MQTT:实时消息传递的完整指南](https://www.emqx.com/zh/blog/how-to-use-mqtt-in-php) ([Edit](https://github.com/emqx/blog/blob/main/zh/202503/how-to-use-mqtt-in-php.md))
104105
- [在 Qt6 中使用 MQTT:入门指南](https://www.emqx.com/zh/blog/how-to-create-an-mqtt-application-in-qt6) ([Edit](https://github.com/emqx/blog/blob/main/zh/202411/how-to-create-an-mqtt-application-in-qt6.md))
105106
- [如何在 Java 中使用 Paho MQTT 客户端](https://www.emqx.com/zh/blog/how-to-use-mqtt-in-java) ([Edit](https://github.com/emqx/blog/blob/main/zh/202410/how-to-use-mqtt-in-java.md))
106107
- [在 ESP32 上使用 MQTT:入门指南](https://www.emqx.com/zh/blog/esp32-connects-to-the-free-public-mqtt-broker) ([Edit](https://github.com/emqx/blog/blob/main/zh/202410/esp32-connects-to-the-free-public-mqtt-broker.md))
107-
- [如何在 Python3 中使用 MQTT 客户端库 Paho Client](https://www.emqx.com/zh/blog/how-to-use-mqtt-in-python) ([Edit](https://github.com/emqx/blog/blob/main/zh/202410/how-to-use-mqtt-in-python.md))
108108
- [如何在 Rust 中通过 Rumqttc 实现 MQTT 通信](https://www.emqx.com/zh/blog/how-to-use-mqtt-in-rust) ([Edit](https://github.com/emqx/blog/blob/main/zh/202409/how-to-use-mqtt-in-rust.md))
109109
- [在 Flutter 项目中使用 MQTT](https://www.emqx.com/zh/blog/using-mqtt-in-flutter) ([Edit](https://github.com/emqx/blog/blob/main/zh/202409/using-mqtt-in-flutter.md))
110110
- [开发指南:使用 MQTTNet 库构建 .Net 物联网 MQTT 应用程序](https://www.emqx.com/zh/blog/connecting-to-serverless-mqtt-broker-with-mqttnet-in-csharp) ([Edit](https://github.com/emqx/blog/blob/main/zh/202402/connecting-to-serverless-mqtt-broker-with-mqttnet-in-csharp.md))
@@ -480,6 +480,7 @@ Build a reliable, efficient and industry-specific Internet of Vehicles platform
480480

481481
## [Industrial IoT | Unified Namespace | Sparkplug](https://www.emqx.com/zh/blog/category/industrial-iot)
482482

483+
- [2025最适用于工业物联网领域的三款开源MQTT服务器(MQTT Broker)](https://www.emqx.com/zh/blog/top-3-open-source-mqtt-brokers-for-industrial-iot-in-2023) ([Edit](https://github.com/emqx/blog/blob/main/zh/202508/top-3-open-source-mqtt-brokers-for-industrial-iot-in-2023.md))
483484
- [NeuronEX vs Kepware:云 + AI 时代工业边缘网关的进化与革新](https://www.emqx.com/zh/blog/neuronex-vs-kepware) ([Edit](https://github.com/emqx/blog/blob/main/zh/202507/neuronex-vs-kepware.md))
484485
- [EMQX + NeuronEX:构建基于 UNS 架构的工业 AI 数据中枢](https://www.emqx.com/zh/blog/building-the-industrial-data-hub-with-emqx-and-neuronex) ([Edit](https://github.com/emqx/blog/blob/main/zh/202506/building-the-industrial-data-hub-with-emqx-and-neuronex.md))
485486
- [自然语言 + 工业数据:AI agent 驱动的 IIoT 数据探索实践](https://www.emqx.com/zh/blog/the-practice-of-ai-agent-driven-iiot-data-exploration) ([Edit](https://github.com/emqx/blog/blob/main/zh/202505/the-practice-of-ai-agent-driven-iiot-data-exploration.md))
@@ -536,7 +537,6 @@ Build a reliable, efficient and industry-specific Internet of Vehicles platform
536537
- [基于 EMQX 和 Neuron 的工业物联网 MQTT Sparkplug 解决方案](https://www.emqx.com/zh/blog/mqtt-sparkplug-solution-for-industrial-iot-using-emqx-and-neuron) ([Edit](https://github.com/emqx/blog/blob/main/zh/202306/mqtt-sparkplug-solution-for-industrial-iot-using-emqx-and-neuron.md))
537538
- [工业物联网协议对比:MQTT Sparkplug vs OPC-UA](https://www.emqx.com/zh/blog/a-comparison-of-iiot-protocols-mqtt-sparkplug-vs-opc-ua) ([Edit](https://github.com/emqx/blog/blob/main/zh/202306/a-comparison-of-iiot-protocols-mqtt-sparkplug-vs-opc-ua.md))
538539
- [EMQ & 明道云:零代码高效构建工业物联网设备管理平台](https://www.emqx.com/zh/blog/build-an-industrial-iot-device-management-platform-with-zero-code) ([Edit](https://github.com/emqx/blog/blob/main/zh/202305/build-an-industrial-iot-device-management-platform-with-zero-code.md))
539-
- [2023 年最适用于工业物联网领域的三款开源 MQTT Broker](https://www.emqx.com/zh/blog/top-3-open-source-mqtt-brokers-for-industrial-iot-in-2023) ([Edit](https://github.com/emqx/blog/blob/main/zh/202305/top-3-open-source-mqtt-brokers-for-industrial-iot-in-2023.md))
540540
- [Sparkplug 规范中涉及 MQTT Broker 的 5 个关键概念](https://www.emqx.com/zh/blog/5-key-concepts-for-mqtt-broker-in-sparkplug-specification) ([Edit](https://github.com/emqx/blog/blob/main/zh/202305/5-key-concepts-for-mqtt-broker-in-sparkplug-specification.md))
541541
- [EMQ & 南洋万邦云边一体化方案:激活数据潜力,打造智慧工业园区](https://www.emqx.com/zh/blog/emq-and-nanyang-wanbang-cloud-edge-integration-solution) ([Edit](https://github.com/emqx/blog/blob/main/zh/202303/emq-and-nanyang-wanbang-cloud-edge-integration-solution.md))
542542
- [激活海量数据价值,实现生产过程优化](https://www.emqx.com/zh/blog/activate-the-value-of-massive-data) ([Edit](https://github.com/emqx/blog/blob/main/zh/202212/activate-the-value-of-massive-data.md))

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -632,6 +632,7 @@ MQTTX is a Fully Open-source MQTT 5.0 cross-platform Desktop Client, makes it ea
632632
## [Neuron - IIoT Connectivity Server](https://www.emqx.com/en/blog/category/neuron)
633633
IoT edge industrial protocol gateway software, which supports one-stop access to dozens of industrial protocols and converts them into MQTT protocol to access the cloud industrial IoT platform. It just requires ultra-low resource consumption, and supports three major architectures of X86, ARM, and MIPS.
634634

635+
- [Connecting Siemens S7-1200 PLC to MQTT in 10 Minutes with NeuronEX](https://www.emqx.com/en/blog/connecting-siemens-s7-1200-plc-to-mqtt) ([Edit](https://github.com/emqx/blog/blob/main/en/202508/connecting-siemens-s7-1200-plc-to-mqtt.md))
635636
- [NeuronEX Best Practice: Achieving Efficient Data Synchronization from MySQL to Your IIoT Platform](https://www.emqx.com/en/blog/neuronex-best-bractices) ([Edit](https://github.com/emqx/blog/blob/main/en/202508/neuronex-best-bractices.md))
636637
- [Beyond Kepware: 5 Ways NeuronEX Redefines Industrial Connectivity in Cloud + AI Agent Era](https://www.emqx.com/en/blog/neuronex-vs-kepware) ([Edit](https://github.com/emqx/blog/blob/main/en/202508/neuronex-vs-kepware.md))
637638
- [Visualizing Your Industrial Data: A Guide to NeuronEX Dashboard](https://www.emqx.com/en/blog/visualizing-your-industrial-data) ([Edit](https://github.com/emqx/blog/blob/main/en/202507/visualizing-your-industrial-data.md))

en/202507/a-comprehensive-comparison-of-open-source-mqtt-brokers-in-2023.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ GitHub: [https://github.com/emqx/emqx](https://github.com/emqx/emqx)
7171

7272
### Mosquitto
7373

74-
The Mosquitto project was initially developed by Roger Light in 2009 and later donated to the Eclipse Foundation, licensed under the Eclipse Public License (EPL/EDL license). As of July 2025, it is the most widely deployed open-source MQTT broker with a large community and over 8k GitHub stars.
74+
The Mosquitto project was initially developed by Roger Light in 2009 and later donated to the Eclipse Foundation, licensed under the Eclipse Public License (EPL/EDL license). As of July 2025, it is the most widely deployed open-source MQTT broker with a large community and over 10k GitHub stars.
7575

7676
Mosquitto is written in C/C++ and uses a single-threaded architecture. Mosquitto implements MQTT protocol versions 5.0, 3.1.1, and 3.1, and supports SSL/TLS and WebSocket. Its lightweight design makes Mosquitto suitable for deployment on embedded devices or servers with limited resources.
7777

Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
## **Introduction: Bridging the Gap Between OT and IT**
2+
3+
In the wave of Industry 4.0, seamlessly integrating real-time device data from the OT (Operational Technology) layer with cloud applications in the IT (Information Technology) layer is key to unlocking data potential and achieving smart manufacturing. The Siemens S7-1200 PLC, a cornerstone of industrial automation, contains a vast amount of production status and equipment parameter data. Efficiently and reliably transmitting this valuable OT data to an [MQTT Broker](https://www.emqx.com/en/blog/the-ultimate-guide-to-mqtt-broker-comparison) for use by MES, SCADA, or cloud-based AI analytics platforms is a common challenge for many enterprises.
4+
5+
Traditional solutions often involve complex programming and protocol conversion, which are both time-consuming and labor-intensive. Now, with the powerful industrial edge gateway software, NeuronEX, you can easily build a stable data bridge from a Siemens S7-1200 PLC to MQTT in under 10 minutes, all in a no-code fashion.
6+
7+
This article will provide a step-by-step guide to walk you through the entire configuration process, from PLC setup to successfully viewing data in an [MQTT client](https://www.emqx.com/en/blog/mqtt-client-tools).
8+
9+
## **Architecture**
10+
11+
This tutorial aims to read specified variable data from a Siemens S7-1200 PLC, send the data in JSON format to a designated MQTT Broker, and verify the data using the [MQTTX](https://mqttx.app/) client software. The technical architecture consists of three core components:
12+
13+
- **Data Source:** Siemens S7-1200 PLC
14+
- **Data Collection Software:** NeuronEX
15+
- **Data Destination:** EMQX (this article uses the public broker `broker.emqx.io` as an example)
16+
- **MQTT Client Tool:** MQTTX
17+
18+
![b23dc7105aa27796551bd58bf50b442c.png](https://assets.emqx.com/images/969b5982923163e75cd2254fbf9ec005.png)
19+
20+
## **Prerequisites**
21+
22+
Before you begin, please ensure you have the following:
23+
24+
- A Siemens S7-1200 PLC and TIA Portal programming software.
25+
26+
- NeuronEX: Quickly deploy it via Docker with a single command.
27+
28+
```shell
29+
# Start NeuronEX
30+
docker run -d --name neuronex -p 8085:8085 --log-opt max-size=100m --privileged=true emqx/neuronex:latest
31+
```
32+
33+
- An MQTT Client: We will use [MQTTX](https://mqttx.app/) to verify the data later.
34+
35+
## Connecting Siemens S7-1200 PLC to MQTT
36+
37+
### **Step 1: Configure Siemens S7-1200 PLC**
38+
39+
To allow NeuronEX to access PLC data, ensure that the network between NeuronEX and the S7-1200 is clear. We will use NeuronEX to collect data from the Data Block (DB2) and M area of the Siemens S7-1200. The tags to be collected from the data block (DB2) are shown in the red box in the figure below:
40+
41+
![image.png](https://assets.emqx.com/images/3217258af31e56280a9df26634ecdb99.png)
42+
43+
### **Step 2: Add a Southbound Device in NeuronEX**
44+
45+
Now, let's tell NeuronEX where to read the data from.
46+
47+
1. Access the NeuronEX management interface at `http://localhost:8085`
48+
2. Navigate to **Data Collection** -> **South Devices** and click **Add Device**. Select the **Siemens S7 ISOTCP** plugin.
49+
3. Fill in the device information:
50+
- **Name:** `S7-1200-Workshop`
51+
- **Target PLC IP Address:** Enter the IP address of your PLC.
52+
- Leave the other parameters at their default values.
53+
54+
![image.png](https://assets.emqx.com/images/ad293a232b01af344da2968e0e4d0bd6.png)
55+
56+
### **Step 3: Create Data Tags**
57+
58+
This is the core step where you define "what data to collect".
59+
60+
1. Click on the newly created `S7-1200-Workshop` driver to enter the **Group List** page and create a collection group named `group1`.
61+
2. Enter the group and start to **Add Tag**. Add the following tags precisely according to the addresses in your PLC:
62+
63+
| Data Type | PLC Address Example | NeuronEX Configuration | Address Format Description |
64+
| :-------- | :------------------ | :----------------------------------------- | :------------------------------------------ |
65+
| **Bool** | `M10.0` | **Type**: `BIT`, **Address**: `M10.0` | M area, bit 0 of byte 10. |
66+
| **Int** | `MW20` | **Type**: `INT16`, **Address**: `MW20` | M area, word starting at address 20. |
67+
| **Real** | `MW30` | **Type**: `FLOAT`, **Address**: `MW30` | M area, double word starting at address 30. |
68+
| **DINT** | `DB2.DBW4` | **Type**: `INT32`, **Address**: `DB2.DBW4` | In DB2, double word starting at address 4. |
69+
70+
![image.png](https://assets.emqx.com/images/df9f39d8bf7518deaa0d197ca8a92b07.png)
71+
72+
### **Step 4: Monitor Data Collection**
73+
74+
After completing step 3, you can view the real-time status of the `S7-1200-Workshop` driver on the **South Devices** page. A **Connected** status indicates that the connection between NeuronEX and the S7-1200 is `connected`.
75+
76+
![image.png](https://assets.emqx.com/images/61a0f2f8a5fa5e0190554194ab63e9cc.png)
77+
78+
You can view the real-time values of these tags on the **Data Collection** -> **Data Monitoring** page. You will see that the value of `tag4` is `-123`, which matches the value in the TIA Portal software.
79+
80+
![image.png](https://assets.emqx.com/images/49d95a3c45319edfc7c109ffe78f51f8.png)
81+
82+
### **Step 5: Configure the Northbound MQTT Application**
83+
84+
Finally, let's configure the data's destination.
85+
86+
1. On the left menu, click **North Apps** -> **Add Application** to add a northbound MQTT application.
87+
88+
2. Select the **MQTT** plugin and configure the connection parameters:
89+
90+
- **Name**: `emqx`
91+
- **Server Address**: `broker.emqx.io` ([Public MQTT Broker](https://www.emqx.com/en/mqtt/public-mqtt5-broker))
92+
- **Port**: `1883`
93+
- Leave other settings at their default values.
94+
95+
3. Click **Create**.
96+
97+
![image.png](https://assets.emqx.com/images/d71cb5eb5c680b8c57801f30198776ef.png)
98+
99+
4. After creating the MQTT application, click the **Add Subscription** button.
100+
101+
![image.png](https://assets.emqx.com/images/56d51f622361534bb48535fbe1703522.png)
102+
103+
5. Add the collection group from the southbound driver `S7-1200-Workshop` to the subscription, and set the publishing [MQTT topic](https://www.emqx.com/en/blog/advanced-features-of-mqtt-topics) to `neuronex/s7-1200/data`.
104+
105+
![image.png](https://assets.emqx.com/images/531ce4b79dcc2eb3e5346223daa99e03.png)
106+
107+
### **Step 6: Subscribe and Verify Data**
108+
109+
This is the final step to complete the data flow.
110+
111+
1. Open your MQTTX client, create a new connection to `broker.emqx.io:1883`, and subscribe to the topic `neuronex/s7-1200/data`.
112+
2. You will immediately see the PLC data collected by NeuronEX being continuously pushed to MQTTX in a standard JSON format!
113+
114+
![image.png](https://assets.emqx.com/images/97297eadfa53aa26d250c5e30f28bd73.png)
115+
116+
## **Conclusion**
117+
118+
Congratulations! You have successfully connected a Siemens S7-1200 PLC to MQTT within 10 minutes using NeuronEX. The entire process requires no code and is completed through a simple web interface, establishing a stable and efficient channel for industrial data collection and cloud integration.
119+
120+
This demonstrates the powerful capabilities of NeuronEX as a modern industrial edge gateway: it can dive into the OT layer to finely handle device protocols and data tags, and seamlessly integrate with the IT world to easily deliver data to the cloud.
121+
122+
Download NeuronEX now to kickstart your industrial IoT journey: [Download NeuronEX](https://www.emqx.com/en/try?tab=self-managed).
123+
124+
125+
126+
<section class="promotion">
127+
<div>
128+
Talk to an Expert
129+
</div>
130+
<a href="https://www.emqx.com/en/contact?product=solutions" class="button is-gradient">Contact Us →</a>
131+
</section>

0 commit comments

Comments
 (0)