Ориентация, положение и координата

Sensor Fusion and Tracking Toolbox™ позволяет Вам отследить ориентацию, положение, положение и траекторию платформы. platform относится, как правило, к любому объекту, который вы хотите отследить.

Ориентация

Orientation определяется угловым перемещением. Ориентация может быть описана в терминах поворота точки или системы координат. При повороте точки система координат является статической, и точка перемещается. При повороте кадра точка является статической, и система координат перемещается. Для заданных оси и угла поворота вращение точки и вращение системы координат определяют эквивалентное угловое перемещение, но в противоположных направлениях.

Sensor Fusion and Tracking Toolbox по умолчанию задает вращение кадра.

Ориентация определяется как поворот системы координат, который переносит родительскую систему координат в дочернюю систему координат. Выбор родительской системы координат зависит от пространства задач. Например, манипулирование системами координат датчика необходимо для выравнивания различных осей независимых датчиков. Отслеживание каркаса кузова часто используется для задач стабилизации. Наземная система координат полезна для отслеживания нескольких независимых платформ и определения местоположения платформ в абсолютном смысле.

Sensor Fusion and Tracking Toolbox в основном поддерживает координатную систему координат NED (north-east-down). Можно также использовать систему координат ENU (east-north-up) во многих функциях.

Вращение системы координат

Чтобы связать одну ориентацию с другой, необходимо повернуть систему координат. Таблица суммирует соглашения о вращении, которые используют Sensor Fusion and Tracking Toolbox. Трехосевая координата всегда задается в порядке [x, y, z].

ПеременнаяУгол ЭйлераСимволВыходной интервал ( степени)
zРысканиеψ

−180 ≤ <reservedrangesplaceholder0> <180

yТангажθ

−90 ≤ <reservedrangesplaceholder0> ≤ 90

xКренϕ

−180 ≤ <reservedrangesplaceholder0> <180

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

Чтобы задать трехмерное вращение системы координат, необходимо повернуть последовательно вокруг осей. Sensor Fusion and Tracking Toolbox использует внутренний (переносимая система координат) поворот, при котором после каждого вращения ось обновляется перед следующим вращением. Для примера, чтобы повернуть ось с помощью соглашения ZYX:

  1. Поверните родительскую систему координат вокруг оси z, чтобы получить новый набор осей (x', y', z), где x - и y - оси изменились на x '- и y' -аксисы и z - ось остаются неизменными.

    [x'y'z]=Rz(ψ)[xyz]

  2. Поверните новый набор осей вокруг y '-оси, получая другой новый набор осей (x ", y', z ').

    [x''y'z']=Ry(θ)[x'y'z]

  3. Поверните этот новый набор осей вокруг x «-axis, придя к нужной дочерней системе координат (x», y «, z»).

    [x''y''z'']=Rx(ϕ)[x''y'z']

Эта последовательность вращений выполняется в соответствии с конвенцией, изложенной в [1]. Матрица поворота, необходимая для преобразования вектора в родительской системе координат в вектор в дочерней системе координат для заданного рыскания, тангажа и крена, вычисляется как:

R(ψ,θ,ϕ)=Rx(ψ)Ry(θ)Rz(ϕ)=[cosψcosθsinψcosθsinθcosψsinθsinϕsinψcosϕsinψsinθsinϕ+cosψcosϕcosθsinϕcosψsinθcosϕ+sinψcosϕsinψsinθsinϕ+cosψcosϕcosθcosϕ]

Для функций, которые поддерживают основанную на кадрах обработку, Sensor Fusion and Tracking Toolbox предоставляет координаты в виде матрицы N-на-3, где N - количество выборок во времени, и три столбца соответствуют x -, y - и z - осям. Следующее вычисление поворачивает родительскую систему координат к дочерней системе координат:

achild=(R(ψ,θ,ϕ)×(aparent)T)T

Sensor Fusion and Tracking Toolbox позволяет эффективно вычислять ориентацию с помощью quaternion тип данных. Чтобы создать матрицу вращения с использованием кватернионов, используйте rotmat функция.

% Euler angles defining orientation of local axes
yaw = 20;
pitch = 5;
roll = 10;

% Create orientation matrix from Euler angles using quaternion class
q = quaternion([yaw pitch roll],'eulerd','zyx','frame');
myRotationMatrix = rotmat(q,'frame');
Дополнительные сведения об использовании кватернионов в Sensor Fusion and Tracking Toolbox см. в разделах «Ориентация, положение и системы координат».

Положение

Position определяется как поступательное расстояние от начала родительской системы координат до начала дочерней системы координат. Для примера примите локальную систему координат NED в качестве родительской системы координат. В системе координат NED:

  • Источник произвольно фиксируется в точке на поверхности Земли. Это делает систему координат NED local.

  • Ось x указывает на север эллипсоида.

  • Ось y указывает на эллипсоид на восток.

  • Ось z указывает вниз по нормали эллипсоида (геодезическая широта, ρ).

Азимут и повышение

Задан вектор в R3:

  • Azimuth определяется как угол от оси x до ортогональной проекции вектора на плоскость xy. Угол положительный от оси x к оси y. Азимут дается в степенях в области значений [− 180, 180).

  • Elevation определяется как угол от проекции на xy-плоскость к вектору. Угол положительный, от xy -плоска до z -оси. Повышение высоты определяется степенями в области значений [− 90, 90].

Положение

Чтобы полностью задать объект в трехмерном пространстве, можно объединить положение и ориентацию. Pose определяется как комбинация положения и ориентации. Sensor Fusion and Tracking Toolbox использует следующие соглашения при описании положения.

Свойство/полеОписаниеМодулиКоординатная система координат
ПоложениеТекущее положение платформы в сценарииmNED или ENU
СкоростьТекущая скорость платформы в сценариим/сNED или ENU
УскорениеТекущее ускорение платформы в сценариим/с2NED или ENU
ОриентацияТекущая ориентация платформы в сценарииединичная кватернион/матрица ориентацииН/Д
Скорость вращенияТекущая скорость вращения платформы в сценариирад/сNED или ENU

Траектория

Trajectory определяет, как изменяется положение с течением времени. Чтобы сгенерировать траектории «основная истина» в Sensor Fusion and Tracking Toolbox, используйте kinematicTrajectory или waypointTrajectory. Чтобы симулировать отслеживание нескольких платформ, используйте trackingScenario.

См. также

|

Ссылки

[1] IEEE. Стандарт для распределенной интерактивной симуляции - Протоколы приложений. IEEE P1278.1/D16 ред. 18, май 2012.