Projetos

Kit Arduino Robótica — Robô Seguidor de Linha

Eletrogate 20 de fevereiro de 2024

Introdução

Robôs seguidores de linha são máquinas capazes de percorrer um determinado trajeto por marcações no chão. Isso é possível graças à presença de sensores que identificam as diferenças de cor ao longo do percurso e informam ao microcontrolador esses dados recolhidos, permitindo que, em conjunto com a lógica de programação ali presente, o robô tome decisões e tenha “conhecimento” do caminho que deve seguir.

Este projeto usa componentes do Kit Arduino Robótica e é abordado, também, na https://conteudo.eletrogate.com/apostila-arduino-robotica.


Montagem do Robô

Passo 1: posicione os 4 pilares de suporte para a roda boba conforme a imagem abaixo:

Passo 2: Parafuse-os no chassi e, em seguida, parafuse a roda boba sobre eles.

Passo 3: Solde ou amarre os fios nos motores, conforme a imagem abaixo:

Passo 4: Posicione os suportes do motor e, em seguida, parafuse os mesmos, como ilustrado abaixo:

Passo 5: O próximo passo é fixar o suporte de pilhas e o interruptor no chassi. Veja a disposição dos mesmos a seguir:

Passo 6: Com o suporte e o interruptor posicionados, você deverá adicionar o interruptor em série com o suporte de pilhas. Para isso, basta cortar o fio vermelho (positivo) e soldá-lo no interruptor, conforme ilustrado abaixo:

Passo 7: Terminado isso, a parte física do seu chassi estará montada, restando agora posicionar os demais componentes eletrônicos ao longo do chassi. Nossa disposição ficou da seguinte forma:

Passo 8: Após, com os parafusos e porcas inclusos no kit, fixe os módulos seguidores de linha na parte frontal do chassi, como nas imagens que seguem.

Passo 9: Por fim, conecte os componentes como no diagrama abaixo.

O nosso, ficou assim:


Código

const int8_t mDirF = 5, mDirT = 6, // declara o pino
 mEsqF = 10, mEsqT = 11, // associado a
 sDir = A0, sEsq = A1; // cada sinal
void setup() {
 pinMode(sDir, INPUT); // configura os pinos
 pinMode(sEsq, INPUT); // como entradas
}
void loop() {
 static const uint8_t vel = 100; // altere a velocidade conforme sua pista
                                 // curvas fechadas exigem velocidades menores
 analogWrite(mEsqF, vel * !digitalRead(sEsq)); // o motor esquerdo avança enquanto o
                                               // sensor esquerdo não detectar uma linha
 analogWrite(mEsqT, vel * digitalRead(sEsq));  // quando detecta, dá ré
 analogWrite(mDirF, vel * !digitalRead(sDir)); // o motor direito avança enquanto o
                                               // sensor direito não detectar uma linha
 analogWrite(mDirT, vel * digitalRead(sDir));  // quando detecta, dá ré
}

Sobre o Autor


Eduardo Henrique

Formado técnico em mecatrônica no CEFET-MG, estuda Engenharia de Controle e Automação na UFMG.


Eletrogate

20 de fevereiro de 2024

A Eletrogate é uma loja virtual de componentes eletrônicos do Brasil e possui diversos produtos relacionados à Arduino, Automação, Robótica e Eletrônica em geral.

Conheça a Metodologia Eletrogate e Lecione um Curso de Robótica nas Escolas da sua Região!

Eletrogate Robô

Cadastre-se e fique por
dentro de novidades!