fbpx

Medindo Distâncias Com Arduino e Módulo Sensor Ultrassônico HC-SR04

No artigo de hoje, vamos utilizar um módulo de sensor ultrassônico para medir distâncias juntamente com a placa Arduino. O módulo utilizado é o HC-SR04, de fácil aquisição e baixo custo.

Medir distâncias é tão importante que há diferentes formas de se fazer. Conhecer a distância aos objetos do mundo externo é muito importante para robôs, veículos autônomos, quantificar as dimensões de um local, ou seja, em várias situações do cotidiano.

Há diferentes técnicas de detecção de objetos e medição de distâncias, e hoje apresentarei um pouco sobre o método empregando ultrassom.

Veja também:

Curso de Arduino – Do zero ao avançado

Primeiramente vamos definir o conceito de sensores e transdutores.

Sensores são elementos que transformam uma variável física de interesse em uma grandeza passível de processamento. Em nosso caso, a variável é transformada em grandezas elétricas de fácil processamento.

Transdutores são elementos que convertem um tipo de energia em outro. Em nosso caso, os transdutores convertem um determinado tipo de energia em energia elétrica. Por exemplo, o microfone que converte energia mecânica (voz) em energia elétrica.

Mas, devemos lembrar que o transdutor pode atuar como elemento sensor, porém o sensor não atua como transdutor. Desta forma, o transdutor ultrassônico pode atuar como elemento sensor. E por isso, é frequentemente chamado de sensor ultrassônico.

O transdutor ultrassônico é um elemento que emite uma onda mecânica em uma frequência acima de 20 KHz, como a capacidade de audição humana é limitada entre 20 Hz a 20 KHz, não somos capazes de perceber o sinal de um ultrassom. O princípio de funcionamento é baseado no efeito piezoelétrico, onde uma vibração mecânica em um cristal gera uma tensão entre os eletrodos e vice versa, a tensão oscilante aplicada ao cristal gera uma onda mecânica. Perceba que há conversão de energia nesta etapa, característica dos transdutores.

O transdutor é alimentado com um sinal de alta frequência, internamente há um ressonador, que pode ser construído com diferentes materiais (cristais de quartzo, folha de níquel, entre outas tecnologias). Os dois tipos de transdutores de ultrassom comumente encontrados são os baseados em cristais de quartzo e os magnetostritivos.

A onda mecânica em alta frequência emitida é refletida por um objeto, ela passa a ser recebida pelo transdutor que a enviou ou por outro transdutor que ficará responsável pela detecção da onda mecânica. A Figura 1 a seguir representa esquematicamente um sensor ultrassônico.

Figura 1 – Esquema de detecção de objetos pelo sensor ultrassônico.

Logo após a detecção da onda mecânica, energia mecânica é convertida em energia elétrica. A próxima etapa, é utilizar um circuito para condicionamento dos sinais elétricos advindos do sensor.

O Módulo HC-SR04

Com o entendimento de como funciona a detecção de objetos por ultrassom, podemos compreender melhor o funcionamento do módulo que iremos utilizar para este fim. Há diferentes módulos dedicados a detecção de objetos e medição de distâncias assim como o HC-SR04. A Figura 2 a seguir apresenta o módulo sensor juntamente com os pinos de conexão.

Figura 2 – Pinos do módulo sensor ultrassônico HC-SR04.

Note que este módulo possui quatro pinos, também encontra-se comercialmente módulos de três e cinco pinos. A seguir descreverei qual a finalidade de cada pino.

➤ +5V – Pino de alimentação do módulo sensor, responsável pela alimentação do circuito condicionador de sinais integrado ao módulo;

➤ Trigger – Pino que receberá o comando para iniciar a emissão de sinais ultrassônicos, ele deve ser acionado por pelo menos 10 µs;

