Controlador#

Introdução#

O comando drone VEX AIR possui um layout de 12 botões e dois joysticks. Estas entradas permitem que o drone detete o pressionar dos botões e os movimentos dos joysticks, possibilitando um controlo interativo e responsivo.

Segue-se a lista de todos os blocos disponíveis:

botão do controlador pressionado#

O bloco booleano botão do controlador premido informa se um botão específico do controlador está a ser premido.

  • Verdadeiro — O botão especificado está a ser premido.

  • Falso — O botão especificado não está a ser premido.

O botão do controlador foi premido. Bloco booleano.#
<botão [5 v] do controle pressionado?>

Um controlador de drone VEX AIR mostrando os botões de 5 a 12. Os botões 5 e 6 estão na parte traseira do lado direito do controlador, perpendiculares ao joystick. Os botões 7 e 8 estão na mesma posição do lado esquerdo. Os botões 9 a 12 estão na superfície inferior do comando, com o 9 no canto superior direito por cima do 10 e o 11 no canto superior esquerdo por cima do 12.

Parâmetros

Descrição

botão

O botão serve para verificar se foi pressionado, com um valor entre 5 e 12.

Exemplo

quando iniciar
[Take a picture when button 5 is pressed.]
decolar para [500] [mm v] ▶
para sempre
mover com controle
se <botão [5 v] do controle pressionado?> então
capturar imagem na câmera [frente v]
fim
fim

posição do veio do controlador#

O bloco de relatório de posição do eixo do controlador reporta a posição do eixo do joystick especificado. Devolve um número inteiro entre -100 e 100.

Bloco de relatório de posição do veio do controlador.#
(posição do eixo [1 v] do controle)

Um controlador de drone VEX AIR com os eixos do joystick destacados. Os eixos 1 e 2 estão à volta do joystick esquerdo e os eixos 3 e 4 estão à volta do direito.

Parâmetros

Descrição

eixo

Eixos para indicar a posição:

  • 1 — Eixo vertical do joystick esquerdo.
  • 2 — Eixo horizontal do joystick esquerdo.
  • 3 — Eixo horizontal do joystick direito.
  • 4 — Eixo vertical do joystick direito.

Exemplo

quando iniciar
[Climb when the left joystick is moved up.]
decolar para [500] [mm v] ▶
para sempre
se <(posição do eixo [1 v] do controle) [math_greater_than v] [0]> então
subir/descer [subir v]
senão
pairar
fim

O controlador está ligado.#

O bloco booleano controlador está ligado informa se o controlador está ligado ao drone.

  • Verdadeiro — O controlador está ligado.

  • Falso — O controlador não está ligado.

Bloco de relatório de posição do veio do controlador.#
<controle conectado ao drone?>

Parâmetros

Descrição

Este bloco não possui parâmetros.

Exemplo

quando iniciar
[Print controller connection status on screen.]
para sempre
se <controle conectado ao drone?> então
limpar tela
definir cursor para linha (1) coluna (1) na tela
imprimir [Controller connected] na tela ▶
aguardar (0.5) segundos
fim
fim

nível da bateria do controlador#

O bloco de relatório nível da bateria do controlador informa o nível da bateria do controlador, em percentagem, de 0% a 100%.

Bloco de relatório de posição do veio do controlador.#
(nível da bateria do controle em %)

Parâmetros

Descrição

Este bloco não possui parâmetros.

Exemplo

quando iniciar
[Show controller's battery level.]
se <(nível da bateria do controle em %) [math_greater_than v] [50]> então
imprimir [Battery level ok] na tela ▶
senão
imprimir [Battery level low] na tela ▶

quando o botão do controlador#

O bloco de chapéu quando o botão do controlador executa a pilha de blocos à qual está ligado quando o botão é premido ou libertado.

O bloco de botões do controlador When.#
quando botão [5 v] do controle [pressionado v]

Um controlador de drone VEX AIR mostrando os botões de 5 a 12. Os botões 5 e 6 estão na parte traseira do lado direito do controlador, perpendiculares ao joystick. Os botões 7 e 8 estão na mesma posição do lado esquerdo. Os botões 9 a 12 estão na superfície inferior do comando, com o 9 no canto superior direito por cima do 10 e o 11 no canto superior esquerdo por cima do 12.

Parâmetros

Descrição

botão

Determina qual o botão que irá acionar o evento, num valor entre 5 e 12.

ação

Determina quando a pilha de blocos anexada será executada: premido será executado quando um botão for premido e libertado será executado quando um botão for libertado.

Exemplo

quando iniciar
decolar para [500] [mm v] ▶
para sempre
mover com controle
fim

quando botão [5 v] do controle [pressionado v]
[Take a picture when button 5 is pressed.]
capturar imagem na câmera [frente v]

quando o eixo do controlador é alterado#

O bloco de chapéu quando o eixo do controlador é alterado executa a pilha associada quando a posição de um joystick muda ao longo do eixo selecionado.

Bloco de chapéu “Quando o eixo do controlador é alterado”.#
quando eixo [1 v] do controle é alterado

Um controlador de drone VEX AIR com os eixos do joystick destacados. Os eixos 1 e 2 estão à volta do joystick esquerdo e os eixos 3 e 4 estão à volta do direito.

Parâmetros

Descrição

eixo

Eixos a monitorizar quanto a alterações:

  • 1 — Eixo vertical do joystick esquerdo.
  • 2 — Eixo horizontal do joystick esquerdo.
  • 3 — Eixo horizontal do joystick direito.
  • 4 — Eixo vertical do joystick direito.

Exemplo

quando iniciar
[Move forward when the left joystick moves.]
decolar para [500] [mm v] ▶

quando eixo [1 v] do controle é alterado
mover [frente v] por (200) [mm v] ▶