Um sensor ultrassônico é capaz de detectar objetos através da propagação de sons em alta frequência, imperceptíveis ao ouvido humano.

Para determinar a distância entre o sensor e um objeto ele dispara uma onda e calcula o tempo em que ela leva para retornar, assim que atinge um alvo capaz de refletir o som. Isso só é possível graças ao eco criado pelos pulsos ultrassônicos.

Sensor ultrassonico

Pra que servem?

Os sensores são facilmente encontrados em aero modelos, automóveis, equipamentos médicos, linhas de montagem e em mais um tanto de coisas no mundo. As aplicações são muitas:

  • Medição da altura e tamanho de/entre objetos
  • Observação da distância entre objetos
  • Detecção da presença de corpos
  • Monitoramento do nível de líquidos e sólidos

Os projetos com Arduino usam de forma convencional os sensores para detecção de obstáculos, com ele é possível rever a rota de um carrinho prestes a colidir, por exemplo.

Maxbotix LV-EZ2

O Maxbotix é o mais completo dentre os três enquanto aos formatos de leitura, que são três: analógico, serial e por largura de pulso (PWM). O mais comum é fazer a leitura pela porta analógica, usando a função analogRead() ou por uma das portas pwm, usando a função pulseIn().

Especificações

  • Opera com 2.2 a 5.5v
  • Consome 2 e 3ma para 3 e 5v respectivamente
  • Leituras Analógica, PWM e Serial (RS-232)
  • Frequência ultrassônica de 42Hz
  • Faixa de detecção de 0 a 645cm
  • Resolução de 2,54cm

Vale lembrar que a informação de distância entre os objetos e o sensor somente é captada a partir de 6 polegadas. Abaixo disto, o sensor apenas acusa a presença do obstáculo, não informando a distância em que se encontra.

Conexão

Sensor Ultrassônico Arduino
GND GND
+5 5V
Leitura Analógica
AN Analog In Port (0)
Leitura por Pulso
PW PWM Port (8)

O Maxbotix EA4 é outro sensor da família Maxbotix e estes são exemplos de aplicações que exibem seus dados em osciloscópios e telas feitas com processing.

+ Datasheet
+ Código de exemplo
+ Onde comprar

Seeedstudio sensor

Diferentemente do Maxbotix o sensor da Seeedstudio possui dois canhões, um para emitir e outro para receber o eco produzido pelas ondas. Este formato dá a ele um aspecto observador, uma alusão a dois olhos, um requinte a mais ao seu projeto. Apesar de ter o hardware semelhante ao HC-SR04, ele abstrai um dos pinos de conexão, tendo apenas 3. Além disto, usa a mesma biblioteca que o Ping))) da Paralax.

Especificações

  • Opera com 5v
  • Consome 15ma
  • Leitura PWM
  • Frequência ultrassônica de 40Hz
  • Faixa de detecção de 3cm a 4m
  • Resolução de 1cm

Nos testes em que realizei o sensor conseguiu medir distâncias superiores aos 4 metros mencionados no datasheet. O sensor retornou o afastamento de até 7 metros e meio.

Conexão

Sensor Ultrassônico Arduino
GND GND
VCC 5V
SIG Digital Port (4)

+ Datasheet
+ Código de exemplo
+ Onde comprar

HC-SR04

De todos listados até aqui o HC-SR04 é o sensor de menor custo. É possível encontrá-lo por menos de 10 dólares no eBay. A presença de dois pinos (Trigger e Echo) para a leitura da distância é compensado pelo baixo consumo de corrente, segundo o fabricante: 2ma.

Especificações

  • Opera com 5v
  • Consome menos que 2ma
  • Leitura PWM
  • Frequência ultrassônica de 50Hz
  • Faixa de detecção de 2cm a 5m
  • Resolução de 3mm

Conexão

Sensor Ultrassônico Arduino
GND GND
VCC 5V
Trig PWM Port (10)
Echo Digital Port (12)

+ Datasheet
+ Código de exemplo
+ Onde comprar

E com qual deles dormir?

Sem sombra de dúvidas o melhor custo benefício fica para o HC-SR04. Ele custa em média metade do preço do sensor ultrassônico da Seeedstudio e suas características podem ser facilmente toleradas pelos pequenos projetos de robótica. Mas que tal o da Seeed?

Maxbotic

Vantagens: O tamanho reduzido do sensor pode facilitar a sua instalação em projetos compactos. Outro ponto positivo do maxbotic é o baixo consumo de energia, que é de apenas 2ma. Além disto, as 3 formas de leitura oferecem mais liberdade no tratamento dos dados.

Desvantagens: A resolução da leitura é demasiadamente alta, o que torna a granulação dos dados muito baixa. O valor da distancia é dada a cada polegada. Com um obstáculo a 80 centímetros o sensor exibiu 78cm e a 150 centímetros, 147cm. Por fim, ele apresentou uma distância de 12cm para objetos postos abaixo de 15 centímetros de distância dele, mas isto faz parte de suas especificações, o valor de afastamento só começa a ser calculado após a sexta polegada (15,2 centímetros).

Seeedstudio sensor

Vantagens: Interpretou valores entre os objetos desde o primeiro centímetro de distância, algo não visto nos demais. Os valores obtidos entre 1cm e 6m foram satisfatórios e agradeço pela leitura com apenas um pino de comunicação, economia de uma porta no Arduino, demais!

Desvantagens: Dependendo do afastamento em que o sensor esteja dos obstáculos o ângulo de visão pode aumentar consideravelmente, fazendo com que o foco do sensor capte objetos laterais. Se o sensor estiver muito próximo ao chão e a uma distância maior que 80 centímetros da parede, por exemplo, o valor captado pode ser inferior a 50 centímetros. Aconteceu comigo e acredito que ele retornou a distância do solo. E se o datasheet não estiver enganado, este sensor consome quase 8 vezes mais que o HC-SR04.

HC-SR04

Vantagens: A maior vantagem deste sensor é o baixo custo e apenas isto.

Desvantagens: Em meus testes eu percebi que ele é meio descalibrado. Abaixo de 3 centímetros de distância da parede o sensor exibiu 4cm. A partir de 5 centímetros ele mostra 1 centímetro acima da medida real, por volta de 80 centímetros a diferença é de 0.5cm e em 150 centímetros o afastamento é equiparado a medida real. O ângulo de trabalho é baixo o que faz com que o sensor retorne valores por volta de 3580cm dependendo da angulação que se encontra do obstáculo.

E o pior: é praticamente impossível captar valores acima de 150 centímetros, o sensor apenas retorna 3580cm. Talvez o problema seja com o meu. Infelizmente não pude testar outros da mesma família.

About Isaias Coelho

Analista de Sistemas por formação e Programador de Interface por profissão, agora tô aqui escrevendo sobre Arduino...

Related Posts: