Robot Operating System

Sistema Operativo Robótico (en inglés Robot Operating System, ROS) es un framework para el desarrollo de software para robots que provee la funcionalidad de un sistema operativo en un clúster heterogéneo.Está basado en una arquitectura de grafos donde el procesamiento toma lugar en los nodos que pueden recibir, mandar y multiplexar mensajes de sensores, control, estados, planificaciones y actuadores, entre otros.La librería está orientada para un sistema UNIX (Ubuntu (Linux)) aunque también se está adaptando a otros sistemas operativos como Fedora, Mac OS X, Arch, Gentoo, OpenSUSE, Slackware, Debian o Microsoft Windows, considerados como 'experimentales'.ROS tiene dos partes básicas: la parte del sistema operativo, ros, como se ha descrito anteriormente y ros-pkg, una suite de paquetes aportados por la contribución de usuarios (organizados en conjuntos llamados pilas o en inglés stacks) que implementan la funcionalidades tales como localización y mapeo simultáneo, planificación, percepción, simulación, etc. ROS es software libre bajo términos de licencia BSD.Esta arquitectura descentralizada se presta bien a los robots, que a menudo consisten en un subconjunto de hardware informático en red, y pueden comunicarse con computadoras externas para realizar cálculos pesados.rosbag utiliza un formato de archivo llamado bags, que registra los mensajes de ROS mediante escuchar los ROS topic y grabando los mensajes en la medida que son emitidos.Catkin proporciona una estructura de directorios estándar en la que se organizan las dependencias y los archivos fuente del proyecto.El paquete rosbash package provee un conjunto de herramientas que aumentan la funcionalidad del Bash.Rosbash brinda soporte a las mismas funcionalidades para zsh y tcsh, en una menor cuantía.Las versiones, desde la más actual a la primera versión, son: Entre los robots y hardware soportado por ROS se pueden encontrar:[5]​ ROS-Industrial[7]​ es un proyecto de código abierto (de licencia BSD (Legacy)/Apache 2,0 (preferred)) que amplía las capacidades avanzadas de ROS a la automatización industrial y la robótica.El repositorio ROS-industrial incluye interfaces para Manipuladores industriales comunes, pinzas, sensores y redes de dispositivos.