|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
This interactive simulation demonstrates the Quarter Car Model, the fundamental model for analyzing vehicle suspension systems. It shows how a car's suspension isolates the body from road disturbances using springs and dampers. Sections
What is the Quarter Car Model?The quarter car model represents one corner of a vehicle as a 2-DOF (degree of freedom) mass-spring-damper system:
The Equations of MotionThe system is governed by Newton's Second Law applied to each mass. The sprung mass (car body) is pushed only by the suspension spring and damper: Ms · ΓΏs = −ks(ys − yus) − cs(αΊs − αΊus)
The unsprung mass (wheel) feels those same suspension forces plus the tire spring force from the road: Mus · ΓΏus = ks(ys − yus) + cs(αΊs − αΊus) − kt(yus − yr)
State-Space RepresentationFor numerical simulation, we convert to first-order ODEs: State vector: αΊs = vs
vΜs = [−ks(ys − yus) − cs(vs − vus)] / Ms αΊus = vus vΜus = [ks(ys − yus) + cs(vs − vus) − kt(yus − yr)] / Mus How Road Surface Enters the System: Base ExcitationThe road surface is NOT applied as a direct external force. Instead, it enters through the tire spring as a kinematic (base) excitation: The Tire Spring Model:
βββββββββββ
β M_s β Car Body (Sprung Mass)
ββββββ¬βββββ
β k_s, c_s (Suspension Spring + Damper)
ββββββ΄βββββ
β M_us β Wheel (Unsprung Mass)
ββββββ¬βββββ
β k_t (Tire Spring) β Road enters HERE!
ββββββ§βββββββββ y_r = Road Height (prescribed input)
The tire force is calculated as: Ftire = kt × (yus − yr)
Why Base Excitation Instead of Direct Force?
Base excitation is realistic because we know the road's geometry (height profile), not the force. The tire's deflection determines the actual force transferred to the wheel. This also allows modeling tire compliance β softer tires absorb more bumps! Energy Flow Path: Road Profile (yr) → Tire Spring (kt) converts displacement→force → Wheel (Mus) moves → Suspension (ks, cs) filters & dampens → Body (Ms) feels smoothed motion
2 DOF, not 3: yr(t) is a prescribed input, not a degree of freedom. The system has only two states that move freely (ys and yus); the road acts as a time-varying boundary condition.
Why RK4 Integration?Spring-damper systems are stiff - simple Euler integration causes numerical instability (the simulation "explodes"). We use Runge-Kutta 4th Order (RK4) for stability:
Damping and Ride QualityThe damping ratio (ΞΆ) determines how the system responds to disturbances: ccr = 2√(ks · Ms) ζ = cs / ccr
Engineering Goal: Most cars target ΞΆ β 0.2-0.4 (under-damped) for comfort, while sports cars use ΞΆ β 0.5-0.7 for better control. Natural FrequencyThe undamped natural frequency determines how fast the system oscillates: fn = (1/2π) · √(ks / Ms) Hz
SimulationThe interactive simulator is below. Use the controls to explore the concepts described above. π Vehicle PresetβοΈ Mass
Sprung Mass (Ms)
300kg
Unsprung Mass (Mus)
40kg
π§ Suspension
Spring Stiffness (ks)
20.0kN/m
Damping (cs)
1500NΒ·s/m
Tire Stiffness (kt)
150kN/m
Damping Status
Critical
ΞΆ = 0.61 | fn = 1.3 Hz
π£οΈ Road Surface
Vehicle Speed
1m/s
Road Type
π State
Body Pos
0.0 cm
Wheel Pos
0.0 cm
Body Vel
0.0 cm/s
Wheel Vel
0.0 cm/s
π Position vs Time
β Body
β Wheel
β Road
Displacement vs Accel
β Body
β Wheel
Velocity vs Accel
β Body
β Wheel
Body:
MsΓΏs = -ksΞy - csΞαΊ
Wheel:
MusΓΏus = ksΞy + csΞαΊ - kt(yus-yr)
Ξy = ys - yus
ΞαΊ = αΊs - αΊus
Car Body (Ms)
Wheel (Mus)
Spring (ks)
Damper (cs)
Road Input (yr)
Usage Instructions
Vehicle Presets
Road Surface Types
Key Experiments
Engineering Insights
Visual Synchronization: The "Treadmill" ModelThis simulation uses a "treadmill" coordinate system to visualize car dynamics:
Key Concept: The car doesn't move horizontally on screen. Instead, the road scrolls underneath it β just like running on a treadmill!
The Red Dot (β): This marker shows exactly where the physics engine samples the road height. When you see the car "jump," it's because a bump has reached the red dot β the physics detected the bump at that exact moment!
Synchronization Math:
tireScreenX = canvas pixel where wheel appears road.position = world distance traveled (meters) For any canvas pixel 'px': worldMeter = road.position + (px - tireScreenX) / pixelsPerMeter At tireScreenX: worldMeter = road.position (exact match!) This coordinate system ensures that what you see is what the physics calculates β the visual bump and the physics bump are perfectly aligned. RK4 Integration AlgorithmThe simulation uses 4th-order Runge-Kutta integration:
k1 = f(t, y)
k2 = f(t + h/2, y + hΒ·k1/2) k3 = f(t + h/2, y + hΒ·k2/2) k4 = f(t + h, y + hΒ·k3) yn+1 = yn + (h/6)Β·(k1 + 2k2 + 2k3 + k4) This provides O(hβ΄) accuracy and excellent stability for oscillatory systems. Phase Space PlotsThe simulation displays two phase space plots that reveal the system's dynamic behavior:
Analytical Acceleration: To ensure smooth phase plots, acceleration is calculated directly from forces (F/m) rather than differentiating velocity numerically:
Body Acceleration:
as = (-ksΒ·Ξy - csΒ·Ξv) / Ms Wheel Acceleration: aus = (ksΒ·Ξy + csΒ·Ξv - ktΒ·(yus - yr)) / Mus A light moving average filter is applied to the wheel acceleration for visualization (window=5) to smooth high-frequency noise without affecting the physics. Step-by-Step ControlsThe simulation supports stepping forward and backward through time:
State history is automatically saved every 3 frames to enable backward stepping without excessive memory usage. Real-World Applications
Extensions Beyond Quarter Car
Limitations
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||