Теперь разберём команды, с помощью которых можно управлять полётом дрона. Начнём с трёх основных блоков: take_off, navigate и land.
Блок take_off
Блок take_off используется для взлёта. В нём указывается высота, на которую должен подняться дрон.
01
Укажите высоту
Высота указывается в метрах. Например, значение 1 означает, что дрон должен подняться на 1 метр.
Параметр wait
Если wait включён, программа дождётся завершения взлёта перед выполнением следующей команды.
Блок navigate
Блок navigate используется для перемещения дрона в заданную точку.
Как работать с полями x, y и z
В блоке navigate есть поля x, y и z. Они задают координаты точки, в которую должен переместиться дрон. Все значения указываются в метрах.
X
Координата по X, м
Y
Координата по Y, м
Z
Координата по Z, м
yaw
Направление поворота
speed
Скорость полёта
wait
Ожидание завершения команды
Важно
x и y — это не команды «вперёд» и «вправо». Это координаты точки в выбранной системе координат. Поэтому направление полёта зависит от того, где находится дрон относительно этой точки.
Что такое relative to
Поле relative to определяет, относительно какой точки или системы координат нужно считать x, y и z.
body
Отсчёт от дрона
markers map
Отсчёт от начала карты ArUco
marker
Отсчёт от выбранного ArUco-маркера
last navigate target
Отсчёт от последней точки navigate
Простой пример
Представьте обычную линейку. Если поставить начало отсчёта в другом месте, расстояние в метрах останется таким же, но точка, от которой мы считаем, изменится. Например система считает от 0. Мы пишем сдвинься на 1 сантиметр от 0 и мы оказываемся на 1 см. Но если отсчет идет не от 0, а от 5см, тогда если мы укажем сдвинься на 1 см, мы окажемся не на 1см, а на 6 см.
Перемещение относительно маркера
Для первых программ удобно использовать marker. В этом случае нужно указать ID нужного ArUco-маркера, а затем задать координаты точки относительно него.
01
Выберите marker
В поле relative to выберите marker.
02
Укажите ID
Введите ID нужного ArUco-маркера. Например, для маркера номер 5 используется ID=5.
03
Задайте координаты
Укажите x, y и z нужной точки в метрах.
Пример
Если указать x=3, y=2, z=1 и выбрать marker с ID=5, дрон будет перемещаться в точку X=3, Y=2, Z=1 относительно маркера 5.
Не путайте координаты с направлением
Запись x=3, y=2 не означает «лететь вперёд на 3 метра и вправо на 2 метра». Это координаты конечной точки. Чтобы понять направление полёта, нужно учитывать положение дрона относительно начала выбранной системы координат.
Блок land
Блок land используется для посадки дрона.
Безопасность
Перед запуском программы проверьте пространство вокруг дрона, маршрут и место посадки. Убедитесь, что знаете, как остановить выполнение программы.
Следующая тема
Теперь разберём, как программа выполняет команды последовательно и как использовать блоки wait и wait_arrival.