Is there a way to approximate the work envelope for robot with a finite number of points?

I would also need to be able to do this with different tools.

I know that robot studio can show you the work envelope, but I don’t know how turn that into points that could checked in rapid.

I trying to find the minimum distance between the work envelope and a point. If I can approximate work envelope as a set of points, then I can use the distance command to check the point and each point of the work envelope.

Hello,
You can use CalcJoint() and manage error:
Error handling The following recoverable errors are generated and can be handled in an error handler. The system variable ERRNO will be set to:
Name Cause of error
ERR_ROBLIMIT The position is reachable, but at least one axis is outside the joint limits or the limits are exceeded for at least one coupled joint.
ERR_OUTSIDE_REACH The position (robtarget) is outside the robot’s working range.
ERR_WOBJ_MOVING The mechanical unit that controls the work object (user frame) isn’t standing still at execution time of CalJointT \UseCurWobjPos.

I’m not very familiar with ERRNO. Do you know of any tutorials that could help me understand error handling in rapid?

Technical reference manual - Rapid kernel, Technical reference manual - Rapid instructions, functions and datatypes, technical reference manual - Rapid overview.

Check out: ABB Robotics Community - Maintenance