Sensores#

Introdução#

O drone VEX AIR inclui um sensor inercial para medir o movimento rotacional e detetar mudanças de movimento, bem como um sensor de alcance para medir distâncias. O VEX AIR também monitoriza o nível da bateria. Estes sensores permitem que o drone acompanhe a sua orientação, direção, aceleração e distância dos objetos.

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

Inercial - Acompanha o movimento rotacional do drone.

  • rotação — Retorna quanto o drone rodou desde que começou.

  • heading — Retorna o ângulo de direção do drone (de 0 a 359,99 graus).

  • orientação — Retorna a rotação, inclinação ou guinada do drone (–180,00 a 180,00 graus).

  • aceleração — Devolve a aceleração ao longo do eixo frontal, direito ou inferior.

  • obter taxa de rotação — Retorna a velocidade de rotação atual do drone em graus por segundo \(dps\).

  • repor rotação — Repõe o valor de rotação a zero.

  • repor cabeçalho — Repõe o valor do cabeçalho a zero.

Alcance — Deteta distâncias a partir dos sensores de alcance do drone.

  • distância — Reporta a distância entre o sensor de alcance selecionado e o objeto detetado mais próximo.

Bateria - Retorna o nível da bateria do drone.

Inercial#

rotação#

O bloco rotação devolve quantos graus o drone rodou desde o início. Soma todas as rotações e devolve o total em graus: positivo para o sentido horário e negativo para o sentido anti-horário.

O bloco de relatório Rotation.#
(rotação em graus)

Parâmetros

Descrição

Este bloco não possui parâmetros.

Exemplo

quando iniciar
[Display the rotation after turning.]
decolar para [500] [mm v] ▶
virar [esquerda v] por (450) graus ▶
imprimir (rotação em graus) no console ▶
pousar ▶

cabeçalho#

O bloco heading devolve o ângulo de direção do drone. Devolve um número decimal no intervalo de 0 a 359,99 graus.

O bloco de repórter Heading.#
(direção em graus)

Parâmetros

Descrição

Este bloco não possui parâmetros.

Exemplo

quando iniciar
[Display the rotation after turning left.]
decolar para [500] [mm v] ▶
virar [esquerda v] por (90) graus ▶
imprimir (direção em graus) na tela ▶

orientação#

O bloco orientação devolve a rotação, inclinação ou guinada do drone no intervalo de -180,00 a 180,00 graus como um número decimal.

A imagem abaixo utiliza setas para mostrar o sentido da rotação positiva para o rolamento, arfagem e guinada.

É mostrado um drone VEX com três setas coloridas rotuladas indicando os seus eixos de rotação. Uma seta vermelha rotulada como Pitch aponta diagonalmente para baixo à esquerda, uma seta verde rotulada como Roll aponta diagonalmente para baixo à direita e uma seta azul rotulada como Yaw aponta diretamente para baixo a partir do centro.

O bloco dos repórteres de orientação.#
orientação de [rolagem v] em graus

Parâmetros

Descrição

eixo

Eixo de orientação:

  • rotação
  • inclinação
  • guinada

Exemplo

quando iniciar
[Display the drone orientation as it is rotated by hand.]
para sempre
limpar tela
definir cursor para linha (7) coluna (1) na tela
imprimir [Roll:] na tela ▶
imprimir (orientação de [rolagem v] em graus) na tela ▶
fim

aceleração#

O bloco aceleração devolve a aceleração do drone numa direção especificada. O valor devolvido representa a taxa de variação da velocidade, medida em unidades de g (em que 1g ≈ 9,81 m/s²), como um número que varia de -4,00 a 4,00.

A imagem abaixo utiliza setas para mostrar o sentido da aceleração positiva para a frente e para a direita, e a aceleração negativa para baixo.

É mostrado um drone VEX com três setas coloridas a indicar a direção. Uma seta vermelha com a etiqueta DIREITA aponta diagonalmente para baixo à esquerda, uma seta verde com a etiqueta FRENTE aponta diagonalmente para baixo à direita e uma seta azul com a etiqueta BAIXO aponta diretamente para baixo a partir do centro.

O bloco de relatório de aceleração.#
(aceleração do eixo [frente v] em g :: custom-controller-inertial-timer)

