@Sebastien I have seen this issue when the part is reflective, is it ?
Here is the explanation: The reflection on your part is seen as a feature by the system, thus your part is not symmetric with that reflection. If you don't turn the part, it fails. If you turn it, then the reflection does not follow, feature is not recognize, thus it fails.
What you should do: If your part is reflective (metal) find a spot on your workspace where there is less reflection. Eliminate reflections sources (ambient lights). In extreme cases, go to the source and eliminate reflections from the part, paint your part with a mat paint. Remember that the system sees the geometry, so it doesn't mater if you teach a black part and then pick a raw metal part. With that you should be able to teach it.
One last trick, sometimes going the opposite works too, put full lights on the part, if it is reflective, with enough lights it will be seen as a uniform white part. You should then also be able to teach it.
@Sebastien and @Etienne, I have been discussing this with @Vincent_Paquin and one trick would be to tilt the robot a bit. When viewing a round object directly from above, you see a circle. However when you tilt a bit the camera, the circle changes to an ellipse. This allows the vision system to snap a model more easily because it is always looking for an object’s orientation and this is harder to find with circles than it is with ellipses.
Applying this concept to the post Square Object Using the vision system tilting the camera's snapshot position a bit will make the square rectangular and therefore limiting 1 degree of freedom when finding the object with the camera.
However, we have to be careful not to tilt too much because this will also have some impacts on location accuracy.
@Vincent_Paquin, any tips to add?
@Etienne_Samson
I am teaching an object that is round as seen from the top. Like a washer for example. When I am in the TEACH OBJECT screen and I take the required 5 snapshots, I run into issues. In this interface you are asked to first take a picture of the background, then add the part and take another snapshot. Rotate the part 90 degrees and take another one and so on. However, since the part in round, it does not matter if you turn it to 90 degrees, it is still in the same orientation. So for the first picture of the object it is fine, but for the others sometime I run into an error saying 'Failed to refine model'. Even though sometimes I did not touch the part at all between snapshots. What does this error mean and how can I get around this?