Сгенерируйте траекторию между двумя однородными преобразованиями
Robotics System Toolbox/Утилиты
Блок Transform Trajectory генерирует интерполированную траекторию между двумя матрицами однородного преобразования. Блок выводит преобразование в моменты времени, заданные Time входа, который может быть скаляром или вектором.
Траектория вычисляется с помощью кватернионной сферической линейной интерполяции (SLERP) для вращения и линейной интерполяции для перемещения. Этот метод находит кратчайший путь между положениями и вращениями преобразования. Установите флажок Use custom time scaling, чтобы вычислить траекторию с помощью пользовательского масштабирования времени. Блок использует линейное масштабирование времени по умолчанию.
Начальное и окончательное значения остаются постоянными вне периода времени, заданного в Time interval.
Time
- Временная точка вдоль траекторииВременная точка вдоль траектории, заданный как скаляр или вектор. В целом, когда это значение задано как скаляр, это значение синхронизируется со временем симуляции и используется, чтобы задать время, точку для дискретизации траектории. Блок выводит вектор переменных траектории в этот момент времени. Если время задано как вектор, блок выводит матрицу с каждым столбцом, соответствующим каждому элементу вектора.
Типы данных: single
| double
T0
- Матрица начального преобразованияМатрица начального преобразования, заданная как однородное преобразование 4 на 4. Функция генерирует траекторию, которая начинается с начальной ориентации, T0 и переходит к конечной ориентации, TF.
Пример: trvec2tform([1 10 -1])
Чтобы включить этот параметр, установите Waypoint source равным External
.
Типы данных: single
| double
TF
- Матрица окончательного преобразованияМатрица окончательного преобразования, заданная как гомогенное преобразование 4 на 4. Функция генерирует траекторию, которая начинается с начальной ориентации, T0 и переходит к конечной ориентации, TF.
Пример: trvec2tform([1 10 -1])
Чтобы включить этот параметр, установите Waypoint source равным External
.
Типы данных: single
| double
TimeInterval
- Начальное и конечное время для траекторииНачальное и конечное время для траектории, заданное как двухэлементный вектор.
Пример: [0 10]
Чтобы включить этот параметр, установите Waypoint source равным External
.
Типы данных: single
| double
TSTime
- Временные точки масштабированияВременные временные точки масштабирования, заданные как скалярный или n p -элементный вектор, где p - число точек для масштабирования во времени. По умолчанию масштабирование по времени является линейным масштабированием по времени, охватывающим TimeInterval. Задайте фактические значения масштабирования времени в TimeScaling.
Если вход Time задан в момент времени, не заданный этими точками, интерполяция используется, чтобы найти правильное время масштабирования.
Чтобы включить этот параметр, установите флажок Use custom time scaling и установите Parameter source равным External
.
Чтобы задать скаляр, вход Time должен быть скаляром.
Типы данных: single
| double
TimeScaling
- Вектор масштабирования во времени и первые две производныеВектор масштабирования времени и его первые две производные, заданные как трехэлементный вектор или 3-байтовая p матрица, где m - длина TSTime. По умолчанию масштабирование по времени является линейным масштабированием по времени, охватывающим TimeInterval.
Для нелинейного масштабирования во времени задайте значения временных точек в первой строке. Вторая и третья строки являются скоростью и ускорением временных точек, соответственно. Например, чтобы следовать по пути с линейной скоростью до половинной точки, а затем прыгать до конца, масштабирование по времени будет:
s(1,:) = [0 0.25 0.5 1 1 1] % Position s(2,:) = [1 1 1 0 0 0] % Velocity s(3,:) = [0 0 0 0 0 0] % Acceleration
Чтобы включить этот параметр, установите флажок Use custom time scaling и установите Parameter source равным External
.
Чтобы задать трехэлементный вектор, Time и TSTime входы должны быть скаляром.
Типы данных: single
| double
tform
- Матрицы однородного преобразованияОднородные матрицы преобразования, возвращенные как 4 на 4- m однородный матричный массив, где m количество точек, входящих в Time.
vel
- Преобразование скоростейПреобразуйте скорости, возвращенные как 6-бай- m матрица, где m - число точек, входящих в Time. Каждая строка вектора является угловой и линейной скоростью преобразования как [wx wy wz vx vy vz]
. w представляет скорость вращения, а v представляет линейную скорость.
alpha
- Ускорения преобразованияПреобразуйте скорости, возвращенные как 6-бай- m матрица, где m - число точек, входящих в Time. Каждая строка вектора является угловым и линейным ускорением преобразования как [alphax alphay alphaz ax ay az]
. alpha представляет угловое ускорение, а a представляет линейное ускорение.
Waypoint source
- Источник для путевых точекInternal
(по умолчанию) | External
Задайте External
задать параметры Waypoints и Time points в качестве блока входов вместо параметров блоков.
Initial transform
- Матрица начального преобразованияtrvec2tform([1 10 -1])
(по умолчанию) | однородное преобразование 4 на 4Матрица начального преобразования, заданная как однородное преобразование 4 на 4. Функция генерирует траекторию, которая начинается с Initial transform и переходит к Final transform.
Типы данных: single
| double
Final transform
- Матрица окончательного преобразованияeul2tform([0 pi pi/2])
(по умолчанию) | однородное преобразование 4 на 4Матрица окончательного преобразования, заданная как гомогенное преобразование 4 на 4. Функция генерирует траекторию, которая начинается с Initial transform и переходит к Final transform.
Типы данных: single
| double
Time interval
- Начальное и конечное время для траектории[2 3]
| двухэлементный векторНачало и конец траектории, заданное как двухэлементный вектор в секундах.
Типы данных: single
| double
Use custom time scaling
- Включите пользовательское масштабирование времениoff
(по умолчанию) | on
Позволяет задать пользовательское масштабирование времени для траектории с помощью параметров Parameter Source, Time scaling time и Time scaling values.
Parameter source
- Источник для путевых точекInternal
(по умолчанию) | External
Задайте External
задать параметры Time scaling time и Time scaling values в качестве блока входов вместо параметров блоков.
Чтобы включить этот параметр, установите флажок Use custom time scaling.
Time scaling time
- Временные точки масштабирования2:0.1:3
(по умолчанию) | скалярный вектор | p -элементВременные моменты масштабирования, заданные как скалярный или p вектор, где p - число точек для масштабирования во времени. По умолчанию масштабирование по времени является линейным масштабированием по времени, охватывающим Time interval. Задайте фактические значения масштабирования времени в Time scaling values.
Если вход Time задан в момент времени, не заданный этими точками, интерполяция используется, чтобы найти правильное время масштабирования.
Чтобы включить этот параметр, установите флажок Use custom time scaling.
Чтобы задать скаляр, вход Time должен быть скаляром.
Типы данных: single
| double
Time scaling values
- Вектор масштабирования во времени и первые две производные[0:0.1:1; ones(1,11); zeros(1,11)]
(по умолчанию) | трехэлементный вектор | 3-бай- m матрицаВектор масштабирования во времени и его первые две производные, заданные как трехэлементный вектор или 3-бай- p матрица, где p - длина Time scaling time. По умолчанию масштабирование по времени является линейным масштабированием по времени, охватывающим Time interval.
Для нелинейного масштабирования во времени задайте значения временных точек в первой строке. Вторая и третья строки являются скоростью и ускорением временных точек, соответственно. Например, чтобы следовать по пути с линейной скоростью до половинной точки, а затем прыгать до конца, масштабирование по времени будет:
s(1,:) = [0 0.25 0.5 1 1 1] % Position s(2,:) = [1 1 1 0 0 0] % Velocity s(3,:) = [0 0 0 0 0 0] % Acceleration
Чтобы включить этот параметр, установите флажок Use custom time scaling.
Чтобы задать трехэлементный вектор, Time и TSTime входы должны быть скаляром.
Типы данных: single
| double
Simulate using
- Тип выполняемой симуляцииInterpreted execution
(по умолчанию) | Code generation
Interpreted execution
- Моделируйте модель с помощью MATLAB® интерпретатор. Эта опция сокращает время запуска, но имеет более низкую скорость симуляции, чем Code generation
. В этом режиме можно отлаживать исходный код блока.
Code generation
- Моделируйте модель с использованием сгенерированного кода C. Первый раз, когда вы запускаете симуляцию, Simulink® генерирует код С для блока. Код С повторно используется для последующих симуляций, пока модель не меняется. Эта опция требует дополнительного времени запуска, но скорость последующих симуляций сопоставима с Interpreted execution
.
Настраиваемый: Нет
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.