Entorno de programación con tres niveles de complejidad para robótica móvil (2012)
Este artículo presenta un entorno de programación concebido para apoyar la enseñanza en STEM y en particular la enseñanza de robótica móvil. Este ha sido diseñado para soportar un aprendizaje progresivo, desde personas sin conocimientos en programación o robótica, hasta expertos. El entorno es multiplataforma y edificado con herramientas de software libre. Las funcionalidades de percepción, movilidad, comunicación, navegación, y los comportamientos colaborativos, se pueden programar para diferentes robots móviles. El usuario puede programar los robots utilizando diversos tipos de lenguajes e interfaces de edición: 1) desde un ambiente gráfico de programación por bloques (nivel básico); 2) empleando un metalenguaje basado en XML (nivel intermedio); o 3) usando el lenguaje de programación nativo del robot ANSI C (nivel avanzado). El entorno soporta la traducción de los programas entre los distintos lenguajes de forma transparente al usuario o de forma explícita si este lo desea. El usuario dispone de interfaces para la solución de retos propuestos y la capacitación por medio de ejemplos. El diseño del entorno permite extensibilidad, adaptabilidad de interfaces, manejo de persistencia y bajo acoplamiento software/hardware. Se realizaron pruebas funcionales para comprobar las especificaciones de acuerdo con las cuales fue construido el entorno. Para las pruebas se utilizaron los robots móviles UV BOTs.