Robotica. Red Users

292
APRENDA A ARMAR ROBOTS DESDE CERO ¡C O N V I E R T A  S U P A S I Ó N E N  R E A L I D A D ! EL MONTAJE DE LA PIEZAS Las partes que componen un robot Los pasos para ensamblarlas Gonzalo Zabala LA INTELIGENCIA Trabajar con microcontroladores Lenguajes de programación ROBOTS AUTÓNOMOS Utilización de sensores Mecanismos para generar movimiento Guía Teórica y Práctica

description

Libro sobre robotica. red users

Transcript of Robotica. Red Users

  • APRENDA A ARMAR ROBOTS DESDE CERO

    CONVIERTA SUPASINEN REALIDAD!

    EL MONTAJE DE LA PIEZAS Las partes que componen un robot Los pasos para ensamblarlas

    Gonzalo Zabala

    LA INTELIGENCIA Trabajar con microcontroladores Lenguajes de programacin

    ROBOTS AUTNOMOS Utilizacin de sensores Mecanismos para generar movimiento

    Gua Terica y PrcticaRO

    BOTICA

    Gu

    a Te

    ric

    a y

    Prc

    tica

    CONTENIDO

    1 | INTRODUCCINQu es un robot? Cundo conviviremos con ellos?Tendremos diversos tipos de robots entre nosotros?Lavarn los platos? En este primer captulointentaremos responder stas y otras preguntas.

    2 | COMPONENTES DEL ROBOTTipos de procesamiento | Cmo le damos movimientoa nuestro robot? | Cmo captamos el mundo que nosrodea? | Materiales para la mecnica

    3 | LA INTELIGENCIA DEL ROBOTComponentes de nuestro robot | Objetivos delcontrolador | Conceptos fundamentales de un PIC |Listado de componentes del controlador | Descripcindel circuito | Placa experimental | El programador

    4 | COMIDA DE ROBOTSLa fuente de energia | Tipos de batera | Cargadores |Caractersticas de las celdas de las bateras | Voltaje |Capacidad | Densidad | Curva de descarga | Resistencia| Capacidad de recarga | Costo | Efecto memoria

    5 | HABLAR CON NUESTRO ROBOTLenguajes de programacin para robots | PicBasic Pro |Compilador CCS C | MikroBasic

    6 | RECORRER EL MUNDOEl movimiento de los robots | Motor de corrientecontinua | Motor paso a paso | Servos

    7 | ADAPTACIN AL ENTORNOSensores analgicos y digitales | Tipos y caractersticas

    8 | EL CUERPO DEL ROBOTCaractersticas de un robot autnomo | Robots areos |Robots subacuticos | Robots terrestres | Sistemas conruedas | El montaje de los elementos | Mecanismos detransmisin y reduccin | Cinemtica | Odometra

    9 | SALIR AL RUEDOPresentarnos a competir | Problemas frecuentes |Pruebas tradicionales

    10 | FTBOL DE ROBOTSArquitectura y navegacin de los robots | Sensado ydeteccin del ambiente | Comportamiento colaborativo| Ligas nacionales e internacionales

    APNDICE | LA ELECTRNICA

    En este sitio encontrar una gran variedad de recursos y software relacionado,que le servirn como complemento al contenido del libro.Adems, tendr la posibilidad de estar en contacto con los editores, y de parti-cipar del foro de lectores, en donde podr intercambiar opiniones y experiencias.

    La ROBTICA ya no es parte de un futuro

    lejano sino de nuestro presente tangible.

    Y este manual es, sin dudas, la mejor forma de acceder

    a ella. En su interior encontraremos un recorrido terico

    y prctico por cada uno de los conceptos fundamentales.

    Se explican en detalle cules son las partes que componen

    un robot y cada uno de los pasos por seguir para armar-

    lo y programarlo a nuestro gusto. Destinado a entusiastas y aficionados de la cien-

    cia ficcin y las nuevas tecnologas, cada uno de los temas es desarrollado desde

    cero, y con la mayor claridad y profundidad. Su autor, coordinador del campeona-

    to argentino de Ftbol de Robots y miembro del Consejo Latinoamericano de

    RoboCup y Cochair de la FIRA, vuelca en este libro su vasta experiencia.

    This science is no longer part of a distant future, it is a part

    of a very real and concrete present. This manual offers the

    fundamentals to be a member of this new reality through

    practical projects and by learning the theory behind them.

    ROBOTICS

    redusers.com

    APRENDA A ARMAR ROBOTS DESDE CERO

    NIVEL

    EXPERTO

    AVANZADO

    INTERMEDIO

    PRINCIPIANTE

    opcion2.qxp 16/11/2009 12:51 Pgina 1

  • Untitled-3 1Untitled-3 1 06/11/2009 16:10:4306/11/2009 16:10:43

  • Nuestros libros incluyen guas visuales, explicaciones paso a paso, recuadros complementarios, ejercicios, glosarios, atajos de teclado y todos los elementos necesarios para asegurar un aprendizaje exitoso y estar conectado con el mundo de la tecnologa.

    En nuestro sitio puede obtener, en forma gratuita, un captulo de cada uno de nuestros libros:u s e r s h o p . r e d u s e r s . c om

    Gratis!Lalo antes Gratis!

    usershop.redusers.com

    ARGENTINA& (011)4110-8700

    MXICO& (55)5350-3099

    CHILE& (2)810-7400

    ESPAA& (93)635-4120

    o por e-mail a: [email protected]

    Conctese con nosotros!

    Av_Pag01 10/23/07 11:04 PM Page 1

  • TTULO: ROBTICA

    AUTOR: Gonzalo Zabala

    COLECCIN: USERS Express

    FORMATO: 22 x 15,5 cm

    PGINAS: 288

    Copyright MMVII. Es una publicacin de Gradi S.A. Hecho el depsito que marcala ley 11723. Todos los derechos reservados. No se permite la reproduccin parcial ototal, el almacenamiento, el alquiler, la transmisin o la transformacin de este libro,en cualquier forma o por cualquier medio, sea electrnico o mecnico, mediante fo-tocopias, digitalizacin u otros mtodos, sin el permiso previo y escrito del editor. Suinfraccin est penada por las leyes 11723 y 25446. La editorial no asume responsa-bilidad alguna por cualquier consecuencia derivada de la fabricacin, funcionamien-to y/o utilizacin de los servicios y productos que se describen y/o analizan. Todas lasmarcas mencionadas en este libro son propiedad exclusiva de sus respectivos due-os. Impreso en Argentina. Libro de edicin argentina. Primera impresin realizadaen Sevagraf, Costa Rica 5226, Grand Bourg, Malvinas Argentinas, Pcia. de Buenos Ai-res en noviembre de MMIX.

    IISSBBNN 997788--998877--11334477--5566--88

    Zabala, Gonzalo Robtica. - 1a ed. - Banfield - Lomas de Zamora: Gradi, 2007.288 p.; 22 x 16 cm. (Users Express; 29)

    ISBN 978-987-1347-56-8

    1. Informatica. I. TtuloCDD 005.3

    00_robotica.qxp 18/11/2009 10:52 Pgina 2

  • 00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 3

  • PRELIMINARES

    4

    Gonzalo Zabala

    Profesor de Enseanza Primaria (Normal No. 1) y Licencia-do en Ciencias de la Computacin (UBA, Ciencias Exactas),ha conjugado ambas vocaciones en la educacin tecnolgicay el uso de tecnologa para la educacin. Trabaj durante mu-chos aos como docente de diversas ramas de la informtica,y a fines del siglo pasado comenz a usar robots para la en-seanza de programacin. En el ao 2000 cre la Roboliga,Olimpada Argentina de Robtica, que ya lleva siete eventoscon participacin de alumnos y docentes de toda la Argenti-na. En 2004 ingres en el Centro de Investigaciones de la Fa-cultad de Tecnologa Informtica de la Universidad AbiertaInteramericana, donde cre el Grupo de Investigacin deRobtica Autnoma. Fue coordinador de diversos equipos dealumnos que han participado en forma nacional e interna-cional en competencias de robtica, y obtuvieron excelentesresultados en ftbol de robots y pruebas de rescate. Actual-mente, contina en el Centro de Investigaciones y es repre-sentante de Argentina de la RoboCup Junior, director tcni-co y pedaggico del proyecto Lego Education en el pas, co-ordinador del Campeonato Argentino de Ftbol de Robots,miembro del Consejo Latinoamericano de RoboCup y Co-chair de la categora SimuroSot de la FIRA.

    DedicatoriaA Laura y Gastn, porque sus constantes preguntas me ha-cen pensar una y otra vez mi impreciso modelo del universo.A Ignacio Luppi, porque es un mago que logra que susalumnos construyan robots maravillosos de la nada.Y a Marcelo De Vincenzi, porque me abri las puertaspara que continuara mis investigaciones en este maravi-lloso mundo de la robtica. Y porque disfruta de todo es-to ms que cualquiera de nosotros.

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 4

  • Sobre el autor

    5

    Agradecimientos

    Son muchas las personas que entran en juego en la confeccin de un libro,aunque luego aparezca slo una en la tapa. Aqu mencionar a algunas deellas, pero seguramente me olvidar de muchas ms, que espero que meperdonen y me lo recriminen, para no olvidarme la prxima vez.

    Antes que nada, quiero agradecerles a Nstor Balich y a Gonzalo Mon porla colaboracin en los captulos en los que estn mencionados, en especiala Nstor por su aporte del controlador y por todas las dudas que disipcuando probbamos las cosas. Otra herona es Iris, mi compaera del al-ma, que soport abandonos familiares y responsabilidades extras para de-jarme tiempo libre para escribir el libro.

    Un captulo aparte merecen Paula Budris y Diego Spaciuk por aceptar misconstantes incumplimientos, por alentarme cuando me quera bajar deltren y por guiarme en todo este camino.

    Tambin quiero agradecerles a Daro Cardacci y a Carolina Soleil del CAETI(Centro de Investigaciones en Tecnologa Informtica de la UAI), que tambinsoportaron incumplimientos de mi parte para que yo llevara adelante esta tarea.

    Por ltimo, agradezco a todos mis alumnos de estos aos, porque gran parte delo que aprend fue gracias a sus preguntas. Para ellos, mi ms dulce recuerdo.

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 5

  • PRELIMINARES

    6

    Prlogo

    Si Ud. tiene este libro en sus manos, es por alguna o algunas de las siguien-tes razones:a) Ha sido alcanzado por el sueo eterno de la humanidad de crear un ser

    a su imagen y semejanza.b) Desea bajar los costos de produccin de su industria, para darles ms

    horas libres a sus fieles obreros.c) Quiere entender de qu hablan sus hijos o nietos cuando estn reunidos

    en la mesa, y dejarle de temer a ese ser espeluznante que de vez en vezle habla con voz metlica y le solicita un hueso, una pelotita o simple-mente que lo enchufen para recargar sus bateras.

    d) Quiere armar, de una vez por todas, un robot que funcione, que siga lalnea o la pelota, que busque la luz, sin tener que comprar 999 fasccu-los con destino incierto.

    Aunque este libro les ser de utilidad a los tres primeros grupos, segura-mente el que quedar ms conforme es el lector que pertenece al ltimo deellos. Nuestro objetivo es poder describir, paso a paso, la electrnica, lamecnica y la programacin necesarias para poder construir un robot sen-cillo y de bajo costo, que permita realizar tareas simples en forma autno-ma. Para ello, presentaremos todos los aspectos esenciales que conformanla arquitectura de un robot, inclusive ms all de los que necesitaremos pa-ra la construccin de nuestro modelo, de manera tal que el lector puedaperfeccionar su creacin con nuevos sensores, actuadores y procesadores.

    Nuestro punto de partida ser mnimo, pero es necesario cierto conoci-miento bsico (muy bsico) de programacin para poder definir el com-portamiento del robot. Para este fin, hemos elegido un lenguaje tan senci-llo como el Basic, pero dado que no es un libro de programacin, le dedi-caremos pocos captulos a este aspecto. El uso de estructuras de decisin,de ciclos de repeticin y el manejo de variables sencillas es el requerimien-to para poder comprender los algoritmos presentados sin problemas.

    Tambin es bueno tener una base de electrnica, aunque no es imprescindi-ble. De hecho, si no tiene ningn conocimiento en este campo, probable-

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 6

  • Prlogo

    7

    mente le parezca mgico el funcionamiento de ciertos aspectos del robot. Sinembargo, como seguiremos la descripcin de la construccin de forma deta-llada, podr construirlo sin saber el por qu profundo de esa construccin.

    Con respecto a la mecnica, nuestro robot es tan sencillo que no necesita-mos ningn conocimiento vinculado a ese tema. Si en algn momento nosencontramos en una lucha de sumo de robots, con seguridad los que se-pan ms de mecnica nos vencern pero, para seguir una lnea, basta conubicar las ruedas en forma razonable.

    Bienvenido entonces, estimado lector, a esta nueva aventura. Es nuestroprofundo deseo que al finalizar estas pginas, tenga dando vueltas por sucasa un pequeo robot independiente y que nos podamos encontrar en al-guna de las tantas competencias de robtica que existen en nuestro pas (oen el planeta!). Y por qu no, que un da, al golearnos con su equipo derobots en un partido de cinco contra cinco, nos honre al contarnos que suprimera experiencia fue con esta humilde obra. Le podemos asegurar queese da, a pesar de la derrota, tocaremos el cielo con las manos!

    Lic. Gonzalo Zabala y colaboradores.

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 7

  • PRELIMINARES

    8

    El libro de un vistazo

    La robtica ha llegado a nuestros hogares y trabajos. Antes de que nos inviten a dejar

    nuestro living o escritorio, proponemos crear nuestro primer robot para entender pro-

    fundamente los conceptos que entran en juego. En los siguientes captulos estudiare-

    mos paso a paso los elementos necesarios para llevar a cabo esta tarea con xito.

    Captulo 1

    CONCEPTOS FUNDAMENTALES

    Presentaremos los conceptos fundamenta-

    les de la robtica en general y de los robots

    autnomos en particular. Conoceremos los

    primeros intentos de la historia, veremos la

    arquitectura bsica de un robot e intoduci-

    remos la terminologa que utilizaremos.

    Captulo 2

    COMPONENTES DEL ROBOT

    Antes del desarrollo, es fundamental tener

    una visin de los objetivos y los alcances de

    nuestro robot, y de las etapas y dificultades

    que encontraremos. Aqu presentaremos el

    proyecto y prepararemos los implementos

    necesarios. Introduciremos el microcontro-

    lador, los motores, los sensores y los mate-

    riales para construir la carcasa.

    Captulo 3

    LA INTELIGENCIA DEL ROBOT

    Empezamos la construccin de nuestro ro-

    bot por la parte ms delicada: el controla-

    dor, que es el director de todo lo que realiza

    nuestro robot. Desarrollaremos los aspec-

    tos para construirlo desde cero y veremos

    cmo construir un programador para incor-

    porarle programas al microcontrolador.

    Captulo 4

    COMIDA DE ROBOTS

    ste es uno de los problemas fundamenta-

    les de la robtica autnoma. Estudiaremos

    las ventajas y desventajas de los diversos ti-

    pos de bateras, y seleccionaremos la que

    nos convenga para nuestro proyecto.

    Captulo 5

    HABLAR CON NUESTRO ROBOT

    Comenzaremos a programar el controlador

    con un lenguaje tan sencillo como el Basic.

    Veremos las similitudes y diferencias con la

    programacin tradicional y otros lenguajes.

    Captulo 6

    RECORRER EL MUNDO

    Dentro de la robtica autnoma, uno de los

    objetivos esenciales es trasladarse en el

    ambiente donde se desarrolla la tarea. Para

    ello, tenemos diversos sistemas de locomo-

    cin que difieren en costo, eficiencia, ta-

    mao, consumo y otras variables.

    Captulo 7

    SENSAR EL MUNDO

    Tenemos que ver qu pasa a nuestro alre-

    dedor para no chocarnos, salirnos del ca-

    mino o perdernos. Analizaremos los tipos

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 8

  • El libro de un vistazo

    9

    !

    A lo largo de este manual encontrar una serie de recuadros que le brindarn infor-

    macin complementaria: curiosidades, trucos, ideas y consejos sobre los temas tra-

    tados. Cada recuadro est identificado con uno de los siguientes iconos:

    INFORMACIN COMPLEMENTARIA

    CURIOSIDADESE IDEAS

    DATOS TILESY NOVEDADES

    ATENCIN SITIOS WEB

    de sensores y los probaremos con nuestro

    controlador. Del mar de componentes digi-

    tales y analgicos, seleccionaremos un

    subconjunto para aplicarlo a nuestro robot.

    Captulo 8

    EL CUERPO DEL ROBOT

    En este punto, tenemos el robot casi termi-

    nado pero desmembrado. Qu materiales

    usamos para construir el cuerpo del robot?

    Qu ventajas y desventajas presenta cada

    uno? Qu herramientas necesitamos? Aqu

    intentaremos responder estas preguntas.

    Captulo 9

    SALIR AL RUEDO

    Presentamos desafos y proyectos de apli-

    cacin con sus respectivas modificaciones

    electrnicas, mecnicas y de programacin.

    Analizaremos las caractersticas de las

    pruebas de robots autnomos y los proble-

    mas que hay que enfrentar para superarlas.

    Captulo 10

    JUGAR AL FTBOL

    Uno de los campos ms atrayentes de

    aplicacin de la robtica autnoma es el

    ftbol de robots. Explicaremos el por qu

    de tanta pasin y cmo podemos usar

    nuestro robot para participar de compe-

    tencias nacionales e internacionales.

    Apndice A

    CONCEPTOS BSICOS DE ELECTRNICA

    Si nos quedan dudas sobre cmo ocurre lo

    que hemos visto en este libro, aqu encon-

    traremos material. Desde qu es la electri-

    cidad hasta la historia y el funcionamiento

    de los circuitos integrados, esclareceremos

    los temas electrnicos fundamentales.

    Apndice B

    SITIOS WEB

    Y como todo esto es el comienzo, presenta-

    remos una lista de sitios de electrnica y

    robtica donde podremos profundizar nues-

    tros estudios y conocimientos.

    Servicios al lector

    BIBLIOGRAFA

    Como bien deca Newton, podemos ver lejos

    porque nos hemos parado en hombros de

    gigantes. Aqu presentaremos las fuentes

    de nuestras investigaciones y estudios.

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 9

  • Sobre el autor 4

    Agradecimientos 5

    Prlogo 6

    El libro de un vistazo 8

    Introduccin 14

    Captulo 1

    CONCEPTOS FUNDAMENTALES

    Introduccin a la robtica 16

    Qu es un robot? 16

    Tipos de robots 19

    Unidades de un robot 23

    Procesamiento 24

    Sensores 33

    Actuadores 39

    Resumen 43

    Actividades 44

    Captulo 2

    COMPONENTES DEL ROBOT

    Una mirada global a nuestro

    futuro robot 46

    Objetivos de nuestro robot 47

    Tipo de procesamiento

    seleccionado 48

    Cmo le damos movimiento

    a nuestro robot? 50

    Y cmo captamos el mundo

    que nos rodea? 53

    Materiales para la mecnica 55

    Resumen 59

    Actividades 60

    Captulo 3

    LA INTELIGENCIA DEL ROBOT

    El cerebro 62

    Componentes de nuestro robot 63

    Objetivos del controlador 64

    El microcontrolador,

    cerebro del cerebro 64

    Conceptos fundamentales

    de un PIC 65

    Caractersticas del PIC16F88 66

    Compatibilidad con el 16F84 67

    Puente H para el control

    de los motores 67

    PRELIMINARES

    10

    Contenido

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 10

  • Contenido

    11

    Listado de componentes

    del controlador 68

    Descripcin del circuito 69

    Placa experimental 71

    El programador 71

    Nuestro programador 71

    Resumen 75

    Actividades 76

    Captulo 4

    COMIDA DE ROBOTS

    La fuente de energa 78

    Caractersticas de las celdas

    de las bateras 79

    Tipos de bateras 81

    Calidad de las bateras 86

    Cargadores 87

    Ayudar a que no slo

    las bateras duren ms 89

    Resumen 91

    Actividades 92

    Captulo 5

    HABLAR CON NUESTRO ROBOT

    Comunicacin con el robot 94

    Lenguajes de programacin

    para robots 95

    PicBasic Pro 95

    Compilador CCS C 97

    MikroBasic 98

    Editor de cdigo fuente

    de mikroBasic 100

    Explorador de cdigo 103

    Depurador 103

    Manos a la obra 106

    Elementos del lxico 108

    Organizacin de los mdulos 110

    Alcance y visibilidad 111

    Variables, constantes y tipos 112

    Estructuras 115

    Operadores 116

    Sentencias 117

    Resumen 123

    Actividades 124

    Captulo 6

    RECORRER EL MUNDO

    El movimiento del robot 126

    Tipos de motores 126

    Motores de corriente continua 127

    Motores paso a paso (Motores PaP) 135

    Servos 140

    Resumen 145

    Actividades 146

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 11

  • Captulo 7

    SENSAR EL MUNDO

    Adaptacin al entorno 148

    Tipos de sensores 148

    Caractersticas esenciales

    de los sensores 149

    Sensores digitales 152

    Los sensores analgicos 158

    Tipos de sensores analgicos 162

    Resumen 165

    Actividades 166

    Captulo 8

    EL CUERPO DEL ROBOT

    Cuerpo a cuerpo 168

    Caractersticas mecnicas

    de un robot autnomo 169

    Robots areos 173

    Robots subacuticos 174

    Robots terrestres 174

    Sistemas con ruedas 179

    Estructura de nuestro robot 184

    Mecanismos de transmisin

    y reduccin 190

    Cinemtica de un robot 194

    Odometra 196

    Resumen 197

    Actividades 198

    Captulo 9

    SALIR AL RUEDO

    Presentarse a competir 200

    PRELIMINARES

    12

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 12

  • Caractersticas comunes de las

    pruebas de robots autnomos 200

    Pruebas tradicionales

    para robots autnomos 210

    La luz, la luz, he visto la luz! 213

    Resumen 219

    Actividades 220

    Captulo 10

    JUGAR AL FTBOL

    Ftbol de robots 222

    Caractersticas del ftbol

    de robots 222

    Ligas nacionales e internacionales

    de ftbol de robots 232

    Modificaciones para

    que nuestro robot pueda jugar 242

    Una pelota infrarroja 244

    Resumen 245

    Actividades 246

    Apndice A

    CONCEPTOS BSICOS DE ELECTRNICA

    La electrnica 248

    Conceptos de electricidad 248

    Componentes que utilizamos

    en nuestros circuitos 251

    Herramientas fundamentales 256

    Consejos para soldar 258

    Apndice B

    SITIOS WEB

    Listado de sitios 260

    Aplicaciones tiles 267

    Servicios al lector

    Bibliografa 270

    Indice temtico 275

    Equivalencia de trminos 277

    Abreviaturas comnmente

    utilizadas 279

    Contenido

    13

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 13

  • 14

    PRELIMINARES

    Introduccin

    Decir que la robtica es un tema del futuro es una prueba fehaciente de miopa.Los robots estn entrando por nuestras puertas, ventanas, cerraduras, y es inevita-ble que as sea. Desde los lavarropas hasta los vehculos espaciales utilizan tecno-logas muy vinculadas con la disciplina. Seguramente, comenzaron con investiga-ciones que en ese momento parecan desconectadas de la realidad (vieja excusa queutilizamos para aquellos que entran a nuestros laboratorios y nos preguntan y esoque hacen para qu sirve?). Es por eso que despus de algunos aos de investiga-cin sobre este tema, y luego de escribir algunos artculos inentendibles, tuvimosganas de abrir el juego. La gente de esta editorial nos invit a presentar el tema enforma ms amena y al alcance de ms lectores.

    Mi relacin con la robtica comenz desde el mbito educativo como un recurso con-creto y tangible para ensearles programacin a jvenes entre 13 y 17 aos. En mi ex-periencia como docente de programacin haba llegado a una conclusin terrible: cuan-do enseamos a programar, dentro del aula tenemos dos grupos de alumnos. Los queentienden todo sin que se les explique demasiado porque tienen una suerte de gen delprogramador y, con slo recibir un par de ideas y algunos apuntes, al cabo de un mesregresaban con un sistema de control de centrales termonucleares. Y el otro conjuntode alumnos, ms abultado, que a pesar de todos los recursos, inventos y triquiuelasdidcticos, no lograban superar el PRINT HOLA MUNDO. Por lo tanto, mi tareacomo docente era intil en los dos casos: en el primer grupo, porque no me necesita-ban, y en el segundo, porque no les poda aportar cosas nuevas. En ese momento co-menc a buscar algn mecanismo para que nadie se diera cuenta de esto y, a conti-nuacin, un recurso que permitiera mejorar la enseanza de programacin. All mecruc con los robots y con los entornos de objetos. Con el primer tema me cas y conel segundo tengo una relacin de amante que espero oficializar en un prximo libro.

    Tengo la suerte de que en las ltimas investigaciones que he desarrollado, ambos aspec-tos se han unido y manejamos los robots desde un ambiente de objetos. La robtica meha dado inmensas satisfacciones, me ha permitido viajar a lugares que nunca cre queiba a conocer y ha pagado alguna que otra comida ma y de mi familia. Pero ante todo,me ha brindado la posibilidad de sorprenderme da tras da. Siempre hay algo nuevo,siempre hay otro desafo. Espero que este libro sirva como un punto de partida sencillopara viajar a obras mucho ms completas que nos regalarn experiencias maravillosas.

    00_robotica.qxp 24/10/2007 01:57 p.m. Pgina 14

  • Conceptos fundamentales

    Captulo 1

    Qu es un robot? Cundo

    conviviremos con ellos? Tendremos

    diversos tipos de robots entre nosotros?

    Lavarn los platos? En este primer

    captulo intentaremos responder estas

    y otras preguntas, con el objetivo

    de entender cules son

    los alcances posibles de nuestro

    primer proyecto robtico.

    Robtica

    SERVICIO DE ATENCIN AL LECTOR: [email protected]

    Introduccin a la robtica 16Qu es un robot? 16Tipos de robots 19Unidades de un robot 23Procesamiento 24Sensores 33Actuadores 39

    Resumen 43Actividades 44

    Colaborador:Ing. Gonzalo Mon

    01_ROBOTICA.qxd 24/10/2007 02:01 p.m. Pgina 15

  • INTRODUCCIN A LA ROBTICA

    Da a da, nos sorprendemos con lasnoticias que aparecen en los mediosde comunicacin vinculadas a lapresencia de robots en diversos cam-pos de la vida cotidiana. Robots en-fermeros, mascotas, repositores desupermercados, detectores de explo-sivos, aspiradoras hogareas, o sim-ples jugadores de ftbol, son algu-nos de los ejemplos que podemosencontrar en el mercado de la tecno-loga de ltima generacin. En sntesis, la robtica ya no esparte de nuestro futuro sino denuestro presente tangible. Sin em-

    bargo, probablemente gracias a la li-teratura y al cine de ciencia ficcin,el concepto de lo que es un robot,sus posibilidades y sus limitacionesreales estn desdibujados en el ima-ginario colectivo. Es por eso que eneste primer captulo haremos unaintroduccin a los conceptos funda-mentales de la robtica.

    Qu es un robot?Sueo de muchas generaciones, laexplosin tecnolgica nos ha puestoal alcance de poder concretarlo.Para comenzar nuestro recorrido,hagamos un repaso de la historia dela robtica para comprender haciadnde nos dirigimos.

    1. CONCEPTOS FUNDAMENTALES

    16

    Figura 1. Roomba, la aspiradora robtica ms popular y econmica del mercado.

    01_ROBOTICA.qxd 24/10/2007 02:01 p.m. Pgina 16

  • A imagen y semejanzaDesde los orgenes del hombre, po-demos encontrar varios relatos sobrela creacin de vida artificial. Porejemplo, en la leyenda del Golem,un rabino de Praga le infunde vida auna estatua de barro. Asimismo, enla obra literaria Frankenstein, eldoctor de dicho nombre crea un sera partir de rganos de otras perso-nas, que luego se vuelve contra l.Si nos apartamos de la literatura, enel antiguo Egipto encontramos esta-tuas de dioses que incorporaban bra-zos mecnicos operados por los sa-cerdotes. En el siglo XIX, tambin sehicieron conocidas las creaciones derobots que jugaban ajedrez, aunqueen realidad stos ocultaban a un serhumano de baja estatura que opera-ba la mquina desde su interior (Fi-gura 2). Es decir, el deseo de creacinde un ser a nuestra imagen y seme-janza est presente desde los prime-ros tiempos de la humanidad.El origen de la palabra robot se re-monta a comienzos del siglo XIX. Eldramaturgo Karel Capek utiliz porprimera vez este trmino en su obraOpilek para referirse a un conjuntode mquinas inventadas por un cien-tfico para realizar tareas pesadas yaburridas. En checo, idioma originalde la obra, el trmino robota signi-fica trabajo tedioso. Pero fue el es-critor Isaac Asimov quien populari-z el trmino e introdujo el concep-

    Introduccin a la robtica

    17

    Figura 2. El Turco, un robot que simulaba

    jugar al ajedrez y que, en realidad, tena

    un jugador humano adentro.

    Figura 3. ste es un robot que apareca

    en la adaptacin de la obra de Karel

    Capek: Rossum's Universal Robot.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 17

  • to de robtica en diversos relatos deciencia ficcin de su autora. En susobras, Asimov muestra facetas hu-manas de los robots y define un con-junto de leyes para que estos seresnuevos nunca se rebelen contra loshumanos. Luego, el cine y la televi-sin generaron cientos de robots dediversa ndole, algunos simpticos(como R2D2 y Cortocircuito), yotros definitivamente en contra desus creadores (Terminator, HAL).A partir de la creacin de las prime-ras computadoras comenz el verda-dero desarrollo de los robots primi-tivos. En 1974, la empresa Cinci-nnati Milacron realiz el primer ro-bot industrial, conocido como TheTomorrow Tool. A partir de ese mo-mento, junto con la evolucin de lossistemas de procesamiento, el creci-miento de la robtica ha sido expo-nencial. La reduccin de tamao yde costos, y el aumento de la capa-cidad de clculo de los procesadores,han permitido la creacin de robotscada vez ms sofisticados, rpidos yautnomos. Sin embargo, an esta-mos lejos de crear un robot a nues-tra imagen y semejanza.

    Definicin de la palabra robotExisten muchas definiciones de lapalabra robot. En cada una de ellas,encontramos destacado algn aspec-to en particular, que es el que cadaautor quiere resaltar en su obra. Se-

    gn la Asociacin Japonesa de Rob-tica Industrial (JIRA), los robots sondispositivos capaces de moverse de mo-do flexible, anlogo al que poseen losorganismos vivos, con o sin funcionesintelectuales, lo que permite la realiza-cin de operaciones en respuesta a r-denes recibidas por humanos. Vemosque en esta definicin se encuentraresaltada la capacidad de movimien-to de los robots y su analoga con losseres de la naturaleza. Sin embargo,a la JIRA no le interesa la inteligen-cia artificial aplicada al robot, dadoque su funcin fundamental es seroperado por un humano. Por su par-te, el Instituto de Robtica de Nor-

    1. CONCEPTOS FUNDAMENTALES

    18

    Figura 4. Isaac Asimov, creador

    de cientos de cuentos sobre robots

    y de la palabra robtica.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 18

  • teamrica (RIA) define a un robotindustrial como un manipuladormultifuncional y reprogramable dise-ado para desplazar materiales, com-ponentes, herramientas o dispositivosespecializados por medio de movimien-tos programados variables, con el fin derealizar diversas tareas. En este caso,el acento est puesto en la capacidadde programacin del robot y, por lotanto, en cierta independencia defuncionamiento con respecto a laoperacin humana. Como dijo Jo-seph Engelberg, padre de la robticaindustrial: es posible que no sea ca-paz de definir qu es un robot, pe-ro s cundo veo uno.Particularmente, y ya que nos hemosganado el derecho dado que estamosescribiendo un libro sobre robtica,agregaremos una definicin ms derobot a la larga lista preexistente: unrobot es un dispositivo con un de-terminado grado de movilidad, quepuede realizar un conjunto de ta-reas en forma independiente y quese adapta al mundo en el que ope-ra. El objetivo de esta definicin es

    comenzar a introducirnos en el tipode robot sobre el que vamos a centrar-nos en el desarrollo del libro.

    Tipos de robotsDe la misma manera que con las de-finiciones, podemos encontrar mu-chas clasificaciones distintas de ro-bots. En esta obra, al presentarlos,intentaremos acercarnos a los diver-sos problemas mecnicos, electrni-cos y de software que encontramosen el desarrollo de un robot. Las cla-sificaciones elegidas son:

    Segn el uso del robotA continuacin presentaremos unaclasificacin posible de los robots se-gn su utilidad especfica. Industriales: se utilizan dentro de

    un proceso de trabajo industrial. Esel tipo de robot que ms ha sido de-sarrollado en la historia (Figura 5).

    Espaciales: deben desenvolverse enzonas inexploradas y a larga distan-cia de su centro de control.

    Mdicos: son utilizados comoapoyo en la intervencin mdica

    Introduccin a la robtica

    19

    Uno de los primeros robots reales fue el jugador de ajedrez autmata de Wolfgang

    von Kempelen, en 1769. ste consista en una cabina de madera de 1,20 metros de

    largo, 60 centmetros de profundidad y 90 centmetros de altura. Cuando se abran

    las puertas de la mquina, se poda ver un complejo mecanismo de engranajes que,

    supuestamente, permitan jugar un partido de ajedrez de buen nivel. En realidad,

    dentro de la estructura se esconda un pequeo jugador humano.

    UN ROBOT QUE JUGABA AL AJEDREZ

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 19

  • sobre los humanos y como com-plemento para las personas con ca-pacidades disminuidas.

    Domsticos: el sueo de todo amoo ama de casa, un robot que reali-ce alguna o todas las tareas del ho-gar. Ya hay entre nosotros aspira-

    doras, lavarropas, heladeras, etc-tera, que modifican su comporta-miento en forma autnoma segnel ambiente en el que trabajan.

    Sociales: robots utilizados en m-bitos sociales (como pelculas,eventos y supermercados) con fun-ciones de comunicacin intensivacon los humanos. En estos casos,uno de los elementos de investiga-cin fundamental es el aspecto es-ttico del robot, el estudio de la in-terfaz con el humano para realizaruna comunicacin completa, congestos, tonos, silencios, etctera.

    Agrcolas: as como en sus co-mienzos la robtica tuvo ampliaaplicacin en la industria, en losltimos aos ha comenzado a cre-cer en forma exponencial el uso derobots y de la inteligencia artificialen el sector agrcola-ganadero. Lascosechadoras autnomas, las sem-bradoras controladas por mapassatelitales, los fumigadores roboti-zados y otros dispositivos hicieronsu aparicin dentro de lo que ac-tualmente se conoce como agri-cultura de precisin (Figura 6).

    1. CONCEPTOS FUNDAMENTALES

    20

    Figura 5. Kit de brazo robtico

    RA-01 con 5 servos.

    Como si no fueran suficientes los insectos que nos perturban durante todo el ao, los

    ingenieros han decidido que, antes de imitar a un humano, es necesario lograr un in-

    secto robtico. Los sistemas de visin y de vuelo de los insectos son dos fuentes de

    inspiracin muy importantes, dado que con mecanismos sumamente sencillos, logran

    captar el mundo que los rodea y volar sobre l de una manera altamente adaptativa.

    ROBOTS INSECTOS

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 20

  • Segn el medio en el que desarro-lla la actividad Acuticos: se caracterizan por movi-

    mientos tridimensionales en un am-biente hostil desde el punto de vistamecnico y electrnico (Figura 8).

    Terrestres: son los ms popularesy econmicos. Podemos, a su vez,subclasificarlos por sistema de lo-comocin: fijos, ruedas, orugas,patas, arrastre, etctera.

    Areos: con movimientos tridi-mensionales, como el acutico, pe-ro con una exigencia mucho ma-yor en el control en tiempo real delsistema de levitacin (Figura 7).

    Hbridos: combinacin de algu-nos de los anteriores.

    En esta clasificacin, las caractersti-cas mecnicas del robot se modifi-can en forma sustancial entre uno uotro medio. Prcticamente, es impo-

    Introduccin a la robtica

    21

    Figura 6. Demeter, un robot deaplicacin agrcola desarrollado

    en la Universidad de Carnegie Mellon.

    Figura 7. Robot insecto volador desarrollado en la Universidad de Berkeley.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 21

  • sible utilizar la mecnica de un ro-bot construido en un medio paraque funcione en otro, salvo en el ca-so de algunos hbridos.

    Segn la ubicacin de la inteligen-cia del robot Autnomos: la inteligencia est

    ubicada en el mismo robot. Puedecomunicarse con otros o con unsistema central, pero los aspectosesenciales de funcionamiento seresuelven en forma independienteen el propio robot.

    Control automatizado (semiaut-nomos): la mayor parte de la inte-ligencia del robot est ubicada enun sistema central. Los sensorespueden ser locales, es decir que leenvan la informacin obtenida aese sistema central, o globales. Elsistema central les comunica a los

    robots las acciones que deben rea-lizar. Un ejemplo de este modeloes la categora Mirosot de ftbolde robots de la FIRA.

    Hbridos: son robots autnomosque, en ciertos momentos del pro-ceso, pueden ser controlados porhumanos o por un sistema central.Un ejemplo son los robots que seutilizan en misiones espaciales, queoperan en forma autnoma peroque, ante un percance, pueden serdirigidos desde nuestro planeta.

    Tambin podramos clasificar a losrobots por sus caractersticas estruc-turales, por el tipo de sensado delmundo, etctera. De todas maneras,todos los robots comparten la mis-ma arquitectura bsica, desde el mspequeo hasta Terminator. A conti-nuacin veremos la fuerte analoga

    1. CONCEPTOS FUNDAMENTALES

    22

    Figura 8. Robotacutico japons,que imita la

    estructura de

    algunos seres

    acuticos.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 22

  • que encontramos entre un robot yuna computadora convencional.

    Unidades de un robotEn la arquitectura de cualquier com-putadora, podemos encontrar las si-guientes unidades que la componen:

    Unidades de procesamiento: es elconjunto de dispositivos que seencargan de realizar la transforma-cin de los datos de entrada paraobtener los datos de salida.

    Unidades de entrada: son las uni-dades que permiten realizar el in-greso de informacin para su pos-terior procesamiento.

    Unidades de salida: son las unida-des que se ocupan de comunicarlelos resultados del procesamiento alusuario u operador.

    En un robot podemos encontrar lamisma arquitectura. A las unidadesde entrada de un robot las llamamossensores, que pueden ser externos,como un sensor de tacto, o internos,como un encoder que permite deter-minar la distancia recorrida por unarueda. A las unidades de salida se lasconoce como actuadores. Aqu po-demos mencionar leds de sealiza-cin, buzzers, motores, displays,etctera. En sntesis, el robot recibeinformacin del ambiente mediantesus sensores, procesa la informa-cin con su unidad de procesamien-

    to y realiza sus acciones al movermotores y encender luces y buzzers.Tomemos como ejemplo a uno de losrobots ms conocidos: Terminator.En este caso, sus sensores son las c-maras que le permiten mirar, su siste-ma auditivo y los sensores de tactoque tiene su piel. No recordamos quetenga olfato o que alguna vez haya co-mentado lo sabroso de alguna comi-da. Sus actuadores esenciales son losmotores o los msculos de alambreque conforman su cuerpo.Uno de los problemas ms apasio-nantes de la robtica es el equilibrioque es necesario obtener entre las tresunidades, para lograr que el robotcumpla con su objetivo. Por ejemplo,los sensores ms sofisticados o que

    Introduccin a la robtica

    23

    As como hablamos de generaciones de

    computadoras, tambin se ha definido

    el grado de evolucin de los robots in-

    dustriales como vemos a continuacin: Primera generacin: repiten una ta-

    rea sin considerar las modificaciones

    que ocurren en su entorno. Segunda generacin: toman informa-

    cin limitada de su entorno y modifican

    su comportamiento. Tercera generacin: son programados

    en lenguaje natural y organizan sus tareas

    en forma automtica en un nivel ms alto

    que los de Segunda generacin.

    GENERACIONES DE ROBOTS

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 23

  • entregan mayor cantidad de datos,como puede ser una cmara de video,exigen de parte del procesador unmayor tiempo de trabajo para poderobtener un conjunto de informacinque resulte significativo. De la mismamanera, el control de los actuadoressofisticados, como cierto tipo de mo-tores, consume tiempo de procesa-miento que es absolutamente necesa-rio para que el robot opere en tiem-po real. En sntesis, es imprescindiblelograr el equilibrio entre velocidady precisin, en especial en aquellosrobots que operan en entornos muydinmicos. Es por eso que, habitual-mente, se utilizan ciertos procesado-res especficos para el filtrado de la in-formacin de entrada y para el con-trol de los actuadores, y as se liberade esta tarea al procesador central yse complementa su funcin.En las prximas pginas, analizare-mos cada una de estas unidades enprofundidad, de forma tal que poda-mos realizar la eleccin adecuada se-gn los objetivos especficos quetengamos para nuestro robot.

    ProcesamientoCuando comenzamos a analizar loque nos ofrece el mercado de la ro-btica con respecto a procesamiento,probablemente nos encontremosconfundidos ante la diversidad deposibilidades. Podemos encontrardesde micros de muy bajo precio, en

    los que debemos construir en formaartesanal toda la electrnica que loscomplementa para poder procesarlas entradas y salidas, hasta costososkits que tienen absolutamente todoresuelto. Est claro que con stos l-timos podremos hacer que nuestrorobot funcione en algunas horas, pe-ro es en el primer caso donde tendre-mos un control absoluto y de bajonivel de las capacidades de procesa-miento de nuestro dispositivo.De todas maneras, analizaremos enforma detallada las ventajas y lasdesventajas de ambas propuestas: eldesarrollo con el uso de kits frente ala construccin en forma artesanalde los robots. Adems, conoceremosbrevemente algunos kits y microsdisponibles en el mercado, y hare-mos una lista de los sitios web don-de se puede conseguir informacinms detallada y completa.

    KitsLos kits para la construccin de ro-bots, en general, presentan los si-guientes elementos: Un procesador o conjunto de pro-

    cesadores con toda la electrnica deentrada y salida de los sensores re-suelta. Adems, poseen un sistemaoperativo dentro del controlador(firmware), que eleva el nivel de pro-gramacin de los procesadores, loque posibilita el uso de lenguajes dealto nivel o interfaces grficas para el

    1. CONCEPTOS FUNDAMENTALES

    24

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 24

  • desarrollo de la inteligencia de nues-tro robot en forma muy sencilla.

    Un conjunto de sensores queaprovechan la electrnica ya re-suelta, y que con una simple cone-xin funcionan de manera casimgica. Por ejemplo, sensores deluz donde el firmware interpreta elvoltaje que entrega el sensor comoun valor entre 0 y 100.

    Un conjunto de motores quetambin utilizan la electrnica desalida, que se alimentan directa-mente de la misma fuente que ali-menta al procesador, y que graciasal firmware podemos indicarle di-reccin, velocidad, etctera, sin lanecesidad de clculos complejos.

    Material constructivo para resolverla mecnica del robot, altamente

    reutilizable y que en poco tiempopermite la elaboracin de la fsica delrobot mediante la aplicacin de co-nocimientos de nuestra infancia.

    Si tenemos en cuenta este conjuntode materiales, es sencillo notar que lasventajas que nos presenta el uso dekits para la construccin de nuestrorobot son las siguientes: Menor tiempo de construccin

    del robot: en pocas horas, podemosobtener robots poderosos para losdesafos habituales en robtica.

    Alta reusabilidad del material:una vez terminado el desafo, po-demos desarmar el robot y utilizartodas las piezas, los sensores, losmotores y el procesador para armarun robot completamente distinto.

    Baja necesidad de conocimientos

    Introduccin a la robtica

    25

    Figura 9. Lego Nxt con el conjunto de motores y sensores que vienen con el kit.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 25

  • tcnicos: sin saber electrnica yprcticamente sin saber programa-cin, podemos desarrollar un robotpoderoso. Desde ya que para aque-llos usuarios que s tengan esos co-nocimientos, el aprovechamientoser mucho mayor. Ms an si losdesarrolladores del kit tuvieron laprecaucin de dejar abiertos tanto elfirmware como el hardware del pro-cesador y los sensores.

    De todas formas, no todas son cosaspositivas. Las desventajas que tene-mos con el uso de kits son: El alto o altsimo costo de un kit:

    la relacin puede ser de 20 a 1 conrespecto a un desarrollo manual. Elrobot que construiremos en este li-bro mantiene esta relacin con loskits ms econmicos de robtica.

    La imposiblidad, en muchos casos,de poder realizar modificaciones debajo nivel en el hardware o el firm-ware del robot. A pesar de todos losesfuerzos de documentacin que ha-ga la empresa creadora del kit, es im-posible que todo sea altamente mo-dificable, por la misma necesidad demantener la arquitectura intrnsecadel robot. Su elaboracin artesanaldesde cero nos permite modificarhasta el ms mnimo detalle.

    Baja precisin y calidad final delos robots: dado que los kits sonpara el desarrollo de robots de di-versos propsitos, en todos los ca-sos perdemos precisin y calidad.Por ejemplo, los motores sirvenpara moverse en un determinadoambiente con alto margen deerror, pero no son veloces ni per-miten movimientos de precisincomo lo pueden exigir ciertos ob-jetivos. En general, los sensoresson econmicos, y el rango de va-lores que devuelven es pobre.

    Los kits de robtica ms conocidosen el mercado son los siguientes: Lego Nxt: sucesor del modelo

    Mindstorms, es el kit de mayor di-fusin en todo el mundo (Figura 9).

    1. CONCEPTOS FUNDAMENTALES

    26

    Figura 10. Un humanoide realizadocon el Lego Nxt.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 26

  • Su procesador es un ARM7 de 32bits. Cuenta con 256 Kb de Flash y64 Kb de RAM. Se comunica porBluetooth clase 2 y por USB. Tiene4 entradas para sensores y 3 salidaspara actuadores. En el kit se inte-gran 3 motores servo con encodersincorporados para controlar su mo-vimiento con precisin.Adems, cuenta con un sensor detacto, uno de sonido, otro de luz ypor ltimo un sensor ultrasnico.Para la mecnica del robot cuentacon piezas de las denominadasTechnic, que permiten disear dife-rentes estructuras segn el destinodel robot creado (Figura 10). El len-

    guaje de programacin es un am-biente grfico muy sencillo, similaral Robolab de las versiones anterio-res, pero con mayor potencia y ver-satilidad. Para finalizar, una de lasmejores decisiones que ha tomado lafirma Lego es publicar muchsimainformacin sobre el desarrollo tan-to de hardware como de software delkit, lo que ha permitido que en po-co tiempo (sali a la venta en agos-to de 2006) las personas de todo elmundo que tienen este hobby hayandesarrollado hardware y software es-pecfico fuera del oficial. Para obte-ner ms informacin, podemos visi-tar http://mindstorms.lego.com.

    Introduccin a la robtica

    27

    Figura 11. Placa educativa del Basic Stamp de Parallax.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 27

  • Parallax: el producto ms popular deesta empresa es el micro Basic Stamp(Figura 11). Aunque uno puede adqui-rir solamente el micro y realizar el ro-bot desde cero como comentaremosms adelante, hay tantos desarrollosy tantas presentaciones de productosde la firma Parallax que hemos deci-dido presentarlo dentro de esta sec-cin. El Basic Stamp Starter Kit es-t desarrollado para iniciarse en elmundo de la robtica. Incluye un Ba-sic Stamp II, que tiene una velocidadde procesamiento de 20 Mhz, con 2Kb de EEPROM (electrically-erasableprogrammable read-only memory,ROM programable y borrable elc-tricamente) y 16 E/S (entradas y sa-lidas) ms 2 dedicadas. Este micro es-t instalado en una placa educativacon una pequea protoboard (pla-

    queta de experimentacin), dondepodremos realizar todas nuestras ex-periencias. Viene con un servo, leds,capacitores, resistencias y otros com-ponentes para disear nuestro robot.Las guas que acompaan a este yotros kits son excelentes (y algunasestn en castellano!), y pueden con-seguirse en forma gratuita en el sitiode la empresa. La ltima creacin deParallax ha sido el micro de nombrePropeller, con 8 procesadores para-lelos en su interior. Tiene una arqui-tectura de 32 bits, 80 Mhz, con 32pines de E/S direccionables por cual-quiera de los 8 procesadores. Parabuscar ms informacin, podemosvisitar www.parallax.com.

    XiOR: en Amrica Latina, conta-mos con nuestro propio kit de ro-btica. XiOR (www.xior.org) esuna empresa argentina de tecnolo-ga y entre sus trabajos ha desarro-llado un sistema constructivo parala fabricacin de robots mviles au-tnomos. El modelo N10 es el pri-mer robot desarrollado con l (Figu-ra 12). Una de sus principales carac-tersticas es la posibilidad de que elusuario reconfigure toda su morfo-loga fsica para adaptarlo a diferen-tes entornos y experimentos. Inclu-so es posible combinarlo con otrosrobots similares para formar partede estructuras mayores.Normalmente, est equipado con2 o 4 celdas de Li-Ion de 900 mAh,

    1. CONCEPTOS FUNDAMENTALES

    28

    Figura 12. Aqu podemos ver uno

    de los modelos constructivos de XiOR,conocido como N10.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 28

  • agrupadas en packs de a dos. Encuanto a las capacidades de procesa-miento, el controlador XiOR.0107tiene un procesador AVR ATMega8(Atmel, 2003) de 16 MIPS aproxi-madamente, y 8 KB de RAM deprograma, e incorpora comunica-ciones RS-232, 2WI y drivers de po-tencia para agregar dos motores adi-cionales de corriente continua o unmotor paso a paso. El sistema constructivo Mltiploofrece piezas de aluminio y plsti-co cuidadosamente diseadas paradesarrollar robots de tamao redu-cido, pero con una precisin y ro-bustez sorprendentes. Podemosencontrar ms informacin enwww.xior.org.Adems de estos kits que mencio-namos, el mercado de la robticaeducativa crece da a da, y en laWeb podemos encontrar muchosotros que tal vez se ajusten mejora nuestras necesidades. Aunqueaqu describimos los ms conoci-dos, podemos navegar para buscarms informacin sobre el tema.

    Robtica sin kitsComo comentamos antes, realizarun robot sin la ayuda de un kit nosproporciona mayor versatilidad, ro-bustez, potencia, precisin, veloci-dad y adaptabilidad. El problemaesencial es que nos exige mayor co-nocimiento y trabajo. Cuando co-mencemos un desarrollo de este tipo,lo primero que debemos analizar esel procesador que vamos a utilizar,segn la funcionalidad y el costo quedeseamos que tenga nuestro robot.

    Introduccin a la robtica

    29

    Figura 13. Sphinx, otro modelo de XiORpara el control de pozos de petrleo.

    Adems de los kits mencionados, a continuacin presentamos links donde se pue-

    den encontrar otros kits desarrollados en Latinoamrica:

    NeoRobotic: kits de robtica autnoma (www.neorobotic.com).

    Arbot: robots controlados desde la PC por puerto paralelo (www.dutten.com.ar).

    Blocky-tronic: sistema constructivo con microcontrolador, sensores y motores

    (www.blockymania.com.ar/blockytronic/).

    OTROS KITS LATINOAMERICANOS

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 29

  • Adems, debemos tener en cuentaque es necesario complementar elprocesador con un circuito de con-trol adecuado para realizar las cone-xiones de entrada, salida, alimenta-cin y control de dispositivos.

    MicrocontroladoresEl procesamiento ms habitual en losrobots pequeos y de bajo costo es elprovisto por microcontroladores.Los micros ms utilizados son los dela familia PIC, de la firma Micro-chip. De todos los modelos que seofrecen, el ms popular para la cons-truccin de robots es el PIC16F84.Posee una memoria de programaFlash de 1 KB con palabras de 14 bits,una memoria RAM de datos de 68bytes y una EEPROM de 64 bytes, y13 pines de E/S. Por otra parte, su precio es ms queaccesible. Dado que desarrollaremosnuestro robot con PIC, dejaremospara ms adelante una descripcinms detallada de stos.La empresa Atmel fabrica otro tipode microcontroladores, que tambinson de uso habitual en la construc-cin de robots. De todas sus lneas, ladenominada AVR de 8 bits es la msrecomendada para el procesamientoen esta disciplina. Toda la lnea AVRpresenta caractersticas como bajopoder de consumo, arquitecturaRISC y Harvard, 32 registros de 8bits de propsito general y facilidadde implementacin de lenguajes dealto nivel para la programacin. En particular, el micro ATMega8 (Figu-ra 15) es ideal, dado que presenta unamemoria de 8 KB de programa, 1 KBde SRAM y 512 bytes de EEPROM,seis canales de PWM, USART progra-

    1. CONCEPTOS FUNDAMENTALES

    30

    Figura 14. Otro de los micros

    de la firma Microchip, creadoradel 16F84.

    Figura 15. ATMega8 en una placa de prototipado rpido.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 30

  • mable, conversor analgico digital decuatro canales multiplexados de 10 u 8bits y dos canales de 8 bits, entre otrascaractersticas que se pueden encontraren la pgina de la firma.

    PDASi no tenemos una base de conoci-miento y experiencia en electrnicapara utilizar los microcontroladoresque presentamos pero contamos conuna Palm o una PocketPC, podemosdestinar parte de su tiempo de uso pa-ra que acte como cerebro de nuestracreacin. En los ltimos aos, estosdispositivos han bajado de precio enforma notable y, adems, algunos mo-delos han cado en desuso, aunquepueden adaptarse perfectamente paraser empleados con nuestros robots.Uno de los ejemplos ms interesantesen este punto es la adaptacin del ro-bot Robosapien (Figura 17) de la fir-ma Wow Wee para que pueda sercontrolado desde una PocketPC porinfrarrojo, con lo cual utilizamos laPDA como control remoto inteligen-te que puede generar su propio pro-cesamiento. Para la deteccin del

    mundo se utiliza una cmara que seconecta en el puerto de tarjetas de me-moria. En sntesis, con poco dineropodemos tener un robot humanoide.Se puede obtener ms informacin enwww.informatik.uni-freiburg.de/~nimbro/media.html.El Instituto de Robtica de Car-negie Mellon desarroll un proyec-to para la construccin de un robotautnomo mvil de bajo costo, y seutiliz una Palm como procesador (Fi-gura 18). En el sitio www.cs.cmu.edu/~reshko/PILOT podemos encontrartodos los pasos y los materiales nece-

    Introduccin a la robtica

    31

    Figura 16. Arduino, una plataformaabierta en software y hardware para

    el desarrollo de robots.

    Arduino es una placa basada en el micro Atmel ATmega8, programable por serial o

    USB, con entradas y salidas analgicas y digitales. Su diseo y distribucin son com-

    pletamente libres. En su sitio web, www.arduino.cc, podemos encontrar los planos pa-

    ra armar la placa y el software necesarios para su programacin. Si no nos animamos

    a construirlos desde cero, podemos adquirir los componentes en el mismo sitio.

    ARDUINO, UNA PLATAFORMA OPEN HARDWARE PARA ROBTICA

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 31

  • sarios para construirlo, incluido elsoftware que es indispensable bajaren la Palm para la programacin. Sibien utiliza ruedas omnidirecciona-les, servos y otros materiales quepueden ser costosos en el mercadolocal, con ellos obtendremos un ro-bot mvil de excelente calidad.Comprar una PDA pura y exclusiva-mente para la construccin de un ro-bot es demasiado costoso en compa-racin con las otras variantes. Pero sidisponemos de una, o si los preciosde estos dispositivos continan ba-jando, puede ser una posibilidadmuy interesante por su potencia deprocesamiento y tamao.

    Computadoras (PC)Por ltimo, no queremos dejar de pre-sentar la posibilidad de usar mother-boards de PC convencionales pero detamaos reducidos, conocidos comoMini y Nano-ITX (Figura 19). Porejemplo, la conocida firma VIA ha de-sarrollado la lnea EPIA, de bajo con-sumo y con un tamao que oscila en-tre 12 y 17 centmetros de lado. Unode sus modelos, el VIA EPIA NL, po-see placa de video de S3, zcalo paramemoria DDR 266/333/400, un slotmini PCI, un puerto S-ATA y dosP-ATA, placa de sonido, LAN, puertoserie, USB y otros, que permiten tenertoda la potencialidad de una PC en 12x 12 centmetros! En el sitio www.mini-itx.com se muestran desarrollos

    1. CONCEPTOS FUNDAMENTALES

    32

    Figura 17. Robot Robosapienhackeado con una PDA en su cabeza como procesador.

    Figura 18. Palm Pilot Robot Kites un kit de robtica cuyo

    procesador es una Palm Pilot.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 32

  • de fanticos de estos modelos, no s-lo en robtica, sino tambin en losdispositivos ms extraos. En www.epiacenter.com se analizan muchosmothers de este tipo, de diferentesmarcas, y se ofrecen los links a tiendasen lnea donde adquirirlos. La enormeventaja de utilizar este tipo de tecno-loga es la potencia que nos brinda unaPC para el procesamiento de la infor-macin de los sensores y la toma dedecisiones, la posibilidad de progra-mar cmodamente en lenguajes de al-to nivel, y la facilidad de desarrollar yde testear en nuestra computadora deescritorio. Por otra parte, tanto lossensores como los actuadores que que-ramos conectar pueden desarrollarsesobre plataformas muy conocidas, co-mo serial, paralelo o USB. Cualquiercmara web puede conectarse en se-gundos, y todos los drivers de los dis-positivos ya desarrollados funcionansin problema en nuestro robot.

    SensoresUna de las caractersticas fundamen-tales que debe tener un robot es po-

    seer algn mecanismo de modifica-cin de su comportamiento segn elambiente en el que se encuentra. Pa-ra esto, tiene que contar con disposi-tivos que le permitan sentir el mun-do que lo rodea, segn la tarea quedeba realizar. Por ejemplo, en am-bientes muy dinmicos, es probableque deseemos sensores que puedancaptar rpidamente la informacin,aunque perdamos precisin. Si estono fuera as, la informacin recibidano sera til, porque representara un

    Introduccin a la robtica

    33

    Figura 19. Nano-itx, un motherboard de la empresa Via, de 12 cm por 12 cm.

    Gracias a la baja de su precio y a su tamao, no es sorprendente encontrar robots

    cuyo procesamiento lo realiza una notebook. Permite utilizar lenguajes de alto ni-

    vel, muy buena velocidad de procesamiento y entradas y salidas estndares como

    serial, paralelo, USB o firewire. Adems, es posible desarrollar todo el comporta-

    miento del robot desde una PC convencional, y cualquier desperfecto es fcil de sal-

    var con la instalacin una nueva notebook.

    ROBOTS CON NOTEBOOKS

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 33

  • estado antiguo que, con seguridad,ha sido modificado por el alto dina-mismo del ambiente. Un ejemplo deesto es el ftbol de robots. En otros casos, necesitamos la mayorprecisin posible por la operacin querealizamos y para lograrlo, tendremosque utilizar sensores de mayor fiabili-dad, aunque su tiempo de respuestasea bajo. En realidad, cuando cons-truimos un robot, siempre luchamoscon esta dualidad (y, seguramente,con muchas variables ms). Es poreso que la eleccin de los sensoresque utilicemos estar determinadapor la tarea que vayamos a realizar ysus requerimientos particulares.Los sensores pueden definirse como

    dispositivos que nos permiten mediralguna caracterstica del ambiente, co-mo la temperatura, la distancia, la po-sicin, el sonido, la intensidad de laluz, los colores, la altitud, la velocidad,la rotacin, etctera. Lamentablemen-te, en la realidad no existe el sensorperfecto, y por lo tanto debemos com-pletar y corregir la informacin con lautilizacin de algoritmos de correc-cin y redundancia de sensores.Otro aspecto importante para teneren cuenta es que, segn el tipo decontrolador que utilicemos paranuestro robot, deberemos disearcircuitos intermedios entre el sen-sor y el controlador, con el fin deconvertir la seal del sensor en un

    1. CONCEPTOS FUNDAMENTALES

    34

    30

    25

    20

    15

    10

    5

    0 0 5 10 15 20 25 30

    Tiempo

    Valo

    r

    Figura 20. En este caso, los valores son los de un sensor analgico.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 34

  • valor interpretable por nuestro pro-cesador. Por lo tanto, aunque poda-mos utilizar un mismo sensor paradiferentes plataformas de controla-dores, con seguridad tendremos quedisear estas interfaces en forma de-dicada para cada procesador.

    ClasificacinPodemos dividir a los sensores en dosgrandes grupos: analgicos y digita-les. Los analgicos entregan un valor(por ejemplo, una tensin) dentro deun determinado rango continuo (Figu-ra 20). Un ejemplo de este tipo es unafotorresistencia, que mide la intensi-dad de la luz, y que podemos adaptarpara que entregue un valor de 0 a 5 Vol-

    tios. Los sensores digitales entregan unaseal discreta dentro de un conjuntoposible de valores (Figura 21). Es decir,este conjunto de valores se modifica deun rango a otro por saltos discretos yno continuos.Un ejemplo clsico es el sensor de to-que, que devuelve valor 1 ( 0 Vol-tios) si est apretado y 0 ( 5 Voltios)si no es as. Desde ya que, a pesar de que el sen-sor sea analgico, finalmente, en lalectura del controlador, obtendremosun valor discreto. Es decir, se realiza-r una conversin analgico/digitaldentro del controlador o en la inter-faz que construyamos para la adapta-cin del sensor al controlador.

    Introduccin a la robtica

    35

    30

    25

    20

    15

    10

    5

    0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

    Tiempo

    Valo

    r

    Figura 21. Aqu podemos ver un ejemplo de valores tomados por un sensor digital.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 35

  • Otra clasificacin posible de los sen-sores es internos y externos. Los in-ternos son aquellos que nos brindaninformacin del propio robot, comola velocidad, la rotacin, la posicin,la altura, etctera; en tanto que los ex-ternos son los que proporcionan da-tos del ambiente, como las distancias,la temperatura, la presin, etctera.Por ltimo, tambin podemos dividirlos sensores en pasivos y activos. Losactivos son los que necesitan enviar unaseal hacia el ambiente para luego reci-bir el rebote de esa seal y, de esta ma-nera, interpretar el estado del mundoque lo rodea. Un ejemplo clsico de es-

    te tipo de sensor es el ultrasnico, queenva una seal sonora que, al rebotarcon un objeto, vuelve al robot, y al cal-cular el tiempo de demora, puede in-terpretar la distancia al objeto. Desdeya que los sensores activos necesitanmucha ms electrnica para su funcio-namiento, pero la informacin que nosbrindan es mucho ms rica que la quenos ofrecen los sensores pasivos.

    Tipos de sensoresHacer una lista de todos los tipos desensores existentes sera imposible.Los que nombraremos a continua-cin son los ms utilizados en rob-tica de bajo costo:

    Sensores de interrupcin: simple-mente, detectan si pasa corriente ono. Se utilizan como sensores dechoque o contadores de eventos(vueltas de una rueda, por ejemplo).

    Sensores de posicin: determinan laposicin del robot. Un sensor de es-te tipo puede ser un potencimetroque cambia su valor por la rotacinde las ruedas; u pticos, como los que

    1. CONCEPTOS FUNDAMENTALES

    36

    Figura 22. Aqu podemos apreciar

    un sensor de efecto hall.

    Existen cientos de simuladores de distintos tipos de robots: humanoides, autno-

    mos, robots para ftbol, etctera. Por ejemplo, uno de los ms interesantes en el

    ftbol de robots lo podemos conseguir en el sitio www.fira.net/soccer/simurosot/

    R_Soccer_ v15a_030204.exe. Sin embargo, un simulador no es lo mismo que la ro-

    btica fsica. Creer que la experiencia fsica es igual a la simulada es pensar que

    Second Life es igual a la vida misma. Y no es as, no?

    SIMULADORES

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 36

  • se usan en un mouse tradicional, quecuentan la cantidad de veces que re-cibe seal el sensor ptico de una rue-dita que tiene ventanitas cada deter-minado ngulo (podemos abrir unopara verlo, el mecanismo es sencillo).

    Sensores de efecto hall: estos sen-sores utilizan una propiedad de losimanes, que modifican su conduc-tividad cuando encuentran un ob-jeto metlico (Figura 22).

    Sensores de luz o brillo: detectanla cantidad de luz que reciben. Se-gn el tipo de sensor utilizado, poreste mecanismo podemos detectardiferencias entre los colores, si s-tos no son brillantes.

    Sensores infrarrojos: envan unaseal infrarroja y determinan eltiempo que tardan en volver a reci-birla. Permiten detectar obstculos(si la seal vuelve) o medir distan-cias si el sensor es preciso.

    Sensores de ultrasonido: comoexplicamos antes, envan una sealsonora y captan el rebote, de lamisma manera en que lo hace unSonar en el mar.

    En los ltimos tiempos, gracias a laposibilidad de contar con mucha ca-pacidad de procesamiento en tamaoreducido, se ha comenzado a utilizarel video como sensor de los robots.

    Introduccin a la robtica

    37

    Figura 23. Laser Sick, usado como sensor por su magnfica precisin.

    Una de las dificultades ms complejas en el desarrollo de robots es la de darles la

    capacidad de adaptarse en tiempo real al mundo que los rodea. Por ejemplo, los sis-

    temas de visin son muy dependientes de la luz que existe en el ambiente. Por esa

    razn, es habitual que en las competencias de robots, los equipos que han tenido un

    gran desempeo en das anteriores, ante un leve cambio de iluminacin no puedan

    realizar prcticamente ninguna tarea.

    ROBOTS ADAPTATIVOS

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 37

  • El procesamiento de imgenes es untema muy complejo y apasionante almismo tiempo, y escapa a la arquitec-tura y los costos de fabricacin de losrobots que nos hemos propuesto pa-ra este libro. Pero seguramente, enpoco tiempo podremos utilizar nues-tras webcam en forma sencilla y eco-

    nmica para nuestras creaciones. Lascmaras son los sensores que ms da-tos nos proveen en un lapso de tiem-po muy breve. El problema funda-mental es que necesitamos muchotiempo de procesamiento en algorit-mos complejos para extraer informa-cin til de semejante cantidad de

    1. CONCEPTOS FUNDAMENTALES

    38

    Hasta hoy, el movimiento de los robots se ha realizado con motores. Pero si queremos

    imitar el movimiento de organismos vivos, ninguno de ellos utiliza este tipo de dispo-

    sitivos. Es por eso que se ha desarrollado otro tipo de sistema de movimiento conoci-

    do como msculos de alambre (wired muscles). Los msculos de alambre son, como

    su nombre lo indica, alambres que cambian su longitud cuando se calientan, lo que se

    puede lograr al pasar corriente elctrica por ellos (Figura 24).

    MSCULOS DE ALAMBRE

    Figura 24. En esta imagen podemos ver un insecto robtico que,en lugar de motores, utiliza msculos de alambre.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 38

  • bits. Es en este tipo de algoritmosdonde podremos encontrar con msclaridad el dilema a resolver entrevelocidad y precisin.

    ActuadoresSi nuestro robot slo observara elmundo sin actuar en l, sera un robotsumamente limitado. Nuestro deseoes que modifique su estado y el delambiente segn la informacin queobtiene en el proceso. Con este fin,disponemos de motores, msculos dealambre, lmparas, displays, buzzers,etctera. Al conjunto de estos disposi-tivos se lo denomina actuadores.Los actuadores ms sencillos de utili-zar son las lmparas, que no ameritandemasiada descripcin para su uso.Simplemente, con conectarlas a algu-na salida del procesador y proveer laalimentacin necesaria para su fun-cionamiento, podremos encenderlasy apagarlas con nuestro programa.Sin embargo, pondremos nuestro fo-co de atencin en los motores, dadoque definen en gran medida nuestracapacidad de desplazamiento, losgrados de libertad y otros aspectosvinculados al movimiento del robot.Por definicin, el motor elctrico esun dispositivo electromotriz, es decir,que convierte la energa elctrica enenerga motriz. Todos los motoresdisponen de un eje de salida para aco-plar un engranaje, una rueda, una po-lea o cualquier mecanismo capaz de

    transmitir el movimiento creado porel motor. La etapa de eleccin de unmotor puede ser una tarea muy com-plicada segn las limitaciones denuestro proyecto, si tenemos encuenta todas las caractersticas quedefinen al motor. stas son: tamao,peso, velocidad (revoluciones por mi-nuto, RPM), torque (kilogramo porcentmetro) tensin y, la ms sensi-ble: el costo. En la actualidad, existendiferentes tipos de motores, que des-cribiremos a continuacin:

    Motores de corriente continua (CC)Son los motores ms comunes y quecasi todos conocemos (Figura 25). Engeneral, los encontramos en cualquier

    Introduccin a la robtica

    39

    Dentro de su produccin literaria basa-

    da en la robtica, Asimov defini tres

    leyes para la proteccin de los huma-

    nos que los robots de ficcin tienen al-

    macenadas en su cerebro positrnico.

    stas son:

    1. Un robot no puede hacerle dao a un

    ser humano o, por inaccin, permitir que

    un ser humano sufra dao.

    2. Un robot debe obedecer las rdenes

    de un humano, salvo que alguna de s-

    tas entre en conflicto con la primera ley.

    3. Un robot debe proteger su propia

    existencia, salvo que esto viole la pri-

    mera o la segunda ley.

    LEYES DE LA ROBTICA

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 39

  • tipo de juguete (un buen lugar don-de ir a buscarlos!). El funcionamien-to del motor se basa en la accin decampos magnticos opuestos que ha-cen girar el rotor (eje interno) en di-reccin opuesta al estator (imn ex-terno o bobina). De este modo, si su-jetamos la cubierta del motor por me-dio de soportes o bridas, el rotor conel eje de salida ser lo nico que gira-r. Para cambiar la direccin de giroen un motor de corriente continua,tan slo debemos invertir la polaridadde su alimentacin elctrica.

    Un detalle importante es que, casisiempre, se utilizan acompaados deun sistema de engranajes que reducenla velocidad y proporcionan mayorfuerza, dado que este tipo de motorescarece de esta cualidad. Es convenien-te conseguir el conjunto completoporque las adaptaciones son compli-cadas y pocas veces se obtienen muybuenos resultados.

    Motores paso a paso (PAP)Un motor paso a paso (Figura 26) sediferencia de uno convencional por-que puede ubicar su eje en posicio-nes fijas o pasos, con lo cual es ca-paz de mantener la posicin. Estapeculiaridad se debe a la construc-cin del motor en s: por un lado,tiene el rotor constituido por unimn permanente, y por el otro, elestator construido por bobinas. Alalimentar alguna de esas bobinas, seatrae el polo magntico del rotoropuesto al polo generado por la bo-bina, y ste permanece en esta posi-cin hasta que la bobina deje de ge-nerar el campo magntico y se acti-

    1. CONCEPTOS FUNDAMENTALES

    40

    Como comentamos anteriormente, Lego tuvo la precaucin de liberar muchsima

    informacin sobre sus diseos de manera que otros pudieran desarrollar material

    para sus kits. Es por eso que podemos encontrar varios lenguajes para poder pro-

    gramar los robots de esta firma. Adems, tambin se pueden conseguir los planos

    de los sensores de todo tipo. Una de las pginas ms conocidas de sensores case-

    ros es www.extremenxt.com/lego.htm.

    FANTICOS DE LEGO

    Figura 25. Motores y motorreductores

    de corriente continua.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 40

  • ve otra bobina, lo cual hace avanzaro retroceder al rotor. De esta mane-ra, al variar los campos magnticosen torno al eje del motor, se lograque gire. Los motores PAP puedenser de dos tipos: Bipolar: lleva dos bobinados indepen-dientes. Para controlarlo se necesita in-vertir la polaridad de cada una de lasbobinas en la secuencia adecuada. Unipolar: dispone, normalmente,de 5 6 cables, dependiendo de si elcomn est unido en forma internao no. Para controlar este tipo de mo-tores existen tres mtodos con suscorrespondientes secuencias de en-cendido de bobinas. El comn irconectado a +VCC o masa segn elcircuito de control usado y, luego,slo tendremos que alimentar la bo-bina correcta para que el motoravance o retroceda segn avancemoso retrocedamos en la secuencia. Es-tos motores son muy utilizados endisqueteras, lectoras de CD e impre-soras. En las antiguas disqueteras de51/4, podemos encontrar algunosbastante poderosos, y en las lectoras

    de CD, unos ms pequeos perosiempre acompaados de buenos me-canismos reductores.

    ServomotoresEl servo (Figura 27) es un pequeo pe-ro potente dispositivo que dispone ensu interior de un pequeo motor conun reductor de velocidad y un multi-plicador de fuerza. Tambin cuentacon un pequeo circuito elctrico en-cargado de gobernar el sistema. El re-corrido del eje de salida es de 180 en

    Introduccin a la robtica

    41

    Figura 26. Vista interna

    de un motor paso a paso.

    Una de las herramientas fundamentales para detectar errores en nuestro robot es

    la posibilidad de mostrar en un display el valor de los sensores, las variables, etc-

    tera. El problema es que como se trata de un ente autnomo, tendramos que co-

    rrer detrs de l para ver qu ocurre y leer los valores que se muestran en el dis-

    play. Es por eso que usualmente al robot se le agrega un buzzer que nos permite

    emitir sonidos y enterarnos de lo que sucede.

    BUZZERS PARA DETECTAR ERRORES

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 41

  • la mayora de ellos, pero se puede mo-dificar con facilidad para tener un re-corrido libre de 360 y, entonces, ac-tuar como un motor comn.El control de posicin lo efecta elservo en forma interna mediante unpotencimetro que va conectado enforma mecnica al eje de salida. stecontrola un PWM (Pulse Width Mo-duler, modulador de anchura de pul-

    sos) interno para compararlo con laentrada PWM externa del servo, me-diante un sistema diferencial y as,modificar la posicin del eje de sali-da hasta que los valores se igualen yel servo se detenga en la posicin in-dicada. En esta posicin, el motor delservo deja de consumir corriente yslo circula una pequea cantidadhasta el circuito interno. Si en ese

    1. CONCEPTOS FUNDAMENTALES

    42

    Los nanobots son robots de tamao microscpico, cuyas dimensiones estn en el or-

    den de una millonsima de milmetro. Se realizan con tcnicas de nanotecnologa y,

    aunque an son ensayos y especulaciones tericas, ya se han dado pasos para su con-

    crecin. Esencialmente, se han desarrollado nanobots qumicos o moleculares con fun-

    ciones limitadas. La aplicacin para estos futuros robotitos est apuntada a la medici-

    na, la industria, la ecologa y la produccin de alimentos.

    NANOBOTS

    Figura 27. Servomotor tradicional de la marca Hitec.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 42

  • momento forzamos el servo (al mo-ver el eje de salida con la mano), elcontrol diferencial interno lo detectay manda la corriente necesaria al mo-tor para corregir la posicin.Para controlar un servo, tenemos queaplicar un pulso de duracin y unafrecuencia especficos. Todos los ser-vos disponen de tres cables: dos pa-ra la alimentacin y uno para aplicarel tren de pulsos de control que ha-rn que el circuito de control dife-

    rencial interno ponga el servo en la po-sicin indicada por la anchura del pul-so. Los servomotores son una muybuena alternativa, ya que traen inte-grado un sistema reductor que nosahorrar dolores de cabeza a la hora debuscar fuerza. La desventaja para al-gunas aplicaciones es que, en general,son lentos. Se utilizan mucho en losautomviles y aviones radiocontrola-dos, principalmente para accionar elmecanismo que les da la direccin.

    Introduccin a la robtica

    43

    RESUMEN

    En este primer captulo hemos hecho una breve introduccin a los conceptos fun-

    damentales de la robtica. Un robot no es ms que un dispositivo con un deter-

    minado grado de movilidad, que puede realizar un conjunto de tareas en forma

    independiente y se puede adaptar al mundo en el que opera. Existen diversos ti-

    pos de robots, segn el uso para el cual se han destinado, el medio en el que se

    mueven, la capacidad de autonoma que presentan, etctera.

    Cualquiera de estos robots est dirigido por una unidad de procesamiento, que se

    puede adquirir en forma completa con todas sus comunicaciones de entrada y sa-

    lida resueltas, o que podemos desarrollar desde cero con micros, dispositivos

    porttiles o, simplemente, motherboards de PC.

    Adems, necesita de sensores para poder captar el mundo. Cuanto ms complejo

    sea un sensor y ms datos nos provea, tendremos que renunciar a ciertos aspec-

    tos de velocidad para obtener informacin ms precisa. Por ltimo, para que el ro-

    bot pueda trasladarse y actuar sobre el entorno, necesitamos de los actuadores.

    Los esenciales y ms usados son los motores, de los cuales tenemos diversos ti-

    pos segn el objetivo de nuestro robot y la cantidad de dinero que poseamos.

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 43

  • 44

    TEST DE AUTOEVALUACIN

    1 Cul es nuestra definicin de robot?

    2 Qu clasificaciones encontramos de

    los diferentes tipos de robots?

    3 Cules son las unidades que presen-

    ta un robot?

    4 Compare las ventajas y desventajas del

    uso de un kit de robtica o el desarrollo

    desde cero del procesamiento del robot.

    5 Si desarrollamos la unidad de procesa-

    miento por nuestros propios medios,

    qu dispositivos podemos utilizar?

    ACTIVIDADES

    6 Qu es un sensor? Cul es la diferen-

    cia entre sensores activos y pasivos?

    7 Cules son los tipos de sensores con

    los que podemos contar en la elabora-

    cin de nuestro robot?

    8 Qu ventajas y desventajas presenta

    el uso de video como entrada de datos

    de un robot?

    9 A qu llamamos actuadores?

    10Qu tipos de motores encontramos

    en el mercado?

    01_ROBOTICA.qxd 24/10/2007 02:02 p.m. Pgina 44

  • Componentes del robot

    Captulo 2

    Antes de comenzar a construir nuestro

    robot, daremos una mirada general

    a todos los componentes

    que lo conformarn. Desde

    ya que elegiremos puntualmente

    alguno de ellos, pero con este captulo

    nos ser sencillo seleccionar otras

    variantes segn el objetivo que

    tengamos para nuestro robot.

    Robtica

    SERVICIO DE ATENCIN AL LECTOR: [email protected]

    Una mirada global a nuestro futuro robot 46

    Objetivos de nuestro robot 47Tipo de procesamiento seleccionado 48Cmo le damos movimiento a nuestro robot? 50Y cmo captamos el mundo que nos rodea? 53Materiales para la mecnica 55

    Resumen 59Actividades 60

    02_ROBOTICA.qxd 24/10/2007 05:02 p.m. Pgina 45

  • UNA MIRADA GLOBAL A NUESTRO FUTURO ROBOTComo hemos podido ver en el primercaptulo, la cantidad de variantes quetenemos para construir nuestro robotes inmensa. Es por eso que en estecaptulo, presentaremos los materia-les que hemos decidido utilizar paranuestra primera creacin, y justifica-remos la eleccin que hemos realiza-do. En primer lugar, vamos a dar unpaseo por el mundo de los micropro-cesadores, introduciremos un conjun-to de conceptos que nos sern im-

    prescindibles a la hora de construir elcontrolador de nuestro robot. Luegoveremos el tipo de motores que vamosa utilizar y dnde podemos conse-guirlos. Para esto podremos desarmaralgn equipo electrnico antiguo, co-mo disqueteras, impresoras, etctera.Luego, haremos lo mismo con lossensores, siempre con el objetivo degastar la menor cantidad de dineroposible en nuestro primer proyecto(luego vendrn proyectos multimi-llonarios!). Y por ltimo, echaremosuna mirada sobre el material que po-demos utilizar para la construccindel cuerpo de nuestro robot.

    2. COMPONENTES DEL ROBOT

    46

    Figura 1. Ejemplo de un robot artesanal con diversos sensores.

    02_ROBOTICA.qxd 24/10/2007 05:02 p.m. Pgina 46

  • Objetivos de nuestro robotPara la eleccin de todos los compo-nentes de nuestro robot, es necesarioque fijemos claramente cules sernlos objetivos, es decir, las tareas quequeremos que nuestro robot realice.La primera decisin fundamental esdefinir si vamos a utilizar un kit oconstruiremos nuestro robot desdecero en forma artesanal. Es una deci-sin fundamental porque implica unpresupuesto mucho ms alto en el pri-mer caso y, de alguna manera, tam-bin acota las posibilidades de lo quevamos a disear. Por otra parte, en elprimer captulo ya enumeramos lasventajas que brinda el uso de un kit,pero en nuestro proyecto vamos a de-sarrollar el robot desde cero, paso apaso, componente por componente.En nuestro caso, la primera razn porla que lo haremos de esta manera esporque as vamos a aprender muchoms sobre todas las capas que com-ponen al robot. La segunda razn, nomenos importante, es el costo denuestro proyecto. La idea es que po-damos reutilizar elementos que en-contremos en desuso. Un humildeaporte ecolgico de nuestra parte.Bien, ahora que hemos decidido ar-mar en forma artesanal nuestro pri-mer robot, tenemos que dejar en cla-ro qu es lo que queremos que haga.En este libro, nuestro objetivo es re-alizar un robot que pueda, en dife-rentes adaptaciones, detectar obje-

    tos y esquivarlos, seguir una lneanegra, y buscar una luz.Cuando decimos diferentes adaptacio-nes, lo que queremos acentuar es queno necesariamente har las tres cosas elmismo robot. Vamos a organizar dife-rentes proyectos, con mnimas modi-ficaciones entre uno y otro, para lograrlos tres objetivos. Luego, si combina-mos la capacidad de tocar objetos conla deteccin de la lnea negra, podre-mos construir un luchador de sumo. Ypara realizar un sencillo jugador de ft-bol, uniremos la deteccin de luz conel tacto de los objetos, dado que nosprepararemos para una categora que

    Una mirada global a nuestro futuro robot

    47

    Figura 2. Partido de ftbol de robotsdonde se utiliza una pelota infrarroja.

    02_ROBOTICA.qxd 24/10/2007 05:02 p.m. Pgina 47

  • usa una pelota infrarroja (Figura 2). Pe-ro ya llegaremos a este punto dentro deunas cuantas pginas. Comencemoscon el procesamiento.

    Tipo de procesamiento seleccionadoSi seguimos la lnea que acabamosde presentar, decidimos realizarnuestro controlador basndonos enun microcontrolador que fueraeconmico y de uso popular. Pero,para empezar, veamos qu es esto delos microcontroladores. A esta al-tura del siglo XXI, no nos sorpren-

    de encontrar en cualquier casa u ofi-cina una computadora, con sus uni-dades de entrada, de salida y de pro-cesamiento. Y estas computadoras,para nuestra alegra, se reducen cadavez ms en precio y tamao. Pero,cul es el lmite de esta reduccin?Aquellos que usaron un dispositivoporttil, como una PDA, habrn no-tado que la pantalla y el teclado son,en estos momentos, los puntos cr-ticos de reduccin. Ahora bien, si nonecesitramos informacin por unapantalla y el ingreso por teclado,podramos tener una computadoramucho ms pequea? S, podemos,y de alguna manera eso es un mi-crocontrolador, un circuito integra-do, con CPU, memoria y conexinpara entradas y salidas. Todo esto, enun tamao muy reducido, no mayoral de una estampilla.Si lo vemos de esta manera, pode-mos confundir un microcontroladorcon un microprocesador. En qu sediferencian? Principalmente, en queel microcontrolador suma a un mi-croprocesador un conjunto de ca-ractersticas electrnicas que lo ha-

    2. COMPONENTES DEL ROBOT

    48

    La primera prueba sorprendente que realizaremos con un robot, y la competencia

    ms habitual en los torneos de robots, es el seguimiento de una lnea. En general,

    esta prueba est condimentada con otras dificultades, como la presencia de obst-

    culos que tenemos que esquivar, variaciones de iluminacin o de colores en la l-

    nea, secciones donde la lnea desaparece, etctera.

    SEGUIDOR DE LNEA (LINETRACKER)

    Figura 3. Uno de los micros de la firma Atmel.

    02_ROBOTICA.qxd 24/10/2007 05:02 p.m. Pgina 48

  • cen menos dependiente de los chipsde apoyo. Por ejemplo, la memoria,los conversores analgico digitales yel reloj, ya estn incluidos dentro delos microcontroladores.Y para qu sirve un microcontrola-dor? Bueno, tener una computadorade ese tamao nos permitira contro-lar en forma medianamente inteligen-te diversos dispositivos. Y esto es loque ocurre alrededor nuestro: en el au-to, en la heladera, en el microondas oen el lavarropas, con seguridad podre-mos encontrar uno o ms microcon-troladores, que hacen muchsimo mssencilla la electrnica del aparato. Algunos de los microcontroladores sonde propsito especfico, es decir, fuerondiseados y optimizados para una tarea

    determinada. En general, estos micro-controladores no pueden ser reprogra-mados, por lo que tambin contamoscon micros de propsito general, quepueden ser programados en diversoslenguajes y con destinos de todo tipo.Las empresas de microprocesadores depropsito general ms conocidas sonMicrochip (PIC) y Atmel (AVR).Pondremos nuestra atencin en la pri-mera de las dos, dado que el micro queusaremos ser el PIC 16F88. Micro-chip Technology Inc. es una empre-sa de electrnica de Estados Unidos,surgida de la empresa GI (General Ins-truments). Del conjunto de productosque ha fabricado, la lnea PIC (Perip-heral Interface Controller, Controladorde Interfaz Perifrico) de microcon-

    Una mirada global a nuestro futuro robot

    49

    Figura 4. Un microcontrolador PIC montado en una placa controladora GoGo.

    02_ROBOTICA.qxd 24/10/2007 05:02 p.m. Pgina 49

  • troladores ha sido su bastin funda-mental (Figura 4). Una de las carac-tersticas ms importantes de estos mi-cros es que son de tipo RISC (Redu-ced Instruction Set Computer, Compu-tadora con Conjunto de Instruccio-nes Reducido) en contraposicin conla arquitectura CISC (Complex Ins-truction Set Computer, Computadoracon Conjunto de Instrucciones Com-plejo). Esto implica que tienen unconjunto reducido de instruccionesde tamao fijo con respecto a la can-tidad de ciclos de reloj (en general, to-das las instrucciones necesitan de unsolo ciclo de reloj) y que slo las ins-trucciones de carga y almacenamien-to acceden a la memoria. Las ventajasque estas (y otras) caractersticas nosbrindan son que la ejecucin es msrpida y que permite el paralelismoentre instrucciones mediante una tc-nica llamada pipelined. La desventaja radica en que la pro-gramacin con este reducido conjun-to de instrucciones tan atmicas im-plicar ms trabajo. Con respecto alos PIC, las caractersticas fundamen-tales que podemos encontrar entre losdiferentes modelos son: Ncleo de 8/16 bits con arquitec-

    tura Harvard (las memorias de ins-trucciones y de datos estn separa-das, y la CPU accede a ella por bu-ses distintos).

    Puertos de E/S con conversoresanalgicos/digitales.

    Memoria Rom y Flash. Temporizadores. Perifricos serie.

    La arquitectura bsica de todos losPICs contiene una memoria de datos,una memoria de programa, una unidadaritmtico lgica, una unidad de con-trol y puertos de E/S (entrada y salida).De todos los modelos, hemos elegidoel 16F88 para realizar nuestro robot. Espor eso que en el prximo captulo nosdetendremos a analizar en forma deta-llada este micro en particular.

    Cmo le damos movimientoa nuestro robot?En el primer captulo, ya hemos des-cripto el tipo de actuadores que po-demos encontrar en un robot. Ennuestro caso, usaremos motores decorriente continua (cc) entre 8V y12V, con un consumo no superior a100 mAmp, que describiremos enprofundidad ms adelante. Estos mo-tores son ms econmicos y sencillosde controlar, pero en general carecende precisin y fuerza (Figura 5). Parasolucionar este problema, recomenda-mos los motores con caja de reduccinincorporada (conocidos como moto-rreductores), que poseen un pequeomotor que gira a muchsimas revolu-ciones, unido a un sistema de reduc-cin que permite obtener fuerza conmenor velocidad. Para nuestro robotutilizaremos un sistema de traccin

    2. COMPONENTES DEL ROBOT

    50

    02_ROBOTICA.qxd 24/10/2007 05:02 p.m. Pgina 50

  • diferencial, dado que es el ms senci-llo de controlar desde nuestro pro-grama (Figura 6). Este sistema utilizados ruedas convencionales ubicadasen el centro del robot, una de cada la-do, conectadas directamente a losmotores. Esto nos dar la posibilidadde ir para adelante o para atrs, deaplicar la misma energa en ambosmotores, o de realizar giros segn ladiferencia de velocidad de cada mo-tor. El recorrido en forma recta esdifcil de conseguir en esta arquitec-tura dado que siempre encontramosdiferencias de velocidad entre los mo-tores o en el giro de las ruedas, des-plazamientos, etctera. Una de lasmaneras de controlar esto es realizarun sensado del mundo. Por ejemplo,si tenemos que seguir una lnea ne-gra, bastara con tener uno o dos sen-sores de luz que nos permitan detec-tar nuestra desviacin de la lnea pa-ra modificar la velocidad de los mo-tores. Otra manera es sensar el movi-miento de las ruedas con encoders si-milares a los que se utilizaban en unmouse antiguo. El problema de estemecanismo es que necesitamos de

    electrnica especfica para este con-trol, algo que escapa a nuestro pri-mer proyecto. Por eso, por ahora nosconformaremos con que vaya me-dianam