For more content, please click on the above ABB Robot Practical Skills to follow
You can also click on the public account below Classic Past Issues to browse more content
Reprint requires backend message first, let’s support original content together and promote the use and development of robots
This public account provides technical support for various ABB robot applications, simulations, and graduation projects. For details, please leave a message in the backend
This public account sincerely hopes to cooperate with various robot training institutions and robot usage units to provide technical support. For details, please leave a message in the backend
1. The Internet of Things (Internet of Things, IoT) has been gaining increasing exposure recently. Although HTTP is the de facto standard for web pages, large-scale communication between machines (Machine-to-Machine, M2M) requires a different model: the previous request/response model is no longer suitable, replaced by the publish/subscribe model. This is where the lightweight and scalable MQTT (Message Queuing Telemetry Transport) can showcase its capabilities.
Due to the unique environment of the Internet of Things, MQTT follows the design principles below:
1.Simplified, without unnecessary features.
2.Publish/Subscribe (Pub/Sub) model, facilitating message transmission between sensors.
3.Allows users to dynamically create topics, with zero operational costs.
4.Minimizes transmission volume to improve transmission efficiency.
5.Considers factors such as low bandwidth, high latency, and unstable networks.
6.Supports continuous session control.
7.Understands that client computing capabilities may be low.
8.Provides quality of service management.
9.Assumes data is unknown, does not impose restrictions on the type and format of transmitted data, maintaining flexibility.
2. ABB robots began supporting OPC UA in mid-2020, configured using the OPC UA server configurator (the OPC server runs on a PC, collecting robot data from the network, and the OPC client reads and writes data through the OPC server)
3. With the deepening of the Internet of Things (IoT), ABB robots correspondingly changed the software configuration of OPC UA to IoT Gateway.
4. At the end of 2021, ABB robots finally supported MQTT, great news for everyone
5. To use MQTT, Robotware6 robots require
“1582-1 IoT Data Gateway/OPC UA Server” and “616-1 PC Interface” options,
RobotWare7 robots need to have: “3154-1 IoT Data Gateway” option
6. Download the latest IoT Gateway software from https://developercenter.robotstudio.com/ and install it.
7. The ABB robot MQTT network diagram is as follows: it collects robot data according to the established rules through the IoT Gateway and publishes it to the MQTT Server. The MQTT Client subscribes to the MQTT Server to obtain data.
8. Open the IoT Gateway software, under IoT Gateways, select to open the configuration of MQTT Publisher or enable all OPC UA functionalities. Under MQTT Publisher, you can configure the server’s IP address and other information as well as the prefix of the Topic.
9. In the Create Aliases interface, create aliases for the robot controller (refer to the previous ABB robot OPC UA configuration)
10. Click Server Control to start (after modifying MQTT-related configurations, you need to Stop and then Start again)
11. In the Logs interface, you can see that MQTT has started, and you can see that template files have been generated in the relevant path
12. Open the relevant folder,
The IoT Gateway configuration usage idea is as follows:
In the Templates folder, fill in the data objects to be subscribed in **.hbs
In the Triggers folder, fill in the method and interval for triggering/collecting data and the called template file in **.xml
The Controllers folder contains automatically generated robot controller files, where the used Trigger files are written
For example, to obtain the robot controller status and the value of a100 under the RAPID m1 module, the three files are as follows:
“Timestamp”: “{{UtcNow}}“,
“ControllerState”: “{{ControllerState}}“,
“OperatingMode” : “{{OperatingMode}}“,
“ExecutionStatus” : “{{Rapid.ExecutionStatus}}“,
“a100” : “{{Rapid.Tasks.T_ROB1.Modules.m1.Vars.a100.Value}}“
xml version=“1.0” encoding=“utf-8”?>
<< span=””>Triggerxmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”xmlns:xsd=“http://www.w3.org/2001/XMLSchema”>
<< span=””>Type>TimerType>
<< span=””>Parameters>1Parameters>
<< span=””>GuardCondition>trueGuardCondition>
<< span=””>Topic>{{Alias}}Topic>
<< span=””>Payload>ExamplePayload.hbsPayload>
<< span=””>Retain>trueRetain>
xml version=“1.0” encoding=“utf-8”?>
<< span=””>RobotControllerxmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”xmlns:xsd=“http://www.w3.org/2001/XMLSchema”>
<< span=””>string>ExampleTrigger1.xmlstring>
<< span=””>key>AssetIDkey>
<< span=””>value>Robot123456value>
<< span=””>key>PurchaseDatekey>
<< span=””>value>2021.04.15value>
For *.hbs files, you can also use the MQTT Engineering Tool to write them (automatically installed when IoT Gateway is installed)
13. After modifying the configuration files, you can click Stop and then Start in the Server Control to launch
14. You will also need an MQTT Server; it is recommended to download the MQTT Server from https://mosquitto.org.
15. After installing mosquitto, you also need to enter the computer’s management interface to start the mosquitto broker
16. To test the MQTT effect, you can download an MQTT client; it is recommended to download and install http://www.jensd.de/apps/mqttfx/
17. Click settings and click scan to scan for the robot MQTT, and subscribe; at this point, you can see the subscribed messages on the right side. Since the previous configuration was set to refresh once per second, you can see the robot status and the value of a100 refreshing once every second.
Real-time retrieval of ABB robot position via web page
ABB robot explosive black technology
How to configure EtherNet I/O modules offline (mixed module configuration)
ABB robot new teaching device creation tool workpiece coordinate system
Custom external axis tutorial—positioning machine
Furnace welding machine Ethernet/IP communication configuration
Interesting programming collection for ABB robots
Good news for perfectionists — program formatting
Python controls ABB robot movement
ABB robots communicate with Python
ABB robots communicate with Halcon
ABB robots Modbus/TCP communication
ABB robot EGM external guidance option introduction
ABB robot bus configuration collection
ABB robots send floating-point numbers via bus
Host computer retrieves total running time of robot
ABB robot speed settings
Retrieve robot single-axis position speed torque
How to create HOME position signal output using WorldZone function
For more expert explanation videos, you can search for ABB Robot Practical Skills on WeChat or scan the following QR code to follow
