Robot Operating System
Robot Operating System | ||
---|---|---|
![]() | ||
Información general | ||
Tipo de programa | Suite robótica, SO, librería | |
Autor | Willow Garage, Laboratorio de Inteligencia Artificial de Stanford | |
Desarrollador |
| |
Lanzamiento inicial | 2007 | |
Licencia | Licencia BSD | |
Idiomas | Inglés | |
Información técnica | ||
Programado en | C++, Python | |
Versiones | ||
Última versión estable | Melodic Morenia[1] (info) (23 de mayo de 2018) | |
Enlaces | ||
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. ROS se desarrolló originalmente 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 (STAIR[2]). Desde 2008, el desarrollo continua primordialmente en Willow Garage, un instituto de investigación robótico con más de veinte instituciones colaborando en un modelo de desarrollo federado.[3][4]
ROS provee los servicios estándar de un sistema operativo tales como abstracción del hardware, control de dispositivos de bajo nivel, implementación de funcionalidad de uso común, paso de mensajes entre procesos y 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 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 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.
Aplicaciones
Las áreas que 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.
Las áreas que incluirán las aplicaciones de los paquetes de ROS son:
- 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
Historial de versiones
Una versión de ROS puede ser incompatible con otra. Normalmente están referidas por un sobrenombre en vez de por una versión numérica. Las versiones, desde la más actual a la primera versión, son:
- 23/Mayo/2016 - Kinetic Kame
- 23/Mayo/2015 - Jade Turtle
- 22/Julio/2014 - Indigo Igloo
- 04/Septiembre/2013 - Hydro Medusa
- 31/Diciembre/2012 - Groovy Galapagos
- 23/Abril/2012 - Fuerte
- 30/Agosto/2011 - Electric Emys
- 02/Marzo/2011 - Diamondback
- 03/Agosto/2010 - C Turtle
- 01/Marzo/2010 - Box Turtle
- 22/Enero/2010 - ROS 1.0
Robots y hardware soportado
Entre los robots y hardware soportado por ROS se pueden encontrar:[5]
- Willow Garage PR2: robot personal que está siendo desarrollado por Willow Garage.
- Donaxi: robot de servicio desarrollado en el laboratorio de Control y Robótica de UPAEP
- PR1: robot personal desarrollado en el laboratorio de Ken Salisbury en Stanford.
- Robotnik: Empresa española de ingeniería especializada en robots móviles, brazos robóticos y soluciones industriales con arquitectura sobre ROS.
- 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 (FP7).[6] 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.
- STAIR I y II: robots desarrollados en el laboratorio de Andrew Ng en la Universidad de Stanford.
- Koen Buys (Embedded Sensor Lab): el laboratorio de robótica de la Katholieke Universiteit Leuven (Bélgica), donde han desarrollado la Beagleboard.
- Aldebaran Nao: el Humanoid Robots Lab de la University of Freiburg desarrolló una integración en ROS para el Humanoide Nao.
- Husky A200: robot desarrollado (e integrado en ROS) por.
Véase también
Referencias
- ↑ «ROS Melodic Morenia». wiki.ros.org. Consultado el 10 de junio de 2018.
- ↑ Morgan Quigley, Eric Berger, Andrew Y. Ng (2007), STAIR: Hardware and Software Architecture, AAAI 2007 Robotics Workshop.
- ↑ «Repositories». ROS.org. Consultado el 7 de junio de 2011.
- ↑ Morgan Quigley, Brian Gerkey, Ken Conley, Josh Faust, Tully Foote, Jeremy Leibs, Eric Berger, Rob Wheeler, Andrew Ng. «ROS: an open-source Robot Operating System». Consultado el 3 de abril de 2010.
- ↑ Willow Garage, Supported robots and hardware. Link: [1]
- ↑ HANDLE Project, Official web page of the project. Link: [2]
- Notas
- STAIR: Proyecto STanford Artificial Intelligence Robot, Andrew Y. Ng, Stephen Gould, Morgan Quigley, Ashutosh Saxena, Eric Berger. Snowbird, 2008.
Enlaces externos
Portal:Software libre. Contenido relacionado con Software libre.