arduino-based line follower robot
TRANSCRIPT
-
8/8/2019 Arduino-Based Line follower robot
1/4
-
8/8/2019 Arduino-Based Line follower robot
2/4
2
2
mejorar almximo estamecnica, as reutilizar
componentesque tuvisemosencasaparaevitar
uncosteelevadodelrobot.
2.Estructura
mecnica
del
robot
Comohemosdicho, lamecnicadel robot esun
chasis de un coche Iwaver 02 escala 1:28 que
utiliza propulsin trasera, incluye diferencial, y
cuya direccin est controlada mediante un
sistema similar al utilizado en automocin.Tras
quitar toda laelectrnicaoriginal, se lemodific
elsistemadedireccin.
Originalmente, el coche tena un sistema de
direccin activado por un pequeo motor con
reductorayun
potencimetro
para
determinar
su
posicin. Debido a la poca fiabilidad de este
mecanismo, laprimeramejora fuecambiarlopor
un microservo de medidas similares (TurnigyTG9e).Adems, este cambiohaceque elmtodo
de control a nivel de programacin sea ms
sencillo.
1. Chasis del coche RC utilizado
3.SistemasensorialLatareadedeteccinde lneas la llevanacabo5
sensores de reflexin por infrarrojos QRD1114,
colocados de manera simtrica en una PCB
diseada y creada por el equipo. Los sensores
envan
informacin
analgica
al
chip
para
su
posteriorinterpretacin.
La placa est diseada para poder cambiar la
configuracindelossensores.Hay3sensoresfijos
(en el centro) para detectar la lnea en los
trayectosrectos,yotrosdossensoreslateralescon
posiciones variables, gracias a un conjunto de 8
zcalosdondepuedencolocarse.
2. Placa de sensores
4.SistemadetraccinEl robot emplea unmotorDC de 6V. Se puede
hallar ms informacin sobre el motor en
www.iwaver.com/iwaverparts02ogi1.html
Lavelocidaddelmotor secontrolara travsde
PulseWidthModulation (PWM), que consiste envariarelsuministrodecorrientealmotormuchas
veces por segundo, consiguiendo as un valor
intermedio que puede variar entre la velocidad
mnima(parado)ylavelocidadmxima.
5.Electrnica
3. Placa principal con microcontrolador
La electrnica de este robot ha sido diseada y
creada desde cero por losmiembros del grupo.
Como ya se ha dicho, el procesador es un
Atmega328 programado con Arduino. La
informacin
analgica
enviada
por
los
sensores
es
interpretada por el chip, que a su vez enva los
impulsos necesarios al motor y al servo para
-
8/8/2019 Arduino-Based Line follower robot
3/4
3
3
controlarlavelocidadyladireccindelrobot. La
placa est diseada para hacer posible futuras
modificaciones y mejoras. Por ejemplo, se han
instalado dos LEDs, uno para indicar que el
circuitoestconectadoa labatera,yotroquees
programable,parapodercambiar su significado.
Tambinse
han
aadido
extensiones
de
algunos
pinesdelchipquenoestnenuso,para facilitar
la aadidura de otros componentes si fuese
necesario.Ambas PCBs (la principal y la de los
sensores) fueron diseadas con el software
gratuitoEagleCAD.
4. Diseo de la placa principal con Eagle CAD
6.SistemadeAlimentacinElrobot llevacuatropilasAAA (1.5Vcadauna)
conectadas en serie para formar unabatera de
alimentacin de 6V. El motor, el servo y los
sensores estn conectados directamente a esta
fuente.Sinembargo,comoelprocesadoroperaa
5V, no se puede conectar directamente. Se ha
decidido utilizar un transformadorDC/DC, que
convierte2.5
V
(conectando
dos
pilas)
en
5V.
De
esta manera, hay dos pilas que, adems de
contribuir a la batera principal, tambin estn
alimentandoelprocesadorylosdosLEDs.
7.ProgramacinElrobotsesirvedelosclculosdeunprocesador
avr,idnticoalosempleadosenArduino.Parala
programacin del mismo hemos empleado el
softwareproporcionado
por
la
comunidad
de
Arduino, que consiste en un IDE de
programacin. El procesador se programa enC,
sin embargo, slo se tienen que definir dos
funciones para poder hacer funcionar el
programa: setup que corre una vez al inicio (se
calibran los sensores y se inicializan las
configuraciones) y loop, que se ejecuta
repetidamente.
8.LaorganizacindeltrabajodelequipoEl trabajo en equipo se ha visto limitadopor la
distanciaentrelosdiferentesmiembrosdelgrupo.
Porello,lacoordinacindetrabajosellevacabo
pormediodecorreoelectrnicoyunaWikisobre
el robot, a travs de la cual recopilbamos
informacinyopiniones.
En lasltimas fasesdeldesarrollo,optamospor
hacerla
mayor
parte
del
trabajo
restante
en
grupo,paraaspodercolaborartodoseneldiseo
creativo y bsqueda de soluciones a los
problemas.
Las fases que se han seguido han sido son las
siguientes:
Ingeniera inversa sobre el coche RC paraaveriguarlosparmetrosdefuncionamiento.
Bsqueda de materiales y recursos paraadaptarloanuestrasnecesidades.
Creacindeunprototipoparapoderprobarelectrnica/mecnica yprobar condiferentes
ajustes.
Creacindelaelectrnicafinal. Desarrollodelcdigo. Mejoradelcdigo.
5. Fase de prototipado
-
8/8/2019 Arduino-Based Line follower robot
4/4
4
4
9.ProblemasencontradosyposiblesmejorasLamayordificultadconlaquehemostenidoque
trataresconelpocoagarredelosneumticosdel
coche RC con el suelo. Hasta ahora, no hemos
encontradoningunasolucinaesteproblema,ni
pareceque
haya
ninguna,
ya
que
estos
coches
estndiseadosparacorrersobrepistasdelija,y
nosuperficieslisas.
Porotraparte,el sistemadealimentacinqueel
cochetraedeserie(4pilasAAA)resultaserpoco
efectivo. Una alimentacin basada en bateras
LiPohabratenidomejorresultado.
10.ConclusionesEste
trabajo
nos
ha
servido,
ante
todo,
para
ver
quelascosasnosontnfcilescomoparece.Algo
tan simple como seguir una lnea puede llevar
muchosquebraderosdecabeza,algunosbastante
previsibles (el algoritmo de control), pero otros
inesperados (bajadasde tensin, ruidodebidoal
motor,falloselctricosymecnicos,etc).
Lobueno: que cada uno de estos obstculos te
ensea algo diferente, y te ayuda a no volver a
cometerlosmismoserrores.
Por otra parte hay que mencionar que, an
habiendomomentos
frustrantes,
el
desarrollo
del
robothasidobastantedivertido,almismotiempo
quedesafiante.