btrettel's Nerf blog

random thoughts about the ballistics of foam darts

boltsniper’s optimal barrel length formula

Posted by btrettel on June 11, 2011

Edit 2024-12-08: Do not use boltsniper’s optimal barrel length formula. It is inaccurate. I am continually surprised by the people who seem to skim read this post and don’t realize that I’m arguing against using boltsniper’s formula.

Whenever there is a thread about one of the holy grails of Nerf ballistics, an equation for the barrel length that maximizes performance, someone is bound to mention the results of some tests boltsniper did in 2005 when he was designing the FAR. boltsniper, for the uninitiated, is one of the few engineers in the Nerf hobby, so his words have some authority behind them. People generally misrepresent what he said and overstate this formula’s abilities. What boltsniper actually said is written below. The emphasis is mine.

I did some experimentation to determine what would be the optimal barrel length for a given plunger size.  The goal was to find the barrel length for which the dart would exit the barrel as the plunger reaches the end of the plunger tube.  I started off by matching the volume of the plunger to the volume of the barrel.  I knew that this was going to produce too long a barrel but it was a good place to start.  This would assume that the air inside the plunger and barrel is incompressible and that there are no leaks.  In the real world this is not the case.  I reduced the barrel length until I had found the length at which the dart was leaving the barrel as the plunger was reaching its stop, coinciding with the maximum attainable range.  Experimentally the plunger volume seems to be about 4 times that of the barrel.  The relation for barrel to plunger size can be summed up in the following equation,

4 \pi r_b^2 l_b = \pi r_p^2 l_p

where r_b is the barrel radius, r_p is the plunger radius, l_b is the barrel length, and l_p is the plunger length.  For Nerf applications the barrel is almost always 1/2″ PVC or CPVC.  r_b can then be set as a constant at 0.25″ and removed from the equation.  Since we are trying to solve for the barrel length with a given plunger size, the equation can be rearranged and simplified to:

l_b = D_p^2 l_p

This simple equation makes it easy to roughly but quickly size a barrel to a given plunger.  The equation could also be used to size a plunger for a given length barrel.  This equation is based on experimental data and is not perfect.  Four is not the golden number.  This produces the optimal barrel length for the situation I was testing.  The type of dart, dart-barrel friction, and total system volume will likely effect the optimal ratio.  Nevertheless, the above equation can be used as a starting point.

The last paragraph seems to be completely ignored by most people who use this formula. At best it’s a starting point for further testing. The equation only applies to the FAR as that was all that he tested.

boltsniper later expanded on the restrictions on the use of this formula at NerfHaven. (Again, the emphasis is my own.)

I derived that empirically and more importantly it was derived for the specific situation I intended on using it for: a plunger weapon. It will not work for a compressed air system. One of the big factors I used to come up with that was the lack of compressibility. I later factored that in with a constant that was derived empirically. My tests were with a setup exactly like I was going to use on a the finished product. If you scale the system down that magic constant may not hold true.

There are too many variables to analytically design the optimal barrel length. If you are going to build or mod a spring gun the equation I provided may be a good starting point. That equation gives a barrel length that is slightly too long, so to obtain the optimal length you are going to have to go shorter.

The only real way to do it is experimentally.

The short message is that this equation only applies for the situation he was testing for.

But does it even apply for that situation? I’d argue no. boltsniper wasn’t testing for optimal barrel length. In his own words (which I emphasized above), boltsniper’s “goal was to find the barrel length for which the dart would exit the barrel as the plunger reaches the end of the plunger tube.” This does not coincide with when performance peaks based on my understanding of the interior ballistic processes.

Performance is maximized when acceleration slows to zero. If the plunger is at the end of the plunger tube, the pressure is approximately maximized. This corresponds to maximum acceleration because the force is maximized, not maximum velocity. The ideal barrel length is definitely longer in this case.

(I’ll mostly ignore the question of how he knew the plunger struck the end of the tube when the dart left. I seriously question how he determined that. The entire process occurs in a fraction of a second. He’d need a high speed camera with a clear plunger tube and barrel, some other optimal system, some acoustic system, some similar combination, or something I’m not considering to actually determine this with accuracy.)

In summary, this formula should not be used for general purpose design to approximate ideal barrel length. I suggest using a chronometer, ballistic pendulum, or some other device or procedure to measure the muzzle velocity or where it stops increasing as the barrel length is changed. Alternatively, range can be measured, but please note that drag can cause range to not increase from increases in muzzle velocity, the performance parameter that we’re examining.

If more general-purpose approximations are wanted, I have developed approximate equations for ideal barrel length of pneumatics and springers based on adiabatic process relationships. These equations apply when the pressure in the barrel approximately equals the pressure in the gas chamber or plunger tube. For pneumatics, this is valid for very fast and high speed valves and very heavy projectiles. For springers, this is valid for very heavy projectiles. How heavy “very heavy” is depends on the situation, and I have not fully developed a criteria to determine this. The link contains an approximation I developed a year ago.

Posted in Design, Interior ballistics, Math, Misconceptions | Comments Off on boltsniper’s optimal barrel length formula

Solving the point mass model of a dart’s trajectory, part one

Posted by btrettel on June 7, 2011

This blog post is relatively math heavy and it serves mostly as notes for my own use. I will assume some familiarity with differential calculus and ordinary differential equations. I also will assume some familiarity with the basic equations that govern the motion of Nerf darts after they leave the barrel.

Yesterday I had an epiphany while in the shower about a potential approach to solve the equations for the trajectory of a point mass with quadratic drag. This is a simplification to the standard equations of motion for the trajectory of a point mass in 2D with quadratic drag. These equations are presented below without derivation (or an explanation of what k is).

EOM in x: \ddot{x} = -k \dot{x} \sqrt{\dot{x}^2 + \dot{y}^2}

EOM in y: \ddot{y} = -k \dot{y} \sqrt{\dot{x}^2 + \dot{y}^2} - g

These are two coupled non-linear ODEs. To the best of my knowledge, there is no known solution in terms of elementary functions. You either have to define new functions to solve these equations or solve them numerically, as I have done in the past.

But we can do a few tricks to get an okay approximation. Note that the vast majority of shots from Nerf guns are level. Basically, this means that the y component of velocity is far smaller than the x component. If we ignore drag and solve \ddot{y} = -g directly, we can find that the maximum velocity of a Nerf dart in the y direction is less than 10 m/s. But Nerf darts almost always will be traveling faster than 30 m/s. If we assume that \sqrt{\dot{x}^2 + \dot{y}^2} \approx \dot{x} we commit at worst a 5% error if the x velocity stays above 30 m/s. This is the assumption I will make.

For an even better approximation, there are a few things that could be done. A perturbation method could be used. A guess for \dot{y} could be made; \dot{y} = -g t, the y velocity neglecting drag, might be good for a conservative approximation. We could assume that \dot{y} is a function of \dot{x} or another variable (like the height, or range), perhaps even a multiple of it. The multiple case reduces to an extra factor the drag coefficient (already a fudge factor for our purposes) can absorb. I will not take any of these approaches as I am only exploring potentially valid solutions now.

With my assumption in mind, I’ll rewrite the EOM.

EOM in x: \ddot{x} = -k \dot{x}^2

EOM in y: \ddot{y} = -k \dot{x} \dot{y} - g

These equations are now uncoupled and only the first one is non-linear. I can solve for \dot{x} directly and substitute that into the second EOM.

\dot{x} can be solved for by doing the following change of variables:

z \equiv \dot{x}^2 \longrightarrow \dot{z} = 2 \dot{x} \ddot{x} \longrightarrow \ddot{x} = \displaystyle \frac{\dot{z}}{2 \sqrt{z}} \longrightarrow \dot{z} = -2 k z^{\tfrac{3}{2}} \longrightarrow z^{-\tfrac{1}{2}} = k t + c

I can substitute back in my definition for z to get \dot{x}. I’ll use the initial condition \dot{x}(t = 0) = V_0 to get the complete solution.

\dot{x} = \displaystyle \frac{1}{k t +c} \longrightarrow \dot{x}(t) = \displaystyle \frac{V_0}{V_0 k t + 1}

