An Open Source Flight Dynamics Model in C++

Total Page:16

File Type:pdf, Size:1020Kb

An Open Source Flight Dynamics Model in C++ AIAA Modeling and Simulation Technologies Conference and Exhibit AIAA 2004-4923 16 - 19 August 2004, Providence, Rhode Island JSBSim: An Open Source Flight Dynamics Model in C++ Jon S. Berndt* JSBSim Project League City, TX Abstract: This paper gives an overview of JSBSim, an open source, multi-platform, flight dynamics model (FDM) framework written in the C++ programming language. JSBSim is designed to support simulation modeling of arbitrary aerospace craft without the need for specific compiled and linked program code. Instead, it relies on a relatively simple model specification written in an extensible markup language (XML) format. Also presented are some key (perhaps unique) features employed in the framework. Aspects of developing an open source project are identified. Notable uses of JSBSim are listed. I. Introduction SBSim1 was conceived in 1996 as a batch simulation application aimed at modeling flight dynamics and control J for aircraft.† It was accepted that such a tool could be useful in an academic setting as a freely available aid in aircraft design and controls courses. In 1998, the author began working with the FlightGear project.2 FlightGear is a sophisticated, full-featured, desktop flight simulator framework for use in research or academic environments, for the development and pursuit of interesting flight simulation ideas, and as an end-user application. At that time, FlightGear was using the LaRCsim3 flight dynamics model (FDM). LaRCsim requires new aircraft to be modeled in program code. Discussions with developers in the FlightGear community suggested that in order to make flight simulation more accessible, creating a generic, completely data-driven FDM framework would be helpful. That is, specific aircraft would be defined in data files, and no new program code would be required to model any arbitrary aircraft. Additional characteristics of such a framework include: • Employs object-oriented design principles • Compiles across common platforms and compilers • Readily available as an open source application • Is self-documenting JSBSim was integrated with FlightGear in 1999, and is today the default flight model. JSBSim retains the capability to run in a batch mode. The volunteer development team has grown over the years, and vigorous development continues. Since JSBSim is provided and developed under the GNU General Public License, it is available for use in other simulation projects with few restrictions. II. Architecture A. Benefits in the Use of C++ The C++ programming language is ideal for use in flight simulation software in part because of its support of the primary object-oriented concepts: polymorphism, inheritance, encapsulation, and abstraction. Polymorphism (i.e. “having many forms”) is a characteristic of objects that operate differently internally, but have the same interface. For example, the JSBSim implementation of a flight control system (FCS) consists of various classes of filters, switches, and gains that each have a unique internal implementation. The public interface to the components consists of the Run() and GetOutput() methods, which are both virtual member functions of the component base class. These two methods are overridden in derived classes that represent specific components with *JSBSim Project Architect and Development Coordinator, Senior Member AIAA. †Many types of “craft” can be modeled in JSBSim (e.g. a ball, aircraft, rocket, etc.) but within this paper the term “aircraft” will be used for all types. 1 American Institute of Aeronautics and Astronautics Copyright © 2004 by Jon S. Berndt. Published by the American Institute of Aeronautics and Astronautics, Inc., with permission. unique behavior. Each instance of a component is referred to by the base class pointer, but the behavior is determined by the logic defined within the Run() method of the specific derived component class. Inheritance is the derivation of a class from another in order to provide base class characteristics to the derived class. Using the example of the JSBSim FCS component classes again, each of the specific component classes (switch, summer, filter, etc.) is derived from a more generic component class that features characteristics that all components share. Inheritance is a common way to implement polymorphism. Encapsulation is the concept of hiding and protecting data in a class, preventing corruption by outside processes. For example, the output of the FCS components may only be retrieved, and not modified. In addition, some of the JSBSim FCS components store past values. These should never be accessible by any other part of the program. Abstraction is “the elimination of the irrelevant and the amplification of the essential”.4 The FCS component base class, for instance, provides the two simple functions Run() and GetOutput() that are used to operate a component. The details of how each specific component operates do not need to be exposed. The Standard Template Library (STL) is a library of containers and algorithms. The STL provides containers such as the vector class that operate like arrays that shrink or grow as needed. This capability is particularly useful in FGCoefficient → FGFactorGroup JSBSim, because the number of engines, coefficients, FCS FGColumnVector3 FGCondition components, etc. are unknown until the program is executed. FGConfigFile Other incidental advantages in the use of C++ include the FGElectric ready availability of engineers, mathematicians, etc. who are FGPiston FGEngine → also experienced C++ programmers, and the availability of FGRocket mature – and also free – C++ compilers, utilities, tools, and FGTurbine FGDeadBand integrated development environments (IDE) across the set of target platforms. FGFilter FGGain FGFCSComponent → FGGradient B. Class Hierarchy FGKinemat The collection of classes that make up the JSBSim FGSummer framework resembles a “family tree” with a common parent at FGSwitch the head of the hierarchy (see Fig. 1). This graphically FGFDMExec illustrates the concept of inheritance and – indirectly – code FGfdmSocket FGNozzle reuse. An entire class framework does not necessarily have to FGForce → FGThruster → FGPropeller conform to a completely hierarchical arrangement. In JSBSim, FGRotor several classes represent generic objects or concepts that are FGInitialCondition FGJSBBase → FGLGear each fully realized in derived classes. These base classes can be viewed as providing the abstract interface that is used to FGLocation FGMatrix33 access each of the derived objects. There are also operations FGAerodynamics and attributes (a fancy name for class member variables) that FGAircraft FGMars are common to almost all classes, so it makes sense to FGAtmosphere → FGMSIS implement those characteristics in a common base class. For FGAuxiliary instance, the framework base class (FGJSBBase*) implements FGFCS a messaging capability, providing message handling methods FGModel → FGGroundReactions and storage. Any descendant class can put a message on the FGInertial FGMassBalance queue to be retrieved and processed by the parent application, FGOutput or by any class instance that is also derived from the base FGPropagate class. Unit conversion routines and constants also reside in the FGPropulsion base class, available through inheritance to any of the many FGQuaternion descendant classes that need them. FGScript FGState One of the key challenges faced in creating a generic FDM FGTable is in designing it to permit the modeling of completely arbitrary vehicle configurations. The framework needs to be FGTank FGTrim able to transparently handle modeling craft ranging from a FGTrimAxis simple ball (useful for testing purposes, see Listing 1), to a missile, an aircraft, rocket, hybrid vehicle, a rotorcraft, and so Figure 1. JSBSim Class Hierarchy *The “FG” prefix refers to FlightGear. 2 American Institute of Aeronautics and Astronautics on. These craft could feature different propulsion systems, ground reaction mechanisms, aerodynamic characteristics, and control systems (if any). All four of the previously mentioned object oriented design characteristics played a part in addressing this challenge. For the propulsion system, an engine base class was created that provides a basic, common, engine interface. The class includes access methods for starter, throttle, and mixture settings, and methods for reading fuel flow rates, temperatures, etc. Specific engine types are derived from the engine base class, providing the actual implementations for turbine, rocket, piston, and electric engines. The derived classes each provide a Calculate() function (overriding the empty, virtual Calculate() function from the base class) that is called to run an iteration of the specific engine instance, determining the force and moment values that the particular engine transmits to the aircraft. In addition to the engine force and moment calculations performed inside the Calculate() function, other quantities are determined as well, including various temperatures, rotational rates, and pressures. A manager class handles all aspects of the propulsion system operation, including loading the definition of each engine, tank, and thruster (the device used to turn engine power into a force), initialization, cyclic execution while running, and destruction at completion. By providing an abstract interface to the engine object, each specific engine instance (no matter what derived type) can be executed the same way, from the point
Recommended publications
  • The Flightgear Manual
    The FlightGear Manual Michael Basler, Martin Spott, Stuart Buchanan, Jon Berndt, Bernhard Buckel, Cameron Moore, Curt Olson, Dave Perry, Michael Selig, Darrell Walisser, and others The FlightGear Manual February 22, 2010 For FlightGear version 2.0.0 2 Contents 0.1 Condensed Reading.........................6 0.2 Instructions For the Truly Impatient................6 0.3 Further Reading...........................6 I Installation9 1 Want to have a free flight? Take FlightGear! 11 1.1 Yet Another Flight Simulator?................... 11 1.2 System Requirements........................ 14 1.3 Choosing A Version......................... 15 1.4 Flight Dynamics Models...................... 16 1.5 About This Guide.......................... 16 2 Preflight: Installing FlightGear 19 2.1 Installing scenery.......................... 19 2.1.1 MS Windows Vista/7.................... 20 2.1.2 Mac OS X......................... 20 2.1.3 FG_SCENERY....................... 20 2.1.4 Fetch Scenery as you fly.................. 21 2.1.5 Creating your own Scenery................. 22 2.2 Installing aircraft.......................... 22 2.3 Installing documentation...................... 22 II Flying with FlightGear 25 3 Takeoff: How to start the program 27 3.1 Environment Variables....................... 27 3.1.1 FG_ROOT......................... 27 3.1.2 FG_SCENERY....................... 27 3.1.3 Environment Variables on Windows and Mac OS X.... 27 3.2 Launching the simulator under Unix/Linux............ 28 3.3 Launching the simulator under Windows.............. 29 3.3.1 Launching from the command line............. 30 3 4 CONTENTS 3.4 Launching the simulator under Mac OS X............. 30 3.4.1 Selecting an aircraft and an airport............. 31 3.4.2 Enabling on-the-fly scenery downloading......... 31 3.4.3 Enabling Navigation Map (Atlas)............
    [Show full text]
  • Developing an Enterprise Operating System for the Monitoring and Control of Enterprise Operations Joseph Youssef
    Developing an enterprise operating system for the monitoring and control of enterprise operations Joseph Youssef To cite this version: Joseph Youssef. Developing an enterprise operating system for the monitoring and control of enterprise operations. Other [cond-mat.other]. Université de Bordeaux, 2017. English. NNT : 2017BORD0761. tel-01760341 HAL Id: tel-01760341 https://tel.archives-ouvertes.fr/tel-01760341 Submitted on 6 Apr 2018 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. THÈSE PRÉSENTÉE POUR OBTENIR LE GRADE DE DOCTEUR DE L’UNIVERSITÉ DE BORDEAUX ECOLE DOCTORALE DES SCIENCES PHYSIQUES ET DE L’INGÉNIEUR SPECIALITE : PRODUCTIQUE Par Joseph YOUSSEF DEVELOPING AN ENTERPRISE OPERATING SYSTEM FOR THE MONITORING AND CONTROL OF ENTERPRISE OPERATIONS Sous la direction de : David CHEN (Co-directeur : Gregory ZACHAREWICZ) Soutenue le 21 Décembre 2017 Membres du jury : M. DUCQ, Yves Professeur, Université de Bordeaux Président M. KASSEL, Stephan Professeur, Université des Sciences Appliquées de Zwickau Rapporteur M. ARCHIMEDE, Bernard Professeur, Ecole Nationale D’Ingénieurs de Tarbes Rapporteur M. CHEN, David Professeur, Université de Bordeaux Directeur M. ZACHAREWICZ, Gregory MCF (H.D.R), Université de Bordeaux Co-directeur M. DACLIN, Nicolas Maître-Assistant, Ecole des Mines d’Alès Examinateur 2 Titre : Développement d’un Système D’exploitation des Entreprises pour le Suivi et le Contrôle des Opérations.
    [Show full text]
  • Co-Simulation of Matlab and Flightgear for Identification And
    Guilherme Aschauer et al. / IFAC-PapersOnLine 48-1 (2015) 067–072 8th Vienna International Conference on Mathematical Modelling February8th Vienna 18 International - 20, 2015. Vienna Conference University on Mathematical of Technology, Modelling Vienna, 8th Vienna International Conference on Mathematical Modelling AustriaFebruary 18 - 20, 2015. Vienna UniversityAvailable of Technology, online at Vienna,www.sciencedirect.com AustriaFebruary 18 - 20, 2015. Vienna University of Technology, Vienna, Austria ScienceDirect IFAC-PapersOnLine 48-1 (2015) 067–072 Co-Simulation of Matlab and FlightGear Co-Simulation of Matlab and FlightGear for Identification and Control of Aircraft for Identification and Control of Aircraft Guilherme Aschauer ∗ Alexander Schirrer ∗ Martin Kozek ∗ Guilherme Aschauer ∗ Alexander Schirrer ∗ Martin Kozek ∗ Guilherme Aschauer ∗ Alexander Schirrer ∗ Martin Kozek ∗ Inst. of Mechanics & Mechatronics, Vienna University of Technology, ∗ Inst. of Mechanics & Mechatronics, Vienna University of Technology, ∗ Austria ∗ Inst. of Mechanics & Mechatronics,Austria Vienna University of Technology, e-mail: [email protected] e-mail: [email protected] e-mail: [email protected] Abstract: The paper outlines the development of a co-simulation solution of Matlab and Flight- Abstract: The paper outlines the development of a co-simulation solution of Matlab and Flight- Gear in which the communication between these programs is done via UDP without needing GearAbstract: in whichThe the paper communication outlines the development between these of a programs co-simulation is done solution via UDP of Matlab without and needing Flight- further toolsets. The simulation and rendering is done by FlightGear. Flight measurement signals furtherGear in toolsets. which the The communication simulation and between rendering these is done programs by FlightGear.
    [Show full text]
  • Openscenegraph 3.0 Beginner's Guide
    OpenSceneGraph 3.0 Beginner's Guide Create high-performance virtual reality applications with OpenSceneGraph, one of the best 3D graphics engines Rui Wang Xuelei Qian BIRMINGHAM - MUMBAI OpenSceneGraph 3.0 Beginner's Guide Copyright © 2010 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, nor Packt Publishing and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. First published: December 2010 Production Reference: 1081210 Published by Packt Publishing Ltd. 32 Lincoln Road Olton Birmingham, B27 6PA, UK. ISBN 978-1-849512-82-4 www.packtpub.com Cover Image by Ed Maclean ([email protected]) Credits Authors Editorial Team Leader Rui Wang Akshara Aware Xuelei Qian Project Team Leader Reviewers Lata Basantani Jean-Sébastien Guay Project Coordinator Cedric Pinson
    [Show full text]
  • Progress on and Usage of the Open Source Flight Dynamics Model, Jsbsim
    AIAA Modeling and Simulation Technologies Conference AIAA 2009-5699 10 - 13 August 2009, Chicago, Illinois Progress on and Usage of the Open Source Flight Dynamics Model Software Library, JSBSim Jon S. Berndt* Engineering and Science Contract Group / Jacobs, Houston, Texas, 77573 Agostino De Marco† University of Naples, Federico II, Naples, Italy JSBSim is an open source software (OSS) flight dynamics model that can be incorporated into a larger flight simulation architecture (such as FlightGear, or OpenEaagles). It can also be run as a standalone batch application when linked with a stub routine. Since 2004, when JSBSim was formally introduced at the Modeling and Simulation Technology conference, many advances have taken place, and a variety of uses have been demonstrated. This paper will present updates on project status, an overview of XML configuration file format enhancements, details on recent improvements and design choices, and some basic examples of use. A discussion about interfacing JSBSim with Matlab as a Mex-Function or Simulink S-Function is included, followed by a deeper look at a representative usage case study. I. Introduction JSBSim is a high-fidelity, 6-DoF (Degree-of-Freedom), general purpose, flight dynamics model software library written in the C++ programming languages. The library routines propagate the simulated state of an aircraft given inputs provided via a script or issued from a larger simulation application. The inputs can be processed through arbitrary flight control laws, with the outputs generated being used to control the aircraft. Aircraft control and other systems, engines, etc. are all defined in various files in a codified XML format.
    [Show full text]
  • Flightgear Flight Simulator 11-7-5 上午10:22
    FlightGear Flight Simulator 11-7-5 上午10:22 Main Get FlightGear Support Links Users Developers Search Ads by Google GA Aircraft Aircraft Games Free FSX Aircraft Modeling Network FlightGear Features Oil Absorbing Fabric High degree of Freedom Use Ultra-X-Tex material to FlightGear is an open-source project. This means as long as you abide by the terms of the capture oil and GPL license you may freely download and copy FlightGear. Anyway can have easy and open keep it off the access to the latest development source code. Being an open-source project, we have made beach! our file formats open and easily accessible. We support standard 3d model formats and much www.SpillContainment… of the simulator configuration is controlled through xml based ascii files. Writing 3rd party extensions for FlightGear (or even directly modifying the FlightGear source code) is straightforward and doesn't require a large amount of reverse engineering. This makes FlightGear an attractive option for use in private, commercial, research, or hobby projects. FlightGear is known to run on Windows, Linux, Mac OS-X, FreeBSD, Solaris, and IRIX platforms allowing the user run on their platform of preference. Flight Dynamics Models With FlightGear it is possible to choose between three primary Flight Dynamics Models. It is possible to add new dynamics models or even interface to external "proprietary" flight dynamics models: 1. JSBSim: JSBSim is a generic, 6DoF flight dynamics model for simulating the motion of flight vehicles. It is written in C++. JSBSim can be run in a standalone mode for batch runs, or it can be the driver for a larger simulation program that includes a visuals subsystem (such as FlightGear.) In both cases, aircraft are modeled in an XML configuration file, where the mass properties, aerodynamic and flight control properties are all defined.
    [Show full text]
  • A Simplified Manual of the Jsbsim Open-Source Software FDM for Fixed-Wing UAV Applications
    May 2019 A Simplified Manual of the JSBSim Open-Source Software FDM for Fixed-Wing UAV Applications TECHNICAL REPORT Oihane Cereceda Faculty of Engineering and Applied Science Memorial University of Newfoundland St. John’s, NL, Canada Summary Simulation packages provide a valuable framework or environment to study the interaction between aircraft, including Unmanned Aerial Vehicles (UAVs), and the existing air traffic in Near Mid-Air Collision (NMAC) scenarios. The described simulation package is based on the open- source JSBSim Flight Dynamics Model (FDM), which has been validated and tested in UAV computer models for 4D encounters and avoidance manoeuvres. The objective of this technical report is to provide a simplified version of the current package, including the minimum requirements for the design of a UAV in JSBSim, and to guide any modellers on the UAV computer design task. Introductory concepts and the dynamics behind this package will not be stated here. This report begins with a brief introduction of JSBSim structure and simulation modes. The source code classes are introduced in Section 2 followed by the set instructions for the additional feature of the multiplayer mode used in 4D encounters. The report concludes with a UAV example case study. i Table of Contents Summary ..................................................................................................................................... i Table of Contents .......................................................................................................................
    [Show full text]
  • 2004 USENIX Annual Technical Conference
    USENIX Association Proceedings of the FREENIX Track: 2004 USENIX Annual Technical Conference Boston, MA, USA June 27–July 2, 2004 © 2004 by The USENIX Association All Rights Reserved For more information about the USENIX Association: Phone: 1 510 528 8649 FAX: 1 510 548 5738 Email: [email protected] WWW: http://www.usenix.org Rights to individual papers remain with the author or the author's employer. Permission is granted for noncommercial reproduction of the work for educational or research purposes. This copyright notice must be included in the reproduced paper. USENIX acknowledges all trademarks herein. The FlightGear Flight Simulator Alexander R. Perry PAMurray, San Diego, CA alex.perry@flightgear.org http://www.flightgear.org/ Abstract convenience most open source projects, in order to to run on Intel x86, AMD64, PowerPC and Sparc processors. The open source flight simulator FlightGear is developed from contributions by many talented people around the world. In addition to running the simulation of the aircraft in The main focus is a desire to ‘do things right’ and to min- real time, the application must also use whatever peripher- imize short cuts. FlightGear has become more configurable als are available to deliver an immersive cockpit environ- and flexible in recent years making for a huge improvement ment to the aircraft pilot. Those peripherals, such as sound in the user’s overall experience. This overview discusses the through speakers, are accessed through operating system ser- project, recent advances, some of the new opportunities and vices whose implementation may be equivalent, yet very dif- newer applications. ferent, under the various operating systems.
    [Show full text]
  • List of TCP and UDP Port Numbers - Wikipedia, the Free Encyclopedia List of TCP and UDP Port Numbers from Wikipedia, the Free Encyclopedia
    8/21/2014 List of TCP and UDP port numbers - Wikipedia, the free encyclopedia List of TCP and UDP port numbers From Wikipedia, the free encyclopedia This is a list of Internet socket port numbers used by protocols of the Transport Layer of the Internet Protocol Suite for the establishment of host-to-host connectivity. Originally, port numbers were used by the Network Control Program (NCP) which needed two ports for half duplex transmission. Later, the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP) needed only one port for bidirectional traffic. The even numbered ports were not used, and this resulted in some even numbers in the well-known port number range being unassigned. The Stream Control Transmission Protocol (SCTP) and the Datagram Congestion Control Protocol (DCCP) also use port numbers. They usually use port numbers that match the services of the corresponding TCP or UDP implementation, if they exist. The Internet Assigned Numbers Authority (IANA) is responsible for maintaining the official assignments of port numbers for specific uses.[1] However, many unofficial uses of both well-known and registered port numbers occur in practice. Contents 1 Table legend 2 Well-known ports 3 Registered ports 4 Dynamic, private or ephemeral ports 5 See also 6 References 7 External links Table legend Use Description Color Official Port is registered with IANA for the application[1] White Unofficial Port is not registered with IANA for the application Blue Multiple use Multiple applications are known to use this port. Yellow Well-known ports The port numbers in the range from 0 to 1023 are the well-known ports or system ports.[2] They are used by system processes that provide widely used types of network services.
    [Show full text]
  • The Flightgear Flight Simulator
    The FlightGear Flight Simulator Alexander R. Perry PAMurray, San Diego, CA alex.perry@flightgear.org http://www.flightgear.org/ Abstract convenience most open source projects, in order to to run on Intel x86, AMD64, PowerPC and Sparc processors. The open source flight simulator FlightGear is developed from contributions by many talented people around the world. In addition to running the simulation of the aircraft in The main focus is a desire to ‘do things right’ and to min- real time, the application must also use whatever peripher- imize short cuts. FlightGear has become more configurable als are available to deliver an immersive cockpit environ- and flexible in recent years making for a huge improvement ment to the aircraft pilot. Those peripherals, such as sound in the user’s overall experience. This overview discusses the through speakers, are accessed through operating system ser- project, recent advances, some of the new opportunities and vices whose implementation may be equivalent, yet very dif- newer applications. ferent, under the various operating systems. FlightGear cur- rently supports Windows, FreeBSD, Linux, Solaris, MacOS, Irix and OS-X. Introduction For those services which are common across most video games, the independent project PLIB offers a simple API The open source flight simulator FlightGear has come a long that acts as a Portable Library[2]. Compared to Windows, way since first being showcased at LinuxWorld in San Jose. MacOS and the Unix’s, the various distributions and releases In April 1996, David Murr proposed a new flight simulator of Linux-based operating systems are very similar. There are developed by volunteers over the Internet.
    [Show full text]
  • The Flight Gear Flight Simulator Outline What Is Flightgear ? A
    Slide 1 / Slide 2 / 33 33 The Flight Gear Flight Simulator Outline History of the project Alexander R. Perry [email protected] Presenter and Developer FlightGear's realism capabilities Relating these to the modular subsystems Uselinux SIG presentation at Usenix 2004, 10:30 July 1 2004 Explain the network interface GPL Open Source licensed And the python wrapper for it Mac, Win32, Mac, Irix, Linux platforms runs in both 32 bit and 64 bit Discuss the challenges and shortcomings Limitations for practical deployment http://www.flightgear.org/ Slide 3 / Slide 4 / 33 33 What is FlightGear ? A worldwide developer community A flight simulation project The credits file has 89 names and is still growing ... trying to simulate reality - not simply play Some of their locations are shown on this map: Our approach is Open source (GPL) - Free - as in speech and as in beer Portable Platform neutral Advanced algorithms - good models, not just guesses Inclusive - not just software engineers Multidisciplinary - technical and non-tech skills Beginners welcome ... Slide 5 / Slide 6 / 33 33 FlightGear - Key Developments Realistic 3D aircraft and scenery 1996 April, Project started by David Murr ... Intended to be usable on 486 class processors and faster 1997 July, Curt Olson made a multiplatform release ... Merging existing contributions to a consistent usable form 1998 August, Curt creates the official site flightgear.org 1999 May, Added PLIB for better graphics portability 2000 February, Tony's LaRCSim Cessna 172 is default aircraft 2000 May, Wet
    [Show full text]
  • UAV Simulation Environment for Autonomous Flight Control Algorithms
    Graduate Theses, Dissertations, and Problem Reports 2012 UAV Simulation Environment for Autonomous Flight Control Algorithms Ondrej Karas West Virginia University Follow this and additional works at: https://researchrepository.wvu.edu/etd Recommended Citation Karas, Ondrej, "UAV Simulation Environment for Autonomous Flight Control Algorithms" (2012). Graduate Theses, Dissertations, and Problem Reports. 487. https://researchrepository.wvu.edu/etd/487 This Thesis is protected by copyright and/or related rights. It has been brought to you by the The Research Repository @ WVU with permission from the rights-holder(s). You are free to use this Thesis in any way that is permitted by the copyright and related rights legislation that applies to your use. For other uses you must obtain permission from the rights-holder(s) directly, unless additional rights are indicated by a Creative Commons license in the record and/ or on the work itself. This Thesis has been accepted for inclusion in WVU Graduate Theses, Dissertations, and Problem Reports collection by an authorized administrator of The Research Repository @ WVU. For more information, please contact [email protected]. UAV Simulation Environment for Autonomous Flight Control Algorithms Ondřej Karas Thesis submitted to the Benjamin M. Statler College of Engineering and Mineral Resources at West Virginia University in partial fulfillment of the requirements for the degree of Master of Science in Aerospace Engineering Dr. Mario Perhinschi, Chair Dr. Marcello Napolitano Dr. Peter Gall Mechanical and Aerospace Engineering Department Morgantown, West Virginia 2012 Keywords: Simulation Environment; Unmanned Aerial Vehicles; Flight Control Laws; Path Planning; Abnormal Conditions Copyright 2012 Ondřej Karas ABSTRACT UAV Simulation Environment for Autonomous Flight Control Algorithms Ondřej Karas This thesis presents the development of a UAV simulation environment for the design, analysis, and comparison of autonomous flight control laws.
    [Show full text]