JSBSim
JSBSim це програмна модель динаміки польоту з відкритим кодом, що реалізує бібліотеку, яка моделює динаміку польоту аерокосмічного апарату. Бібліотека використовується як складова таких авіасимуляторів як FlightGear і OpenEaagles. JSBSim знаходиться в розробці і використанні з 1996, і може збиратися під всі найбільш популярні платформи, включаючи Linux, Macintosh, і Microsoft Windows operating systems. JSBSim написаний на C++ і використовує конфігураційні файли у форматі XML.
Тип | крос-платформовий інженерний авіасимулятор |
---|---|
Розробник | JSBSim build team |
Стабільний випуск | 1.0.0 Release Candidate (31 May 2009) |
Операційна система | Windows, Linux, Cygwin, Mac OS X, FreeBSD, Solaris, IRIX |
Ліцензія | LGPL |
Вебсайт | jsbsim.org |
Історія і огляд ред.
JSBSim був задуманий у 1996 як легкий, керований даними, не лінійний, із шістьма степенями свободи (6DoF), програмний симулятор, ціллю якого є моделювання динаміки польоту і управління літального апарата. З самого початку, JSBSim розвивався як продукт з відкритим кодом і виріс завдяки широкому колу користвувачів, які зробили в вклад і реалізували свої ідеї для його вдосконалення. Він був вбудований у більші, повно функціональні, авіасимулятори і архітектури (FlightGear і OpenEaagles), і використовується в моделюванні для промисловості і в наукових цілях.
Симулятор має дуже просте використання. Наступний код показує як JSBSim можна виконати за допомогою невеликої програми, і керувати ним за допомогою скрипту:
#include <FGFDMExec.h>
int main(int argc, char **argv)
{
JSBSim::FGFDMExec FDMExec;
bool result = true;
FDMExec.LoadScript(argv[1]);
while (result) result = FDMExec.Run();
}
Програма показана вище працює з бібліотекою JSBSim, і потребує лише файлу конфігурації літального апарату, файл що задає початкові умови і скрипт, який контролює виконання. Всі ці файли задаються в форматі XML (eXtensible Markup Language). Приклад такого файла, який задає аеродинаміку definition is shown below:
<function name="aero/coefficient/CDDf">
<product>
<property>aero/qbar-area</property>
<table>
<independentVar>fcs/flap-pos-deg</independentVar>
<tableData>
0.0 0.0
10.0 0.007
20.0 0.012
30.0 0.018
</tableData>
</table>
</product>
</function>
Вхідні, вихідні дані ред.
Запускаючи JSBSim окремо використовуючи базову програму, необхідно лише вказати ім'я скрипту. Вхідні дані керування можуть передаватися в JSBSim логікою скрипту.
Якщо файл конфігурації літального засобу задає налаштування вхідного порту, користувач також може посилати повідомлення telnet до JSBSim. ЗА допомогою інтерфейсу telnet, можна задавати і зчитувати значення багатьох параметрів, що використовуються в JSBSim. Процедуру симуляції можна поставити на паузу і згодом відновлювати. Можливість спілкування за допомогою telnet, звичайно, буде більш популярна при використанні JSBSim в реальному часі. Програма, яка поставляється з дистрибутивом JSBSim дозволяє здійснювати запуск в режимі реального часу.
JSBSim може перенаправляти вихідні дані, на консоль (екран), у файл, або передавати по мережі. Вихід може одночасно спрямовуватись у будь-яку кількість каналів, де кожен канал може мати будь-який набір даний або окремий конкретний параметр, і може направлятися у будь-який файл або сокет (або навіть консоль), і може видаватися з будь-якою частотою.
Утиліта, яка поставляється з JSBSim перетворює увесь файл вихідних даний JSBSim і створює повний набір графіків у PDF форматі, використовуючи інструмент для побудови графіків, gnuplot.
Посилання ред.
- JSBSim [Архівовано 28 лютого 2015 у Wayback Machine.] Основний вебсайт проекту на SourceForge
- JSBSim Commander Редактор файлів JSBSim (версія beta)
- Описання проекту в форматі wiki [Архівовано 28 лютого 2015 у Wayback Machine.]
На цю статтю не посилаються інші статті Вікіпедії. Будь ласка розставте посилання відповідно до прийнятих рекомендацій. |