Следуйте за waypoints для UAV
Robotics System Toolbox библиотека UAV
Блок Waypoint Follower следует за набором waypoints для беспилотного воздушного автомобиля (UAV) с помощью предварительной точки. Блок вычисляет предварительную точку, желаемую направиться, и желал отклонения от курса, учитывая положение UAV, набор waypoints и предварительное расстояние. Задайте набор waypoints и настройте предварительное расстояние и параметры радиуса перехода для навигации по waypoints. Блок поддерживает и мультиротор и фиксированное крыло типы UAV.
Pose
— Текущее положение UAV[x y z chi]
Текущее положение UAV, заданное как вектор [x y z chi]
. Это положение используется, чтобы вычислить предварительную точку на основе входа к порту LookaheadDistance. [x y z]
является текущим положением в метрах. chi
является текущим заголовком в радианах.
Пример:
[0.5;1.75;-2.5;pi]
Типы данных: single | double
'Waypoints'
Набор waypointsНабор waypoints для UAV, чтобы следовать, заданный как матрица с количеством строк, n, равняется количеству waypoints. Количество столбцов зависит от Show Yaw input variable и параметра Transition radius source.
Каждая строка в матрице имеет первые три элемента как положение [x y z]
в последовательности waypoints.
Если Show Yaw input variable проверяется, задайте желаемый угол отклонения от курса, yaw
, как четвертый элемент в радианах.
Если Show Yaw input variable неконтролируем, и Transition radius source является external
, радиус перехода является четвертым элементом вектора в метрах.
Если Show Yaw input variable проверяется, и Transition radius source является external
, радиусом перехода является Пятый элемент вектора в метрах.
Отображение блока обновляет как размер waypoint матричных изменений.
Типы данных: single | double
LookaheadDistance
— Предварительное расстояниеПредварительное расстояние вдоль пути, заданного в виде положительного числа в метрах.
Типы данных: single | double
LookaheadPoint
— Предварительная точка на пути[x y z]
Предварительная точка на пути, возвращенном как радиус-вектор [x y z]
в метрах.
Типы данных: single | double
DesiredHeading
— Желаемый заголовокЖелаемый заголовок, возвращенный в виде числа в радианах в области значений [-pi, pi]
. Заголовок UAV является углом направления вектора скорости относительно севера, измеренного в радианах.
Типы данных: single | double
DesiredYaw
— Желаемое отклонение от курсаЖелаемое отклонение от курса, возвращенное в виде числа в радианах в области значений [-pi, pi]
. Отклонение от курса UAV является прямым направлением UAV независимо от вектора скорости относительно севера, измеренного в радианах.
Типы данных: single | double
CrossTrackError
— Перекрестный дефект записи от положения UAV до путиПерекрестный дефект записи от положения UAV до пути, возвращенного в виде положительного числа в метрах. Ошибка измеряет перпендикулярное расстояние от положения UAV до самой близкой точки на пути.
Этот порт только видим, если Show CrossTrackError output port проверяется.
Типы данных: single | double
Состояние
Состояние waypoint навигацииСостояние waypoint навигации, возвращенной как 0
или 1
. Когда последователь переместился по всему waypoints, блок выходные параметры 1
. В противном случае, блок выходные параметры 0
.
Этот порт только видим, если Show UAV Status output port проверяется.
UAV type
— Тип UAVfixed-wing
(значение по умолчанию) | multirotor
Тип UAV, заданного или как fixed-wing
или как multirotor
.
Этот параметр является ненастраиваемым.
StartFrom
— Waypoint запускают поведениеfirst
(значение по умолчанию) | closest
Waypoint запускают поведение, заданное или как first
или как closest
.
Когда установлено в first
, UAV летит к первому сегменту пути между waypoints. Если набор входа waypoints в изменениях Waypoints
, UAV перезапускает в первом сегменте пути.
Когда установлено в closest
, UAV летит к самому близкому сегменту пути между waypoints. Когда waypoints вводят изменения, UAV повторно вычисляет самый близкий сегмент пути.
Этот параметр является ненастраиваемым.
Transition radius source
— Источник радиуса переходаinternal
(значение по умолчанию) | external
Источник радиуса перехода, заданного или как internal
или как external
. Если задано как internal
, радиус перехода для каждого waypoint установлен с помощью параметра Transition radius (r) в маске блока. Если задано как external
, задайте каждый waypoints радиус перехода независимо с помощью входа от порта Waypoints.
Когда UAV в радиусе перехода, переходах блока к следующему следующий сегмент пути между waypoints.
Этот параметр является ненастраиваемым.
Transition radius (r)
— Радиус перехода для waypoints10
(значение по умолчанию) | положительный числовой скалярРадиус перехода для waypoints, заданного в виде положительного числа в метрах.
Когда UAV в радиусе перехода, переходах блока к следующему следующий сегмент пути между waypoints.
Этот параметр является ненастраиваемым.
Show Yaw input variable
— Примите вход отклонения от курса для waypointsoff
(значение по умолчанию) | on
Примите входные параметры отклонения от курса для waypoints, когда выбрано. Если выбрано, вход Waypoints принимает входные параметры отклонения от курса для каждого waypoint.
Show CrossTrackError output port
— Выведите перекрестный дефект записиoff
(значение по умолчанию) | on
Выведите перекрестный дефект записи от порта CrossTrackError.
Этот параметр является ненастраиваемым.
Show UAV Status output port
— Выведите UAV waypoint состояниеoff
(значение по умолчанию) | on
Выведите UAV waypoint состояние от порта Status.
Этот параметр является ненастраиваемым.
Simulate using
— Тип симуляции, чтобы запуститьсяInterpreted execution
(значение по умолчанию) | Code generation
Модель Interpreted execution
— Simulate с помощью интерпретатора MATLAB®. Эта опция сокращает время запуска, но имеет более медленную скорость симуляции, чем Code generation
. В этом режиме можно отладить исходный код блока.
Модель Code generation
— Simulate с помощью сгенерированного кода C. В первый раз, когда вы запускаете симуляцию, Simulink® генерирует код С для блока. Код С снова используется для последующих симуляций, пока модель не изменяется. Эта опция требует дополнительного времени запуска, но скорость последующих симуляций сопоставима с Interpreted execution
.
Этот параметр является ненастраиваемым.
Настраиваемый: нет
При следовании за набором waypoints первый waypoint может быть проигнорирован на основе положения UAV. Из-за природы предварительного расстояния раньше отслеживал путь, waypoint проверки последователя, если UAV около следующего waypoint к переходу к следующему сегменту пути с помощью области перехода. Однако существует также условие где переходы UAV когда за пределами этой области. 3-D гиперплоскость чертится в следующем waypoint. Если положение UAV в этой гиперплоскости, waypoint переходах последователя к следующему waypoint. Это поведение помогает гарантировать, что UAV следует за достижимым путем.
Условие гиперплоскости удовлетворено если:
(p-w1) T (w2-w1) ≥ 0
p является положением UAV, и w1 и w2 являются последовательными waypoint положениями.
Если вы находите это ограничение поведения, полагаете, что добавление большего количества waypoints на основе вашего начального положения обеспечивает последователя, чтобы перейти к вашей начальной букве waypoint.
[1] Парк, Sanghyuk, Джон Деист и Джонатан, как. "Новая нелинейная логика руководства для отслеживания траектории". Руководство AIAA, навигация, и конференция по управлению и приложение, 2004.
control
| derivative
| environment
| ode45
| plotTransforms
| roboticsAddons
| state
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.