Table of Contents
This is A.V.A., the Advanced Vehicle Analytics application for the BYU Formula E club.
A.V.A. is a dashboard that displays vehicle and driving data collected from an array of sensors
designed to collect everything from tire speed to steering wheel angle of an electric race car
while driving.
In addition to providing advanced analytics and feedback, A.V.A. visualizes driving information
in a format that makes it easy to understand and gain insight from the data.
The name is inspired by Ava, the highly capable AI machine from Ex Machina, and the acronym captures
the contribution this dashboard provides to the BYU Formula E club's engineering challenge of
electric car racing.
BYU Formula E is an engineering team focused on designing, manufacturing, testing, and competing of an open-wheel, electrically-powered race car. It operates under the Formula program of the Society of Automotive Engineers (SAE). This team aims to fit all of its work to the yearly regulations of FSAE, and perform competitively with the end products of student engineers from around the globe.
You'll need to start by downloading a few python packages with these commands:
You can then clone this project to your own machine from GitHub and then run the dashboard in any Python development environment.
After downloading, run the dash app by running the AVA.py file, then clicking on the
local host link that appears in the command line.
The buttons along the top allow you to select with line graphs to display. The program defaults
to all the charts, and clicking on a button once will hide the corresponding chart.
The Expanded option is the default option, and displays all the chart in full dimension.
The Condensed option displays all the charts small enough to fit everything on one screen
as long as you are already in full screen on your computer.
Each chart displays the data from the sensor as described on the y-axis on the right and the
legend on the left with respect to time on the x-axis. The tick marks, values, and lines are hidden
to reduce clutter on the display. Hovering over the curve will display the time and value at that
point as desired.
Allows you to select the time at which you would like to view instantaneous values.
Displays instantaneous speed at the selected time.
Bar chart that displays the pressure on the brake pedal acceleration pedal at the selected time.
Animation that displays the angle of the steering wheel at the selected time.
Chart that displays the track the racecar followed, along with its position at the selected time.
Displays the instantaneous values of the rest of the sensors and the selected time at the selected time.
Dash and Plotly both have lots of great documentation. If you have questions, contact the creators at [email protected] or message me on LinkedIn. Hopefully the docstring and comments are enough to figure out what each function does.
Why is nothing happening?
- If you click on something and nothing happens, wait a few seconds before retrying in case A.V.A. is still loading. The interactions enabled either reformat the style of some graphs, or recreate the graphs entirely, so some actions take a few seconds.
Dallin Stewart - [email protected]
Benjamin McMullin