- Urbi
-
Urbi [[Archivo:Archivo:Urbi.2.0.cube.lightbg.png|220px]] Desarrollador(es) Gostai
http://www.urbiforge.org/Información general Extensiones comunes .u Paradigma Robótica (educativa) Apareció en 2003 Diseñado por Jean-Christophe Baillie Última versión estable 2.7.1 Influido por C++, Ruby Sistema operativo Windows, GNU/Linux, Mac OS X Licencia GNU Affero General Public License, versión 3
Urbi es una plataforma de programación para el desarollo de aplicaciones en los campos de la robótica y los sistemas complejos. Urbi se compone de una arquitectura de componentes C++ distribuidos llamada UObject y de urbiscript, un lenguaje interpretado, concurrente y dirigido por eventos. UObject facilita la integración de objectos C++ con el lenguaje urbiscript, ya sea de manera local o a través de una red. Por otro lado, urbiscript se encarga de orquestar los diferentes componentes y sus interacciones.Desarrollado por Gostai, una empresa emprendedora fundada en 2006[1] con sede en Francia, la aplicación funciona en Windows, GNU/Linux y Mac OS X. El SDK es de código abierto, está publicado bajo licencia AGPLv3. Urbi es independiente del sistema robótico empleado. Actualmente Urbi tiene controladores para simuladores y robots reales como el humanoide Nao, los nuevos NXT de Lego Mindstorms o en el robot aspiradora Roomba.
Contenido
El lenguaje urbiscript
Urbi fue creado por Jean-Christophe Baillie en 1999 en el laboratorio de robótica cognitiva de la Escuela Nacional Superior de Técnicas Avanzadas de París. Desde 2006 la sociedad Gostai se encarga del desarrollo de Urbi.
El lenguaje urbiscript es un lenguaje interpretado que actúa como lenguaje de orquestación: al igual que Lua en el dominio de los videojuegos, Urbi permite integrar los componentes C++ — normalmente, aquellas partes que requieren más CPU — mientras que los modelos de comportamiento generales son escritos en urbiscript, que es más flexible, más fácil de mantener y que permite interacciones dinámicas durante la ejecución del programa.
El lenguaje urbiscript incluye otras útiles para el desarrollo, tal como la programación concurrente y la programación dirigida por eventos. Dado que la especificación de comportamientos en paralelo y la reacción a eventos suelen ser exigencias clave para las aplicaciones robóticas y de inteligencia artificial, Urbi está especialmente adaptado a estos campos.
Además de su flexibilidad y modularidad, la otra ventaja principal de urbiscript es su simplicidad, con una interfaz intuitiva para principiantes y funciones avanzadas para desarrolladores más avanzados.
Características
Ejemplos
Arquitectura de componentes UObject
Enlaces externos
Referencias
Categorías:- Robótica
- Lenguajes de programación orientada a objetos
- Lenguajes interpretados
- Software educativo
Wikimedia foundation. 2010.