Medir a velocidade do som.

article featured image

Esta aula tem como objetivo principal ver o funcionamento de um sensor de distância, velocidade com que este envia e recebe um sinal.

Vamos criar o circuito abaixo e para tal necessitamos de 1 Arduíno, 1 Breadboard, 1 sensor de distância (Ultrasonic Module HC-SR04) e 4 jumpers.

Como podemos ver pela imagem do circuito, este sensor é bastante fácil de ligar. Temos o pino VCC que liga aos 5V, o pino GND que liga ao GND, o pino Trig liga ao pino 13 e, por último, o pino Echo que liga ao pino 11 do nosso Arduíno.

Para começarmos a utilizá-lo é necessário colocar o pino Trigger LOW usando o modo de escrita digital. Em seguida fazemos uma pausa (delay), e colocamos o pino Trigger HIGH. Nova pausa, esta pode ser mais breve, e colocamos o pino Trigger novamente a LOW. Esta sequência de LOW-HIGH-LOW vai criar um tom de ultrassom agudo, ao que chamamos de ping, que é enviado para o exterior do sensor. Este irá sempre em frente até encontrar um obstáculo, ponto em que faz o retorno até ao sensor. Neste momento, é sensor envia sinal pelo seu pino Echo, e o comprimento do pulso em microssegundos indica o tempo que levou a ser feito o ping na sua viagem de ida e volta. Tendo em atenção a aula 15 conseguimos ler este pulso.

Uma vez feita a medição do pulseIn (tempo) podemos calcular a que velocidade com que foi feita a viagem de ida e volta;

distância = velocidade * tempo

Dado que queremos calcular a velocidade a que é feito o ping temos de alterar a nossa fórmula;

velocidade = distância / tempo

O resultado que vamos obter aqui estará em polegadas por microssegundos, isto porque a distância é dada em polegadas e o tempo está em microssegundos. Assim sendo e para que nos faça mais sentido, há a necessidade de converter estes valores para km por hora. Neste sentido temos de utilizar a seguinte fórmula:

1 segundo = 1.000.000 microssegundos;

1 hora = 3600 segundos;

1 km = 39.370,0787 polegadas;

distância = 2 * distância (distância que vai até ao objeto e volta ao sensor)

VelocidadeDoSom = (2 * distância) / tempo * 1000000 * 3600 / 39370.0787

 

Depois de analisado todos estes passos vamos ver o algoritmo para o funcionamento do nosso sensor:

Mais uma vez espero que tenham gostado da aula. À medida que as aulas se vão passando começa a ser mais fácil entender o código e não há a necessidade de ver linha a linha do código, começa a ser natural e vamos começando a adivinhar as linhas que se seguem, pelo menos assim espero!!!

Cá vos espero na próxima aula com um novo projeto interessante. Obrigado.