University: Yale University
Team Members: Joseph Belter GRAD, Philip Piper ‘16, Connor Durkin ‘16
Faculty Advisers: Professor Joseph Zinter
Email Address: firstname.lastname@example.org
Submission Language: English
myRio Control and Telemetry system for Formula-Hybrid Racecar
Bulldogs Racing at Yale University designed and built a fully functioning race car to compete at the 2014 Formula Hybrid International Competition. We utilized one myRIO-1900 to control all the vehicle’s drive systems and another to collect and transmit all data collected from our sensor suite via Wi-Fi to both an iOS mobile application and a Labview base station.
myRIO-1900, Shared Variable Engine
Bulldogs Racing 2014 needed a reliable platform that could serve as the main control system for a hybrid racecar. This meant real-time monitoring of driver inputs and responsive power allocation from both a 40 hp internal combustion engine and a 30 Kw electric motor. We also needed a platform to allow the team to monitor key aspects of the car including driver performance, fuel efficiency, battery management systems, and suspension settings all in real time.
Bulldogs Racing 2014 implemented two NI myRIO boards to perform all necessary control, data collection, logging, and real-time telemetry. The system was split into two separate boards for the ease of development as well as providing additional robustness for our key driver controls.
The main control myRio needs to run quickly and reliably since the racecar throttle and safety systems need to operate instantly as perceived by the driver. To meet these requirements the code for the control myRIO was kept as succinct as possible. This simple loop has three major inputs: the dashboard, driver pedals, and fault conditions (from the motor controller). This data was then processed to output engine servo duty cycle, motor controller throttle, and various other digital power/activation signals. Most of the processing in between input and output consisted of checking for unreasonable situations that could lead to undesired behavior. Examples of this include fault conditions from our Battery Management System which would led to a shutdown of the high-voltage systems of the car through the myRio. Careful considerations were made to ensure the controls of the car were done in a safe manner. This included ensuring the motor controller and engine systems would shut-down if any of the input signals fell outside of a known acceptable range, or even if any of the control cables were to be cut or unplugged from the system while in driving.
The data/telemetry system needed to be able to communicate over a wide range of communication protocols to interface with our vast array of onboard sensors (UART, I2C, USB, ethernet, and UDP). A list of the sensors currently in use is shown below. Collection of this data means that the team can assess driving profiles, vehicle tuning, and energy allocation to give us complete knowledge of the vehicle. Once challenge was that many of the digital sensors collected and reported data at various frequencies. In LabView, each sensor package was placed in a series of parallel loops, which each could operate at the necessary frequency and be prioritized based on the requirement of the data. For example, IMU data was collected at 100 Hz, temperature data was collected at 20 Hz, and raw GPS position was collected at 10 hz. All of this information was saved as a text file on a USB flash drive in real-time. All the labview code used to communicate with the various sensors will be made available once the code is completely refined.
The vehicle information is extremely useful to analyze after the race, but it is even more useful if it can be seen in real-time as the car is on the track. For this reason, the myRIO was used as a way to send information to both a custom made iOS application and a Labview basestation so this information could be viewed by anyone with an iPad or by the crew in the pits. First, both myRIOs were hard-wired to a wifi router using usb-to-ethernet converters. Then information was exchanged between the real-time programs running on the myRIOs using shared variables. The data/telemetry myRIO compiled all the data and sent it out over the wifi network through a UDP multicast packet. At 30 Hz, all devices connected to the vehicles Wi-Fi router, could see the real-time sensor values and key parameters about the car including speed, GPS position, acceleration values, cornering G’s, battery capacity, and even real-time fuel consumption.
The myRIO made interfacing with a plethora of sensors very easy. The multitude of pins and protocol standards allowed for a vast data acquisition system to be implemented.
Not only did the quantity of pins help, but also their functionality. Being able to interface over various communication frequencies through parallel processing out of the box made programming the car much easier than what other platforms had to offer. One of the biggest advantages was being able to test the software without having to actually run the car. Dashboard logic and motor/engine outputs could be simulated to prevent failures and ensure vehicle safety.
List of Sensors:
VectorNav IN-200- IMU and GPS data collected at various frequencies over UART
Melexis IR temperature sensors- Daisy-chained over I2C bus, 16 sensors recorded at 20 Hz
Analog Potentiometers - Pedal positions, steering position, and suspension travel of each wheel
Engine RPM Sensor- Pulse input, collected using Encoder inputs
Aqua-flow Fuel Flow Sensors - Pulse input, collected using Encoder inputs
7-segment displays for dashboard - I2C bus
Brake Pressure Sensors - Analog Inputs
Battery Management System - Monitor High Voltage Battery Pack (temperatures and voltages of 44 modules)
Level of Completion:
The control myRIO is fully functional to operate the car. The data acquisition myRIO is in operation and function with 80% or the car’s sensors. Additional sensors are continually being integrated into the system. All the data communication systems are fully functional as well as a custom designed iOS application to parse and display real-time vehicle information over the on-board wifi network
Time to build:
As our control and sensor code becomes more refined, we will post updates and collected data from our system.