Usando o sensor de distância VEX IQ (1ª geração)

Descrição

Este sensor informa a distância entre ele e o objeto sólido mais próximo (alcance de 50 mm - 1 m). Ele calcula a distância usando o tempo que as ondas ultrassônicas levam para ricochetear em um objeto e retornar ao sensor.

Peça do sensor de distância VEX IQ (1ª geração).


Como funciona o sensor de distância: ouvindo a distância

Diagrama do sensor de distância enviando ultrassons para atingir um cubo verde e depois recebendo o som refletido.

O Sensor de Distância usa os mesmos princípios dos dispositivos sonares para medir o som. Ele envia um pequeno pulso de ultrassom com seu emissor em um lado do sensor e, em seguida, calcula quanto tempo leva para ouvir o som refletir de volta no receptor do outro lado do sensor. O sensor calcula a distância com base em quanto tempo o pulso sonoro levou para fazer a viagem de ida e volta. O Sensor de Distância então faz um cálculo com base na velocidade do som para informar ao cérebro do robô a que distância está o objeto mais próximo. 

Se a superfície não for plana como uma parede curva ou uma bola, a onda ultrassônica não reflete em todas as partes igualmente ou ao mesmo tempo. A superfície mais próxima, grande o suficiente para refletir uma quantidade detectável da onda, determina a distância detectada do objeto.


Usos comuns do sensor de distância:

Bloco de objeto encontrado no VEXcode IQ que diz Distância entre um objeto encontrado e outro?

Dois diagramas. Acima, o Sensor de Distância está a apontar para um Cubo Verde próximo e está marcado com uma marca de verificação. Abaixo, o Sensor de Distância não está a apontar para nada próximo e está rotulado com um símbolo X.

Este sensor pode detectar se há um objeto na frente dele.

VEXcode IQ Distância do bloco que lê Distância em mm.

Este sensor pode medir a distância entre ele e um objeto.

  • Um robô pode usar este sensor para se afastar de um objeto a uma certa distância. Veja a animação abaixo para ver a alteração do valor da distância à medida que o robô se desloca até que a distância fique abaixo dos 160 mm.

  • Um robô pode usar esse sensor para se aproximar de um objeto sem tocá-lo. Vê esta animação para veres dois robôs a usar sensores de distância para coordenar a sua direção.

  • Os valores fornecidos por este sensor podem ser usados ​​para ajustar a velocidade do robô dependendo se ele está próximo ou distante de um objeto ou superfície. Veja esta animação para ver um robô a ajustar-se com base na distância até uma parede.


Usos do sensor de distância em um robô de competição

  • O robô pode utilizar o Sensor de Distância para iniciar uma sequência de comportamentos quando estiver no local correto para fazê-lo. Por exemplo, o robô pode avançar até detectar que está a 150 mm de distância de uma parede, depois virar 90 graus e soltar um objeto em uma zona de pontuação.  
  • O Sensor de Distância pode ser usado para acionar ações do robô, como pegar uma peça do jogo, quando um objeto é detectado dentro do alcance.
  • O robô pode usar o Sensor de Distância para dirigir em direção a um objeto ou superfície até que esteja dentro de uma distância específica, sem tocá-lo. Isso pode ser usado para garantir que o robô não derrube as peças do jogo.
  • Um robô pode usar o Sensor de Distância para se afastar de um objeto ou superfície até atingir uma distância específica. Isto pode ser usado para evitar colisões com outros robôs no campo.

Usando o sensor de distância no VEXcode IQ

Adicionando o sensor de distância como um dispositivo no VEXcode IQ

Menu de dispositivos VEXcode IQ após o botão Adicionar um dispositivo ter sido selecionado. A opção Distância (1ª geração) está destacada.

Para codificar o Sensor de Distância no VEXcode IQ, você deve primeiro configurar o Sensor de Distância. Consulte este artigo para saber mais sobre como configurar um sensor no VEXcode IQ.

Depois que o sensor estiver configurado, aparecerão comandos na caixa de ferramentas que você poderá usar em seu projeto.

Codificando o sensor de distância em blocos

O objeto VEXcode IQ encontrou o bloco que diz Distance7 encontrou um objeto?

