Robot seguidor de línea con Lego Mindstorms NXT

En este artículo comparto las instrucciones para construir y programar un robot seguidor de línea usando un paquete Lego Mindstorms NXT 1 ó 2.0.

Construcción del robot seguidor de línea

Para la construcción del robot, las instrucciones están basadas en el Mini Sumo Bot de Dave Parker (http://61lx.com/robot/expert/mini_sumo/steps.html).

Programación del robot seguidor de línea

Se usa el lenguaje de bloques NXT-G, propio del Lego Mindstorms NXT.

Prueba del robot seguidor de línea

Para esto se requiere una línea negra en el piso o una mesa. La línea debe estar en forma de círculo u óvalo. Puede hacerse con cinta de aislar color negro.

NOTA: El programa ejemplo solamente funcionará con una línea en forma de círculo u óvalo. Si la figura tiene curvas hacia adentro el robot se saldrá fácilmente del recorrido.

El programa es un ejemplo, el reto siguiente es modificarlo para que pueda seguir una línea con diferentes curvas.

Descargar archivo PDF.

El equipo Los Galácticos de Julio Sandria participará en la RoboCup 2014 en Brasil

Primer lugar nacional

Gracias a que ganamos el PRIMER LUGAR en el Torneo Mexicano de Robótica 2014 (TMR 2014), obtuvimos un pase para participar en la competencia internacional RoboCup 2014 en Joao Pessoa, Brasil (www.robocup2014.org).

En las siguientes fotos, tenemos a los tres niños del equipo Los Galácticos, campeones de la categoría RoboCupJunior Soccer L. Primary en el TRM 2014 y sus dos robots con el trofeo de 1er lugar.

Durante los meses de mayo y junio de 2014 estaremos preparando a los niños para hacer los cambios necesarios al diseño de los robots y programación para ser competitivos a nivel internacional.

Solicitamos patrocinadores

Para la competencia nacional en Ciudad del Carmen, Campeche, únicamente tuvimos patrocinio de RobotSA, microempresa de tecnología. Para competir en Brasil, estamos buscando más patrocinadores.

Si te interesa patrocinar un equipo de niños roboticistas, por favor consulta nuestros niveles de patrocinio en el sitio web del equipo:

O directamente con:

RoboCup 2014 – Los Galácticos a Brasil

El equipo Los Galácticos de Julio Sandria participará en la RoboCup 2014 en Brasil

Primer lugar nacional

Gracias a que ganamos el PRIMER LUGAR en el Torneo Mexicano de Robótica 2014 (TMR 2014), obtuvimos un pase para participar en la competencia internacional RoboCup 2014 en Joao Pessoa, Brasil (www.robocup2014.org).

En las siguientes fotos, tenemos a los tres niños del equipo Los Galácticos, campeones de la categoría RoboCupJunior Soccer L. Primary en el TRM 2014 y sus dos robots con el trofeo de 1er lugar.

Durante los meses de mayo y junio de 2014 estaremos preparando a los niños para hacer los cambios necesarios al diseño de los robots y programación para ser competitivos a nivel internacional.

Solicitamos patrocinadores

Para la competencia nacional en Ciudad del Carmen, Campeche, únicamente tuvimos patrocinio de RobotSA, microempresa de tecnología. Para competir en Brasil, estamos buscando más patrocinadores.

Si te interesa patrocinar un equipo de niños roboticistas, por favor consulta nuestros niveles de patrocinio en el sitio web del equipo:

O directamente con:

Torneo Mexicano de Robótica 2014 – PRIMER LUGAR

PRIMER LUGAR en RoboCupJunior Soccer L. Primary 
del Torneo Mexicano de Robótica 2014

M.I.A. Julio César Sandria Reynoso

En abril de 2014 participé con el equipo Los Galácticos que ganó el PRIMER LUGAR en la categoría RoboCupJunior Soccer L. Primary del Torneo Mexicano de Robótica 2014. El equipo representaba a RobotSA (microempresa de tecnología) y estaba formado por dos niños de 12 años, un niño de 13 años y Julio Sandria como Mentor.

Los robots jugaban futbol soccer en una pequeña cancha, y fueron armados y programados por los niños.

Al final de este artículo está el video editado por dos de los niños, con un resumen de los últimos tres partidos que ganó nuestro equipo. A continuación, la tabla final de la categoría en la que participamos, publicada por la Federación Mexicana de Robótica, en su sitio web http://www.femexrobotica.org/tmr2014/resultados.html

RCJ Soccer Lightweight Primary

Nombre del equipoInstitución
1er LugarLos GalacticosRobotSA
2do LugarYuhoo UceNetica SEJ Cinvestav, Jalisco
3er LugarAtomNetica SEJ Cinvestav, Jalisco

Anteriormente ya había participado con equipos de universitarios en otros torneos de robótica:

La idea de participar otra vez en torneos de robótica seguía latente desde hace varios años. En el 2003 empecé con paquetes de robótica Lego Mindstorms RIS 2.0 y desde el 2007 he adquirido algunos paquetes Lego Mindstorms NXT, Lego Mindstorms NXT 2.0 y Lego Mindstorms EV3.

En diciembre de 2011 compré dos bolas infrarrojas, ruedas omnidireccionales y sensores de compás e infrarrojo para empezar a hacer pruebas con robots futbolistas.

En febrero de 2014, usando el material preparado para mi Curso-Taller Programación de robots futbolistas con Lego Mindstorms NXT, inicié la preparación formal del equipo Los Galácticos y poco después también del equipo Sandria, para participar en el Torneo Mexicano de Robótica 2014 que se llevó a cabo en Ciudad del Carmen, Campeche (México), del 10 al 12 de abril de 2014.

El equipo Los Galácticos participó en la categoría RoboCupJunior Soccer Lightwight Primary, para niños de hasta 14 años. En esta categoría, los robots juegan fútbol soccer en equipos de dos contra dos.

RoboCup es una iniciativa mundial para fomentar el trabajo e investigación en robótica e inteligencia artificial. Su sitio web es www.robocup.org.

RoboCupJunior es una iniciativa educativa que promueve eventos locales, nacionales e internacionales para niños y jóvenes de hasta 19 años. Su sitio web es rcj.robocup.org.

Para formar un equipo competitivo, además de trabajar en el diseño y programación de los robots, construimos una cancha con las medidas reglamentarias para probarlos.

Los chicos regresaban de la escuela y dedicaban algunas horas a “jugar” con los robots futbolistas. Usamos robots Lego Mindstorms NXT, yo les enseñaba y explicaba el modelo que consideraba era el adecuado para armar y ellos lo armaban. También les expliqué la programación del Software Lego Mindstorms NXT para estos robots en particular, que entendieron bastante bien. De hecho, les sirvió mucho a dos de ellos haber participado en los cursos de verano que impartí en 2012 y 2013.

Los chicos llegaron a tener hasta cuatro robots futbolistas para hacer todas las pruebas necesarias antes de la competencia.

El segundo equipo, Sandria, participó con un robot de rescate, en la categoría RoboCupJunior Rescue A Secondary, para jóvenes de hasta 19 años. Hicieron un prototipo con un Lego Mindstorms NXT 2.0 y otro con un Lego Mindstorms EV3. Nos decidimos por el primero, porque aún no dominaban el segundo.

En la prueba de rescate nos faltó trabajar más, y el equipo obtuvo el sexto lugar de 21 equipos participantes. Aún así, estoy seguro que con el último esfuerzo que hicieron los chicos, aprendieron aún más sobre programación.

Durante el evento, en la Universidad Autónoma del Carmen, al llegar al área de competencias siempre nos recibía la mascota (en poster) que se ve en la foto siguiente. También saqué una foto de mi gafete como Mentor del equipo Los Galácticos.

En las siguientes imágenes, la foto de la izquerda muestra a los chicos sentados ante su mesa de trabajo, haciendo los últimos ajustes antes de su participación. En la foto derecha se ven las canchas para los juegos de RoboCupJunior Soccer y al fondo participantes de otras categorías.

En las siguientes fotos: Yo, durante un receso, fuera de la instalación techada dentro de la Unidad Deportiva del Campus II de la Universidad Autónoma del Carmen. Los chicos, a la entrada de la Unidad Deportiva del Campus II de la Universidad Autónoma del Carmen.

En la siguiente foto el equipo Los Galácticos antes del primer partido. Empatamos el primero, perdimos el segundo y ganamos el tercero, con lo que pudimos pasar a la siguiente ronda.

Ganamos en cuartos de final y semifinales. La siguiente foto es de antes de iniciar el partido final. Los chicos parecían nerviosos.

¡GANAMOS LA FINAL! Foto del recuerdo, con el equipo que quedó en segundo lugar.

Antes de la entrega de trofeos. Y Los Galácticos recibiendo el trofeo de primer lugar.

En la siguiente foto, los campeones de RoboCupJunior Soccer L. Primary con su trofeo. ¡FELICIDADES CHICOS!

De regreso en casa, los dos robots de Los Galácticos con el trofeo de 1er lugar.

A continuación, una imagen de la página de Resultados y Premios en el Sitio Web de la Federeción Mexicana de Robótica, mostrando en 1er Lugar a Los Galácticos de la institución RobotSA en la categoría RoboCupJunior Soccer Lightweight Primary del Torneo Mexicano de Robótica 2014.

En el siguiente video se muestra un resumen de los partidos de cuartos de final, semifinal y FINAL del equipo Los Galácticos, campeón de la categoría RoboCupJunior Soccer L. Primary en el Torneo Mexicano de Robótica 2014. El video lo editaron dos de los chicos del equipo. Los gritos de gol y ganamos son del Mentor.

Curso-Taller Programación de robots futbolistas con Lego Mindstorms NXT

Actualización del 20-Abr-2014: Gracias al material preparado para este curso, el equipo Los Galácticos de Julio Sandria ganó el PRIMER LUGAR en la categoría RoboCupJunior Soccer L. Primary durante el Torneo Mexicano de Robótica 2014. 🙂 ¡Felicidades a los niños ganadores! :).

Ver artículo completo.

Del 1º al 22 marzo de 2014, impartiremos el Curso-Taller Programación de robots futbolistas con Lego Mindstorms NXT. Es un curso introductorio de programación en lenguaje C, usando como plataforma de ejecución, robots Lego Mindstorms NXT, diseñados para jugar futbol. El curso tendrá una duración de 20 horas y se impartirá únicamente cuatro sábados de 9:00 a 14:00 horas. La sede está por confirmarse en la ciudad de Xalapa, Ver., (México). No se requiere saber programar.

En todo el mundo hay una fuerte iniciativa en fomentar el acercamiento de los jóvenes a la ciencia y tecnología, y una forma muy interesante y divertida es a través de la robótica. Particularmente, el diseño, construcción y programación de robots futbolistas crea un ambiente de colaboración, trabajo en equipo, investigación, aprendizaje y motivación al intentar hacer que una máquina se comporte de forma un tanto inteligente al hacerla jugar futbol.

Este curso-taller está dirigido principalmente a estudiantes profesores de Secundaria Preparatoria. Aunque, en caso de haber cupo podríamos aceptar también de nivel universitario, incluso público en general.

Robótica Lego – Lego Robotics

Mtro. Julio César Sandria Reynoso

Desde 2003 he trabajado con robots Lego Mindstorms RIS 2.0 y Lego Mindstorms NXT. En este artículo describo lo que he hecho con este interesante y divertido paquete de robótica.

Inteligencia Artificial y Robótica

En 2002 impartí mi primer curso de Inteligencia Artificial a estudiantes de la carrera de Ingeniería en Sistemas Computacionales Administrativos (ISCA) de la Universidad de Xalapa (UX, http://www.ux.edu.mx/), al terminarlo, pensé en agregar algo sobre robótica para hacerlo más práctico, interactivo e interesante para los estudiantes. 

En 2003 volví a impartir el curso de inteligencia artificial, para el cual compré el libro Stiquito for beginners: An Introduction to Robotics de James Conrad (2000). Di una breve introducción a la robótica apoyándome de dicho robot, aunque no quedé convencido de usarlo para el siguiente año, porque es un pequeño robot en forma de insecto, que se arma, se mueve con el calor generado por una pila y no hace algo realmente interesante.

A mediados de 2003 estuve buscando algún robot o paquete de robótica económico que pudiera usar con mis estudiantes de la UX, considerando siempre en usar algún lenguaje de programación como Java, C/C++, Visual Basic o Delphi, que yo dominaba. Dicha búsqueda me llevó al paquete de robótica Lego Mindstorms RIS 2.0(http://mindstorms.lego.com/), para el cual encontré que se podía programar en muchos lenguajes de programación, entre ellos Java, lenguaje que he estado usando para desarrollo de aplicaciones Web desde 2002.

A finales de 2003 me decidí y compré mi primer paquete Lego Mindstorms RIS 2.0. En diciembre de ese año estuve armando y programando con el software de Lego los diferentes modelos que traen la Constructopedia y el software. También aprendí a programarlos en Java, usando las APIs de leJOS (http://lejos.sourceforge.net/).

A principios de 2004 propuse en la UX que se compraran algunos paquetes del Lego Mindstorms RIS 2.0, y gracias al apoyo de la Ing. Araceli Torres, en ese entonces Jefa de las carreras de Ingeniería de la UX, se adquirieron 6 paquetes. 

En mayo de 2004, di mi primer curso de Programación en Java con robots Lego, el cual tuvo bastante aceptación, y en mi curso de Inteligencia Artificial (Feb-Jul 2004) los usé para un tema introductorio de Robótica.

Participación en concursos de robótica 

Primer Toreno Mexicano de Robots Limpiadores (2004)

En agosto de 2004 participamos en el 1er Torneo Mexicano de Robots Limpiadores, organizado por el Instituto Nacional de Astrofísica, Óptica y Electrónica (INAOE), la Universidad Popular Autónoma de Puebla (UPAEP) y la Universidad Veracruzana (UV) en las instalaciones de INAOE en Tonantzintla, Puebla; allí ganamos el segundo y tercer lugar con robots Lego programados en Java.

Segundo Toreno Mexicano de Robots Limpiadores (2005)

En 2005 también usé robots Lego Mindstorms RIS 2.0 en mi curso de Inteligencia Artificial, y con los alumnos de ese curso participamos en el 2do. Torneo Mexicano de Robots Limpiadores organizado por el INAOE, la UPAEP y la UV en el Edificio Carolino de la Benemérita Universidad Autónoma de Puebla (BUAP), en Puebla, Puebla; donde desafortunadamente no hicimos un buen papel. Por otra parte, en ese mismo torneo, con el Ing. Joaquín Cázares ganamos un segundo lugar con un robot construido desde cero con un microcontrolador PIC 16F84 programado en PIC-Basic. 

Tercer Torneo Mexicano de Robots Limpiadores (2006)

En 2006 también usé robots Lego Mindstorms RIS 2.0 en mi curso de Inteligencia Artificial con estudiantes de ISCA-UX y en el curso Análisis y Diseño de Sistemas con estudiantes de Ingeniería Electrónica y Comunicaciones (IEC) también de la UX. Ese año participamos en el 3er. Torneo Mexicano de Robots Limpiadores organizado por el INAOE, la UPAEP y la UV en instalaciones de la UV en Xalapa, Veracruz. Allí ganamos dos nombramientos al prototipo más ingenioso. Uno por un robot Lego programado en Java, armado por estudiantes de ISCA-UX y otro por un robot armado completamente desde cero, con un microcontrolador PIC, programado con Niple por estudiantes de IEC-UX.

¡Por fin ganamos en el 4° Torneo Mexicano de Robots Limpiadores!

Cuarto Toreno Mexicano de Robots Limpiadores (2007)

En 2007 usé otra vez robots Lego Mindstorms RIS 2.0 en mi curso de Inteligencia Artificial de la UX. Ese mismo año compré mi primer Lego Mindstorms NXT y colaboré durante 6 meses como investigador en el Centro de Investigación Innovación y Desarrollo Tecnológico, A.C. (CINNDET), donde hicieron una estancia estudiantes de ese curso de la UX y estudiantes de electrónica del Instituto Tecnológico Superior de Xalapa. 

Con ellos participamos en el 4° Torneo Mexicano de Robots Limpiadores organizado por el INAOE, la UPAEP y la UV en las instalaciones de la UPAEP en Puebla, Puebla. Finalmente ganamos dos primeros lugares, uno en la categoría principiantes con un robot Lego NXT programado con el propio software de Lego y otro en la categoría avanzados con un robot construido completamente desde cero con un microcontrolador AVR y programado en ensamblador.

Cursos y Talleres Programación de Lego Mindstorms con Java 

Desde 2004 he estado usando robots Lego Mindstorms RIS 2.0 y NXT para impartir cursos y talleres de robótica y programación Java, ya sea, aislados, de licenciatura o talleres de congresos.

  • Oct 2010. Taller Programación de Robots Lego Mindstorms NXT con Java (12 Hrs). En Congreso Internacional de Tecnología Aplicada (II CITA 2010) organizado por el Instituto Tecnológico Superior de Xalapa. Xalapa, Veracruz, México.
  • Feb 2010. Curso-Taller Programación de Robots Lego Mindstorms NXT con Java (24 Hrs). En el Instituto Tecnológico y de Estudios Superiores de Monterrey (ITESM) Campus Zacatecas. Zacatecas, México.
  • May 2007. Taller Programación de Robots Lego Mindstorms NXT (10 Hrs). En 1er Foro “Nuevas Tecnologías” Instituto Tecnológico Superior de Xalapa. Xalapa, Veracruz, México.
  • Mar 2007. Taller Minirrobótica Lego (4 hrs). En el XVII Congreso Interuniversitario de Eléctrica, Computación y Electrónica (CIECE 2007). Universidad Veracruzana, Facultad de Ingeniería Mecánica Eléctrica. Xalapa, Veracruz, México.
  • Ene 2007. Taller Introducción a la robótica (4 hrs). Universidad de Xalapa. Xalapa, Veracruz, México.
  • Mar 2006. Taller Programación en Java con robots Lego Mindstorms (4 hrs). En el Congreso Internacional de Ingeniería Industrial y Sistemas Computacionales c7. Instituto Tecnológico y de Estudios Superiores de Monterrey Campus Central Veracruz. Córdoba, Veracruz, México.
  • Nov 2005. Taller Breve introducción a Java con Lego Mindstorms (4 Hrs). En el 2° Congreso Nacional de Ingenierías CNTEC 2005. Instituto Tecnológico Superior de Xalapa. Xalapa, Veracruz, México.
  • Abr 2005. Curso-Taller Programación en Java con Robots Lego Mindstorms (20 Hrs.). Universidad de Xalapa, Xalapa, Veracruz, México. 
  • Mar 2005. Taller Breve introducción en Java con Lego Mindstorms (4 Hrs). En el Congreso Interuniversitario de Electrónica, Computación y Eléctrica (CIECE 2005) . IEEE. Puebla, Puebla, México.
  • May 2004. Curso-Taller Programación en Java con Robots Lego Mindstorms (20 Hrs.). Universidad de Xalapa, Xalapa, Veracruz, México.