Por: Alejandro D'Agostino [tw: @lale_ ] / Jueves, 8 de Mayo de 2014

miniBloq: el entorno argentino para programar robots usado en escuelas de todo el mundo

El programa es de código abierto y compatible con Arduino. Permite eliminar los errores en tiempo real y acortar la curva de aprendizaje. Y fue usado hasta por la Universidad de Harvard para enseñar robótica en África.

La Robótica es una de las ramas tecnológicas del momento, especialmente tras la aparición de plataformas abiertas como Arduino e iniciativas para enseñar esta disciplina en las escuelas. Uno de los entornos de desarrollo (IDE, según sus siglas en inglés) más interesantes para la enseñanza de robótica es miniBloq, creado por el argentino Julián da Silva Gillig y utilizado en escuelas de todo el mundo.

«miniBloq es un entorno gráfico sencillo. La idea es reducir al máximo los errores de sintaxis, para que el usuario se concentre en el programa que está desarrollando, algo muy importante, cuando se trabaja con chicos y principiantes. Además, en las escuelas primarias, al maestro también le suele costar tiempo identificar errores de sintaxis», explicó Da Silva Gillig en comunicación vía correo electrónico con RedUSERS.

«Tiene varias características orientadas a que quien lo utiliza vea rápidamente si se olvidó de algo, o si algo no está bien, entonces va agregando los bloques a su programa y se va enterando en el momento de qué cosas podrían no funcionar. Esto reduce mucho la curva de aprendizaje y el desarrollo de los proyectos chicos, a los que está orientado por ahora», completó el experto, quien por estas horas está en viaje de negocios en Estados Unidos.

redusers-minibloq-07Julián Da Silva Gillig (centro)redusers-minibloq-04redusers-minibloq-08Captura de miniBloq

Si bien miniBloq puede utilizarse para cualquier proyecto, en la actualidad se utiliza para la educación. Es más, las escuelas primarias de la provincia de San Luis tienen kits de armado RobotGroup y utilizan miniBloq. «Desde el 2010, entiendo que se han capacitado aproximadamente 80.000 chicos. Y el proyecto sigue creciendo. También se está utilizando en La Rioja, en Buenos Aires, en Capital y en otros lugares. Además, está traducido a 16 idiomas, y eso lo hizo voluntariamente gente de otras partes del mundo», añadió Julián, quien agregó que miniBloq es usado en escuelas de los cinco continentes, según los correos electrónicos que recibe y posts publicados en el foro.

«miniBloq está programado en GNU C/C++ (gcc), con las librerías open source wxWidgets. El IDE es una versión portable de Code::Blocks. La última versión además incluye una distribución de Portable Python para el nuevo mini simulador 2D que incluye, llamado miniSim, que permite aprender cosas básicas de robótica sin tener un robot«, se explayó Julián, quien adelantó que miniSim «está pensado para funcionar en las netbooks de Conectar Igualdad como hardware mínimo«.

Por otro lado, miniBloq es uno de los IDE preferidos para programar placas compatibles con Arduino debido a que es mucho más fácil de usar que el entorno oficial. Además, según remarcó el experto, permite agregar código textual o incluso programar sin los bloques. «Esto todavía está un poco verde, pero es parte de la estrategia para llevar a miniBloq a ser un IDE alternativo al Arduino IDE. Por otra parte, es el único entorno que permite pasar un proyecto de programación gráfica a textual, y viceversa con el proyecto ya comenzado», resaltó.

También es posible portar el código generado a otros IDE, pero como miniBloq usa varios lenguajes, puede ser una tarea difícil. «El código Python generado para miniSim corre perfectamente en IDLE, el IDE que viene con las distros de Python. El código C/C++ Arduino-compatible requiere algo de trabajo para usarlo con el Arduino IDE. No probé compilar con otros IDE de C++, pero en principio debería poderse. Y se puede agregar código textual a miniBloq y usarlo como IDE básico», se explayó Julián, quien está trabajando en una versión industrial de miniBloq.

La historia de miniBloq

redusers-minibloq-06
redusers-minibloq-05
redusers-minibloq-02

La historia de este programa comenzó en 1995, como derivado de un proyecto de ciencias escolar, cuando Julián desarrolló algunas interfaces de robótica que se conectaban al puerto paralelo y contaban con librerías para Logo, Visual Basic y Delphi. En 1997, lanzó MiniBloques, el ancestro de miniBloq, que le llevó unos dos meses de implementación.

«Tenía siete  instrucciones o bloques y permitía programar esas interfaces muy fácilmente, los colegios que lo usaron lo apreciaron bastante. Estaba desarrollado en Delphi y corría en Windows 3.1. Creo que fue un año antes de que salga el Lego RCX, que ya venía con programación gráfica», recordó este experto en robótica de 38 años.

Luego de renunciar a su trabajo en relación de dependencia en 2003, vendió el auto y armó con dos socios la firma XiOR S.A, donde comenzaron el desarrollo del sistema constructivo para robots Multiplo. Como le faltaba la programación gráfica, en 2007 se fue de la empresa y consiguió un aporte del FONSOFT, dos años más tarde ingresó como socio a RobotGroup, una empresa creada por la profesora de matemáticas Mónica Paves y el ingeniero químico Lucio Mercado. Finalmente, gracias al financiamiento colectivo vía Kickstarter, Multiplo y MiniBloq ya son una realidad. La firma RobotGroup suele exponer sus creaciones en Tecnópolis y recibió el premio Innovar en 2006, 2010 y 2011.

Monetización y futuro de miniBloq

Una de las grandes incógnitas de los proyectos de código abierto es cómo lograr que sean rentables. Por el momento, la monetización se basa en la venta de kits de robots para armar a través de RobotGroup y de su filial china, RobotGroup-Multiplo, pero se están analizando otras alternativas. «Ahora, justamente, estoy armando un nuevo modelo de negocios, donde cada fabricante puede pagar para agregar su hardware a la distribución oficial«, reveló el emprendedor.

Además, otras empresas han aportado al proyecto, como Seedstudio, de China; SparkFun, Tesla Robotics y Arcbotics, de Estados Unidos; doingIT, de Chile; y próximamente el USA STEM Center de Los Ángeles. Además, cada vez que Julián lanza una nueva versión para Windows, su amigo chileno Juan Pizarro compila una distribución para GNU/Linux.

El día que Harvard le ganó al MIT gracias a miniBloq

A la hora de recordar anécdotas, Julián destaca su última gran satisfacción. «El Self-Organizing Systems Research Group de la Universidad de Harvard se presentó a un concurso en África patrocinado por la IEEE para desarrollar un robot de ultra bajo costo, de alrededor de US$ 10, para enseñar robótica en ese continente«, confió el experto.

La competencia no era fácil, pues también participaba el Instituto de Tecnología de Massachussets (MIT), una de las universidades tecnológicas más prestigiosas del Mundo. Pero el proyecto de Harvard obtuvo el primer premio en la categoría Software gracias a su solución basada en un derivado de MiniBloq.

«Esta clase de proyectos pueden hacer la diferencia, porque llegan a chicos que no tendrían acceso de otra forma. Y que Harvard le gane al MIT en un concurso internacional usando miniBloq me pone más que contento», remató Julián.

De acuerdo con el emprendedor, las ventajas principales del producto son su carácter contextual, que permite mostrar sólo los bloques que se pueden colocar en el lugar donde el usuario está trabajando, evitando que tenga que buscarlos; genera código en tiempo real cada vez que el proyecto se modifica, mientas otras opciones generan el código cuando se presiona un botón; muestra errores en tiempo real cuando falta completar algo o un número está mal formateado; tiene un backend XML, lo cual permite agregar casi cualquier hardware (además de Arduino); y puede generar código C/C++ para Arduino y casi cualquier lenguaje orientado a objetos o imperativo.

Claro que aún faltan algunas cosas por mejorar y serán los próximos desafíos que enfrentará miniBloq. «La edición de los bloques deja todavía bastante que desear y tengo que optimizarlo mucho. Ahora, estoy trabajando en nuevo hardware de robótica y electrónica para fabricantes, donde miniBloq va a poder mostrar los esquemas físicos de conexión y coordinar esto con el código automáticamente. Además hay otras características sorpresa en las que estoy trabajando», señaló el emprendedor.

«El otro gran asunto es lanzar versiones para iOS y Android, pero para eso voy a necesitar apoyo económico. Quizá otro Kickstarter, no sé todavía», remata Julián, quien ya tiene algo de experiencia con el crowfunding: con miniBloq duplicó su meta monetaria, en tanto que con el sistema de robots para armar Multiplo recaudó 10 veces más de lo pretendido.

Fotos: Gentileza Julián da Silva Gillig

Link para desgargar miniBloq (Windows y Linux)

Galería de Imágenes

 Do NOT follow this link or you will be banned from the site!