Elena Canorea
Communications Lead
La interacción con robots en entornos complejos -especialmente cuando se trata de realizar tareas de manipulación delicadas- se ha visto a menudo limitada por las interfaces disponibles. Los sistemas de control remoto tradicionales pueden resultar engorrosos y no ofrecen la precisión o flexibilidad necesarias para las tareas más complejas. Aquí es donde entra en juego nuestro proyecto: una solución innovadora que permite manipular a distancia paneles de control y otros objetos mediante robots a través de la realidad virtual. Combinando la potencia de la robótica avanzada con la tecnología punta de realidad virtual, hemos desarrollado un sistema que proporciona una forma natural e intuitiva de controlar una plataforma robótica móvil. Esta interacción es posible gracias a un dispositivo Meta Quest 3, que ofrece una forma inmersiva e intuitiva de interactuar con el entorno de forma remota.
La principal motivación de este proyecto es proporcionar una interfaz de control nueva y más intuitiva para los robots, que permita a los usuarios realizar tareas de manipulación complejas con facilidad. Gracias al seguimiento de las manos en tiempo real o a los guantes hápticos, junto con una respuesta visual continua en realidad virtual, los usuarios pueden interactuar con los robots de una forma que sería increíblemente difícil con los sistemas tradicionales de control remoto. Este sistema permite un control más preciso, una mejor navegación y una mayor percepción, aspectos todos ellos cruciales a la hora de interactuar con robots en entornos dinámicos.
Este proyecto pretende tender un puente entre la destreza humana y la precisión robótica, permitiendo a los operarios realizar tareas complejas en lugares distantes o peligrosos sin estar físicamente presentes. Ya sea para mantenimiento industrial, exploración de entornos peligrosos o aplicaciones de investigación, esta tecnología tiene el potencial de revolucionar las operaciones a distancia.
El éxito de este proyecto se basa en la potente combinación de tres sistemas robóticos de vanguardia: el robot Spot de Boston Dynamics, el brazo robótico Kinova Gen3 y el Allegro Hand V4. Cada uno de estos robots desempeña un papel fundamental en la consecución de nuestro objetivo de permitir la manipulación remota a través de la realidad virtual, ofreciendo capacidades únicas que funcionan a la perfección juntas.
Spot, de Boston Dynamics [1], es un robot móvil versátil y ágil diseñado para desplazarse por entornos complejos. Conocido por su capacidad para desplazarse por terrenos abruptos, Spot puede caminar, subir escaleras y atravesar obstáculos con una estabilidad impresionante. Este robot sirve como base del sistema, desplazándose por entornos mientras transporta cargas útiles. La avanzada movilidad de Spot le permite llegar a lugares de difícil o peligroso acceso para los humanos. El sistema de control del robot le permite evitar colisiones con obstáculos en tiempo real, manteniendo un alto nivel de seguridad mientras navega y realiza tareas.
El brazo robótico Kinova Gen3 [2] es un brazo ligero y muy flexible diseñado para proporcionar capacidades avanzadas de manipulación. Con siete grados de libertad, el brazo Gen3 puede alcanzar una amplia gama de posiciones y orientaciones, imitando la destreza del brazo humano. Este robot es ideal para realizar tareas delicadas que requieren precisión y agilidad.
La Allegro Hand V4 [3] es una mano robótica muy avanzada diseñada para proporcionar una destreza real. Equipada con 16 actuadores, es capaz de realizar movimientos complejos. La flexibilidad y precisión de la mano la hacen ideal para manipular una gran variedad de objetos, desde pequeñas herramientas hasta materiales más frágiles. Esta capacidad de controlar la mano al detalle aporta al sistema un nivel de interacción sin precedentes, que permite manipular objetos sofisticados en un entorno remoto.
El sistema permite a los usuarios controlar el robot Spot mediante el controlador Meta Quest. Aunque el usuario controla directamente su movimiento, el robot conserva su autonomía local, lo que significa que seguirá evitando obstáculos y navegando con seguridad. Esto garantiza un equilibrio entre el control manual y la evitación inteligente de obstáculos, evitando colisiones accidentales.
Además del control del movimiento, el usuario también puede cambiar entre los distintos modos de funcionamiento del robot, como por ejemplo:
Además, el usuario puede ajustar parámetros de movimiento específicos mediante controles deslizantes intuitivos en la interfaz de VR, como por ejemplo:
El brazo robótico puede manejarse de múltiples maneras, lo que proporciona flexibilidad en función de la tarea que se vaya a realizar:
Podemos controlar la mano robótica utilizando dos métodos de control principales:
Para dar vida a este proyecto, aprovechamos varias tecnologías y frameworks avanzados:
Evergine [4] es nuestro potente motor industrial interno basado en componentes y construido en .NET. Diseñado para ser multiplataforma, constituye la base de este sistema de interacción de VR. Evergine permite el renderizado en tiempo real, las simulaciones físicas y las experiencias de VR fluidas, lo que lo convierte en una parte crucial de este proyecto.
Se ha creado teniendo en cuenta las técnicas modernas de renderizado, y es compatible con los gráficos a través de canales de renderizado directos y diferidos. Su compatibilidad con Windows, Linux, Android, iOS y WebAssembly nos permite desplegar aplicaciones en una amplia gama de plataformas de manera eficiente. Con soporte integrado para AR y VR a través de OpenXR, Evergine es especialmente adecuado para entornos inmersivos.
Evergine también ofrece una sólida extensibilidad a través de su sistema de complementos, lo que permite a los desarrolladores mejorar fácilmente las capacidades del motor. Continuamente ampliamos su funcionalidad con nuevas características que se entregan como complementos, garantizando que Evergine se mantiene a la vanguardia de las necesidades de la industria. Entre las últimas incorporaciones se incluyen herramientas especializadas como el renderizador DICOM para imágenes médicas y un renderizador Gaussian Splatting para técnicas de visualización avanzadas. Esta flexible arquitectura de complementos permite a los usuarios adaptar Evergine a sus necesidades específicas, lo que lo hace apto para una amplia gama de aplicaciones.
Evergine Studio, el editor visual del motor, mejora aún más la productividad al proporcionar una interfaz fácil de usar para la gestión de escenas, activos y materiales. Estas características hacen de Evergine una opción ideal para crear aplicaciones industriales e interactivas de alto rendimiento y en tiempo real.
MRTK [5] es un paquete de Evergine que acelera el desarrollo de aplicaciones XR multiplataforma proporcionando una rica colección de componentes básicos. Este complemento incluye componentes esenciales como punteros, botones, elementos interactivos e integraciones de sistemas de entrada que facilitan el diseño de interfaces de usuario XR intuitivas y con capacidad de respuesta. Abstrae los detalles específicos de la plataforma, lo que permite a los desarrolladores centrarse en la experiencia del usuario en lugar de en la compatibilidad del hardware.
El paquete admite diversas modalidades de entrada, como la mirada y los controladores, lo que permite una interacción natural y envolvente en todos los dispositivos. Además, ofrece mecanismos de retroalimentación visual que enriquecen las aplicaciones XR. Si su objetivo son los cascos de realidad aumentada o realidad virtual, MRTK para Evergine ayuda a agilizar el desarrollo con componentes reutilizables y un modelo de interacción coherente.
XRV [6] es una biblioteca especializada que utilizamos para desarrollar experiencias XR personalizadas. Proporciona una colección de funcionalidades esenciales, como ventanas flotantes, menús manuales y comandos de voz, utilizando una arquitectura basada en módulos para permitir una fácil extensibilidad. Con XRV, mejoramos la interacción del usuario en el entorno virtual, haciendo que la experiencia sea más intuitiva y fácil de usar.
ROS2 [7] es un conjunto de bibliotecas y herramientas de software que sirve de columna vertebral de esta aplicación robótica. Ofrece componentes esenciales como controladores, algoritmos de última generación y sólidas herramientas de desarrollo, que nos permiten integrar y controlar de forma eficiente todos los robots de la solución. Gracias a su arquitectura basada en nodos, podemos desplegar distintos componentes en máquinas independientes para optimizar el uso de recursos en todo el hardware.
Aunque el sistema ya ofrece unas prestaciones impresionantes, trabajamos continuamente en nuevas características para mejorar la funcionalidad y la facilidad de uso:
Este proyecto representa un salto adelante en el campo de la robótica remota y la realidad virtual. Al combinar la tecnología de VR más avanzada con sistemas robóticos inteligentes, estamos consiguiendo que la manipulación a distancia sea más intuitiva, precisa y accesible. A medida que sigamos mejorando este sistema con nuevas funciones y capacidades, esperamos abrir posibilidades aún mayores para aplicaciones industriales, de investigación y en entornos peligrosos. El futuro de la interacción remota ya está aquí, y nos complace formar parte de esta revolución.
Elena Canorea
Communications Lead