Sunteți pe pagina 1din 23

UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

GUIA DE LABORATORIOS CON EL SOFTWARE V-REP


Introducción al software VREP
Ing. Josmell Alva Alcántara.
Ingeniería Mecatrónica -UNT

I.-TEMA: Introducción al software V-REP.


II.- OBJETIVOS:
 Instalar el software v-Rep.
 Conocer el entorno de la simulación del Software.
 Interface de usuario.
 Desarrollar un diseño y simulación de mecanismo grua

III.- MATERIALES:
- Computador.
- Software v-rep.
III.- MARCO TEÓRICO.

Figura 1. Logo V-rep


(Fuente: http://www.coppeliarobotics.com/)

1.- ¿Qué es V-rep?


El simulador de robot V-REP, con un entorno de desarrollo integrado, se basa en una
arquitectura de control distribuido: cada objeto / modelo puede controlarse
individualmente a través de un script incrustado, un complemento, un nodo ROS o
BlueZero, un cliente API remoto o un cliente personalizado solución. Esto hace que V-REP
sea muy versátil e ideal para aplicaciones de múltiples robots. Los controladores se pueden
escribir en C / C ++, Python, Java, Lua, Matlab u Octave.
V-REP se utiliza para el desarrollo rápido de algoritmos, simulaciones de
automatización de fábricas, creación rápida de prototipos y verificación, educación

1
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

relacionada con la robótica, monitoreo remoto, verificación doble de seguridad, etc. Se


puede encontrar una descripción general de las características

1.- ¿Por qué usar V-REP?


Un simulador es esencial para la prueba de cualquier sistema robótico ya que se
evita que éste se dañe. También es muy útil para la enseñanza ya que no se precisa del
robot físicamente. La mayoría de softwares que se encuentran en el mercado están
diseñados para los robots de la propia empresa que desarrollaron este software y en raras
ocasiones es gratuito.
Por este motivo recurrimos a V-REP®. Este software de la empresa Coppelia
Roboticses un simulador: libre, gratuito, que permite diferentes modos de simulación y trae
unos algoritmos a primera vista bastante atractivos para el cálculo de elementos esenciales
en cualquier robot como son la cinemática inversa y la detección de colisiones. El entorno
gráfico te permite diseñar tu propio robot con los elementos que te aporta o importar tu
propio diseño desde cualquier entorno gráfico.

2. ¿V-REP®es sencillo de manejar?


El desarrollador te proporciona un extensor manual en formato digital en el que
vienen detallados los temas necesarios para familiarizarse con el entorno. Al ser una
aplicación en alza, tiene una comunidad bastante grande detrás en la que vienen resueltos
la mayoría de problemas con los que te puedes encontrar. Además, la propia empresa te
responde en un periodo muy corto de respuesta.

3.- ¿V-REP®tiene limitaciones?


Es un simulador muy interesante, pero hay ciertos elementos que en primera
instancia no sabes muy bien qué estás modificando. El lenguaje de programación, LUA, es
un lenguaje de muy alto nivel con funciones prediseñadas con el que a veces te sientes
atado de manos. Otra limitación presente es que los algoritmos de cálculo del Jacobiano
(Pseudoinversa y DLS) están herméticamente cerrados y no puedes modificar nada.

4.- V-REP(Virtual Robot Experimentation Platform)

V-REP es el software ideal para lo que se pretende, que es realizar una simulación
de un entorno con robots manipuladores móviles en tiempo real. Contiene gran cantidad

2
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

de opciones a la hora de establecer propiedades físicas del robot, así como para su control
(extensa capacidad de APIs) y visualización de información.

Figura 2. Entorno de V-rep.


(fuente: http://www.coppeliarobotics.com/helpFiles/)

Este software lleva un entorno de desarrollo integrado que está basado en una
arquitectura de control distribuida. Esto presenta una gran ventaja ya que cada objeto o
modelo se puede controlar individualmente de seis maneras de programación distintas:
“scripts embebidos, plugins, API remota de cliente, complementos (add-ons), nodo ROS y
cliente/servidor personalizado”.

Además, cualquiera de estas formas que se elijan, es compatible con los lenguajes
de programación más extendidos actualmente, como, por ejemplo: C/C++, Python, Java,
Matlab, etc.

También cuenta con otra ventaja muy importante, que es la gran cantidad de
información que aporta el propio programa y su página web oficial, mediante ejemplos,
tutoriales y archivos con código de control de los cuales uno se puede apoyar para
configurar lo que necesite. Aparte de lo mencionado anteriormente VREP presenta otras
características importantes a destacar en el proyecto como:

 Software multiplataforma y portable para windows, Linux y MAC OS.


 Tres motores físicos diferentes para mayor velocidad en los cálculos dinámicos,
como también permite simulaciones físicas e interacciones con objetos del mundo
real.

3
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

 Mecanismos importantes para la simulación como la cinemática directa/ inversa, la


detección de colisiones, el cálculo de una distancia mínima, path/motion planning,
etc.

 Integración, creación y edición de modelos y objetos.


 Simulación con sensores de proximidad y de visión.
 Personalización de la interfaz de usuario.

IV.. - DESARROLLO:
IV.1- Instalación.
IV.1..-Ingresar a la página: http://www.coppeliarobotics.com/, ir a la opción
download, y descargar la versión V-REP PRO EDU .

Figura 3. Figura de Descarga de V-REP.


IV.1.2.-Dar clic en la opción de Windows.
IV.1.3.- Realizar, la instalación del software V-rep.

Figura 4. Acceso directo V-REP-

4
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

IV.2.- Interfaz de Usuario.


Al iniciar VREP, se abre por defecto una escena. Las escenas son el elemento
principal del programa. Éstas e están formadas por subelementos llamados modelos.

IV.2.1.- Ventana de Consola:


Una ventana de consola: en Windows, cuando se inicia la aplicación V-REP, se crea
una ventana de consola, pero se oculta directamente de nuevo. Este comportamiento
predeterminado de ocultar la ventana de la consola se puede modificar en el cuadro de
diálogo de configuración del usuario.

Figura 5. Ventana de Consola de Windows.


La ventana de consola o terminal muestra qué complementos se cargaron y si su
procedimiento de inicialización fue exitoso. La ventana de la consola no es interactiva y solo
se usa para generar información. El usuario puede enviar información directamente a la
ventana de la consola con el comando de impresión Lua (desde un script) o con los
comandos C printf o std :: cout desde un complemento. Además de eso, el usuario puede
crear mediante programación ventanas de consola auxiliar para mostrar información
específica de una simulación.

IV.2.2.- Ventana de Aplicación:

La ventana de la aplicación es la ventana principal de la aplicación. Se utiliza para


mostrar, editar, simular e interactuar con una escena. Los botones izquierdo y derecho del
mouse, la rueda del mouse y el teclado tienen funciones específicas cuando se activan en
la ventana de la aplicación. Dentro de la ventana de la aplicación, las funciones de los
dispositivos de entrada (mouse y teclado) pueden variar según el contexto o la ubicación
de activación.

5
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

Figura 6. Ventana de Consola de aplicación.


Cuando inicie la aplicación V-REP, V-REP inicializará una escena
predeterminada. El usuario es libre de abrir varias escenas en paralelo.

Figura 7. Ventana de escenas en paralelo.


Cada escena comparte la ventana de la aplicación y los cuadros de diálogo con las
otras escenas, pero solo el contenido de la escena activa será visible en la ventana de la
aplicación o en los cuadros de diálogo (solo una escena es visible en un momento dado).

En la siguiente sección, se dará una breve descripción de los elementos de la ventana


de la aplicación:

6
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

Figura 8.- Ventana de aplicación de V-REP.

A) Barra de aplicaciones:

La barra de aplicaciones indica el tipo de licencia de su copia V-REP, el nombre de


archivo de la escena que se muestra actualmente, el tiempo utilizado para un pase de
renderizado (un pase de visualización) y el estado actual del simulador (estado de
simulación o tipo del modo de edición activo).
La barra de aplicaciones, así como cualquier superficie dentro de la ventana de la aplicación,
también se pueden usar para arrastrar y soltar archivos relacionados con V-REP en la
escena. Los archivos admitidos incluyen archivos "* .ttt" (archivos de escena V-REP),
archivos "* .ttm" (archivos de modelo V-REP) y archivos "* .ttb" (archivos UI V-REP).

B) Barra de menú:

