Контроллер#
Введение#
Контроллер V5 имеет кнопки, два джойстика, вибромотор и экран. Блоки контроллера можно использовать для проверки нажатий кнопок, считывания движений джойстика, вибрации контроллера, включения или отключения настроенных действий контроллера, запуска блоков при возникновении событий контроллера или отображения текста на экране контроллера.
Настроенные действия контроллера — это параметры поведения контроллера, заданные в меню «Устройства». Используйте блок Включение/отключение контроллера, чтобы временно включить или отключить эти настроенные действия в рамках проекта.
Ниже приведён список доступных блоков:
Значения — Проверьте состояние кнопок контроллера или положение джойстика.
Контроллер нажат? — Возвращает значение, указывающее, нажата ли выбранная кнопка контроллера.
Положение контроллера — Возвращает положение джойстика вдоль выбранной оси.
Действия — Вибрация контроллера, включение/отключение настроенных действий контроллера или выполнение блоков при изменении ввода с контроллера.
воспроизведение вибрации на контроллере — Воспроизводит вибрацию на контроллере.
Включение/отключение контроллера — Включает или отключает действия контроллера, настроенные в меню «Устройства», для всех подключенных контроллеров.
при нажатии кнопки контроллера — Запускает прикрепленный стек при нажатии или отпускании выбранной кнопки.
при изменении оси контроллера — Запускает прикрепленный стек при изменении положения джойстика вдоль выбранной оси.
Экран — Отображение текста и цифр на экране контроллера.
вывести на контроллер — Отображает текст, числа или значения переменных на экране контроллера.
установить курсор в строку и столбец на контроллере — Перемещает курсор в указанную строку и столбец на экране контроллера.
переместить курсор на следующую строку на контроллере — Перемещает курсор на следующую строку на экране контроллера.
Установка точности печати на контроллере — Задает количество десятичных знаков, отображаемых при выводе чисел на экран контроллера.
clear controller — Очищает все строки на экране контроллера.
очистить строку на контроллере — Очищает одну строку на экране контроллера.
Ценности#
Нажата ли кнопка контроллера?#
Логический блок Controller pressed? возвращает информацию о том, нажата ли выбранная кнопка контроллера.

<[Controller1 v] кнопка [▲ v] нажата?>
Параметр |
Описание |
|---|---|
устройство |
Контроллер для использования, настраиваемый в окне «Устройства». |
кнопка |
Кнопка для проверки:
|
Пример
при запуске
[Drive forward while X is pressed.]
вечно
если <[Controller1 v] кнопка [X v] нажата?> то
движение [вперёд v]
иначе
остановить движение
конец
конец
Позиция контроллера#
Блок отчета о положении контроллера возвращает положение джойстика вдоль выбранной оси в виде числа от -100 до 100.

([Controller1 v] [1 v] position :: sensing)
Параметр |
Описание |
|---|---|
устройство |
Контроллер для использования, настраиваемый в окне «Устройства». |
ось |
Ось джойстика для отображения:
|
Пример
при запуске
[Drive forward while the left joystick is pushed up.]
вечно
если <([Controller1 v] [3 v] position :: sensing) [math_greater_than v] [0]> то
движение [вперёд v]
иначе
остановить движение
конец
конец
Действия#
играть в Rumble на контроллере#
Блок воспроизведение вибрации на контроллере воспроизводит вибрационный сигнал на контроллере.
воспроизвести вибрацию [Длинная v] на [Controller1 v]
Параметр |
Описание |
|---|---|
шаблон |
Режим вибрации на контроллере:
|
устройство |
Контроллер для использования, настраиваемый в окне «Устройства». |
Пример
когда[Controller1 v] кнопка [R1 v] [нажат v] :: hat events
воспроизвести вибрацию [Короткая v] на [Controller1 v]
Включение/отключение контроллера#
Блок включение/отключение контроллера включает или отключает действия, настроенные контроллером из меню «Устройства», для всех подключенных контроллеров.
Контроллер [Отключить v]
Параметр |
Описание |
|---|---|
состояние |
Состояние действия, заданное контроллером: Отключить или Включить. |
Пример
при запуске
[Disable Controller configured actions until the drive movement is done.]
Контроллер [Отключить v]
движение [вперёд v] на (6) [дюймы v] ▶
Контроллер [Включить v]
при изменении оси контроллера#
Блок Hat, отвечающий за вызов функции when Controller axis is changed, запускает прикрепленный стек при изменении положения джойстика вдоль выбранной оси.