Parâmetros

Descrição

eixo

O eixo para devolver a aceleração de:

  • para a frente
  • para a direita
  • para baixo

Exemplo

quando iniciar
[Display the acceleration as the drone takes off.]
decolar para [500] [mm v] ◀ e não aguardar
para sempre
limpar tela
definir cursor para linha [1] coluna [1] na tela
imprimir (aceleração do eixo [para baixo v] em g) na tela ▶
aguardar [0.5] segundos
fim

obter taxa de rotação#

O bloco obter taxa de rotação devolve a taxa a que o drone está a rodar em torno do eixo especificado. Este devolve um valor em graus por segundo \(dps\) como um número inteiro.

A imagem abaixo utiliza setas para mostrar o sentido da rotação positiva para o rolamento, arfagem e guinada.

É mostrado um drone VEX com três setas coloridas rotuladas indicando os seus eixos de rotação. Uma seta vermelha rotulada como Pitch aponta diagonalmente para baixo à esquerda, uma seta verde rotulada como Roll aponta diagonalmente para baixo à direita e uma seta azul rotulada como Yaw aponta diretamente para baixo a partir do centro.

O bloco de relatório Get Turn Rate.#
(obter taxa de giro do eixo [rolagem v] em dps)

Parâmetros

Descrição

eixo

O veio para devolver a taxa de rotação de:

  • rotação
  • inclinação
  • guinada

Exemplo

quando iniciar
[Display the drone turn rate as it is rotated by hand.]
para sempre
limpar tela
definir cursor para linha (7) coluna (1) na tela
imprimir [Roll:] na tela ▶
imprimir (obter taxa de giro do eixo [rolagem v] em dps) na tela ▶
fim

repor rotação#

O bloco repor rotação redefine o valor de rotação do drone para 0 graus.

O bloco de pilha de rotação Reset.#
reiniciar rotação

Parâmetros

Descrição

Este bloco não possui parâmetros.

Exemplo

quando iniciar
[Display the rotation after resetting.]
decolar para [500] [mm v] ▶
virar [direita v]
aguardar até <(rotação em graus) [math_greater_than v] [360]>
pairar
reiniciar rotação
aguardar [1] segundos
imprimir (rotação em graus) no console ▶

repor cabeçalho#

O bloco reset heading reinicia a direção do drone para zero graus.

O bloco de cabeçalho “Redefinir”.#
reiniciar direção

Parâmetros

Descrição

Este bloco não possui parâmetros.

Exemplo

quando iniciar
[Turn to the same heading before and after resetting.]
decolar para [500] [mm v] ▶
virar para a direção [90] graus ▶
aguardar [1] segundos
reiniciar direção
virar para a direção [90] graus ▶
aguardar [1] segundos
pousar ▶

Intervalo#

distância#

O bloco de relatório de distância indica a distância entre o sensor de alcance selecionado e o objeto detetado mais próximo.

O bloco de relatório de distância Range.#
(distance [forward v] range in [mm v])

Parâmetros

Descrição

intervalo

O sensor de alcance a utilizar: para a frente ou para baixo. Para a frente indica a distância a partir da frente do drone. Para baixo indica a distância a partir da parte inferior do drone.

unidades

A unidade de distância: mm ou polegadas.

Exemplo

quando iniciar
[Hover at 200 mm.]
decolar para [500] [mm v] ▶
subir/descer [descer v]
aguardar até <(distance [downward v] range in [mm v]) [math_less_than v] [200]>
pairar
aguardar (3) segundos
pousar ▶

Bateria#

nível da bateria#

O bloco nível da bateria devolve o nível de carga da bateria do drone em percentagem. O resultado é um número de 0 a 100.

O nível da bateria em percentagem indica o bloco de informação.#
(nível da bateria do drone em %)

Parâmetros

Descrição

Este bloco não possui parâmetros.

Uma pilha de blocos que começa com um bloco “quando iniciado”, seguido de um bloco de comentário que diz “Obter o nível da bateria e exibi-lo”. Um bloco de impressão apresenta então a percentagem do nível da bateria no ecrã.#
quando iniciar
[Display the battery level.]
imprimir (nível da bateria do drone em %) na tela ▶