You are on page 1of 22

Rob seguidor de linha com sensor de coliso

Este projeto bem simples, de baixo custo e pode ser aproveitado na


OBR. Neste tutorial (passo a passo) ensino a montar um rob que
consegue seguir uma linha (clara ou escura) e tambm detectar e
desviar de obstculos.

O projeto baseado no Arduno, tem como entrada 3 sensores (1 chave


fim de curso e 2 LDRs) e como sada o controle de 2 motores DC (3 a
6V) usando o CI L293 D (ponte H). Todos estes componentes so
comuns e de baixo custo.
Pr requisitos:

Conhecimentos
bsicos
em

Saber
usar
um
multmetro
e
um
ferro

Conhecimentos
bsicos
em
Conhecimentos bsicos em lgica de programao

eletrnica
de
solda
Arduno

*** Voc encontra neste blog e tambm no meu canal


do YouTube vdeo aulas, cursos e todo contedo necessrio para
adquirir a base necessria para este projeto.

Lista de material:
Mecnica:
Podemos usar chassis de baixo custo (tamiya, zumo, magiciam, etc)
ou aproveitar peas de brinquedos. O importante que o rob tenha
um bom torque (fora) e baixa velocidade, usando pequenos motores
DC de 3 a 6V.

Eletrnica:
1
Arduno
UNO
1
suporte
2
Leds
5mm

(ou
para
auto

verso
4
brilho

compatvel)
pilhas
branco

1
Led
5mm
auto
brilho
vermelho
1
chave
fim
de
curso
2
LDRs
pequenos
3
resistores
10
K
(marrom,
preto
e
laranja)
2
resistores
100
ohm
(
1
CI
L293
D
(ponte
H)
1
mini
protoboard
jumpers (para ligaes entre o Arduno e a mini protoboard)
Pista:
2 chapas de madeira MDF branca (90x90cm)

Montagem do rob:
Passo 1: Montagem do chassi e fixao das peas
Montar a caixa de reduo e os motores (aproveite para soldar os
fios
que
iro
ser
ligados
na
mini
protoboard)
Montar o chassi e as esteiras/rodas conforme instrues do
fabricante e sua criatividade. Dica: Ligar os motores diretamente no
suporte
de
pilhas
e
testar
todo
o
conjunto.

Fixar
o
suporte
de
pilhas
e
a
bateria

Fixar
o
Arduno
e
a
mini
protoboard
Deixar um espao reservado no chassi para a montagem do sensor
de coliso (chave fim de curso) e os sensores de linha (LDRs)
ATENO: Ao montar o seu rob, tenha em mente o objetivo do
projeto, pensando sempre em montar o rob de forma robusta e
caprichando ao mximo nos detalhes. No use cola quente e nem
faa gambiarras. Observe o chassi e planeje a fixao das partes de
forma que a troca das pilhas, da bateria e a manuteno do rob
sejam simples. Equilibre tambm o peso e lembre-se que o rob ir
subir rampas e passar sobre pequenos detritos alm de desviar de
obstculos. Pense tambm no designer. No avance para o prximo
passo sem ter certeza que este est 100% concludo.
As fotos abaixo ilustram um exemplo de montagem do rob,
percebam os detalhes da fixao das partes (Arduino, protoboard,
suporte das pilhas, etc) e a robustez do conjunto.

Passo 2: Montagem da ponte H


As sadas digitais do Arduno no podem ser ligadas diretamente aos
motores, sob o risco de queimar a placa. Para fazer o controle dos
motores utilizaremos a ponte H que pode ser montada usando
transstores ou o CI L293 D. Ateno aos limites de corrente deste CI,
lembre-se este projeto se destina ao controle de pequenos motores
DC (3 a 6V). O diagrama abaixo exibe a ligao correta da ponte H no

Arduno. A alimentao dos motores independente e ateno: Se


utilizar motores de 3V use o suporte para 3 pilhas (4,5V) A ponte H
retm aproximadamente 0,7V fazendo com que os motores trabalhem
dentro da tolerncia. As ilustraes a seguir mostram os detalhes da
montagem da ponte H:

Observao: possvel eliminar a bateria de 9V, alimentando a


placa Arduino atravs do suporte de 4 pilhas. Para isso ligue um fio na
entrada Vin da placa arduino junto com o fio vermelho do suporte de
4 pilhas.
Lgica
da
ponte
H:
Para entender a lgica, podemos fazer uma analogia com a ligao do
motor diretamente a pilha, conforme ilustrao abaixo:

Estando um motor ligado em cada roda ou esteira, seguimos o


seguinte raciocnio:
Para ficar parado os dois motores devem permanecer desligados
Para andar para frente os dois motores devem ser acionados no
mesmo
sentido
Para andar para traz os dois motores devem ser acionados no
sentido
inverso
Para fazer uma curva suave, acionamos apenas um motor deixando
o
outro
desligado
Para fazer uma curva radical giro em torno do prprio eixo,
acionamos os motores em sentidos contrrios
O aluno dever ensinar o rob o que frente, traz, esquerda,
direita, giro-esquerda, giro-direita e parado. O cdigo abaixo apenas
serve de exemplo para testes com a ponte H. No passe adiante sem
ter ensinado o rob a se movimentar.
Dica: Uma outra tcnica que pode ser usada para fazer uma curva
perfeita reduzir a velocidade de um motor em funo do outro. Voc
pode controlar a velocidade (PWM), substituindo:

digitalWrite(motor_esq_B, HIGH);
valor); // valor entre 100 e 255.

