Protective Stop Service Note
This article describes what is a Protective Stop warning message, what can cause, what happens if ignored and how to evaluate a protective stop warning message
Date Created: July 24th 2020.
Download PDF version at the end of the page.
Valid for all robots.
What is a Protective Stop warning message?
A Protective Stop is a stop initiated by the robot controller due to a fault being detected (“Protective Stop”). The error codes following this messages in most situations can be the C153 or C157. A warning message is shown on the teach pendant display or external display, as a notification of the fault condition. If your robot keeps showing Protective Stop’s warning messages during operation, pay immediate attention and investigate to determine the cause. Investigate ALL Protective Stop warning messages. These messages are indications that the robot’s application and/or the program needs to be reviewed. Program modification or servicing can be required before resuming operation.
What can cause a Protective Stop?
A Protective Stop can be caused by one or more of the following reasons:
- Incorrect programming.
- Incorrect installation configuration settings.
- The robot being over stressed, thereby exceeding its operational specifications.
- The robot or its attached end-effector, peripherical or workpiece, bumps or is in contact with something.
- A robot component part has a prematurely reduced lifetime due to misuse.
What happens if I ignore a Protective Stop warning?
Ignoring Protective Stops is a misuse of the robot. Misuse voids the robot warranty. Misuse can void product certifications. Misuse can result in failure of the robot (or robot component part) which could expose people to risks due to the fault.
An application which has daily Protective Stops is designed incorrectly. Setting up automatic reset of Protective Stop warnings is prohibited. The robot application and/or the program must be modified to operate within robot specifications. Operation within specifications can be achieved by adhering to Universal Robots best practices as detailed in the User and Service Manuals.
The following shall be assured by application validation, training of personnel and supervising the use of robot applications:
- Trained personnel shall review the program and perform troubleshooting to determine the cause of all Protective Stop warning messages.
- Trained personnel shall be informed of this requirement.
- Trained personnel shall be instructed to investigate and fix the cause.
- A deliberate action by a user shall be required to resume operation after inspecting, reviewing and acting upon the cause of the warning.
- If an integrator or end-user programmer has set-up the application program to do automatic acknowledgement and reset of Protective Stops, the robot program/system needs to be corrected immediately.
- Protective Stop warning message, SHALL NOT be reset without a review to determine the fault’s root cause.
- The USER shall determine whether service is needed and how quickly to get service performed.
- The USER shall inform and ensure personnel are trained about the following:
- The use and purpose of protective stops.
- How to investigate and correct the cause of protective stop warning messages.
- Acknowledging and resetting warning(s) to continue operation without fixing the root cause can void the warranty and product certifications. This is misuse where the robot could be damaged or break and possibly cause injury to personnel.
Please download the manuals for reference on Universal Robots’ support site: http://www.universal-robots.com/support. You will also find other reference materials on this website.
What can be done to avoid Protective Stops on your robot? What are the corrective actions?
1. Check installation settings and make sure the following settings are correctly configured:
- Payload
- Tool Center Point
- Center of Gravity (center of weight for the end-effector and part)
If you are unsure about how to configure and how to adjust/set these important settings in your robot program, request information or training from your Universal Robot’s distributor.
2. Set TCP on move commands: Check if the correct TCP is set in the move commands MoveL, MoveJ and MoveP. Using the “ignore active TCP” option will mask the actual readings making the robot interpret actual forces as less than capable, creating Protective Stops.
Example of where to set the TCP created on the installation tab
3. Check safety settings and verify if settings are correct according to the results of the risk assessment and validation of the application.
Example of where to find the safety parameter settings that need to be checked
4. Force exertion excess: verify that the robot does not push excessively in pick-up positions, thereby creating unwanted forces that can cause Protective Stops. Re-teach relevant waypoints to avoid collisions. If needed, use the Force command instruction on these positions to allow the robot to reduce the stress generated and thereby reduce the likelihood of Protective Stops.
Example of the end-effector getting caught or exerting high forces
5. Acceleration settings: the robot should be programmed to make smooth transitions between points without creating stressful situations where the arm is being over stressed while meeting the cycle time requirements. Blends should be used to optimize paths wherever possible before considering an increase of the acceleration settings. Speed and acceleration settings should be within application guidelines for linear and joint movements. Exceeding the parameter settings can lead to high stress of the joints and cause Protective Stop warnings. Please review all your program’s speeds and accelerations.
Example of how to change acceleration and speed parameter settings
6. Blend Radius: Using the blend radius resource on MoveJ, MoveL and MoveP allows the robot to go through waypoints without needing to decelerate between all waypoints. This reduces stress on robot joints and reduces application’s cycle time. Adding blends should be the first method to decrease robot cycle time before increasing the speed and acceleration settings. Blends should be added whenever the robot does not need to stop. Input a setting greater than 0mm, but no larger than the next waypoint’s total distance. If a very large blend radius is inserted, it will cause the waypoint to be skipped and the blend will not be executed. Skipping the waypoint will cause a warning message to be generated in the Log File. This warning message will be, “Overlapping Blends in a MoveL, a waypoint was skipped”. The Log Screen must be checked to track the results of the changes and enhancements.
The cycle time can be reduced by using the correct blend radius between waypoints
Example of how to add a blend radius. Click on the waypoint and then check Blend with Radius and enter the blend setting
7. Waypoints shifting: If the robot waypoints are being re-taught frequently and Protective Stop warnings are being generated, service is needed. Protective Stop warnings are an indication of faults being detected. To determine if service is needed:Check the robot according to the Inspection Plan in the Service Manual.
-
- Create a preventive maintenance plan for your system and execute it.
- Have the robot serviced by trained personnel, distributor or Universal Robots service center.
8. Mounting surface: The robot must be mounted on a rigid surface capable of withstanding at least ten times the full torque of the base joint (check torque values in Service Manual) and at least five times the weight of the robot arm. The surface mounting shall not introduce vibrations into the robot application. If the robot is mounted on a moving 7th axis, the acceleration and deceleration of that axis must be less than 1m/s2, causing minimal impact to the robot as the moving vibration can cause a Protective Stop warning. This happens because a high acceleration is applied due to forces and momentum applied. Refer to the User Manual for more instructions.
9. IP rating: The application must comply with an environment suited for the IP54 rating for the robot arm and IP44/IP20 for the e-Series/CB-Series control box respectively. In environments where liquids such as machine coolants or fine powders are present and most likely to interact with the surface of the robot arm or control box, additional measures should be taken, such as utilizing a protective robot cover. If you are not sure about what IP rating is needed for your application, please contact your distributor for assistance. The wrong environment can damage the robot’s parts resulting in Protective Stop warning messages.
Example of an IP Rating graphic. This graphic does not include duration of water/solids exposure
10. Singularities: Singularity is a scenario in which the joints position allowing the robot to move its TCP in a desired path cannot be done, as two or more joints get aligned at the same time close to zero degrees position. Moving too close to singularity can result in an unexpected increase in joint speed which will generate Protective Stops. This is described in the User Manual. If a singularity is affecting robot motions and paths, then try one or more of the following:
- Change the affected waypoints from MoveL to MoveJ;
- Adjust the robot or surrounding equipment positions;
- Change the length or orientation of robot end-effector.
Singularities do not occur when using MoveJ, so in all cases where MoveL or MoveP is not specifically needed, use a MoveJ command.
Example of a wrist alignment singularity moving linearly
11. Wait command and “Check Expression Continuously”: While the robot is moving from one waypoint to another at high acceleration and speed settings, the use of any wait or pause between these two, can generate a Protective Stop warning. Do NOT have a “wait for a signal input” or “wait for time” between these moves. A Protective Stop will also be generated with the use of the “check expression continuously” on a loop or if/else commands. This is because the robot suddenly changes the programmed trajectory trying to go to the next section of the program. The “Wait command” and “Check Expression Continuously” selection make the robot stop or change its direction abruptly. They create high forces on the robot and generate a Protective Stop warning message. If “Wait command” and/or “Check Expression Continuously” is needed, add an interrupt script command: “stopl()” or “stopj()”. The number inside the brackets is the deceleration in rad/s2 or m/s2.
Example of the usage of a script command stopl() and stopj()
12. I/O (Input/Output) connections: Check all terminals for proper connection. Terminal connections should not be loose, short-circuited or connected wrongly. Incorrect or loose connection of these terminals can cause Protective Stop warnings.
13. Safety connections: Check mismatch time settings of safety signals from external protective devices. Dual channel safety inputs to the safeguard stop, emergency stop and safety configurable inputs, can have a maximum of 48ms difference. A setting of 20ms is recommended for configuring external protective devices. This needs to be corrected as it will stop the robot with Protective Stop warnings. If an external protective equipment uses a “heartbeat” control, please use relays to be able to filter these signals so they do not influence on robot’s control generating Protective Stop warnings.
14. Thread used too much time: If a Thread parallel command is used and the update frequency exceed the robots, the runtime interpreter will read this Thread command sequence as an infinite loop. To avoid this situation, use a wait command of short duration or add a sync() script function to avoid runtime errors that result in Protective Stop warnings. This occurs inside the Robot Program thread as well in case there is not a wait, sync(), loop, if/else or move command being executed.
Example of sync() script usage
15. Force limits: For troubleshooting purposes, reduce the force limit in your robot safety settings to find motions in the program that are close to causing Protective Stops. Run your production program to identify the motion stopping positions. Once these motions are identified, use the recommendations in 1 through 13 above to correct the program and application. Afterwards, return the force limits back to their original settings as determined in the validation of the risk assessment.
16. Create a testing program:
- Remove your end-effector from the robot’s tool flange.
- Change the settings to the factory settings in the installation tab, e.g. zero values for TCP, CoG and Payload.
- Run the joint in free drive. Does anything feel odd? Does the movement feel halting or heavy? Do you hear any weird noises? If your answer is YES, the robot needs servicing. Movements should feel smooth without weird noises.
- Create a program that moves all the joints in different angles:
- Are there any Protective Stop warnings?
- Does any of the joints sound different than the other robot joints?
- Report the behavior and save the Support File from the robot.
- Try to create another program moving one joint at a time independently from the others with different speed and acceleration settings:
- Are there any Protective Stop warnings?
- Does any of the joints sound different than the other robot joints?
- Report the behavior and save the Support File from the robot.
- After the tests, if needed, follow the guidance in this document and from User and Service Manuals. If your robot still has Protective Stops after the tests, the robot requires servicing, contact immediately your local Universal Robot’s distributor for assistance.
17. Inspection Plan: Create an inspection plan in accordance to Universal Robots best practices and guidance in the User and Service Manuals, if you have any doubt or need of service, please contact your local distributor for immediate assistance.