There is a script you can place at the beginning of the program that will let you know if you have moves that are either too abrupt or need a bigger blend.
position_deviation_warning(), you can place a threshold in there, we use 0.8 and it will log anything the position deviation exceeds that threshold. Incorrect payload can cause them, moves that are too abrupt, moves that need to be blended more, running into something will all cause that protective stop error.
Another error to look for is C70 as that indicates the gearbox has been damaged, you will see them in the logs if that is the case.
Yes, we do have a pretty big end effector which is used to pick up objects. We set eh payload for the end effector without the object (give or take), if I remember correctly.
During debugging we also tried running with safety limits set to “least restricted” mode and seems it helped though we didn’t run many tests.Though most likely, at least now, we don’t want to run in that mode as the robot moves too fast.