Trying to improve the collision avoidance accuracy or IRB4600 (IRC5) between the tool and the product. Here’s the object (product) the robot will be working on:
As you can see, it has a curvature that a tool has to approach very closely, but not collide with. Therefore, the standard robot studio convex hull generator was deemed not precise enough, as the collision mesh generated by RobotStudio generally looks like this:
The curvature’s shape is completely lost when the hull is created, and this conflicts with the RAPID motion program that has to closely approach the curved surface. Sure, with enough subdivision planes (and lots of effort) it is possible to approximate the curve, but even then the issue still stands - it’s not accurate for our application.
To resolve that, I’ve made a custom collision mesh for the product in CAD that accurately represents the physical product dimensions, and converted it into RobotStudio collision .xml using self-made Python script. Then, I’ve swapped the .xml in the controller’s CA folder with the converted one and restarted the IRC5. Result is given below:
It is clear that in this case the curvature is preserved, and the collision mesh follows the physical dimensions 100%.
However, despite the changed collision geometry, the collision avoidance seems to treat it as if it had a rough convex hull collision still:
The predicted collision between product’s surface and the tool seems as if the previous “rough hull” type of collision is in use:
Any ideas on why this is happening?
Are any files besides .xml in CA folder define the collision avoidance mesh?
And since we are on the topic, does RobotStudio (or RobotWare for this matter) algorithms support custom hull geometry at all?






