Jon Berndt - PowerPoint PPT Presentation

1 / 38
About This Presentation
Title:

Jon Berndt

Description:

It can be run from a stub application (in 'standalone mode' ... Automating the Cockpit, Marten Tamerius, University of Technology, Delft, The Netherlands, 2003 ... – PowerPoint PPT presentation

Number of Views:145
Avg rating:3.0/5.0
Slides: 39
Provided by: jonsb
Category:
Tags: berndt | jon | marten

less

Transcript and Presenter's Notes

Title: Jon Berndt


1
  • Jon Berndt
  • jon_at_jsbsim.org
  • JSBSim Project Development Coordinator
  • AIAA Houston Annual Technical Symposium
  • May 11, 2007

2
JSBSim The Basics
  • JSBSim has been under development for 10 years.
  • It runs on Windows, Mac, Linux, IRIX, etc.
  • All source code is available.
  • Open Source tools are all that is needed to build
    and use it.
  • It is scriptable.
  • It can be run from a stub application (in
    standalone mode) or integrated within a larger
    application framework such as OpenEaagles, or a
    simulation such as FlightGear.

3
JSBSim Project Philosophy
  • Simulating flight requires extensive technical
    knowledge.
  • JSBSim aims to find a balance between fidelity
    and simplicity, so the task of simulating the
    flight of any aerospace vehicle can be done with
    the minimum specific input possible.
  • The target audience is upper level engineering
    students.
  • JSBSim also provides advanced capabilities for
    those who need it.

4
Easy to use for application developers
(as a standalone simulation application)
  • include ltFGFDMExec.hgt
  • int main(int argc, char argv)
  • JSBSimFGFDMExec FDMExec
  • bool result true
  • FDMExec.LoadScript(argv1)
  • while (result) result FDMExec.Run()

5
Easy to use for application developers
(called from a simulation application)
  • int initialize_flight_dynamics(char name)
  • FDMExec new FGFDMExec()
  • FDMExec-gtLoadAircraft(name)
  • FDMExec-gtDoTrim(mode)
  • int run_flight_dynamics()
  • copy_inputs_to_jsbsim()
  • FDMExec-gtRun()
  • copy_outputs_from_jsbsim()

6
JSBSim Program Flow
External program
Trim
End
Load
Start
Run
Aircraft Engine definition files
JSBSim Executive
7
Flight Control Block Diagram Example
8
Flight Control Components in JSBSim
ltsensor name"fcs/attitude/sensor/phi-rad"gt
ltinputgt attitude/phi-rad lt/inputgt ltlaggt 0.5
lt/laggt ltnoise variation"PERCENT"gt 0.05
lt/noisegt ltquantization name"attitude/sensor/qu
antized/phi-rad"gt ltbitsgt 12 lt/bitsgt
ltmingt -3.14 lt/mingt lt!-- -180 degrees --gt
ltmaxgt 3.14 lt/maxgt lt!-- 180 degrees --gt
lt/quantizationgt ltbiasgt 0.001 lt/biasgt
lt/sensorgt ltpid name"fcs/roll-ap-error-pid"gt
ltinputgtfcs/attitude/sensor/phi-radlt/inputgt
ltkpgt 2.0 lt/kpgt ltkigt 0.2lt/kigt ltkdgt 1 lt/kdgt
lt/pidgt
9
Flight Control Components in JSBSim
ltsensor name"fcs/attitude/sensor/phi-rad"gt
ltinputgt attitude/phi-rad lt/inputgt ltlaggt 0.5
lt/laggt ltnoise variation"PERCENT"gt 0.05
lt/noisegt ltquantization name"attitude/sensor/qu
antized/phi-rad"gt ltbitsgt 12 lt/bitsgt
ltmingt -3.14 lt/mingt lt!-- -180 degrees --gt
ltmaxgt 3.14 lt/maxgt lt!-- 180 degrees --gt
lt/quantizationgt ltbiasgt 0.001 lt/biasgt
lt/sensorgt ltpid name"fcs/roll-ap-error-pid"gt
ltinputgt fcs/attitude/sensor/phi-rad lt/inputgt
ltkpgt 2.0 lt/kpgt ltkigt 0.2lt/kigt ltkdgt 1 lt/kdgt
lt/pidgt
10
Complex Functions
  • ltfcs_function name"Heading to Waypoint Rad"gt
  • ltfunctiongt
  • ltatan2gt lt!-- atan2 (deltaY, deltaX )--gt
  • ltproductgt
  • ltsingtltpropertygt fcs/delta-lon-rad
    lt/propertygtlt/singt
  • ltcosgtltpropertygt ap/wp_latitude_rad
    lt/propertygtlt/cosgt
  • lt/productgt
  • ltdifferencegt
  • ltproductgt
  • ltcosgtltpropertygt position/lat-gc-rad
    lt/propertygtlt/cosgt
  • ltsingtltpropertygt ap/wp_latitude_rad
    lt/propertygtlt/singt
  • lt/productgt
  • ltproductgt
  • ltsingtltpropertygt position/lat-gc-rad
    lt/propertygtlt/singt
  • ltcosgtltpropertygt ap/wp_latitude_rad
    lt/propertygtlt/cosgt
  • ltcosgtltpropertygt fcs/delta-lon-rad
    lt/propertygtlt/cosgt
  • lt/productgt
  • lt/differencegt
  • lt/atan2gt

11
Aerodynamic Forces and Moments
  • Aerodynamic forces and moments are each defined
    and built up for the three axes, from any number
    of individual contributions. A force or moment
    component for an axis can be defined as a
    function of any property value, lookup table
    value, or constant value.
  • An example showing how the pitching moment due to
    flap deflection is defined is presented in the
    next slide.

12
XML Aerodynamic Term Definition
  • ltfunction name"aero/moment/Df"gt
  • ltdescriptiongtPitching moment due to flap
    deflectionlt/descriptiongt
  • ltproductgt
  • ltpropertygt aero/qbar-area lt/propertygt
  • ltpropertygt metrics/cbarw-ft lt/propertygt
  • lttablegt
  • ltindependentVargt fcs/flap-pos-deg
    lt/independentVargt
  • lttableDatagt
  • 0.0 0.0
  • 10.0 -0.0654
  • 20.0 -0.0981
  • 30.0 -0.1140
  • lt/tableDatagt
  • lt/tablegt
  • lt/productgt
  • lt/functiongt
  • Represents M?f qbar Sw cbar Cm?f

13
XML Aerodynamic Term Definition
  • ltfunction name"aero/moment/Df"gt
  • ltdescriptiongtPitching moment due to flap
    deflectionlt/descriptiongt
  • ltproductgt
  • ltpropertygt aero/qbar-area lt/propertygt
  • ltpropertygt metrics/cbarw-ft lt/propertygt
  • lttablegt
  • ltindependentVargt fcs/flap-pos-deg
    lt/independentVargt
  • lttableDatagt
  • 0.0 0.0
  • 10.0 -0.0654
  • 20.0 -0.0981
  • 30.0 -0.1140
  • lt/tableDatagt
  • lt/tablegt
  • lt/productgt
  • lt/functiongt
  • Represents M?f qbar Sw cbar Cm?f

14
XML Aerodynamic Term Definition
  • ltfunction name"aero/moment/Df"gt
  • ltdescriptiongtPitching moment due to flap
    deflectionlt/descriptiongt
  • ltproductgt
  • ltpropertygt aero/qbar-area lt/propertygt
  • ltpropertygt metrics/cbarw-ft lt/propertygt
  • lttablegt
  • ltindependentVargt fcs/flap-pos-deg
    lt/independentVargt
  • lttableDatagt
  • 0.0 0.0
  • 10.0 -0.0654
  • 20.0 -0.0981
  • 30.0 -0.1140
  • lt/tableDatagt
  • lt/tablegt
  • lt/productgt
  • lt/functiongt
  • Represents M?f qbar Sw cbar Cm?f

15
XML Aerodynamic Term Definition
  • ltfunction name"aero/moment/Df"gt
  • ltdescriptiongtPitching moment due to flap
    deflectionlt/descriptiongt
  • ltproductgt
  • ltpropertygt aero/qbar-area lt/propertygt
  • ltpropertygt metrics/cbarw-ft lt/propertygt
  • lttablegt
  • ltindependentVargt fcs/flap-pos-deg
    lt/independentVargt
  • lttableDatagt
  • 0.0 0.0
  • 10.0 -0.0654
  • 20.0 -0.0981
  • 30.0 -0.1140
  • lt/tableDatagt
  • lt/tablegt
  • lt/productgt
  • lt/functiongt
  • Represents M?f qbar Sw cbar Cm?f

16
XML Aerodynamic Term Definition
  • ltfunction name"aero/moment/Df"gt
  • ltdescriptiongtPitching moment due to flap
    deflectionlt/descriptiongt
  • ltproductgt
  • ltpropertygt aero/qbar-area lt/propertygt
  • ltpropertygt metrics/cbarw-ft lt/propertygt
  • lttablegt
  • ltindependentVargt fcs/flap-pos-deg
    lt/independentVargt
  • lttableDatagt
  • 0.0 0.0
  • 10.0 -0.0654
  • 20.0 -0.0981
  • 30.0 -0.1140
  • lt/tableDatagt
  • lt/tablegt
  • lt/productgt
  • lt/functiongt
  • Represents M?f qbar Sw cbar Cm?f

17
XML Aerodynamic Term Definition
  • ltfunction name"aero/moment/Df"gt
  • ltdescriptiongtPitching moment due to flap
    deflectionlt/descriptiongt
  • ltproductgt
  • ltpropertygt aero/qbar-area lt/propertygt
  • ltpropertygt metrics/cbarw-ft lt/propertygt
  • lttable nameaero/coefficient/Cmdfgt
  • ltindependentVargt fcs/flap-pos-deg
    lt/independentVargt
  • lttableDatagt
  • 0.0 0.0
  • 10.0 -0.0654
  • 20.0 -0.0981
  • 30.0 -0.1140
  • lt/tableDatagt
  • lt/tablegt
  • lt/productgt
  • lt/functiongt
  • Represents M?f qbar Sw cbar Cm?f

18
Output
  • JSBSim has a versatile data logging system.
  • Any number of output sections can be specified
    in the configuration file.
  • Logical data sets can be output, and/or
    individual parameters.
  • Output can be sent to one or many (in any
    combination)
  • Socket (local or remote)
  • File
  • Console

19
Developing a Specific Flight Model
  • The JSBSim code is generic, allowing anything
    from a ball, to an aircraft, to a rocket, to be
    modeled. The task of modeling the dynamics of a
    specific flight vehicle then becomes mostly one
    of acquiring the needed data.

20
Sources of Modeling Data (data farming)
  • FAA Type Certificate Data Sheets (TCDS)
  • Weight and balance
  • Propulsion data
  • Limitations
  • Aerosurface deflections
  • Fuel capacity
  • Etc.
  • NASA Technical Reports
  • Aerodynamics
  • Test response
  • Mass properties (MoI)
  • Aircraft geometry

21
Sources of Modeling Data (contd.)
  • POH (Pilot Operating Handbook)
  • Textbooks
  • Manufacturers information (web site)
  • Pilot inputs. Maybe.

22
XML Technologies Used
  • Aircraft, engine, thruster, scripts, and
    initial conditions are all specified in an
    XML-based format collectively known as JSBSim-ML.
  • An XML schema is provided to validate an XML file
  • An XML stylesheet language transform is provided
    for displaying XML files in a prettier format.
  • Expat, an established, open source XML parsing
    library, is used in JSBSim, offloading that
    development task.

23
XML-based Standard
  • The AERO-ML (aka DAVE-ML) standard is being
    prepared for submission to the AIAA standards
    committee. JSBSim provided a (surprise) early
    example of an implementation for the concept of
    describing an aircraft flight model in XML. The
    AERO-ML effort is being spearheaded by Bruce
    Hildreth (AIAA Standards Committee) and Bruce
    Jackson (LaRCsim author).
  • The most recent version of JSBSim-ML has in
    return been influenced by AERO-ML.

24
XSL Stylesheet Formatting
25
JSBSim Example Uses
  • JSBSim has been incorporated into at least two
    large scale battlefield simulators in order to
    provide flight simulation capabilities
    (OpenEaagles, and another as written about in a
    Swedish thesis work).
  • LMCO, Missiles and Fire Control, used JSBSim in
    one case to model a Predator in an integrated
    air/ground simulator (as far as I can tell).
  • University of Naples used JSBSim to make batch
    runs in a study to determine the clearance
    between a radio tower near a runway and the
    flight path of a 737 under a variety of nominal
    and off-nominal conditions.
  • A European company used JSBSim for a downrange
    impact study for a workhorse launch vehicle, in a
    scenario where the first stage failed.

26
JSBSim Example Uses (2)
  • A group of EC companies used JSBSim as one of
    several components assembled to study landing and
    taxiing traffic at European airports with an eye
    towards improving flow and safety.
  • A slightly modified version of JSBSim was used to
    develop a guidance and control scheme for a
    finless rocket, using an evolving neural network
    neuroevolution.
  • Interorbital Systems, used a modified JSBSim to
    develop control laws for one of their sounding
    rockets

27
Flight Simulation in Education
  • JSBSim aims to be a useful tool in the academic
    world. Industry needs and teaching approaches
    have evolved over the years
  • industry, government, and academia the
    likely employers of aerospace graduates desire
    a workforce which is the more holistic and
    systems-thinking as opposed to the highly
    specialized, research-oriented engineer of past
    generations.
  • AIAA/MIT paper Re-engineering Aerodynamics
    Education

28
Flight Simulation in Education
  • Aerospace vehicle design encompasses many
    disciplines, which are fused together by system
    engineering.
  • By mathematically modeling the components
    aerodynamics, propulsion, guidance and control,
    etc. they will grasp the theoretical
    underpinning of key engineering disciplines and
    their interactions.
  • Peter Zipfel, Adjunct Associate Professor,
    University of Floridaauthor of Building
    Aerospace Simulations in C

29
Flight Simulation in Education
  • in the modeling and simulation courses, where
    the emphasis is on the total system, I insist
    that they use a compiled language. Why not
    MATLAB? MATLAB/SIMULINK is great for control
    system design, but hides the mathematics
    underneath block diagrams and icons. For complete
    vehicle simulations it is important that the
    student experiences the mathematical modeling
    process first hand.
  • Peter Zipfel, Adjunct Associate Professor,
    University of Floridaauthor of Building
    Aerospace Simulations in C

30
JSBSim in Education
  • JSBSim has proven to be very helpful in an
    academic setting. The most commonly seen use is
    the modeling and simulation of UAV flight and
    exercising guidance and control laws.
  • The favor has also been returned in contributed
    code and even in the beginning of another open
    source project, JSBSim Commander.

31
Additional Tools, JSBSim Commander
32
Additional Tools DATCOM
  • Digital DATCOM is a freely available tool that
    attempts to determine aerodynamic coefficients
    and stability derivatives for an aircraft as
    defined in a text input file.
  • A contributor to the JSBSim project has modified
    DATCOM to provide its data output directly in
    JSBSim format. (see www.holycows.net/datcom)

33
Additional Tools AVL
  • AVL is a program written by Mark Drela (MIT) that
    uses the vortex lattice method to determine
    aerodynamic qualities of a defined vehicle. A
    student has offered to modify the open source AVL
    code so it can output directly in JSBSim format.

34
Additional Tools Stripchart
  • A stripchart application has been written that
    accepts data from JSBSim via a socket interface.

35
Future Goals
  • Documentation
  • More examples
  • Release version 1.0
  • Multi-body capability (specifically, multi-stage
    capability)

36
  • Additional Material

37
Referencing Papers
  • Robust Non-Linear Control through Neuroevolution,
    Faustino John Gomez, B.A., PhD Dissertation,
    University of Texas, Austin, August 2003
  • Active Guidance for a Finless Rocket Using
    Neuroevolution, Faustino John Gomez, University
    of Texas, Austin, 2003
  • Simulated Flight Testing of an Autonomous
    Unmanned Aerial Vehicle Using FlightGear, Eric F.
    Sorton and Sonny Hammaker, Institute for
    Scientific Research, Inc.
  • Automating the Cockpit, Marten Tamerius,
    University of Technology, Delft, The Netherlands,
    2003

38
Referencing Papers
  • Extending a Battlefield Simulator with Large
    Scale Terrain Rendering and Flight Simulator
    Functionality, Daniel Johansson, Department of
    Science and Technology, Linköpings Universitet,
    Norrköping, Sweden, November 2005
  • Development of a Low-Cost Simulator for
    Demonstration and Engineer Training, Burns, R.
    S.  Duquette, Matthew M.  Howerton, Joseph B. 
    Simko, Richard J., AIR FORCE RESEARCH LAB
    WRIGHT-PATTERSON AFB OH AIR VEHICLES DIRECTORATE,
    July 2003
Write a Comment
User Comments (0)
About PowerShow.com