Now we must solve the EOM in y. The equation is written below with \dot{x} substituted in. I defined A \equiv k V_0.

\ddot{y} = -\displaystyle \frac{A \dot{y}}{A t + 1} - g

I will use a change of variables and omit most of the details. \xi = \text{ln}(A t + 1)

The ODE with these changes becomes y_{\xi \xi} = - \displaystyle \frac{g e^{2 \xi}}{A^2} where the subscript represents differentiation with respect to that variable. The general solution for this ODE is y = B \xi + C - \displaystyle \frac{g e^{2 \xi}}{4 A^2}.

Substituting back in for y and t and using the ICs \dot{y}(0) = 0 (the dart does not start with any vertical velocity as it is fired flat) and y(0) = h where h is the height of the barrel I arrive at the following equation for the dart’s y position as a function of time.

y(t) = h + \displaystyle \frac{g}{2 (k V_0)^2} \text{ln}(k V_0 t + 1) - \displaystyle \frac{g t}{2 k V_0} - \displaystyle \frac{g t^2}{4}

This is correct. You can solve for \dot{y} and \ddot{y} and substitute back into the ODE to check. You can also check the ICs; they are satisfied. Additionally, the solution approaches the solution without drag. At first I thought it did not, but it can be shown to approach this solution exactly with Taylor series expansion.

To get the range, we must find time  the dart hits the ground. Yet the equation above can not be solved for t explicitly.

So I can find an approximate solution that is undesirable because I can’t proceed to get the range equation. I can think of a few options from here. One is to approximate the equation for y to find an approximate time. Another is to modify the original ODEs in a way that allows for the time to be found. Yet another is to use the identity \ddot{x} dx =\dot{x} d \dot{x} (and the equivalent for y) to avoid time all together, but this approach has another problem: what \dot{x} and \dot{y} correspond to when the dart strikes the ground?

In my next post I will prove that this solution is correct and converges to the solution without drag as k \rightarrow \infty and develop some approximations for different scenarios.

(I had some incorrect ramblings here before. They have been removed.)

Edit: In the next post I will show how the form of the solution for x(t) probably will save us and allow an explicit equation for the range to be formed. x(t) = \displaystyle \frac{\text{ln}(V_0 k t + 1)}{k}. Note that this allows us to replace the ln term in the y equation with a multiple of x. x = R (the range) when the dart hits the ground… this may allow us to find the time the dart hits the ground as a function of R, which we can substitute back into the x equation to solve (hopefully) for R. That is the outline of what I will attempt now.

Edit again: I believe this is an adequate approximate equation for the range of a flat fired Nerf gun:

R = \displaystyle \frac{1}{C} \text{ln} \left(\frac{h (C V_0)^2}{g} + 1 + \text{ln} \left(\frac{h (C V_0)^2}{g} + 1 \right) \right), where C \equiv \displaystyle \frac{\rho_{atm} C_d A}{m} .

An okay simpler approximation follows.

R = \displaystyle \frac{1}{C} \text{ln} \left(\frac{h (C  V_0)^2}{g} + \frac{27}{25} \right)

Posted in Exterior ballistics, Math | Leave a Comment »

Approximate expansion diameter of latex tubing

Posted by btrettel on June 5, 2011

I previously wrote about how to estimate the expansion diameter of latex tubing, but I made no measurements to verify that the formula I suggested, 8.5 D_i + 2 t where D_i is the unexpanded inner diameter of the tube and t is the unexpanded tube wall thickness, was accurate.

Back in 2010, I made some measurements for tests that were aborted as the tubes continually burst. I was testing higher pressure tubes. These tubes have a tendency to burst and they are extremely loud when they burst if you fill them with air. I do not suggest testing latex tubes with air for this reason.

So, I have three data points and a reasonable understanding of the geometry of these tubes. I’ll make a better estimate for expansion diameter.

