Font Size: a A A

The Research On The Flight Dynamic Model Of Elementary Training Planes

Posted on:2009-10-21Degree:MasterType:Thesis
Country:ChinaCandidate:Y LiFull Text:PDF
GTID:2178360242980981Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
In order to improve the efficiency and quality and save money, a networked real time flight simulation system model is designed and implemented in this paper. In order to improve the capability of general and real time, we adopt a completely data-driven technique and design an effective aerodynamic math model using stability coefficients. Through a simple configuration of the XML files, it can simulate various aircraft manipulations and provide a flight simulation platform for training the pilots.The FDM framework that is introduced and created in this paper is a generic, completely data-driven FDM framework, 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:A. Employs object-oriented design principlesB. Compiles across common platforms and compilersC. Can run as an standalone modelD. 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 is a caracteristic of objects that operate differently internally, but have the same interface. For example, the model 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 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.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 the model, because the number of engines, coefficients, FCS components, etc. are unknown until the program is executed, Other incidental advantages in the use of C++ are not introduced here.The set of models that comprise the framework includes: Aerodynamics, Propulsion and Flight Control. The aerodynamic, flight control, propulsion, and ground reaction models all feature a manager class that loads model information from a file, creates and maintains a list of objects, and cyclically executes each object in the list.1) AerodynamicsModel uses a coefficient build-up method for modeling the aerodynamic characteristics of aircraft. Any number of coefficients (or none at all) can be defined for each of the three axes (rotational and translational): lift, drag, side, pitch, roll, and yaw. Each coefficient specification includes a definition comment, and a reference to the parameters needed to turn the coefficient into a force or moment. The coefficient can be a simple value, or determined by lookup into a one, two, or three-dimensional table.During simulation initialization, as each model section of the aircraft specification file is encountered, the file handle is passed to the Load() method of the relevant model class for parsing. For the aerodynamics model the FGAerodynamics class provides the Load() method. As each coefficient definition is encountered and parsed, a new FGCoefficient class object is instantiated (created) and stored in a Standard Template Library (STL) vector which is effectively a self-sizing array. At runtime, each FGCoefficient object is queried for its value, and a total force or moment sum is subsequently calculated for each axis.2) PropulsionThe framework models the operation of several types of engines. The models are not rigorously complete, high fidelity, engineering models¨they exist for the purpose of providing a realistic perception of the propulsion system from the point of view of a pilot, as well as providing accurate forces and moments on the aircraft.The FGPropulsion class manages all aspects of the propulsion system, which is comprised of zero, one, or several engines (perhaps of different types) each paired with a thruster, and one or more fuel tanks. The propulsion system definition contained in the aircraft specification file itself includes the filenames of both the engine and the thruster specification files to be used, as well as non-specific information such as the location and orientation of the engine and associated thruster.The propeller thrust is determined by first calculating the power required to keep the propeller spinning in the current conditions. A comparison is made between required power and current engine power output, and the excess power is used to accelerate (or decelerate) the propeller. Propeller thrust can then be determined from the thrust coefficient table. Additional effects modeled with the piston engine / propeller combination include gyroscopic effects due to the spinning drive shaft and propeller, and P-factor.3) Flight Control SystemThe framework models a flight control system by providing a suite of components that can be connected to represent the control laws for an aircraft. Similar to the aerodynamic and the propulsion system models, there is a managing class (FGFCS) and a component base class (FGFCSComponent). Specific control components are derived from the base class. The components that are currently modeled include: Multi-purpose filter ,Switch ,Gain and so on.As is the case with the propulsion and aerodynamic model managers, the FCS manager parses a list ocomponent definitions from the aircraft specification file and creates a list of components. At runtime, the list iiterated over and each component in turn is executed, with the result¨Cthe output¨Cof one component in a strinbeing the input of a subsequent component in the string until the last component in that string is reached. At thatpoint, the result is assigned to the final destination. In many cases, the specified final destination is an aerosurface.Additional models and features are described briefly below. It should be mentioned that some models require physical information about the aircraft, such as center of gravity (CG) location, landing gear location, etc. Locations are specified in inches, and in the structural frame. This frame is defined with the X-axis increasing aft, Y increasing towards the right, and Z completing the right hand system. The use of this reference frame was adopted based on the most commonly encountered frame used in technical reports, textbooks, and other reference material.The default atmosphere model for the framework is the 1976 Standard Atmosphere. the equations of motion (EOM) are described motion in a flat earth reference frame. Quaternions are used for angular state integration. It should be mentioned that some models require physical information about the aircraft, such as center of gravity (CG) location, landing gear location, etc. A desired state can be specified using the initial conditions class (FGInitialCondition).In practice, it is satisfied the needs brought forward and has been used in the instrument flight training system developed for the airforce.
Keywords/Search Tags:flight simulation, aerodynamics, data-driven
PDF Full Text Request
Related items