Simple Variable Mass 6DOF (Euler Angles)

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

  • Библиотека:
  • Аэрокосмический Уравнения Движения/ 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 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 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]'

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

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

Параметры блоков: 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'}. Каждое имя должно быть уникальным.

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

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

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

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

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

  • Назначение имен состояний с переменной в 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 относительно origin 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] Стивенс, Брайан и Фрэнк Льюис. Управление и симуляция самолета. 2nd ed. Hoboken, NJ: John Wiley & Sons, 2003.

[2] Zipfel, Peter H. Моделирование и симуляция аэрокосмической Динамики аппарата. 2nd ed. Reston, VA: AIAA Education Series, 2007.

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

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

.
Введенный в R2006a