exponenta event banner

Шаблон проектов для приложений моделирования полета

Приложения для моделирования полетов

Используйте проекты для организации крупных проектов моделирования полетов и упрощения совместного использования проектов другими пользователями. Этот шаблон обеспечивает основу для совместной разработки приложения моделирования полета. Эту структуру проекта можно настроить для определенных приложений.

Примечание

Чтобы успешно запустить этот пример, установите компилятор C/C + +.

Программное обеспечение Aerospace Blockset™ предоставляет шаблон проектов, который можно использовать для создания собственного приложения моделирования полета. Этот шаблон использует подсистемы вариантов, варианты моделей и ссылочные модели для реализации прикладных компонентов моделирования полета, таких как:

  • Планер, содержащий 6DOF уравнение модели среды движения и динамики исполнительного механизма

  • Модель датчика инерциального измерительного блока (IMU)

  • Подсистема визуализации, ориентированная на FleyGear

  • Модель нелинейной динамики планера

  • Модель линейной динамики планера

Загрузить шаблон моделирования полета

  1. На начальной странице Simulink ® выберите «Моделирование полета».

  2. В окне Создать проект в поле Имя введите имя проекта, например: FlightSimProj.

  3. В поле «Папка» введите папку проекта или перейдите к папке, содержащей, например, проект. FlightSimFolder.

  4. Нажмите кнопку ОК.

    Если папка не существует, появится запрос на ее создание. Нажмите «Да».

    Программа компилирует проект, заполняет папки проекта и открывает основную модель. flightSimulation. Все модели и вспомогательные файлы доступны для настройки для имитационного приложения полета.

Содержимое шаблона проекта

