Arduino – Utilizando o Sensor Ultrasonico HC-SR04 e Buzzer 5V

Arduino – Utilizando o Sensor Ultrasonico HC-SR04 e Buzzer 5V

Nesta prática você vai aprender a utilizar o Arduino em conjunto com o Sensor Ultrasonico junto e Buzzer 5V.

sensor_ultrasonico_hcsr04

O Sensor Ultrasonico HC-SR04 é um dos sensores mais conhecido do mercado. Pode-se dizer que todos que estão iniciando com Arduino sempre procuram pelo Sensor Ultrasonico HC-SR04 para desenvolver seus primeiros projetos medindo distâncias de obstáculos / objetos em relação ao sensor. O mesmo é aplicado com mais frequência em projetos de robótica, principalmente em chassis robóticos, robôs ou carrinhos. O sensor é capaz de medir com precisão (3mm de margem de erro) distâncias de 2cm até 4m.

O Buzzer 5V é um componente utilizado para emitir sinais sonoros. O mesmo possui um circuito oscilador que produz o som e só necessita ser energizado.

Basicamente o que será feito nesta prática é definir uma distância mínima do objeto em relação ao Sensor Ultrasonico HC-SR04 para que o Buzzer 5V seja ativado.

Abaixo está a lista dos itens necessários, e mais informações sobre cada um deles:

Arduino Uno Com Cabo USB A/B
Buzzer Ativo 5V
Cabo Jumper
Protoboard
Sensor Ultrasônico HC-SR04

Abaixo está o esquema de ligação para esta prática:

Esquema de ligação do sensor ultrasonico e buzzer simulando um alarme

Feito o esquema de ligação, será necessário instalar uma biblioteca na IDE do Arduino para em seguida carregar o código na placa.

Faça o download da biblioteca Ultrasonic e em seguida faça a instalação da mesma na IDE do Arduino.

Se você não sabe como fazer a instalação de bibliotecas na IDE, acesse o link abaixo e em seguida retorne para continuar:

Arduino – Importando bibliotecas para a IDE

O código para testes está abaixo, basta copiar o mesmo, colar na IDE, salvar e carregar:

Definimos no código que quando o objeto estiver a uma distância de 30cm (ou menos) em relação ao Sensor Ultrasonico HC-SR04 o Buzzer 5V deverá ser ativado. Caso a distância seja superior a 30cm o Buzzer 5V permanecerá desligado.

No vídeo abaixo você pode ver o resultado final desta prática:

Gostou desta prática? Então deixa seu comentário, dúvida ou sugestão aí embaixo!

Loja online: https://www.masterwalkershop.com.br
Fan page no Facebook: https://www.facebook.com/masterwalkershop

Nos ajude a espalhar conhecimento clicando no botão de compartilhar (f Like) que está mais abaixo.

Obrigada e até a próxima!

Seu feedback é muito importante! Que tal dar uma nota para esta postagem?! Faça sua avaliação aqui embaixo.



Postagem anterior:
Próxima postagem:
Postagem feita por

Diretora de Marketing, Designer e Criadora de Conteúdo da MasterWalker Shop. Bacharel em Engenharia da Computação. Apaixonada por tecnologia, fã de super-heróis e bandas de rock.

