Движение#

Введение#

Дрон VEX AIR оснащен четырьмя пропеллерами, что позволяет ему двигаться в любом направлении и вращаться независимо друг от друга. Система управления движением обеспечивает возможности перемещения, поворотов, регулировки скорости и отслеживания положения.

Круговой компас от 0 до 360 градусов, окружающий дрон с 4 пропеллерами. Передняя часть дрона обращена к 0 градусам на компасе.

Ниже приведён список доступных блоков:

Действия — Перемещайте и поворачивайте дрон.

Управление полетом — Настройка параметров полета.

Настройки — Регулировка скорости движения и поворота.

Определение местоположения — отслеживание и корректировка положения дрона.

Значения — Проверьте статус движения.

  • состояние полета — Возвращает текущее состояние дрона.

  • безопасный режим — Возвращает состояние блокировки пропеллеров дрона.

  • climb active — Возвращает значение, указывающее, находится ли дрон в данный момент в режиме набора высоты.

  • движение активно — Возвращает значение, указывающее, находится ли дрон в данный момент в движении.

  • turn active — Возвращает значение, указывающее, находится ли дрон в данный момент в режиме поворота.

  • зависание — Возвращает значение, указывающее, находится ли дрон в данный момент в режиме зависания.

  • взлет — Возвращает значение, указывающее, находится ли дрон в данный момент в состоянии взлета.

  • посадка — Возвращает значение, указывающее, находится ли дрон в данный момент на посадке.

  • приземлился — Возвращает, приземлился ли дрон.

Действия#

снимать#

Блок взлёта запускает пропеллеры и поднимает дрон в воздух. Этот блок необходимо использовать перед выполнением других движений.

переместить блок стека вперед#
взлететь на [500] [мм v] ▶

Параметры

Описание

подняться к

Положение по оси Z (высота), на которую поднимется дрон.

единицы

Единица измерения: мм (миллиметры) или дюймы.

и не ждите

Выберите стрелку ( ▶ ), чтобы развернуть блок, например, и не ждите, чтобы следующий блок в стеке выполнился немедленно.

Пример

при запуске
[Fly for 1 second.]
взлететь на [500] [мм v] ▶
ждать [1] секунд
приземлиться ▶

земля#

Блок наземной установки опускает дрон на землю. Пропеллеры будут продолжать вращаться до тех пор, пока проект не будет остановлен.

переместить блок стека вперед#
приземлиться ▶

Параметры

Описание

и не ждите

Выберите стрелку ( ▶ ), чтобы развернуть блок, например, и не ждите, чтобы следующий блок в стеке выполнился немедленно.

Пример

при запуске
[Land after 1 second.]
взлететь на (500) [мм v] ▶
ждать [1] секунд
приземлиться ▶

зависание#

Блок зависания предотвращает движение дрона в любом направлении и удерживает его текущее положение в воздухе.

блок наведения#
зависнуть

Параметры

Описание

Этот блок не имеет параметров.

Пример

при запуске
[Hold current position for 3 seconds after moving forward.]
взлететь на (500) [мм v] ▶
движение [вперёд v]
ждать [1] секунд
зависнуть
ждать [3] секунд
приземлиться ▶

взбираться#

Блок climb перемещает дрон в заданном вертикальном направлении.

переместить блок стека вперед#
набор высоты [вверх v]

Параметры

Описание

направление

Направление полета дрона: вверх или вниз.

Пример

при запуске
[Climb upwards for 2 seconds.]
взлететь на (500) [мм v] ▶
ждать [2] секунд
набор высоты [вверх v]
ждать [2] секунд
приземлиться ▶

подняться для#

Блок climb for stack перемещает дрон в заданном вертикальном направлении на определенное расстояние.

переместить блок стека вперед#
набор высоты [вверх v] на (500) [мм v] ▶

Параметры

Описание

направление

Направление полета дрона: вверх или вниз.

расстояние

Расстояние, на которое пролетит дрон.

единицы

