Sistema Operativo para Robots (ROS), el 'framework' que marcará el camino a seguir en el sector
Grupo de Trabajo de Innovación (GTI) de AER Automation
07/03/2022La irrupción de sistemas robóticos en la industria está generando una creciente demanda de necesidades de comunicación entre los múltiples procesos involucrados. Las ‘fábricas inteligentes’ son ya un hecho tras la eclosión del 4.0; en ellas confluyen aplicaciones robóticas cuyo objetivo es conciso: sumar eficiencia a los procesos productivos. En este contexto, el Sistema Operativo para Robots (ROS, acrónimo del inglés Robot Operating System) adquiere un relieve estratégico. El Grupo de Trabajo de Innovación (GTI) de AER Automation ha llevado a cabo un análisis exhaustivo, cuyas conclusiones se recogen en el documento Robot Operating System (ROS). Con este nuevo documento, AER Automation – a través de sus grupos de trabajo– da un nuevo paso adelante en su propósito de aportar contenidos de valor para sus asociados y para la industria de la automatización en general.
El trabajo del GTI identifica ROS como un “elemento común e indispensable para el futuro de la robótica”. El documento ofrece información sobre el origen y las características técnicas de ROS, así como las nuevas extensiones (como ROS2 y ROS-Industrial). Además, incorpora una selección de casos de estudio que muestran su potencial en distintos contextos.
Orígenes y evolución de ROS para adaptarse a los diferentes casos de uso
ROS nació en 2007 tras la iniciativa llevada a cabo por Keenan Wyrobek y Eric Berger, dos estudiantes de doctorado de la Universidad de Stanford. Ambos detectaron la necesidad de crear un marco de trabajo flexible capaz de simplificar la programación e interconexión entre robots y dispositivos asociados en distintas plataformas. “Los siguientes años superaron todas las expectativas”, explica el documento elaborado por el Grupo de Trabajo de AER. “Los logros en el campo de la robótica se compartían de forma reproducible en ROS. La Fundación de Robótica de Código se convirtió en el administrador de ROS tras el cierre de Willow Garage en 2014 y la comunidad de ROS creció exponencialmente e incluso la industria comenzó a participar en la iniciativa”.
Las aplicaciones de ROS están compuestas de varios procesos independientes que comparten información a través de comunicaciones “fuertemente tipadas”. El documento del GTI nos recuerda que “esta estructura facilita el desarrollo de las aplicaciones” y “da robustez al sistema, ya que las posibles caídas informáticas quedan aisladas”.
Herramientas básicas y de alto nivel para el desarrollo de aplicaciones robóticas
El documento esboza un recorrido por las principales herramientas que ofrece este sistema para el desarrollo de aplicaciones robóticas. Entre ellas, destacan definiciones estándar de mensajes útiles para sistemas robóticos y un lenguaje para modelar robots. Por otro lado, ROS también ofrece herramientas avanzadas en áreas como percepción, planificación de tareas, definición de comportamientos del robot, trayectorias de robots manipuladores y localización y mapeado para robots móviles, entre otras.
ROS-Industrial y ROS2: las evoluciones del sistema operativo para dar respuesta a las nuevas necesidades en automatización
“ROS ha sido durante muchos años el sistema más utilizado para la programación de robots en entornos académicos y de investigación”, asegura el documento, y, con el objetivo de trasladar los desarrollos de ROS a la robótica industrial y la automatización, se creó ROS-Industrial. Este último utiliza ROS como base, sobre la que añade funcionalidades y paquetes. Por este motivo, “ROS-Industrial puede entenderse en muchos aspectos como desarrollos adicionales sobre el propio ROS, además de un compendio de actividades de soporte”.
El documento describe también tres ejes fundamentales de ROS-Industrial:
- Identificar los requerimientos de robótica industrial y automatización, y trabajar para llevarlos al ecosistema ROS
- Trasladar e institucionalizar conceptos de calidad de código fuente en ROS
- Actividades de soporte, formación y diseminación.
Justamente, la aplicación de ROS en el ámbito industrial propició la creación de ROS2. “Hacia 2014, para poder implementar más adecuadamente estos nuevos requerimientos (…) y dar un mejor soporte al mundo industrial y sus necesidades, se decide dar un salto y comenzar la implementación de ROS2”.
Como en el caso de ROS-Industrial, ROS2 nace y se apoya en ROS. Una de las principales diferencias la encontramos en la adopción de DDS (Data Distribution Service) como capa de comunicaciones.
Un documento para analizar las tendencias de ROS y facilitar su uso
Consciente de la relevancia de ROS en el futuro de la robótica, el Grupo de Trabajo de Innovación de AER hace un recopilatorio de recursos de aprendizaje y foros relacionados con ROS, con el objetivo de facilitar la formación y el acceso a este sistema operativo. El documento también muestra casos de estudio y explica aplicaciones en las que ROS es una herramienta útil. Entre ellas, destaca la arquitectura de control genérica basada en ROS para un desarrollo más rápido y simplificado de nuevas aplicaciones robóticas, o la célula robótica para acabado superficial de piezas.
Los casos de aplicación analizados demuestran, según el documento, “su potencial en distintos contextos”. La constante evolución tecnológica en la que nos vemos inmersos dificulta poder prever cómo será el mundo de la robótica a medio y largo plazo. Sin embargo, las prestaciones de ROS lo convierten en presente y futuro en el campo de la robótica. “Dada la difusión actual, es previsible que ROS marque el camino a seguir, ya sea con sus actuales características o con posibles variantes derivadas de ellas”.