1. Comunicación de igual a igual: los sistemas robóticos complejos con múltiples enlaces pueden tener múltiples computadoras a bordo (para realizar tareas paralelas) conectadas a través de una red. Ejecutar un maestro central provocaría una congestión severa en un enlace en particular. El uso de una comunicación entre pares evitaría este problema. En ROS , una arquitectura punto a punto acoplada a un sistema de almacenamiento en búfer y un sistema de búsqueda (un servicio de nombres llamado ‘maestro’ en ROS ), permite que cada componente se dialogue directamente con cualquier otro, sincrónicamente o asincrónicamente según sea necesario.
2. Gratis y de código abierto: ser una plataforma de código abierto proporciona la reutilización de funciones ya existentes proporcionadas por muchos otros usuarios de ROS . Su código se suministra en repositorios como “pilas”. Otras personas han desarrollado capacidades sorprendentes para robots que han sido “de código abierto” y son relativamente fáciles de agregar de forma incremental utilizando el entorno de desarrollo ROS .
3. Delgado: para combatir el desarrollo de algoritmos que se enredan en menor o mayor grado con el sistema operativo de robótica y, por lo tanto, son difíciles de reutilizar posteriormente, los desarrolladores de ROS tienen la intención de que los controladores y otros algoritmos estén contenidos en ejecutables independientes. Esto garantiza la máxima reutilización y, sobre todo, mantiene su tamaño bajo. Este método hace que ROS sea fácil de usar, la complejidad está en las bibliotecas. Esta disposición también facilita las pruebas unitarias y los sistemas desarrollados pueden ser completamente independientes de otro sistema.
- ¿Qué escuela es mejor para la ingeniería informática, SJSU o UCSC?
- ¿Qué es un autobús de tres estados?
- ¿Cuáles son las diez mejores universidades de ingeniería informática en Chennai?
- ¿Qué otras cosas además de los lenguajes de programación se enseñan en un curso de pregrado de Ciencias de la Computación e Ingeniería de Computadores?
- ¿Por qué la gente en India prefiere un ingeniero de TI en lugar de un empleado de un banco nacional como yerno?
4. Multi- idioma: ROS es neutral en cuanto al idioma y puede programarse en varios idiomas. La especificación ROS funciona en la capa de mensajería. Las conexiones punto a punto se negocian en XML- RPC , que existe en una gran cantidad de idiomas. Para admitir un nuevo lenguaje, las clases de C ++ se vuelven a empaquetar (lo que se hizo para el cliente Octave, por ejemplo) o las clases se escriben permitiendo que se generen mensajes. Estos mensajes se describen en IDL (lenguaje de definición de interfaz).