Sensor Fusion and Tracking Toolbox™ позволяет вам отследить ориентацию, положение, положение и траекторию платформы. platform обычно относится к любому объекту, который вы хотите отследить.
Orientation задан угловым смещением. Ориентация может быть описана в терминах вращения системы координат или точки. Во вращении точки система координат является статической и перемещения точки. Во вращении системы координат точка является статической и перемещения системы координат. Для данной оси и угла вращения, вращение точки и вращение системы координат задают эквивалентное угловое смещение, но в противоположных направлениях.
Значения по умолчанию Sensor Fusion and Tracking Toolbox, чтобы структурировать вращение.
Ориентация задана как вращение системы координат, которое берет родительскую систему координат к дочерней системе координат. Выбор родительской системы координат зависит от пространства задач. Например, управление системами координат датчика необходимо, чтобы выровнять различные оси независимых датчиков. Отслеживание системы координат тела часто используется в задачах стабилизации. Наземная система координат полезна для отслеживания нескольких независимых платформ и определения местоположения платформ в абсолютном смысле.
Sensor Fusion and Tracking Toolbox, в основном, поддерживает NED (северо-восточная вниз) координатная система координат. Можно также использовать систему координат координаты ENU (восточный север) во многих функциях.
Чтобы связать одну ориентацию с другим, необходимо вращать систему координат. Таблица суммирует соглашения вращения, которые использует Sensor Fusion and Tracking Toolbox. Координата с тремя осями всегда задается в порядке [x, y, z].
Переменная | Угол Эйлера | Символ | Выведите интервал (степени) |
---|---|---|---|
z | Отклонение от курса | ψ |
−180 ≤ ψ < 180 |
y | Тангаж | θ |
−90 ≤ θ ≤ 90 |
x | Крен | ϕ |
−180 ≤ ϕ < 180 |
Положительный угол поворота соответствует по часовой стрелке вращение вокруг оси при просмотре от источника вдоль положительного направления оси. Правое соглашение эквивалентно, где положительное вращение обозначается направлением, в котором завихряются пальцы на вашей правой руке, когда ваш ползунок указывает в направлении оси вращения.
Чтобы задать 3D вращение системы координат, необходимо вращаться последовательно об осях. Sensor Fusion and Tracking Toolbox использует внутренний параметр (несомая система координат) вращение, в котором, после каждого вращения, ось обновляется перед следующим вращением. Например, чтобы вращать ось с помощью соглашения ZYX:
Вращайте родительскую систему координат о z - ось, чтобы дать к новому набору осей, (x', y', z), где x - и y - оси превратились в x '-и '-оси y и z - ось остается неизменной.
Вращайте новый набор осей о '-оси y, давая к другому новому набору осей, (x'', y', z').
Вращайте этот новый набор осей о x' '-ось, прибывающая в желаемую дочернюю систему координат, (x'', y'', z'').
Эта последовательность вращений следует соглашению, обрисованному в общих чертах в [1]. Матрица вращения, требуемая преобразовывать вектор в родительской системе координат к вектору в дочерней системе координат для данного отклонения от курса, подачи и списка, вычисляется как:
Для функций, что основанная на опорной раме обработка, Sensor Fusion and Tracking Toolbox обеспечивает координаты как N-by-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 |
Скорость | Текущая скорость платформы в сценарии | m/s | NED или ENU |
Ускорение | Текущее ускорение платформы в сценарии | m/s2 | NED или ENU |
Ориентация | Текущая ориентация платформы в сценарии | модульный кватернион / матрица ориентации | Нет данных |
Скорость вращения | Текущая скорость вращения платформы в сценарии | rad/s | NED или ENU |
Trajectory задает, как положение изменяется в зависимости от времени. Чтобы сгенерировать траектории основной истины в Sensor Fusion and Tracking Toolbox, используйте kinematicTrajectory
или waypointTrajectory
. Чтобы симулировать отслеживание нескольких платформ, используйте trackingScenario
.
Вращения, ориентация и кватернионы | quaternion
[1] IEEE. Стандарт для распределенной интерактивной симуляции – протоколы приложения. IEEE P1278.1/D16 Версия 18, май 2012.