JSBSim and DATCOM: Forces, Moments and AeroRP

Ralf Gerlich <[email protected]> Mon, 26 Feb 2007 15:37:42 +0100
Newsgroups gmane.games.flightgear.flightmodel
Message-ID <[email protected]>
Hello!

I am currently working on an FDM for an Ikarus C42 microlight and I'm
getting a bit confused about the buildup of forces and moments with
JSBSim. Unfortunately I'm very far from being an educated aero-engineer
so I probably don't understand all the fine details.

My simulated C42B created from the DATCOM output exhibits very low
stability in the yaw axis and goes into an nearly undamped yaw swinging
motion after any deflection and recentering of the rudder. I haven't
noticed a similar behaviour on the real aircraft. I also see that my
simulated C42B rotates by itself at 80km/h (which is the actual Vr)
whereas the real thing needs to be clearly pulled at that speed to get
the nose up.

I have taken actual measurements on the real aircraft and plugged them
into DATCOM+. Thanks for Bill Galbraith for helping me over some
harder-to-decipher intricacies with this fine software. Working with the
software alone taught me a lot of things about applied aerodynamics. ;-)

DATCOM+ already outputs a JSBSim-compatible set of buildup functions for
lift, drag, sideforce, roll-, yaw- and pitch-moments.

Some data needs to be filled in additionally, as there are the moments
of inertia, which I estimated using a small self-written program based
on some of the weights and geometry I know, the empty CoG or the
aerodynamic reference point. Specifically the latter is giving me some
headaches.

At first I thought that this specific piece of information should not be
necessary anymore as the moments' coefficients already should properly
cover that. Then I remembered that the center of gravity of course moves
in different load&balance situations, resulting in different lever arms
and thus different moments.

So I studied the code calculating the forces and moments and found that
in addition to the moments determined from the YAW, ROLL and PITCH axes,
JSBSim calculates moments from the force resulting from the sum of the
LIFT, DRAG and SIDE axes, using the vector from actual CoG to the
aerodynamic reference point as lever arm (see current FlightGear-CVS,
src/FDM/JSBSim/models/FGAerodynamics.cpp, line 185 or the respective
sourcefile in JSBSim-CVS)

As a first note this looks to me as if the moments are calculated twice
as in my interpretation - which of course may be wrong - the moment
coefficients already account for the moments using the CoG as given in
the DATCOM input data as moment reference center. However, you guys are
working with this all the time and it seems to work quite well, so there
must be something that I missed.

So obviously the location aerodynamic reference point is a really
important information and if selecting the wrong location might very
well be the cause of the "misbehaviour" of my simulated aircraft.

So now I have the problem of how to properly determine the location of
the aerodynamical reference point. DATCOM provides a coefficient named
XCP per given angle of attack. This is described as "[t]he distance
between the vehicle moment reference center and the center of pressure
divided by the longitudinal reference length."

Would XCG-XCP*cref give me the longitudinal location of the aerodynamic
reference point? If so, to get going I could probably just set the
AERORP value to some point above the empty CoG, which I have given as
CoG in the DATCOM file, and use the AeroRP-shifting feature to move it
along the longitudinal axis depending on the angle of attack according
to the data provided by DATCOM for XCP. Am I right or am I talking nonsense?

Thank you in advance for any feedback.

Cheers,
Ralf



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV