Physics of the Linear Puncher

After last week’s competition our team decided to jump on the linear puncher bandwagon. Some teams had so much success with the punchers that, even though we believe in flywheels, it would be foolish for us not to explore this design.

While flywheels may need complex software to be successful, linear puncher could be implemented with a single line of code. It is mechanical design and build quality that determine success of a puncher.

This thread will try to explore why some of the linear punchers are performing better than others and what you need to know to make your launcher a winning design.

To start the discussion, here is video of our prototype shooting 20 balls in 30 seconds.

It is a “classic” design with 36-6t slip gear driven by a single high-speed motor via 12t pinions. It is not very accurate in the horizontal direction, since it wasn’t mounted on the robot. Actually, I was surprised that so many balls made it into the high goal despite the cavalier way technik jr was loading them.

An important takeaway is that a single motor provides enough power for sustained full-court shoots every 1.5 sec. In fact, when run by a single turbo motor it could still launch about 30 balls at a rate of 1.2 sec per ball but then PTC would trip.

Another important note is that this puncher uses quite high parabolic trajectory which makes it less accurate with the balls of varying densities. To ensure the high accuracy you may want to make it overpowered, shooting at the lower angle directly into the high goal.

So what do you need to know if you want to build an efficient puncher? The following graph demonstrates linear puncher dynamics plotting piston position, velocity, and acceleration as it armed and launches the ball:


I will go into details of this graph as well as dependence of the launcher performance and efficiency on various design parameters in the following few posts.

First of all, everybody needs to understand how the energy flows through the system.

Rubber bands for the linear puncher design are what flywheels are in the namesake launcher: they store the energy.

For the most part of the launch cycle motors pump energy into the system by stretching rubber bands. Yellow curve on the bottom of the graph shows the reaction force from the rubber bands. The more piston moves down the more rubber bands stretch and the more force there is. We will assume that the magnitude of that force is linearly proportional to the piston position.

Then, when gear slips, potential energy stored in the bands is released toward accelerating the piston, transforming into kinetic energy of the moving piston.

Piston will hit the the ball and transfer part of its energy in partially inelastic collision. Compression shock waves will travel through the ball. At some point ball’s mean velocity will match that of the decelerated piston.

Ideally, only after ball gets all the velocity it could from the piston, the piston will hit backstop releasing the rest of its kinetic energy in the collision with the launcher base.

Then piston will come to rest and, if you timed it right, the gear will recapture the piston at this point and start the next launch cycle.

Really interesting information and graph, thanks for starting this thread.
I was wondering why the acceleration curve spikes up near the “gear slip” position? I feel like it should mirror the force from the rubberbands. Since F=ma, wouldn’t acceleration be proportional to the force?

Great launcher, do you have any close up pictures. At the beginning of the season we did not want to build flywheels like everyone else, we are working on our linear puncher with 2 motors but still having trouble shooting full court

So In the video of the linear puncher, how many teeth are cut off of the 36 tooth gear? Also how many rubber bands are u using?

I’m excited to see what comes out of this thread. The Physics of the Flywheel Launcher thread was really helpful for our flywheel design, and we recently started developing a puncher as well. Hopefully this thread will be just as helpful! =)

The gear slip is the point when the energy source changes. While the gear is engaged, the motors transfer energy to the system, which is stored in the rubber bands. That is the low acceleration and even velocity part of the graph, because the motors can only turn so fast under a certain load. Then the gear slips, and the motors stop transferring energy. The rubber bands, with nothing fighting their constant force, act on the puncher, releasing the stored elastic force and accelerating the puncher. Because of how rubber bands behave, the acceleration continues until the rubber bands return to their original size.

I’m not sure about the number of rubber bands, but @technik3k said somewhere that it has 30 teeth on and 6 off.

@lpieroni is correct about the jump in the acceleration curve - the force layout changes at that point. Before the gear slip, reactive force of the rubber bands is counteracted with the force coming out of the motor. After the slip the same reactive force is counteracted by the resistance of the piston to accelerate via F=ma, that @FarceSolid correctly identified. The lighter the piston is the faster it will accelerate.

Similarly, two large spikes in piston deceleration are due to it hitting (and start interacting) first with the ball and then with the backstop.

The graph is, obviously, not to scale, but I tried to capture all the important processes. For example, notice that in the section before gear slips position, velocity, acceleration, and reactive force all do not follow the straight lines. This is because as reactive force of the rubber bands grow the motors will slow down to provide increased torque.

Also, even though on the graph recoil section is longer than punch, when we reviewed slow-mo video of the launch we couldn’t see much of the recoil, so it must be very short.

The gear is 36t with 6t shaved off. It could, probably, be decreased to 5t by tightening some tolerances. You cannot see it in the picture below, but there isn’t anything special about it.


The rubber bands are actually not VEX legal - they are longer #117B from Advantage brand. We had hard time getting consistent results with #32. I suspect it is because we have several year old non-brand package. I’ve ordered fresh pack of Advantage #32 online and hope they will be of a better quality.

