Custom Variable Mass 6DOF (Quaternion)

Реализуйте представление кватерниона шести уравнений степеней свободы движения пользовательской переменной массы относительно осей тела

  • Библиотека:
  • Aerospace Blockset / уравнения Движения / 6DOF

  • Custom Variable Mass 6DOF (Quaternion) block

Описание

Блок Custom Variable Mass 6DOF (Quaternion) реализует представление кватерниона шести уравнений степеней свободы движения пользовательской переменной массы относительно осей тела. Для описания системы координат и поступательной динамики, см. описание блока для блока Custom Variable Mass 6DOF (Euler Angles).

Aerospace Blockset™ использует кватернионы, которые заданы с помощью скалярного первого соглашения. Для получения дополнительной информации об интегрировании скорости изменения вектора кватерниона см. Алгоритмы.

Ограничения

Блок принимает, что приложенные силы действуют в центре тяжести тела.

Порты

Входной параметр

развернуть все

Приложенные силы в виде трехэлементного вектора.

Типы данных: double

Прикладные моменты в виде трехэлементного вектора.

Типы данных: double

Одна или несколько скоростей изменения массы (положительный, если аккумулируется, отрицательный, если удалено) в виде трехэлементного вектора.

Зависимости

Чтобы включить этот порт, выберите Include mass flow relative velocity.

Типы данных: double

Масса в виде скаляра.

Типы данных: double

Скорость изменения матрицы тензора инерции в виде 3х3 матрицы.

Типы данных: double

Матрица тензора инерции в виде 3х3 матрицы.

Типы данных: double

Одна или несколько относительных скоростей, при которых масса аккумулируется к или удаляется от тела в зафиксированных телом осях в виде трехэлементного вектора.

Зависимости

Чтобы включить этот порт, выберите Include mass flow relative velocity.

Типы данных: double

Вывод

развернуть все

Скорость в плоской Наземной системе координат, возвращенной как трехэлементный вектор.

Типы данных: double

Положение в плоской Наземной системе координат, возвращенной как трехэлементный вектор.

Типы данных: double

Эйлеровы углы поворота [список, подача, отклонение от курса], возвратились как трехэлементный вектор в радианах.

Типы данных: double

Координатное преобразование от плоских Наземных осей до зафиксированных телом осей, возвращенных как 3х3 матрица.

Типы данных: double

Скорость в зафиксированной телом системе координат, возвращенной как трехэлементный вектор.

Типы данных: double

Угловые уровни в зафиксированных телом осях, возвращенных как трехэлементный вектор, в радианах в секунду.

Типы данных: double

Угловые ускорения в зафиксированных телом осях, возвращенных как трехэлементный вектор, в радианах в секунду, придали квадратную форму.

Типы данных: double

Ускорения в зафиксированных телом осях относительно системы координат тела, возвращенной как трехэлементный вектор.

Типы данных: double

Ускорения в зафиксированных телом осях относительно инерционной системы координат (плоская Земля), возвращенный как трехэлементный вектор. Вы обычно соединяете этот сигнал с акселерометром.

Зависимости

Этот порт появляется только, когда флажок Include inertial acceleration устанавливается.

Типы данных: double

Параметры

развернуть все

Основной

Модули ввода и вывода в виде Metric (MKS), English (Velocity in ft/s), или English (Velocity in kts).

МодулиСилыМоментУскорениеСкоростьПоложениеМассаИнерция
Metric (MKS) НьютонНьютон-метрМетры в секунду придали квадратную формуМетры в секундуМетрыКилограммКилограммометр придал квадратную форму
English (Velocity in ft/s) ФунтФуто-фунтНоги в секунду придали квадратную формуНоги в секундуФутыКраткий заголовокОтложите нога придала квадратную форму
English (Velocity in kts) ФунтФуто-фунтНоги в секунду придали квадратную формуУзлыФутыКраткий заголовокОтложите нога придала квадратную форму

Программируемое использование

Параметры блоков: units
Ввод: символьный вектор
Значения: Metric (MKS) | English (Velocity in ft/s) | English (Velocity in kts)
Значение по умолчанию: Metric (MKS)

Массовый тип, заданный согласно следующей таблице.

Массовый типОписаниеЗначение по умолчанию для
Fixed

Масса является постоянной в течение симуляции.

Simple Variable

Масса и инерция варьируются линейно как функция массового уровня.

Custom Variable

Масса и изменения инерции настраиваемы.

Custom Variable выбор соответствует ранее описанным уравнениям движения.

Программируемое использование

Параметры блоков: mtype
Ввод: символьный вектор
Значения: Fixed | Simple Variable | Custom Variable
Значение по умолчанию: 'Custom Variable'

Уравнения представления движения, заданного согласно следующей таблице.

ПредставлениеОписание

Quaternion

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

Euler Angles

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

Quaternion выбор соответствует уравнениям движения в Алгоритмах.

Программируемое использование

Параметры блоков: rep
Ввод: символьный вектор
Значения: Euler Angles | Quaternion
Значение по умолчанию: 'Euler Angles'

Начальное местоположение тела в плоской Наземной системе координат в виде трехэлементного вектора.

