Codesys Ros2
Robot-centric (ROS 2 master)
Hybrid edge device
Gateway-based
By integrating the two, you build a hybrid system: codesys ros2
| Feature | Handled by CODESYS (PLC side) | Handled by ROS 2 (Edge/PC side) | | :--- | :--- | :--- | | Real-time control | Servo drives, hydraulic valves, temperature loops (<1ms) | High-level trajectory following (>10ms) | | Safety | Safety-rated PLC (ISO 13849) | Monitoring, but not SIL-rated logic | | I/O Handling | 24V digital, 4-20mA analog, EtherCAT slaves | Cameras, LiDARs, 3D sensors, microphones | | Algorithms | PID, motion control (CNC/Robotics) | SLAM, A*, MoveIt motion planning, YOLO vision | | Communication | Modbus TCP, Profinet, OPC UA | DDS (Fast-DDS, CycloneDDS), MQTT, WebSockets | | Deployment | Flash to non-volatile PLC memory | Docker containers, Kubernetes, snap packages | Robot-centric (ROS 2 master)
We implemented a CODESYS ROS2 Client Library written in C++ (compiled as a CODESYS External Library) and exposed to IEC code via Function Blocks (FBs). Hybrid edge device
DDS is powerful but complex. Default settings may cause: