Physics of the Flywheel Launcher

Since many people already started prototyping their launchers I would like to begin a thread where we could share the theory and the experimental results from the flywheel launcher prototypes.

First of all, I assume that most students are either familiar with the concept of ballistic trajectories or at least heard the term. You can look up additional information in multiple sources by googling projectile+trajectory.

The basic principle you need to know is that in the absence of air, the distance traveled by ball would be:

Where θ and v are the angle and speed at which the ball is launched.

NbN balls are large and light. They have very low Ballistic Coefficient and will experience a lot of air drag.

For our purposes the most important diagram is this:

http://upload.wikimedia.org/wikipedia/commons/0/0d/Mplwp_ballistic_trajectories_velocities.svg

It is trajectories of an object with air drag and varying initial velocities for a fixed launcher angle. If you know how far the robot is from the goal you could throttle your launcher speed up and down to control where the ball’s trajectory will intersect the goal plane.

It has already been established in this thread that you need to launch the balls at 45 deg angle at about 8 m/s or 26 feet/s in order to reach the goal from your base tile.

Once you build your launcher you will need to plot actual distance vs motor power for the high and low goals. Ideally, you will create several charts for the top and bottom portions of both goals, as well as for several voltage levels of your battery. Even if you are planning to use quad encoder to know exact rotation speed of your launcher, you still want to know your limits when battery voltage goes down.

Here is a good picture of the forces acting on a flying tennis ball:

As you can see, depending on the spinning of the ball, it could receive additional lift and travel further (topspin) or land closer (underspin). I am not sure if this will be important for NbN, because our balls will travel much slower than the tennis balls.

Now we need to look in more details as what is happening inside the launcher and how it will affect initial velocity and exit angle of the ball.

FlywheelAngularMomentumTransfer.jpg

First, lets take look at the image on the left. Green ball is dropped onto the grey flywheel which is rotating clockwise.

We will assume there is good friction between ball and flywheel and there is no energy loss into the heat due to slippage and ball’s deformation (it is not true in reality but will make explanations simpler).

In the point of contact the flywheel will exert a force (due to friction) onto the ball and accelerate the ball both linearly to the right and give it some counterclockwise rotation (red arrows).

When the interaction is over the flywheel will lose some of its energy and angular momentum (it will slow down) and the ball will gain some linear and angular momentum (some additional amount of energy will inevitably be lost to heat due to the ball deformation and friction, but don’t ask about details - that’s all I know).

If you want to conduct an experiment, find a toy ball with some lines on it, so you can easily see it spinning. Rest it on the flat palm of your hand. Then swiftly move your hand horizontally to the right. The ball will end up spinning and will fall to the right of where it started.

The second image, depicts an ideal pair of flywheels spinning with exactly the same speed. The ball will be slightly squeezed between the wheels (blue arrows). The ball material will push back and this will create some friction between ball and flywheel’s surfaces.

When the interaction is over the ball will disengage from both flywheels simultaneously and angular momentum lost by flywheels will be converted into linear motion of the ball strictly perpendicular to the line connecting flywheel centers. There will be no spinning. Once again some energy will be lost to heat when squeezed ball decompresses.

However, in the real life, we will see situation depicted in the third image. It could be that the left wheel was rotating faster, the wheel’s surfaces were uneven, or the ball has some irregularities or damage. Regardless of the cause the ball has disengaged the left wheel while still interacting with the right one.

At that point ball travels forward and has some clockwise spin (red arrows). There are two forces by which it interacts with the right wheel (blue lines). First force is the result of expanding (decompressing) ball pushing against the wheel and equal but opposite force of wheel pushing the ball away. Second force is the friction between ball and wheel surface by which the flywheel still transfers some linear and counterclockwise angular momentums to the ball.

By the time the ball disengages from the right wheel it could end up flying left, right, or straight forward and having or not having some spin. I have no idea where it would go, as it depends on properties of ball materials and the reason it has disengaged from one of the wheels earlier.

If the surface of the flywheels is made as uniform as possible, contact points have exactly the same radii (from the wheel axles), and the only difference is rotation speed of the wheels - then my best guess is that it will travel to the left - in the direction of the faster wheel. But it could be just the opposite.

The bottom line is - make surface of flywheels as uniform as possible, feed the balls at the precise angle, consider adding a cannon barrel. And conduct accuracy testing with various flywheel designs - you never know what will work best with the particular types of balls for NbN game.

Finally, do not forget that, according to Nothing but Net field specifications:

So plan your launcher tolerances in advance - game objects will vary.


If anyone has a good insights into ball launching accuracy analysis and optimizations or have fresh NbN experimental results, please, share them here. I am sure the community will greatly appreciate that.

Thank you so much for this post. I think it will help a lot of the younger teams and I know it will help mine. Thank you :slight_smile:

Great job. Very impressive! I look forward to seeing what other forum members might add to this. :slight_smile:

Impressive job. This would be great for theoretical flywheel velocity calculation. While with actual distance - velocity target curve, I would actually rely on empirical testing and smart motor library.

Question: do you prefer top-spinning or bottom-spinning launcher? Or dual-wheel launcher? I remember FRC Rebound Rumble was single-wheel launcher dominated.

45 degrees at ~8 m/s. Got it Let’s build :slight_smile:

That’s interesting. Do you know why they preferred a single-wheel launcher?

Build something that gives you a higher velocity like around 12 m/s. So you can easily do PID velocity control.

I’d guess it’s because single wheel avoids the problem of the ball not going straight out if one wheel is going slightly faster than the other.

Good point. And it would be more hassle chaining them together.

These are great questions and I am sure at this point none of us have ready answers, but everybody has more ready questions. I have a lot of them collected in the last few days. First of all, lets establish a reference frame for them.

