Troubleshooting
This page provides troubleshooting steps for dealing with errors and other issues that could possibly occur when working with or setting up the various parts of the motoman_driver package. The Solution subsections list steps to resolve the issues.
If you have a specific issue that is not listed on this page or the provided solution does not seem to work, please contact one of the support resources listed here: ROS-Industrial Technical Support.
Contents
-
Troubleshooting
- Installation
-
Runtime
- Alarm: 1020[5]
- Alarm: 1020[6]
- Alarm: 1050[1]
- Alarm: 4207[1101]
- Alarm: 4430[6]
- Alarm: 4997[4]
- Alarm: 8001[0]
- Alarm: 8001[10]
- Alarm: 8003[100 - 111]
- Alarm: 8003[1]
- Alarm: 8003[2]
- Alarm: 8003[3]
- Alarm: 8003[4]
- Alarm: 8003[5]
- Alarm: 8003[6]
- Alarm: 8003[7]
- Alarm: 8003[8]
- Alarm: 8003[9]
- Alarm: 8003[10]
- Alarm: 8003[11]
- Alarm: 8004[4]
-
ROS Errors
- trajectory ABORTED
- (5001) Controller alarm active
- (5003) E-Stop active
- (5004) Controller in TEACH mode
- (5005) Controller not in REMOTE mode
- (5006) Unable to enable drive power
- (5007) Controller in HOLD state
- (5008) MotoRos not started
- (5009) Waiting on ROS
- (5010) Waiting on SkillSend
- (5011) Unknown
- Not receiving axis speeds from robot controller
- Failed to initialize message
Installation
ERROR 3200: NOP or END instruction not found
The robot controller requires all files use Windows-style end-of-line terminator. This is <carriage return><line feed>. Many common text editors in the Linux environment will automatically standardize all EOL terminators to be Unix-style; this removes the <carriage return>, resulting in the error message.
Solution: Open this job file in a text editor that allows you to use Windows-style EOL (<0xD><0xA> or <CR><LF>) or, given that the job is relatively small, manually recreate the job using the programming pendant. Another alternative is to copy the .jbi and .dat files under Windows.
Runtime
Alarm: 1020[5]
Example:
ALARM 1020 MOTOPLUS APPLICATION LOAD ERROR [5]
Solution: This alarm occurs in conjunction with 1050 and 4207. It is caused due to missing symbols when building from source.
Make sure the MotoROS binary is linked against all the required libraries. The provided Visual Studio solution should be set up correctly. Pay special attention to any errors or warnings displayed by Visual Studio as part of the build process. If using MotoPlusIDE, refer to ros-industrial/motoman#273 and ros-industrial/motoman#275.
If the error continues, you may need to upgrade the robot controller system software. Please contact Yaskawa technical support for assistance with upgrading the controller.
Alarm: 1020[6]
ALARM 1020 MOTOPLUS APPLICATION LOAD ERROR [6]
Solution: This alarm occurs in conjunction with 1050 and 4207. There are two possible causes for this alarm.
- Corruption of the MotoROS binary
- Using MotoROS binary built for the wrong controller model
To remedy 1: download a fresh copy of the correct MotoROS binary and verify integrity of the file. Refer to sections 2.2.1 (Downloading a binary) and 2.2.2 (Verifying integrity of the download) from the Installation using Binaries section. Then follow the appropriate section of 2.4 (Loading the Binary File) again.
Note: make sure to check the binary copied to the removable medium (ie: usb stick or CFlash card), as corruption of files during transfer to such a medium is also possible.
To remedy 2: make sure that you are downloading the binary for your controller model. For example, the DX200 binary will not run on an FS100.
Alarm: 1050[1]
Example:
ALARM 1050 SET-UP PROCESS ERROR(SYSCON) [1]
Solution: If this alarm occurs in conjunction with 1020 (subcode 5 or 6) and 4207 (subcode 1101), please refer to Alarm: 1020[5 - 6].
Alarm: 4207[1101]
Example:
ALARM 4207 SYSTEM ERROR(MOTION) [1101]
Solution: If this alarm occurs in conjunction with 1020 (subcode 5 or 6) and 1050 (subcode 1), please refer to Alarm: 1020[5 - 6].
Alarm: 4430[6]
Example:
ALARM 4430 CPU COMMUNICATION ERROR [6]
Solution: This alarm occurs if you run the DX100 version of the INIT_ROS Inform job on a non-DX100 controller. Please delete the INIT_ROS job from your pendant and replace it with the version for all other controllers.
Alarm: 4997[4]
Example:
ALARM 4997 M-SAF DATA CRC UNMATCH [4] ALARM 8001 Speed FB enabled, reboot now. [10]
Solution: This alarm occurs if the FSU is enabled when installing MotoROS. The MotoROS driver attempts to enable the Speed Feeback parameters, but is unable to change the required parameters due to FSU settings. You must temporarily disable the CRC check for the Speed Feedback update to complete.
Boot the controller into *Maintenance* mode by powering on the controller while holding {Main Menu} on the keypad. Touch [System Info]→[Security] and upgrade to *MANAGEMENT* security level. Then touch [MotoPlus Apl]→[Delete]. Select the MotoROS .out file and press {Enter} to confirm removal of the MotoROS driver. Turn off the robot controller.
Boot the controller into *Normal Operation* mode Switch the pendant to TEACH mode. Then, from the main menu, touch [System]→[Security] and upgrade to *SAFETY* security level (the default password is all 5s). Then touch [Setup]→[Function Enable]. Navigate to *SAVE DATA CRC CHECK FUNC (FSU)*. Set this feature to *INVALID*. Turn off the robot controller.
Boot the controller into *Maintenance* mode by powering on the controller while holding {Main Menu} on the keypad. Now reinstall the MotoROS .out file according to the installation procedure.
Boot the controller into *Normal Operation* mode After rebooting, you should receive Alarm 8001 [10] ("Speed FB enabled, reboot now"). Now *Speed Feedback* has been permanently enabled.
Reboot once more and follow the steps above to re-enable the *SAVE DATA CRC CHECK FUNC (FSU)*
Alarm: 8001[0]
Example:
ALARM 8001 WARNING: Too many groups for ROS [0]
Solution: The MotoROS driver can support up to 4 control-groups on FS100, DX200, and YRC1000 controllers. The DX100 can support up to 2 control-groups. This alarm indicates that your controller is setup with more groups than what is supported. This is a warning to notify you that the additional groups will not be controlled by the MotoROS driver. They will remain stationary during operation.
Alarm: 8001[10]
Example:
ALARM 8001 Speed FB enabled, reboot now [10]
Solution: This alarm is a one-time notice that feedback speed data has been automatically enabled. This information will automatically be included with the feedback position data that is sent to the ROS-Industrial driver. When the alarm occurs, reboot the robot controller. You will not see this alarm again.
Alarm: 8003[100 - 111]
Example:
ALARM 8003 MotoROS: Controller cfg invalid [100]
Solution: Your robot controller requires internal configuration changes to support the MotoROS driver.
For DX100: Please contact your local Yaskawa Motoman office to order the MotoROS runtime. In North/South America, the part number for this configuration is 180014-1. In Europe, the part number for this configuration is 171403.
For FS100, DX200, and YRC1000: Ensure your controller is updated to at least FS3.30.00-00, DN2.21.00-00, or YAS1.11.00-00 system software. If your controller is below this, please contact Yaskawa Motoman for assistance with upgrading the controller. Then boot the controller into Maintenance mode by holding {Main Menu} on the keypad. Touch [System Info]→[Security] and upgrade to MANAGEMENT security level. Touch [System Info]→[Setup] then select OPTION FUNCTION. Cursor down to MOTOMAN DRIVER and set this to USED. Then reboot your robot controller.
Alarm: 8003[1]
Example:
ALARM 8003 MotoROS Cfg: Set RS000=2 [1]
Solution: An internal parameter is not set properly in the robot controller. Touch [System Info]→[Security] and upgrade to MANAGEMENT security level. Then touch [Parameter]→[RS] and set the value of RS000 = 2. Then reboot your robot controller.
Alarm: 8003[2]
Example:
ALARM 8003 MotoROS Cfg: Set S2C541=0 [2]
Solution: An internal parameter is not set properly in the robot controller. Touch [System Info]→[Security] and upgrade to MANAGEMENT security level. Then touch [Parameter]→[S2C] and set the value of S2C541 = 0. Then reboot your robot controller.
Alarm: 8003[3]
Example:
ALARM 8003 MotoROS Cfg: Set S2C542=0 [3]
Solution: An internal parameter is not set properly in the robot controller. Touch [System Info]→[Security] and upgrade to MANAGEMENT security level. Then touch [Parameter]→[S2C] and set the value of S2C542 = 0. Then reboot your robot controller.
Alarm: 8003[4]
Example:
ALARM 8003 MotoROS Cfg: Set S2C1100=1 [4]
Solution: An internal parameter is not set properly in the robot controller. Touch [System Info]→[Security] and upgrade to MANAGEMENT security level. Then touch [Parameter]→[S2C] and set the value of S2C1100 = 1. Then reboot your robot controller.
Alarm: 8003[5]
Example:
ALARM 8003 MotoROS Cfg: Set S2C1103=2 [5]
Solution: An internal parameter is not set properly in the robot controller. Touch [System Info]→[Security] and upgrade to MANAGEMENT security level. Then touch [Parameter]→[S2C] and set the value of S2C1103 = 2. Then reboot your robot controller.
Alarm: 8003[6]
Example:
ALARM 8003 MotoROS Cfg: Set S2C1117=1 [6]
Solution: An internal parameter is not set properly in the robot controller. Touch [System Info]→[Security] and upgrade to MANAGEMENT security level. Then touch [Parameter]→[S2C] and set the value of S2C1117 = 1. Then reboot your robot controller.
Alarm: 8003[7]
Example:
ALARM 8003 MotoROS Cfg: Set S2C1119=0 or 2 [7]
Solution: An internal parameter is not set properly in the robot controller. Touch [System Info]→[Security] and upgrade to MANAGEMENT security level. Then touch [Parameter]→[S2C] and set the value of S2C1119. A value of 2 will enable the telnet option to see any output messages from the MotoROS driver. A value of 0 will disable the telnet option. Reboot your robot controller after changing this parameter.
Alarm: 8003[8]
Example:
ALARM 8003 MotoROS not compatible with PFL [8]
ALARM 8003 MotoROS not compatible with HC10 [8]
Solution: Old versions of the MotoROS driver are not compatible with the human-collaborative (HC) robots. You must update to v1.9.0 or newer. Reboot the robot controller while holding {Main Menu} on the keypad to enter Maintenance mode. Touch [System Info]→[Security] and upgrade to MANAGEMENT security level. Then touch [MotoPlus Apl]→[Delete]. Select the MotoROS.out file and press {Enter} to confirm removal of the MotoROS driver. Now follow the installation tutorial to install the latest version.
Additionally, the robot controller must meet a minimum version of system software. For YRC1000, the controller must have YAS2.80.00-00 or higher. For YRC1000micro, the controller must have YBS2.31.00-00 or higher. Please contact Yaskawa technical support for assistance in upgrading the controller software.
Alarm: 8003[9]
Example:
ALARM 8003 MotoROS not compatible with HC10 [9]
Solution: Old versions of the MotoROS driver are not compatible with the human-collaborative (HC) robots. You must update to v1.9.0 or newer. Reboot the robot controller while holding {Main Menu} on the keypad to enter Maintenance mode. Touch [System Info]→[Security] and upgrade to MANAGEMENT security level. Then touch [MotoPlus Apl]→[Delete]. Select the MotoROS.out file and press {Enter} to confirm removal of the MotoROS driver.Now follow the installation tutorial to install the latest version.
Additionally, the robot controller must meet a minimum version of system software. For YRC1000, the controller must have YAS2.80.00-00 or higher. For YRC1000micro, the controller must have YBS2.31.00-00 or higher. Please contact Yaskawa technical support for assistance in upgrading the controller software.
Alarm: 8003[10]
Example:
ALARM 8003 MotoROS: Reconfigure waist axis [10]
Solution: The DX100 SDA robots must configured as three control groups. The waist must be configured as an external station. It cannot have a 'shared' base axis. Please contact Yaskawa technical support for assistance in reconfiguring your DX100 SDA.
Alarm: 8003[11]
Example:
ALARM 8003 HC/Convey trking not compatible [11]
Solution: The Yaskawa Conveyor Tracking function is not compatible with HC robots. Please contact Yaskawa technical support to have Conveyor Tracking function disabled.
Alarm: 8004[4]
Example:
ALARM 8004 MOTOROS FAILED TO CREATE TASK [4]
Solution: This alarm is caused by having another MotoPlus application installed on the system which is using task-priority level MP_PRI_IP_CLK_TAKE. There can only be one MP_PRI_IP_CLK_TAKE task installed on the system, and it is required for MotoROS.
Either remove the additional MotoPlus application(s) installed on the controller, or modify the source code of the additional application so that it doesn’t use MP_PRI_IP_CLK_TAKE.
ROS Errors
trajectory ABORTED
Example:
Failed to initialize MotoRos motion, so trajectory ABORTED. If safe, call /robot_enable service to (re-)enable Motoplus motion.
Solution: On a driver launch, the new robot_enable service must be called before motion commands are sent. Refer to the motoman_driver usage for more details.
(5001) Controller alarm active
Example:
[ERROR] [xxxx]: Failed to set TrajectoryMode: Not Ready (5) : Controller alarm active (5001)
Solution: There is an active alarm on the pendant. Please call the robot_enable service to attempt to automatically clear the alarm. If that doesn't work, then the alarm is likely a major alarm and must be handled using the teach pendant.
(5003) E-Stop active
Example:
[ERROR] [xxxx]: Failed to set TrajectoryMode: Not Ready (5) : E-Stop active (5003)
Solution: The emergency stop has been activated. Please release the E-Stop on the teach pendant and all external E-Stop latches connected to the robot controller.
(5004) Controller in TEACH mode
Example:
[ERROR] [xxxx]: Failed to set TrajectoryMode: Not Ready (5) : Controller in TEACH mode (5004)
Solution: Rotate the pendant key-switch (upper left of pendant) fully clockwise into REMOTE mode.
(5005) Controller not in REMOTE mode
Example:
[ERROR] [xxxx]: Failed to set TrajectoryMode: Not Ready (5) : Controller not in REMOTE mode (5005)
Solution: Rotate the pendant key-switch (upper left of pendant) fully clockwise into REMOTE mode.
Additionally, if using the standard teach pendant, select [In/OUT]→[PSEUDO INPUT SIG]. Move the cursor to the circle beside the specified input (#82015 on FS/DX or #87015 on YRC [CMD REMOTE SEL]). Press [INTERLOCK]+[SELECT] to turn ON the input. (This signal should already be enabled for the Smart Pendant.)
(5006) Unable to enable drive power
Example:
[ERROR] [xxxx]: Failed to set TrajectoryMode: Not Ready (5) : Unable to enable drive power (5006)
Solution: Make sure that all external HOLD or E-STOP signals have been disabled. Please call the robot_enable service to attempt to enable the servos.
If that doesn't work, try to manually enable servo power on the pendant and troubleshoot the problem based on the error that appears on the pendant.
(5007) Controller in HOLD state
Example:
[ERROR] [xxxx]: Failed to set TrajectoryMode: Not Ready (5) : Controller in HOLD state (5007)
Solution: Make sure that all external HOLD signals have been disabled. This includes any safety circuitry connected to the Functional Safety Unit (FSU).
(5008) MotoRos not started
Example:
[ERROR] [xxxx]: Failed to set TrajectoryMode: Not Ready (5) : MotoRos not started (5008)
Solution: Follow the installation tutorial to load the INIT_ROS Inform job. This job must be loaded on the pendant prior to calling the robot_enable service.
If the job is loaded and the error is still occurring, then the controller is likely in a state where it cannot run jobs. This must be manually resolved using the teach pendant. There should be message at the bottom of the pendant that indicates why playback cannot be started. Please refer to the standard Yaskawa documentation to troubleshoot the issue.
(5009) Waiting on ROS
Example:
[ERROR] [xxxx]: Failed to set TrajectoryMode: Not Ready (5) : Waiting on ROS (5009)
Solution: The INIT_ROS Inform job has likely been modified. Please follow the installation tutorial to load the original INIT_ROS Inform job. Then call the robot_enable service to restart the job.
(5010) Waiting on SkillSend
Example:
[ERROR] [xxxx]: Failed to set TrajectoryMode: Not Ready (5) : Waiting on SkillSend (5010)
Solution: The DX100 version of the INIT_ROS job is different than other controllers. Follow the installation tutorial to load the DX100 version of the INIT_ROS Inform job. Then call the robot_enable service to restart the job.
(5011) Unknown
Example:
[ERROR] [xxxx]: Failed to set TrajectoryMode: Not Ready (5) : Unknown (5011)
Solution: The code 5011 indicates that the PFL feature of the HC robot has been engaged. All external motion commands will be rejected while PFL is active.
Not receiving axis speeds from robot controller
Example:
When reading the robot's state information, your ROS application is expecting the 'velocity' field to be populated. This data is zeroed out during robot motion. (DX200 and YRC1000)
Solution: On DX200 and YRC1000 robot controllers, this feature must be enabled before it can be used. Plus, it requires MotoROS v1.7.0 or higher. (Velocity feedback on DX100 and FS100 is obtained using a different method.)
This feature will automatically enable itself if you boot in TEACH mode.
- Rotate the pendant key-switch to the TEACH position (fully counter-clockwise).
- Reboot the robot. After it fully boots, you should receive alarm 8001[10] 'Speed FB enabled, reboot now'.
- Reboot the robot again. Now the feedback speed will be included in the robot's state information.
If you do not receive the alarm, then this feature can also be activated manually.
Touch [System Info] > [Security]. Upgrade to MANAGEMENT security level.
Touch [Parameter] > [S1CxG]. Use the {PAGE} key to change between different control groups. (Robot 1 is S1C1G; Robot 2 is S1C2G; etc...)
- Set the following parameters, then reboot the controller.
DX200
R1
R2
R3
R4
S1CxG0335
2
2
2
2
S1CxG0784
50
66
82
98
Axis 1
S1CxG0785
52
68
84
100
Axis 2
S1CxG0786
54
70
86
102
Axis 3
S1CxG0787
56
72
88
104
Axis 4
S1CxG0788
58
74
90
106
Axis 5
S1CxG0789
60
76
92
108
Axis 6
S1CxG0790
62
78
94
110
Axis 7
S1CxG0791
64
80
96
112
Axis 8
YRC1000 and newer
R1
R2
R3
R4
S1CxG0335
2
2
2
2
S1CxG1280
50
66
82
98
Axis 1
S1CxG1281
52
68
84
100
Axis 2
S1CxG1282
54
70
86
102
Axis 3
S1CxG1283
56
72
88
104
Axis 4
S1CxG1284
58
74
90
106
Axis 5
S1CxG1285
60
76
92
108
Axis 6
S1CxG1286
62
78
94
110
Axis 7
S1CxG1287
64
80
96
112
Axis 8
Failed to initialize message
Example
[ERROR] [xxxx]: Failed to initialize message [ERROR] [xxxx]: Failed to receive incoming message [ERROR] [xxxx]: Send failure, no callback support
Solution If you can ping your robot's IP address, and the INIT_ROS job is running on the controller, then check the use_byteswap argument in your robot_interface_streaming.launch file. If you are using an fs100 controller, the value should be set to true. Otherwise, the value should be set to false.