Medindo distância com Arduino UNO utilizando sensor ultrassônico e LCD

Introdução

 

Um dos mais básicos e mais úteis sensores no desenvolvimento de projetos utilizando Arduino é o sensor ultrassônico. Ele é um sensor que permite que meçamos a distância entre uma superfície e o sensor. Ele tem várias aplicações práticas, podendo servir desde para medir o nível de uma caixa d'água até para orientar um robô no espaço. No caso, estou utilizando o modelo HC-SR04, o mais comum. Além do sensor ultrassônico, estarei utilizando um LCD, cujo funcionamento e programação são detalhados neste artigo, também de minha autoria.

 

Como funciona?

 

Antes de propriamente iniciar o projeto em si, acho importante que seja explicado como é o funcionamento do sensor ultrassônico, já que será importante na programação.

 

O sensor ultrassônico utiliza o mesmo princípio básico do sonar. Ele é composto, basicamente, por um emissor e um receptor de ondas. O emissor do sensor (trigger) emite ondas ultrassônicas que, ao colidirem com uma superfície, são refletidas de volta para o sensor, sendo captadas pelo receptor (echo). O sensor então calcula o tempo decorrido entre a emissão e a recepção dessas ondas. Então, sabendo a velocidade da onda, é possível calcular a distância entre o sensor e a superfície em questão.

 

Funcionamento do sensor ultrassônico.
Figura 1 - Funcionamento do sensor ultrassônico.

 

Dadas as explicações, partamos agora para a montagem do projeto. Vamos lá!

 

 

Materiais

 

  • Arduino UNO (1)
  • Potenciômetro B100K (2)
  • LCD 1602A (3)
  • Jumpers (4)
  • Sensor ultrassônico HC-SR04 (5)

 

Importante: Os modelos utilizados por mim são meras sugestões. Outros modelos funcionam igualmente.

 

Materiais necessários
Figura 2 - Materiais necessários

 

 

Preparação do Hardware

 

  1. Para começar, conecte o potenciômetro, o LCD e o sensor ultrassônico todos na protoboard.
  2. Depois, conecte os jumpers conforme indicado na figura abaixo:

 

Diagrama do projeto elaborado no Fritzing.
Figura 3: Diagrama do projeto elaborado no Fritzing.

 

 

Programação

 

Importante: Para a programação do código, estarei utilizando o Visual Studio Code com PlatformIO IDE. Para aprender a usar esta plataforma, acesse este artigo. Os meus outros artigos também utilizam essa plataforma. Vale checá-los para entendê-la melhor ainda.

 

  1. O primeiro passo é o mesmo de sempre: Abrir o VSCode e o PIO Home. Para que o sensor opere, é necessário instalar e utilizar uma biblioteca específica. Para isso, clique em Libraries.

 

PIO Home e Libraries.
Figura 4: PIO Home e Libraries.

 

2. Então, digite na barra de busca "HCSR04 ultrasonic sensor". Selecione então a terceira opção de biblioteca.

 

Buscando a biblioteca.
Figura 5: Buscando a biblioteca.

 

3. Por fim, clique em Install.

 

Instalando a biblioteca.
Figura 6: Instalando a biblioteca.

 

4. Pronto! Agora com a biblioteca instalada, temos sinal verde para programar!

5. O código é relativamente simples. As explicações dos comandos utilizados no LCD podem ser encontradas no meu artigo anterior. Portanto, vou a seguir focar nos comandos específicos para o sensor ultrassônico.

6. Primeiramente, temos o comando #include <HCSR04.h>. Ele, obviamente, inclui a biblioteca do sensor ultrassônico que instalamos anteriormente.

7. Depois, temos o comando HCSR04 hc (6,7);. Esse comando define quais pinos vão ser o trigger e o echo, respectivamente.

8. Por fim, temos hc.dist(). Ele retorna o valor atual de distância em centímetros.

9. Para consultar o código, acesse o meu GitHub.

 

 

Conclusão

 

Agora que você aprendeu como usar um sensor ultrassônico, você tem uma nova gama de projetos para explorar. Além disso, esse conhecimento, somado ao que foi ensinado em meus outros artigos, será utilizado na construção de um robô, que será ensinado em um artigo futuro. Espero que tenham gostado. Sigam-me na minha página do GitHub para checar os códigos desse e de outros projetos.

NEWSLETTER

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Obrigado! Sua inscrição foi um sucesso.

Ops, algo deu errado. Por favor tente novamente.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Giovanni Cerqueira
17 anos. Apaixonado por programação e placas de desenvolvimento. Sou especialmente fã da plataforma Arduino, na qual tenho mais experiência. De vez em quando me aventuro com RaspberryPi. Iniciante na área, busco sempre aprender coisas novas.

Deixe um comentário

avatar
 
  Notificações  
Notificar