Вы находитесь на странице: 1из 27

SIMULADORES EN ROBTICA

Trabajo realizado para la asignatura de Introduccin al Diseo


de Microrrobots Mviles de la Universidad de Alcal

Integrantes:
Elena Rodrigo Lpez sendra_rock@hotmail.com
Javier Puertas Torres jpt_javier@hotmail.com
Diego Lpez Garca diego.lgdm@gmail.com
Ramn Garca Olivares nagash__@hotmail.com
Francisco Javier Fernndez Gallardo fran_laiguana@hotmail.com
Oscar Yago Corral oscar.yago@gmail.com
Guillermo Asn Prieto guillermo.asin.prieto@gmail.com
Esther Samper Domeque esamper_18@hotmail.com

Diciembre de 2007
1
NDICE

1. INTRODUCCIN.............................................................3
2. PLAYER & STAGE & GAZEBO..................................5
PLAYER.............................................................................................................................................. 5
STAGE................................................................................................................................................. 6
GAZEBO ............................................................................................................................................. 6
Ventajas e inconvenientes: .................................................................................................. 7
REFERENCIAS ...................................................................................................................................... 7

3. MICROSOFT ROBOTICS STUDIO ..............................9


Ventajas e inconvenientes: ................................................................................................ 11
REFERENCIAS .................................................................................................................................... 12

4. MARILOU ROBOTICS STUDIO .................................13


Ventajas e inconvenientes: ................................................................................................ 15
REFERENCIAS .................................................................................................................................... 15

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

8. LAB. WINDOWS ............................................................22


Ventajas e inconvenientes: ................................................................................................ 23
REFERENCIAS .................................................................................................................................... 23

9. MATLAB ..........................................................................24
Ventajas e inconvenientes: ................................................................................................ 25
REFERENCIAS .................................................................................................................................... 25

10. TABLA COMPARATIVA ............................................26


11. CONCLUSIONES..........................................................27

2
1. Introduccin
Inicialmente antes de realizar un estudio de los diferentes simuladores que se
pueden utilizar para analizar el comportamiento de un robot mvil es necesario conocer
que es un simulador y las facilidades que nos puede proporcionar a la hora de disear y
programar un robot mvil.

No es sencillo definir que es un simulador, suele existir bastante confusin,


algunas de las definiciones ms aceptadas y difundidas se muestran a continuacin.

Thomas H. Naylor y R. Bustamante la definen as: "Simulacin es una tcnica


numrica para conducir experimentos en una computadora digital. Estos experimentos
comprenden ciertos tipos de relaciones matemticas y lgicas, las cuales son necesarias
para describir el comportamiento y la estructura de sistemas complejos del mundo real a
travs de largos periodos de tiempo".

Una definicin ms formal formulada por Robert E. Shannon es: "La simulacin
es el proceso de disear un modelo de un sistema real y llevar a trmino 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".

Una simulacin tiene como finalidad conocer, analizar y evaluar el


funcionamiento de un sistema sin necesidad de la construccin o de la experimentacin
con el sistema real, ya que esto podra resultar extremadamente caro o peligroso. Segn
Glass-Husain todo simulador debe tener tres atributos: imita la realidad (es lo que
distingue a un simulador de un juego), no es real en s mismo (suele ser una
simplificacin de la vida real) y puede ser cambiado por cada usuario.

Por tanto de forma sencilla se puede decir que una simulacin consiste en la
construccin de un modelo que puede revelar como funciona un sistema real. Sin
embargo, los problemas de inters en el mundo real son por lo general muy complejos,
tanto que no puede ser construido un simple modelo matemtico para que los
representen y por tanto el comportamiento del sistema debe ser estimado. Una
representacin 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.

Recientes avances en las metodologas de simulacin y la gran disponibilidad de


software que actualmente existe en el mercado, han hecho que la tcnica de simulacin
sea una de las herramientas ms ampliamente usadas en el anlisis de sistemas. Adems
de las razones antes mencionadas, Thomas H. Naylor ha sugerido que un estudio de
simulacin es muy importante para la ingeniera de sistemas porque presenta las
siguientes ventajas en el diseo de estos:

A travs de un estudio de simulacin, se puede estudiar el efecto de cambios


internos y externos del sistema, al hacer alteraciones en el modelo del sistema y
observando los efectos de esas alteraciones en el comportamiento del sistema.

3
Una observacin detallada del sistema que se est simulando puede conducir a
un mejor entendimiento del sistema y por consiguiente a sugerir estrategias que mejoren
la operacin y eficiencia del sistema.

La simulacin de sistemas complejos puede ayudar a entender mejor la


operacin del sistema, a detectar las variables ms importantes que interactan en el
sistema y a entender mejor las interrelaciones entre estas variables.

La tcnica de simulacin puede ser utilizada para experimentar con nuevas


situaciones, sobre las cuales tiene poca o ninguna informacin. A travs de esta
experimentacin se puede anticipar mejor a posibles resultados no previstos.

A diferencia de las ventajas mencionadas, la tcnica de simulacin presenta el


problema de requerir equipo computacional y recursos humanos costosos. Adems,
generalmente se requiere bastante tiempo para que un modelo de simulacin sea
desarrollado y perfeccionado. Finalmente en algunas ocasiones la simulacin puede
llegar a ser imprecisa, sin poder medir el grado de error, aunque esto depender de las
simplificaciones realizadas a la hora de disear el modelo del sistema.

