Simple Variable Mass 6DOF (Euler Angles)

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

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

  • Simple Variable Mass 6DOF (Euler Angles) block

Описание

Блок Simple Variable Mass 6DOF (Euler Angles) рассматривает вращение зафиксированной телом координатной системы координат (Xb, Yb, Zb) о плоской Наземной системе координат (Xe, Ye, Ze).

Для описания системы координат и поступательной динамики, см. описание для блока Simple Variable Mass 6DOF (Euler Angles). Для получения дополнительной информации о зафиксированной телом координатной системе координат см. Алгоритмы.

Ограничения

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

Порты

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

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

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

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

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

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

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

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

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

Зависимости

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

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

Вывод

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Состояние топливного бака, возвращенное как:

  • 1 — Бак полон.

  • 0 — Бак не полон и не пуст.

  • -1 — Бак пуст.

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

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

Зависимости

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

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

Параметры

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

Основной

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

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

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

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

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

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

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

Simple Variable

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

Custom Variable

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

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

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

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

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

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

Euler Angles

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

Quaternion

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

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

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

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

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

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

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

Пустая масса тела в виде двойного скаляра.

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

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

Полная масса тела в виде двойного скаляра.

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

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

Матрица тензора инерции для пустой инерции тела в виде 3х3 матрицы.

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

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

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

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

Параметры блоков: inertia_f
Ввод: символьный вектор
Значения: '2*eye(3)' | 3х3 матрица
Значение по умолчанию: '2*eye(3)'

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

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

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

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

Зависимости

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Массовое имя состояния в виде вектора символов.

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

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

Алгоритмы

Источник зафиксированной телом координатной системы координат является центром тяжести тела, и тело принято, чтобы быть твердым, предположение, которое избавляет от необходимости рассматривать силы, действующие между отдельными элементами массы. Плоская Наземная система координат рассматривается инерционной, превосходное приближение, которое позволяет силам из-за движения Земли относительно фиксированных звезд быть пропущенными.

Поступательное движение зафиксированной телом координатной системы координат приведено ниже, где приложенные силы [Fx FyFz] T находятся в зафиксированной телом системе координат. Vre b является относительной скоростью в осях тела в который массовый поток (m˙) извлекается или добавляется к телу в осях тела.

F¯b=[FxFyFz]=m(V¯˙b+ω¯×V¯b)+m˙V¯rebAbe=F¯bm˙V¯remAbb=[u˙bv˙bω˙b]=F¯bm˙V¯remω¯×V¯bV¯b=[ubvbwb],ω¯=[pqr]

Вращательные движущие силы зафиксированной телом системы координат приведены ниже, где прикладными моментами является [L MN] T, и тензор инерции, I относительно источника O.

M¯B=[LMN]=Iω¯˙+ω¯×(Iω¯)+I˙ω¯I=[IxxIxyIxzIyxIyyIyzIzxIzyIzz]

Тензор инерции определяется с помощью поиска по таблице, который линейно интерполирует между Ifull и Iempty на основе массы (m). В то время как скорость изменения тензора инерции оценивается следующим уравнением.

I˙=IfullIemptymfullmemptym˙

Отношение между зафиксированным телом вектором скорости вращения, [p q r] T, и скоростью изменения Углов Эйлера, [ϕ˙θ˙ψ˙] T, может быть определен путем решения Эйлеровых уровней в зафиксированную телом координатную систему координат.

[pqr]=[ϕ˙00]+[1000cosϕsinϕ0sinϕcosϕ][0θ˙0]+[1000cosϕsinϕ0sinϕcosϕ][cosθ0sinθ010sinθ0cosθ][00ψ˙]J1[ϕ˙θ˙ψ˙]

Инвертирование J затем дает необходимое отношение, чтобы определить Эйлеров вектор уровня.

[ϕ˙θ˙ψ˙]=J[pqr]=[1(sinϕtanθ)(cosϕtanθ)0cosϕsinϕ0sinϕcosθcosϕcosθ][pqr]

Ссылки

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

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

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

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

Введен в R2006a