Arduino
Sensor ultrassônico
O que é um sensor ultrassônico?
Um sensor ultrassônico é um dispositivo que utiliza alta frequência de som para medir a distância entre itens determinados.
Este tipo de sensor consiste tipicamente de uma unidade de transceptor único, que é capaz de emitir e detectar o som. Este dispositivo cria um pulso sonoro que está além da faixa de audição do ouvido humano. A maioria dos objetos sólidos é capaz de refletir ondas sonoras. O transceptor utiliza um temporizador para determinar com precisão quanto tempo um pulso ultrassônico leva para “saltar” em um objeto, e retornar à unidade.
Ele não precisa de contato físico com o objeto ou ainda de propriedades especiais desse produto, já que ele não só detecta sua presença, bem como ainda tem recursos para determinar qual é à distância em que ele se encontra. Além do mais, o princípio de funcionamento dos mesmos está baseado na emissão de uma onda sonora de alta frequência, e na medição do tempo levado para a recepção do eco produzido quando esta onda se choca com um objeto que seja capaz de refletir o som. Eles emitem pulsos ultrassônicos ciclicamente. Na verdade, quando um objeto reflete estes pulsos, o resultado será um eco recebido e convertido em um sinal elétrico.
Uma onda de som geralmente percorre a uma velocidade conhecida. Em condições de temperatura do ar ideais, esta velocidade é de cerca de 1126 pés (343 metros) por segundo. Quando, tanto a velocidade como o tempo de pulsos de ultrassom são conhecidos, a distância de um objeto que reflete esta grandeza pode ser estimada utilizando cálculos matemáticos básicos. Se um sensor ultrassônico emite um pulso e recebe o sinal refletido um décimo de segundo mais tarde.
Materiais necessários:
Cabos jumper, sensor ultrassônico, e Arduino Uno.
Esquema de montagem no Arduino:
Código utilizado:
#include <Ultrasonic.h> #define trigPin 13 #define echoPin 12 float distancia; unsigned long tempo; void setup(){ Serial.begin(9600); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); } void loop(){ digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); tempo = pulseIn(echoPin, HIGH); distancia = 0.0340 *(tempo/2); Serial.print(distancia, 1); Serial.println("cm"); delay(500); }
Referências: https://www.mecanicaindustrial.com.br/598-o-que-e-um-sensor-ultrassonico/