I’ll start with a few assumptions. When the tube expands, it is assumed to stop expanding when its expanded inner diameter equals a certain multiple of the unexpanded diameter. This is justifiable based on the observed behavior of the rubber. The Gent hyperelastic model makes the same assumption. My second assumption is that when the tube is fully expanded the cross sectional area of the expanded tube is a multiple of the cross sectional area of the unexpanded tube. I originally anticipated these areas would be equal as I know for small deformations, rubber is approximately incompressible (i.e. the volume is preserved). But that’s only applicable for volume, not area; the tube is expanding in length too. Also, it is only applicable for small deformations. I do not know how the rubber will act for large deformations.

D_o is the outer diameter of the tube. D_i is the inner diameter of the tube. t is the tube wall thickness. The superscript e refers to the expanded state. A variable or constant without e is in the unexpanded state or it does not refer to any state (like the constants).

A = \tfrac{\pi}{4} (D_o^2-D_i^2) is the equation for the cross sectional area of the unexpanded tube.

A^e = \tfrac{\pi}{4} [(D_o^e)^2-(D_i^e)^2] is the equation for the cross sectional area of the expanded tube.

D_i^e = C_1 D_i is my assumption about when the tubes stop expanding.

A^e = C_2 A, where C_2 is my assumption about the cross sectional areas of the tubes when they stop expanding.

Plugging all these equations together and solving for D_o^e, I find that D_o^e = \sqrt{C_1^2 D_i^2 + 4 t C_2 (D_i + t_i)}.

The data points I have available:

  • Unexpanded ID: 3/8″, wall thickness: 3/16″, expanded OD: a bit more than 3″ (from memory)
  • Unexpanded ID: 1/8″, wall thickness: 3/16″, expanded OD: 1.25″
  • Unexpanded ID: 1/8″, wall thickness: 7/32″, expanded OD: 1.375″

A linear regression leads toC_1 = 7.35 andC_2 = 3.33 (R^2 = 0.9999, which would definitely be lower if there were more data points). These constants seem reasonable given my understanding of the phenomena, so it is reasonable to accept that the tubes’ inner diameters expand to about 7.35 times their original inner diameter and the cross sectional area increases by 3.33 times.

The equation above with these constants can be used to find the expanded outer diameter. The equation with C_1 can find the expanded inner diameter. The definition D_o^e = D_i^e + 2 t^e can find the expanded wall thickness.

Further tests are necessary, but this formula is the best I can do with the data I have on hand.

An equation for the inner diameter of a tube if the outer diameter is restricted (i.e. does not fully expand) follows. This is based on the assumption that the area ratio scales linearly with the inner diameter ratio.

D_i^e = (C_1 D_i)^{-1} [\sqrt{4(t C_2)^2 (D_i + t)^2 + (C_1 D_i)^2 (D_o^e)^2} - 2 t C_2 (D_i + t)]

Posted in Design, Math, Pneumatics, Uncategorized | Leave a Comment »

Next two months

Posted by btrettel on June 1, 2011

Sorry all, but I’ll be basically inaccessible for the next two months. At the moment I’m working at NIST with Randy McDermott and I’m staying at a hotel with terrible internet. I’ll see what I can do on weekends.

Posted in Uncategorized | Leave a Comment »

My challenge to Nerf rifling believers

Posted by btrettel on April 17, 2011

Do you believe most Nerf darts can be made more stable by spinning? If so, this challenge is for you!

The challenge is simple: Provide objective and statistically significant evidence that spinning darts improves stability, precision, or range.

Some notes

Rifling barrels for Nerf has already been thoroughly debunked. To say it in brief, the vast majority of Nerf darts are already stable, so they  have nothing to gain by spinning. In fact, they have a lot to lose, and this is often ignored by rifling believers.

So far, rifling believers have singularly failed to provide strong evidence to support their claims. Whenever they do, their results are shown to actually not be statistically different than what you would expect from smoothbores.

Also, tests are very often completely subjective. The results of many tests are simply “it looked better.” A subjective test like examining the dart’s trajectory could potentially be useful, but only when the experiment is properly designed. The tests must be blinded to have any shred of objectivity.

I don’t care how the spinning is done as long as the darts can be verified to be spinning too.

Posted in Exterior ballistics, Misconceptions | Leave a Comment »

Nerf Engineering forum

Posted by btrettel on April 7, 2011

The Nerf Engineering forum is now open. I’m receptive to suggestions, so let me know at the forum if you have any ideas, especially with regard to its organization.

Posted in Uncategorized | Leave a Comment »

Temporary NerfHaven archive

Posted by btrettel on April 6, 2011

I have made a temporary NerfHaven archive for those who wish to browse threads while NH is down.

Also, would anyone be interested in a small forum for this blog? I am thinking I’d like to discuss some topics not typically covered at Nerf forums, like, for example, “concept” threads (where the merits of a concept are discussed), ballistic modeling, engineering, and advanced pneumatic Nerf guns. I basically just want a place where like-minded folks can discuss some things not typically covered elsewhere.

Posted in Uncategorized | 4 Comments »

NerfHaven hack 2011

Posted by btrettel on April 1, 2011

There has been much speculation about what precisely is going on at NerfHaven recently. The problems at NH are not an April Fools’ joke. The forum software NH uses is vulnerable to SQL injection attacks, and based on the available evidence, it seems that a hacker decided to gets some kicks by screwing with NH.

I should remind my readers that something similar happened back in 2006, and NH is still running fine. If you are truly paranoid, you can download every thread at NH as of March 30st here.

The problems will be remedied by cx once he has the time. Please be patient until then. I suggest changing your password to something that you do not use on any other websites in the meantime, as the hacker could potentially decrypt bad passwords with the access he has right now. This, of course, is unlikely, but if you are security-conscious, it’s a good idea.

Posted in Uncategorized | Leave a Comment »

Electro-Pneumatic Revolver by PVC Arsenal 17 build log

Posted by btrettel on February 20, 2011

Check out this interesting project by PVC Arsenal 17.

For those who were wondering, I’m still alive, but I am kept extremely busy with school work. Two grad. classes (one mech. eng., the other applied math), two advanced undergrad. classes (one math, the other mech. eng.), and the senior design course will keep you busy!

Unfortunately, due to my extremely busy schedule, I’ll be posting here less often over the next few weeks, and I’ll be basically impossible to find on IRC and at NerfHaven. You can email me if you want to contact me.

Posted in Pneumatics | 1 Comment »

FANG1 problems and solutions

Posted by btrettel on February 2, 2011

Back in summer 2010 I decided that I should return to the “projectile-pusher” approach I used in FANG1. I gave up on this approach far too easily. FANG1 worked, but was unreliable. When I started planning FANG2 I considered the unreliability to be inherent to the projectile-pusher design and that nothing could be done about it.

Now I will systematically go through all of the problems I can recall and propose solutions.

Pinching of the darts in the breech

Darts could be simultaneously in the breech and the magazine. This seems to have been caused by the darts buckling which caused the dart back end to pop out of the breech and go into the magazine.

Potential solutions:

  • Reduce the dart length. The critical bucking force depends strongly on the length of the dart. The darts I used in FANG1 were atypically long at 2″ anyway, so this would make my darts closer to typical darts.
  • Add a flow control valve before the pilot valve. The problem may be caused by the bolt moving too fast for the dart to move, causing the buckling as one end wants to move but the other wants to stay. Slowing down the speed of the air cylinder is one way to solve this problem.  Note that the flow control valve must go before the pilot valve in the air circuit as this is the only location that will not impact performance when firing.
  • Reduce the force applied by the air cylinder. There are two ways to do this. Either the pressure could be reduced or the diameter of the air cylinder could be reduced.
  • Have a tapered dart entrance. This would make one end being stuck more difficult.
  • Have a domed dart head. This would make one end entering the breech easier.
  • Use a larger diameter foam. This would increase the critical buckling force, however, it is not practical as the vast majority of darts have a diameter of about 0.53 inches.
  • Increasing the friction coefficient of the back of the dart or the front end of the bolt. This would allow for the bolt to grip the top of the dart better, hopefully making the dart popping out from buckling more difficult and/or changing the effective length factor.
  • Add a spike to the front end of the bolt. This would allow the darts to be impaled, immobilizing them such that they can’t pop and and be pinched. However, this has several distinct disadvantages:
    • Could potentially cause harm if fingers/other body parts are caught in the breech area.
    • Might impale the wrong part of the dart, decreasing reliability.
    • Holes in the back of the dart could accumulate, eventually making them incapable of being impaled.
    • Impaling might have a negative effect on performance if it makes the equivalent static friction too high. However, this might also increase performance.

