Neste artigo, mostrarei como usar um sensor ultrassônico HC-SR04 para medir a distância entre o seu sensor e um objeto no caminho usando Raspberry Pi. Vamos começar.
Para medir com sucesso a distância com o sensor Raspberry Pi e HC-SR04, você precisa,
Escrevi um artigo dedicado sobre a instalação do Raspbian no Raspberry Pi, que você pode verificar em https: // linuxhint.com/ install_raspbian_raspberry_pi/ se você precisar.
HC-SR04 PILOUTS:
O HC-SR04 tem 4 pinos. VCC, gatilho, eco, grouda.
Fig1: HC-SR04 PILOUTS (https: // www.mouser.com/ds/2/813/hcsr04-1022824.pdf)
O pino VCC deve ser conectado a +5V do pino do Raspberry Pi, que é o pino 2. O pino de solo deve ser conectado ao pino GND do Raspberry Pi, que é o pino 4.
Os pinos de gatilho e eco devem estar conectados aos pinos GPIO do Raspberry Pi. Enquanto o pino de gatilho pode ser diretamente conectado a um dos pinos GPIO do Raspberry Pi, o pino de eco precisa de um circuito de divisor de tensão.
Diagrama de circuito:
Conecte o sensor ultrassônico HC-SR04 ao seu Raspberry Pi da seguinte maneira:
Fig2: sensor ultrassônico HC-SR04 conectado ao Raspberry Pi.
Depois que tudo está conectado, é assim que se parece:
Fig3: sensor ultrassônico HC-SR04 conectado ao Raspberry Pi na placa de ensaio.
Fig4: sensor ultrassônico HC-SR04 conectado ao Raspberry Pi na placa de ensaio.
Escrevendo um programa Python para medir a distância com HC-SR04:
Primeiro, conecte -se ao seu Raspberry Pi usando VNC ou SSH. Então, abra um novo arquivo (digamos distância.py) e digite as seguintes linhas de códigos:
Aqui, a linha 1 importa a biblioteca Raspberry Pi GPIO.
A linha 2 importa a biblioteca do tempo.
Dentro de tentar Bloco, o código realmente para medir a distância usando HC-SR04 está escrito.
O finalmente O bloco é usado para limpar os pinos do GPIO com Gpio.limpar() método quando o programa sai.
Dentro de tentar Bloco, na linha 5, Gpio.SetMode (GPIO.QUADRO) é usado para facilitar a definição de pinos. Agora, você pode fazer referência a pinos por números físicos como na placa Raspberry Pi.
Na linha 7 e 8, Pintrigger está configurado para 7 e Pinecho está configurado para 11. O ACIONAR O pino de HC-SR04 está conectado ao pino 7 e ECO O pino de HC-SR04 está conectado ao pino 11 do Rapsberry Pi. Ambos são pinos de GPio.
Na linha 10, Pintrigger é configurado para saída usando Gpio.configurar() método.
Na linha 11, Pinecho é configurado para entrada usando Gpio.configurar() método.
As linhas 13-17 são usadas para redefinir Pintrigger (configurando -o como lógica 0) e definindo o Pintrigger para a lógica 1 por 10ms e depois a lógica 0. Em 10ms, o sensor HC-SR04 envia 8 40kHz de pulso.
As linhas 19-24 são usadas para medir o tempo necessário para que os pulsos de 40kHz sejam refletidos para um objeto e voltem ao sensor HC-SR04.
Na linha 25, a distância é medida usando a fórmula,
Distância = tempo delta * velocidade (340m / s) / 2
=> Distância = tempo delta * (170m/s)
Eu calculei a distância em centímetros em vez de medidores, apenas para ser preciso. Eu calculei a distância também é arredondada para 2 lugares decimais.
Finalmente, na linha 27, o resultado é impresso. É isso, muito simples.
Agora, execute o script Python com o seguinte comando:
$ python3 Distância.pyComo você pode ver, a distância medida é 8.40 cm.
Fig5: Objeto colocado em cerca de 8.40 cm de distância do sensor.
Eu me mudei para me opor um pouco mais longe, a distância medida é 21.81cm. Então, está funcionando como esperado.
Fig6: Objeto colocado em cerca de 21.81 cm de distância do sensor.
É assim que você mede a distância com o Raspberry Pi usando o sensor ultrassônico HC-SR04. Veja o código para distância.Py abaixo:
Importar RPI.Gpio como gpio