O bloco <Object found> é um bloco repórter booleano que relata uma condição como verdadeira ou falsa. Blocos booleanos, como o bloco <Object found> , cabem dentro de blocos com entradas hexagonais (seis lados) para outros blocos.

O bloco booleano <Object found> reporta 'verdadeiro' se o sensor detectar um objeto e 'falso' se o sensor não detectar. Para saber mais sobre blocos booleanos, visite o artigo Help ou Block Shapes and Meaning.

 

O VEXcode IQ bloqueia o projeto que utiliza um sensor de distância para avançar até encontrar um objeto. O projeto diz: Ao iniciar, siga em frente, espere até que o Distance7 encontre um objeto e depois pare de conduzir.

Neste exemplo, o bloco <Object found> é usado com um bloco [Wait Until] para fazer o robô avançar até que o sensor de distância detecte um objeto. Quando o sensor detectar um objeto, o robô irá parar de dirigir, conforme mostrado na imagem acima. 

VEXcode IQ Distância do bloco que lê Distance7 distância em mm.

O bloco (Distância de) informa a distância do objeto mais próximo do Sensor de Distância. Ele relata um intervalo demm a 1.000 mm, ou 1 polegada a 40 polegadas. O bloco (Distância de) é um bloco repórter usado dentro de blocos com espaços circulares.

 

O VEXcode IQ bloqueia o projeto que utiliza um sensor de distância para avançar até que a sua distância seja inferior a 50 mm. O projeto lê Quando iniciado, siga em frente, imprima Distância7 distância em mm no Cérebro, aguarde até que Distância7 distância em mm seja inferior a 50 e depois pare de conduzir.

Neste exemplo, o bloco (Distância de) é usado com um bloco [Imprimir] para exibir na tela do Cérebro a distância entre o Sensor de Distância e um objeto. O bloco (Distância de) também é mostrado dentro de um bloco <Less than> que está dentro de um bloco {Wait until}. Isso fará com que o robô dirija até que o Sensor de Distância detecte um objeto a menos de 50 milímetros de distância e então pare de dirigir. Isso é mostrado no primeiro vídeo acima.

Codificando o sensor de distância em Python

Nota:Para codificar um sensor de distância VEX IQ (1ª geração) em Python, ele deve estar conectado a um cérebro VEX IQ (2ª geração). O cérebro VEX IQ (1ª geração) não oferece suporte a Python.

distância_7.is_object_detected()

O comando distance.is_object_detected relata 'true' se um objeto for detectado e 'false' se um objeto não for detectado.

Nota:O nome do Sensor de Distância que aparece no comando corresponde ao nome que lhe é dado na configuração. 

drivetrain.drive(FORWARD)
while not distance_7.is_object_detected()
wait(20, MSEC)
drivetrain.stop()
Neste exemplo, um loopWhile com uma condição e não é usado com o comando distance.is_object_detected para fazer o robô avançar até que o sensor de distância detecte um objeto. Quando o sensor deteta um objeto, o robô deixa de conduzir, como mostra o código Python acima.
distância_7. distância(MM)

O comando distance.distance informa a distância do objeto mais próximo do Sensor de Distância. Reporta um intervalo de24 mm a 1000 mm, ou 1 polegada a 40 polegadas.

drivetrain.drive(FORWARD)
brain.screen.print(distance_7.distance(MM)
while not distance_7.distance(MM) < 50:
wait(20, MSEC)
drivetrain.stop()

Neste exemplo, um loop While com uma condição e não é usado com o comando distance.is_object_detected para fazer o robô avançar até que o sensor de distância detecte um objeto. Quando o sensor detecta um objeto, o robô para de dirigir.

Neste exemplo, o comando distance.distance é usado com um comando brain.screen.print para exibir na tela do Brain a distância entre o Sensor de Distância e um objeto. O comando distance.distance também é mostrado dentro de um loop While com uma condição e não . Isso fará com que o robô dirija até que o sensor de distância detecte um objeto a menos de 50 milímetros de distância e então pare de dirigir. Isso é mostrado no primeiro vídeo acima.

Para saber mais sobre como codificar um sensor de distância em Python, confira a Unidade 5 do curso Ciência da Computação Nível 1 - Python. 

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: