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:
Поверните родительскую систему координат вокруг оси z, чтобы получить новый набор осей (x', y', z), где x - и y - оси изменились на x '- и y' -аксисы и z - ось остаются неизменными.
Поверните новый набор осей вокруг y '-оси, получая другой новый набор осей (x ", y', z ').
Поверните этот новый набор осей вокруг x «-axis, придя к нужной дочерней системе координат (x», y «, z»).
Эта последовательность вращений выполняется в соответствии с конвенцией, изложенной в [1]. Матрица поворота, необходимая для преобразования вектора в родительской системе координат в вектор в дочерней системе координат для заданного рыскания, тангажа и крена, вычисляется как:
Для функций, которые поддерживают основанную на кадрах обработку, Sensor Fusion and Tracking Toolbox предоставляет координаты в виде матрицы N-на-3, где N - количество выборок во времени, и три столбца соответствуют x -, y - и z - осям. Следующее вычисление поворачивает родительскую систему координат к дочерней системе координат:
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');
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 использует следующие соглашения при описании положения.
Свойство/поле | Описание | Модули | Координатная система координат |
---|---|---|---|
Положение | Текущее положение платформы в сценарии | m | NED или ENU |
Скорость | Текущая скорость платформы в сценарии | м/с | NED или ENU |
Ускорение | Текущее ускорение платформы в сценарии | м/с2 | NED или ENU |
Ориентация | Текущая ориентация платформы в сценарии | единичная кватернион/матрица ориентации | Н/Д |
Скорость вращения | Текущая скорость вращения платформы в сценарии | рад/с | NED или ENU |
Trajectory определяет, как изменяется положение с течением времени. Чтобы сгенерировать траектории «основная истина» в Sensor Fusion and Tracking Toolbox, используйте kinematicTrajectory
или waypointTrajectory
. Чтобы симулировать отслеживание нескольких платформ, используйте trackingScenario
.
quaternion
| Вращение, ориентация и кватернионы
[1] IEEE. Стандарт для распределенной интерактивной симуляции - Протоколы приложений. IEEE P1278.1/D16 ред. 18, май 2012.