Arquivo mensais:abril 2020

Visão Geral sobre o Sonar HC-SR04

Quando precisamos detectar obstáculos em nossos projeto temos algumas opções disponíveis. No mercado temos disponíveis sensores capazes de captar um obstáculo com tecnologias como laser, infravermelho ou ondas ultrassônicas.

Apesar dos diversos modelos é comum em projetos mais simples ou amadores nos depararmos com o sensor ultrassônico, ou sonar, HC-SR04. Este é um sensor de baixo custo muito fácil de encontrar no mercado principalmente em lojas especializadas em projetos com Arduino.

A Figura 1 apresenta o sonar HC-SR04. Podemos verificar que se trata de um módulo com 4 pinos (VCC, Trigger, Echo e GND) onde temos dois transdutores, sendo um para enviar o sinal ultrassônico e outro para captar o retorno.

Figura 1. HC-SR04
Fonte: https://pt.aliexpress.com/item/32939762416.html

Funcionamento

O sensor ultrassônico, ou simplesmente sonar, é um tipo de sensor capaz de utilizar a reflexão de ondas sonoras para mensurar a distância do objeto que refletiu a onda.

Geralmente a faixa de frequência utilizada por este tipo de sensor fica fora da faixa audível pelos seres humanos, capazes de ouvir frequências na faixa entre 20Hz e 20Khz. A Figura 2 mostra uma representação do funcionamento de um sensor ultrassônico, onde o Módulo Sonar emite uma onda que é refletida pelo objeto.

Figura 2. Representação do funcionamento de um sensor ultrassônico.

Para determinar a distância é preciso medir o tempo necessário para que a onda saia do sensor ultrassônico e retorne ao refletir em um objeto. A relação entre o tempo e a velocidade do som vai determinar a distância que o objeto está do sensor.

De acordo com o manual, disponível em (CYTRON TECHNOLOGIES, 2013), este modelo é capaz de detectar objetos entre 2 cm e 400 cm de distância com a resolução de 0,3 cm. Deve ser alimentado por uma fonte 5Vcc e sua interface de obtenção dos dados é através dos pino ECHO, que vai para nível alto quando recebe o retorno da onda.

No mercado temos outros modelos de sonar como o LV-MaxSonar®-EZ0™, no entanto, para muitos projetos o custo e as capacidades do HC-SR04 acabam determinando por sua escolha. Custando aproximadamente USD $1,00 ele se sobressai frente ao LV-MaxSonar®-EZ0™ que pode ficar em torno de USD $30,00.

Detecção de objetos

Em um projeto denominado ProtoSwarBot foram utilizandos três HC-SR04. O projeto consiste em um robô diferencial que necessitou de uma forma de detecção de obstáculos. A Figura 3 mostra a montagem do ProtoSwarBot e o detalhe dos sensores HC-SR04.

Figura 3. Foto do ProtoSwarBot destacando a disposição dos módulos HC-SR04.

Alguns experimentos com o sensor HC-SR04 foram realizados em uma sala fechada com 3 metros de largura por 6 metros de profundidade. Todos os testes foram realizados com o objeto a ser detectado em linha reta com o sonar central e o valor dado pelo sonar foi verificado utilizando uma trena.

O primeiro teste realizado foi a aferição do limite de detecção do sonar. O ProtoSwarBot foi deslocado em direção à profundidade da sala e o valor, obtido pelo sonar central de acordo com a Figura 3,  foi amostrado tendo como referência uma parede. O sonar foi capaz de fornecer a distância até 5,20 metros do limite da sala. Após esta distância os valores amostrados ficaram imprecisos, variando valores intermediários entre 4 e 6 metros. A distância inicial de medição foi de 4 cm.

O teste seguinte foi para aferir a detecção de objetos de tamanhos variados. Na mesma sala do teste anterior, foram colocados objetos a diferentes distâncias para medir a que distância mínima e máxima cada objeto seria detectado com precisão. Foram utilizados objetos com formato de cilindro e paralelepípedo. A Tabela 1 mostra as medições mínima e máxima realizadas para cada tipo de objeto. Na mesma tabela temos as dimensões do objeto de acordo com o tipo.

Tabela 1. Aferição da detecção de objetos de diferentes dimensões.

É possível verificar na Tabela 1 que foi possível detectar objetos de tamanhos e formas variadas. É também possível verificar que o tipo do objeto interferiu na detecção, onde temos o cilindro com 11 cm de diâmetro e o paralelepípedo com 11 cm largura com medições de distância diferentes. Isto ocorre devido à deflexão da onda do sonar na superfície convexa do cilindro.

Outra observação que se pode fazer observando os dados da Tabela 1 é em relação à distância mínima de detecção de um objeto. É possível verificar que o Paralelepípedo 1 tem distância mínima de detecção de 15 cm, o que significa que ele só começa a ser detectado nesta distância. Isto ocorre devido ao formato da onda emitida pelo sonar ser cônica e a altura do objeto ser apenas 1,5 cm. Nessas condições a onda não intercepta objetos próximos demais. Na Figura 4, que apresenta o funcionamento do sonar do ProtoSwarBot no simulador V-REP, é possível observar o formato cônico do sonar. A interseção, e consequentemente detecção, do cone do sonar com o objeto não ocorre na Figura 4(A), pois o paralelepípedo não está distante o suficiente do sonar. Na Figura 4(B) ocorre a interseção, pois o paralelepípedo está mais afastado do sonar.

Figura 4. Imagem do funcionamento do sonar do ProtoSwarBot no simulador V-REP.

Nos outros casos apresentados na Tabela 1 é possível verificar que se conseguiu detectar o menor cilindro, com diâmetro de 2,7 cm, à 30 cm de distância e o maior paralelepípedo a 380 cm, quase o limite do sensor. Objetos mais próximo que 4 cm não são detectados e o retorno do sonar é um valor aproximado de 4 cm. Caso o objeto esteja tão próximo que obstrua o sensor, foi observado que um valor de aproximadamente 1500 cm é retornado. Este valor pôde ser utilizado para identificar se o robô ficou preso se alguma forma e é tratado como uma situação anômala.

Referências

CYTRON TECHNOLOGIES. User’s Manual – HC-SR04 Ultrasonic Sensor. Disponível em: <https://docs.google.com/document/d/1Y-yZnNhMYy7rwhAgyL_pfa39RsB-x2qR4vP8saG73rE/edit>. Acesso em: 02/04/2020.