Existem 34 comentários para esta postagem
  1. Henrique às 14:10

    Boa tarde! Consegui executar o projeto. Queria implementar um Display LCD mostrando a distância. Vocês têm como me da uma dica de como implementar?

  2. Cloud Oliver às 00:41

    Ola. Reproduzi o código e com os jumpers todos ligados corretos, porém o buzzer fica ativado direto. Ele detecta quando se aproxima mais parece não obedecer o “if else”. Já observei a saída e está imprimindo de boa. Mais para os valores maior de que 30cm, ele continua com buzzer ativo.

    Alguma sugestão?

  3. Thiago Pereira às 17:23

    Olá, tudo bem?

    Segui os passos do tutorial, porém não está funcionando. Sou novato na parte do Arduino, mas acredito ter seguido os passos corretamente.

    Meu Arduino está se conectando com a IDE, mas não acontece nada, não da erro e nada do tipo.

    Poderiam me ajudar?
    Obrigado.

  4. Jose Carlos às 13:08

    Ola, tudo bem?
    tentei reproduzir este projeto, porem teve problema na linha: const int trigPin = 7; , diz que o arquivo não existe. O que tenho que fazer?

    • Euler Oliveira às 14:34

      Olá Jose Carlos.

      Agradeço pelo comentário!

      Você precisa importar a biblioteca conforme está mencionado na postagem.

  5. Bruno de PIzzol às 22:18

    Boa noite, tudo bem?

    Estou fazendo um projeto, e estou limitado em quantidade de portas do microcontrolador, minha pergunta é: é possível conectar mais de um sensor na mesma porta do microcontrolador?? ou seja, conectar o trigpin na mesma porta para 3 sensores, e os echopin ligar em portas diferentes

    É possível?

    • Euler Oliveira às 11:15

      Olá Bruno.

      Agradeço pelo comentário!

      Recomendo que pesquise no Google pelo termo: multiple ultrasonic Sensor hc-sr04

      Acredito que conseguirá mais informações do que eu consigo fornecer, pois nunca liguei 2 ou mais HC-SR04 em um Arduino.

    • Rafael às 11:31

      Oi poderia me ajudar no meu caso o buzzer dispara ,e fica disparado independente da distância fica acionado

  6. Fagner às 14:30

    Boa Tarde,

    Para que finalidade foi criada uma variavel String result sendo que não a vi sendo utilizada em nenhum lugar do código fonte apresentado.

    • Euler Oliveira às 14:40

      Olá Fagner.

      Agradeço pelo comentário!

      De fato ela não está sendo utilizada, portanto, basta ignorar a mesma ou remover do código.

  7. nicolas às 14:33

    nao estou conseguindo
    conectei tudo de acordo mas mesmo assim nao esta conectando e mostra q a programação
    compilou sem problemas

    • Euler Oliveira às 15:11

      Olá Nicolas.

      Agradeço pelo comentário!

      conectei tudo de acordo mas mesmo assim nao esta conectando

      Não consegui compreender. O que não está conectando?

  8. António Magalhães às 20:54

    Boa noite!

    Funcionou na perfeição.
    Mas tendo executado o: “Como usar com Arduino – Sensor Ultrasonico HC-SR04” que também funcionou direito, andei tentando que este além do sinal acústico para o buzzer, me pudesse também dar a distância no monitor serial. Será possível?
    Desde já o meu obrigado.

    A. Magalhães

    • Euler Oliveira às 07:52

      Olá António Magalhães.

      É possível sim. No void setup() do código, insira a linha:

      Serial.begin(9600);

      E após a linha hcsr04(); no void loop(), insira a linha:

      Serial.println(distancia);

  9. Lavínia Souza às 18:41

    Olá, com o buzzer passivo é a mesma coisa?

    • Euler Oliveira às 08:47

      Olá Lavínia Souza.

      Não, a forma de programar o buzzer passivo é diferente.

  10. alex às 19:07

    ola, tentei fazer o teste, mas assim que enerigizamos o circuito o buzzer dispara direto, vi toda a ligaçao so que mesmo assim continua a mesma coisa, se poder me ajudar eu ficaria muito grato pois esse circuito faz parte do meu tcc

    • Rafael às 11:34

      Oi Alex. Conseguiu resolver o problema com o buzzer que disparou no sensor ultrassonico ? Poderia me ajudar pq ele disparou e não para

  11. Cláudio Molina às 17:40

    Boa tarde! Alguém pode me ajudar com este erro:
    error: ‘hcsr04’ was not declared in this scope

  12. Celso às 18:26

    Eu insistidamente tentei reproduzir este projeto, porém tive problemas nessa linha de código :
    distancia = (ultrasonic.Ranging(CM)); biblioteca perfeitamente instalada como tutorial.
    poderia me ajudar?
    agradeço desde já

    • Euler Oliveira às 08:26

      Olá Celso.

      Infelizmente não sei te dizer o que pode ser, pois acabei de fazer um teste com o código e biblioteca disponíveis no artigo e está funcionando perfeitamente.

  13. Sinara às 22:11

    Alguem poderia me ajudar? Estou tentando fazer um projeto onde as medidas são lidas pelo android através do app inventor, via modulo wifi ESP 8266, é preciso colocar algum “calculo matematico” no app invento… pois ele não mostra a medida correta só numeros aleatórios…

  14. Sidney às 11:43

    Bom dia!
    Eu não tenho um buzzer 5v, tenho somente o 3.3v e aqui na minha cidade não tem esse produto. Como faço para ligar esse buzzer 3.3v?

    • Euler Oliveira às 15:42

      Olá Sidney.

      Neste caso, você pode fazer um divisor de tensão para reduzir os 5V do Arduino para 3.3V e acionar o Buzzer.

  15. Erika às 12:57

    Boa tarde, eu gostaria de que o projeto funcionasse com uma bateria 9v, como eu poderia fazer pra incluir ela nesse projeto? Não entendo muito

    • Euler Oliveira às 15:51

      Olá Erika.

      Você pode utilizar um clip de bateria 9V e conectar os terminais na protoboard, por exemplo. Para alimentar o Arduino, basta conectar o VCC da bateria no pino VIN e o GND no GND do Arduino. Pode usar também um clip de bateria 9V com plug P4 e conectar no plug jack do Arduino, desta forma, eliminaria a alimentação USB.

  16. Vitor às 06:59

    Com esse sensor posso aumentar a distância de percepção para quantos metros?

    • Euler Oliveira às 11:01

      Olá Vitor.

      A faixa de medição do sensor é fixa. O HC-SR04 mede na faixa de 2cm a 4m.

  17. isabella às 14:27

    Boa tarde!
    Tentei reproduzir este projeto, porém tive problemas nessa linha de código :
    distancia = (ultrasonic.Ranging(CM));
    poderia me ajudar?
    agradeço desde já!

    • Euler Oliveira às 15:12

      Olá Isabella.

      Você instalou a biblioteca conforme orientado no tutorial?

      Executei o código disponível na postagem e foi compilado sem nenhum problema.

    • Celso às 16:35

      Boa tarde Isabella também tive o mesmo problema, resolvi com um simples renomear de palavras: onde estava a função distancia = (ultrasonic.Ranging(CM));
      renomeie para distancia = (ultrasonic.distanceRead(CM));
      //PORQUE ATUAL BIBLIOTECA Ultrasonic.h NÃO SABE OQUE É distanceRead(CM));
      ENTÃO MUDA PARA distanceRead(CM));
      Ou então procure uma ultrasonic que aceite a palavra Ranging; E passe-me o link, pois maioria
      projetos encontrados vem com as configurações para esta (ultrasonic.Ranging(CM));