Desarrollo de un modelo virtual de una mano robótica controlado por movimientos físicos mediante integración de datos en Unreal Engine
Este proyecto de investigación se enfocó en el desarrollo y la implementación de un modelo virtual de una mano robótica, la cual pudiera ser controlada mediante la captura de movimientos físicos a partir de una integración de datos en Unreal Engine. En ese sentido, se busca explorar y comprender la...
- Autores:
-
Jáuregui Rozo, Juan Manuel
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2025
- Institución:
- Universidad de los Andes
- Repositorio:
- Séneca: repositorio Uniandes
- Idioma:
- spa
- OAI Identifier:
- oai:repositorio.uniandes.edu.co:1992/76221
- Acceso en línea:
- https://hdl.handle.net/1992/76221
- Palabra clave:
- Unreal Engine
Blender
Visual Studio
Sockets
Robótica
Mano
Ingeniería
- Rights
- openAccess
- License
- Attribution 4.0 International
Summary: | Este proyecto de investigación se enfocó en el desarrollo y la implementación de un modelo virtual de una mano robótica, la cual pudiera ser controlada mediante la captura de movimientos físicos a partir de una integración de datos en Unreal Engine. En ese sentido, se busca explorar y comprender la integración entre la realidad virtual y la realidad física, enfocándose en cómo esta relación puede ser aprovechada para el desarrollo de aplicaciones en robótica. Adicionalmente, con este enfoque se puede replicar el comportamiento de sistemas físicos dentro de entornos virtuales altamente controlados y precisos, facilitando la validación de conceptos y el ajuste de comportamientos deseados sin necesidad de contar inicialmente con una implementación física. Actualmente, la robótica es una rama de la ingeniería que es fundamental para el desarrollo de nuevas tecnologías. En este contexto, el uso de manos robóticas es ampliamente extendido en la industria, donde desempeñan roles esenciales en diversos procesos productivos. No obstante, la implementación física de estas soluciones suele enfrentar múltiples desafíos, tales como altos costos, riesgos de fallos mecánicos y limitaciones de prueba. Ante esta situación, surge la necesidad de disponer de entornos virtuales que permitan validar hipótesis y optimizar diseños antes de su materialización. Este proyecto representa una aproximación a dicha necesidad, aprovechando el potencial de la realidad virtual para construir y probar nuevas tecnologías asociadas a manos robóticas, reduciendo las complicaciones inherentes a las implementaciones físicas. Para el desarrollo de este proyecto se utilizaron diversas herramientas tecnológicas, entre las cuales se destacan Blender, Unreal Engine y Visual Studio. Estas plataformas permitieron abordar diferentes etapas del proceso, desde el modelado y rigging del objeto 3D hasta la programación de su comportamiento en un entorno virtual interactivo. Asimismo, se contó con recursos externos, como un modelo CAD de una mano robótica, el cual sirvió como base para la construcción y adaptación del modelo virtual utilizado en esta investigación. Inicialmente, se utilizó Blender para realizar el rigging del modelo CAD de la mano robótica lo cual es fundamental para garantizar la funcionalidad del sistema en su conjunto. El rigging consiste en la creación de un esqueleto interno que permite dotar al modelo 3D de articulaciones y movilidad. En este caso, esta parte fue crucial ya que definió los puntos de rotación de cada falange. Esto permite que más adelante la mano pueda ser animada y controlada de manera precisa en Unreal Engine. Una vez completado el rigging, se realizó la exportación del modelo CAD con el esqueleto funcional a Unreal Engine para su integración dentro del entorno virtual. Utilizando Visual Studio se desarrolló una clase en C++ la cual permitió establecer los parámetros necesarios para permitir la rotación individual de cada falange. Esta integración entre el modelo visual y la lógica programada sentó las bases para que la mano pudiera responder de manera precisa a entradas programadas. Teniendo una mano robótica funcional dentro del entorno virtual, se procedió a desarrollar una interfaz gráfica en Unreal Engine que permitiera al usuario interactuar con el modelo de manera intuitiva y dinámica como si fuera un juego. Esta interfaz fue diseñada para ofrecer dos modos de juego distintos. El primero permite manipular la mano robótica utilizando un control de Xbox One, asignando funciones específicas a los botones para facilitar el movimiento de cada falange. El segundo modo habilita la recepción de ángulos de rotación enviados desde un servidor externo, permitiendo visualizar en tiempo real las transformaciones deseadas sobre la mano. La interfaz incluye un menú principal y un menú de pausa dándole al usuario una experiencia que le permita gestionar el sistema de forma sencilla y eficiente. Un aspecto clave que contribuyó significativamente al desarrollo de este proyecto fue el uso del sistema de Blueprints que ofrece Unreal Engine. Esta herramienta permitió implementar la lógica de interacción, animación y control del modelo. Principalmente, se lograron conectar eventos, estados del juego y gestionar transiciones entre los diferentes modos de juego de manera clara y eficiente. En conjunto con la programación en C++, los Blueprints ofrecieron una integración versátil que aceleró el desarrollo. Este proyecto integra un factor innovador que es la comunicación con sistemas externos que permitan simular entornos más cercanos a aplicaciones reales de la robótica. En este caso, se implementó un servidor utilizando sockets TCP, lo que permitió establecer una conexión estable entre una fuente externa de datos y el entorno virtual de Unreal Engine. A través de esta conexión, el servidor enviaba periódicamente ángulos de rotación para cada falange de la mano robótica, los cuales eran recibidos por el motor y aplicados directamente al modelo. La integración del protocolo TCP resultó clave para demostrar como la mano virtual puede responder a instrucciones en tiempo real provenientes de sistemas externos, abriendo la puerta a futuras aplicaciones en las que dispositivos físicos puedan ser simulados, controlados y probados de forma remota. |
---|