Figura 9.- Barra de Menú.

La barra de menú permite acceder a casi todas las funcionalidades del simulador.
La mayoría de las veces, los elementos en la barra de menú activan un diálogo. El contenido
de la barra de menú es sensible al contexto (es decir, dependerá del estado actual del
simulador). Alternativamente, se puede acceder a la mayoría de las funciones en la barra

7
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

de menús a través de un menú emergente, haciendo doble clic en un icono en la vista de


jerarquía de escena o haciendo clic en un botón de la barra de herramientas.

C) barras de herramientas:

Las barras de herramientas presentan funciones a las que se accede con


frecuencia (por ejemplo, cambiar el modo de navegación, seleccionar otra página, etc.).
Algunas funciones en la barra de herramientas 1, y todas las funciones en la barra de
herramientas 2 también se puede acceder a través de la barra de menú o el menú
emergente. La siguiente figura explica la función de cada botón de la barra de
herramientas:

Figura 10. Barra de Herramientas 1

Figura 11. Barra de Herramientas 2

8
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

D) Navegador de modelos:

El navegador de modelos es visible de forma predeterminada, pero se puede


alternar con el botón correspondiente de la barra de herramientas. Muestra en su parte
superior una estructura de carpeta de modelo V-REP, y en su parte inferior, miniaturas
de modelos contenidos en la carpeta seleccionada.

