Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información. Aceptar

¿Qué es ROS?

Daniel Ortego Delgado
  • Escrito por Daniel Ortego Delgado el 21 de Septiembre de 2017
  • 1 min de lectura | Programación
¿Qué es ROS?

Robot Operating System (ROS) es un middleware robótico, es decir, una colección de frameworks para el desarrollo de software de robots. ROS se desarrolló originariamente en 2007 bajo el nombre de switchyard por el Laboratorio de Inteligencia Artificial de Stanford para dar soporte al proyecto del Robot con Inteligencia Artificial de Stanford (STAIR2). Desde 2008, el desarrollo continuó principalmente en Willow Garage, un instituto de investigación robótico con más de veinte instituciones colaborando en un modelo de desarrollo federado.

A pesar de no ser un sistema operativo, ROS provee los servicios estándar de uno de estos tales como la abstracción del hardware, el control de dispositivos de bajo nivel, la implementación de funcionalidad de uso común, el paso de mensajes entre procesos y el mantenimiento de paquetes. 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 a día de hoy como ‘experimentales’.

ROS tiene dos partes básicas: la parte del sistema operativo, ros, y ros-pkg. Esta última consiste en una suite de paquetes aportados por la contribución de usuarios (organizados en conjuntos llamados pilas o en inglés stacks) que implementan las 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 licencia permite libertad para uso comercial e investigador. Las contribuciones de los paquetes en ros-pkg están bajo una gran variedad de licencias diferentes.

Aunque está en proceso de desarrollo de aplicaciones, las áreas que ya incluye ROS son:

  • Un nodo principal de coordinación.
  • Publicación o subscripción de flujos de datos: imágenes, estéreo, láser, control, actuador, contacto, etc.
  • Multiplexación de la información.
  • Creación y destrucción de nodos.
  • Los nodos están perfectamente distribuidos, permitiendo procesamiento distribuido en múltiples núcleos, multiprocesamiento, GPUs y clústeres.
  • Login.
  • Parámetros de servidor.
  • Testeo de sistemas.

En las futuras versiones se espera que las siguientes áreas vayan apareciendo entre las aplicaciones de los procesos de ROS:

  • Percepción
  • Identificación de Objetos
  • Segmentación y reconocimiento
  • Reconocimiento facial
  • Reconocimiento de gestos
  • Seguimiento de objetos
  • Egomoción
  • Comprensión de movimiento
  • Estructura de movimientos (SFM)
  • Visión estéreo: percepción de profundidad mediante el uso de dos cámaras
  • Movimientos
  • Robots móviles
  • Control
  • Planificación
  • Agarre de objetos

Entre algunos de los robots que ya utilizan ROS se pueden encontrar:

  • PR1: robot personal desarrollado por el laboratorio Ken Salisbury en Stanford.
  • PR2: robot personal que está siendo desarrollado por Willow Garage.
  • Baxter de Rethink Robotics, Inc.
  • Robot de Shadow: mano robótica diestra motorizada desarrollada por la empresa Shadow y la cual se está desarrollando mediante el consorcio de un proyecto europeo dentro del marco europeo. Entre los participantes de este proyecto se pueden encontrar la empresa Shadow Robot, la Université Pierre et Marie Curie-Paris (Francia) o la Universidad Carlos III de Madrid (España).
  • HERB: desarrollado en CMU dentro del programa de robótica personal de Intel.

Estas son algunas de las empresas que ya confían en OpenWebinars

Profesores y profesionales

Nuestros docentes son profesionales que trabajan día a día en la materia que imparten

Conviértete en profesor de OpenWebinars