when [Controller1 v] axis [1 v] is changed :: hat events
Параметр |
Описание |
|---|---|
устройство |
Контроллер для использования, настраиваемый в окне «Устройства». |
ось |
Ось джойстика для проверки:
|
Пример
when [Controller1 v] axis [3 v] is changed :: hat events
[Drive forward when the joystick's position changes along axis 3.]
движение [вперёд v] на (200) [мм v] ▶
Экран#
печать на контроллере#
Блок print on controller отображает текст, числа или значения переменных на экране контроллера в текущей позиции курсора.
вывести [VEXcode] на [Controller1 v] ▶ :: custom-controller-inertial-timer
Параметр |
Описание |
|---|---|
ценить |
Текст, число или значение переменной для отображения на экране контроллера. |
устройство |
Контроллер для использования, настраиваемый в окне «Устройства». |
расширяющаяся стрелка |
Расширяет блок, чтобы включить и установить курсор на следующую строку, что перемещает курсор на следующую строку после вывода значения. Если этот параметр не используется, следующее выводимое значение появляется сразу после предыдущего значения в той же строке. |
Пример
при запуске
[Display a message on the Controller screen.]
вывести [Hello, robot!] на [Controller1 v] ▶ :: custom-controller-inertial-timer
установить курсор на строку/столбец на контроллере#
Блок стека установка курсора в строку и столбец на экране контроллера перемещает курсор в указанную строку и столбец на экране контроллера. Следующее выводимое значение появится в этой позиции.
установить курсор на строку [1] столбец [1] на [Controller1 v] :: custom-controller-inertial-timer
Параметр |
Описание |
|---|---|
ряд |
Строка, в которую нужно переместить курсор на экране контроллера. |
столбец |
Столбец, в который нужно переместить курсор на экране контроллера. |
устройство |
Контроллер для использования, настраиваемый в окне «Устройства». |
Пример
при запуске
[Display a message on row 2.]
установить курсор на строку [2] столбец [1] на [Controller1 v] :: custom-controller-inertial-timer
вывести [Ready] на [Controller1 v] ▶ :: custom-controller-inertial-timer
установить курсор на следующую строку на контроллере#
Блок стека установка курсора на следующую строку в контроллере перемещает курсор в столбец 1 следующей строки экрана контроллера. Следующее выводимое значение появится в этой строке.
перенести курсор на следующую строку на [Controller1 v] :: custom-controller-inertial-timer
Параметр |
Описание |
|---|---|
устройство |
Контроллер для использования, настраиваемый в окне «Устройства». |
Пример
при запуске
[Display two rows of text.]
вывести [Row 1] на [Controller1 v] ▶ :: custom-controller-inertial-timer
перенести курсор на следующую строку на [Controller1 v] :: custom-controller-inertial-timer
вывести [Row 2] на [Controller1 v] ▶ :: custom-controller-inertial-timer
установить точность печати на контроллере#
Блок Установка точности печати на контроллере задает количество десятичных знаков, отображаемых при выводе чисел на экран контроллера. Этот параметр применяется к числам, выводимым после использования этого блока.
установить точность печати [0.1 v] на [Controller1 v] :: custom-controller-inertial-timer
Параметр |
Описание |
|---|---|
точность |
Точность печати:
|
устройство |
Контроллер для использования, настраиваемый в окне «Устройства». |
Пример
при запуске
[Display 1/3 with two decimals.]
установить точность печати [0.01 v] на [Controller1 v] :: custom-controller-inertial-timer
вывести ([1] [math_division v] [3]) на [Controller1 v] ▶ :: custom-controller-inertial-timer
чистый контроллер#
Блок clear controller очищает все строки на экране контроллера и перемещает курсор обратно в первую строку.
очистить [Controller1 v] :: custom-controller-inertial-timer
Параметр |
Описание |
|---|---|
устройство |
Контроллер для использования, настраиваемый в окне «Устройства». |
Пример
при запуске
[Clear the Controller screen after printing.]
вывести [This will disappear...] на [Controller1 v] ▶ :: custom-controller-inertial-timer
ждать [2] секунд
очистить [Controller1 v] :: custom-controller-inertial-timer
очистить строку на контроллере#
Блок стека clear row on controller очищает одну строку на экране контроллера.
очистить строку [1] на [Controller1 v] :: custom-controller-inertial-timer
Параметр |
Описание |
|---|---|
ряд |
Строка, которую необходимо очистить на экране контроллера. |
устройство |
Контроллер для использования, настраиваемый в окне «Устройства». |
Пример
при запуске
[Clear one row on the Controller screen.]
вывести [Row 1] на [Controller1 v] ▶ :: custom-controller-inertial-timer
перенести курсор на следующую строку на [Controller1 v] :: custom-controller-inertial-timer
вывести [Row 2] на [Controller1 v] ▶ :: custom-controller-inertial-timer
ждать [2] секунд
очистить строку [1] на [Controller1 v] :: custom-controller-inertial-timer