The falcons variant for fetch ball performs well, but there is a edge case, where the algorithm is not efficient.
In the falcons variant of fetch ball the rotation and translation are performed at the same time, where the assumption is that rotation is finished before the translation is done.
In a lot of cases this is correct. But when the ball is close to the robot, it will push the ball away.
A simple solution can be if the ball is close to the robot (radius) and not within an angle to the beak, the robot should first rotate till the ball is in front of the robot, then it should also add translation.
Discuss how to fix it (which option is preferred):
- fix in falcons variant
- create copy of falcons variant and apply fix there.
The falcons variant for fetch ball performs well, but there is a edge case, where the algorithm is not efficient.
In the falcons variant of fetch ball the rotation and translation are performed at the same time, where the assumption is that rotation is finished before the translation is done.
In a lot of cases this is correct. But when the ball is close to the robot, it will push the ball away.
A simple solution can be if the ball is close to the robot (radius) and not within an angle to the beak, the robot should first rotate till the ball is in front of the robot, then it should also add translation.
Discuss how to fix it (which option is preferred):