Tutorial: como utilizar o Breakout de Sensor de Linha com Arduino

Adquira estes componentes na Loja do Lab de Garagem

Neste tutorial vamos mostrar como utilizar o breakout sensor de linha com Arduino. O sensor de linha é utilizado comumente em robôs seguidores de linha ou qualquer aplicação que necessite identificar maior ou menor reflexão de luz.

Este sensor funciona com saída digital, utilizando descarga do capacitor para a reflexão do led para o fototransistor. Quanto mais rápido o capacitor descarrega, maior será a refletividade da superfície. Este breakout tem a versão digital (que será demonstrada aqui) e a versão analógica.

Aqui podemos ver o esquemático do breakout:

O capacitor de 10nF ao ser descarregado, faz com que haja maior ou menor refletividade no fototransistor.

Para ver o datasheet do sensor QRE1113, clique aqui!

Para poder adquirir os dados do sensor faça a seguinte ligação:

Agora, abra a IDE do Arduino e cole a seguinte programação:

int SensorPin=2;
int Sensorval=LOW;

void setup()
{

pinMode(13,OUTPUT);
Serial.begin(9600);
}

void loop()
{


pinMode(2,OUTPUT);       // Primeiro é necessário configurar o pino do Arduino (digital 2) que conecta o Vout do

digitalWrite(2,HIGH);        //breakout como saída para descarregar o capacitor, colocando o pino digital 2 do Arduino

delayMicroseconds(10);    // em alto (HIGH) e depois uma espera de 10 microssegundos
pinMode(2,INPUT);          // E por fim configura o pino do Arduino (digital 2) como entrada
long time = micros();

// Enquanto o tempo for menor que 3000 microssegundos e o pino do sensor for alto (HIGH), então o valor do sensor

// será a diferença entre o tempo atual e o tempo anterior.

while (digitalRead(SensorPin) == HIGH && micros() - time < 3000);
int diff = micros() - time;
Sensorval=diff;
if(Serial.available()>0);
{
Serial.println(Sensorval);
}
delay(500);
}

Pronto!! Esperamos que tenham gostado do tutorial! Caso tenham dúvidas sobre o sensor de linha, postem aqui mesmo no blog! Se tiverem sugestões, vocês podem postar aqui!Para ver nossos outros tutoriais e projetos aberto desenvolvidos por garagistas e pela equipe LdG, cliquem aqui e aqui, respectivamente!

Referências:

http://www.sparkfun.com/products/9454

http://www.sparkfun.com/datasheets/Robotics/QRE1113-Digital-Breakou...

http://bildr.org/2011/06/qre1113-arduino/

http://www.sparkfun.com/datasheets/Robotics/QR_QRE1113.GR.pdf

Exibições: 8181

Comentar

Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!

Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)

Comentário de Gustavo Gonçalves Pires em 29 abril 2014 às 12:34

Somente com esta programação o robô segue a linha? Porque é iniciada a serial? Não teria um video explicativo para isso?

Obrigado

Comentário de Raul Pinto Ferreira Neves em 22 setembro 2013 às 18:33

Como utilizar esse sensores no Garagino Rev 1 ? 

Estou Fazendo um Robô, mais parece que os sensores não leem a linha. 

Comentário de William Barreto em 16 outubro 2012 às 16:25

quebrou um galho ... gostei :)

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço