Como usar o sensor ultrassônico com Arduino

Como usar o sensor ultrassônico com Arduino
Arduino é uma placa de microcontrolador usada pelos engenheiros para projetar vários projetos. O Arduino facilita a interação com os microcontroladores e os produtos de design de nossa escolha. Arduino tem capacidade de interface com vários módulos de hardware de sensor. Um dos sensores mais populares usados ​​com Arduino é o sensor de distância ultrassônica. Ele desempenha um papel vital na construção de projetos robóticos baseados em Arduino, onde podemos executar instruções diferentes com base na distância medida por Arduino. Vamos ver como podemos usar este sensor com Arduino.

Sensor ultrassônico com Arduino

HC-SR04 é um dos sensores ultrassônicos mais utilizados com Arduino. Este sensor determina o quão longe um objeto está. Usa sonar para determinar a distância do objeto. Normalmente, ele tem uma boa gama de detecção com precisão de 3mm, mas às vezes é difícil medir a distância de materiais macios, como o pano. Ele vem com um transmissor e receptor embutido. A tabela a seguir descreve as especificações técnicas deste sensor.

Características Valor
Tensão operacional 5V DC
Corrente operacional 15m
Frequência de operação 40kHz
Alcance min 2cm/ 1 polegada
Faixa máxima 400cm/ 13 pés
Precisão 3mm
Ângulo de medição <15 degree

Pinout

Sensor ultrassônico HC-SR04 tem quatro pinos:

  • VCC: Conecte este pino a Arduino 5V
  • GND: Conecte este pino com Arduino GND
  • Trig: Este pino recebe sinal de controle do pino digital Arduino
  • Eco: Este alfinete envia um pulso ou sinal de volta ao Arduino. O sinal de pulso traseiro recebido é medido para calcular a distância.

Como as obras ultrassônicas

Uma vez que o sensor ultrassônico estiver conectado a Arduino, o microcontrolador gerará um pulso de sinal no Trig alfinete. Depois que os sensores recebem uma entrada no pino TRAG, uma onda ultrassônica é gerada automaticamente. Esta onda emitida atingirá a superfície de um obstáculo ou objeto cuja distância devemos medir. Depois disso, a onda ultrassônica voltará ao terminal do receptor do sensor.

O sensor ultrassônico detectará a onda refletida e calculará o tempo total tomado por onda de sensor para objeto e voltará ao sensor novamente. O sensor ultrassônico gerará um pulso de sinal no pino de eco que está conectado aos pinos digitais Arduino assim que o Arduino recebe sinal do pino de eco, ele calcula a distância total entre o objeto e o sensor usando Formula a distância.

Como conectar Arduino com sensor ultrassônico

Os pinos digitais Arduino geram um sinal de pulso de 10 microssegundos que é dado ao pino de sensor ultrassônico 9, enquanto para receber sinal de entrada do sensor ultrassônico, outro pino digital é usado. O sensor é alimentado usando um arduino e o pino de saída de 5V.

Pino do sensor ultrassônico Pino Arduino
VCC Pino de saída de 5V
Trig Pin9
Eco Pin8
Gnd Gnd

Os pinos TRIG e ECHO podem ser conectados a qualquer um dos pinos digitais Arduino. Abaixo a imagem dada representa o diagrama de fiação do Arduino com sensor ultrassônico HC-SR04.

Esquemas

Como programar o sensor ultrassônico usando Arduino

Para programar um sensor ultrassônico, conecte -o com um arduino usando o diagrama acima. Agora devemos gerar um sinal de pulso no pino trigo do sensor ultrassônico.

Gerar um pulso de 10 microssegundos no pino 9 de Arduino usando DigitalWrite () e touchmicrosegunds () funções.

DigitalWrite (9, alto);
toutmicmicrosegunds (10);
DigitalWrite (9, baixo);

Para medir a saída do sensor no uso do pino 8 Pulsein () função.

Duration_microsec = pulseína (8, alto);

Depois que o pulso é recebido do pino de eco do sensor para o pino Arduino número 8. Arduino calculará a distância usando a fórmula acima.

A distância_cm = 0.017 * duration_microsec;

Código

int triggerpin = 9; /* O pino 9 é definido para o sensor Trig Pin*/
int echopin = 8; /* O pino 8 é definido para entrada de pino de eco do sensor*/
Float DurationMicrosec, DOURSENCM;
Void Setup ()
Serial.começar (9600); /*A comunicação serial começou*/
/* Triggerpin é definido como saída*/
pinmode (triggerpin, saída);
/* ECHO PIN 9 é definido como entrada*/
pinmode (ecopina, entrada);

Void Loop ()
/* Gere um pulso de 10-microssegundos para taturar pino*/
DigitalWrite (Triggerpin, High);
toutmicmicrosegunds (10);
DigitalWrite (Triggerpin, baixo);
/* Meça a duração do pulso do pino de eco*/
durationmicrosec = pulseína (ecopina, alta);
/* Calcule a distância*/
DOURSENCM = 0.017 * DURATIONMICROSEC;
/* Imprima o valor para o monitor serial*/
Serial.print ("Distância:");
Serial.impressão (a distância); /*Distância de impressão em cm*/
Serial.println ("cm");
atraso (1000);

No pino de código acima, é definido como gatilho enquanto o pino 8 é definido como o pino de saída para sensor ultrassônico. Duas variáveis DURATIONMICROSEC e DOURSENCM é inicializado. Usando o pino 9 da função pinmode () é definido como entrada enquanto o pino 8 é definido como saída.

No laço A seção do código usando a fórmula explicada acima da distância é calculada e a saída é impressa no monitor serial.

Hardware

Coloque o objeto próximo ao sensor ultrassônico.

Saída

Distância aproximada de 5.9cm é mostrado pelo sensor ultrassônico no monitor serial.

Agora afaste o objeto do sensor ultrassônico.

Saída

Distância aproximada de 10.8cm é mostrado pelo sensor ultrassônico no monitor serial.

Conclusão

O sensor ultrassônico é uma ótima ferramenta para medir a distância usando operação sem contato. Possui vasto aplicação em projetos eletrônicos de bricolage, onde precisamos trabalhar com medição de distância, verificando a presença de um objeto e nivelamento ou posição correta de qualquer equipamento. Este artigo abrange todos os parâmetros necessários para operar um sensor ultrassônico com Arduino.