Software::Yet Another Khepera Simulator
IntroducciónEsta sección se encuentra dedicada al simulador del robot Khepera: Yaks. Yaks es básicamente un proyecto de Software Libre desarrollado en Suecia. Su objetivo es brindar un ambiente en el cual se puede programar uno o más robots Khepera simulados , principalmente con fines académicos. En esta página se describen técnicas para compilarlo bajo ambientes Linux y se espera presentar en el futuro una versión que permita ser interfazeada con otros lenguajes de programación. Adicionalmente se ha agregado una sección relacionada con la API YaksServer, la cual brinda capabilidades de networking al simulador Yaks de forma de permitirle interoperar con agentes desarrollados en varios lenguajes de programación distintos. Pueden accederla desde aquí [Inglés]. Archivos
Fuente OriginalTodas las pruebas realizadas fueron implementadas sobre la versión yaks-1.0-rc3-opengl-alpha.zip, la cual, a la fecha, puede descargarse desde el link a Fuente Original. Linux Windows
El archivo linwin.zip, referenciado en el link Linux Windows incluye versiones modificadas de los archivos sim.cpp, environ.h y world.h preparadas para compilar el simulador bajo Linux y (si bien no lo he probado) también debería funcionar bajo Windows. Las modificaciones realizadas corresponden a todas las mencionadas en las siguientes secciones, por lo cual en un principio, si se reemplazan los archivos por los de esta versión, no deberá ser necesario realizar las modificaciones manualmente. De cualquier forma, las siguientes secciones serán mantenidas debido a la posiblididad de que surjan problemas en el proceso de edición y compilación. Para instalar, descargar yaks-1.0-rc3-opengl-alpha.zip y extraer en el directorio yaks/ los contenidos de linwin.zip. DocumentaciónLa documentación constituye una especie de Javadoc generada automáticamente a partir del código fuente, utilizando Doxygen. Compilación
GCC 3.3.5 o superior
Para compilar, dirigirse al directorio yaks/, dentro de donde se descomprimió el archivo y ejecutar make. Dado que el código originalmente fue desarrollado para compilar bajo el compilador de Visual C++ 6.0, es común encontrarse con problemas al intentar compilarlo usando GCC, en particular he notado que falta incluir el cabezal <string.h> en los archivos environ.h y gui/world.h. Si tras realizar estas modificaciones, la compilación continúa fallando, se deberá revisar que se dispone de todas las bibliotecas necesarias por el sistema. En particular: gtk.1.2-devel y glib.1.2-devel son obligatorias. Antes de recompilar se recomienda ejecutar make clean Una vez compilado, se generan los archivos bin/sim y bin/gsim Microsoft Visual C++ 7.1
La prueba la realicé haciendo uso del kit de desarrollo MS Visual Studio .NET 2003. Basta con Abrir el proyecto de Visual C++ dentro de la carpeta win32\ y Ejecutar Build All. Es posible encontrarse con los mismos problemas de cabezales faltantes, en dicho caso modificar como se mencionó en la sección anterior. Una vez compilado genera un archivo de nombre yaks.exe. Microsoft Visual C++ 6.0Si bien no lo he probado, hasta donde tengo entendido, la versión original del código compila sin problemas bajo Visual C++ 6.0, basta con abrir el proyecto y seleccionar build all. EjecuciónDependiendo de la plataforma ejecutar gsim, sim o yaks.exe pasandole como argumento un archivo .opt. Empezar a Programar
| Descargas
Vínculos
|