Sensor ultrassônico com Arduino

O sensor ultrassônico é presente em nosso dia dia, principalmente em veículos. Mas já parou para pensar como ele funciona? Aprenda a usar com Arduino e dominará em qualquer microcontrolador.

Como funciona?

O sensor basicamente é um autofalante e um “microfone” só que em uma frequência sonora acima do qual conseguirmos escutar, seu funcionamento é o mesmo do morcego, golfinho e submarino.

Medição ultrassônica

O sensor ultrassônico segue o mesmo principio dos exemplos da imagem acima, mais especificamente o submarino por ser uma maquina. O som é emitido percorrendo uma distância ‘s’ até o objeto aonde é refletido até a fonte emissora, o espaço do emissor entre o objeto se da pela seguinte formula:

Calculo para obter a distância com o sensor ultrassônico e Arduino.
  • Espaço em cm (S);
  • Tempo em ms (T);
  • Velocidade do som em cm/ms da (V).

Observações

Este sensor trabalha da mesma forma que um alto falante e um microfone por se tratar de ondas sonoras só que ultrassônicas, por isso deve ser considerado os mesmos comportamentos físicos do som. A depender do ambiente, superfície e angulação do objeto/sensor pode haver uma leitura errada que não vai coincidir com a distância real.

Reflexão de luz e sonora

Embora a imagem esteja retratando a reflexão do feixe de luz, o mesmo comportamento acontecerá com o sensor ultrassônico caso esteja com uma angulação ‘x’ menor que 90° em relação ao objeto. Esse é um dos exemplos do comportamento “mais comum” que pode ocorrer na maioria das aplicações, quando isso acontece ocorre uma leitura de um valor geralmente acima da distância real, para entender mais sobre acústica e propagação do som clique aqui.

Especificações do Sensor Ultrassônico HC-SR04

Sensor ultrassônico hcsr04  para medição de distância
Sensor ultrassônico hcsr04 para medição de distância
  • Voltagem de alimentação: DC 5V;
  • Corrente de trabalho: 15mA;
  • Frequência de operação: 40Hz;
  • Distância máxima: 4m;
  • Distância mínima: 2cm;
  • Ângulo de medição: 15°;
  • Entrada de sinal trigger: Pulso de 10µS TTL;
  • Saída do sinal echo proporcional a entrada;
  • Dimensões 45 * 20 * 15mm.

Montagem de Exemplo

Nesta montagem foi utilizado um display OLED 0,96″ i2c para exibir a distância obtida pelo sensor ultrassônico HC SR04 mas pode ser retirado e exibir via serial.

Montagem do sensor ultrassônico hcsr04  para medição de distância com o Arduino nano

Código

A biblioteca do sensor ultrassônico já vem junto com a IDE do Arduino mas para esse exemplo com display OLED 0,96″ é necessário que tenha instalado a biblioteca Adafruit_SSD1306. Você pode copiar o código abaixo ou baixar via GitHub

/*=======================================================================
  Conteúdo completo e detalhado no link: 
  https://elcereza.com/sensor-ultrassonico-com-arduino/
  Site  : https://elcereza.com/
  
  Autor : Gustavo Cereza
  Disponibilizado por : Elcereza
  Redes : @ellcereza
  Canal Telegram : https://t.me/elcereza
=======================================================================*/

#include <Elcereza_HCSR04.h>

#define TRIGGER_PIN  5                                                            
#define ECHO_PIN     6  

HCSR04 u(ECHO_PIN, TRIGGER_PIN);

void setup() {
  Serial.begin(9600);
}

void loop() {
  Serial.println("Distância: " + String(u.getcm()) + "cm");
  delay(1000);
}

Funcionamento

Nó vídeo abaixo é possível notar que ao aproximar o cartão, o sensor diminui a distância mas também em uma parte do vídeo é perceptível que ao depender da angulação do objeto, neste caso um cartão, o valor lido se não será a distância exata do objeto para o sensor. Isso ocorre pois as ondas sonoras são refletidas em outra direção, como se fosse um espelho e um laser.