arduino-based line follower robot

Upload: sergio-vilches

Post on 10-Apr-2018

224 views

Category:

Documents


0 download

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.