Teniendo en cuenta lo expuesto anteriormente es fcil concluir que la simulacin


tambin es una herramienta muy til en robtica y que esta comenzando a extenderse.
La construccin de un robot es cara y complicada, en ocasiones son difciles de
programar y su fase de desarrollo muy probablemente puede daar considerablemente el
robot, por esto se utiliza un robot virtual que opera en un mundo virtual. En este tipo de
aplicaciones los errores cometidos en un entorno virtual durante la fase de desarrollo no
provocan grabes consecuencias.

A continuacin se van a exponer y explicar los simuladores ms importantes que


se pueden utilizar en robtica. Existen muchos tipos de ellos, unos slo sirven para
robots especficos, en otros pueden disearse todo tipo de robots, pueden ser ms o
menos realistas, gratuitos o de pago, ms sencillos o ms difciles de manejar para el
usuario, intentaremos especificar todas estas caractersticas en cada uno de ellos, para
poder realizar una comparativa. Dependiendo de las necesidades y caractersticas de
cada sistema se podr decidir que simulador es mejor utilizar.

4
2. Player & Stage & Gazebo
Software de simulacin gratuito que permite la investigacin en robots y
sistemas de sensores.

Player Stage Gazebo son tres piezas de software que fueron desarrolladas
originalmente en el laboratorio de robtica de investigacin USC (University of South
California, ahora estn en SourceForge.net).

Player es probablemente el ms utilizado en el control de robots junto con sus


generadores de simulacin Stage y Gazebo. En gran parte se debe a que es publicado
bajo la Licencia Pblica General de GNU licencia creada por Free Software
Fundation, orientada principalmente a proteger la libre distribucin, modificacin y uso
de software cuyo propsito es evitar los intentos de apropiacin de los mismos- por lo
cual el cdigo completo de Player Stage Gazebo es libre de utilizar, distribuir y
modificar.

Stage o Gazebo usados conjuntamente con Player a modo de plugings nos


permiten hacer pruebas iniciales de nuestros algoritmos o bien no disponemos de un
robot real. Para nuestro cdigo ser transparente el que estemos trabajando con un robot
real o con un simulador.

Tambin existe la posibilidad de usarlos como libreras de C (libstage y


libgazebo) incorporando un motor de simulacin de robots a tus propios programas sin
necesidad de usar Player.

El proyecto Placer-Stage-Gazebo software funciona en Linux, Solaris, * BSD y


Mac OSX (Darwin).

PLAYER

Player es un interfaz para dispositivos robticos.

Pone a disposicin de los usuarios unos mecanismos de transporte que permiten


a los datos ser intercambiados entre los drivers y los programas de control que estn
siendo ejecutados en mquinas distintas. El mtodo de transporte ms comn en uso
hoy en da es un transporte cliente/servidor basado en sockets TCP.

Aunque la mayora de los drivers de Player controlan directamente el hardware,


existen los drivers abstractos. Un driver abstracto usa otros drivers, en vez de como
hardware, como fuentes de datos y como lugar donde enviar comandos. El uso
fundamentar de los drivers abstractos es encapsular algoritmos tiles de tal forma que
puedan ser reutilizados fcilmente.

Adems, Player soporta mltiples conexiones simultneas a los dispositivos de


clientes y una gran variedad de robots mviles y accesorios.

Dispone de varios simuladores que emulan un robot autntico en entornos tanto


de dos dimensiones como de tres dimensiones.

- Gazebo: Simulador en tres dimensiones oficial del proyecto player


- Stage: Simulador en dos dimensiones oficial del proyecto player.

5
Esquema Player. Intercambio de datos servidor/cliente.

STAGE

Simula robots mviles en el plano bidimensional (tambin usado como


biblioteca automtica). Proporciona varios modelos de sensores y actuadores,
incluyendo sensores del tipo snar e infrarrojos.

Stage ha sido diseado para apoyar la investigacin en sistemas autnomos de


mltiples agente, proporciona simplemente modelos sencillos de una gran cantidad de
dispositivos simultneamente en lugar de intentar emular cualquiera de ellos con gran
fidelidad. Adems se dise de manera suficientemente realista para permitir a los
usuarios usar los mismos programas de control entre los robots de Stage (creados por el
usuario en el programa) y los del mundo real, y a la vez que sea posible simular con
velocidad suficiente grandes conjuntos de robots.

Simulacin con Stage, posicionamiento y deteccin de obstculos

GAZEBO

Gazebo es un simulador de mltiples robots para espacios abiertos. Al igual que


Stage, es capaz de simular conjuntos de robots, sensores y objetos, pero en un mundo
tridimensional. Adems reproduce de forma bastante real la reaccin de sensores y la
interaccin entre dispositivos (incluido el comportamiento fsico de objetos rgidos).A
diferencia de Stage, Gazebo simula el comportamiento de los conjuntos de robots
pequeos (menos de 10) con alta fidelidad.

6
Para manejar los simuladores Stage y Gazebo se usan dos ficheros escritos en C,
uno de configuracin (.cfg) donde se especifica la configuracin concreta del conjunto
de robots a simular, la disposicin y parmetros de sus sensores y un fichero donde se
almacena la informacin del mapa bien 2D o 3D para la simulacin (.world).