Шаблон проекта имитации полета содержит следующие папки:

  • mainModels

    Содержит расчетную модель верхнего уровня, flightSimulation.Эта модель открывается при запуске. Этот файл содержит блоки верхнего уровня для среды моделирования полета. Модуль Simulink использует блоки Variant Subsystem, Model Variants и Model на этом уровне для адаптации к различным условиям моделирования.

    • Планер самолета может изменяться между нелинейным и линейным заходом на посадку.

    • Команды для самолета могут варьироваться между блоком редактора сигналов, джойстиком или переменной из рабочего пространства.

    • Датчики могут различаться между моделями, которые включают в себя динамику сенсора или прохождение (без связанной динамики).

    • Значения среды могут изменяться между значениями, зависящими от состояния (значения температуры, давления и т.д. зависят от локального положения, широты и т.д.), или постоянными значениями, которые не зависят от значений состояния.

    • Подсистема визуализации предоставляет крючки, которые позволяют работать с состояниями. Например, можно визуализировать состояния с помощью FlireGear или записать их в переменную в рабочей области для дальнейшего анализа. Состояния также можно визуализировать с помощью инспектора данных моделирования.

  • библиотеки

  • Содержит библиотеки, используемые моделями.

  • nonlinearAirframe

    Содержит модель нелинейной динамики планера.

    • Конкретная подсистема (модель ВС), содержащая местозаполнитель для динамики модели самолета. Характеристики этой подсистемы:

      • Приводы и входы окружающей среды. Исполнительные механизмы относятся к общим сигналам, которые могут влиять на поведение самолета (например, электрический сигнал в напряжении, который изменит положение гидравлического исполнительного механизма, подключенного к поверхности управления, такой как элерон).

      • Силы и моменты выдаются. Эффективен в центре тяжести самолета по оси корпуса.

    • 6DOF Блок кватерниона тела (Body Quaternion), который решает дифференциальные уравнения сил и моментов для получения состояний самолета.

  • linearAirframe

    Содержит линейную динамику планера и модель для получения этой линейной динамики. Пример получает эти динамики путем линеаризации нелинейной модели с использованием trimLinearizeOpPoint функции и trimNonlinearAirframe модель. Эта функция использует программное обеспечение Simulink Control Design для выполнения линеаризации. Он выполняет линеаризацию нелинейной модели для данного набора известных входных данных и условий. Для получения дополнительной информации о обрезке и линеаризации см. документацию по Simulink Control Design™). trimLinearizeOpPoint функция сохраняет выходные данные в MAT-файле.

  • диспетчер

    Содержит модели системы управления полетом (FCS) и ее конструкции. Эти модели содержат ссылочные модели для различных архитектур контроллеров, необходимых для проектирования имитации летательных аппаратов.

  • src

    Содержит исходный код, например C-код. Для моделирования также имеются две папки, содержащие S-функции для моделирования. Эти S-функции отображают шины в векторы и наоборот для модели линейного планера. Это отображение может быть изменено в зависимости от схемы линеаризации и набора входов и выходов для модели. Для редактирования индексов различных сигналов можно использовать блок S-Function Builder.

  • задачи

    Содержит сценарии для запуска модели. Эти сценарии не выполняются непрерывно в процессе моделирования.

    Папка также содержит определения невиртуальных шин для состояний, среды и шин датчиков. Эти определения определяют сигналы и характеристики, используемые различными элементами среды моделирования. Эта папка также содержит определения переменных, используемых в рабочей области маски для блоков Sensors, FlireGear, linearAirframe и nonlinearAirfame. Эти утилиты хранят значения параметров в структурах данных. Например, если нелинейная модель использует параметр для блока усиления, сохраненной переменной в структуре является Vehicle.Nonlinear.Gain.gainValue, который указывает на параметр.

  • тесты

    Содержит образец тестового электрического жгута:

    • linearTest содержит фактическую контрольную точку. Этот файл сравнивает подмножество выходов модели линеаризованного планера с выходами нелинейного планера для конкретного условия отделки.

    • runProjectTests запускает все доступные файлы, классифицированные в проекте как «Тесты».

  • утилиты

    Содержит специфичные для проекта утилиты задач обслуживания, такие как:

    • projectPaths - список папок, добавляемых к пути MATLAB ®.

    • rebuildSFunction - Перестраивает S-функции для linearInputBus и linearOutputBus.

    • startVars - определяет переменные, необходимые для среды моделирования в базовой рабочей области. Эта утилита также управляет вариантами с помощью Variants структура. Эта структура позволяет примеру переключаться между нелинейным и линейным аэродинамическим пространством из рабочего пространства путем изменения VSS_VEHICLE от 1 (для нелинейной модели) 0 (для линейной модели). Дополнительные сведения о вариантах подсистем см. в разделе Модель.

  • работа

    Содержит файлы, созданные из каждого прогона. Эти файлы являются производными от исходных файлов, таких как MEX-файл, созданный из кода S-функции C.

В разделе «Ярлыки» проекты создают ярлыки для общих задач:

  • Инициализация переменных - запуск startVars , который инициализирует переменные в базовой рабочей области.

  • Перестроить S-функции - перестраивает S-функции в src папка.

  • Выполнить тесты проекта (Run Project Tests) - запускает тестовые точки с меткой Тесты (Tests) для тестовых файлов в проекте .

  • Расчетная модель верхнего уровня - открывает окно flightSimulation модель. Запускается при запуске проекта.

Метки шаблонов

Предоставляет метки классификации файлов для автоматической сортировки и сортировки компонентов. Эта утилита добавляет метки шаблона, такие как «Испытания», «Проектирование планера», «Проектирование контроллера полета» и «Данные калибровки».

Добавление в проект динамики планера и алгоритма контроллера

  1. Чтобы открыть linearAirframe модель, в flightSimulation дважды щелкните подсистему планера.

  2. Дважды щелкните по нелинейной подсистеме.

  3. В модели переменного тока добавьте динамику планера.

  4. Сохраните модель.

Добавить алгоритм контроллера в проект

  1. Чтобы открыть flightControlSystem модель, в flightSimulationдважды щелкните подсистему FCS.

  2. В подсистеме контроллера добавьте алгоритм контроллера.

  3. Сохраните модель.

Другие вещи, чтобы попытаться:

  • Моделирование модели.

  • Ознакомьтесь с папкой тестов для образцов тестов вашего приложения.

Связанные темы