I need to plan path for robotic arm(having a tennis racquet as end-effector) whose aim is to hit a tennis ball in a specific direction(to return ball to the opponent). Now I have an algorithm which moves the arm to the position(in the desired position and orientation of the racquet) where ball is expected to be(in a linear path shown in image below) . But the racquet just touches the ball because there is no momentum. Due to this, the ball falls nearby and does not reaches the opponent.
In the image below:
- Red Dot -> Starting position of end effector.
- Dark Blue Dot -> End position of end effector.
- Pink Line -> The desired orientation(face of the racquet) to hit the ball.
- Dotted Light Blue Line -> Desired ball trajectory after being hit by the racquet.
- Green Line -> Current trajectory.
I need to find a curvy trajectory(how humans hit the tennis ball, how they generate a swing) between 2 given points to achieve a desired momentum at the end point so that the ball can reach the opponent. Refer the desired trajectory image below.
In the image below:
- Red Dot -> Starting position of end effector.
- Dark Blue Dot -> End position of end effector.
- Pink Line -> The desired orientation(face of the racquet) to hit the ball.
- Dotted Light Blue Line -> Desired ball trajectory after being hit by the racquet.
- Green Line -> Desired trajectory.
In this image, the green trajectory is expected to generate a better momentum in the desired direction(the light blue line).
QUESTION:
- How to generate trajectory between 2 points to achieve a desired(or maximum) momentum at the end point(second point)?