Simulacin de entorno con Gazebo

Disponen de modelos ya diseados de robots (Pioneer...) y sensores (posicin,


laser, bumpers, sonar,) con los que realizar las simulaciones.

Las conexiones entre los distintos dispositivos se realiza a travs de direcciones


IP asignndole un puerto a cada uno, de este modo se puede enviar seales a cada robot
individualmente. Esto permite que nuestros programas estn escritos en cualquier
lenguaje que soporte TCP/IP.

Ventajas e inconvenientes:

Como ya se ha dicho en el trabajo, una de las mayores ventajas de este


simulador es que est al alcance de cualquier usuario, es un software gratuito. Tambin
recrea fielmente los entornos pudiendo as trabajar con los algoritmos antes de pasar a
un robot real. Adems trabaja en toda clase de sistemas operativos, excepto en
Windows.

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
disear 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 pginas 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 aplicacin 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]

Para desarrollar aplicaciones de Robots, tanto simuladas como reales, Microsoft


Robotics Studio incluye una aplicacin llamada Microsoft Visual Programming
Language (VPL). Se trata de un entorno de desarrollo basado en un modelo de flujo de
datos grfico. Este modelo resulta especialmente til para programacin distribuida. Al
ser grfico resulta ms sencillo para programadores no expertos. El VPL permite crear
programas con slo arrastrar y soltar bloques que representan servicios, adems, como
se ha podido observar, incluye cdigo de modelos genricos de motores, sensores, algn
modelo estndar de robot como el Arcos Core o varios modelos de Lego, etc. El
VPL incorpora la tecnologa Concurrency and Coordination Runtime (CCR) gracias a
la cual se simplifica la escritura de programas para controlar sensores, motores, etc[1].

Microsoft Visual Programming Language

El modelo de programacin del MSRS permite programar una amplia variedad


de plataformas hardware para robots transfiriendo sus propias herramientas entre
plataformas. Las interfases de programacin pueden ser diseadas para desarrollar
aplicacin para robots con procesadores de 8, 16 o 32 bits sean de un ncleo o
multincleo. Los usuarios adems tienen la posibilidad de ampliar la funcionalidad de
MSRS aadiendo libreras y servicios propios.[1]

9
El Microsoft Robotics Studio (MSRS) no se limita a ser un simple simulador,
como hemos mencionado anteriormente incluye una herramienta de programacin
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 tecnologa
AGEIA PhysX Technology desarrollada por AEGIA[1]. Se ha observado tambin
que desde el propio simulador se pueden editar escenarios de forma sencilla agregando
objetos, editando su tamao y posicin, o hasta la propia fuerza de gravedad del
escenario, adems el propio fabricante nos facilita entornos de simulacin
especializados para, por ejemplo, competiciones de robots como son la competicin de
ftbol de la Robocup o la competicin de Sumo.[2]

Captura del simulador emulando un Pioneer3DX

MSRS permite tambin la conexin con robots reales a travs del puerto serie,
bluetooth, mediante el protocolo 802.11 (redes ethernet y WiFi) o RF[1], tambin, como
se ha podido observar en alguna demostracin online, podemos crearnos una aplicacin
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.

Microsoft Robotics Studio igualmente incluye servicios orientados a la


tecnologa en tiempo real basados en .NET. Asimismo El modelo Decentralized
Software Services (DSS) desarrollado para MSRS hace ms simple el acceso y la
respuesta del estado del robot, permitiendo el control desde un navegador o desde una
aplicacin basada en Windows. Se puede conectar con el robot a travs de puerto serie,
bluetooth, 802.11 o RF. [1]

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 robtica, no hay ejemplos
sencillos o directos que puedan ser ejecutados de forma directa con intencin de ver el
funcionamiento del mismo, adems por lo observado parece necesario hacer uso de una
consola de comandos para cargar el cdigo del robot en el modelo simulado o el real, lo
cual resulta un impedimento importante para programadores no expertos o usuarios que
se estn iniciando en robtica, no existen muchos ejemplos para facilitar al usuario una
tarea comparativa rpida sin tener que crearse uno propio y los facilitados por el
fabricante requieren de hardware y software que no tienen por qu estar en disposicin
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 porttiles (algunos
ejemplos requieren webcam[3], micrfono[4] o un GPS Microsoft GPS-360[5]).

Microsoft Robotics Studio ofrece una licencia no comercial gratuita, lo que


significa que para propsitos docentes (profesores y alumnos) o para aficionados a la
robtica la adquisicin del software de simulacin no requiere ningn desembolso
econmico. La licencia comercial cuesta 399 dlares.[6]

El software de MSRS est siendo desarrollado activamente por Microsoft. Su


primera versin data de diciembre de 2006. La versin actual (V. 1.5) vio la luz en julio
de 2007.[7]

Ventajas e inconvenientes:

A partir de la informacin obtenida acerca del Microsoft Robotics Studio y la


experiencia personal con el mismo podemos destacar como puntos positivos del
simulador que no slo se limita a un simple simulador, sino que adems incluye un
entorno de programacin visual basada en flujos bastante amigable. Adems, al incluir
la aplicacin AGEIA las fsicas de simulacin pueden adquirir bastante realismo.
Tambin se puede hacer uso de modelos predefinidos de robots, simular los tuyos
propios o incluso interactuar con un robot real. Cabe destacar que los escenarios de
simulacin se pueden editar fcilmente o crear alguno propio.

Por el contrario cabe destacar diversos inconvenientes siendo algunos lo


suficientemente importantes como para tenerlos en cuenta. En primer lugar destaca que
el cdigo es cerrado, lo cual no sera un problema importante, aunque puede s serlo que
slo funcione bajo plataforma Windows y que necesite Microsoft Visual Studio 2005
para algunas simulaciones (puede ser prescindible, pero el hecho de no tenerlo instalado
llega a ser una barrera en el uso de MSRS). Por otra parte actualmente no existe ningn
manual en espaol y la informacin que se encuentra en ingls no parece aportar una
ayuda lo suficientemente clara en lo que al entorno de simulacin respecta, este hecho
sumado a que no resulta muy intuitivo y los ejemplos de simulacin que se encuentran
disponibles por parte del desarrollador imponen requisitos tanto de hardware como
software que no todos los usuarios pueden satisfacer. Como ltimo inconveniente hay
que tener en cuenta que las simulaciones slo pueden ser utilizadas si se encuentran
almacenadas en el directorio en el que est instalado el programa, por defecto
C:/Microsoft Robotics Studio, si en la instalacin se cambia este directorio el trabajo
se dificulta bastante a la hora de utilizar ejemplos realizados por terceras personas o al
distribuir los nuestros propios, si nos encontramos ante una situacin en la que se realiza
un proyecto en equipo y alguno de los desarrolladores tiene un directorio diferente de
instalacin en su mquina el proyecto se vuelve prcticamente imposible.

11
Referencias

[1] MSDN Library


Microsoft Corporation
http://msdn2.microsoft.com/en-us/library/bb483024.aspx

[2] MSDN Library


Microsoft Corporation
http://msdn2.microsoft.com/en-us/robotics/aa731520.aspx

[3] Documentacin del Microsoft Robotics Studio


Microsoft Corporation
WebCam Service

[4] Documentacin del Microsoft Robotics Studio


Microsoft Corporation
Speech Recognizer Service

[5] Documentacin del Microsoft Robotics Studio


Microsoft Corporation
MicrosoftGPS service

[6] MSDN Library


Microsoft Corporation
http://msdn2.microsoft.com/es-es/robotics/bb521232(en-us).aspx

[7] Noticias de Robotics Studio


Ral Arrabales Moreno (Profesor Ayudante del dpto. de Informtica de la
Universidad Carlos III de Madrid)
www.conscious-robots.com
http://www.conscious-robots.com/es/robotics-studio/noticias-de-robotics-
studio/index.php

12
4. Marilou Robotics Studio
Marilou Robotics Studio es un entorno de modelado y simulacin de robots
mviles, humanoides, brazos articulados y robots paralelos que funciona teniendo en
cuenta las condiciones del mundo real y respetando las leyes de la fsica.

Marilou incluye un kit de desarrollo de software (SDK) que le permite


programar la simulacin de los robots en varios lenguajes, tales como C, C++, C++
CLI, C#, VB# y J#. Adems es compatible con Matlab, Java, Automgen y RT-Maps. Es
importante sealar que este simulador ofrece un sistema de compatibilidad que le
permite acceder a los robots simulados utilizando el mismo lenguaje, y con la misma
interfaz, que la utilizada con los robots reales.

Este simulador permite disear escenarios complejos para crear y probar


algoritmos sobre un modelo del robot bajo estudio sin tener que invertir en hardware y
sin correr riesgos debidos a la realizacin de pruebas con el sistema real. Permite tanto
la simulacin en tiempo real como poder ajustar la velocidad obteniendo as una
simulacin acelerada o ralentizada segn se necesite. Hay que destacar tambin que se
consigue una reproduccin muy fiel de la realidad.

Entorno diseado con Marilou Robotics Studio

El modelado se realiza en un entorno grfico, de fcil manejo y que permite


modificaciones de configuracin y diseo rpidas. Tambin proporciona la utilizacin
de la jerarqua necesaria para la construccin y puesta a prueba incluso de las
estructuras ms complejas, esto hace posible la reutilizacin de algunas partes de
objetos ya diseados. Pueden aadirse a la estructura del robot diferentes dispositivos
tales como motores y sensores de distancia que se utilizan para controlar el robot y para
interactuar con el medio. Tambin se puede utilizar una cmara en el robot y grabar las
imgenes de la sesin simulada, configurando los diferentes parmetros como son la
perspectiva, el tamao, la calidad, la compresin,... En este simulador no slo se pueden
modelar robots mviles con ruedas, sino que permite crear humanoides, brazos
robticos o robots paralelos.

13
Proporciona gran flexibilidad a la hora de la construccin ya que puede calcular
automticamente los parmetros importantes en un robot como son masa, centro de
gravedad, matriz inercial y permite su fcil modificacin adoptando las formas
adecuadas. Permite tambin determinar que situaciones fsicas podrn alterar la
geometra del robot. El diseo se basa en uniones de cuerpos rgidos 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.

Se puede lograr un gran realismo gracias a la visin tridimensional y ya que


permite la construccin de objetos complejos, en los que se puede seleccionar tambin
la textura de las superficies de cada uno de ellos.

Ejemplos de robots diseados con Marilou Robotics Studio

