It was first inspired by this year's FRC competition - which the purpose is to put the cargos into the assigned target (baskets). In the competition, there are lower basket and upper basket, the upper basket has more point for each shot, so for the teams that chose to shoot the balls into the upper basket, the initial velocity for the shooter is important to make accurate porabola.

What it does

It is the program made by java, that will collect the user inputs: the angle of the shooter (between 0 to 90 degrees), and the x-y position of the target related to the shooter (using meter as unit). The program will determine if the shooter can reach the target or not. If it's possible, the program will show the required velocity, and the condition of the ball when it reaches the target (whether it's still flying up, or start falling down).

How we built it

We first use the kinematics equations and trigonometry to understand the relationship between the angle of the shooter, the initial velocity, and use these information to create the equation of the parabola. After getting the parabola equation, we plug in the angles of shooter and the position of target to get the equation of velocity, and the discriminant to see if the shooter can reach the target.

Challenges we ran into

Initially, we want to determine the equation with the angle as unknown, and see if it's possible to get the best angle with a fixed target position and initial velocity. But then, the problem exists: it's nearly impossible to simplify and substitute the equation into the angle form; after several attempts, we realized that it's impossible to accomplish within 36 hours, so we changed our goal to determine the initial velocity instead of angle.

Accomplishments that we're proud of

We successfully get:

  • The equation of the parabola
  • The equation of the initial velocity with fixed angle and target position
  • The discriminant to determine if it's possible to reach the target with certain angle

What we learned

  • Internal implementation when building an object
  • conditions (if statements) to prevent runtime error

What's next for Velocity in Projectile

  • Build a simulation to show the actual parabola.

Built With

Share this project: