AndyGil 100 Report post Posted February 22, 2011 Ok.. ive been trying over and over again to get some half decent flight movement, but i cant seem to get even "correct" flight movement for me to then work on. So now im starting to wonder if im going about this the correct way? The way im currently doing it is im using the netwtons game dynamics library and a 3d engine with a nice command set. Objects and bodies can be calulated using there local coord system so im trying to contantly calculate forces and add the forces to the bodies, but im failing. I thought this would be the best way to go about it as the "physics" math is all done, i just need to add the forces(for simple movement remember).. it appears not so (from my results anyway) What is the best choice to get some "simple" movement but using basic lift and drag equations. Im not meaning super simple where you move an object in a direction, bank it and pitch it with up and down keys. Ide like to at least have lift and drag forces being calulated. I have lift and drag equations and im using table lookups with coeffient data for both lift and drag. Some problems i get confused about are... 1.AoA : I know that AoA is the angle between the chord line and relative wind. What i dont understand form my research is, when the angle of attack changes (so the plane now pitches slighty up) the plane is now moving in its NEW direction, so the relative wind is also coming from a NEW direction so AoA is the same again? is this correct, if so how does AOA change to generate lift? 2. Direction : Relating to the above question, i need to know what direction the plane is moving, not directing but moving in order to calculate relative wind? How do i do this? 3. CL : The coeffient lift/drag data i have (and like others) are between about - 8 and + 20 degrees, what about after them angles? Is cl 0? Im not good with maths, but im trying and determind and willing to try and learn anything i need to. When i look at other tutorials or articles they always start to refer to matrices and rotations ETC, but using the 3D engine i have access to my objects / bodies in a local coordinte system already, so i assume i just need to apply forces, no? Thanks Andy 0 Share this post Link to post Share on other sites
grhodes_at_work 1385 Report post Posted February 22, 2011 Some quick, quick answers: 1. The dynamics of the airplane cause it to rotate, in response to the forces (e.g. lift, drag...). The direction of motion and therefore relative wind also change. But they do not change in unison. The direction of motion and relative wind will lag behind the AoA, so the airplane rotates and the AoI changes...the direction of motion has to catch up. A related note. In reality, the AoA change not only causes a change in lift...it is also caused *by* a change in lift. So, you have multiple wing surfaces. Usually a main wing and a horizontal stabilizer. To generate a change in AoA (assuming airplane is in trim...not already rotating), you would mechanically rotate, say, the horizontal stabilizer or elevator, causing the local AoA of that surface to change (again, via some mechanical motion). The lift on the stabilizer changes, causing a pitching moment which will rotate the whole airplane about its center of mass. The rotation of the whole airplane, caused by a change in lift on the stabilizer, is what causes the main wing AoA change. 2. The direction of motion of the center of mass is one of the fundamental values that you simulate. You have to give it an initial value to start with. It is then updated in your flight dynamics simulation. Track the center of mass velocity and that will be the airplane's direction of motion relative to the world. 3. A typical real world wing won't have linear lift past maybe 10, maybe a bit higher, degrees (plus or minus). Beyond those angles, lift doesn't go to zero normally (well, it is zero at *around* AoA == 0, though usually not exactly AoA == 0 due to geometric asymmetry of the airplane and wings). It tapers off. Just at the AoA where the lift curve goes nonlinear, lift will still increase, just not linearly. The amount of slope decrease changes as the AoA gets larger. At some point, maybe 15 degrees, the lift will stop increasing. For some wing shapes, it'll drop quickly, almost instantly, down to some lower value. Lets say the max CL is 1.2 at the peak. It might drop to, say 0.8. It won't drop to zero normally. For other shapes...[b]and this is the desirable outcome for wing design[/b]...CL will gently reduce after reaching peak. You could think about this as the lift curve having a particle circle at the top, so it gently starts reducing. Then, if you keep increasing AoA, the dropoff will usually flatten back out somewhat, just a bit. Kind of strange. If you google "lift curve" you can find some examples. You have to be very careful to use the right coordinate system for things. Lift and drag are typically computed in wind coordinates, e.g., since AoA is measured with the relative wind, you compute CL based on the relative wind being zero AoA. But your simulation is usually computed in world coordinates. You have to transform the forces into the simulation coordinate system before applying them...or your simulation will go bad. This is why the references talk about angles, transformation matrices, etc. If I had time, I'd draw a picture. But, I don't really have time.. Sorry. 0 Share this post Link to post Share on other sites
AndyGil 100 Report post Posted February 22, 2011 draw a picture, draw a picture! Naa its fine (unless you find time). Great answers and gives me somthing to work further towards. I think its the coordinate system that is tripping me up... So for instance, every tick or frame, i find the linear velocity of the plane, which i belive will be the opposite to relative wind vector and drag vector i can apply lift to the model perpendicular to that, which isnt the planes rotational orientation but the planes velocity? Is that right? You see at the momement i calculate the AoA by simply finding the objects angle. Thanks Andy 0 Share this post Link to post Share on other sites
AndyGil 100 Report post Posted February 23, 2011 Hi, im stil ltrying to calulate AoA and just wondering how i can go about calculating the relative wind? Or the actual direction momentum of the plane? I presume trying to find this by the angle of the model (global and local) are not correct, i presume i need to create a vector? Would i store the old position and the new position to give me a vector which i can then find AoA? Am i over complicating this, missing somthing or is there any easier way? Does the newton game dynamics library (that im using) have a function for this? Just need to know the actual direction the plane is travelling. Thanks Andy 0 Share this post Link to post Share on other sites