Marilou integra muchos de los ms populares dispositivos embebidos, sensores


que permiten medir distancias mediante infrarrojos, ultrasonido o laser, motores y
servomotores, acelermetros, girscopos, bumpers, cmaras, brjulas, GPS, Tambin
permite aadir nuevos dispositivos o actualizar los que ya estn definidos.

Existen diferentes versiones de licencias que permiten el uso de este simulador


dependiendo del usuario final y de la calidad de los proyectos a desarrollar. Si su uso es
con fines comerciales la licencia tiene un coste pero a cambio no posee ninguna
limitacin en le software. Existe tambin una licencia de menor coste si su uso es
relacionado con la educacin y si es para uso propio, para aficionados, existe una
licencia gratuita con duracin de 3 meses pero renovable, estas dos ltimas s poseen
algunas limitaciones en el software como son nmero de dispositivos, de formas
geomtricas, niveles de jerarqua y nmero mximo de documentos abiertos, estas no
parecen evitar un uso normal de este simulador.

Una de las caractersticas principales de este simulador es que es muy nuevo, su


primera versin estable es de octubre de este ao, por lo que aun no esta muy extendido
su uso y no hay demasiada informacin, a pesar de esto posee soporte y un foro propio.
A causa de su novedad es de suponer que se continuar desarrollando en los prximos
aos.

14
Simulacin para Eurobot 2007

Ventajas e inconvenientes:

Como ya se ha destacado anteriormente una de las mayores ventajas es que el


modelado se desarrolla en un entorno grfico, que facilita considerablemente el trabajo
y nos permite ahorrar tiempo. Permite tambin una gran flexibilidad y diversificacin en
el diseo tanto de los robots como de los entornos virtuales en los que se probar su
funcionamiento. Tambin hay que destacar que permite integrar en el robot una gran
cantidad de diferentes dispositivos, muchos de los cuales no hay que describir ya que
estn incluidos en el software.

Otra caracterstica importante es que permite modificaciones durante la


simulacin tanto del entorno y del robot como de la velocidad de la simulacin, esto
puede ser de gran utilidad para el usuario. Hay que destacar que se consigue una
reproduccin muy fiel de la realidad gracias tambin a su visin tridimensional.

Por ltimo una ventaja de gran importancia para el usuario es la gran cantidad de
lenguajes de programacin que este software permite.

Las dificultades que puede obtener el usuario son principalmente debidas a la


poca informacin existente de este software ya que es extremadamente nuevo, pero hay
que sealar que posee un manual de usuario bastante completo y detallado. Otro
inconveniente es que es no es un software libre aunque existen licencias ms
econmicas si su uso esta destinado a educacin.

Referencias
Anykode.Solutions for robotics & PC
http://www.anykode.com

Marilou Robotics Studio Help

15
5. Roboworks
Roboworks es un simulador de la empresa Newtonium (www.newtonium.com),
que se basa en la idea de la simulacin tridimensional, y en proporcionar una interfaz
3D a LabView, Matlab, y Visual Basic.

Los modelos se generan grficamente, y se controla su simulacin por medio de


archivos de datos, con el teclado, con la interfaz con LabView, Matlab o Visual Basic; o
con Robotalk: que es, segn el FAQ (Preguntas frecuentes) del Roboworks [1], un
software (del que est disponible el cdigo fuente) que nos permite, remotamente y
desde cualquier terminal con TCP/IP, controlar la simulacin.

Tiene un precio de unos 540 euros; obteniendo por ese precio un enlace de
descarga del simulador. No obstante, por 7,49 euros ms, el distribuidor enva el
programa grabado en un CD al domicilio, gastos de envo incluidos.

Ventajas e inconvenientes:

Ventajas:
- Fcil utilizacin (segn la pgina del fabricante, comentarios vertidos por usuarios
en la misma [2], as como la opinin vertida en un blog de robtica [3]) lo que
constituye una de sus grandes bazas.
- Grficos tridimensionales (basado en OpenGL).
- Archivos de tamao reducido.
- Permite el control de la animacin de los modelos por numerosos mtodos
(comentados anteriormente).
- Interfaz con LabView, Matlab y Visual Basic.
- Requerimientos mnimos poco exigentes. (Windows 95/98/NT/2000, Pentium,
ninguna tarjeta grfica especialmente potente, 51 megabytes de espacio en disco
duro, 16 megabytes de memoria RAM).
- Dispone de un completo tutorial en espaol [4].

Inconvenientes:
- Probablemente abandonado: La ltima modificacin 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 conversin de las simulaciones a vdeo, sera necesaria una aplicacin aparte,
no distribuida por el fabricante [5], al contrario que con otros simuladores, que
incluyen esta opcin.
- No soporta simulacin cinemtica 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?

[2] RoboWorks User Comments


Newtonium
http://www.newtonium.com/public_html/Products/RoboWorks/User_Comments
.htm

[3] Yo Robot: Recopilacin de artculos para aficionados a la robtica


RoboWorks, simulador robtico simple pero eficiente.
http://yorobot.wordpress.com/2007/06/11/roboworks-simulador-robotico-muy-
simple/

[4] Manual de RoboWorks en Espaol


Carlos Rodrguez y Ana Mara Franco
Universidad EAFIT, Medelln, Colombia
http://www.newtonium.com/public_html/Products/RoboWorks/RoboWorksMan
ual-Spanish.PDF

[5] RoboWorks Frequently Asked Questions: 1. What is RoboTalk?


Newtonium
http://www.newtonium.com/public_html/Products/RoboWorks/RoboWorks_faq.
htm#How%20do%20I%20create%20a%20movie%20(GIF,%20AVI,%20MPEG
,%20etc.)%20from%20RoboWorks%20animation?

17
6. Webots
Este simulador, que est ya en su versin 5, del fabricante Cyberbotics
(www.cyberbotics.com), es potente y est actualizado, adems de permitir la simulacin
de numerosos tipos de robots, incluidos robots definidos por el usuario.

Permite la programacin del robot mediante C, C++ y Java. Gracias a la empresa


Gostai [1], tambin existe la posibilidad de utilizar Universal Robotic Body Interface
(URBI), del que podemos encontrar informacin en [2].

Su precio vara segn la licencia adquirida [3]: desde los 260 euros de la versin
de educacin, hasta los 2790 euros de la versin profesional. La diferencia entre ellos es
que el primero carece de las siguientes caractersticas:
- Supervisin: poner un programa que supervise y controle la simulacin.
- Modo de simulacin rpida: permite realizar la simulacin sin renderizacin 3D,
lo cual la acelera.
- Programacin personalizada de la fsica: permite programar leyes de fsica
personalizadas.

Y al ser de pago, el fabricante proporciona garanta y soporte.

Ventajas e inconvenientes:

Ventajas:
- Permite la simulacin de todo tipo de robots (con patas, ruedas, voladores), robots
comerciales, y robots definidos por el usuario.
- Tiene completas libreras con todo tipo de actuadores y sensores.
- Utiliza las libreras OpenGL y su propio editor tridimensional, para los modelos de
robots y su entorno, e incorpora facilidades para la importacin de modelos 3D.
- Permite la programacin de los robots en C, C++ y Java. Tambin puede
programarse en URBI (ver desventajas).
- Utiliza las libreras Open Dynamics Engine (ODE, que son de cdigo abierto) [4]
para las simulaciones fsicas.
- Permite guardar las simulaciones en formato de vdeo AVI o MPEG.
- Incluye ejemplos (lo cul siempre ayuda al aprendizaje de uso de cualquier
aplicacin).
- Permite la simulacin de sistemas multi-agente.
- Disponible para los sistemas operativos Linux, Windows, y Mac OS X.

Inconvenientes:
- Elevados requisitos mnimos: (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 grfica de ATI o nVidia con 64 megabytes de RAM).
- Para la utilizacin del lenguaje URBI, es necesario software adicional.

18
Referencias
[1] URBI for Webots
Gostai
http://www.gostai.com/webots.html

[2] URBI documentation


Gostai
http://gostai.com/doc.php

[3] Order Now!


Cyberbotics
http://www.cyberbotics.com/order/

[4] Open Dynamics Engine


Russell Smith
http://www.ode.org/

19
7. Uchilsim
Es un simulador de ambientes robticos diseado para la liga de robots cuadrpedos de
RoboCup.. Hecho en C++, para wxp, Linux.

UchilSim es un simulador realista para la generacin de robots autnomos capaz


de adaptarse a nuevas situaciones. Un mecanismo fundamental de adaptacin es el
aprendizaje que permite simulaciones realistas. Reproduce aspectos fundamentales del
entorno real de un robot, tales como la dinmica de cuerpos en movimiento, el
comportamiento de motores y sensores del robot y tambin la misma dinmica
computacional de ste.

Est diseado sobre la base de dos motores de software de procesamiento; uno a


cargo de reproducir la dinmica de cuerpos rgidos articulados requerida para la
simulacin, y el otro, a cargo de generar una representacin grfica adecuada de los
objetos dentro del escenario de juego. El simulador tambin incluye una variedad de
funcionalidades de interfase que permiten conectar el ncleo del sistema con sistemas
de aprendizaje y con los mdulos de control UChile1, el cual corresponde a un paquete
de software que permite controlar a un equipo de robots cuadrpedos, gobernando los
servomotores, procesando y analizando los datos de las cmaras, estimando la
localizacin de los jugadores y en definitiva controlando a todos los robots durante un
partido de ftbol robtico.

Es importante sealar que para un manejo ms sencillo del software el simulador


incluye tambin una completa interfaz grfica.

Una caracterstica importante a tener en cuenta es que no hay que pagar una
licencia, es un software libre. En cuanto a su expansin en robtica hay que sealar que
se utiliza principalmente a robots tipo AIDO, siendo empleado por la universidad
catlica de chile.

Ventajas e inconvenientes:

Ventajas:
- Permite modelar el entorno (aunque ste mismo es exclusivamente un campo de
futbol).
- Robots prediseados
- Permite el estudio del comportamiento en enjambre
- Permite simulacin evolutiva
- Empleo de Libreras Grficas abiertas

Inconvenientes:
- Esclusividad de uso: robots AIDO y empleo RoboCup de ftbol
- La simulacin de colisiones consume excesivo tiempo de procesador.
- La duracin para el aprendizaje al golpeo de la pelota es de 8 horas de simulacin.

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 diseado para la captura y animacin de
seales. Estas seales se adquieren por medio de una tarjeta de adquisicin. Permite el
desarrollo interactivo de programas, gracias al editor de cdigo fuente ANSI C y
compilador su compilador de lenguaje C. [1]

Los creadores son Nacional Instruments y estos ofrecen tambin LabVIEW, que
con la misma funcionalidad, est orientado a programacin grfica en vez de al
desarrollo de cdigo C. NI mantiene la compatibilidad con otros compiladores de
propsito general, como las distintas suites de Microsoft Visual Studio (Visual Basic,
Visual C++, .NET, etc), a travs de su producto Measurement Studio. [2]

Con LabWindows/CVI, usted puede crear interfaces localizadas de usuario,


crear y trabajar con componentes ActiveX y desarrollar aplicaciones multihilos.
Combinando conocimientos de programacin en C con el poder que da el fcil empleo
de LabWindows/CVI podr crear aplicaciones avanzadas de medicin fcil y rpido
pensar. [5]

- Dispone de herramientas software tiles para


o Editar interface grfico de usuario (GUI) con gran cantidad de objetos
prediseados.
o Disear paneles de funciones para ejecucin interactiva y generacin de
cdigo de forma automtica.
- Dispone de libreras de funciones tiles para:
o Adquirir datos de la o las tarjetas asociadas.
o Analizar esos datos.
o Comunicarnos de forma serie.
o Gestionar el interface grfico de usuario.

En la misma Web de NI encontraremos manuales del programa www.ni.com

La dificultad se resume en el dominio que se tenga en programar en lenguaje C.


Tambin para usar un software como este es necesario conocer el hardware del robot en
nuestro caso, ya que es de lo que se trata. Adems para conectar la parte fsica hardware
a la tarjeta o dispositivo de adquisicin es necesario tener claro algunos conceptos,
vase [1].

Como ya hemos dicho es un producto de Nacional Instruments y efectivamente


es de pago pero fcilmente adquirible www.ni.com. La ltima versin es
LabWindows/CVI 7.1

Una gran variedad de industrias emplean LabWindows/CVI, incluyendo la


militar y de defensa, telecomunicaciones, manufacturacin y aeroespacial. Ya sea que
usted est midiendo la fuerza de seales transmitidas por una red de trabajo o
desarrollando sistemas de prueba en manufactura para telecomunicaciones, la
instrumentacin virtual de NI y LabWindows/CVI le pueden ayudar a alcanzar sus
objetivos - ms rpido, mejor y dentro de su presupuesto. [5]

En cuanto al mundo de la robtica, a modo de prototipos y de proyectos de


investigacin de calidad es una herramienta ms que conocida.

22
Ventajas e inconvenientes:

LabWindows/CVI es un ambiente de desarrollo completamente integrado,


especialmente diseado para la creacin de sistemas de instrumentacin basados en
GPIB, PXI, VXI, tarjetas de adquisicin de datos insertables y otros. Proporciona
muchas caractersticas tiles que incrementan su productividad sin sacrificar la
velocidad o fcil manipulacin del cdigo fuente compilado en C [5].

En robtica que es el tema que nos interesa, se considera una herramienta no


bsica, pero muy til para monitorizar y comprobar el funcionamiento del hardware [3]
[4] (vase en las referencia dos aplicacin muy interesante de robots de la Escuela
politcnica superior de Alcal de Henares)

Como requisitos:

- Necesario tener una tarjeta de adquisicin compatible.


- Necesario acondicionar el robot con el hardware necesario para poder
monitorizar el funcionamiento que es de lo que se trata. Es por esto que difiere
de los dems simuladores.

Referencias
[1] Departamento de Electrnica
Escuela Politcnica Superior (Universidad de Alcal de Henares)
http://www.depeca.uah.es/wwwnueva/

[2] Conexin De Instrumentos De Medida Con Gpib


Fernando Seco Granja (Doctor en Ciencias Fsicas)
Instituto de Automtica Industrial (Arganda del Rey)
http://www.iai.csic.es/lopsi/static/gpib.pdf

[3] Sistema de posicionamiento de un robot mvil autnomo mediante infrarrojos


Javier Balias Santos y Julio Pastor Mendoza
Departamento de Electrnica (Universidad de Alcal de Henares)
http://www.depeca.uah.es/docencia/LibreEleccion/IDMRM/repositorio/Sistema
BalizasElectrococo.pdf

[4] Simulador De Un Robot Mvil Como Complemento De Un Kit De Robot


Velocista.
A.Villar y J Pastor
Departamento de Electrnica (Universidad de Alcal de Henares)
http://www.euitt.upm.es/taee06/papers/S7/p205.pdf

[5] http://www.tracnova.com/Lab%20WindowsCVI.htm

23
9. Matlab
Matlab es una herramienta software muy popular, no precisamente de
simulacin de robots pero muy til como ya veremos para ciertos aspectos de
tratamiento de seales de estos. Usa un lenguaje de programacin creado en 1970 para
proporcionar un sencillo acceso al software de matrices LINPACK y EISPACK sin tener
que usar Fortran. Tambin tiene su propio compilador [1].

