Micropython é amplamente utilizado com microcontroladores e sistemas incorporados. Podemos escrever código e bibliotecas dentro do Micropython IDE e interface vários sensores. Este artigo o guiará sobre a distância de medição usando o ESP32 com o sensor HC-SR04.
Esp32 com sensor ultrassônico HC-SR04 usando micropython
Interface Esp32 com ultrassônico apenas exige que dois fios sejam conectados. Usando sensores ultrassônicos, podemos medir a distância do objeto e pode desencadear respostas com base nesse sistema, como a colisão de veículos, evitando sistemas.
Usando Micropython, que é uma linguagem projetada para ESP32 e outros microcontroladores, podemos interface vários sensores como o HC-SR04. Código Micropython será escrito que calcula o tempo gasto pela onda de sonar para alcançar de sensor para objeto e voltar ao objeto. Posteriormente usando a fórmula de distância, podemos calcular a distância do objeto.
Aqui estão alguns destaques principais do sensor HC-SR04:
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 |
HC-SR04 PILOUTO HC-SR04 contém a seguir quatro pinos:
Como as obras ultrassônicas
Depois que o sensor HC-SR04 está conectado com Esp32, um sinal no Trig O PIN será gerado pela placa. Uma vez que o sinal for recebido no pino TRIG do sensor HC-SR04, será gerada uma onda ultrassônica que deixa o sensor e atinge o objeto ou o corpo de obstáculos. Depois de acertá -lo, voltará à superfície do objeto.
Uma vez que a onda refletida chegar de volta ao sensor que recebe um pulso de sinal no pino de eco será gerado. O ESP32 recebe o sinal do pino de eco e calcula a distância entre o objeto e o sensor usando Formula a distância.
A distância total calculada deve ser dividida por dois dentro do código ESP32, pois a distância que obtemos originalmente é igual à distância total do sensor para o objeto e de volta ao final do sensor. Então a distância real é o sinal que é igual a metade dessa distância.
Esquemático
A seguir, o esquema para interface o ESP32 com sensor ultrassônico:
Conecte o gatilho e o pino de eco do sensor com GPIO 5 e GPIO 18 do ESP32, respectivamente. Conecte também Pin GND e Vin com pinos de sensor.
Sensor ultrassônico HC-SR04 | PIN ESP32 |
Trig | GPIO 5 |
Eco | GPIO 18 |
Gnd | Gnd |
VCC | Vin |
Hardware
Os seguintes componentes são obrigados a programar o sensor ultrassônico:
Como configurar o Ultrassonic HC-SR04 com ESP32 usando o Micropython
Antes de podermos programar o ESP32 com um sensor ultrassônico, precisamos instalar uma biblioteca nele. Conecte a placa ESP32 ao PC. Siga ao longo das etapas para concluir a configuração do ESP32 com sensor ultrassônico em Thonny IDE usando Micropython.
Passo 1: Agora abre o thonny ide. Crie um novo arquivo na janela do editor, vá para: Arquivo> Novo ou pressione Ctrl + n.
Depois que o novo arquivo for aberto, cole o código a seguir na janela THONNY IDE Editor.
Máquina de importação, tempoPasso 2: Depois de escrever o biblioteca Código dentro da janela do editor agora temos para salvá -lo dentro do dispositivo Micropython.
Etapa 3: Vá para: Arquivo> Salvar ou pressione Ctrl + s.
Passo 4: Uma nova janela aparecerá. Verifique se o ESP32 está conectado com o PC. Selecione Micropython Dispositivo para salvar o arquivo da biblioteca.
Etapa 5: Salve o arquivo de biblioteca ultrassônica com nome HCSR04.py e clique OK.
Agora, a biblioteca de sensores ultrassônicos HCSR04 é adicionada com sucesso à placa ESP32. Agora podemos chamar funções de biblioteca dentro do código para medir a distância de diferentes objetos.
Código para sensor ultrassônico usando micropython
Para o código do sensor ultrassônico, crie um novo arquivo (Ctrl + n). Na janela do editor, digite o código fornecido abaixo e salve -o dentro do principal.py ou bota.py arquivo. Este código imprimirá a distância de qualquer objeto que venha na frente do HC-SR04.
O código iniciado chamando bibliotecas importantes, como HCSR04 e tempo biblioteca junto com dormir para dar atrasos.
Em seguida, criamos um novo objeto com um nome sensor. Este objeto está levando três argumentos diferentes: gatilho, eco e tempo limite. Aqui o tempo limite é definido como o tempo máximo após o sensor sair do alcance.
Sensor = hcsr04 (trigger_pin = 5, echo_pin = 18, echo_timeout_us = 10000)Para medir e economizar distância, um novo objeto nomeado distância é criado. Este objeto economizará distância em cm.
distância = sensor.a distância_cm ()Escreva o código a seguir para obter dados em mm.
distância = sensor.a distância_mm ()Em seguida, imprimimos o resultado no Micropython IDE Shell.
Imprimir ('Distância:', Distância, 'CM')No final, um atraso de 1 s é dado.
sono (1)O código completo é dado abaixo:
De HCSR04 Importar HCSR04Depois de escrever e salvar código dentro do dispositivo Micropython, agora corro o sensor ultrassônico principal.py Código do arquivo. Clique no botão Play ou pressione F5.
Saída de sensor ultrassônico quando o objeto está próximo
Agora coloque um objeto próximo ao sensor ultrassônico e verifique a distância medida na janela do monitor serial do Arduino IDE.
A distância do objeto é mostrada no terminal do shell. Agora o objeto é colocado a 5 cm do sensor ultrassônico.
Saída de sensor ultrassônico quando o objeto está longe
Agora, para verificar nosso resultado, colocaremos objetos longe do sensor e verificaremos o funcionamento do sensor ultrassônico. Coloque objetos como mostrados na imagem abaixo:
A janela de saída nos dará uma nova distância e, como podemos ver que o objeto está longe do sensor, então a distância medida é aprox. 15 cm do sensor ultrassônico.
Conclusão
A distância de medição tem uma ótima aplicação quando se trata de robótica e outros projetos, existem diferentes maneiras de medir a distância. HC-SR04 com ESP32 pode medir a distância de diferentes objetos. Aqui, este artigo abordará todas as etapas necessárias para se integrar e começar a medir a distância com ESP32.