Cannon on a Moving Cart PhysicsVelocity Addition: Ground vs Cart Frame
Introduction
Mount a cannon on a cart, roll the cart along at a steady speed, and fire a shell at an angle. To someone standing on the ground the shell traces a long, forward-leaning arc; to someone riding the cart it traces a tidy symmetric arc that rises straight over the gun and comes down the same distance ahead. Both are watching one and the same flight; they simply measure it against different things.
The difference is the cart's velocity, which the shell inherits at the instant of launch and carries unchanged through the air. In the ground frame that inherited speed adds to the launch's own horizontal component, stretching the arc downrange. In the cart's frame the cart's speed is subtracted out, leaving the plain parabola of an ordinary stationary cannon. The simulator draws either view on demand and reports both the Ground range and the Cart range so you can watch the two numbers diverge by exactly the distance the cart rolls.
This is the cannon version of a familiar idea: a ball tossed straight up inside a moving train comes back to your hand. Here the launch is angled rather than vertical, so the inherited velocity shows up not as a hidden zero offset but as a visible, measurable gap between the two ranges. With cart speed 8 m/s, launch speed 20 m/s, and angle 50°, the Ground range reads about 65 m and the Cart range about 40 m, a 25 m gap that is precisely how far the cart travels during the 3.12 s flight.
The Physics Explained
Velocities add as vectors. At the moment of firing, the shell's ground-frame velocity is the sum of two pieces: the cart's horizontal velocity, which the shell inherits, and the muzzle velocity supplied by the cannon at angle θ. Splitting the muzzle velocity into components, the horizontal part of the ground-frame velocity is vₓ = vcart + vlaunch·cos(θ), while the vertical part is vy = vlaunch·sin(θ). Only the horizontal equation carries the cart's speed; the vertical equation does not.
Because gravity acts only downward, nothing changes the shell's horizontal velocity after launch; it stays at vₓ for the whole flight. With cart speed 8 m/s, launch speed 20 m/s, and angle 50°, vₓ = 8 + 20·cos50° ≈ 20.9 m/s and vy = 20·sin50° ≈ 15.3 m/s. The vertical launch component sets everything about the up-and-down motion, untouched by the cart.
The vertical motion is ordinary free fall: the shell rises, slows, stops, and returns, taking a flight time T = 2·vy/g = 2·15.3/9.81 ≈ 3.12 s and reaching a peak height H = vy²/(2g) ≈ 12.0 m. The simulator's Time readout shows 3.12 s at landing and the Height readout tops out near 12 m, and both are completely independent of cart speed: raise or lower the cart slider and these numbers do not budge.
The horizontal story is where the cart speed lives. In the ground frame the shell covers a range Rground = vₓ·T ≈ 20.9·3.12 ≈ 65.1 m. In the cart frame the cannon is stationary, so the shell's horizontal speed is only the launch component vlaunch·cos(θ) ≈ 12.9 m/s, giving a cart-frame range Rcart ≈ 12.9·3.12 ≈ 40.2 m. The gap between them, Rground − Rcart = vcart·T ≈ 8·3.12 ≈ 25 m, is exactly the distance the cart rolls while the shell is aloft. Switch the View button and you watch the same flight described from either frame; the difference is always this one term.
Key Equations
The shell inherits the cart's speed and adds the launch's horizontal component. With vcart = 8 m/s, vlaunch = 20 m/s, and θ = 50°: vₓ = 8 + 20·cos50° ≈ 20.9 m/s, constant for the whole flight. Set the cart speed to 0 and this drops to the launch component alone, 12.9 m/s.
The cart contributes nothing vertical, so the up-and-down motion depends only on the launch. With vlaunch = 20 m/s and θ = 50°: vy = 20·sin50° ≈ 15.3 m/s, the speed at which the shell leaves the muzzle upward.
With vy ≈ 15.3 m/s and g = 9.81 m/s²: T ≈ 2·15.3/9.81 ≈ 3.12 s and H ≈ 15.3²/19.62 ≈ 12.0 m. Both are set by the vertical launch component alone, so the cart speed leaves them unchanged: the same 3.12 s flight whether the cart is parked or rolling at 12 m/s.
With vₓ ≈ 20.9 m/s and T ≈ 3.12 s: Rground ≈ 65.1 m, the value the Ground range readout reaches at landing. Raise the cart speed to 12 m/s and vₓ climbs to 24.9 m/s, stretching the ground range to about 78 m.
With the launch component 12.9 m/s and T ≈ 3.12 s: Rcart ≈ 40.2 m, independent of cart speed. The difference from the ground range is exactly vcart·T ≈ 25 m at cart speed 8 m/s, the distance the cart rolls during the flight.
Key Variables
| Symbol | Name | Unit | Meaning |
|---|---|---|---|
| vcart | Cart speed | m/s | Constant horizontal velocity of the cart and cannon |
| vlaunch | Launch speed | m/s | Muzzle speed of the shell relative to the cart |
| θ | Launch angle | ° | Angle of the muzzle above horizontal, in the cart frame |
| g | Gravitational acceleration | m/s² | Downward acceleration due to gravity; 9.81 m/s² at Earth's surface |
| vₓ | Ground horizontal velocity | m/s | The shell's sideways speed in the ground frame; vcart + vlaunch·cos θ |
| vy | Vertical velocity | m/s | The shell's upward launch speed; vlaunch·sin θ |
| T | Flight time | s | Time from launch until the shell returns to launch height |
| Rground | Ground range | m | Horizontal distance the shell covers over the ground |
| Rcart | Cart range | m | Distance from cannon to landing as seen from the moving cart |
Real World Examples
Why does a cannon firing forward from a moving tank outrange the same cannon firing from a standstill?
A shell leaving a moving cannon carries the platform's velocity added to its own muzzle velocity. Firing forward, the two horizontal speeds add, so the shell crosses the ground faster and lands farther downrange than an identical shot from a parked cannon. The simulator makes the bookkeeping visible: with launch speed 20 m/s, angle 50°, and the cart standing still, the ground-frame horizontal speed is just vlaunch·cos50° ≈ 12.9 m/s and the range is about 40 m.
Set the cart rolling forward at 8 m/s and the ground-frame horizontal speed climbs to 8 + 12.9 ≈ 20.9 m/s, stretching the Ground range readout to about 65 m: an extra 25 m, exactly the 8 m/s × 3.12 s the cart itself rolls during the flight. Push the cart to 12 m/s and the ground range grows to about 78 m. The vertical motion never changes: the shell still climbs to about 12 m and stays aloft 3.12 s, because the cart adds only horizontal velocity.
This is why naval and tank gunnery must correct for own-ship or own-vehicle motion. The platform's velocity rides along with every shell, so a gun firing in the direction of travel reaches farther, and one firing backward falls short, by the platform's speed times the flight time, the same vcart·T term the simulator displays as the gap between its two range readouts.
Why is the arc seen from the moving cart symmetric, no matter how fast the cart rolls?
Switch the simulator's View button to the cart frame and the same flight redraws as a clean symmetric arc rising straight over the cannon and landing the same distance ahead: about 40 m at launch speed 20 m/s and angle 50°, whether the cart rolls at 0, 8, or 12 m/s. The reason is that the cart frame subtracts the cart's velocity from everything in view.
In that frame the cannon is at rest, so the shell is simply a projectile launched at 20 m/s and 50° from a stationary gun, the textbook symmetric parabola, peaking near 12 m with a cart-frame range of vlaunch²·sin(2θ)/g. Because the cart's own speed has been removed, it cannot appear anywhere in this description, so the cart-frame arc and its 40 m range are completely independent of how fast the cart moves.
That independence is Galileo's principle of relativity in action: physics done in any uniformly moving frame looks exactly like physics done at rest. The cart rider sees an ordinary cannon shot and would have no way, from the arc alone, to tell how fast the cart is rolling; only the ground observer sees the slant that the cart's motion adds.
How can one shot trace a slanted, stretched arc and a tidy symmetric arc at the same time?
There is only one flight; the two arcs are two descriptions of it from two reference frames. The ground observer measures the shell's position relative to the fixed ground, where its horizontal speed is the cart speed plus the launch's horizontal component, producing a forward-leaning, stretched arc. The cart rider measures position relative to the moving cannon, where the cart's contribution is absent, producing a symmetric arc straight over the gun.
The simulator stores both descriptions for every point of the path, so the View button can redraw the identical flight either way without re-running it. With launch speed 20 m/s, angle 50°, and cart speed 8 m/s, the Ground range readout shows about 65 m while the Cart range readout shows about 40 m for the very same shot. Their difference, about 25 m, is exactly how far the cart rolled during the 3.12 s flight.
Both frames agree on the physical facts that do not depend on viewpoint: the flight lasts 3.12 s, the peak is about 12 m, and the shell lands back level with the cannon. Set the cart speed to 0 and the two arcs merge, because with the cart at rest there is no velocity to add or subtract, the clearest sign that the slant was the cart's motion all along.
Further Reading
- Launcher on a platform: the special case θ = 90°, where the inherited velocity hides as a zero offset and the ball lands back in the cart.
- Projectile motion: the symmetric parabola of a stationary launcher, which is exactly what the cart rider sees in the cart frame.
- Projectile from a cliff: another two-dimensional launch where the horizontal and vertical motions stay independent, here with unequal start and landing heights.