Simuladores de Robots - Jhannifer F
Simuladores de Robots - Jhannifer F
Simuladores de Robots - Jhannifer F
SOFTWARES PARA
SIMULADORES DE ROBOTS
REALIZADO POR:
Jhannifer Fernández
27.260.129
SECCIÓN:
IC0931
ÍNDICE
1. MATLAB.
2. LAB. WINDOWS.
3. UCHILSIM.
4. WEBOTS
5. ROBOWORKS.
6. CUADRO COMPARATIVO.
INTRODUCCIÓN
La construcción de robots requiere no sólo de un diseño de hardware que
incluya tanto las partes mecánicas como electrónicas, sino también del
software que controla su comportamiento. Es precisamente en esta etapa de
diseño del software que resulta particularmente útil un programa de simulación
que nos permita trabajar en el algoritmo del robot sin la necesidad de cargar y
probar una y otra vez distintas versiones para comprobar su funcionamiento.
En este artículo les presento un simulador bastante sencillo y fácil de aprender.
Existen varios programas que nos permiten simular el funcionamiento de
distintos tipos de robots programándolos en una variedad de lenguajes.
Thomas H. Naylor y R. Bustamante la definen así: "Simulación es una técnica
numérica para conducir experimentos en una computadora digital. Estos
experimentos comprenden ciertos tipos de relaciones matemáticas y lógicas,
las cuales son necesarias para describir el comportamiento y la estructura de
sistemas complejos del mundo real a través de largos periodos de tiempo".
1. 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.
Recientemente, los creadores de Matlab, Mathworks emprendieron una línea
clara de ampliación de su mercado hacia la conexión de hardware con el PC,
distribuyendo toolboxes para el control de tarjetas de adquisición, generación
de código y emulación de DSPs, xPC (control remoto de PCs para operación
en tiempo real), adquisición de imágenes, etc. La primera versión de la toolbox
específica de control de instrumentos de medida apareció en 2001, y la versión
2.1 disponible en la actualidad (2004) está suficientemente depurada para ser
competitiva con productos más maduros como CVI. Existe también una toolbox
de adquisición de datos con soporte para tarjetas de entrada y salida de
señales analógicas y digitales, dentro de esta misma línea de productos [2].
Con estas versiones la aplicación en la robótica de Matlab es muy útil, a la hora
de capturar matrices de datos referentes a cualquier sistema del robot o al
revés, a partir de esa obtención, generar algoritmos necesarios para o bien
introducir en un simulador o directamente introducir en el hardware.
Además podemos simular cualquier sistema robótico esquemáticamente y con
señales y bloques que interactúan entre sí, gracias a su herramienta Simulink.
El método de simulación permite realizar una animación por pantalla de los
movimientos de los robots visualizando los estados de activación de sus
sensores.
La primera versión surgió con la idea de emplear unos paquetes de subrutinas
escritas en Fortran en los cursos de álgebra lineal y análisis numérico, sin
necesidad de escribir programas en Fortran [1]. Y durante los últimos años han
ido saliendo versión tras versión: Matlab 4.2, Matlab 5.2, 5.3, 6.1, 6.5, 7.0.
Matlab es fácil de utilizar, depende mucho de para que lo utilicemos. Además
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
versión: Scilab, es muy ligera pero da todas las funcionalidades del Matlab.
Es un software muy usado en universidades, centros de investigación y por
ingenieros. En los últimos años ha incluido muchas más capacidades, como la
de programar directamente procesadores digitales de señal, crear código VHDL
y otras. En aplicaciones robóticas es una herramienta muy útil entre tantas.
2. 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.
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.
Con LabWindows/CVI, usted puede crear interfaces localizadas de usuario,
crear y trabajar con componentes ActiveX y desarrollar aplicaciones multihilos.
Combinando conocimientos de programación en C con el poder que da el fácil
empleo de LabWindows/CVI podrá crear aplicaciones avanzadas de medición
fácil y rápida pensar.
- Dispone de herramientas software útiles para
o Editar interface gráfico de usuario (GUI) con gran cantidad de objetos
prediseñados.
o Diseñar paneles de funciones para ejecución interactiva y generación de
código de forma automática.
- Dispone de librerías 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 gráfico de usuario.
3. 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.
UchilSim es un simulador realista para la generación de robots autónomos
capaz de adaptarse a nuevas situaciones. Un mecanismo fundamental de
adaptación es el aprendizaje que permite simulaciones realistas. Reproduce
aspectos fundamentales del entorno real de un robot, tales como la dinámica
de cuerpos en movimiento, el comportamiento de motores y sensores del robot
y también la misma dinámica computacional de éste.
Está diseñado sobre la base de dos motores de software de procesamiento;
uno a cargo de reproducir la dinámica de cuerpos rígidos articulados requerida
para la simulación, y el otro, a cargo de generar una representación gráfica
adecuada de los objetos dentro del escenario de juego. El simulador también
incluye una variedad de funcionalidades de interfaz que permiten conectar el
núcleo del sistema con sistemas de aprendizaje y con los módulos de control
UChile1, el cual corresponde a un paquete de software que permite controlar a
un equipo de robots cuadrúpedos, gobernando los servomotores, procesando y
analizando los datos de las cámaras, estimando la localización de los
jugadores y en definitiva controlando a todos los robots durante un partido de
fútbol robótico.
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
4. 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ónde numerosos tipos de robots, incluidos robots definidos por el
usuario.
Permite la programación del robot mediante C, C++ y Java. Gracias a la
empresa Gostai, también existe la posibilidad de utilizar Universal Robotic Body
Interface (URBI).
Su precio varía según la licencia adquirida: 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:
o Supervisión: poner un programa que supervise y controle la simulación.
o Modo de simulación rápida: permite realizar la simulación sin
renderización 3D, lo cual la acelera.
o Programación personalizada de la física: permite programar “leyes de
física personalizadas”.
Y al ser de pago, el fabricante proporciona garantía y soporte.
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.
Los modelos se generan gráficamente, y se controla su simulación por medio
de archivos de datos, con el teclado, con la interfaz con LabView, Matlab o
Visual Basic; o con Robotalk: que es, según el FAQ (Preguntas frecuentes) del
Roboworks, un software (del que está disponible el código fuente) que nos
permite, remotamente y desde cualquier terminal con TCP/IP, controlar la
simulación.
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.
6. CUADRO COMPARATIVO
SOFTWARE DESCRIPCION COSTO DE LENGUA VENTAJAS DESVENTAJA
LICENCIA JE
Matbal Representación 11.915 $ Matlab Está programado El problema del
gráfica de datos con una estructura simulador de
matriciales completamente sistemas que
modular la cual nos proporciona
posibilita la Matlab es
realización de genérico,
modificaciones y No está
posibles especializado en
ampliaciones. robot
Lab. Creación de 499 euros Ninguno Proporciona En robótica se
Windows paneles de Muchas considera una
control y características útiles herramienta no
seguimiento que incrementan su Básica.
electrónico productividad sin
sacrificar la
velocidad o fácil
manipulación del
código fuente
compilado en C.
Uchilsim Robocup: Liga Gratis C++ Permite modelar el Exclusividad de
de robots entorno (aunque uso: robots AIDO
cuadrúpedos éste mismo es y empleo
exclusivamente un RoboCup de
campo de futbol), fútbol. La
Permite simulación simulación de
evolutiva y Empleo colisiones
de Librerías Gráficas consume
abiertas. excesivo tiempo
de procesador.