terça-feira, 7 de janeiro de 2020

# SENSOR ULTRASSÔNICO NO ARDUINO



Objetivo: controlar um módulo sensor ultrassônico HC-SR04 com o Arduino UNO
Como funciona o sensor: o dispositivo é baseado no envio (trigger) e recebimento de ondas ultrassônicas de 40kHz, imperceptível ao ouvido humano, com esses dados é possível calcular a distância de objetos em relação ao sensor, para isso a placa utiliza como referencia o tempo em que essa onda leva para atingir um determinado obstáculo. O sensor possui uma margem de erro de 3mm, podendo operar em distâncias de 2cm até 400cm. 

O pino TRIGGER recebe um pulso de 5V por 10us(micro segundos - tempo de largura de pulso), inicializando o módulo, após isso são enviado 8 ciclos frequência específica do sensor, quando sensor detecta o retorno desses ciclos, passa o pino ECHO para "HIGH", sendo assim, o tempo em o echo ficar ligado, será a distância do objeto.

  • Gnd -  0V ground (terra)
  • Echo - pulso de saída (OUTPUT)
  • Trigger - pulso de entrada (INPUT)
  • Vcc - 5V alimentação
Datasheet: datasheet

Para o exemplo, vou utilizar a biblioteca Ultrasonic.h, mas pode ser realizado sem o auxilio da mesma, sendo que o suporte a funções específicas, facilitam a implementação de projetos mais simples, que é o meu caso. Abaixo demonstro uma das várias maneiras de adicionar bibliotecas ao Arduino IDE.

 

Para exemplificar, utilizo o Fritzing, é uma ferramenta de código aberto utilizada design de hardwares eletrônicos, que me facilitou muito o aprendizado do Arduino, existe também opções online para esse tipo de tarefa. A imagem abaixo permite uma visualização básica de sua utilização.


Para montar o circuito, utilizo os seguintes componentes:
  • Placa Arduino Uno
  • Sensor Ultrassônico HC-SR04
  • Jumpers M/M
  • Matriz de contatos
 

 Código básico:




1. Responsável pela inclusão da biblioteca Ultrasonic.h;
3. Instância um objeto com características de um sensor de distância, defino um nome e os respectivos pinos do Arduino;
6. Função setup(), configurações do projeto;
7. Configura o monitor serial da IDE;
12. Função loop(), ficará repetindo até que acabe a energia;
13. Definimos uma variável inteira, que recebera a distância em centímetros;
15. Imprime o valor no monitor serial.



Nenhum comentário:

Postar um comentário