Como medir a distância com o arduino

Dois sensores para medição de distância com o Arduino são extremamente populares: o sensor de proximidade infravermelho eo telêmetro ultra-sônica. Eles funcionam de maneira similar e atingir praticamente a mesma coisa, mas é importante escolher o sensor certa para o ambiente em que está.

Um sensor de proximidade infravermelho tem uma fonte de luz e um sensor. A fonte de luz refletida luz infravermelha fora objetos e volta para o sensor, e o tempo que leva a luz para retornar é medida para indicar o quão longe um objeto é.

Um telémetro de ultra-sons dispara para fora ondas de som de alta frequência e ouve um eco quando atingem uma superfície sólida. Medindo o tempo que leva um sinal para saltar para trás, o telêmetro ultra-som pode determinar a distância percorrida.

sensores de proximidade infravermelhos não são tão precisos e têm um alcance muito menor do que Telémetros de ultra-som.

Considere o seguinte durante o planejamento:

Video: Video Aula Arduino -- Sensor Ultrasônico HC-SR04 medir distancia Lecture measure distance

  • Complexidade: Ambos os sensores são projetados para ser extremamente fácil de integrar com projetos Arduino. No mundo real, eles são usados ​​para aplicações de eletrônicos similares, tais como medidores de proximidade na parte de trás de carros que apitam quando você se aproxima do meio-fio. Novamente, o principal complexidade está abrigando-los eficazmente.

    sensores de proximidade de infravermelhos, tais como aqueles feitos por Forma têm orifícios dos parafusos úteis sobre o lado de fora do corpo do sensor. Maxbotix faz Telémetros de ultra-som que não têm estas montagens, mas a sua forma cilíndrica torna simples de montar em uma superfície através da perfuração de um buraco.

  • Custo: sensores de proximidade infravermelhos custar cerca de $ 15 (£ 10) e tem uma gama de até cerca de 59 polegadas ou menos. Ultra-som Telémetros de ter uma gama muito maior possível e precisão, mas igualmente um grande preço, custando entre US $ 27 (£ 18) para um sensor que pode ler até 254 polegadas (645 cm) e US $ 100 (£ 65) para um mais resistente às intempéries modelo que pode ler até 301 polegadas (765 cm).

  • Onde: Uma aplicação comum para estes sensores está a monitorizar a presença de uma pessoa ou de um objecto num espaço particular, especialmente quando uma almofada de pressão seria muito óbvio ou fácil de evitar, ou, quando um sensor de PIR mediria também amplamente. Usando um sensor de proximidade permite que você saiba onde alguém está em uma linha reta desde que o sensor, tornando-se uma ferramenta muito útil.

sensores de proximidade IR estão bem em ambientes escuros, mas executar terrivelmente sob luz solar direta. O MaxBotix Ultrasonic Range Finder é um dos sensores mais confiáveis. Ao usar Telémetros de ultra-som, você também pode escolher como largas ou estreitas um feixe quiser. Um sensor grande, em forma de lágrima é perfeito para a detecção de objectos de grandes dimensões que se deslocam numa direcção geral, enquanto vigas estreitas são excelentes para a medição precisão.

Neste exemplo, você aprende como medir distâncias precisas usando um MaxBotix LV-EZ0. O EZ0, EZ1, EZ2, EZ3 e EZ4 todos funcionam da mesma maneira, mas cada um tem um feixe ligeiramente mais estreito, para escolher o mais adequado para seu projeto.

O telêmetro precisa de algum conjunto menor. Para usar o telêmetro no seu circuito, você nem precisa de solda no cabeçalho pinos para usá-lo em uma placa de ensaio, ou de solda em comprimentos de fio.



Você tem três maneiras de conectar o telêmetro: usando analógico, largura de pulso, ou comunicação serial. Neste exemplo, você aprende como medir a largura de pulso e convertê-lo em distância. A saída analógica pode ser lido diretamente em seus pinos de entrada analógica, mas fornecem resultados menos precisos do que a largura de pulso. Este exemplo não abrange a comunicação serial.

Você precisa:

  • Um Arduino Uno

  • Um localizador LV-EZ0 Ultrasonic Gama

  • fios salto

Completar o circuito dos diagramas de layout e de circuito. As conexões para o telêmetro estão claramente marcados na parte inferior do PCB. As conexões 5V e GND fornecer energia para o sensor e deve ser conectado às fontes de 5V e GND em seu Arduino.

A ligação PW é o sinal de largura de pulso que será lido pelo pino 7 no seu Arduino. Certifique-se de que o seu sensor de distância é afixada em algum tipo de base de apontado na direção que você deseja medir.

Video: Módulos para Arduino - Vídeo 05 - Sensor de Distância Ultrassônico

Você pode encontrar o código MaxSonar por Bruce Allen no playground Arduino, junto com algumas notas e funções adicionais. Criar um novo esboço, copie ou digite o código para ele, e guardá-lo com um nome memorável, como myMaxSonar.

// Sinta-se livre para usar este código. // Por favor, seja respeitoso, reconhecendo o autor no código se você usar ou modificá-lo. // Autor: Bruce Allen // data: pin 23/07/09 // Digital 7 para leitura na largura de pulso do dispositivo MaxSonar. // Esta variável é uma constante, porque o pino não vai mudar ao longo da execução deste código.const int pwPin = 7- // variáveis ​​necessários para armazenar valoreslongo pulso, polegadas, cm-vazio setup () {// Isso abre uma conexão serial para atirar os resultados de volta para o PC consoleSerial.begin (9600) -} void loop () {pinMode (pwPin, ENTRADA) - // Usado para ler no impulso que está a ser enviada pela representação MaxSonar device.//Pulse Largura com um factor de escala de 147 nós por Inch.pulse = pulseIn(PwPin, ALTO) - // 147uS por inchinches = pulso / 147 - // mudança polegadas a centimetrescm = polegadas * 2,54-Serial.print (polegadas) -Serial.print ("dentro, ") -Serial.print (cm) -Serial.print ("cm") -Serial.println () -demora(500) -}

Pressione o botão Compilar para verificar o seu código. O compilador destaca quaisquer erros gramaticais, transformando-vermelho quando são descobertos. Se o esboço compila corretamente, clique em Upload para enviar o desenho para sua placa. Quando isso for feito upload, abra o monitor serial e você deve ver a distância medida em polegadas e centímetros. Se o valor é flutuante, tente usar um objeto com uma superfície maior.

Este esboço permite medir com precisão a distância em linha reta. Testar isso com uma fita métrica e fazer ajustes para o código se você encontrar discrepâncias.


Publicações relacionadas