Flapping wing: from actuation to aerodynamic response
How does a flapping wing interact with initially still air? This two-dimensional OpenFOAM experiment follows an OWL05 airfoil through prescribed torso-relative heaving, dynamically controlled pitch, and the resulting aerodynamic loads. A simplified torso is free to translate under those loads and gravity.
One cycle of the actual simulated motion
The vertical stroke is prescribed relative to the torso: a faster 35% downstroke and slower 65% upstroke. The pitch controller follows a set target, but actual pitch responds dynamically to fluid loads and the limited joint torque. This lightweight demonstration replays the recorded motion from t = 1.000–1.125 s of this simulation.
Playback is the only variable control; flapping frequency, stroke proportions, heaving and pitching motion are fixed. The speed slider covers 0.01×–1× with logarithmic spacing for finer adjustment at slow speeds. 1× replays physical time (8 cycles per second). This is a recorded one-cycle example, not a CFD recomputation.
Velocity field, force components and pitching moment
The finished simulation movie represents ten seconds of simulated physical time in 100 seconds of playback. The left panel follows the translating torso while showing velocity magnitude in the inertial laboratory frame. Its World X/Y coordinate ticks move as the torso travels. The three plots on the right track Fx, Fy and Mz within a moving two-second time window.
The unsteady wake
Vortices generated during one stroke remain in the flow and influence subsequent aerodynamic loading. This coupling makes instantaneous forces dependent on the evolving wake, not merely the wing’s current angle.
Interpreting loads
Fx and Fy are aerodynamic components in the world frame. Mz is aerodynamic moment about the moving pivot. Force oscillations alone do not establish stable hovering or free-flight control.
The CFD stays wing-fixed; the simulated body can move
The computational mesh does not physically translate or deform each timestep. The CFD solution uses a wing-attached non-inertial frame, with acceleration and rotation terms and transformed far-field conditions. A coupling loop converts aerodynamic loads into body-motion updates.
Schedule pitch target θ*(t)
Actual θ(t) evolves
Pressure / viscous loads
Free torso X/Y translation
The staggered coupling repeats every timestep. In the wing frame, the momentum equation includes moving-origin, Coriolis, angular-acceleration and centrifugal terms. The torso’s attitude remains fixed: this is not a free 6-DOF bird.
What this run demonstrates—and what remains open
Demonstrated
Coupled unsteady aerodynamics, dynamically controlled wing pitch, prescribed relative heave and recorded torso translation within a reproducible OpenFOAM/Python workflow.
To investigate
Force spikes and timestep sensitivity, numerical validation, 2D-to-3D limitations, sustained-flight stability and future free-attitude control. Results are not experimental proof of hovering.
Future extensions may include a three-dimensional wing, improved flight control and data-driven reduced-order models for faster motion studies.
← Back to SimFoundry