Interface Homem-Máquina Multi Robótica em Unity3D - Figueirinha, Rui Rodrigo Serra (2021)
More than ever the use of autonomous vehicles to accomplish objectives deemed too dangerous or even impossible by human standards is increasing. This demand puts to the test our capabilities for managing teams of multiple robots and creating intuitive interactions with these teams is a must. Creating means to abstract and condense the information that reaches the end user into a single kit of software would improve its manageability considerably. The development of a centralized graphical user interface is proposed to alleviate the workload of the human operator. This interface is thought out to be simple in delivering its information taking cues from video games, a well known industry in studying the theory behind the creation of user interfaces. Sensorial information is abstracted in a graphical perspective much like the attributes of a character inside a video game. The Unity game engine was used to implement such an interface, integrating ROS with a layer of DDS to manage the communications while providing QoS settings. The DDS solves the problem of multiple ROS masters by setting up a separate network where users can connect and disconnect seamlessly from the network, without the need to restart roscore on each machine. Interactions between these two software is made by using websockets on a local network. Visual representations of the sensors onboard the autonomous vehicles transform the huge stream of data into human understandable formats for immediate response by the operator. Dynamic generation of terrain was accomplished by the use of LiDAR and side-scan sensors, if available, to map the surroundings, while Mapbox provided prefetched terrain data from OpenStreetMaps.