Desarrollo de un entorno en Unity para la prueba y verificación de sensores

[ES] Para el presente trabajo se desarrolló un entorno en Unity que interactúa con 10 sensores físicos que están conectados a una placa Arduino MEGA, la comunicación entre las plataformas se realiza mediante comunicación serial. El espacio virtual de Unity está dividido por zonas y en cada una de el...

ver descrição completa

Detalhes bibliográficos
Autor: Arias Ronquillo, Christian Iván
Formato: tesis de maestría
Fecha de publicación:2023
País:España
Recursos:Universitat Politècnica de València (UPV)
Repositorio:RiuNet. Repositorio Institucional de la Universitat Politécnica de Valéncia
Idioma:español
OAI Identifier:oai:riunet.upv.es:10251/198541
Acesso em linha:https://riunet.upv.es/handle/10251/198541
Access Level:acceso abierto
Palavra-chave:Sensores
Arduino
Unity
FreeRTOS
Programación concurrente
Concurrent programming
Sensors
INGENIERIA DE SISTEMAS Y AUTOMATICA
Máster Universitario en Automática e Informática Industrial-Màster Universitari en Automàtica i Informàtica Industrial
Descrição
Resumo:[ES] Para el presente trabajo se desarrolló un entorno en Unity que interactúa con 10 sensores físicos que están conectados a una placa Arduino MEGA, la comunicación entre las plataformas se realiza mediante comunicación serial. El espacio virtual de Unity está dividido por zonas y en cada una de ellas se han colocado diferentes elementos que responden a los estímulos detectados por los sensores. Se tiene dos brazos robóticos cuyas articulaciones son controladas mediante un joystick y un encoder. Un robot móvil que esquiva obstáculos que son generados por un sensor de presencia. Una estación de mecanizado que elige entre dos piezas una de ellas se activa mediante un sensor de efecto hall que responde al detectar un campo magnético. Una estación de transporte de cristales que interactúan con un sensor de impacto que al activarse rompe uno de los cristales. Una serie de lámparas que se encienden con un sensor de micrófono al detectar cierto nivel de audio, una pantalla de registro del ritmo cardiaco y el nivel de conductividad de la piel que reciben información de un sensor de ritmo cardiaco y un GSR. Se colocaron aspersores de agua que se activan si el sensor de flama detecta una llama. Además, en la pantalla del usuario del sistema se lleva un registro de la temperatura. Por último, se tiene una pantalla de control general que refleja el valor de todos los sensores. Tanto el entorno de Unity como la lectura de los sensores se han programado con un enfoque de programación concurrente, para lo cual se utilizaron librerías como FreeRTOS de Arduino que permite separar el código por tareas, mientras que en Unity se utilizaron hilos en algunos scripts para la gestión de los datos.