The problem is that, after some tests, the robot moves to the coordinate Y correctly but the coordinate X seems to variate randomly,
What exactly does this mean, you really need to be more specific when you talk about random as to what is actually random?
- Random as in values received.
- Random as in positive or negative values.
- Random as in what sort of range differences - are we talking 1mm, 10mm, 100mm etc.
If coordinate value in camera is exactly the same as what is received at robot side, then some other factors could have an effect on physical positions, such as:
- Physical EOAT, Robot or Conveyor not suitably mounted and secured.
- Speed checking, is there better results during slower speeds or no difference.
- Encoder resolutions and settings, are these used directly at robot side and set accurately.
- TCP values accurate with physical EOAT mounted.
- Physical EOAT mounting must be same as TCP values used.
- Physical alignment of robot to conveyor must be accurate or drift can occur over long distance.
- If part on conveyor changes position on belt after camera during travel.
- If conveyor belt itself is not parallel all the time during conveyor motion.
- If conveyor belt and encoder are coupled without missing pulses during motion - belt slipping.
I notice you have 175 value for A element, why is this?
- Can you provide image of layout of robot position relative to conveyor.