Программируемое использование

Параметры блоков: xme_0
Ввод: символьный вектор
Значения: '[0 0 0]' | трехэлементный вектор
Значение по умолчанию: '[0 0 0]'

Начальная скорость в осях тела в виде трехэлементного вектора, в зафиксированной телом координатной системе координат.

Программируемое использование

Параметры блоков: Vm_0
Ввод: символьный вектор
Значения: '[0 0 0]' | трехэлементный вектор
Значение по умолчанию: '[0 0 0]'

Начальные Эйлеровы углы ориентации [список, подача, отклонение от курса] в виде трехэлементного вектора, в радианах. Эйлеровы углы поворота - те между телом и северо-востоком вниз (NED) системы координат.

Программируемое использование

Параметры блоков: eul_0
Ввод: символьный вектор
Значения: '[0 0 0]' | трехэлементный вектор
Значение по умолчанию: '[0 0 0]'

Начальная буква зафиксированные телом угловые уровни относительно NED структурирует в виде трехэлементного вектора в радианах в секунду.

Программируемое использование

Параметры блоков: pm_0
Ввод: символьный вектор
Значения: '[0 0 0]' | трехэлементный вектор
Значение по умолчанию: '[0 0 0]'

Получите, чтобы обеспечить норму вектора кватерниона, равного 1,0 в виде двойного скаляра.

Программируемое использование

Параметры блоков: k_quat
Ввод: символьный вектор
Значения: 1.0 | двойной скаляр
Значение по умолчанию: 1.0

Установите этот флажок, чтобы добавить массовый скоростной порт родственника потока. Это - относительная скорость, при которой масса аккумулируется или удаляется.

Программируемое использование

Параметры блоков: vre_flag
Ввод: символьный вектор
Значения: off | on
Значение по умолчанию: off

Установите этот флажок, чтобы добавить инерционный ускоряющий порт.

Зависимости

Чтобы включить порт Abe, выберите этот параметр.

Программируемое использование

Параметры блоков: abi_flag
Ввод: символьный вектор
Значения: 'off' | 'on'
Значение по умолчанию: off

Атрибуты состояния

Присвойте уникальное имя каждому состоянию. Можно использовать имена состояния вместо путей к блоку во время линеаризации.

  • Чтобы присвоить имя к одному состоянию, введите уникальное имя между кавычками, например, 'velocity'.

  • Чтобы присвоить имена к нескольким состояниям, введите список, разделенный запятыми, окруженный фигурными скобками, например, {'a', 'b', 'c'}. Каждое имя должно быть уникальным.

  • Если параметр пуст (' '), никакое имя не присвоено.

  • Имена состояния применяются только к выбранному блоку параметром имени.

  • Количество состояний должно разделиться равномерно среди количества имен состояния.

  • Можно задать меньше имен, чем состояния, но вы не можете задать больше имен, чем состояния.

    Например, можно задать два имени в системе с четырьмя состояниями. Имя применяется к первым двум состояниям и второму имени к последним двум состояниям.

  • Чтобы присвоить имена состояния с переменной в рабочей области MATLAB®, введите переменную без кавычек. Переменная может быть вектором символов, массивом ячеек или структурой.

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

Программируемое использование

Параметры блоков: xme_statename
Ввод: символьный вектор
Значения: '' | список, разделенный запятыми окружается фигурными скобками
Значение по умолчанию: ''

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

Программируемое использование

Параметры блоков: Vm_statename
Ввод: символьный вектор
Значения: '' | список, разделенный запятыми окружается фигурными скобками
Значение по умолчанию: ''

Вектор кватерниона утверждает имена в виде списка, разделенного запятыми, окруженного фигурными скобками.

Программируемое использование

Параметры блоков: quat_statename
Ввод: символьный вектор
Значения: '' | список, разделенный запятыми окружается фигурными скобками
Значение по умолчанию: ''

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

Программируемое использование

Параметры блоков: pm_statename
Ввод: символьный вектор
Значения: '' | список, разделенный запятыми окружается фигурными скобками
Значение по умолчанию: ''

Алгоритмы

Интегрирование скорости изменения вектора кватерниона приведено ниже. Усиление K управляет нормой вектора состояния кватерниона к 1,0, должно ε становиться ненулевым. Необходимо выбрать значение этого усиления с осторожностью, потому что большое значение улучшает уровень затухания ошибки в норме, но также и замедляет симуляцию, потому что введены быстрые движущие силы. Ошибка в величине в одном элементе вектора кватерниона распространена одинаково среди всех элементов, потенциально увеличив ошибку в векторе состояния.

[q˙0q˙1q˙2q˙3]=12[0pqrp0rqqr0prqp0][q0q1q2q3]+Kε[q0q1q2q3]ε=1(q02+q12+q22+q32).

Ссылки

[1] Стивенс, Брайан и Франк Льюис. Управление самолетом и Симуляция, 2-й редактор Хобокен, NJ: John Wiley & Sons, 2003.

[2] Zipfel, Питер Х. Моделинг и Симуляция Космической Динамики аппарата. 2-й редактор Рестон, ВА: Образовательный Ряд AIAA, 2007.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Введен в R2006a