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 |
Ориентация | Текущая ориентация платформы в сценарии | модульный кватернион / матрица ориентации | Нет данных |
Скорость вращения | Текущая скорость вращения платформы в сценарии | рад/с | NED или ENU |
Trajectory задает, как положение изменяется в зависимости от времени. Чтобы сгенерировать траектории основной истины в Sensor Fusion and Tracking Toolbox, используйте kinematicTrajectory
или waypointTrajectory
. Чтобы симулировать отслеживание нескольких платформ, используйте trackingScenario
.
quaternion
| Вращения, ориентация и кватернионы
[1] IEEE. Стандарт для распределенной интерактивной симуляции – протоколы приложения. IEEE P1278.1/D16 Версия 18, май 2012.