Getting elastics right was very frustrating experience in the last few days and made technik jr even more ardent advocate of the flywheels. If we are to put this launcher on a robot, the right thing would be to overpower it by putting much more elastics, adding a second motor and, aiming it directly into the high goal. This way consistency in the rubber band behavior from ball to ball wouldn’t matter.

I have seen lots of piston shooters recently, but only one was really quiet. Somehow he is stopping it with no hard metal stops. What are some of the ways to stop the piston without slamming into metal and bending parts?

2R used the braided nylon rope as a stop from the back.

Oh ok, that definitely makes sense. I was confusing the downwards peak in the acceleration (for some reason I thought that represented the acceleration of the puncher towards the ball). Thanks!

The key is to reduce the force that the puncher and stop experience by slowing the deceleration. I’m guessing that the braided nylon rope stretches a little bit, which prevents whatever it is tied to from bending. I use rubber links to accomplish the same thing on my design.

so I use a white spacer to stop my puncher but what I’m getting from this is I shouldn’t use it so my shooter will all ways be in motion so that it will go faster @technik3k @4256

for stopping the piston from hitting too hard, a secondary stopping system is needed. When you shoot, allow the piston to travel much further than needed. Designate a ‘launch zone’ the farthest point where the ball makes contact with the launcher. Past that point. use rubber bands to create a massive deceleration zone. I created a puncher that only needs 2cm to stop the piston while maintaining the same power as it did before the system was created. The system I mad had axles attached to the piston and c-channels around it, once the piston passes the launch zone, it is slowed down by the rubber bands and readied for the next ball. This means no metal part hit any other metal parts.

Increasing the deceleration would mean adding padding or somehow increasing the time it takes to stop the pin.

Try what I did, allow the piston to go past the stopping zone. After the ball launches, have an area where the piston is slowed down by rubber bands.

Think about a slingshot. After the pellet launches, the rubber bands slow down the velocity of the holder so that is does not travel much farther. The pistons that people create is like adding a wall and only allowing the pellet to go through it.

If your puncher isn’t bending any metal with just a white spacer then I wouldn’t worry about changing it. Adding some kind of impact dampener will not make your shooter go faster.

Yes, you would expect that efficient launcher will be very quiet, because every time it makes a noise some of the energy is leaking with it.

The rope may work very well . We tried it originally but it was getting caught in the gears. It is definitely worth revisiting.

Rubber bands seem to be the most gentle way to stop the piston. We tried that too, but the piston would not end up in the same exact location after each stop. This was causing some difficulties during the gear recapture. I would like to try this again with some tweaks.

At the end, the decision was made to remove as much weight from the piston as possible to reduce the amount of the residual kinetic energy when it hits the stop. Out of all the parts we tried to stop it, white spacers and rubberized tank threads seem to work the best. At least, they are not getting destroyed as fast as the others.

We had installed new #32 rubber bands and the launcher started performing even better than with #117. Either we got lucky with Advantage brand or all rubber bands gradually decay with age and lose their ability to store energy to the degree it makes difference for the puncher.

Another thing we noticed is that the slower you drive slip gear the less range you get. Apparently, the longer rubber bands are in the extended state the less energy they release when contract. The missing energy must be dissipating into heat.

Which brings us to the next observation that as the rubber bands heat up after continues use, their mechanical properties change once again. Add to that visible difference between soft and firm balls (very soft balls make a lot of popping noise but do not fly far) and you get poor accuracy if your launcher is designed for the high parabolic trajectory.

The easy option to improve puncher accuracy is to add more motor power and fire directly into the goal at a lower angle.

In addition to that, you may try to normalize rubber band tension. If you look at the rubber band force curve (yellow) on the graph in OP you will notice that it is not constant but grows as you extend it, which perfectly makes sense. However, you can control what percentage it will grow and how extended rubber bands will be at that time.

Here is example: instead of single rubber band extending from 2.5" at rest to 5.5" (+3"), you can connect two rubber bands in series (5" at rest), pretension them to 8" and then fully extend to 11" (+3"). This way your motor will have more uniform load during “charging” phase and you should be able to get even more range per a single motor unit.

And now here is the question for everybody. Imagine that you built two identical single motor punchers and put them side by side. Then connected motor axles with a shaft coupler, such that launchers run in the opposite phase, i.e. one is half way charging, when other just had slipped.

What are the pros and cons for doing that?

(I though I had a good answer until technik jr gave me a couple of points I didn’t think of)

Does that mean that when you extend from 8" to 11" the rubber band tension remains more or less constant? That’s how I saw it if you want to get uniform load when “charging” the rubber bands

Also, by doing so does that also mean that you can shoot further? The energy stored will increase and so will more energy be released to propel the ball further as well?

Yes. This is exactly correct.

Yes, that would be correct if the rubber band was behaving as an ideal spring, except the force curve wouldn’t be constant but would be half as steep.

However, the rubber bands are not ideal and will lose some of their restoring force if they stay stretched for the long time. You will need to find an optimal point between getting more work out of the motor (by making its load more uniform) and sacrificing some of the rubber band elasticity be pre-stretching it.