Las miniaturas se pueden arrastrar y soltar en la escena para cargar


automáticamente el modelo relacionado. Las miniaturas capturadas aparecen oscuras
si el área de colocación no es compatible o no es adecuada.

Figura 12. Navegador de Modelos.

9
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

E) Jerarquía de escena:

La jerarquía de escena es visible de forma predeterminada, pero se puede alternar


con el botón correspondiente de la barra de herramientas. Muestra el contenido de una
escena (es decir, todos los objetos de escena que componen una escena).

Dado que los objetos de escena se construyen en una estructura similar a la


jerarquía, la jerarquía de escena muestra un árbol de esta jerarquía, y los elementos
individuales se pueden expandir o contraer. Un doble clic en un icono abre / cierra un
cuadro de diálogo de propiedades relacionado con el icono en el que se hizo clic. Un
doble clic en el nombre de un objeto permite editarlo. La rueda del mouse, así como un
arrastre de las barras de desplazamiento de la vista de jerarquía de escena, permite
mover el contenido hacia arriba / abajo o hacia la izquierda / derecha. La selección de
control y cambio siempre es compatible. Los objetos en la jerarquía de la escena se
pueden arrastrar y soltar en otro objeto, para crear una relación padre-hijo. La jerarquía
de la escena mostrará un contenido diferente si el simulador está en un modo de
edición.

Figura 13. Jerarquía de escenas.

10
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

F) Página Selector:

Cada escena puede contener hasta 8 páginas, cada una de ellas puede contener
un número ilimitado de vistas. Una página puede verse como contenedor de vistas.
Consulte la sección de páginas y vistas para más detalles.

Figura 14. Vistas de escenas.

G) Vistas:

Puede haber un número ilimitado de vistas en una página. Se usa una vista para
mostrar la escena (que contiene un entorno y objetos), vista a través de un objeto visible
(por ejemplo, cámaras, gráficos o sensores de visión)

Una página en V-REP es la superficie de visualización principal de una escena. No


es directamente una vista, pero puede contener una, dos o tantas vistas como sea
necesario. Una vista es lo que se utiliza para mostrar el contenido de la imagen de un objeto
específico que debe ser un objeto visible. Si una vista está asociada con un objeto de

11
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

cámara, por ejemplo, puede mostrar lo que ve la cámara. La siguiente figura explica la
página, la vista y la relación de objeto visible.

Figura 15. Relación de Objeto visible.


IV.3.- Árbol de Elementos Centrales.

Figura 16. Relación de Objeto visible.

12
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

IV.4.- Escenas y modelos.

Las escenas y los modelos son los principales elementos de simulación de V-REP.
Un modelo es una subelemento de una escena, claramente marcado como modelo. Una
escena puede contener cualquier número de modelos. La siguiente figura ilustra la relación
escena-modelo:

Figura 17. Escena y modelo.

Tanto las escenas como los modelos pueden contener uno o varios de los siguientes
elementos:

A) Scene objects:

Los elementos principales en V-REP que se usan para construir una escena de
simulación son los objetos de escena (en resumen, objetos). Los objetos son visibles en la
jerarquía de escena y en la vista de escena. En la vista de escena, los objetos tienen una
representación tridimensional como se ilustra en la siguiente figura:

13
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

Figura 18. Objetos de escena.

A.1.- Shape: una forma es una malla rígida que se compone de caras triangulares; Malla
aleatoria, malla convexa, malla primitiva o malla de altura Se puede agrupar / desagrupar
(también combinado) Optimizado para cálculos rápidos

Figura 19. Objetos Shape.

A.2.- Joint: un objeto articular es una articulación o actuador. Se admiten cuatro tipos:
juntas giratorias, juntas prismáticas, tornillos y juntas esféricas.

14
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

