CR800/CR860 robot controllers provide a real-time monitoring function that streams internal controller data over Ethernet cable.
MELFA ROS2 Monitor is the ROS bridge for that capability, implemented on top of ros2_control.
It forwards high-frequency runtime data — joint motion, servo status, I/O signals, temperatures, currents, TCP pose and force-torque sensing — directly into ROS 2 state interfaces. This allows ROS applications to observe MELFA robots in real time and build advanced capabilities such as diagnostics, anomaly detection, telemetry logging and force-feedback behaviors.
- ROS 2 Humble on Ubuntu 22.04 LTS
- MELFA CR800 / CR860 robot controller
(all robot arm models running on these controllers are supported)
Optional (recommended for development and testing):
- RT ToolBox3 / RT ToolBox3 Simulator
- Communication method: UDP (Real-Time Monitor / rtmon API)
- Communication frequency: 286 Hz (R / D controllers) / 141 Hz (Q controllers)
- Supports multiple robot controllers monitored in parallel
- Supports 4 monitoring data queues per cycle
- Supports 2 General I/O ranges + 8 User-defined I/O ranges
- Provides runtime data including:
| Data ID | Description | Unit / Notes |
|---|---|---|
| 7 | XYZ position (Feedback) | xyz: m, abc: rad |
| 8 | Joint position (Feedback) | rad |
| 15 | Speed (Feedback) | rpm |
| 17 | Encoder temperature | °C |
| 18 | Encoder miscount | count |
| 19 | Motor power supply voltage | V |
| 101 | Force sensor current data | xyz: N, abc: Nm |
| 102 | Force sensor original data (after offset cancel) | xyz: N, abc: Nm |
| 103 | Force sensor original data (before offset cancel) | xyz: N, abc: Nm |
| 1011 | Servo current (Feedback) | A_rms |
Note: As stated in overview, this package is a bridge between ROS 2 and MELFA's real-time monitoring function, please read the related chapter if you wish to learn more about the function. You can download the CR750/CR751 Series Controller, CR800 Series Controller Ethernet Function Instruction Manual from Robot Industrial/Collaborative Robot MELFA Manual. Refer to chapter 3.4 Real-time monitor function.
MELFA ROS2 Monitor consists of five components:
- provides launch files for start-up.
- contains ros2_control config files.
- supports ros2_control.
- provides real-time communication hardware interface with our CR800/860-R/Q/D robot controllers via rtmon api 1.
- connects to the robot controller via rtmon api to monitor robot parameters via real-time monitor function.
- includes quality of life features built into rtmon api such as user configurable disconnection detection and debugging tools.
- supports ros2_control.
- 10 user configurable 32-bit I/O controllers with almost 2 KB of total addressable memory and 1 KB of addressable shared memory.
- provides ROS 2 controllers for GPIO control.
- provides custom ROS 2 msgs.
➢ 1 rtmon api stands for Real Time Monitor API.
To get started, first follow the MELFA ROS2 Monitor user guide to install the package and configure the required parameters. After installation, proceed with the RT ToolBox3 setup guides depending on your development environment.
- Install and configure MELFA ROS2 Monitor
- MELFA ROS2 Monitor user guide : Usage and Installation of MELFA ROS2 Monitor.
- Create an RT ToolBox3 project
- RT ToolBox3 Setup : Create your first RT ToolBox3 Project File for MELFA ROS2 Monitor.
- Choose your development environment
ii- RT ToolBox3 Simulator Setup : Connect to RT ToolBox3 simulator in place of real robots for MELFA ROS2 Monitor.
- RT ToolBox3 Real Robot Setup: Connect to a MELFA robot for MELFA ROS2 Monitor.
- MELFA ROS2 Driver : Official MELFA ROS2 Driver.
- MELFA ROS 8XS : Sample ROS 2 Package for additional axis.
- MELFA ROS2 PLC-HMI Integration : Sample ROS 2 package for memory sharing with Mitsubishi Electric's PLC and HMI.
More Support & Service, please contact us on github. For contributing and reporting, refer to this for development related enquiries.
