Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Integrantes:
Elena Rodrigo López sendra_rock@hotmail.com
Javier Puertas Torres jpt_javier@hotmail.com
Diego López García diego.lgdm@gmail.com
Ramón García Olivares nagash__@hotmail.com
Francisco Javier Fernández Gallardo fran_laiguana@hotmail.com
Oscar Yago Corral oscar.yago@gmail.com
Guillermo Asín Prieto guillermo.asin.prieto@gmail.com
Esther Samper Domeque esamper_18@hotmail.com
Diciembre de 2007
1
ÍNDICE
1. INTRODUCCIÓN.............................................................3
2. PLAYER & STAGE & GAZEBO..................................5
PLAYER.............................................................................................................................................. 5
STAGE................................................................................................................................................. 6
GAZEBO ............................................................................................................................................. 6
Ventajas e inconvenientes: .................................................................................................. 7
REFERENCIAS ...................................................................................................................................... 7
5. ROBOWORKS................................................................16
Ventajas e inconvenientes:.................................................................................................. 16
REFERENCIAS .................................................................................................................................... 17
6. WEBOTS .........................................................................18
Ventajas e inconvenientes: ................................................................................................ 18
REFERENCIAS .................................................................................................................................... 19
7. UCHILSIM ......................................................................20
Ventajas e inconvenientes: ................................................................................................ 20
REFERENCIAS .................................................................................................................................... 21
9. MATLAB ..........................................................................24
Ventajas e inconvenientes: ................................................................................................ 25
REFERENCIAS .................................................................................................................................... 25
2
1. Introducción
Inicialmente antes de realizar un estudio de los diferentes simuladores que se
pueden utilizar para analizar el comportamiento de un robot móvil es necesario conocer
que es un simulador y las facilidades que nos puede proporcionar a la hora de diseñar y
programar un robot móvil.
Una definición más formal formulada por Robert E. Shannon es: "La simulación
es el proceso de diseñar un modelo de un sistema real y llevar a término experiencias
con él, con la finalidad de comprender el comportamiento del sistema o evaluar nuevas
estrategias -dentro de los limites impuestos por un cierto criterio o un conjunto de ellos -
para el funcionamiento del sistema".
Por tanto de forma sencilla se puede decir que una simulación consiste en la
construcción de un modelo que puede revelar como funciona un sistema real. Sin
embargo, los problemas de interés en el mundo real son por lo general muy complejos,
tanto que no puede ser construido un simple modelo matemático para que los
representen y por tanto el comportamiento del sistema debe ser estimado. Una
representación exacta rara vez es posible en un modelo, hay que limitarse a
aproximaciones con un grado de fidelidad que sea aceptable para los fines del estudio.
3
• Una observación detallada del sistema que se está simulando puede conducir a
un mejor entendimiento del sistema y por consiguiente a sugerir estrategias que mejoren
la operación y eficiencia del sistema.
4
2. Player & Stage & Gazebo
Software de simulación gratuito que permite la investigación en robots y
sistemas de sensores.
Player Stage Gazebo son tres piezas de software que fueron desarrolladas
originalmente en el laboratorio de robótica de investigación USC (University of South
California, ahora están en SourceForge.net).
PLAYER
5
Esquema Player. Intercambio de datos servidor/cliente.
STAGE
GAZEBO
6
Para manejar los simuladores Stage y Gazebo se usan dos ficheros escritos en C,
uno de configuración (.cfg) donde se especifica la configuración concreta del conjunto
de robots a simular, la disposición y parámetros de sus sensores y un fichero donde se
almacena la información del mapa bien 2D o 3D para la simulación (.world).
Ventajas e inconvenientes:
Los principales problemas a la hora de usar este simulador son primero que tanto
para instalarlo, como para usarlo se necesita saber usar sistemas unix - en nuestro caso
la shell de Linux para instalar los paquetes externos (librerias) que necesitan player,
stage y gazebo, y ejecutar los programas - y segundo saber programar en C, C++ para
diseñar nuestros propios robots, mapas y programas de control del robot (estos últimos
no necesariamente en C).
Referencias
Pagina oficial del proyecto
http://playerstage.sourceforge.net/
7
Otras páginas web:
http://java-player.sourceforge.net/examples-2.php
http://robotics.usc.edu/?l=Projects:PlayerStageGazebo
http://es.wikipedia.org/wiki/Proyecto_Player/Stage
http://www.nabble.com/Player-Stage-Gazebo-f4302.html
http://riai.isa.upv.es/CGI-BIN/articulos%20revisados%202006/versiones%20impresas
/vol3_num2/articulo9_vol3_num2.pdf
8
3. Microsoft Robotics Studio
Al ser una aplicación de Microsoft los lenguajes que utiliza son los que
desarrolla en sus propios entornos de desarrollo (Visual Studio). Los lenguajes con los
que trabaja son C#, VB.NET, Microsoft Iron Python y otros lenguajes desarrollados por
usuarios ajenos a la empresa basados en la arquitectura de servicios de Microsoft
Robotics Studio.[1]
9
El Microsoft Robotics Studio (MSRS) no se limita a ser un simple simulador,
como hemos mencionado anteriormente incluye una herramienta de programación
visual (VPL) muy completa, permite crear aplicaciones para interactuar con los robots
desde Windows o desde un navegador. El simulador del MSRS permite simular
aplicaciones para robots usando modelos realistas en 3D gracias a la tecnología
AGEIA™ PhysX™ Technology desarrollada por AEGIA[1]. Se ha observado también
que desde el propio simulador se pueden editar escenarios de forma sencilla agregando
objetos, editando su tamaño y posición, o hasta la propia fuerza de gravedad del
escenario, además el propio fabricante nos facilita entornos de simulación
especializados para, por ejemplo, competiciones de robots como son la competición de
fútbol de la Robocup o la competición de Sumo.[2]
MSRS permite también la conexión con robots reales a través del puerto serie,
bluetooth, mediante el protocolo 802.11 (redes ethernet y WiFi) o RF[1], también, como
se ha podido observar en alguna demostración online, podemos crearnos una aplicación
con VPL para controlar nuestro robot conectado al ordenador desde un gamepad para
videojuegos, lo que puede resultar muy útil para comprobar el buen funcionamiento del
hardware del robot o las funciones de bajo y medio nivel.
10
En cuanto a lo que la dificultad se refiere, gracias a la experiencia personal con
el mismo se puede decir que no es sencillo para novatos en robótica, no hay ejemplos
sencillos o directos que puedan ser ejecutados de forma directa con intención de ver el
funcionamiento del mismo, además por lo observado parece necesario hacer uso de una
consola de comandos para cargar el código del robot en el modelo simulado o el real, lo
cual resulta un impedimento importante para programadores no expertos o usuarios que
se están iniciando en robótica, no existen muchos ejemplos para facilitar al usuario una
tarea comparativa rápida sin tener que crearse uno propio y los facilitados por el
fabricante requieren de hardware y software que no tienen por qué estar en disposición
de todos los usuarios, bien por ser de pago y tener un alto coste o por ser elementos
prescindibles en un ordenador personal, principalmente los equipos portátiles (algunos
ejemplos requieren webcam[3], micrófono[4] o un GPS Microsoft GPS-360[5]).
Ventajas e inconvenientes:
11
Referencias
12
4. Marilou Robotics Studio
Marilou Robotics Studio es un entorno de modelado y simulación de robots
móviles, humanoides, brazos articulados y robots paralelos que funciona teniendo en
cuenta las condiciones del mundo real y respetando las leyes de la física.
13
Proporciona gran flexibilidad a la hora de la construcción ya que puede calcular
automáticamente los parámetros importantes en un robot como son masa, centro de
gravedad, matriz inercial y permite su fácil modificación adoptando las formas
adecuadas. Permite también determinar que situaciones físicas podrán alterar la
geometría del robot. El diseño se basa en uniones de cuerpos rígidos mediante
articulaciones, en las que se puede definir el grado de libertad de movimiento de un
cuerpo con respecto a otro, y para lograr el mayor realismo estas articulaciones son
deformables e incluso se pueden romper.
14
Simulación para Eurobot 2007
Ventajas e inconvenientes:
Por último una ventaja de gran importancia para el usuario es la gran cantidad de
lenguajes de programación que este software permite.
Referencias
Anykode.Solutions for robotics & PC
http://www.anykode.com
15
5. Roboworks
Roboworks es un simulador de la empresa Newtonium (www.newtonium.com),
que se basa en la idea de la simulación tridimensional, y en proporcionar una interfaz
3D a LabView, Matlab, y Visual Basic.
Tiene un precio de unos 540 euros; obteniendo por ese precio un enlace de
descarga del simulador. No obstante, por 7,49 euros más, el distribuidor envía el
programa grabado en un CD al domicilio, gastos de envío incluidos.
Ventajas e inconvenientes:
Ventajas:
- Fácil utilización (según la página del fabricante, comentarios vertidos por usuarios
en la misma [2], así como la opinión vertida en un blog de robótica [3]) lo que
constituye una de sus grandes bazas.
- Gráficos tridimensionales (basado en OpenGL).
- Archivos de tamaño reducido.
- Permite el control de la animación de los modelos por numerosos métodos
(comentados anteriormente).
- Interfaz con LabView, Matlab y Visual Basic.
- Requerimientos mínimos poco exigentes. (Windows 95/98/NT/2000, Pentium,
ninguna tarjeta gráfica especialmente potente, 5’1 megabytes de espacio en disco
duro, 16 megabytes de memoria RAM).
- Dispone de un completo tutorial en español [4].
Inconvenientes:
- Probablemente abandonado: La última modificación de la Web fue realizada en
Septiembre de 2005, y los requisitos “poco actualizados” pueden ser indicadores de
un posible abandono del desarrollo.
- Requiere Windows 95/98/NT/2000 (No disponible para otros sistemas operativos).
- Para la conversión de las simulaciones a vídeo, sería necesaria una aplicación aparte,
no distribuida por el fabricante [5], al contrario que con otros simuladores, que
incluyen esta opción.
- No soporta simulación cinemática directa e inversa.
16
Referencias
[1] RoboWorks Frequently Asked Questions: 6. What is RoboTalk?
Newtonium
http://www.newtonium.com/public_html/Products/RoboWorks/RoboWorks_faq.
htm#What%20is%20RoboTalk?
17
6. Webots
Este simulador, que está ya en su versión 5, del fabricante Cyberbotics
(www.cyberbotics.com), es potente y está actualizado, además de permitir la simulación
de numerosos tipos de robots, incluidos robots definidos por el usuario.
Su precio varía según la licencia adquirida [3]: desde los 260 euros de la versión
de educación, hasta los 2790 euros de la versión profesional. La diferencia entre ellos es
que el primero carece de las siguientes características:
- Supervisión: poner un programa que supervise y controle la simulación.
- Modo de simulación rápida: permite realizar la simulación sin renderización 3D,
lo cual la acelera.
- Programación personalizada de la física: permite programar “leyes de física
personalizadas”.
Ventajas e inconvenientes:
Ventajas:
- Permite la simulación de todo tipo de robots (con patas, ruedas, voladores…), robots
comerciales, y robots definidos por el usuario.
- Tiene completas librerías con todo tipo de actuadores y sensores.
- Utiliza las librerías OpenGL y su propio editor tridimensional, para los modelos de
robots y su entorno, e incorpora facilidades para la importación de modelos 3D.
- Permite la programación de los robots en C, C++ y Java. También puede
programarse en URBI (ver desventajas).
- Utiliza las librerías Open Dynamics Engine (ODE, que son de código abierto) [4]
para las simulaciones físicas.
- Permite guardar las simulaciones en formato de vídeo AVI o MPEG.
- Incluye ejemplos (lo cuál siempre ayuda al aprendizaje de uso de cualquier
aplicación).
- Permite la simulación de sistemas multi-agente.
- Disponible para los sistemas operativos Linux, Windows, y Mac OS X.
Inconvenientes:
- Elevados requisitos mínimos: (Linux (kernel 2.6), Mac OS X 10.4 o Windows
XP/Vista; 1GHz, 512 megabytes de memoria RAM, 200 megabytes de espacio libre
en disco duro, tarjeta gráfica de ATI o nVidia con 64 megabytes de RAM).
- Para la utilización del lenguaje URBI, es necesario software adicional.
18
Referencias
[1] URBI for Webots
Gostai
http://www.gostai.com/webots.html
19
7. Uchilsim
Es un simulador de ambientes robóticos diseñado para la liga de robots cuadrúpedos de
RoboCup.. Hecho en C++, para wxp, Linux.
Es importante señalar que para un manejo más sencillo del software el simulador
incluye también una completa interfaz gráfica.
Una característica importante a tener en cuenta es que no hay que pagar una
licencia, es un software libre. En cuanto a su expansión en robótica hay que señalar que
se utiliza principalmente a robots tipo AIDO, siendo empleado por la universidad
católica de chile.
Ventajas e inconvenientes:
Ventajas:
- Permite modelar el entorno (aunque éste mismo es exclusivamente un campo de
futbol).
- Robots prediseñados
- Permite el estudio del comportamiento en enjambre
- Permite simulación evolutiva
- Empleo de Librerías Gráficas abiertas
Inconvenientes:
- Esclusividad de uso: robots AIDO y empleo RoboCup de fútbol
- La simulación de colisiones consume excesivo tiempo de procesador.
- La duración para el aprendizaje al golpeo de la pelota es de 8 horas de simulación.
20
Referencias
http://www.robocup.cl/uchilsim
http://www.robocup.cl/papers/An%20Application%20Interface%20for%20UCHILSIM
%20and%20the%20Arrival%20of%20New%20Challenges.pdf
http://robotica.li2.uchile.cl/pro.html#us
21
8. Lab. Windows
LabWindows/CVI es un software diseñado para la captura y animación de
señales. Estas señales se adquieren por medio de una tarjeta de adquisición. Permite el
desarrollo interactivo de programas, gracias al editor de código fuente ANSI C y
compilador su compilador de lenguaje C. [1]
Los creadores son Nacional Instruments y estos ofrecen también LabVIEW, que
con la misma funcionalidad, está orientado a programación gráfica en vez de al
desarrollo de código C. NI mantiene la compatibilidad con otros compiladores de
propósito general, como las distintas suites de Microsoft Visual Studio (Visual Basic,
Visual C++, .NET, etc), a través de su producto Measurement Studio. [2]
22
Ventajas e inconvenientes:
Como requisitos:
Referencias
[1] Departamento de Electrónica
Escuela Politécnica Superior (Universidad de Alcalá de Henares)
http://www.depeca.uah.es/wwwnueva/
[5] http://www.tracnova.com/Lab%20WindowsCVI.htm
23
9. Matlab
Matlab es una herramienta software muy popular, no precisamente de
simulación de robots pero muy útil como ya veremos para ciertos aspectos de
tratamiento de señales de estos. Usa un lenguaje de programación creado en 1970 para
proporcionar un sencillo acceso al software de matrices LINPACK y EISPACK sin tener
que usar Fortran. También tiene su propio compilador [1].
El gran problema de este software es que es de pago, pero para Linux hay una
versión: Scilab, es muy ligera pero da todas las funcionalidades del Matlab. Se puede
instalar desde los repositorios de Ubuntu o Guadalinex, pero se recomienda descargarlo
directamente de la Web: www.scilab.org
24
Ventajas e inconvenientes:
Referencias
[1] Simulador En Matlab De Robots Moviles
Santos Barquero Cáceres
Universidad Rovira i Virgili
http://sauron.etse.urv.es/public/propostes/pub/pdf/118res.pdf
[3] http://loslocosrh.blogspot.com/2004/12/simulaciones-del-robot-en-matlab.html
[4] http://riai.isa.upv.es/riai/CGI-
BIN/articulos%20revisados%202005/versiones%20impresas/vol2_num2/articulo
7_vol2_num2.pdf
25
10. Tabla comparativa
Cos te licencia M odelos de robot Entorno editable Dis eño de Robot Lenguajes Des taca
Player, Stage, Gazebo Gratuito Sí Sí Sí C, C++ Controla robots reales y s imulados
M icros oft Robotics Studio Gratuito* Sí Sí Sí C#, VB.NET Incluye aplicación de programación vis ual
Uchils im Gratuito Sólo A IBO Sí** Sólo A IBO C++ Robocup: Liga de robots cuadrúpedos
Webots Des de 260 ! Sí Sí Sí C, C++, Java, URBI Siumulación de robots móviles , humanoides
Roboworks 540 ! Sí No Sí LabView, M atlab, VB Dota a M atlab y LabView de interfaz tridimens ional
M arilou Robotics Studio Des de 992! Sí Sí Sí C, C++, C#, VB#, J# A mplia flexibilidad en el dis eño
M atlab 11.915 $ NO No No M atlab Repres entación gráfica de datos matriciales
LabWindows 499 ! No Si No Ninguno Creación de paneles de control y s eguimiento electrónico
26
11. Conclusiones
Con el despunte de la robótica que cada día se aproxima más a la vida cotidiana
del ser humano aparecen los simuladores debido a la necesidad de un producto que
permita obtener modelos de un proyecto final sin que ello suponga un desembolso
importante de dinero. La enorme capacidad de rendimiento del software y hardware
actual de cualquier ordenador personal hace posible que se puedan crear programas que
hace unos años nadie hubiese podido imaginar que algún día llegaran a existir. Por ello
cada día hay más software de simulación, con mayores posibilidades y realismo,
existiendo una tendencia cada vez mayor a ofrecer a los usuarios una interfaz agradable,
sencilla y cómoda con la que se puedan familiarizar de forma rápida e intuitiva.