por:

analogWrite(motor_esqr_B,

Obs: Consulte a documentao do Arduno para maiores informaes.


Abaixo o cdigo de exemplo, faa as adaptaes necessrias e
desenvolva os outros movimentos, chamando em loop a funo
desejada. No exemplo frente.
//
Variveis
int
motor_esq_A
int
motor_esq_B
int
motor_dir_A
int motor_dir_B = 10;
void
{
//
pinMode(motor_esq_A,
pinMode(motor_esq_B,
(motor_dir_A,
pinMode(motor_dir_B,
}

dos
=
=
=

Motores
6;
11;
9;

setup()
Setup

void
{
frente();
}
void
{
digitalWrite(motor_esq_A,
digitalWrite(motor_esq_B,
digitalWrite(motor_dir_A,
digitalWrite(motor_dir_B,
}
void
{
digitalWrite(motor_esq_A,
digitalWrite(motor_esq_B,
digitalWrite(motor_dir_A,
digitalWrite(motor_dir_B,
}

Passo 3: Montagem do sensor de coliso

motores
OUTPUT);
OUTPUT);
OUTPUT);
OUTPUT);

loop()

parar()
LOW);
LOW);
LOW);
LOW);
frente()
LOW);
HIGH);
LOW);
HIGH);

Para montar o sensor de coliso utilizaremos uma chave de fim de


curso, que possui um pequeno mecanismo que quando pressionado
faz o contato de dois pontos como se fosse um interruptor de presso.
As ilustraes abaixo mostram os detalhes da montagem do sensor
de coliso. Aproveite tambm para ligar o LED vermelho no pino 13
do Arduno. Este LED ser usado para sinalizar a identificao de
objetos.

Lgica
do
sensor
de
coliso:
O Arduno faz a leitura desta chave da seguinte forma:
Sensor no pressionado (chave desligada) > LOW (posio padro)
Sensor
pressionado
(chave
ligada)
>
HIGH
Existe um exemplo na IDE do Arduno para teste deste sensor,
carregue o exemplo -> digital -> button, conforme ilustrao abaixo:

Assim que o sensor for testado com este exemplo (pressionando o


sensor o LED acende), junte este cdigo com o cdigo anterior de
controle dos motores e ensine o rob a desviar de obstculos, ou seja
ao identificar um obstculo (objeto), use os movimentos que ensinou

ao rob para contornar este objeto. No v para o passo 4 sem ter


ensinado o rob a desviar de obstculos.

Passo 4: Montagem dos sensores de linha


Para identificar a linha iremos utilizar 2 LDRs. O LDR um resistor que
varia sua resistncia em funo da luz. um componente muito
verstil, podendo inclusive ser usado para identificar cores. Para
minimizar a interferncia de luz externa, iremos adicionar 2 LEDs
brancos de auto brilho. As ilustraes abaixo explicam como feita a
montagem destes sensores. Ateno aos detalhes de ligao dos
jumpers na mini protoboard. Observe que iremos ligar 2 sensores, um
no pino A0 e outro no pino A1. Preste muita ateno na mini
protoboard, apenas adicionando os componentes e jumpers dos
sensores de linha.

Lgica do sensor LDR:


O Arduno faz a leitura analgica deste sensor. Os valores variam e a
calibrao dos sensores deve ser feita diretamente na linha da pista.
Anote os valores linha, fora da linha, cor, etc. Quanto maior a
variao entre claro e escuro, mais preciso o sensor ser. A dica
acondicionar o LDR e o LED num tubo ou caixa de forma que a luz
externa interfira o mnimo possvel quando a superfcie refletir a luz
que o LED emite. A IDE do Arduno tem um exemplo para teste dos
sensores. Substitua no cdigo A0 por A1 para testar o segundo
sensor.

Como dito no passo anterior, junte tudo num nico cdigo, lendo os
sensores e tomando decises (movimento dos motores). Faa uma
anlise da lgica abaixo e acrescente uma soluo para o caso dos 2
sensores encontrarem a faixa (linha).

Consideraes
finais:
O objetivo deste projeto ajudar o iniciante em robtica a montar um
rob de baixo custo que possa ser aproveitado em vrios projetos,
inclusive na OBR (rescue junior). Com estudo, criatividade,
adaptaes e muito raciocnio lgico tenho certeza que o resultado ir
surpreender. Sucesso todos e no esqueam de dar um nome ao
rob.
FacebookTwitterGoogle+Partilhar