Единица измерения: мм (миллиметры) или дюймы.

и не ждите

Выберите стрелку ( ▶ ), чтобы развернуть блок, например, и не ждите, чтобы следующий блок в стеке выполнился немедленно.

Пример

при запуске
[Lower drone before landing.]
взлететь на [700] [мм v] ▶
ждать [1] секунд
набор высоты [вниз v] на [300] [мм v] ▶
ждать [1] секунд
приземлиться ▶

подняться в положение Z#

Блок подъема в положение по оси Z перемещает дрон в заданное положение по оси Z.

переместить блок стека вперед#
набрать высоту z [500] [мм v] ▶

Параметры

Описание

положение по оси Z

Z-координата, выраженная целым числом или десятичной дробью, до которой дрон будет подниматься.

единицы

Единица измерения: мм (миллиметры) или дюймы.

и не ждите

Выберите стрелку ( ▶ ), чтобы развернуть блок, например, и не ждите, чтобы следующий блок в стеке выполнился немедленно.

Пример

при запуске
[Reach 500 mm after takeoff.]
взлететь на [300] [мм v] ▶
ждать [1] секунд
набрать высоту z [500] [мм v] ▶
ждать [1] секунд
приземлиться ▶

двигаться#

Блок move перемещает дрон в четырех определенных направлениях, используя текущую скорость перемещения.

переместить блок стека вперед#
движение [вперёд v]

Параметры

Описание

направление

Перемещайте дрон в одном из следующих направлений:

  • вперед
  • вправо
  • влево
  • назад

Пример

при запуске
[Move forward for 2 seconds.]
взлететь на [500] [мм v] ▶
движение [вперёд v]
ждать [2] секунд
приземлиться ▶

двигаться под углом#

Блок движение под углом перемещает дрон под заданным углом, используя текущую скорость движения.

перемещать блок на 90 градусов при укладке#
движение под углом (90) градусов

Параметры

Описание

угол

Угол, выраженный целым числом или десятичной дробью, под которым движется дрон, варьируется от 0 до 359 градусов.

Примеры

при запуске
[Move left for 2 seconds.]
взлететь на [500] [мм v] ▶
движение под углом [270] градусов
ждать [2] секунд
приземлиться ▶

переместить для#

Блок move for stack перемещает дрон в четырех определенных направлениях на определенное расстояние, используя текущую скорость перемещения.

продвинуться вперед для блока штабеля 200 мм#
движение [вперёд v] на (200) [мм v] ▶

Параметры

Описание

направление

Перемещайте дрон в одном из следующих направлений:

  • вперед
  • вправо
  • влево
  • назад

расстояние

Расстояние, которое пролетит дрон, выраженное целым числом или десятичной дробью.

единицы

Единица измерения: мм (миллиметры) или дюймы.

и не ждите

Выберите стрелку ( ▶ ), чтобы развернуть блок, например, и не ждите, чтобы следующий блок в стеке выполнился немедленно.

Пример

при запуске
[Move forward for 200 mm.]
взлететь на [500] [мм v] ▶
движение [вперёд v] на [200] [мм v] ▶
приземлиться ▶

перемещаться под углом для#

Блок перемещать под определенным углом для стека перемещает дрон под заданным углом на указанное расстояние, используя текущую скорость перемещения.

перемещать блок стека под углом#
движение под углом (45) градусов на (200) [мм v] ▶

Параметры

Описание

угол

Угол, выраженный целым числом или десятичной дробью, под которым движется дрон, варьируется от 0 до 359 градусов.

расстояние

Расстояние, которое пролетит дрон, выраженное целым числом или десятичной дробью.

единицы

Единица измерения: мм (миллиметры) или дюймы.

и не ждите

Выберите стрелку ( ▶ ), чтобы развернуть блок, например, и не ждите, чтобы следующий блок в стеке выполнился немедленно.

Примеры

при запуске
[Move diagonally for 500 mm.]
взлететь на [300] [мм v] ▶
движение под углом [45] градусов на [500] [мм v] ▶
приземлиться ▶

