# Bin picking - singularity problem

• Hi,

I have problems with singularity on Bin picking cell. The Vision system is giving me location of the part (FRAME type information) and after i get the info that part is ready for picking i have PTP move 200mm above the location. Then i have LIN move to the point of picking.

I know that is LIN move problem for singularity and i already have set \$CP_VEL_TYPE to #VAR_ALL. But is it possible that the robot chose another path that is not near singularity or what to use that resolve the problem?

CODE:

In the attach is picture where the robot is in singularity.

ROBOT: KR16 1610mm
KRC: KRC4 standart
KSS: v8.3.17

Best regards

## Files

• You're literally telling the robot to stick to this and only this, linear, direct path between two points by using a LIN move. That's why it will never move in a different direction unless you tell it to.
If you want it to avoid a singularity, use a PTP path, or rotate the axis manually to a position that doesn't cause a singularity before executing the LIN move.

• Yeah i stick to linear move because if i have PTP move it is possible for collision. For better understanding the paths of robot see attachment. This robot does never have the same path because the parts (elements) are always in different location inside bin.

## Files

Edited once, last by Knezo ().

• Vision system have primary and secondary system. Primary system sends me location of part (FRAME type). On secondary system i scan picked part (2D picture) and the system send me correction for fine placing. Correction is in X, Y and A coordinates (gripper magnet, known Z=0, B and C orientation). So the orientation of the part is important, because the location where i place the part i have limited movemend (limits for correction of X,Y and A).

So if i understand properly \$ORI_TYPE=#JOINT causes unknown rotation of TCP in A,B and C orientation. So if its this the case than this is not possible.

• Normally, in an application like this, I make my move to the pre-pickup point in PTP, and only use LIN for the final move to engage the part, and keep the LIN moves to low speed. This usually allows me to avoid the A4/A6 over-speed errors. It might be necessary to create another "over-bin" PTP move, offset from the pre-pick move, to minimize the collision potential for the PTP motion. Something like this:

Done correctly, the PTP moves will be similar enough to LINs that collision risks should be greatly reduced.

Another option would be to predict the singularities using the INVERSE function, checking the A5 value, and creating a program branch to avoid being stopped by the singularity. Options:
1. Reduce speed if singularity is predicted
2. Skip the part and ask the vision system for the next-best part to pick up (hopefully the "stirring" of the bin will shift the parts around

• each robot should have KUE_WEG.SRC somewhere on C:\KRC....
this tries to move robot to end point so that wrist moves as little as possible.
Not sure what the program name means.... maybe "kuerzeste weg"

2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

• Sorry that i didn't end this conversation. Lot of work in robot field I solve the problem with calculating inverse kinematic and i tell to vision system that this part is not reachable for the robot

Thanks guys!

Create an account