6DOF (Euler Angles)

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

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

  • 6DOF (Euler Angles) block

Описание

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

Ограничения

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

Порты

Вход

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

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

Типы данных: 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
По умолчанию: '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 type равным Fixed.

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

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

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

Зависимости

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

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

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

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

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

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

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

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

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

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

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

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

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

Позиционные имена состояний, заданные как разделенный списками , разделенными запятыми, окруженный скобками.

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

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

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

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

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

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

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

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

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

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

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

Алгоритмы

Блок 6DOF (Euler Angles) использует эти концепции систем координат.

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

    Плоская система координат Земли считается инерционной, отличное приближение, которое позволяет пренебрегать силами, обусловленными движением Земли относительно «неподвижных звёзд».

  • Поступательное движение неподвижной координатной системы координат, где приложенные силы [Fx Fy Fz]T находятся в фиксированной по телу системе координат, и масса m тела принята постоянной.

    F¯b=[FxFyFz]=m(V¯˙b+ω¯×V¯b)Abb=[u˙bv˙bw˙b]=1mF¯bω¯×V¯bAbe=1mFbV¯b=[ubvbwb],ω¯=[pqr]

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

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

  • Отношение между вектором скорости вращения с фиксированным телом, [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] Стивенс, Брайан и Фрэнк Льюис, Aircraft Control and Simulation. Hoboken, NJ: Second Edition, John Wiley & Sons, 2003.

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

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

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

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