[原][译]JSBSim官方源码文档翻译(google翻译)
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CLASS DOCUMENTATION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ /** \mainpage JSBSim * An Open Source, Object-Oriented, Cross-Platform Flight Dynamics Model in C++ * \section intro Introduction * * JSBSim is an open source, multi-platform, object-oriented flight dynamics * model (FDM) framework written in the C++ programming language. It is * designed to support simulation modeling of any aerospace craft without the * need for specific compiled and linked program code, instead relying on a * relatively simple model specification written in a XML format. The format is * formally known as JSBSim-ML (JSBSim Markup Language). JSBSim是一个用C ++编程语言编写的开源,多平台,面向对象的飞行动力学模型(FDM)框架。 它旨在支持任何航空航天工艺的仿真建模,而无需特定的编译和链接程序代码,而是依赖于以XML格式编写的相对简单的模型规范。 格式正式称为JSBSim-ML(JSBSim标记语言) * * JSBSim (www.jsbsim.org) was created initially for the open source FlightGear * flight simulator (www.flightgear.org), where it replaced LaRCSim (Langley * Research Center Simulation) as the default FDM. JSBSim also maintains the * ability to run in a standalone, batch mode. This is useful for running tests * or sets of tests automatically using the internal scripting capability. JSBSim(www.jsbsim.org)最初是为开源FlightGear飞行模拟器(www.flightgear.org)创建的, 它取代了LaRCSim(Langley Research Center Simulation)作为默认FDM。 JSBSim还保持以独立批处理模式运行的能力。 这对于使用内部脚本功能自动运行测试或测试集非常有用。 * * Differently from LaRCSim, JSBSim does not model specific aircraft in program * code. The aircraft itself is defined in a file written in an XML-based format * where the aircraft mass and geometric properties are specified. Additional * statements define: 与LaRCSim不同,JSBSim不会在程序代码中为特定飞机建模。 飞机本身在以基于XML的格式编写的文件中定义,其中指定了飞机质量和几何属性。 附加声明定义: * * - Landing gear location and properties. * - Pilot eyepoint * - Additional point masses (passengers, cargo, etc.) * - Propulsion system (engines, fuel tanks, and "thrusters") * - Flight control system * - Autopilot * - Aerodynamic stability derivatives and coefficients * - 起落架的位置和属性。 * - 飞行员眼点 * - 附加点质量(乘客,货物等) * - 推进系统(发动机,油箱和“推进器”) * - 飞行控制系统 * - 自动驾驶仪 * - 空气动力学稳定性导数和系数 * * The configuration file format is set up to be easily comprehensible, for * instance featuring textbook-like coefficients, which enables newcomers to * become immediately fluent in describing vehicles, and requiring only prior * basic theoretical aero knowledge. 配置文件格式被设置为易于理解,例如具有类似教科书的系数, 这使得新手能够立即流畅地描述车辆,并且仅需要先前的基本理论空气动力学知识。 * * One of the more unique features of JSBSim is its method of modeling flight * control systems and an autopilot. These are modeled by assembling strings * of components that represent filters, switches, summers, gains, sensors, etc. JSBSim的一个更独特的功能是它的飞行控制系统建模方法和自动驾驶仪。 这些是通过组装代表滤波器,开关,加法器,增益,传感器等的组件串来建模的。 * * Another unique feature is displayed in the use of "properties". Properties * essentially expose chosen variables as nodes in a tree, in a directory-like * hierarchy. This approach facilitates plugging in different FDMs into * FlightGear, but it also is a fundamental tool in allowing a wide range of * aircraft to be modeled, each having its own unique control system, * aerosurfaces, and flight deck instrument panel. The use of properties allows * all these items for a craft to be modeled and integrated without the need for * specific and unique program source code. 使用“属性”时会显示另一个独特的功能。 属性实质上将所选变量作为树中的节点暴露在类似目录的层次结构中。 这种方法有助于将不同的FDM插入FlightGear,但它也是允许对各种飞机进行建模的基本工具, 每种飞机都有自己独特的控制系统,航空表面和驾驶舱仪表板。 使用属性允许对工艺的所有这些项目进行建模和集成,而无需特定和唯一的程序源代码。 * * The equations of motion are modeled essentially as they are presented in * aerospace textbooks for the benefit of student users, but quaternions are * used to track orientation, avoiding "gimbal lock". While JSBSim is * designed to model primarily atmospheric flight at lower speeds, coriolis and * centripetal accelerations are incorporated into the EOM to * permit a wider range of vehicles to be simulated. 运动方程基本上是为了学生用户的利益在航空航天教科书中进行建模,但四元数用于跟踪方向,避免“万向节锁定”。 虽然JSBSim设计用于以较低速度主要模拟大气飞行,但科隆和向心加速度被整合到EOM中,以允许模拟更广泛的载具。 * * Currently under development is an expansion of the atmospheric modeling for * JSBSim. The existing model approximates the standard atmosphere of 1976. * Recently, source code for the NRLMSISE-00 model was obtained and this is * being implemented as a C++ class that can optionally be used. Also, a simple * Mars atmosphere is being implemented. 目前正在开发的是JSBSim的大气模型的扩展。 现有模型近似于1976年的标准大气。 最近,获得了NRLMSISE-00模型的源代码,并且这是作为可以选择使用的C ++类实现的。 此外,正在实施简单的火星气氛。 * * JSBSim can output (log) data in a configurable way. Sets of data that are * logically related can be selected to be output at a chosen rate, and * individual properties can be selected for output. The output can be streamed * to the console, or to a file, and can also be transmitted through a socket. JSBSim可以以可配置的方式输出(记录)数据。 可以选择逻辑相关的数据集以选择的速率输出,并且可以选择各个属性用于输出。 输出可以流式传输到控制台或文件,也可以通过套接字传输。 * * JSBSim has been used in a variety of ways: * * - For developing control laws for a sounding rocket * - For crafting an aircraft autopilot as part of a thesis project * - As a flight model for FlightGear * - As an FDM that drives motion base simulators for some * commercial/entertainment simulators * * \section Supported Platforms: * JSBSim has been built on the following platforms: * * - Linux (x86) * - Windows (MSVC, Cygwin, Mingwin) * - SGI (native compilers) * - Mac OS X * - FreeBSD * * \section depends Dependencies * * JSBSim has no dependencies at present. * * \section license Licensing * * JSBSim is licensed under the terms of the Lesser GPL (LGPL) * * \section website Website * * For more information, see the JSBSim web site: www.jsbsim.org. */
译文:
JSBSim是一个用C ++编程语言编写的开源,多平台,面向对象的飞行动力学模型(FDM)框架。
它旨在支持任何航空航天工艺的仿真建模,而无需特定的编译和链接程序代码,而是依赖于以XML格式编写的相对简单的模型规范。
格式正式称为JSBSim-ML(JSBSim标记语言)
JSBSim(www.jsbsim.org)最初是为开源FlightGear飞行模拟器(www.flightgear.org)创建的,
它取代了LaRCSim(Langley Research Center Simulation)作为默认FDM。
JSBSim还保持以独立批处理模式运行的能力。
这对于使用内部脚本功能自动运行测试或测试集非常有用。
与LaRCSim不同,JSBSim不会在程序代码中为特定飞机建模。
飞机本身在以基于XML的格式编写的文件中定义,其中指定了飞机质量和几何属性。
附加声明定义:
* - 起落架的位置和属性。
* - 飞行员眼点
* - 附加点质量(乘客,货物等)
* - 推进系统(发动机,油箱和“推进器”)
* - 飞行控制系统
* - 自动驾驶仪
* - 空气动力学稳定性导数和系数
配置文件格式被设置为易于理解,例如具有类似教科书的系数,
这使得新手能够立即流畅地描述车辆,并且仅需要先前的基本理论空气动力学知识。
JSBSim的一个更独特的功能是它的飞行控制系统建模方法和自动驾驶仪。
这些是通过组装代表滤波器,开关,加法器,增益,传感器等的组件串来建模的。
使用“属性”时会显示另一个独特的功能。 属性实质上将所选变量作为树中的节点暴露在类似目录的层次结构中。
这种方法有助于将不同的FDM插入FlightGear,但它也是允许对各种飞机进行建模的基本工具,
每种飞机都有自己独特的控制系统,航空表面和驾驶舱仪表板。
使用属性允许对工艺的所有这些项目进行建模和集成,而无需特定和唯一的程序源代码。
运动方程基本上是为了学生用户的利益在航空航天教科书中进行建模,但四元数用于跟踪方向,避免“万向节锁定”。
虽然JSBSim设计用于以较低速度主要模拟大气飞行,但科隆和向心加速度被整合到EOM中,以允许模拟更广泛的载具。
目前正在开发的是JSBSim的大气模型的扩展。 现有模型近似于1976年的标准大气。
最近,获得了NRLMSISE-00模型的源代码,并且这是作为可以选择使用的C ++类实现的。
此外,正在实施简单的火星气氛。
JSBSim可以以可配置的方式输出(记录)数据。
可以选择逻辑相关的数据集以选择的速率输出,并且可以选择各个属性用于输出。
输出可以流式传输到控制台或文件,也可以通过套接字传输。