How industrial robots understand collision and stop immediately?

  • To put it simply, the robot knows the amount of torque for each axis required to go from point A to point B at the programmed velocity. When the torque surges due to a collision, it stops. In order for that to work properly the payloads and loads on the arm must be defined well. Otherwise, spurious collision detections can, and do, occur. I have seen it many times where the robot was not set up correctly from the beginning. Other things like robot mounting need to be taken into effect as well. For example, is the robot hanging inverted or wall mounted?

  • At its most basic level, collision detection on robots is based on monitoring the torque on each axis (usually derived from the amp draw of the servo motor). Each axis has a rated maximum torque, and any torque above that level is assumed to be a sign of a collision.


    Since that is a very coarse check, and does not detect a collision until the forces involved are very large, attempts have been made to make the collision detection more sensitive. Usually by recording the torque of each axis for each path segment of a program, over several repetitions, to establish a baseline of the torque that should be expected during each path segment. Once the recording/calibration is complete, the collision detection should trigger during the calibrated program if/when the torque of any axis goes outside of the recorded torque values, plus a certain margin.


    The efficacy of this collision detection is debatable -- the amp/torque data is noisy (leading to false positives if made sensitive), and has an irreducible lag behind the physical condition of the arm. Not to mention that, at high speeds and/or inertia loading, even if the collision detection was set as sensitive as possible, the time lag between detecting a collision and bringing the robot to an actual halt is long enough as to make the collision detection irrelevant.


    Collision detection currently works best for low speed operations, and detecting "glancing" collisions that would not actually force the robot to a physical stop.

  • When you have a robot that is likely to encounter collisions, i.e. a palletizer that may drop pallets or boxes, I still prefer to use a pneumatic clutch / quick stop to mount the tooling. The clutch gives way protecting the tooling and the robot has considerably more time to stop. Of course, quick stops can't always be used due to payload and inertial loading, but when they can they're cheap insurance

Advertising from our partners