This is an augmented reality application intended to assist a user with repair and maintenance of an ATV. Users can view diagnostic information for an ATV in augmented reality, or in a tabular view. Users can also go through two tutorials (offline) in augmented reality, guiding them through regular maintenance tasks for an ATV. The use of augmented reality in this product allows the user to take control of the camera, viewing diagnostics and tutorials from any angle, at their own.
Background: This application is the product of the final capstone project for the Faculty of Electrical and Computer Engineering at the University of Manitoba, sponsored by JCA Electronics. It has been published to the play store to make the application easily available to others for demonstration purposes.
Abstract
The goal of this project is to build a proof of concept augmented reality application that provides a user with repair and maintenance assistance for an all-terrain vehicle. Augmented reality is gaining traction as a technology for providing users with more intuitive and interactive training, which this project hopes to explore.
The project is broken into three main components: the augmented reality (AR) application, the controller subsystem, and the web service. The augmented reality portion of this project consists of an application developed for Android and Microsoft Hololens, that provides a user with augmented reality repair tutorials and AR real-time diagnostics from a remote vehicle. The augmented reality application is implemented in Unity. For the controller portion, a JCA Hummingbird controller is mounted to the ATV, which is programmed to send real-time diagnostic information from the ATV to the web service via wifi. The web service is implemented as a web application hosted on Amazon Web Services (AWS) servers and is used to manage communication between the controller and AR application. The subsystems communicate with each other via REST API commands.
The final project has met all proposed performance metrics. The AR application is successfully implemented according to the metrics on the target platforms (Android and Hololens). For example, it contains two AR repair tutorials for users to go through, and it can present diagnostic information to the user in an AR environment. The web service can communicate with multiple devices concurrently and is able to receive data from the controller and send it to the AR application. The controller subsystem can retrieve diagnostic data from the ATV and send it to the web service in real-time.
Performance Metrics
The system was designed according to specifications laid out in the proposal, with minor changes due to reasons that are explained in the appendix of the final report. These specifications are shown in Table 2, along with the actual outcomes. Overall, all of the proposed metrics have been met or exceeded.
Table 2. Table of performance metrics.
Section |
Description of Measure |
Proposed Outcome |
Actual Outcome |
Overall |
Supported platforms. |
Android (Phone), UWP (Hololens) |
Android (Phone), UWP (Hololens) |
The number of tutorials implemented. |
>= 2 tutorials |
2 tutorials |
AR Application |
Able to display vehicle diagnostic data. |
Pass |
Pass |
Able to move and rotate the view of 3D objects in the AR environment. |
Pass |
Pass |
Able to use speech recognition and hand gesture recognition for interaction with the Hololens application. |
Pass |
Pass |
Able to place a 3D model of the ATV on the ground (via ground plane detection). |
Pass |
Pass |
Able to request vehicle data from a web service. |
Pass |
Pass |
Able to download user manuals from a web service. |
Pass |
Pass |
Web Service |
Able to connect to and accept data from multiple clients simultaneously. |
>= 2 client connections |
>= 100 client connections |
Able to connect to and send data to multiple clients simultaneously. |
>= 2 client connections |
>=100 client connections |
Controller Application |
Able to post simulated data to a web service. |
Pass |
Pass |
Able to post real (i.e. from the vehicle) data to a web service. |
Pass |
Pass |
Comments (0)