# Virtual Reality Training Application for the Condition-Based Maintenance of Induction Motors
## 4 Materials and Methods
### Evaluation and Analysis of User Performance Module
The application was developed with the support of a previously created framework [44] that simplified the application development process with pre-programmed functions and services for their effective reuse, such as player utilities, an evaluation manager and tools for metrics. This framework also makes a single project possible that can be used on a 2D screen or on VR devices, merely by changing the pawn that automatically detects whether or not the user has connected a compatible VR device. On the one hand, if the user plays on a 2D screen, the interface will be the mouse and the keyboard; on the other hand, if a VR device is used, the interaction will be through hand controllers. The application is designed for HTC Vive, but also works with Oculus headsets and controllers and Windows Mixed Reality headsets and controllers. If used on 2D screens, the interaction in the application is controlled with a keyboard and a mouse by using the left click to pick up, to drop, and to place objects. The movements use the arrows or AWSD of the keyboard. Figure 9A shows a user interacting with the application with an HMD and Figure 9B shows the same action in a desktop version. Application design decisions were taken to achieve natural interactions and to mitigate any usability constraints of the controllers. The application design was focused on usability with a limited interaction technique in VR to accelerate the learning curve of the user: among the 3 basic forms of interaction techniques in VR (selection, manipulation and locomotion), the user only had to focus on the manipulation of objects. A single mechanism was used to pick up, to drop and to place objects in position. The user had to press and to  
Figure 8: (**A**) Performance feedback. (**B**) Analysis of user observations of the scene. Figure 9: (**A**) Example of interaction through hand controllers. (**B**): Interaction with the application controlled through a keyboard and a mouse. hold the controller trigger to pick up objects and the hand dropped the objects when the button was released. An attachment system was programmed to help the user to place the object in the desired position when it was sufficiently close to the attachment point to facilitate the assembly tasks. The outline of the hand was also highlighted in a light green color whenever within range of an object to facilitate grabbing. The objects floated back to their original locations a few seconds after being released to prevent users from accidentally dropping or throwing parts away. This design solution avoided the use of a specific button-based mechanism, which could be difficult for a novice user. Additionally, a virtual assistant, as can be seen in Figure 10A1, was programmed to guide and to assist the user through the different steps. This intelligent instructor gives clues on the tasks to be performed at each stage, as can be seen in Figure 10A2. The user can also choose the level of help it provides. It is programmed in such a way that if it detects that the user may be stuck in some part of the training, it can flash up tips on the screen to solve the situation correctly. Finally, one of the problems with virtual reality is that the trainer can usually only see what the user is seeing. This greatly limits the evaluation of the trainee's performance. For this reason, a spectator view has been created, whereby the trainer can be integrated as a user into the virtual environment. This means that the trainer can see the user performing the tasks from any point of view for a better analysis of user behavior in the virtual environment, as can be seen in Figure 10B. Figure 10: (**A1**) Virtual assistant. (**A2**) Clues for the user on the tasks to be performed. (**B**) Spectator view where a user can be observed interacting with the virtual environment. A summary of the design guidelines of the application and the learning objectives and evaluation criteria developed for these condition-based maintenance training modules on induction motors can be found in Table 1.