Darts get caught in the empty space between the magazine side and bolt tube

This problem is not shown in the photo above, but the problem’s cause can be seen. When the bolt moves forward and a dart is pushed into the breech, often friction pulls another dart into the space between the bolt tube. When the bolt retracts, this dart most often is also pulled back, but this does not always happen.

The actual problem is shown in an approximate drawing below.

The solution to this problem is simple: Ensure that both sides of the magazine are smooth up until the dart entry point. (I want both sides to be smooth to prevent this from occurring on the other side of the magazine.)

Darts get caught on the threads from the bolt

Rarely the darts would buckle in the opposite direction as they did when they were pinched between the bolt and the tube. They’d be caught between the threads of the front part of the bolt (visible in this image in the center) and the bolt tube. The darts would be stuck here until they were cleared by hand, usually, as I recall.

Unfortunately, it seems that I have lost my photos of the construction of FANG1, but a few photos I put online are still available, hence the link to the image above.

One solution to this problem is to make that part of the bolt smooth. Another solution is to increase the diameter of that part. Unfortunately, that leads to flow restrictions. Yet another solution might involve extending the wider part of the bolt and having a flow path through the solid bolt. And yet another solution is to shorten that part, which will make the dart more likely to be freed because it can not go as deep. Likely, I will only be able to make the problem part smooth and reduce the length of the extension, and hopefully this will be adequate.

Bolt does not return

Sometimes the bolt would not return. This was caused by a weak return spring and excess friction in the bolt. Some obvious solutions include making the return spring stronger and lubricating the bolt.

I may use an air spring in FANG4 for the return. This would allow me to have full control over the return force.

Darts can feed at the wrong angle

The magazine follower wasn’t made correctly so that darts could feed in at the wrong angle. If the follower was made a little wider, this would not have been a problem.

Jams can’t easily be cleared

When FANG1 jammed, I often would have to disassemble part of the gun to remove the jam if it could not be cleared by cycling the gun a few times. Easy access to the bolt area is necessary to clear the jams, as is some sort of switch to ensure that the bolt is retracted.

Barrel can be dented

FANG1 used unexposed brass. This is prone to being dented, and the dents could affect seal or cause the bolt to lock up. Some sort of sleeve around the brass where used is necessary. Replacement of brass where it does not need to be used (like in the barrel) with a stronger material like aluminum (the available aluminum barrels are far thicker) also avoids this problem.

Many sizes of brass are used

In FANG1 I used four different sizes of brass. One was for the bolt, one was for the barrel, and the other two were there because I didn’t have a 9/16″ drill bit. These two are not necessary at all. They only increase cost and weight. They can be removed if I get a 9/16″ drill bit or use someone else’s machine shop.

The barrel assembly leaks

As I did not seal the barrel assembly in any fashion, there probably were non-negligible leaks. Sealing the barrel assembly with something like epoxy or O-rings would be desirable.

Difficulty loading

Loading the magazine was fairly difficult as FANG1 never was intended to be a practical blaster. I’d have to pull on a string to move the follower down and then manually insert darts into the magazine. I’d like to replace the string with a piece of metal much like BS-9 and add some sort of locking mechanism to keep it open while loading.

I should also pay attention to make loading darts correctly as easy as possible. Loading darts incorrectly was very easy with FANG1. I’m not quite sure how to do this, but I’ll give it some thought.

These are the main problems with the performance and functionality of FANG1 that I intend to address in FANG4. There are many other problems, most of which stem from a lack of features. For example, FANG1 did not have a pump, which I now consider to be a problem. FANG1 also had a rather primitive magazine system; I still intend to use an internal magazine, but I want to make it more robust. I may detail these other improvements and changes in a future post.

Posted in Design, FANG4 | 2 Comments »