6DOF (Quaternion)

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

  • Библиотека:
  • Аэрокосмический Уравнения Движения/ 6DOF

  • 6DOF (Quaternion) block

Описание

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

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

Ограничения

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

Порты

Вход

расширить все

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

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

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

Типы данных: 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) ФунтФут-фунтФуты в секунду за секундуФуты в секундуНогиСлизнякSlug foot quared
English (Velocity in kts) ФунтФут-фунтФуты в секунду за секундуУзлыНогиСлизнякSlug foot quared

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

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

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

Тип массыОписаниеПо умолчанию для
Fixed

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

Simple Variable

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

Custom Variable

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

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

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

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

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

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

Euler Angles

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

Quaternion

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

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

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

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

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

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

Параметры блоков: 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]'

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

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

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

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

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

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

Инерция тела, заданная как двойной скаляр.

Зависимости

Чтобы включить этот параметр, установите Mass type равным Fixed.

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

Параметры блоков: inertia
Тип: Вектор символов
Значения: eye(3) | двойной скаляр
По умолчанию: eye(3)

Коэффициент усиления для поддержания нормы вектора кватерниона равной 1,0, заданный как двойной скаляр.

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

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

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

Зависимости

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

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

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

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

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

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

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

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

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

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

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

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

  • Назначение имен состояний с переменной в 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)

Аэрокосмическая Blockset™ использует кватернионы, которые заданы с помощью скалярно-первого соглашения.

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

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

.
Введенный в R2006a
Для просмотра документации необходимо авторизоваться на сайте