This year’s robot designs will be all about:

  1. Reliability
  2. Accuracy
  3. Speed (rate of fire in case of NbN launchers)

If you have done any engineering designs in the past it should sound very familiar. While obvious, it is so important that it worth repeating to yourself before the beginning of every design cycle.

It doesn’t matter if your launcher is accurate or fast if the intake keeps jamming on every other ball. Similarly, slow but accurate robot will outperform double barrel shooter that misses the target 90% of the times.

So let’s list some important questions and see how answers map into Reliability, Accuracy, and Speed goals as well as general game strategy ideas that you may have:

1a. Will you benefit from launching a spinning ball?

1b. Does spinning make ball’s trajectory more or less stable?

1c. Does spinning help ball’s stay in the low goal or make it easier to jump out?

1d. Does spinning wastes too much energy that could have been used to further flight distance?

2a. If you choose a single wheel design will the ramp increase accuracy over double wheel launchers?

2b. Does accuracy gains outweigh any possible disadvantages associated with launching spinning balls?

2c. Are the balls too soft and will need extra energy to overcome rolling deformation against the ramp? Single wheel launcher already needs to run at double the speed of dual rollers. This will push it even further.

  1. Will you have better horizontal accuracy if you mount flywheels on the sides vs top and bottom?

  2. Will you need cannon barrel after the flywheels to improve accuracy?

  3. Should you mechanically link flywheels or drive them with separate motors?

6a. How much should you squeeze the ball? If you do it too little you don’t have good momentum transfer. If you do it too much you increase exit angle uncertainty.

6b. How do you plan on handling (+/-) 1/8" ball size tolerances?

7a. Should you use a double barrel?

7b. Will it reduce chance of jamming of the balls coming from intake?

7c. Does it really help to increase the throughput? Launcher stage is much faster than intake anyway and will unlikely be the bottleneck.

7d. Is increased complexity of double barrel justifies any benefits you get from it?

7e. Are there any other unlisted benefits of double barrel for programming skill runs? (hint: there may be some)

8a. How much will the booster wheels slowdown after each ball?

8b. How many motors should drive the booster flywheels?

8c. Should you use a pre-boost stage to increase ball’s speed gradually?

9a. Should your intake be designed to pick balls from one side of the robot or multiple sides?

9b. How are you going to prevent jamming?

9c. How are you going to comply with “only 4 balls could be controlled at a time” restriction?

9d. Is your intake feeder-bot friendly?

9e. Do you want your intake to perform feeder-bot function?

Finally, if somebody tells you that they already have a perfect launcher design - you have to ask them only one question: how many real NbN balls did you test it with? Until you got a hold of the actual game objects it is hard to know what you need to be optimizing for.

If you can think of any more design tradeoffs / questions, please, feel free to add them.

why would you need to run the single roller at double the speed I don’t see why it wouldn’t still be the same?

That is a good question. Here is an example (from here):

Consider a bicycle wheel, where the bicycle is traveling with the speed V.

The bottom point of the wheel touches the ground and therefore has zero velocity. If you try to figure out what would be the speed of the top point of the wheel you will see that it has to be 2*V.

With launcher we have the same situation. One side of the ball touches the static ramp and is stationary. In order to speed up the ball to V you will need to make the other side of the ball to have velocity 2*V.

However the bigger problem with single flywheel is rolling resistance. You will end up loosing some energy to deform the ball and momentum transfer will be less efficient.

the simple answer is that you with a single roller you are also spinning the ball while launching it. Some spin can be a good thing if you are going for a bank shot but you will get less distance for the same energy.

ok makes sense thanks :slight_smile:

one other question I was thinking what if the point where the force was applied to the foam ball by the wheel was put closer towards the center of the ball and the point of contact of the ramp/curved plate was kept the same? I think this would give the ball a faster exit speed with the same wheel speed. is this correct or am I just completely missing the point?

Yes, that would be correct. But if you start moving booster wheel closer to the ramp… you will need to have some kind of support on the opposite side of the ball. If you think about it you will end up with one booster wheel and two back supports or one back supports and two booster wheels. If you start moving booster wheels into the optimal position you will end up with two wheel booster.

It is kind of confusing, but I will try to find some animation on youtube.

Here’s my concern, doesn’t time play into this?

IE, as the ball touches the roller an energy transfer begins. As time goes, energy from the flywheel is lost, some in friction but a lot goes into the ball.

Would increasing the time the ball contacts the roller (imagine a belt instead) ultimately launch the ball farther by giving the fly"wheel" more time to transfer energy into the ball?

OK great I was just a little unsure. My biggest concern was trying to find a launcher mechanism that could be run on two motors and I think I can make this work very well.

Yes, you are right, the time plays role here but on the very small scale. The balls are soft and light. When edge of the ball engages with the roller, the material on the balls’ edge will be almost instantaneously (from human eye perspective) accelerated to the speed of the roller. Then the shear wave will propagate through the ball. Eventually entire body of the ball is accelerated to the speed of the roller’s edge.

Here is the video of the tennis ball being hit in slow motion: https://www.youtube.com/watch?v=VHV1YbeznCo

NbN balls are not going to experience such violent oscillations, but there will be some.

I don’t think that you will benefit by replacing roller with the belt because acceleration happens very fast. If you did not mean using belt but are thinking about somehow increasing time of contact with the ball then I don’t know.

Probably, experimenting with the material that covers rollers will be the best way to find optimal launcher configuration.

So three flywheels need to provide 1/3rd the power of a single and 4, 1/4th?

Assuming all flywheels are the same and carry the same surface area and kinetic energy.