переехать в#

Блок переместить в стопку перемещает дрон в заданное положение в воздухе, сохраняя при этом тот же курс.

переместиться в точку x 1000 y 1000#
переместиться в x: [1000] y: [1000] z: [1000] [мм v] ▶

Вид сверху на дрон VEX с осями X и Y: X+ вправо, X− влево, Y+ вперед, Y− назад.

Параметры

Описание

х

Координата x, к которой будет перемещен дрон.

й

Координата Y, к которой будет переместиться дрон.

з

Z-координата, до которой будет подниматься дрон.

единицы

Единица измерения: мм (миллиметры) или дюймы.

Примеры

при запуске
[Move diagonally to (300, 300, 500).]
взлететь на [300] [мм v] ▶
ждать [2] секунд
переместиться в x: [300] y: [300] z: [500] [мм v] ▶
ждать [2] секунд
приземлиться ▶

повернуть#

Блок turn stack поворачивает дрон в определенном направлении, используя текущую скорость поворота.

поверните направо блок стека#
поворот [вправо v]

Параметры

Описание

направление

Направление поворота дрона: вправо или влево.

Пример

при запуске
[Turn to the right for 2 seconds.]
взлететь на [500] [мм v] ▶
поворот [вправо v]
ждать [2] секунд
приземлиться ▶

поворот для#

Блок turn for stack поворачивает дрон в заданном направлении на заданное расстояние относительно текущего направления его взгляда, используя текущую скорость поворота.

Поверните направо для установки блока штабеля под углом 90 градусов.#
поворот [вправо v] на (90) градусов ▶

Параметры

Описание

направление

Направление поворота дрона: вправо или влево.

угол

Угол, выраженный целым числом или десятичной дробью, под которым движется дрон, варьируется от 0 до 359 градусов.

и не ждите

Выберите стрелку ( ▶ ), чтобы развернуть блок, например, и не ждите, чтобы следующий блок в стеке выполнился немедленно.

Примеры

при запуске
[Turn around, then land.]
взлететь на [500] [мм v] ▶
поворот [вправо v] на [180] градусов ▶
приземлиться ▶

перейти к заголовку#

Блок поворота на заданный курс поворачивает дрон на определенный курс, используя текущую скорость поворота.

Поворот на 90 градусов к заголовку, блок штабелирования#
повернуть на курс (270) градусов ▶

Параметры

Описание

заголовок

Направление, в котором будет поворачиваться дрон, варьируется от 0 до 359 градусов.

и не ждите

Выберите стрелку ( ▶ ), чтобы развернуть блок, например, и не ждите, чтобы следующий блок в стеке выполнился немедленно.

Примеры

при запуске
[Turn to face each of the cardinal headings.]
взлететь на [500] [мм v] ▶
повернуть на курс (90) градусов ▶
ждать [1] секунд
повернуть на курс (180) градусов ▶
ждать [1] секунд
повернуть на курс (270) градусов ▶
ждать [1] секунд
повернуть на курс (0) градусов ▶
ждать [1] секунд
приземлиться ▶

перемещаться с помощью контроллера#

Блок перемещение с помощью контроллера позволяет управлять дроном с помощью контроллера VEX AIR. Этот блок необходимо использовать внутри цикла для непрерывного управления дроном. Если цикл прерывается и нет других блоков, указывающих дрону направление движения, дрон продолжит движение в последнем направлении.

управление контроллером

Параметры

Описание

Этот блок не имеет параметров.

Пример

при запуске
[Move with controller until button 7 is pressed.]
взлететь на [500] [мм v] ▶
повторять пока <кнопка контроллера [7 v] нажата?>
управление контроллером
конец
приземлиться ▶

Управление полетом#

установить точку обзора рулевого колеса#

Блок set steering POV задает точку обзора, используемую при управлении дроном.

переместить блок стека вперед#
установить режим управления [стандартный v]