Recientemente, los creadores de Matlab, Mathworks (http://www.mathworks.


com) emprendieron una lnea clara de ampliacin de su mercado hacia la conexin de
hardware con el PC, distribuyendo toolboxes para el control de tarjetas de adquisicin,
generacin de cdigo y emulacin de DSPs, xPC (control remoto de PCs para operacin
en tiempo real), adquisicin de imgenes, etc. La primera versin de la toolbox
especfica de control de instrumentos de medida apareci en 2001, y la versin 2.1
disponible en la actualidad (2004) est suficientemente depurada para ser competitiva
con productos ms maduros como CVI. Existe tambin una toolbox de adquisicin de
datos con soporte para tarjetas de entrada y salida de seales analgicas y digitales,
dentro de esta misma lnea de productos [2]. Con estas versiones la aplicacin en la
robtica de Matlab es muy til, a la hora de capturar matrices de datos referentes a
cualquier sistema del robot o al revs, a partir de esa obtencin, generar algoritmos
necesarios para o bien introducir en un simulador o directamente introducir en el
hardware.

Adems podemos simular cualquier sistema robtico esquemticamente y con


seales y bloques que interactan entre si, gracias a su herramienta Simulink. El mtodo
de simulacin permite realizar una animacin por pantalla de los movimientos de los
robots visualizando los estados de activacin de sus sensores.

La primera versin surgi con la idea de emplear unos paquetes de subrutinas


escritas en Fortran en los cursos de lgebra lineal y anlisis numrico, sin necesidad de
escribir programas en Fortran [1]. Y durante los ltimos aos han ido saliendo versin
tras versin: Matlab 4.2, Matlab 5.2, 5.3, 6.1, 6.5, 7.0.

En la actualidad existen muchsimos manuales de Matlab. En la Web oficial


(http://www.mathworks.com) encontraremos algunos. Echar una ojeada a los realizados
por la Escuela tcnica superior de ingenieros, en la Politcnica de Madrid, muy
interesantes y completos (http://www.tayuda.com/ayudainf/aprendainf/varios.htm).

Matlab es fcil de utilizar, depende mucho de para que lo utilicemos. Adems


como ya hemos dicho existen infinidad de manuales y ejemplos de uso de todo tipo de
esta herramienta.

El gran problema de este software es que es de pago, pero para Linux hay una
versin: 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

Es un software muy usado en universidades, centros de investigacin y por


ingenieros. En los ltimos aos ha incluido muchas ms capacidades, como la de
programar directamente procesadores digitales de seal, crear cdigo VHDL y otras [1].
En aplicaciones robticas es una herramienta muy til entre tantas. Ejemplos [3][4].

24
Ventajas e inconvenientes:

Usando el simulador de Matlab, Simulink, el proceso de simulacin se basa en


realizar simulaciones interactivas de una duracin determinada, tomando como
respuestas del sistema el ltimo resultado de este intervalo.
- Simulink nos da la posibilidad de estructurar nuestro sistema (Robot), en cuanto
entradas, salidas, seales, motores, sensores y ver como se comportan y se realimentan
sin tener que usar el hardware.
- El simulador esta programado con una estructura completamente modular la cual
posibilita la realizacin de modificaciones y posibles ampliaciones [1].

A la hora de tratamiento de datos y realizacin de algoritmos la herramienta


Matlab es muy potente y nos puede ser muy til en cualquiera de los aspectos en los que
un robot haga uso de estos, con independencia de la simulacin.

El problema del simulador de sistemas que nos proporciona Matlab es genrico,


no esta especializado en robot. La aplicacin de Matlab en los robots mviles suele ser
muy especfica. Carece de un interface para simulacin de estas aplicaciones limitado.
Adems si queremos usar de la potencia algortmica de Matlab para comunicar datos al
robot hace falta de otros sistemas de captura de datos.

Referencias
[1] Simulador En Matlab De Robots Moviles
Santos Barquero Cceres
Universidad Rovira i Virgili
http://sauron.etse.urv.es/public/propostes/pub/pdf/118res.pdf

[2] Conexin De Instrumentos De Medida Con Gpib


Fernando Seco Granja (Doctor en Ciencias Fsicas)
Instituto de Automtica Industrial (Arganda del Rey)
http://www.iai.csic.es/lopsi/static/gpib.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 eo 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 aplicacin de programacin vis ual
Uchils im Gratuito Slo A IBO S** Slo A IBO C++ Robocup: Liga de robots cuadrpedos
Webots Des de 260 ! S S S C, C++, Java, URBI Siumulacin de robots mviles , 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 eo
M atlab 11.915 $ NO No No M atlab Repres entacin grfica de datos matriciales
LabWindows 499 ! No Si No Ninguno Creacin de paneles de control y s eguimiento electrnico

*La licencia comercial tiene un cos te de 399$ [6]


**Con limitaciones

26
11. Conclusiones
Con el despunte de la robtica que cada da se aproxima ms 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 aos nadie hubiese podido imaginar que algn da llegaran a existir. Por ello
cada da hay ms software de simulacin, con mayores posibilidades y realismo,
existiendo una tendencia cada vez mayor a ofrecer a los usuarios una interfaz agradable,
sencilla y cmoda con la que se puedan familiarizar de forma rpida e intuitiva.

En ste trabajo se han expuesto los principales simuladores que existen en la


actualidad, pretendiendo resaltar las caractersticas principales de cada uno, sus puntos
fuertes y los que deberan mejorarse, para cerrar con una comparativa entre todos ellos.
Dependiendo del proyecto a desarrollar el usuario tendr que decidir cul se ajusta
mejor a sus necesidades.

Вам также может понравиться