Weight sensing with UR10e

Hi, how can I sense box’s weight without using another sensor or which sensor do you recommend? Also which precision i could get with robot’s sensors? Thanks!

To sense the force acting on the robot flange without an external sensor use get_tcp_force().

This will be a quite coarse measurement, I dont know what the precision will be.
Depending on the use-case you will probably need to use an external force-sensor.

The function will give you a 6D-Value that shows the forces acting on the TCP in tool-space.
If you pick up the box from above you would have to look at the 3rd value which is the force in Z-direction.
You should pick up the box directly above the center of gravity, otherwise you will get a rotational moment that you will need to account for.

I have tried this earlier, and as far as I remember, the precision was +/- 200g, so not very precise. But if you just want to check for empty boxes versus full boxes of something, then it should be possible.

Remember to zero the force/torque sensor, before picking up the box for measurement. :slight_smile:

Hi,
You will not get good results trying to use the robots internal force/torque (F/T) sensor to determine absolute weight of an object (+/- 200g is probably about as good as it gets). I know as I have tried this myself and assisted others. You CAN get relative weight and measure that within +/- 10% or so. Also, if you pick up a reference mass and then use that to calibrate the robots readings before picking up a target object that might give you some decent results. The robot must be absolutely still too.

The other caveat to this whole process is that it is very dependent on the pose of the robot and how gravity is acting on the robots F/T sensors. I will attach an example.

weight_v2.urp (3.7 KB)

1 Like