Skip to content

Proyecto realizado por Alberto Ramos Sánchez durante las prácticas externas (IUCTC) y como Trabajo de Fin de Grado de Ingeniería Informática en la universidad de Las Palmas de Gran Canaria (EII-ULPGC)

Notifications You must be signed in to change notification settings

bertoramos/blender-editor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Robotcontrol editor toolbox - Blender addon.

Robotcontrol editor toolbox es un conjunto de herramientas creado para diseñar escenarios en 3D y controlar de forma remota plataformas robóticas. Es compatible para versiones superiores a 2.8 de Blender.

Creacion de rutas

Figura 1: Ejecución de plan de navegación.

Instalación.

En el último release se encuentra el código preparado para ser instalado.

1. Activar addon Measureit.

Para activar Measureit nos dirigimos a la pestaña preferencias : Edit > Preferences. Posteriormente, en la pestaña add-ons, buscamos Measureit y comprobamos que el checklist esté seleccionado.

Activate addon menu

Figura 2: Instalación de *addons*.

2. Instalar dependencias Python.

2.1. Instalar msgpack

Msgpack es un módulo de Python encargado de comprimir los paquetes utilizados en la comunicación con las plataformas robóticas.

Para instalarlo, seguimos los siguientes pasos:

  1. Nos dirigimos a la carpeta donde tenemos instalado Blender.
  2. Abrimos una terminal en ruta-instalación-blender/blender-2.82a-windows64/blender-2.82a-windows64/2.82/python/bin/.
  3. Ejecutamos los siguientes comandos:
    1. ./python.exe -m ensurepip
    2. ./python.exe -m pip install --upgrade pip
    3. ./python.exe -m pip install msgpack

NOTA: Las rutas y nombre de los ejecutables pueden variar ligeramente dependiendo de la versión de Blender y el sistema operativo.

2.2. Instalar hid

HID permite la entrada de periféricos.

Para instalar este módulo seguimos los mismos pasos explicados anteriormente, e instalamos con pip:

  1. ./python.exe -m pip install hid

Además, debemos copiar en la ruta del ejecutable python (ruta-instalación-blender/blender-2.82a-windows64/blender-2.82a-windows64/2.82/python/bin/) la librería hidapi.dll. Se encuentra disponible en https://github.com/libusb/hidapi/releases.

Posteriormente instalamos x360ce. Mediante este programa podemos asignar las teclas de un mando genérico a uno de XBOX360. Seguimos las instrucciones de instalación en la web.

IMPORTANTE: al ejecutar por primera vez el programa, ir a la pestaña ISSUES e instalar el driver en Virtual Gamepad Emulation Driver.

Tras la instalación seguimos las instrucciones para asignar los controles de nuestro mando al de xbox.

3. Instalar addons.

Este toolbox debemos instalarlo a partir de los 4 ficheros comprimidos en zip que se encuentran dentro del archivo zip del último release (archibuilder.zip, robotcontrol.zip, utilities.zip y filemanager.zip).

La instalación se realiza desde el panel de Addons de la ventana de preferencias.

Clicando en Install..., seleccionamos el fichero zip que deseamos instalar. Una vez instalado, nos debería aparecer automáticamente en el término de búsqueda. Si no es así, lo buscamos y lo activamos, al igual que lo hicimos con Measureit.

Estos pasos los repetimos con los 4 ficheros zip que disponemos.

Una vez completados estos pasos, guardamos las preferencias en la opción Save preferences.

Funciones.

NOTA: La interfaz de todas las funciones del addon están localizadas en las distintas pestañas del panel lateral (también conocido en la comunidad como N-panel). Pulsa la tecla N para abrirlo o cerrarlo.

Diseño de escenarios.

Con el addon archibuilder, se pueden crear paredes, habitaciones, techos y posicionar emisores de señales (beacons).

Crear paredes.

Se pueden crear paredes con las que delimitar un escenario virtual.

Crear paredes

Figura 3: Creación de paredes.

Crear habitaciones.

Utilizando paredes, se facilita la creación de habitaciones, que pueden modificarse.

Crear habitaciones

Figura 4: Creación de habitaciones.

Crear techos.

Los techos se representan como planos semitransparentes. Pueden situarse sobre el escenario, para delimitar su altura.

Crear techos

Figura 5: Creación de techos.

Crear obstáculos.

Los obstáculos representan zonas en las que las plataformas robóticas no pueden adentrarse.

Crear obstáculos

Figura 6: Creación de obstáculos.

Posicionar beacons.

Los beacons son emisores de señales que utiliza la plataforma robótica para orientarse en el escenario real. En el escenario virtual son utilizados como información adicional al usuario, para conocer donde están situados en la realidad.

Crear beacon

Figura 7: *Beacon bluetooth* y ultrasónico.

Beacon menu

Figura 8: Menú de creación de beacons.



Exportar escenarios.

Los escenarios diseñados pueden exportarse a ficheros .blend.

Exportar escenarios

Figura 9: Menú exportar escenarios.

Control de plataformas robóticas.

Con el addon robotcontrol se pueden crear plataformas robóticas virtuales, con los que diseñar y ejecutar planes de navegación sobre un escenario.

Creación de plataformas robóticas.

El addon está adaptado para poder diseñar múltiples tipos de plataformas robóticas. Por el momento, solamente se encuentra implementado el diseño de RoboMap.

Crear robots

Figura 10: Creación de plataformas robóticas.

Diseño de planes de navegación.

Siempre que exista una plataforma robótica en el escenario virtual, pueden crearse planes de navegación, que pueden ser enviados a la plataforma real para que los ejecute, o simularlos en la propia aplicación.

Creacion de rutas

Figura 11: Creación de ruta.

Ejecución de rutas.

Se pueden enviar rutas, pausar la plataforma, controlar su velocidad y cancelar planes de navegación.

Menu control de plataforma

Figura 12: Panel de control de plataformas.

Simulación.

Sin necesidad de comunicarse con la plataforma se pueden simular planes de navegación creados, con controles similares al panel de control de la plataforma.

Creacion de rutas

Figura 13: Menú de control de la simulación.

Telecontrol

Para activar el telecontrol, pulsar el botón Open manual control en la interfaz. Seleccionamos en el cuadro de diálogo nuestro dispositivo.

  • Para utilizar el teclado seleccionamos en el desplegable keyboard.
  • Para utilizar x360ce, abrimos el ejecutable x360ce.exe, asignamos controles y minimizamos para dejar en segundo plano. Posteriormente seleccionamos en el desplegable el dispositivo "Controller (XBOX 360 For Windows)".
Control con gamepad.
  • Joystick izquierdo: Dirección de movimiento.
  • L: rotar a la izquierda
  • R: rotar a la derecha
  • X/Y/A/B: parar
Control con teclado.
  • V: Activar/desactivar el movimiento. La plataforma se mueve continuamente en la dirección actual.
  • K/L : Ajustar dirección de la plataforma 1 grado a la izquierda/derecha.
  • W/S/A/D : Cambiar dirección hacia adelante/atrás/izquierda/derecha.
  • Flecha izquierda/derecha: rotar en sentido antihorario/horario.

Referencias

Acceso a publicación en el repositorio Acceda: http://hdl.handle.net/10553/77830

About

Proyecto realizado por Alberto Ramos Sánchez durante las prácticas externas (IUCTC) y como Trabajo de Fin de Grado de Ingeniería Informática en la universidad de Las Palmas de Gran Canaria (EII-ULPGC)

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages