Aerodynamic Lift Question

Started by
4 comments, last by pain1701 13 years, 2 months ago
I'm creating a simple airplane game and I'm trying to create some semi-realistic physics. I want to simulate actual flight so that if you're flying at certain speeds or angles, you'll stall and fall to the ground, crash, burn and die. Right now, my stall physics are really rudimentary. I calculate falling speed as a linear function of throttle:



if (m_velocity.Length() < m_stallSpeed)
{
m_gravity = m_stallSpeed - m_speed.Current;
if (MathHelper.ToDegrees(m_orientation) < 90.0f || 270.0f < MathHelper.ToDegrees(m_orientation))
{
m_orientation += 0.01f;
}
else if (MathHelper.ToDegrees(m_orientation) > 90.0f)
{
m_orientation -= 0.01f;
}
else
{
m_orientation = MathHelper.ToRadians(270);
}
}
else
{
m_gravity = 0;
}


This works, but it sucks. I've been studying a bit of aerodynamics to get a better idea on how flight works. Before I pose my question, I'll put down my rudimentary understanding and implementation idea:
A flying craft has five forces working on it:
1. Drag -- Wind resistance
2. Thrust -- Created by engines
3. Gravity/weight -- Downward force attracting craft to ground
4. Lift - A force vector which is dependent on angle of attack and thrust
5. Current Velocity - The kinetic direction of travel regardless of orientation and thrust (momentum)

So, when an aircraft flies too slow, it "stalls" because the generated upward lift isn't enough to overcome the force of gravity.

The question is: How do you calculate the angle of attack?
The angle of attack is the air flow direction across a wing section. But if an airplane flies at an inclined upward angle for long enough, doesn't the air flow direction become directly across the wing section, thus causing the angle of attack to become zero? Thus, any upward climb of an airplane becomes mostly from the engines pushing the plane upwards rather than from lift generated by its wings, right?
It seems that, given wing shape, there'd be a sweet spot for thrust and angle of attack to maintain the highest ratio of wing lift to thrust lift ratio...

....Am I trying to over-engineer this?
Advertisement
Um..
Angle of attack is the angle between the velocity of the plane and the angle of the wing.

I think you use the term "stall" not correctly. Stall is in relation with the angle of attack. If it becomes too big, turbulence kicks in, thus the lift completely goes away. As far as I know it's a drastic change: lift, then suddenly no lift at all.

I'm not sure if that's you're asking though...

Um..
Angle of attack is the angle between the velocity of the plane and the angle of the wing.

I think you use the term "stall" not correctly. Stall is in relation with the angle of attack. If it becomes too big, turbulence kicks in, thus the lift completely goes away. As far as I know it's a drastic change: lift, then suddenly no lift at all.

I'm not sure if that's you're asking though...


Hmm, you're right. I said "Air flow direction across wing section" which is the vector line opposite to the velocity of the airplane. A careless mistake on my part :unsure:

Anyways, I worked at the problem for a few more hours and did a lot more research on aerodynamics and I think I've solved most of my problems (and created new ones).
Yeah a stall is when the air flow over the wings can no longer 'hold on for the ride' so to speak. Just as the air flow seperates from the body of the wing (because its just at too much of an angle) the aircraft suddenly looses all that lift, and the nose drops. Well-behaved forgiving aircraft you can really feel this coming, as the seperation of the airflow is gradual. The dangerous ones that 'bite you' typically the airflow will seperate suddenly en masse...Laminar wings are prone to this.
Also in the in-between realm of a seperating airflow, you get buffet, wobbling and shuddering.. :) Gl with your game.

Yeah a stall is when the air flow over the wings can no longer 'hold on for the ride' so to speak. Just as the air flow seperates from the body of the wing (because its just at too much of an angle) the aircraft suddenly looses all that lift, and the nose drops. Well-behaved forgiving aircraft you can really feel this coming, as the seperation of the airflow is gradual. The dangerous ones that 'bite you' typically the airflow will seperate suddenly en masse...Laminar wings are prone to this.
Also in the in-between realm of a seperating airflow, you get buffet, wobbling and shuddering.. :) Gl with your game.


Nice post, Rexxaw! I sense some background beyond game dev, there.
Graham Rhodes Moderator, Math & Physics forum @ gamedev.net
As it looks like many have stated, angle of attack is simply the angle between the airfoils center line and the freestream velocity. If you would like a good approximation of when stall occurs decide on an airfoil shape and look up its lift curve slope online. This will give you the coefficient of lift with respect to a give angle of attack. From here you could estimate the lift and when stall occurs. For simple measures stick with many of the NACA00XX series airfoils. (Recently found some lift curve slops and drag polars for naca0015 pretty easily)

Lift is going to act perpendicular to this free stream velocity and drag acts parallel.

A way to calculate this angle would be to get the velocity of the plane in its corresponding frame and then get the wings local velocity in the plane frame. From here you should be able to calculate the angle between these two vectors. (Search for two points fixed on a rigid body). This is making some assumptions of course but you see where I'm going.

This topic is closed to new replies.

Advertisement