carrinho seguidor de trilha
Publicado em 24 de maio de 2012 por Angelo
Então pessoal,já tem semanas que to prometendo coloca esse projeto e nada…bom..aproveitando o feriado terminei o nosso robô seguidor de linha com oque eu tinha disponivel aqui,improvisei muita coisa,então se vc tem alergia de gambiarra,recomendo que não continue,hehehe.
Video do projeto em funcionamento:
Luz do LED infravermelho(visível somente na câmera)
Em alguns tópicos passados eu tinha falado do Arduino,então vamos utiliza-los para uma aplicação simples usando sensores de luz infravermelha.
Os funcionamentos básicos são os seguintes: na frente do veiculo temos dois led’s emissores de luz infravermelha(TIL 32) e dois receptores(TIL 78).O robô segue uma linha branca,enquanto o conjunto óptico estiver sobre esse linha branca,a luz dos emissores vai ser refletida para os receptores e então a placa controladora vai interpretar esse sinal analógico(variação da luz) se esse valor superar um valor ja pré-programado, a placa acionara¡ relés que liberarção a corrente elétrica para os motores.
Lembrando que o fundo no qual o robô estiver movimentando tem que ser escuro,se não ele entenderão que ainda está sobre a faixa branca:
O código(logo abaixo) foi escrito em C,se quiser aproveita-lo basta copiar no programa Arduino 1.0 e envia para a placa.
Código:
// Sucata.Tec – Projeto 003: Carrinho Arduino Seguidor de Linha
// Acessem: sucatapontotec.netai.net int analog1Pin = 0; // Pino de entrada analógica int analog2Pin = 1; //… int motor1Pin = 12; // Pino de saida digital int motor2Pin = 13; //… void setup(){ pinMode(motor1Pin, OUTPUT); // Pino definido como saida pinMode(motor2Pin, OUTPUT); // … digitalWrite(motor1Pin, LOW); // Pino inciado em nivel baixo digitalWrite(motor2Pin, LOW); //…
}
void loop(){ if(analogRead(analog1Pin)>600) // Se >600 motor fica em nivel alto digitalWrite(motor1Pin, HIGH); else digitalWrite(motor1Pin, LOW);// Caso contrário em