An ABB IRC5 controlling an IRB 6640 with an IRBT 6004 track can accept a connection and return joint positions yet reject motion commands when the external-axis configuration or commanded speed is incomplete. Diagnose the motion path by separating robot-only configuration, synchronized-track configuration, and controller speed validation.
Identify the Error Path
| Configuration | Observed behavior | Controller error | Engineering interpretation |
|---|---|---|---|
| IRB 6640 without the track synchronized in RoboDK | Get Position updates the virtual robot, but Move Joints stops immediately | 40512, Missing External Axis Value | The IRC5 has an active external axis, but the commanded position lacks a correct ordered value for that axis. |
| IRB 6640 synchronized with the IRBT 6004 | Get Position does not update the virtual robot; Move Joints briefly enables motion and then stops | 50381, Speed too low | The synchronized motion command contains a speed below the controller's numerical-resolution limit. |
A successful ping or driver connection confirms communications only. It does not verify that the station axis order, external-axis values, and motion speed form a controller-valid command.
Resolve Error 40512: Missing External Axis Value
Error 40512 reports that an active external axis has an incorrect ordered value or no ordered value. Because the IRC5 configuration includes the IRBT 6004, a robot-only Move Joints command is incomplete even if position retrieval works for the six robot joints.
Synchronize the rail in the RoboDK station and ensure the motion target includes the track position in the same axis order expected by the controller. Reprogram the position after correcting the external-axis configuration. The evidence does not identify the required axis index or configuration field, so obtain those values from the actual IRC5 system rather than assuming them.
Resolve Error 50381: Speed Too Low
Error 50381 means the programmed speed is below the controller's numerical-resolution limit. The controller also advises checking other synchronized tasks in a MultiMove application, if applicable. The successful resolution was to add a speed-setting instruction, read the new teach-pendant message specifying that the speed had to be reduced to an acceptable level, and apply that value in RoboDK.
- Create or run a program containing a speed-setting instruction.
- Read the IRC5 teach-pendant feedback for the permitted speed constraint.
- Set the corresponding speed in RoboDK to the controller-accepted value.
- Retry synchronized motion and confirm that both the IRB 6640 and IRBT 6004 move normally.
No numeric speed is present in the evidence. Do not substitute an assumed value; use the limit reported by the configured controller. Also check the installed RoboDK release because driver changes improved external-axis support, although no affected version is identified.
Map Digital I/O Before Issuing Output Commands
If the teach pendant displays “Implement setting Digital Outputs,” customize the driver so each numbered digital output used by RoboDK maps to the corresponding named digital output in the IRC5 configuration. Apply the same mapping approach to numbered digital inputs and named controller inputs.
Verify each mapping with a controlled test: command one output, confirm the intended named IRC5 signal changes, and confirm no unrelated signal changes. The evidence supplies no signal names or channel numbers, so derive the mapping from the deployed controller configuration.
FAQ
Why does ABB IRC5 error 40512 occur when Move Joints is pressed?
The IRC5 has an active external axis, but the commanded target contains an incorrect ordered external-axis value or none at all. Synchronize the IRBT 6004 in RoboDK and reprogram the target with the controller's required axis order.
How do I clear ABB IRC5 error 50381 Speed too low?
Add a speed-setting instruction, read the speed constraint reported on the teach pendant, and enter the controller-accepted value in RoboDK. If synchronized tasks are configured, check their programmed speeds as well.
Why does the teach pendant say Implement setting Digital Outputs?
The driver requires a mapping between RoboDK's numbered outputs and the IRC5's named digital outputs. Customize that mapping and verify each signal individually; use the same method for digital inputs.