Figura 20. Objetos articulación

A.3.- Gráficos: se utiliza un gráfico para registrar y visualizar datos de simulación. Gráficos
de tiempo • Gráficos X / Y • Curvas 3D • Se pueden exportar

Figura 21. Objetos gráfico.


A.4.- Dummies: un maniquí es un punto con orientación. Los dummies son objetos
multipropósito que pueden tener muchas aplicaciones diferentes. Marco auxiliar de
referencia y objeto auxiliar.

Figura 22. Objetos dummies


A.5.-Sensores de proximidad: un sensor de proximidad detecta objetos geométricamente
exactos dentro de su volumen de detección. V-REP admite sensores de proximidad tipo
pirámide, cilindro, disco, cono y rayos.

Se puede utilizar para modelar casi cualquier tipo de sensor de proximidad, desde
ultrasonidos hasta infrarrojos, etc.

15
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

Figura 23. Sensor de proximidad

A.6.- Sensores de visión: un sensor de visión es un sensor tipo cámara que reacciona a la
luz, los colores y las imágenes.
Procesamiento de imagen integrado • Renderizado con trazado de rayos también
disponible

Figura 24. Sensor de Visión.


A.7.-Sensores de fuerza: un sensor de fuerza es un objeto capaz de medir fuerzas y pares
que se le aplican. También tiene la capacidad de romperse si se supera un determinado
umbral.

Figura 25. Sensor de Fuerza.


16
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

A.8.- Cámaras: una cámara es un objeto que permite ver la escena de simulación desde
varios puntos de vista.

Figura 26. Objeto cámara.

A.9.- Luces: una luz es un objeto que permite iluminar la escena de simulación.

Figura 27. Objeto Luces.


A.10 Mirror: Función de recorte de espejo o escena / objeto

Figura 28. Objeto Mirror.

 Se presenta un video respecto a Camare, light, and mirror:


https://www.youtube.com/watch?v=193Vlb-kNP4

17
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

A.10.-Path: una ruta es un objeto que define una ruta o trayectoria en el espacio. Se puede
utilizar para diversos fines, también como una articulación o actuador personalizado.

Figura 29. Objeto Path.

A.11.- Octrees: un octree es una estructura de datos de partición espacial compuesta por
voxels.

Figura 30. Objeto Octress.


A.12.- Nubes de puntos: una nube de puntos es una estructura de octree que contiene
puntos.

Figura 31. Nube de puntos.


18
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

B).- CALCULATION MODULE.

V-REP ofrece potentes funcionalidades de cálculo, o módulos de cálculo, que no


están encapsulados directamente en objetos (como sensores de proximidad o sensores de
visión, por ejemplo), sino que operan en uno o varios objetos.

Figura 32. Módulos de cálculo.


Ofrece 5 algoritmos básico:

Figura 33. Algoritmos de módulos de cálculo.


19
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

B.1.- Inverse/forward kinematics:

El módulo permite resolver de manera muy eficiente cualquier tipo de problema


cinemático inverso o directo.

Figura 34. Algoritmos de Cinemática Inversa.

B.2.- Minimum Distance Calculations:

El módulo permite rastrear, registrar y visualizar distancias mínimas entre


cualquier entidad medible:

Figura 34. Algoritmos de cálculo de la distancia mínima.

20
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

B.3.- the collision detection module:

El módulo permite rastrear, registrar y visualizar colisiones que pueden ocurrir


entre cualquier entidad colisionable.

Figura 35. Algoritmos de detección de colisión.


B.4.- Path Planning:

Planificación de tareas en espacio 3D y en espacio 2D para vehículos con


restricciones de movimiento no holonómicas.

Figura 36. Algoritmos de planificación de trayectorias.

21
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

B.5.- The dynamics module:

El módulo permite simular dinámicamente objetos o modelos para lograr


interacciones de objetos (por ejemplo, respuesta de colisión, agarre de objetos, etc.)

Motores de Física
 Bullet Physics.
 Open Dynamics Engine (ODE)
 Vortex Dynamics
 Newton Dynamics.

Figura 37. Motores Dinámicos.

Figura 38. Configuración de propiedades de motores dinámicos.

22
ROBÓTICA Ing. Josmell Alva Alcántara.
UNIVERSIDAD NACIONAL DE TRUJILLO INGENIERÍA MECATRÓNICA.

V.- CUESTIONARIO:
- Simular un Mecanismo grúa Torre.

Figura 39. Simulación de un mecanismo grúa torre.

23
ROBÓTICA Ing. Josmell Alva Alcántara.