Weight detection of any picked object using e-series robot
Example to calculate the weight of any picked up object using the internal F/T sensor on e-series robots
Example is valid since e-Series software version 5.1.0.
Note that newer software versions may behave differently. Up to software version 5.15.0, the guide is still valid
UR Script
The URScript function get_tcp_force() returns force and torque values oriented in the base coordinate system, but with torques placed at the tool flange origo. For weighing an object, only the forces are relevant.
The URScript zero_ftsensor() zeroes the TCP force/torque measurement from the builtin sensor in the robot tool, by subtracting the most recent measurement from all subsequent measurements.
Robot Program
- Move as close as possible to the pick position with no contact between robot tool and environment
- Wait 0.5s
- zero_ftsensor()
- Pick up object
- Lift object such that it is not in contact with the environment
- Wait 0.5s
- FT = get_tcp_force()
- mass = sqrt(FT[0]*FT[0] + FT[1]*FT[1] + FT[2]*FT[2]) / 9.82
Note: If the robot is upright horizontally mounted, mass = -FT[2] / 9.82 (object pulls in negative base frame z-direction)