This project investigates the nonlinear dynamics of a Jack-in-the-Box mechanism, focusing on contact, spring, and impact interactions.
The system consists of a mass–spring–hinge assembly that undergoes large-amplitude motion when released, exhibiting hybrid dynamics—continuous spring oscillation combined with discrete impact events.
The objective was to build a physics-accurate model and simulate the box-lid motion and internal “pop-up” dynamics to better understand impact timing, damping effects, and energy transfer between components.
Mathematical Modeling
System Representation
Modeled as a planar multi-body system with the lid, base, and spring mass linked through revolute and prismatic joints.
Used Lagrangian mechanics to derive equations of motion:
[
\frac{d}{dt}\left(\frac{\partial L}{\partial \dot{q}}\right) - \frac{\partial L}{\partial q} = Q
]
where ( L = T - V ) and ( Q ) represents non-conservative generalized forces (friction, damping, contact).
Contact and Impact Handling
Implemented event-based switching to detect lid-mass contact and apply impulse-momentum conservation.
Energy loss modeled via a coefficient of restitution and damping ratio calibration.
Simulation Framework
Implemented in Python (SymPy + SciPy integrators) for symbolic derivation and numerical integration.
Real-time visualization and playback through Matplotlib animation and Open3D for geometric rendering.