Custom Variable Mass 6DOF (Euler Angles)

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

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

  • Custom Variable Mass 6DOF (Euler Angles) block

Описание

Блок Custom Variable Mass 6DOF (Euler Angles) реализует представление Угла Эйлера шести уравнений степеней свободы движения пользовательской переменной массы. Это рассматривает вращение зафиксированной телом координатной системы координат (Xb, Yb, Zb) о плоской Наземной системе координат (Xe, Ye, Ze). Для получения дополнительной информации об Углах Эйлера см. Алгоритмы.

Ограничения

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

Порты

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

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

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

Типы данных: 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'

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

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

Euler Angles

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

Quaternion

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

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]'

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

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

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

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

Зависимости

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Алгоритмы

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

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

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

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

M¯B=[LMN]=Iω¯˙+ω¯×(Iω¯)+I˙ω¯I=[IxxIxyIxzIyxIyyIyzIzxIzyIzz]I˙=[I˙xxI˙xyI˙xzI˙yxI˙yyI˙yzI˙zxI˙zyI˙zz]

Отношение между зафиксированным телом вектором скорости вращения, [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