➤ Echo – Pino responsável por fornecer a informação sobre a detecção de objetos, ou seja, neste pino é fornecido um pulso de tensão, geralmente em 5 V. O tempo de duração desse pulso é relacionado com o tempo de emissão do sinal até que ele seja refletido e detectado pelo módulo. Este é o tempo de emissão mais o de recepção do sinal;

➤ GND – Pino de terra, garante a mesma referência de tensão entre Arduino e módulo.

Consultando o datasheet do módulo HC-SR04 podemos verificar suas características elétricas. As características elétricas mais importantes são apresentadas a seguir.

➤ Alimentação: 5 V;
➤ Corrente de operação: 15 mA;
➤ Frequência de operação: 40 kHz;
➤ Distância mínima: 2 cm;
➤ Distância máxima: 4 m;
➤ Ângulo de medida: 15 °.

Com estas informações e o datasheet, podemos criar o programa para que o Arduino detecte objetos e meça distâncias. Note que a faixa de medição deste módulo é limitada de 2 cm a 4 m. Porém, há no mercado outros módulos com outras faixas de medição, e isto é claro, implica em um custo maior.

datasheet informa que a distância a ser calculada é proporcional ao tempo em nível alto do sinal recebido do pino Echo, a equação a seguir nos dá a relação da distância.

D = T [seg] * 340 [m/seg] / 2

A principal vantagem em utilizar o módulo HC-SR04 é que nele está implementado todo circuito de condicionamento de sinais.

Comunicando o Arduino Com o Módulo HC-SR04

Agora que conhecemos parte da teoria de detecção de objetos por ultrassom e o funcionamento do módulo que adotamos, podemos escrever um programa para que o Arduino receba as informações do módulo e apresente para nós a distância do obstáculo.

O programa elaborado pode ser visualizado a seguir.

Note que com poucas linhas de código temos um medidor de distância com um sensor ultrassônico. Este programa pode ser baixado, copiado e distribuído livremente entre a comunidade. Você pode baixar este e outros programas no meu GitHub.

Preferi utilizar a comunicação serial por ser mais simples e mais viável como exemplo. Mas, em um artigo futuro trarei esta mesma aplicação empregando um display LCD.

Após testado e compilado o programa acima para a placa Arduino, é hora de realizar a montagem prática para verificar o funcionamento. O esquema das conexões de montagem são exibidas na Figura 3 a seguir.

Figura 3 – Esquema de conexão do Arduino com sensor ultrassônico.

Perceba que o esquema da Figura 3 está de acordo com o definido no programa. Após a montagem, obtive o seguinte resultado em protoboard.

Figura 4 – Montagem realizada em bancada.

O circuito é extremamente simples, e não há dificuldades na montagem, mas, atente-se para conectar o sensor corretamente na protoboard e não provocar curto-circuitos.

Tudo montado corretamente, é hora de realizar alguns testes. Para isto posicionei uma régua escolar comum na direção do sensor. Coloquei alguns obstáculos em diferentes posições e tomei a leitura da régua e a leitura apresentada na serial. A sequência de imagens a seguir apresenta o resultado em cada situação de medida.

Figura 5 – Medida em 10 cm.
Figura 6 – Resultado serial para medida de 10 cm.
Figura 7 – Medida em 15 cm.
Figura 8 – Resultado serial para medida de 15 cm.
Figura 9 – Medida em 20 cm.
Figura 10 – Resultado serial para medida de 20 cm.

Os resultados nas imagens acima apresentam a precisão e acurácia do sensor ultrassônico utilizado para medir distâncias.

As aplicações deste sensor são inúmeras, vão desde sensores de distâncias à sensores de estacionamento automotivos. A única limitação neste caso, é nossa capacidade de imaginar situações para aplicar este módulo.

Com a base teórica apresentada e o exemplo acima, espero ter ajudado muitos leitores do blog e entusiastas em projetos eletrônicos a iniciarem, se motivarem e aplicar este conhecimento a situações do cotidiano.

Obrigado e até o próximo artigo!

Veja também

O que é Arduino ? Tudo o que você precisa saber

Você também pode gostar

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *