LEGO Java Event Programming: Analisis

Análisis

Descripción del problema

El aprendizaje de un nuevo idioma es una realidad en todo ámbito de la formación personal.

En particular, cuando un niño desea aprender a programar, la principal dificultad consiste en la abstracción de los conceptos que debe asimilar para conseguirlo. Si el niño tiene a su disposición un robot programable y se le presenta una herramienta que le permita implementar rutinas de programación tradicionales y le muestre paralelamente el código asociado a cada evento, se conseguirá un aprendizaje casi inmediato.

Actualmente, existen herramientas similares como Robotics Invention System de LEGO o LEJOS con JAVA. Las aplicaciones como RIS son muy intuitivas y fáciles de usar, pero tienen un uso muy limitado y no son transparentes respecto al código de programación, además que requieren mucho espacio para almacenarse y consumen recursos innecesariamente. Los lenguajes como LEJOS permiten programar los robots sin necesidad de entorno gráfico y en lenguajes más avanzados, permitiendo mayor versatilidad y dominio del robot, pero esto requiere muchos conocimientos previos que dificultan un rápido aprendizaje.

Logros

Mediante la interfaz desarrollada, el niño puede desarrollar un programa sencillo, de manera intuitiva y rápida. A medida que escribe el programa, puede ver cómo se genera el código asociado a cada evento que incluye en su algoritmo. Una vez que el usuario ha logrado aprender a programar, puede desarrollar su propio código y utilizar a la interfaz sólo como compilador e intérprete con el robot, no restringiendo al usuario sólo a programación por bloques.

La aplicación es capaz de compilar el programa, enviar el código generado al robot y comunicarse con éste para realizar tareas útiles como cargar el firmware, correr el programa y hacer andar cualquier programa en el robot. De ésta manera, el usuario no necesita ninguna otra aplicación al momento de programar. Además, puede guardar el diagrama de bloques para su posterior uso.

En proceso...

Se pretende depurar el programa, mejorar la interfaz gráfica y ampliar la aplicación para ser usada también con los nuevos LEGO NXT, empleando código NXC.


Departamento de Electronica UTFSM
Contacto : pcastillo[at]elo.utfsm_cl - maldox[at]elo.utfsm_cl
Estilo : Rodrigo Gregorio y meatpixel(Jaime Martínez).