Параметры

Описание

стиль

Задает точку обзора, используемую для управления дроном. Стандартный означает, что движения основаны на направлении, в котором дрон в данный момент смотрит. Безголовый означает, что движения основаны на ориентации дрона в начале проекта.

Пример

при запуске
[Steer based on the drone's starting orienation until button 7 is pressed.]
взлететь на [500] [мм v] ▶
установить режим управления [безголовый v]
повторять пока <кнопка контроллера [7 v] нажата?>
управление контроллером
конец
приземлиться ▶

установленное движение#

Блок set movement задает стиль движения дрона.

Этот стиль движений используется при управлении дроном с помощью пульта дистанционного управления.

переместить блок стека вперед#
установить режим движения [точность v]

Параметры

Описание

стиль

Задает стиль управления дроном:

  • точность — Медленный режим со стабилизацией камеры для точного управления и обучения. Это стиль движения по умолчанию.
  • сбалансированный — Более быстрый режим со стабилизацией камеры для плавного и отзывчивого полета.
  • производительность — Высокоскоростной режим без стабилизации для продвинутого маневрирования.

Пример

при запуске
[Control the drone with the balanced movement style.]
взлететь на [500] [мм v] ▶
установить режим движения [сбалансированный v]
повторять пока <кнопка контроллера [7 v] нажата?>
управление контроллером
конец
приземлиться ▶

Настройки#

установить скорость набора высоты#

Блок установка скорости подъема задает скорость подъема по умолчанию в процентах. Это повлияет на все последующие блоки, связанные с подъемом. Скорость подъема по умолчанию составляет 50%.

переместить блок стека вперед#
установить скорость набора высоты [100]%

Параметры

Описание

скорость

Скорость, с которой дрон будет набирать высоту, выраженная в процентах.

Пример

при запуске
[Raise the drone quickly before landing.]
взлететь на [300] [мм v] ▶
ждать [1] секунд
установить скорость набора высоты [100]%
набор высоты [вверх v] на (500) [мм v] ▶
приземлиться ▶

установить скорость движения#

Блок установка скорости движения задает скорость движения по умолчанию в процентах. Это повлияет на все последующие блоки, связанные с перемещением. Скорость движения по умолчанию составляет 50%.

установить скорость перемещения на 50% стека блоков#
установить скорость движения [100]%

Параметры

Описание

скорость

Скорость движения дрона в процентах.

Пример

при запуске
[Move forward quickly, then reverse slowly.]
взлететь на [500] [мм v] ▶
установить скорость движения [100]%
движение [вперёд v] на [500] [мм v] ▶
ждать (1) секунд
установить скорость движения [20]%
движение [назад v] на [500] [мм v] ▶
приземлиться ▶

установить скорость поворота#

Блок установка скорости поворота задает скорость поворота по умолчанию в процентах. Это повлияет на все последующие блоки, связанные с поворотом. Скорость поворота по умолчанию составляет 50%.

установить скорость поворота на 50% от скорости блока стека#
установить скорость поворота [100]%

Параметры

Описание

скорость

Скорость, с которой дрон будет поворачивать, выраженная в процентах.

Пример

при запуске
[Turn clockwise quickly, then counterclockwise slowly.]
взлететь на [500] [мм v] ▶
установить скорость поворота [100]%
поворот [вправо v] на [360] градусов ▶
ждать (1) секунд
установить скорость поворота [20]%
поворот [влево v] на [360] градусов ▶
приземлиться ▶

Позиция#

позиция#

Блок position сообщает текущие координаты дрона по осям x, y или z в виде целого числа. В начале проекта текущее положение дрона автоматически устанавливается на (0, 0, 0).

x-позиция в блоке репортера мм#
положение [x v] в [мм v]

Параметры

Описание

ось

Координаты какой оси следует указать:

  • x
  • y
  • z

единицы

Единица измерения: мм (миллиметры) или дюймы.

Пример

при запуске
[Fly to position (0, 300, 500).]
взлететь на [500] [мм v] ▶
ждать [1] секунд
движение [вперёд v]
ждать пока <(положение [y v] в [мм v]) [math_greater_than v] [300]>
зависнуть
ждать [1] секунд
приземлиться ▶

получить максимальную высоту по оси Z#

Блок get max z height сообщает максимальную высоту, которую может достичь дрон.

x-позиция в блоке репортера мм#
(get max z height in [mm v])

Параметры

Описание

единицы

Единица измерения: мм (миллиметры) или дюймы.

Пример

при запуске :: hat events
[Display the new z height limit.]
вывести (get max z height in [mm v]) на экран ▶
перенести курсор на следующую строку на экране
взлететь на [500] [мм v] ▶
установить максимальную высоту z [1000] в [мм v]
вывести (get max z height in [mm v]) на экран ▶
ждать [1] секунд
приземлиться ▶

установить максимальную высоту по оси Z#

Блок set max z height устанавливает ограничение на высоту полета дрона.

переместить блок стека вперед#
установить максимальную высоту z [2500] в [мм v]

Параметры

Описание

максимальная высота по оси Z

Максимальное значение по оси Z, в виде целого числа или десятичной дроби, выше которого дрон не сможет летать, в диапазоне от 1000 до 5000 мм или от 40 до 196 дюймов.

единицы

Единица измерения: мм (миллиметры) или дюймы.

Пример

при запуске
[Fly with controller under 1000 mm.]
установить максимальную высоту z [1000] в [мм v]
взлететь на (500) [мм v] ▶
повторять пока <кнопка контроллера [7 v] нажата?>
управление контроллером
конец
приземлиться ▶

установить позицию#

Блок set position устанавливает текущие координаты x, y или z дрона на заданное значение.

установить позицию стекового блока#
установить положение [x v] [0] [мм v]

Параметры

Описание

ось

Координатные оси для задания положения:

  • x
  • y
  • z

координата

Новое значение позиции для установки.

единицы

Единица измерения: мм (миллиметры) или дюймы.

Пример

при запуске
[Set a new z position, then fly to z position -300.]
взлететь на [800] [мм v] ▶
установить положение [z v] [0] [мм v]
ждать [1] секунд
набор высоты [вниз v]
ждать пока <(положение [z v] в [мм v]) [math_less_than v] [-300]>
зависнуть
ждать [1] секунд
приземлиться ▶

Ценности#

состояние полета#

Логический блок состояние полета сообщает, находится ли дрон в указанном состоянии полета.

  • Верно — Дрон находится в указанном состоянии.

  • Ложь — Дрон не находится в указанном состоянии.

переместить блок стека вперед#
<состояние полёта — [motors off v]?>

Параметры

Описание

состояние

Состояние полета для проверки:

  • двигатели выключены — Двигатели дрона выключены.
  • калибровка — Дрон калибрует свои датчики.
  • запуск двигателей — Дрон запускает свои двигатели.
  • готовность к полету — Дрон готов начать полет.
  • полет — Дрон находится в полете.

Пример

при запуске
[Report the flight status as the drone takes off.]
вывести [Preparing for flight!] на экран ◀ и перенести курсор на следующую строку
взлететь на [800] [мм v] ◀ и не ждать
ждать пока <flight state is [motor start v]>
вывести [Motors starting...] на экран ◀ и перенести курсор на следующую строку
ждать пока <flight state is [flight v]>
вывести [Take off!] на экран ▶

безопасный режим#

Логический блок безопасный режим сообщает, включена ли блокировка пропеллеров на дроне.

  • Верно — Блокировка пропеллера включена.

  • Ложь — Блокировка пропеллера не включена.

переместить блок стека вперед#
<безопасный режим?>

Параметры

Описание

Этот блок не имеет параметров.

Пример

при запуске
[Change the sound by enabling the Propeller Lock.]
вечно
если <безопасный режим?> то
воспроизвести звук [ошибка v]
иначе
воспроизвести звук [успех v]

восхождение активный#

Логический блок climb active сообщает, набирает ли дрон высоту.

  • Верно — В данный момент дрон набирает высоту.

  • Неверно — Дрон не набирает высоту.

переместить блок стека вперед#
<набор высоты активен?>

Параметры

Описание

Этот блок не имеет параметров.

Пример

при запуске
[After the drone starts to climb, play a sound and land.]
взлететь на [500] [мм v] ▶
набор высоты [вверх v]
ждать [1] секунд
если <набор высоты активен?> то
воспроизвести звук [петля v] ▶
приземлиться ▶

перемещение активного#

Логический блок move active сообщает, использует ли дрон в данный момент блок перемещения.

  • Верно — В данный момент дрон использует блокировку перемещения.

  • Неверно — В данный момент дрон не использует блокировку перемещения.

блок активного отчета о перемещении#
<движение активно?>

Параметры

Описание

Этот блок не имеет параметров.

Пример

при запуске
[After the drone starts to move, play a sound and land.]
взлететь на [500] [мм v] ▶
движение [вперёд v]
ждать [1] секунд
если <движение активно?> то
воспроизвести звук [петля v] ▶
приземлиться ▶

активировать#

Логический блок turn active сообщает, поворачивает ли дрон.

  • Верно — В данный момент дрон вращается.

  • Неверно — Дрон не поворачивает.

включить блокировку активного репортера#
<поворот активен?>

Параметры

Описание

Этот блок не имеет параметров.

Пример

при запуске
[After the drone starts to turn, play a sound and land.]
взлететь на (500) [мм v] ▶
поворот [вправо v]
ждать [1] секунд
если <поворот активен?> то
воспроизвести звук [обнаружен v] ▶
приземлиться ▶

парящий#

Логический блок hovering сообщает, удерживает ли дрон свое положение (зависает).

  • Верно — В данный момент дрон удерживает свою позицию (зависает).

  • Неверно — В данный момент дрон меняет свое положение.

переместить блок стека вперед#
<в режиме зависания?>

Параметры

Описание

Этот блок не имеет параметров.

Пример

при запуске
[Play a sound after the drone has finished taking off.]
взлететь на [700] [мм v] ▶
ждать пока <в режиме зависания?>
ждать [2] секунд
воспроизвести звук [пауза v] ▶
приземлиться ▶

взлет#

Логический блок taking off сообщает, находится ли дрон в процессе взлета.

  • Верно — В данный момент дрон находится в процессе взлета.

  • Неверно — Дрон не находится в процессе взлета.

переместить блок стека вперед#
<взлетает?>

Параметры

Описание

Этот блок не имеет параметров.

Пример

при запуске
[Play sounds while the drone is taking off.]
взлететь на [700] [мм v] ◀ и не ждать
ждать [1] секунд
пока <взлетает?>
воспроизвести звук [сенсинг v] ▶

посадка#

Логический блок landing сообщает, находится ли дрон в процессе посадки.

  • Верно — В данный момент дрон находится в процессе посадки.

  • Неверно — Дрон не находится в процессе посадки.

переместить блок стека вперед#
<приземляется?>

Параметры

Описание

Этот блок не имеет параметров.

Пример

при запуске
[Play sounds while the drone is landing.]
взлететь на (500) [мм v] ▶
ждать [1] секунд
приземлиться ◀ и не ждать
ждать [1] секунд
пока <приземляется?>
воспроизвести звук [петля v] ▶

приземлился#

Логический блок landed сообщает, приземлился ли дрон.

  • Верно — Дрон приземлился.

  • Неверно — Дрон не приземлился.

посаженный логический блок#
<приземлился?>

Параметры

Описание

Этот блок не имеет параметров.

Пример

при запуске
[Celebrate a successful landing.]
взлететь на (500) [мм v] ▶
ждать (1) секунд
приземлиться ▶
если <landed> то
воспроизвести звук [успех v] ▶