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.
Como funciona o sensor de distância: ouvindo a distância
O sensor de distância utiliza os mesmos princípios dos dispositivos de sonar para medir o som. Emite um pequeno impulso de ultrassons com o seu emissor num dos lados do sensor e, em seguida, mede o tempo que leva para o som ser refletido de volta pelo recetor no outro lado do sensor. O sensor calcula a distância com base no tempo que o impulso sonoro demorou a fazer o percurso de ida e volta. O sensor de distância faz então um cálculo com base na velocidade do som para informar o 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 refletirá em todas as partes de forma igual ou simultânea. A distância detectada do objecto é determinada pela superfície mais próxima, suficientemente grande para reflectir uma quantidade detectável da onda.
Usos comuns do sensor de distância:
Este sensor pode detectar se há um objeto na frente dele.
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
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 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.
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.
O bloco (Distância de) informa a distância do objeto mais próximo do Sensor de Distância. A medida indica um intervalo de 24 mm a 1000 mm, ou de 1 polegada a 40 polegadas. O bloco (Distância de) é um bloco de relatório utilizado dentro de blocos com espaços circulares.
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
:Para programar um sensor de distância VEX IQ (1ª geração) em Python, este deve ser ligado a um módulo VEX IQ (2ª geração). O VEX IQ (1ª geração) Brain não suporta Python.
distância_7. é_objeto_detetado()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.
|
| Neste exemplo, é utilizado um cicloWhile com uma condição not com o comando distance.is_object_detected para fazer o robô avançar até que o sensor de distância detete um objeto. Quando o sensor deteta um objeto, o robô irá parar de se mover, como mostrado no 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. A medida indica um intervalo de 24 mm a 1000 mm, ou de 1 polegada a 40 polegadas.
|
|
Neste exemplo, é utilizado um ciclo While com uma condição not com o comando distance.is_object_detected para fazer o robô avançar até que o sensor de distância detete um objeto. Quando o sensor deteta um objeto, o robô irá parar de se mover. Neste exemplo, o comando distance.distance é utilizado com um comando brain.screen.print para apresentar no ecrã do Brain a distância entre o Sensor de Distância e um objeto. O comando distance.distance é também mostrado dentro de um While loop com uma condição not . Isto fará com que o robô se mova até que o sensor de distância detete um objeto a menos de 50 milímetros de distância e, em seguida, pare de se mover. Isso pode ser mostrado no primeiro vídeo acima. |