SlideShare a Scribd company logo
1 of 129
Download to read offline
Low Cost Remote Data Acquisition and
Interface Solution for Amateur
Motorsports
19520 CES GROUP PROJECT
FINAL REPORT
GROUP H
Lauren Stewart
200905754
Matthew Bowen
200949172
Amarjeet Singh
200912701
Daniel Chakraverty
200906954
APRIL 2014
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 2 of 129
ABSTRACT
The University of Strathclyde Motorsport team is made up of a group of students who
compete at an international level every summer against teams from across the world.
The challenge is to design, build and test a single seat race car.
This project has developed a distributed CAN based data acquisition system for the team,
including real-time telemetry, logging, sensor interfaces and real-time video streaming.
All data is integrated within a web based software analysis system, where the data can
be processed quickly and easily. Data can be exported for use in other analysis packages.
The system has a modular design allowing it to meet different requirements, both
technical and financial.
DECLARATION
We hereby declare that this work has not been submitted for any other degree/course
at this University or any other institution and that, except where reference is made to
the work of other authors, the material presented is original and entirely the result of
our own work at the University of Strathclyde.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 3 of 129
ACKNOWLEDGEMENTS
We would like to thank Jamie Corr, Victor Lee and Chee Wah Chan for a well-designed
(and well documented) Smart Dash project to build upon.
The University of Strathclyde Motorsport team have been very supportive through loans
of equipment and workspace during development - Jamie Sleigh and Stuart Halkett have
been especially helpful.
We would also like to thank Susan Scurlock for setting up a video call with Richard
Marshall, Chief Electronics Engineer, and Paul Howard, Race Team Mechanic, at Lotus
F1 Team. We would like to thank them for their feedback on our design and helpful
suggestions.
The electronics department at Red Bull Racing have also offered advice and feedback,
and we would like to extend our thanks to them.
The EEE workshop have been incredibly helpful throughout the project - ordering
components, manufacturing PCBs and offering practical advice. We would also like to
thank the Mechanical workshop for drilling out enclosures, the Resource Centre for
doing an excellent job printing our posters and the EEE IT Support for setting up the
computers needed for the tradeshow.
We would like to thank Christos Tachtatzis for sharing his expertise and experience with
radio systems, and Gaetano Di-Caterina for his assistance with video interface solutions.
Finally, we would like to say thank you to Dr. David Harle for the financial support and
advice.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 4 of 129
ACRONYMS AND DEFINITIONS
Acronym Definition
ADC Analogue to Digital Converter
API Application Programming Interface
ASCII American Standard Code for Information Interchange
CAN Controller Area Network
CCD Charged Coupled Device
CMOS Complimentary Metal Oxide Semiconductor
CSS Cascading Style Sheet
CSV Comma-Separated Values
DAQ Data Acquisition
DB Database
ECU Engine Control Unit
FAT32 File Allocation Table
FPV First Person View
FS Formula Student
GPS Global Positioning System
HTML Hypertext Mark-up Language
I2C Inter Integrated Circuit
IP Internet Protocol
JSP JavaServer Page
JSON JavaScript Object Notation
MCU Microcontroller Unit
MVC Model View Controller
PCB Printed Circuit Board
POM Project Object Model
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 5 of 129
RF Radio Frequency
SD Secure Digital
SPI Serial Peripheral Interface
SVN Subversion
TVL Television Lines
USB Universal Serial Bus
USM University of Strathclyde Motorsport
UART Universal Asynchronous Receiver/Transmitter
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 6 of 129
TABLE OF CONTENTS
1 Introduction......................................................................................................................................... 11
2 Background Research...................................................................................................................... 13
Existing USM Systems ............................................................................................................ 13
The CAN Protocol..................................................................................................................... 15
Third Party Products.............................................................................................................. 15
2.3.1 Race Technology DL1 Data Logger.......................................................................... 15
2.3.2 Race Technology Analysis Software....................................................................... 16
2.3.3 DTASwin Software......................................................................................................... 17
State of the Art........................................................................................................................... 18
Previous Projects ..................................................................................................................... 19
2.5.1 Formula Student Smart Dash .................................................................................... 19
2.5.2 Telemetry System for Formula Student Race Car............................................. 21
3 Project Outline.................................................................................................................................... 24
Requirements ............................................................................................................................ 24
Objectives/Specification ....................................................................................................... 24
4 System Design and Implementation.......................................................................................... 28
On-board Network................................................................................................................... 30
4.1.1 Protocol Choice................................................................................................................ 30
4.1.2 System Architecture...................................................................................................... 31
4.1.3 Microcontroller Choice................................................................................................. 32
4.1.4 Power Supply................................................................................................................... 34
4.1.5 Packaging........................................................................................................................... 34
Standard and Extension Nodes .......................................................................................... 36
4.2.1 GPS........................................................................................................................................ 36
4.2.2 Accelerometer.................................................................................................................. 37
4.2.3 Analogue Voltages.......................................................................................................... 37
4.2.4 Software Design.............................................................................................................. 38
Telemetry Node........................................................................................................................ 39
4.3.1 Radio Link.......................................................................................................................... 39
4.3.2 Hardware Design............................................................................................................ 40
4.3.3 Software Design.............................................................................................................. 40
Logger Node............................................................................................................................... 40
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 7 of 129
4.4.1 Hardware Design............................................................................................................ 41
4.4.2 Software Design.............................................................................................................. 41
Video Hardware........................................................................................................................ 41
4.5.1 Camera................................................................................................................................ 41
4.5.2 Transmitter and Receiver........................................................................................... 42
4.5.3 Analogue to Digital Converter................................................................................... 45
4.5.4 Display ................................................................................................................................ 45
Off-board Software System.................................................................................................. 46
4.6.1 Architecture of the System......................................................................................... 46
4.6.2 Storing Data...................................................................................................................... 49
4.6.3 Receiving Data and Video............................................................................................ 51
4.6.4 Viewing Data and Video............................................................................................... 55
Business Considerations....................................................................................................... 57
4.7.1 Cost for Prototype.......................................................................................................... 57
4.7.2 Packages and Services.................................................................................................. 58
4.7.3 Customers.......................................................................................................................... 59
4.7.4 Trademarking .................................................................................................................. 59
4.7.5 Patents ................................................................................................................................ 60
5 Testing Strategy.................................................................................................................................. 61
Test Cases.................................................................................................................................... 61
5.1.1 On-Car Network Testing.............................................................................................. 61
5.1.2 Standard Node Testing................................................................................................. 62
5.1.3 Extension Node Testing............................................................................................... 63
5.1.4 Telemetry Node Testing.............................................................................................. 64
5.1.5 Logger Node Testing..................................................................................................... 66
5.1.6 Video Systems Testing.................................................................................................. 67
5.1.7 Off-Board Software Testing........................................................................................ 69
6 Project Management......................................................................................................................... 79
Project Plan Review ................................................................................................................ 79
6.1.1 Standard and Extension Node................................................................................... 79
6.1.2 Telemetry and Logger Node ...................................................................................... 79
6.1.3 Video System.................................................................................................................... 79
6.1.4 Off-Board Software System........................................................................................ 79
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 8 of 129
6.1.5 Integration......................................................................................................................... 80
Risks Review.............................................................................................................................. 80
7 Future Work......................................................................................................................................... 81
On-Car Network........................................................................................................................ 81
Standard and Extension Nodes .......................................................................................... 81
Telemetry Node........................................................................................................................ 81
Logger Node............................................................................................................................... 82
Video Systems............................................................................................................................ 82
Off-Board Software System.................................................................................................. 82
7.6.1 Lap Parsing........................................................................................................................ 82
7.6.2 Two-Way Communication with Car ....................................................................... 83
7.6.3 User Control of Real-Time Sensors......................................................................... 83
7.6.4 Graph Styles...................................................................................................................... 83
7.6.5 Database Structure ........................................................................................................ 83
8 Conclusion ............................................................................................................................................ 84
9 References ............................................................................................................................................ 85
10 Appendices ...................................................................................................................................... 88
Technical Risks.......................................................................................................................... 88
Cost of System ........................................................................................................................... 89
User and Developer Guides.................................................................................................. 96
TABLE OF FIGURES
Figure 1 - USM13, University of Strathclyde Motorsport's 2013 car..................................... 11
Figure 2 - USM's current sensor setup, and logging systems.................................................... 13
Figure 3 - A GoPro video camera being used to monitor chain slack. ................................... 14
Figure 4 - A screenshot from a GoPro, monitoring air flow over a front wing. ................. 14
Figure 5 - Race Technology DL1 Logger [1]..................................................................................... 16
Figure 6 - Race Technology Analysis Software............................................................................... 17
Figure 7 - DTASwin Software................................................................................................................. 17
Figure 8 - The Ferrari F1 team monitoring the incoming data stream from the car [9].18
Figure 9 - Formula 1 regulated data acquisition system [10]................................................... 18
Figure 10 - Smart Dash Hardware Components [11]................................................................... 20
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 9 of 129
Figure 11 - Smart Dash [11].................................................................................................................... 20
Figure 12 - On-board System [12]........................................................................................................ 21
Figure 13 - LabView ECU Summary GUI [12] .................................................................................. 22
Figure 14 - LabView ECU Data Log Graph GUI [12] ...................................................................... 22
Figure 15 - Overall System Architecture............................................................................................ 28
Figure 16 - System State Diagram ........................................................................................................ 29
Figure 17 - Extract from ECU Manual showing CAN stream [14] ........................................... 30
Figure 18 - Front and Rear CAN Nodes Architecture ................................................................... 31
Figure 19 - MCP2561 Wiring [21]........................................................................................................ 33
Figure 20 - Standard Node PCB Design.............................................................................................. 35
Figure 21 - Standard Node (top) and Extension Node (bottom) PCBs ................................. 35
Figure 22 - Enclosure................................................................................................................................. 35
Figure 23- Venus 638FLPX Breakout Board by Sparkfun [24] ................................................ 37
Figure 24 - MMA8542Q multiple byte read feature [26]............................................................ 39
Figure 25 - A comparison of lens size and the associated angle of view [35].................... 42
Figure 26 - Linear Polarisation vs. Circular Polarisation............................................................ 44
Figure 27 - Multipath interference....................................................................................................... 44
Figure 28 - Circular Polarised Antennas [39].................................................................................. 44
Figure 29 – System Architecture........................................................................................................... 47
Figure 30 - Parsing Bytes......................................................................................................................... 52
Figure 31 - Real-Time Data...................................................................................................................... 53
Figure 32 - GPS Plotted on Google Maps............................................................................................ 56
Figure 33 - Athenatec Logo ..................................................................................................................... 60
Figure 33 - Gantt chart summary.......................................................................................................... 79
Figure 34 - Summary of Costs ................................................................................................................ 89
Figure 35 - Standard Node Costs .......................................................................................................... 90
Figure 36 - Extension Node Costs......................................................................................................... 91
Figure 37 - Logger Node Costs............................................................................................................... 92
Figure 38 - Telemetry Node Costs........................................................................................................ 93
Figure 39 - Video Systems Costs ........................................................................................................... 94
Figure 40 - Calculating Package Costs ................................................................................................ 95
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 10 of 129
TABLE OF EQUATIONS
Equation 1 – Transfer Function............................................................................................................. 50
TABLE OF TABLES
Table 1 - Specification for McLaren Electronic Systems F1 DAQ & ECU Systems [10]... 19
Table 2 - Project Objectives..................................................................................................................... 25
Table 3 - Processing Architecture Comparison .............................................................................. 32
Table 4 - Summary of Costs..................................................................................................................... 57
Table 5 - Product Selling Prices............................................................................................................. 58
Table 6 - Services Offered........................................................................................................................ 59
Table 7 - Technical Risks.......................................................................................................................... 88
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 11 of 129
1 INTRODUCTION
Formula Student is an international design competition challenging students at
university to design, build and manufacture a single seat race-car. The University of
Strathclyde Motorsport (USM) team competes against other universities from across the
world every summer at Silverstone, UK and Hockenheim, Germany. The team’s 13th car,
USM13, is shown in Figure 1. It is important that all design decisions throughout the
season are data driven, and justified through suitable analysis and testing. There is a
need for data acquisition while running the car to allow the team to compare simulated
values with real-life results. This allows them to validate their designs and improve the
car where possible. The high performance nature of a racing car often means that
components are operating at the limits of their design, requiring values to be monitored
in real-time to keep them within safe limits.
Figure 1 - USM13, University of Strathclyde Motorsport's 2013 car
Concerns have been raised by USM that there are three different places that data is
logged on the car, all with differing software packages to access and analyse the
information. This makes it difficult to compare values that have been recorded on
different systems. Team members are also unable to invest the time required to learn
the different software packages. The current system requires an engineer to start the
logging on all the systems before a run which is time consuming and is therefore often
not done, resulting in the car running without data being logged.
Traditionally critical values (such as oil/water temperature) have been displayed to the
driver on the dashboard, alongside RPM lights and current gear. However most Formula
Student tracks are very tight and test the driver’s skill and concentration. Consequently
the driver does not have time to accurately assess these values while also driving to the
best of their ability. If the critical values could be monitored in real-time by other
members of the team at the side of the track the driver could be warned and they could
take appropriate action, without them having to constantly check the warning lights.
This project developed a system that integrated all sensor data onto an on-car embedded
network, making data accessible for analysis – even if the data originated from different
control or sensing systems. Software has been developed that allows team members to
carry out analysis quickly and easily, improving access to the data, while also allowing
data to be exported to more powerful analysis packages when required.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 12 of 129
Wireless telemetry has also been developed that allows engineers at the side of the track
to monitor and view critical sensor values and trends on the car. The driver can
therefore concentrate on driving to the best of their ability. Video systems have been
used to assist in driver training and to allow monitoring the behavior of components that
could be difficult to sense through traditional systems – such as rear wing flex, or air
flow.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 13 of 129
2 BACKGROUND RESEARCH
This section contains information about the current systems that USM use, studies of
competitors to the proposed product, state of the art systems as used in Formula One,
and summaries of related projects that have been carried out in the past.
EXISTING USM SYSTEMS
Two members of the project team are involved with the USM team, and have
accompanied them to one of their test sessions in order to understand fully how the
current systems are being used. This was essential information to allow the project to
deliver appropriate solutions.
The current team uses a DTA S80 Pro [1] Engine Control Unit (ECU) to sense and control
engine parameters such as oil and water temperature, a Race Technology DL1 MK1 [2]
Data Acquisition Unit (DAQ) to log analysis parameters such as suspension travel,
steering angle and brake temperatures, and a smartphone to display some of these
parameters to the driver.
Figure 2 - USM's current sensor setup, and logging systems.
The ECU outputs various data parameters about the engine onto a Controller Area
Network (CAN) bus which currently drives a smartphone to give dashboard indications
of these parameters to the driver. This has meant that all data on the CAN bus is not
available to the DAQ to log. Some CAN data logging functionality is available on a
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 14 of 129
smartphone; however this is limited and not easy to access. Data is also logged internally
on the ECU, but again this requires specialist software to access.
It can be seen from the diagram in Figure 2 that data acquired from sensors attached to
the ECU is not available to the DAQ systems, preventing comparisons such as throttle
position against suspension pot readings. USM have purchased a CAN adapter for the
DAQ to allow logging of engine data but they have not been able to make it function
correctly. However this would not be a permanent solution as the current DAQ (Race
Technology DL1) is not expandable past seven analogue inputs, therefore the team
cannot run all of the DAQ sensors shown in Figure 2 simultaneously during a test session.
Figure 3 - A GoPro video camera being used to monitor chain slack.
Finally, it is difficult for team members outside of the electronics team to understand
which sensors are logged on which subsystem and therefore the data that has been
logged is not utilised to make informed design decisions. An example of this was when
tuning the engine on the dynamometer, the Head of Engine Systems required to know
what throttle percentage to tune the engine to (as this improves performance when on
track). It was suggested to look at the data from the race in the previous year to find this
out, so he loaded up the data from the DAQ. He then realised that the data for throttle
position is actually stored on the ECU, so that data had to be loaded up, exported, and
then imported into Microsoft Excel, which is a long process.
Figure 4 - A screenshot from a GoPro, monitoring air flow over a front wing.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 15 of 129
GoPro [3] cameras are also used to monitor components on the car as seen in Figure 3
when monitoring chain slack, or in Figure 4 when monitoring air flow over wings. The
most recent version of the GoPro range, the Hero3, has WiFi built in. This makes it
possible to monitor the video feed in real-time on a compatible smartphone. However it
was observed that a delay of 1-2 seconds is present when the team use this feature.
It is difficult to find information on other teams, as they generally do not publish details
of their systems in order to maintain any competitive advantage.
Further research was carried out into CAN in order to fully understand the
implementation required.
THE CAN PROTOCOL
The Controller Area Network (CAN) protocol was developed by Bosch in the 1980s in
order to establish reliable serial communications inautomotive applications. Data is sent
as a voltage difference between two wires (CAN high and CAN low), rather than as zero
volts and high volts as with other protocols. Most electrical noise will affect both wires
in the same way, so the voltage difference will stay constant. This results in a much more
resilient and reliable system.
The CAN protocol implements the lower two levels in the ISO/OSI reference model; the
Data Link and Physical layer. This leaves the system developer the flexibility to
implement the upper levels of the OSI reference in order to standardize start-up
procedures or determine the structure of the actual messages [4]. The protocol is
message based, meaning that all messages are sent over the whole network with the
receiver deciding if it should use the message. The alternative, an address based
network, would send packets to particular devices on the network based on an internal
address in the packet.
CAN is Carrier Sense Multiple Access/Collision Detection (CSMA/CD), operating in a
similar manner to Ethernet. Every node on the CAN bus monitors activity on the bus for
a period of no activity before sending. Once this period is detected, every node has the
same opportunity to transmit, giving it ‘Multiple Access’. If two nodes transmit at the
same time, a collision is detected. In CAN this is non-destructive, so the higher priority
message will be transmitted without delay. This requires the message identifiers in the
CAN messages to be set with appropriate priorities (lower being better). In this
application, very few data values will be higher priority than the ECU data.
THIRD PARTY PRODUCTS
This section will discuss the products that the USM team currently use as well as
discussing other existing products available on the market.
2.3.1 Race Technology DL1 Data Logger
This is the data logger that is currently used by the USM team. It is a small, highly robust
data logging system with a powerful software system for analysis (described in Section
2.3.2).
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 16 of 129
The DL1 is a small data logger that can store data from a number of sources, including
internal accelerometers, high accuracy GPS and eight analogue inputs. In addition there
are inputs for frequency measurements (such as wheel speed sensors) and a serial data
input for information sent from the vehicle's ECU, such as RPM, throttle position and
engine temperatures (however this requires the additional cost of an adapter to convert
CAN protocol data to a proprietary serial format to be used with USM’s DTA ECU) [5].
The logger can be seen in Figure 5.
Figure 5 - Race Technology DL1 Logger [1]
The data is logged to a CompactFlash card inserted into the logger, which is then used to
transfer data to a PC via a standard card reader. There is no option for real-time
monitoring of the data that has been logged, other than a dash system that can be
connected to the device for additional cost. This dash system receives data over a serial
port, but again the protocol is proprietary which stops different systems from accessing
this data.
The logger is extremely robust, with all electrical connections being vibration proof and
high strength, housed in a tough metal enclosure. The DL1 combines GPS and
accelerometer data to accurately map tracks, with their experiments showing that the
results are much more accurate than other GPS systems [6]. The DL1 logger costs £511.
2.3.2 Race Technology Analysis Software
This is the software package currently used by the USM team for most of their analysis.
After a race, the software receives the data either from a serial (RS232) link running at
high speed or the data is read from a CompactFlash card. The software converts the raw
data into useful information and then the software can be used for analysis. Simple
graphs can be plotted or more powerful analysis features can be used [7].
The Race Technology Data Analysis software package has many desirable features.
Theoretical lap times can be calculated as well as simple lap and sector times. Also,
multiple runs and laps can be analysed which allows for comparison between races and
drivers. The software includes a feature to import video to be viewed alongside the
logged data. It also includes a fully featured standard and HD video export system with
optional overlaid graphics. The interface is drag and drop and there is an optional black
background on graphs for improved trackside visibility in bright sunlight. Virtual
dashboards make a great user experience and real-time playback is very useful when
analysing all the data. To improve the user experience even further, the user can define
and select variables and define graphs. Finally, the software allows the data to be saved,
printed and exported to a spreadsheet or Matlab [7].
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 17 of 129
Figure 6 shows the track mapping and graph displays. It also shows how different laps
can be analysed and compared against each other by overlaying the data on one graph.
The software is free to download but can only be used with the data from the DL1 logger
discussed in Section 2.3.1.
Figure 6 - Race Technology Analysis Software
2.3.3 DTASwin Software
DTASwin is the control software that is used for the S series of the ECU that the USM
team use in the car. It is used for configuring settings on the ECU such as engine maps,
launch control settings or sensor scaling. The USM team can also use this when
connected to the dynamometer (dyno) for tuning the engine. It displays real-time data
such as water temperature, oil temperature or oil pressure while directly connected to
the ECU.
Figure 7 - DTASwin Software
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 18 of 129
Communication with a PC can be set up by using a CAN network with a suitable adapter
for the ECU or through a serial cable. An example screen within the software is shown in
Figure 7. It has a virtual dashboard that displays all of the parameters while tuning.
STATE OF THE ART
Research was carried out into the state of the art in data acquisition systems within
Formula 1. As seen in Figure 8, a huge amount of information is required while the car is
running in real-time in order to monitor the performance of the car. Additionally
terabytes of data are logged from the car for analysis at a later date [8].
Figure 8 - The Ferrari F1 team monitoring the incoming data stream from the car [9].
Every team is required by regulation to use the same electronic control system, which is
designed and manufactured by McLaren Electronic Systems [10]. The system has a star
topology as seen in Figure 9, with a central unit (TAG-310B) hosting the majority of
sensor inputs and all of the control systems on the car. Additional units (HIUs) are used
to add additional localised sensors to the system, for example within each wheel.
Figure 9 - Formula 1 regulated data acquisition system [10].
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 19 of 129
These localised ‘hubs’ interface with the central control unit over a number of embedded
CAN buses allowing sensor data to be transferred over a single twisted pair wire, rather
than a single wire for every sensor. A similar approach is used in this project.
Table 1 - Specification for McLaren Electronic Systems F1 DAQ & ECU Systems [10]
TAG-310B TAG-320
Application processing power 955MIPS 4,000MIPS
Memory (RAM) 40MB 512MB
Memory protection Limited Full
Logged data capacity 1GB 8GB
CAN buses 6 11
Standard analogue input sampling rate capability 1kHz 10kHz
Fast analogue input sampling rate capability 10kHz 100kHz
Internal accelerometer None Tri-axis ±10g
Maximum number of logging channels 512 4,000
Ethernet link maximum speed 100Mbps 1Gbps
Table 1 shows the specifications for the central control unit, with the updated version,
the TAG-320, being developed to control the more complex turbocharged V6 engines
that were introduced in 2014. The technology used to achieve this specification is state
of the art, and is not inexpensive – with such a system costing tens of thousands of
pounds1.
PREVIOUS PROJECTS
This section discusses previous final year projects that have been carried out for the USM
team.
2.5.1 Formula Student Smart Dash
In the academic year 2012/2013, a final year project was carried out that designed,
implemented and tested a smart phone based driver feedback system for use in a
Formula Student race car. The project involved developing a CAN node on the car to
receive data from the ECU, transmitting the data via Bluetooth to the smart phone and
developing an app that would read the data, write to a database, display the values and
perform analysis on the collected data [11].
1 An exact cost is not publicly available, and Formula One teams do not publish cost breakdowns.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 20 of 129
For the CAN node, a PIC microcontroller was chosen. A CAN transceiver was required to
communicate with the CAN bus and a Bluetooth module was incorporated to send data
to the smart phone. The hardware architecture can be seen in Figure 10.
Figure 10 - Smart Dash Hardware Components [11]
An Android app was chosen to be developed due to the free development and easy IDE
available. The app featured two modes – a Driver Mode and an Analysis Mode. The Driver
Mode displayed data to the driver and alerted the driver when the measured data went
out of operating bounds. The Analysis Mode was used to analyse the driver’s
performance after the race and displayed a track map showing the data at each point
around the track [11]. The app can be seen running in Figure 11. This also shows the
custom designed enclosure for the smart phone.
Figure 11 - Smart Dash [11]
This project was a success, with all major objectives being met. The project developed a
small CAN network on the car and documented technical manuals on how the system
works, which can be used to further enhance and improve the network by future teams.
The USM team have said many positive things about the project and are currently using
the smart dash in the Formula Student car.
Two members of the project were involved with USM while the Smart Dash project was
being developed. The CAN development carried out as part of the Smart Dash project
was therefore used as a base to develop the system described in this report.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 21 of 129
2.5.2 Telemetry System for Formula Student Race Car
In the academic year 2011/2012, a final year project was carried out that involved the
design and development of a wireless telemetry system suitable for the USM team. It
comprised of two main subsystems – an on-board system that extracted the
measurement data from the car and an off-board system that received the data and
displayed them to the pit engineers. The two subsystems were connected via a wireless
communication link [12].
Figure 12 - On-board System [12]
The on-board system was implemented using an Arduino UNO with an XBee Pro
Transceiver to transmit the data. Also included in the on-board system was an OpenLog
Data Logger with a 2 GB SD card to serve as a backup should communications fail [12].
Figure 12 shows the final PCB for the on-board system.
The off-board system used an Arduino UNO to receive the data and a GUI was designed
within LabView to view the data. Figure 13 and Figure 14 show some screenshots of the
GUI.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 22 of 129
Figure 13 - LabView ECU Summary GUI [12]
Although the majority of the objectives were met with this project, there were many
problems. Firstly, the XBees used for the wireless transmission only achieved a
transmission distance of about 200 m when tested on a car. Another problem was that
the sampling frequency was not high enough and so a more powerful microcontroller
could have been used. The power supply used for the on-board system was AA batteries
which is not very practical. Rechargeable batteries, or the car’s power supply, would
have been a more cost-efficient solution.
Figure 14 - LabView ECU Data Log Graph GUI [12]
Another problem with this project is the off-board system. The team used LabView to
display their data in a GUI that they designed. This GUI is not customisable and users are
required to graphically program the interface in order to add an interpretation for any
additional sensors. Therefore if the user is not skilled with LabView, they will not be able
to extend this program for future use.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 23 of 129
USM have said that the system did not work correctly all the time and that the GUI used
did not display the data the way that was required. As such, this system is not currently
used by the USM team.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 24 of 129
3 PROJECT OUTLINE
This section discusses the requirements that were communicated from the USM team,
and then shows the project specification to meet those requirements.
REQUIREMENTS
Meetings were held with USM early in the project in order to understand their current
systems, and requirements. The main problems, discussed in more detail in Section 2.1,
that were found with the current systems are as follows:
1. Lack of expandability to add more sensors to logging systems (limited to seven).
2. Engine related sensors are logged on separate systems to other sensors, often
preventing comparisons between sensors.
3. Multiple powerful and complex software packages have to be used for different
sets of data, preventing the team members from carrying out simple analysis
quickly between test runs.
4. Data is not available in the pits in real-time, leaving the driver to monitor critical
values.
There is a real need to improve the data acquisition systems for the USM Formula
Student team, and it is suggested that other Formula Student teams and amateur racers
have similar problems.
OBJECTIVES/SPECIFICATION
It is proposed to integrate all the data logging functionality on the car into one system,
where all data is available everywhere. For example it would be possible to display RPM
and gear position against GPS data, something that is not possible with the current
system. This would be done by developing an on-board embedded network that all
devices on the car communicate through. Sensor ‘nodes’ will be developed to directly
convert analogue voltages to the network protocol, reducing the amount of wiring on the
car (currently individual cables are run for every single sensor). This would also make
the data acquisition set up a lot more flexible, allowing sensors to be added and removed
as required.
In addition, it is proposed to develop a communication link between the on-board
network and an off-board software system, allowing the sensed data to be monitored in
real-time by the pit crew. The off-board system would allow team members to analyse
the gathered data in a manner that is easy to use by an untrained engineer while also
allowing data to be exported to more complex software packages to be used for more in
depth analysis.
Finally, video systems are to be integrated into the project, enabling team members to
see external factors that cause fluctuations in recorded telemetry. An example of this
would be a driver taking a slightly different racing line in a corner. This could also be
used to assist in driver training and gain significant improvements in overall lap times.
The system is to be modular in design, allowing for it to be integrated into any other
racing car in amateur racing series. The end product will also be lower in cost and more
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 25 of 129
flexible than other racing data acquisition/telemetry/video analysis systems, making it
more affordable and accessible to amateur racers.
Table 2 shows a summary of the high level objectives of the project, with an importance
assigned to each in order to set scope for the work done Responsibilities were assigned
as shown.
Table 2 - Project Objectives
# Objective Importance Responsible
1 Literature review into automotive network
architectures and protocols.
Major Daniel
2 Develop a network to allow all data acquisition
components on the car to communicate and share data.
Major Daniel
3 Develop nodes to interface sensors on the car with the
on-board network.
Minor Daniel
4 Literature review into on-board to off-board wireless
communication technologies.
Major Matthew
5 Design, implement and test a wireless channel for
communication.
Major Matthew
6 Development of nodes to interface on-board network
and off-board systems.
Major Matthew
7 Development of on-board data logger. Optional Matthew
8 Literature review into current video solutions. Major Amarjeet
9 Integration of video into off-board software system, to
view alongside the acquired data.
Major Amarjeet
10 Implementation of wireless transmission of video
stream(s).
Optional Amarjeet
11 Literature review into existing analysis systems. Major Lauren
12 Development of software and/or integration of 3rd
party software package(s).
Major Lauren
13 Design the off-board system to be user configurable. Minor Lauren
14 Include real-time displays for incoming data from on-
board systems.
Optional Lauren
15 Package the solution as a marketable product for
potential customers.
Optional All
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 26 of 129
A detailed explanation of the objectives and scope for the project follows.
OBJ-1 Literature review into automotive network architectures and
protocols.
Research is to be carried out into CAN and alternative network
architectures that are available. This will allow appropriate decisions to
be made as to which protocol to use on the car and which is the best
solution for amateur race teams.
OBJ-2 Develop a network to allow all data acquisition components on the
car to communicate and share data.
The chosen network architecture will be implemented and tested,
integrating ECU data with DAQ sensors. This includes both transmit and
receive functions (to be integrated with telemetry and logging systems
as required).
OBJ-3 Develop nodes to interface sensors on the car with the on-board
network.
The developed nodes will convert analogue voltages from sensors into
appropriate data formats for the on-board network. The data will be
labelled as required by the off-board system for identification of
individual sensors.
OBJ-4 Literature review into on-board to off-board wireless
communication technologies.
Research will be carried out into technologies and products available for
wireless communication. This will facilitate the choice of hardware for
the system.
OBJ-5 Design, implement and test a wireless channel for communication.
The chosen wireless channel will be tested under various different
realistic conditions in order to get an idea of the limitations and whether
this will influence the design further.
OBJ-6 Development of nodes to interface on-board network and off-board
systems.
The nodes on either end of the wireless channel will be developed in
order to integrate the system with the data formats provided and
required by the on-board and off-board systems.
OBJ-7 Development of on-board data logger.
An on-board data logger will be developed to store all data on the on-
board network.
OBJ-8 Literature review into current video solutions.
Research will be carried out into wireless video transmission products
that are currently available on the market.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 27 of 129
OBJ-9 Integration of video into off-board software system, to view
alongside the acquired data.
This objective includes converting the received video into an appropriate
format allowing it to be embedded within the analysis software.
OBJ-9 Implementation of wireless transmission of video stream(s).
This will include development of a wireless transmitter and receiver to
facilitate off-board viewing of video in real-time.
OBJ-10 Literature review into existing analysis systems.
This will give insight into the types of data that are processed, how the
data is displayed, what analysis can be done on that data etc. and this
knowledge will feed into the design of the software.
OBJ-11 Development of software and/or integration of 3rd party software
package(s).
This involves creating an application that will display the data from the
car in an efficient manner (such as graphs or tables) and that is easy to
use. This application could be entirely developed by the project team or
could involve an aspect of 3rd party software.
OBJ-12 Design the off-board system to be user configurable.
The analysis software should be simple and easy to use. Therefore, if the
user can configure the software to their needs it will enhance their
experience.
OBJ-13 Include real-time displays for incoming data from on-board
systems.
If data can be transmitted wirelessly then viewing the data real-time
would be a significant improvement on the current system.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 28 of 129
4 SYSTEM DESIGN AND IMPLEMENTATION
The design has taken the USM Formula Student cars as a prototype and will be integrated
into existing systems where possible. The system has been designed to be modular,
allowing flexibility when packaging solutions for differing types of race teams, for
example real-time displays may not be required by some customers.
The general system architecture is detailed in Figure 15. An on-board network
aggregates all ECU and DAQ data onto the same system (differing from the current
system). DAQ sensors will be input into ‘nodes’, which will interface with the analysis
software. Also connected to the network is a telemetry ‘node’ which transmits the data
to the off-board systems. A logging ‘node’ is included to store the data on the car.
The advantage of using an integrated system means that all data is available everywhere;
the same data can be displayed on the dash as is available on the analysis systems. This
makes the system much more flexible and easily expandable if extra systems are added
in the future, such as active aero or suspension. The new system simply needs to be
connected to the on-board network to access all the data it requires.
Figure 15 - Overall System Architecture
Video systems use a separate set of radios, with the camera being able to be mounted
anywhere on the car to allow different variables to be analysed.
ON-BOARD OFF-BOARD
ECU
Engine Sensors
DAQ Sensors
Logger
Telemetry
EmbeddedNetwork
Analysis and
Display
Camera
Transmitter
Receiver
Receiver
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 29 of 129
The off-board software system will allow simple analysis to be carried out quickly by
relatively untrained users (compared to the training required for the current systems)
and also allow real-time values to be displayed. The integrated system means that data
from the ECU can be compared with data from DAQ sensors, something that is not
currently possible.
Through consultation with USM, three main states of running the car were identified.
‘Pre-Run’ is when the car is being set up and is the period in which data acquisition
systems are set up, alongside other systems on the car. When the car is ‘Ready to Run’,
the engine is ready to be started and the car will start a session. This is when the data
acquisition systems should be ready to start logging. ‘Running’ is when the car is on
track and logging systems should be active. This is where real-time displays and video
would be useful to the team for monitoring the health of the car and driver behaviours.
‘End of Run’ is when the car comes back into the pits; logging should be stopped and data
stored for future analysis.
The actions to be carried out within each system state are shown in Figure 16.
Figure 16 - System State Diagram
The final design has been split into four subsystems:
1. On-Board Network and Sensor Interfaces
This system includes all on-car network development, interfacing with the ECU and data
acquisition sensors (OBJ-1 to OBJ-3).
2. Telemetry/Logging Systems
1. Pre-Run
• DAQ and telemetry systems set up.
• Video systems set up and mounted on car.
• Off-board software started up.
2. Ready to Run
• CAN nodes sending data.
• Wireless connections established (video shown).
• Logging can be started through switch on car.
3. Running
• Log all data on internal SD card.
• Send real-time values to server.
• Save incoming video on off-board systems and display real-time.
4. End of Run
• Stop logging through button on dash.
• Transfer all data from SD card by removing SD card and
uploading to server.
• Save all data on off-board systems.
• Display simple analysis and export options in software.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 30 of 129
This includes all wireless communication development for data transmission from the
car to off-board software (OBJ-4 to OBJ-7). All on-board logging also comes under this
subsystem.
3. Video Systems
All video systems development, testing and integration into the off-board software will
be carried out as part of this subsystem (OBJ-8 to OBJ-10).
4. Off-Board Software System
Analysis software, real-time displays and data storage will be developed as part of this
subsystem (OBJ-11 to OBJ-14).
Each subsystem design is discussed in further detail in the following sections.
ON-BOARD NETWORK
The main design decisions made for development of the on-board network are discussed
in this section, along with implementation details.
4.1.1 Protocol Choice
The main design decision that had to be made for the on-board network was the protocol
to use. The team’s ECU [13] has the option to use RS232 or CAN, with more variables
output over the latter. The CAN stream that is output from the ECU is shown in Figure
17, extracted from the manual [14].
Figure 17 - Extract from ECU Manual showing CAN stream [14]
As can be seen a huge amount of information is available from this source, and as of 2013
it is used to drive USM’s dashboard to allow the driver to monitor essential variables. In
addition RS232 is a unicast protocol and therefore can only be used to transmit to one
device at a time. The CAN protocol is a broadcast system and is much better suited to
this problem, where communications across multiple devices is required. The CAN
protocol is discussed in more detail in Section 2.2.
Other embedded network protocols are available, such as TTEthernet [15]. However as
CAN currently is an industry standard, with most high end ECUs including at least one
CAN controller, the decision was made to use the CAN protocol as the embedded network
for this project. This will allow the developed system to be integrated into existing
systems that USM and other teams use [16], rather than implementing a new system that
replaces existing functionality – something that this project aims to avoid.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 31 of 129
Many lower end ECUs do not include a CAN interface as standard and only offer a RS232
interface for programming and basic data stream outputs [17]. However the advantages
of using CAN (all data available everywhere) would warrant implementing an RS232 to
CAN converter for such devices. Many of the ECU manufacturers offer such a converter
for additional cost. As the DTA S80 Pro is at the lower end of the high end ECUs on offer,
and is used throughout the amateur racing scene, using CAN seems to be an appropriate
choice, given that teams who don’t use the higher end ECUs won’t be so interested in in-
depth analysis and tuning of the car.
4.1.2 System Architecture
There are two main options for the main system architecture – individual CAN nodes for
each sensor or larger nodes with multiple sensors attached to them as seen in Figure 18.
As can be seen in Figure 2 the sheer number of sensors means the first option is not
practical, as suitable mounting locations would need to be found for each sensor node
along with the additional weight associated with the enclosures. For this to be practical,
each sensor node would need to be extremely small, resulting in additional development
costs and complexity.
Figure 18 - Front and Rear CAN Nodes Architecture
The decision was made to go with the second option, where the raw analogue voltages
are sent from each node to the data logger/telemetry, with the off-board system
providing calibration functionality. The advantage of this is that each car setup can be
saved easily on the higher power system, rather than adding complexity across the
whole system to achieve calibration functionality.
The second option, shown in Figure 18, has two larger nodes, with multiple sensors
attached to each one. This is a compromise between reduced weight from the wiring and
the additional weight from each enclosure. The design is still expandable, so if more
sensor inputs are required an additional node can be added. It will also facilitate easier
design, manufacture and integration than with the first option. Finally, most
ECU
TELEMETRY
DASH
CAN Bus FRONT
NODE
REAR
NODE
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 32 of 129
microcontrollers include multiple channel analogue to digital converters (ADCs),
therefore the larger nodes will result in higher utilisation of hardware, reducing costs
further.
When sending data, again two options were discussed. The first was to send the real
values of sensors (in degrees, Newtons or displacement centimetres for example), and
the second was to send the raw voltage of the sensors and calibrate in the off-board
software.
The advantage of the first option is that the sensor calibration has been done before it is
sent onto the network, therefore any device on the network can read the actual value
and act on it appropriately (useful for dash displays). The disadvantage of this is that the
calibration values have to be sent in some way to each CAN node, either through CAN
itself (adding complexity in how these calibration values are stored in non-volatile
memory) or re-flashing each chip (which reduces ease of use). The decision was made
to calibrate sensor values in the off-board software.
4.1.3 Microcontroller Choice
Four main processing architectures were considered for the implementation of the on-
board network: Arduino (Atmel), PIC (Microchip), Atmel, and Texas Instruments AT
series. Most of the architectures researched offered CAN libraries to facilitate fast
development, rather than having to implement the CAN protocol from scratch. Table 3
shows the advantages and disadvantages for each architecture.
Table 3 - Processing Architecture Comparison
Arduino PIC Atmel Texas Instruments
+ Group very
experienced.
+ Some experience. - No experience (other
than Arduinos).
- No experience.
+ Large online
community.
+ Previous projects
have used CAN on
these devices.
+ Devices available that
match project
requirements.
+ Devices available that
match project
requirements.
- None with native CAN
controllers (other than
Arduino DUE).
+ Through-hole
packages available.
- Surface mount only. - Surface mount only.
+ No external
development
systems/debuggers
required.
+ Debugger already
owned by USM.
- Requires purchase of
debugger to load code.
- Requires purchase of
debugger to load code.
- High power
requirements due to
additional hardware.
- Reputation for being
difficult to develop for
[18].
+ Lower power
requirements [18].
The Atmel and Texas Instruments architectures were ruled out due to no through-hole
packages being available, which makes it difficult to prototype and manufacture with the
facilities available at the university. The PIC family of microcontrollers (MCUs) offer
through-hole packaging, with some experience within the group of using the
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 33 of 129
development environment and debugger (which is already available for use from the
USM team). The group is very experienced with Arduino microcontrollers, but due to the
large size and high power requirements they are not suitable for this project. Therefore
the PIC family of microcontrollers was investigated in further detail.
The microcontroller used for the Smart Dash project in 2013, the PIC18F4580, was
deemed inappropriate due to physical dimensions and the number of digital I/O pins
which were not required for this project. However personal experience using and
tweaking the system led to the conclusion that this was a suitable device family to use,
with CAN libraries available from microC [19] for communication with the inbuilt CAN
controller. The Microchip C18 compiler also offers a CAN library that supports the
inbuilt CAN controller.
The decision was made early on to use the same microcontroller across the project to
aid ease-of-development. This is suitable due to the low costs of the PIC (less than £5).
The architecture decision was also influenced by the other peripheral interfaces
required. UART ports were required to communicate with GPS and radios, alongside i2c
for the accelerometer. An inbuilt ADC was also required.
The device chosen was the PIC18F25K80, in a through-hole package. The specifications
match the requirements of the project, with eight 12 bit ADC channels, a CAN controller,
a SPI, and two UART channels. The package is also very small, at just over two and a half
centimetres in length, which will facilitate small packaging for the CAN nodes.
Experience from the Smart Dash project was drawn upon with it documented that the
internal oscillator on the PIC became unstable after longer periods of time. Therefore an
external 20 MHz oscillator was specified for each CAN node to offer stability. This value
was one of the highest supported as specified in the MCU’s datasheet.
A CAN transceiver is required to convert the CAN differential signals into transistor-
transistor logic (TTL) signals for the microcontroller. This chip protects against high-
voltage spikes in automotive environments, and acts as the interface between the CAN
controller built into the microcontroller and the physical two-wire CAN bus. The
recommended transceiver for the PIC18F25K80, the MCP2561 [20], was selected which
is to be wired as shown in Figure 19.
Figure 19 - MCP2561 Wiring [21]
Voltage Regulator
Microcontroller
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 34 of 129
All circuit schematics for all the nodes are included in the accompanying CD. The basic
circuit to support the microcontroller (including external oscillator and in-circuit
programming header) along with the CAN transceiver to interface to CAN is the same
across all the nodes, with additional peripherals included to allow node-specific
functionality – such as GPS, radios or on-board flash storage.
An external 20 MHz oscillator is included between pins 8 and 9 on the microcontroller
with loading control capacitors. A 10 kΩ pull-up resistor is connected to MCLR (pin 10)
to keep the microcontroller out of reset, and a 330 Ω current limiting resistor is also
included to protect that input. A decoupling capacitor is included between power and
ground to reduce high frequency noise on the main power supply.
4.1.4 Power Supply
Voltage regulation will be required to offer stable power supplies to the hardware on
each CAN node, especially when the system is powered through the relatively unstable
power supply on the vehicle. Previous experience has shown that switched regulators
facilitate easy development and stable supplies. In addition they do not require large
heat sinks to dissipate the heat generated when stepping down from 12 V to 5 V as
required with linear voltage regulators. The current output was chosen to support 1.5 A,
so that the node is able to power itself alongside external sensors if required.
A small linear voltage regulator was also specified to step the 5 V supply down further
to 3.3 V for peripheral devices, such as radios, GPS and accelerometer. This is a smaller
step down in voltage, and with less current output required, no large external heat
The Formula Student rules were consulted to ensure that power is allowed on the car
while the engine is switched off to keep data acquisition and cooling systems on. The
only time that the car has to be completely off is when the main kill switch is turned off.
This allows systems to be monitored as the engine cools down. This information was
communicated back to USM so they could incorporate this in the design of the electrics.
In addition, system power consumption estimations were calculated so that they could
be fed back to the team, allowing power systems to be sized appropriately. These
calculations indicated that the entire data acquisition system consumed around 2 W.
This is not significant compared to other devices used on the car. This analysis is
included in the accompanying CD.
4.1.5 Packaging
The automotive environment is not very forgiving towards electrical circuits, and as such
they require protection against many different elements. Printed circuit boards (PCBs)
were designed and manufactured by the EEE workshop to achieve high reliability in this
environment. PCB design was carried out in Designspark by RS, as project members had
experience in using this software, and the free version has no board size limitation. An
example of the PCB design is shown in Figure 20 for the standard node, and the
completed PCB is shown in Figure 21. A copper pour was connected to ground across
the whole PCB to improve oscillator stability and improve ease of manufacture.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 35 of 129
Figure 20 - Standard Node PCB Design
Figure 21 - Standard Node (top) and Extension Node (bottom) PCBs
Off the shelf enclosures were purchased to house the PCBs while on the car. These were
available in a blue aluminium, which was used across all the nodes to allow a cohesive
brand to be developed in conjunction with the logo and business considerations as
discussed in Section 4.7. An example of these enclosures is shown in Figure 22, this one
for the standard node.
Figure 22 - Enclosure
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 36 of 129
Connectors were sourced to allow wires to be easily connected to the circuit by the user.
This was done by using a two part pin and socket connecter, with wires that screwed
into one section that is then inserted into the socket on the PCB. This is a neat solution
that is utilised by the Race Technology DL1, with experience showing that this works
well in the automotive environment.
STANDARD AND EXTENSION NODES
The standard node is a single node that includes a GPS module for location sensing, and
an accelerometer to sense the movement of the vehicle. Four of the eight channels are
utilized on the internal ADC. Four of the ADC channels are left unused in order to ease
the requirements on the microcontroller, alongside reducing the size of the enclosure.
The extension node is exactly the same architecturally as the standard node, without the
GPS and accelerometer modules. All eight channels on the ADC are utilised.
4.2.1 GPS
In order to log the car’s position on track, a GPS module is included. Most GPS chips
output a NMEA [22] sentence over a UART serial communication link, containing
position and current time. The Venus638FLPX offers 20 Hz updates (faster than most on
the market) [23] however it is only available in column grid array (CGA) surface mount
packaging which the university does not have the facilities to solder. A solution, albeit
more expensive and with a larger physical size, is to buy a breakout board with the same
GPS device pre-soldered onto it. Sparkfun offer a breakout board, with an SMA connector
for an external GPS antenna on-board, as seen in Figure 23.
This device runs at 3.3 V, whereas the chosen microcontroller operates at 5 V logic. A
logic level converter is therefore required to communicate with the serial port of the GPS
chip.
The module was configured with a custom firmware using the GPS Configurator
software that is supplied by the manufacturer [24]. This software is designed to connect
directly to the module through a USB port, so the module was connected to a serial port
on an Arduino Mega, which was then configured to mirror incoming bytes onto its USB,
and vice versa.
The module was set to output a single NMEA sentence that included the location
information (GPRMC), with other sentences disabled. The maximum rate that the GPS
can send strings is 20 Hz, but testing showed that the microcontroller struggled to deal
with this amount of data while also being integrated with the other peripherals on the
standard node. The system was proven to be stable at an update rate of 2 Hz, however
it is suggested it may be possible to have a higher data rate if the serial port was
configured to have a higher baud rate than the default 9600 baud.
A high dynamic range firmware was also loaded, in theory allowing it to detect sharper
turns at the expense of a slightly noisier signal, as a smaller moving average is used to
calculate position.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 37 of 129
Figure 23- Venus 638FLPX Breakout Board by Sparkfun [24]
The datasheet [23] specifies that the chip takes 29 seconds to connect to satellites from
a no power state but only takes 1 second if kept in a low power state. This was tested
and was proven to be the case. The standard node PCB included a 0.2 F super-capacitor
to keep the GPS module in a low power state when the power is switched off.
This circuit diagram can be found on the accompanying CD, including the logic level
convertor to communicate with the MCU, and the LM317 3.3 V voltage regulator as
discussed in Section 4.1.4.
4.2.2 Accelerometer
A similar problem with the accelerometers was found as with the GPS – they are
generally only available in packages that cannot be soldered without infra-red oven
facilities. Pre-soldered breakout boards were therefore sourced, with the knowledge
that if the product was to go into mass production, these manufacturing methods would
be available.
An accelerometer was chosen that had an i2c interface. This allows the module to
independently poll an internal ADC to sense the acceleration – rather than that load
being placed on the host MCU. Only two pins are required to communicate with the
device – SDA and SCL. SDA is the data line and, as i2c is a synchronous protocol, SCL is
the clock line. This architecture also allows more i2c sensors to be daisy chained in the
future if required. As with the GPS, a logic level converter is required to convert the 3.3
V logic to 5 V logic.
The chosenmodule was the Freescale MMA8542Q [25], which can be configured to sense
±2g, ±4g or ±8g.This was configured to ±2g after discussions with USM, however could
be reconfigured for other applications. External i2c pull-up resistors are usually
required on the SDA and SCL lines to keep them high unless pulled low by the master
MCU. These are included on the breakout board that was bought.
The other potential option would be to use an accelerometer module that gives analogue
voltage outputs for acceleration on the X, Y and Z plane individually. The problem with
this is that most of these modules operate at 3.3 V, and with a 5 V MCU, there is a loss of
resolution on the ADC. It is difficult to amplify the output signal to match the input on
the ADC on the MCU, as they rest at 1.25 V at 0g in order to show negative acceleration.
The digital modules were therefore chosen as the most suitable option.
4.2.3 Analogue Voltages
As discussed previously, the internal 12-bit ADC on the MCU was used to sample external
sensors. This simply required the appropriate pins to be connected to the external
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 38 of 129
sensor. Protection on these inputs was considered, as there is potential for these to be
connected incorrectly by the user. Current limiting resistors could be placed in series
with the input, along with Zener diodes between the input and ground. If a higher voltage
is present at the input, the Zener diode would break down and short to ground –
protecting the input of the MCU.
Further research indicated that the PIC microcontroller used in this project has internal
clamping diodes to protect the inputs up to the supply voltage plus 0.5 V, in conjunction
with current limiting resistors. It was decided that as the sensors in general would be
supplied by the node’s own regulated 5 V supply, the input voltage was unlikely to vary
very much. Transient voltage spikes may be present due to electrical noise on the car,
however they are unlikely to last very long, and a Zener diode would not protect against
these due to the relatively slow reaction time. Therefore the decision was made to use
the internal protection on the microcontroller – with the cost of replacing a
microcontroller (around £2) being less significant than the development and
manufacture of effective protection circuits.
4.2.4 Software Design
The node is required to send data at a rate of 10 Hz. The code is organised so that the
sensors are polled continuously, updating a set of global variables. A timer is set up to
send an interrupt every 100 ms (10 Hz), at which point a flag is set to package the data
into CAN packets and send.
The GPS module sends NMEA sentences over UART. It was important to deal with
incoming bytes as fast as possible. Through testing it was found that the hardware UART
on the MCU has a buffer of 2 bytes which if not read before another byte arrives causes
an overrun error to occur. This causes the MCU’s UART to go into reset, meaning that no
more data can be received. The code was reorganised to have a high priority interrupt
fire when a byte was received on the UART, which then put that byte at the end of a
circular buffer. The polling loop can then process from the start of the circular buffer
when possible, meaning that data was not lost.
The i2c operation for the accelerometer follows the protocol. The master (the MCU)
writes the address of the accelerometer to the bus (controlling the clock appropriately),
at which point all other slaves on the bus ignore any more messages (in this case no other
slaves are present). The accelerometer then sends an acknowledge message. The master
then writes the address of the register that it wishes to read data from. The slave gets
this data and sends an acknowledge command, at which point the master can clock in
the data. The master releases the bus before the next i2c operation by sending a not-
acknowledge, NACK.
The MMA8542Q offers a multiple byte read which allows the next address in the device
to be read automatically after an acknowledge message, without the master explicitly
asking for it. This is very useful as for the acceleration readings six registers have to be
read.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 39 of 129
Figure 24 - MMA8542Q multiple byte read feature [26].
The overall process can be seen in an extract from the device’s datasheet in Figure 24.
The operation for the MCU’s internal ADC is relatively simple using the C18 compiler
libraries. The ADC is set up with an appropriate clock speed, and set to use internal
voltage references. It uses the internal RC oscillator on the microcontroller for simplicity.
To make an analogue reading, the ADC needs to be switched onto the appropriate
channel, and a conversion started. The program then needs to wait until the conversion
is complete before reading the ADC result.
A slight issue was found when using some of the channels on the ADC, which was
resolved by fixing some slight errors in the library which were not correct for the specific
microcontroller. This fixed header file has to be included in the source file, rather than
the one from the compiler for those channels to work.
The CAN controller in the MCU is the same as used in the previous Smart Dash project,
so the same approach was used to control it. The helper application from Microchip,
Application Maestro, was used to create an initialise method, and library functions to
send and receive onto CAN. It was necessary to set up the bit timing for the controller, as
the CAN protocol is asynchronous and has no clock sent during data transmission. Each
CAN node on the network has different clock speeds, so synchronisation is achieved by
dividing each frame into different segments: sync, propagation, phase 1 and phase 2.
A CAN bit timing calculator provided by Microchip [27] was used to calculate the
appropriate values for each of the segments, given the clock speed of the nodes (20 MHz)
and the desired bit rate of the CAN bus (1 Mbps). Receive and send filters on the CAN
controller had to be set to extended mode to support the extended addressing as used
by USM systems and the DTA ECU.
TELEMETRY NODE
The telemetry package is made up of two nodes, one transmitter node on-board the car
connected to the vehicles CAN bus and one receiver node positioned at the side of the
track and connected to the off-board software system. The telemetry link is half duplex,
however it is only currently set up to transmit data from the car to the pits. This could
be expanded in the future to allow transmission from the pits to the car allowing further
configuration of the data which is sent or control of on-car systems.
4.3.1 Radio Link
A 173.25 MHz radio link is used to communicate between the two nodes. The low
frequency of this link will allow reliable data transfer between the car, which could be
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 40 of 129
travelling at up to 60 mph, and the receiver at the side of the track which could be
positioned up to 500 m away from the car. The long wavelength of the 173.25 MHz signal
allows it to diffract around obstacles between the transmitter and receiver making it
more suitable for the environment of a racetrack than a comparable higher frequency
link.
4.3.2 Hardware Design
A PIC microcontroller links the on-board CAN bus with the radio link. A linear voltage
regulator and logic level converter are used to link the 5 V circuit of the microcontroller
and the 3 V specified by the radio transceiver. The circuit for this setup has been included
on the accompanying CD.
The Radiometrix Bim1 radio transceiver [28] on each node communicates with the
microcontroller over a UART serial connection. Due to lack of experience in RF PCB
design the transceivers were connected to the system using their breakout boards as
supplied with the narrow band evaluation kit [29]. However with the time and
production facilities to do so the transceivers could be connected directly to the
telemetry node PCBs, reducing package size and production costs.
The off-board design is implemented on a PCB linking the transceiver through a logic
level converter to an Arduino Mega board. The design utilises several features offered
by the Mega board: the microcontroller, the 3.3 V regulated supply and the UART to USB
used in order to communicate with the server. It would however be possible to use
individual components for each of these in order to reduce package size and production
costs.
4.3.3 Software Design
On the on-board system data is continually collected from CAN using a polling loop and
used to update a set of variables storing the data. A timer is set to call an interrupt every
0.2 s (5 Hz) at which point a flag is set to call the transmit code on the next loop. This
code transmits all the stored data over UART and the radio link before continuing to poll
data from CAN again.
Due to limitations with the C18 compiler, the variables used to store the data have had
to be manually declared in separate sections. This is due to the compiler not allowing
blocks of memory larger than 256 bytes unless declared in separate sections [30].
A set packet structure is used across the radio link with preamble to reduce noise. The
packet structure has five ASCII STX (start of text) bytes to denote the start and five ASCII
EOT (end of transmission) bytes to denote the end of the packet. Twenty three values
are then sent in real-time, each value separated by a delimiter which is the ASCII US (unit
separator) byte. Finally, a checksum has been used to ensure integrity of the data.
LOGGER NODE
The logger node logs all data on the CAN bus to a microSD card. The data is logged at 5
Hz and includes date and time from a real-time clock module, GPS, accelerometer, all
ECU data and all analogue inputs from the standard node and up to 4 optional extension
nodes.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 41 of 129
4.4.1 Hardware Design
A PIC microcontroller is used to retrieve the data from CAN, arrange it into packets and
send it over UART to a second microcontroller which adds the current time sampled
from a real-time clock to each packet before storing to a microSD card.
The DS1307 real-time clock module [31], which has a battery backup, uses an i2c bus.
The Sparkfun SD breakout board used to write to the microSD card, communicates over
SPI. The PIC microcontroller that is used, the PIC18F25K80, supports both of these
protocols. Unfortunately both of the protocols use the same serial port so cannot be run
together. In order to simplify the system and making use of existing libraries developed
for Arduino, the communication with these two devices was offloaded to the second
microcontroller, an Atmel 328PU. The SparkFun SD breakout board was used to provide
the microSD enclosure which is otherwise unavailable in a package size suitable for
prototyping. The circuit for this setup has been included on the accompanying CD.
4.4.2 Software Design
The logger code is split into two parts each implemented on its own microcontroller. On
the PIC microcontroller data is continually collected from CAN using a polling loop, with
the data being used to update a set of variables. A timer is set to call an interrupt every
0.2 s (or 5 Hz) at which point a flag is set to call the transmit code on the next loop. This
code transmits all the stored data over UART to the Atmel microcontroller before
continuing to poll data from CAN again.
On the Atmel chip the data is received and checked using a checksum to ensure it is
consistent with what was sent from the PIC. The real-time clock is then sampled to find
the current date and time and this is concatenated to the start of the data packet before
being stored to the microSD file in FAT32 format.
VIDEO HARDWARE
The video system designed is very similar to first person view (FPV) systems as used in
remote control airplanes. FPV means that the user can view everything as if they were
actually in a plane or in this case, racing in the car or further monitoring a component.
The design consists of five main components:
 Camera - captures the live video feed.
 Transmitter - transmits the video stream over a selected channel.
 Receiver - receives the video stream over the selected channel.
 ADC - converts analogue video feed into a digital one.
 Display – displays the live video stream.
This section will discuss the hardware decisions that were made during the process of
building such a system.
4.5.1 Camera
There is a wide range of different types of cameras available, from small portable
cameras up to broadcast cameras as used in television productions. USM have specified
that the chosen camera should be small and portable enough to be placed anywhere on
the car. Thus the following factors have been considered.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 42 of 129
4.5.1.1 CCD or CMOS
Two of the most common camera types that match the requirement of USM are CMOS
(Complementary Metal Oxide Semiconductor) and CCD (Charged Couple Device) [32].
Both of these cameras capture the video in a similar manner but CCD provides high
sensitivity, enabling it to capture video in very low-light (i.e. under the chassis). This
sensitivity is determined through the lux value of the camera and the chosen CCD camera
has 0.01 lux. This means that the camera can be placed in locations that may be darker
in order to monitor components. In addition, the CCD images are cheaper to develop
compared to CMOS, which leads to CCD cameras being less expensive [33].
4.5.1.2 Camera Resolution
Camera resolution depends on the television lines (TVL) [34], which is a specification of
an analogue camera’s horizontal resolution power. TVL is crucial when measuring a
video system because the more TVL a camera has, the better quality of the captured
video. The camera chosen for this video system consists of 700 TVL, which should give a
high quality image.
4.5.1.3 Lens Size
The lens size of a camera determines the field of observation view and zoom level it
provides. A smaller lens size produces a wider angle of view meaning a larger area can
be viewed, with less focus on individual objects as seen in Figure 25 [35]. Therefore the
lens size chosen is 2.8 mm giving a much wider angle of view allowing the USM team to
clearly see what is happening while the car is on track. Another camera with a larger lens
size can be chosen to provide a target for a particular component on the car.
Figure 25 - A comparison of lens size and the associated angle of view [35]
4.5.2 Transmitter and Receiver
The transmitter and receiver are an essential part of a wireless video system, and the
frequency of these and types of antennas chosen will determine the range and the
reliability of the video transmission. A 2.4 GHz transmitter and receiver have been
chosen for this system and the linear antennas have been replaced with the clover leaf
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 43 of 129
and skew planar antennas. The reasons for choosing this frequency and these particular
type of antennas are explained in the following sections.
4.5.2.1 System Frequency
When considering FPV video transmission, there are four frequencies that are commonly
used. The lower frequency band allows for a waveform with higher amplitude to be
produced. This gives a longer range and is less susceptible to interference, allowing the
transmission to penetrate objects such as buildings [36]. Due to the fact these
wavelengths are extremely long, they require larger antennas to be transmitted [37].
The frequencies available for the video transmission are as follows [38]:
 900 MHz – This frequency is the lowest frequency band available for
transmitting video thus produces the largest waveform. This would have been
the best frequency to choose but the downside is that it is used by mobile phones
in UK for 3G technology and is illegal to use in the UK for licence-free radio
transmission.
 1.3 GHz – This offers good penetration and allows for long range transmission
but once again it is also illegal to use in UK [36] so therefore has not been
investigated further.
 2.4 GHz – This frequency suffers from interference from WiFi networks so
cannot be used in urban areas effectively. However the tracks used by USM are
often obstacle free and are away from urban areas, so this is not a concern. Due
to the higher frequency, range is reduced however this can be overcome by the
use of specialised or high gain antennas.
 5.8 GHz – This frequency can be used with smaller antennas resulting in a lighter
weight system. It has disadvantages of a shorter transmission range and reduced
penetration.
The 2.4 GHz band is an ideal frequency to use in UK for this particular video system and
where range issues occur, as mentioned above, they can be overcome with the high-gain
antennas on the receiver side.
4.5.2.2 Antennas
Antennas are a crucial link between the transmitter and receiver. Therefore it is best to
select the proper antenna for this scenario to ensure robust transmission and that a long
range is realised. There are two types of antennas; linear polarised and circular
polarised. Linear polarised antennas produce a vertical wave whereas circular polarised
antennas output a wave in a circular pattern. Waves produced by both antennas can be
seen in Figure 26 [39].
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 44 of 129
Figure 26 - Linear Polarisation vs. Circular Polarisation
One of the advantages of using a circular polarised antenna is that it provides reliable
transmission. With linear antennas the transmitter antenna has to match the angle of the
receiver antenna. This condition not being met can lead to a loss in signal resulting in a
drop in picture quality or even total loss of picture [39].
In addition, linear antennas suffer from multipath interference. Multipath interference
is caused due to a linear signal bouncing off an object (refer to Figure 27) and arriving
later than expected or arriving out of phase compared to the original pattern. In circular
polarisation, when a signal is bounced off an object it changes its pattern in a different
orientation. A receiver antenna doesn’t detect it, leading to the multipath rejection
capability of circular polarised antennas [39].
Figure 27 - Multipath interference
Due to improved signal reception and multipath rejection capabilities of circular
polarisation antennas, the linear antennas weren’t further investigated.
Figure 28 - Circular Polarised Antennas [39]
The most common types of circular polarised antennas are (as seen in Figure 28):
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 45 of 129
 The Cloverleaf – These antennas are designed specifically for FPV use and
consist of 3 distinct lobes. These antennas have gain of 1.2 dbi and produce an
isotropic radiation pattern [40]. An isotropic pattern means that the radiation
pattern is the same in all directions, allowing a 360 degree vertical and
horizontal bandwidth. Therefore these antennas are ideal for transmitters
because they radiate in all directions with the same gain [38].
 Skew-Planar Wheel – These antennas are also designed specifically for FPV use.
The difference between cloverleaf antenna type and this antenna type is that it
is constructed of four 105 degree arcs instead of three. It also has a lower gain
(0.9 dbi). Their omni-directional nature and better multipath rejection
capability, compared to cloverleaf antennas, makes them a suitable receiver
antenna [41].
 Helical – There is a lack of gain in circular polarised antennas as discussed
above, hence longer range transmission often requires an additional antenna
with higher gain to be incorporated on the receiver side. This usually affects the
circular polarisation of transmission by compressing the bandwidth in one
particular direction. An alternative to this solution is called a helical antenna.
This produces a true circular polarisation and provides a gain of 7.5 – 13 dbi [39]
[42].
A cloverleaf antenna will be used for the transmitter due to their lower cost, smaller size
and appropriate gain. A Skew-Planar antenna will be used for the receiver. Furthermore
a helical antenna can also be used to extend the range of transmission.
4.5.3 Analogue to Digital Converter
In order to display the analogue video alongside the data on the off-board system
application it has to be converted into a digital format. Therefore it requires a conversion
tool such as a video capture card.
This capture card plug into a user’s computer via a USB port and convert analogue video
stream into a digital stream. Once the conversion has taken place the stream can be
modified using video editing tools that are included with the capture card, therefore
allowing the stream to be recorded and saved onto a storage device.
The initial capture card chosen for the system was the EasyCap USB 2.0 video and audio
capture card. After installing the drivers for the card and testing it with the designed off-
board system, it didn’t work as expected. External software was used to validate the fact
that the problem was with the card itself and not the software system. The bought card
consisted of a UTV007 chip which was discovered to be a fake device and doesn’t include
the appropriate video decoder chip [43].
An alternative capture card was sourced solving these issues. The Dazzle DVD recorder
which outputs the analogue signals into H264 format. H264 is a video format of mp4 that
can easily be supported by most of the browsers.
4.5.4 Display
There are two options to display the video; either the video can be displayed on a
monitor through analogue output on the receiver side or it can be displayed alongside
the application with the use of an ADC. This is further discussed in Section 4.6.3.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 46 of 129
OFF-BOARD SOFTWARE SYSTEM
This application is used during runs to view data in real-time to allow the pit crew to
watch for any fluctuations that may require immediate attention. A live video stream
alongside the data helps the team to identify reasons for anomalies in the data. The
application is also used after runs for analysing the data for a driver or to aid testing and
designing of the car.
4.6.1 Architecture of the System
It was decided that the software would primarily be programmed in Java, as the project
member assigned the role of developing the system had strengths in Java. As one of the
requirements from the USM team was to be able to view the data in real-time, it was
decided that multiple users should be able to view this data to make the software as
useful as possible. To allow for this, it was decided that the best approach was to design
the software as a web application, allowing many clients to access the application via a
server.
Making the analysis software a web application allows it to be very flexible – many users
can access it simultaneously, multiple sets of data can be viewed at once, the software
can be viewed on different devices and the look and feel of the software can be updated
easily. With previous software that the USM team have used, the software has been
limited to a specific number of computers due to licencing and restrictions. However,
using a web application removes this constraint and allows more members of the team
to use the software simultaneously.
The analysis software is a web application designed with the Model-View-Controller
(MVC) framework in mind. The view is the JSP pages which are styled using Bootstrap.
The model is the underlying code that creates the objects. The controllers use Spring to
pass information between the view and the model. The data is stored in a MongoDB
database (described in the next section). Services are used to write data from the model
to this database, and retrieve data from the database to pass back to the model. The
whole application is hosted on a Tomcat web server and Spring Security is used to only
allow authorised users to view the application. A basic diagram of how the software is
made up is shown below in Figure 29.
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 47 of 129
Figure 29 – System Architecture
4.6.1.1 Maven
The project was set up as a Maven project. Maven is a tool used for building and
managing Java-based projects. It allows a project to be built using a set of plugins (shared
by all Maven projects) and a project object model (POM) [44]. Maven allows for JARs to
be included in a project by including a few lines of code, meaning that the project can be
easily imported to other computers as Maven will automatically download all the
relevant files.
4.6.1.2 Spring
The system was designed as a Model-View-Controller (MVC) application. MVC is a
software pattern used to separate the internal representations of information (the
model) from the way that the information is presented to the user (the view). The
controller is the link between the view and the model, translating user commands from
the view into messages which can be interpreted by the model. Using an MVC design
allows for different views to be used easily with the same model. To link the back end
Java with the front end HTML, the Spring framework was used as the MVC
implementation for the web application.
Spring is an open source application framework and inversion of control (IoC) container
for the Java platform, providing comprehensive infrastructure support for developing
Java applications [45]. The IoC is a consistent means of configuring and managing Java
objects (otherwise known as beans [46]) – it creates the objects, calls their initialisation
19250 CES GROUP PROJECT – FINAL REPORT
GROUP H
Page 48 of 129
methods and configures the objects by connecting them together [47]. The IoC uses
reflection (examining and modifying the structure and behaviour of an object at
runtime) to do this.
The Spring MVC implementation is designed around a Dispatcher Servlet that dispatches
requests to handlers. Using annotations such as @Controller and @RequestMapping
offers a wide range of flexible handling methods and creates a RESTful2 web application
[48]. The model is a Map interface which allows for complete abstraction of the view and
can be integrated directly with JSP (JavaServer Page that contains static data and
dynamic content [49]) as well as directly generating JSON and other content types.
4.6.1.3 Bootstrap
Bootstrap is a powerful front-end framework for faster and easier web development
[50]. It contains HTML and CSS based design templates for typography, forms, buttons,
navigation and other interface components. It also includes optional JavaScript
extensions [51]. Bootstrap is responsive which means that it adapts to the change in
platforms with super speed and efficiency. For example, if a user moves from using a
laptop to using their phone, the page will automatically resize and components will
adapt [52].
4.6.1.4 Tomcat
As the analysis software has been designed as a web application for client/server use, a
server is needed to host the software. Tomcat is an open source web server and servlet
container which provides a pure Java HTTP web server environment for Java code to run
in [53]. By running this server on a computer, the USM team can access the web
application by going to the following page “http://XXX.XXX.XXX.XXX:8080/USM-
Analysis-Application”, where XXX represents the IP address of the computer that is
running the server.
4.6.1.5 Spring Security
As the data that is recorded from the car is sensitive and the USM team do not want other
Formula Student teams to be able to see the data, security has been put in place to ensure
only USM members can access the analysis application. Spring Security is a powerful and
customisable authentication and access-control framework which is the standard for
securing Spring-based applications [54]. If a user tries to access any part of the web
application, a login box will appear asking for a username and password. Once this has
been entered, the user is free to use any of the web application software. If the user
cannot provide the username and password then they cannot access the application and
therefore cannot view the data. This ensures that the USM’s data is protected if the
username and password is kept to within the team.
2 Representational state transfer (REST) is an architectural style consisting of a coordinated set
of architectural constraints applied to components, connectors and data elements within a
distributed hypermedia system [77].
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report
Group H Final Report

More Related Content

Viewers also liked

Maternal Mortality
Maternal MortalityMaternal Mortality
Maternal Mortalitylimgengyan
 
Topics for final year project
Topics for final year projectTopics for final year project
Topics for final year projectPrafulla Deori
 
Final Year Projects Computer Science (Information security) -2015
Final Year Projects Computer Science (Information security) -2015Final Year Projects Computer Science (Information security) -2015
Final Year Projects Computer Science (Information security) -2015Syed Ubaid Ali Jafri
 
My Final Year B.Tech Research Project
My Final Year B.Tech Research ProjectMy Final Year B.Tech Research Project
My Final Year B.Tech Research ProjectEeshan Srivastava
 
Maternal mortality
Maternal mortality Maternal mortality
Maternal mortality drmcbansal
 
Final year project presentation in android application
Final year project presentation in android applicationFinal year project presentation in android application
Final year project presentation in android applicationChirag Thaker
 
Presentation on Android application
Presentation on Android applicationPresentation on Android application
Presentation on Android applicationAtibur Rahman
 
Final Year Project Presentation
Final Year Project PresentationFinal Year Project Presentation
Final Year Project PresentationLauraConroy
 
Android Project Presentation
Android Project PresentationAndroid Project Presentation
Android Project PresentationLaxmi Kant Yadav
 
Final Year Project Presentation
Final Year Project PresentationFinal Year Project Presentation
Final Year Project PresentationSyed Absar
 
Order processing system
Order processing systemOrder processing system
Order processing systemRithin Pal
 

Viewers also liked (13)

Maternal Mortality
Maternal MortalityMaternal Mortality
Maternal Mortality
 
Topics for final year project
Topics for final year projectTopics for final year project
Topics for final year project
 
Final Year Projects Computer Science (Information security) -2015
Final Year Projects Computer Science (Information security) -2015Final Year Projects Computer Science (Information security) -2015
Final Year Projects Computer Science (Information security) -2015
 
My Final Year B.Tech Research Project
My Final Year B.Tech Research ProjectMy Final Year B.Tech Research Project
My Final Year B.Tech Research Project
 
FINAL YEAR PROJECT
FINAL YEAR PROJECTFINAL YEAR PROJECT
FINAL YEAR PROJECT
 
Maternal mortality
Maternal mortality Maternal mortality
Maternal mortality
 
Computer Based Ordering System
Computer Based Ordering SystemComputer Based Ordering System
Computer Based Ordering System
 
Final year project presentation in android application
Final year project presentation in android applicationFinal year project presentation in android application
Final year project presentation in android application
 
Presentation on Android application
Presentation on Android applicationPresentation on Android application
Presentation on Android application
 
Final Year Project Presentation
Final Year Project PresentationFinal Year Project Presentation
Final Year Project Presentation
 
Android Project Presentation
Android Project PresentationAndroid Project Presentation
Android Project Presentation
 
Final Year Project Presentation
Final Year Project PresentationFinal Year Project Presentation
Final Year Project Presentation
 
Order processing system
Order processing systemOrder processing system
Order processing system
 

Similar to Group H Final Report

Thesis-Vamsi
Thesis-VamsiThesis-Vamsi
Thesis-Vamsichagari
 
NTSC ISDN to IP Video Conferencing Transition Recommendations
NTSC ISDN to IP Video Conferencing Transition RecommendationsNTSC ISDN to IP Video Conferencing Transition Recommendations
NTSC ISDN to IP Video Conferencing Transition RecommendationsVideoguy
 
Tutorials mep metenu
Tutorials mep metenuTutorials mep metenu
Tutorials mep metenuEldos Rajan
 
training report_of_solid_works_and_autocad(Major Training)
training report_of_solid_works_and_autocad(Major Training)training report_of_solid_works_and_autocad(Major Training)
training report_of_solid_works_and_autocad(Major Training)abushama99
 
Frost & sullivan oss-bss global competitive strategies
Frost & sullivan   oss-bss global competitive strategiesFrost & sullivan   oss-bss global competitive strategies
Frost & sullivan oss-bss global competitive strategiesArthur Sanchez
 
Fwd conn configguide_5.2.5.6403.0
Fwd conn configguide_5.2.5.6403.0Fwd conn configguide_5.2.5.6403.0
Fwd conn configguide_5.2.5.6403.0Protect724v3
 
Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...
Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...
Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...Cloud Native Day Tel Aviv
 
BSC Honours Report - Neil Leiper (0604623)
BSC Honours Report - Neil Leiper (0604623)BSC Honours Report - Neil Leiper (0604623)
BSC Honours Report - Neil Leiper (0604623)Neil Leiper
 
Automotive Embedded Systems Handbook
Automotive Embedded Systems HandbookAutomotive Embedded Systems Handbook
Automotive Embedded Systems HandbookMaria Perkins
 
Edge Computing risks and Opportunities for Telco and hyperscalers
Edge Computing risks and Opportunities for Telco and hyperscalersEdge Computing risks and Opportunities for Telco and hyperscalers
Edge Computing risks and Opportunities for Telco and hyperscalersPatrick Lopez
 
Ontology Summit - Track D Standards Summary & Provocative Use Cases
Ontology Summit - Track D Standards Summary & Provocative Use CasesOntology Summit - Track D Standards Summary & Provocative Use Cases
Ontology Summit - Track D Standards Summary & Provocative Use CasesMark Underwood
 
Arduino Based Collision Prevention Warning System
Arduino Based Collision Prevention Warning SystemArduino Based Collision Prevention Warning System
Arduino Based Collision Prevention Warning SystemMadhav Reddy Chintapalli
 
Digital twins and New Business Models
Digital twins and New Business ModelsDigital twins and New Business Models
Digital twins and New Business ModelsRoberto Siagri
 
Accelerating automotive test development may 2008
Accelerating automotive test development   may 2008Accelerating automotive test development   may 2008
Accelerating automotive test development may 2008Thorsten MAYER
 
Introduction to SDN and Network Programmability - BRKRST-1014 | 2017/Las Vegas
Introduction to SDN and Network Programmability - BRKRST-1014 | 2017/Las VegasIntroduction to SDN and Network Programmability - BRKRST-1014 | 2017/Las Vegas
Introduction to SDN and Network Programmability - BRKRST-1014 | 2017/Las VegasBruno Teixeira
 
Signal-Oriented ECUs in a Centralized Service-Oriented Architecture: Scalabil...
Signal-Oriented ECUs in a Centralized Service-Oriented Architecture: Scalabil...Signal-Oriented ECUs in a Centralized Service-Oriented Architecture: Scalabil...
Signal-Oriented ECUs in a Centralized Service-Oriented Architecture: Scalabil...RealTime-at-Work (RTaW)
 

Similar to Group H Final Report (20)

Thesis-Vamsi
Thesis-VamsiThesis-Vamsi
Thesis-Vamsi
 
5G Network Introduction
5G Network Introduction5G Network Introduction
5G Network Introduction
 
NTSC ISDN to IP Video Conferencing Transition Recommendations
NTSC ISDN to IP Video Conferencing Transition RecommendationsNTSC ISDN to IP Video Conferencing Transition Recommendations
NTSC ISDN to IP Video Conferencing Transition Recommendations
 
Arduino uno-schematic
Arduino uno-schematicArduino uno-schematic
Arduino uno-schematic
 
Tutorials mep metenu
Tutorials mep metenuTutorials mep metenu
Tutorials mep metenu
 
training report_of_solid_works_and_autocad(Major Training)
training report_of_solid_works_and_autocad(Major Training)training report_of_solid_works_and_autocad(Major Training)
training report_of_solid_works_and_autocad(Major Training)
 
Frost & sullivan oss-bss global competitive strategies
Frost & sullivan   oss-bss global competitive strategiesFrost & sullivan   oss-bss global competitive strategies
Frost & sullivan oss-bss global competitive strategies
 
Fwd conn configguide_5.2.5.6403.0
Fwd conn configguide_5.2.5.6403.0Fwd conn configguide_5.2.5.6403.0
Fwd conn configguide_5.2.5.6403.0
 
Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...
Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...
Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...
 
BSC Honours Report - Neil Leiper (0604623)
BSC Honours Report - Neil Leiper (0604623)BSC Honours Report - Neil Leiper (0604623)
BSC Honours Report - Neil Leiper (0604623)
 
Automotive Embedded Systems Handbook
Automotive Embedded Systems HandbookAutomotive Embedded Systems Handbook
Automotive Embedded Systems Handbook
 
Edge Computing risks and Opportunities for Telco and hyperscalers
Edge Computing risks and Opportunities for Telco and hyperscalersEdge Computing risks and Opportunities for Telco and hyperscalers
Edge Computing risks and Opportunities for Telco and hyperscalers
 
Ontology Summit - Track D Standards Summary & Provocative Use Cases
Ontology Summit - Track D Standards Summary & Provocative Use CasesOntology Summit - Track D Standards Summary & Provocative Use Cases
Ontology Summit - Track D Standards Summary & Provocative Use Cases
 
Arduino Based Collision Prevention Warning System
Arduino Based Collision Prevention Warning SystemArduino Based Collision Prevention Warning System
Arduino Based Collision Prevention Warning System
 
PROJECT REPORT(1)
PROJECT REPORT(1)PROJECT REPORT(1)
PROJECT REPORT(1)
 
Digital twins and New Business Models
Digital twins and New Business ModelsDigital twins and New Business Models
Digital twins and New Business Models
 
Accelerating automotive test development may 2008
Accelerating automotive test development   may 2008Accelerating automotive test development   may 2008
Accelerating automotive test development may 2008
 
Introduction to SDN and Network Programmability - BRKRST-1014 | 2017/Las Vegas
Introduction to SDN and Network Programmability - BRKRST-1014 | 2017/Las VegasIntroduction to SDN and Network Programmability - BRKRST-1014 | 2017/Las Vegas
Introduction to SDN and Network Programmability - BRKRST-1014 | 2017/Las Vegas
 
U2
U2U2
U2
 
Signal-Oriented ECUs in a Centralized Service-Oriented Architecture: Scalabil...
Signal-Oriented ECUs in a Centralized Service-Oriented Architecture: Scalabil...Signal-Oriented ECUs in a Centralized Service-Oriented Architecture: Scalabil...
Signal-Oriented ECUs in a Centralized Service-Oriented Architecture: Scalabil...
 

Group H Final Report

  • 1. Low Cost Remote Data Acquisition and Interface Solution for Amateur Motorsports 19520 CES GROUP PROJECT FINAL REPORT GROUP H Lauren Stewart 200905754 Matthew Bowen 200949172 Amarjeet Singh 200912701 Daniel Chakraverty 200906954 APRIL 2014
  • 2. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 2 of 129 ABSTRACT The University of Strathclyde Motorsport team is made up of a group of students who compete at an international level every summer against teams from across the world. The challenge is to design, build and test a single seat race car. This project has developed a distributed CAN based data acquisition system for the team, including real-time telemetry, logging, sensor interfaces and real-time video streaming. All data is integrated within a web based software analysis system, where the data can be processed quickly and easily. Data can be exported for use in other analysis packages. The system has a modular design allowing it to meet different requirements, both technical and financial. DECLARATION We hereby declare that this work has not been submitted for any other degree/course at this University or any other institution and that, except where reference is made to the work of other authors, the material presented is original and entirely the result of our own work at the University of Strathclyde.
  • 3. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 3 of 129 ACKNOWLEDGEMENTS We would like to thank Jamie Corr, Victor Lee and Chee Wah Chan for a well-designed (and well documented) Smart Dash project to build upon. The University of Strathclyde Motorsport team have been very supportive through loans of equipment and workspace during development - Jamie Sleigh and Stuart Halkett have been especially helpful. We would also like to thank Susan Scurlock for setting up a video call with Richard Marshall, Chief Electronics Engineer, and Paul Howard, Race Team Mechanic, at Lotus F1 Team. We would like to thank them for their feedback on our design and helpful suggestions. The electronics department at Red Bull Racing have also offered advice and feedback, and we would like to extend our thanks to them. The EEE workshop have been incredibly helpful throughout the project - ordering components, manufacturing PCBs and offering practical advice. We would also like to thank the Mechanical workshop for drilling out enclosures, the Resource Centre for doing an excellent job printing our posters and the EEE IT Support for setting up the computers needed for the tradeshow. We would like to thank Christos Tachtatzis for sharing his expertise and experience with radio systems, and Gaetano Di-Caterina for his assistance with video interface solutions. Finally, we would like to say thank you to Dr. David Harle for the financial support and advice.
  • 4. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 4 of 129 ACRONYMS AND DEFINITIONS Acronym Definition ADC Analogue to Digital Converter API Application Programming Interface ASCII American Standard Code for Information Interchange CAN Controller Area Network CCD Charged Coupled Device CMOS Complimentary Metal Oxide Semiconductor CSS Cascading Style Sheet CSV Comma-Separated Values DAQ Data Acquisition DB Database ECU Engine Control Unit FAT32 File Allocation Table FPV First Person View FS Formula Student GPS Global Positioning System HTML Hypertext Mark-up Language I2C Inter Integrated Circuit IP Internet Protocol JSP JavaServer Page JSON JavaScript Object Notation MCU Microcontroller Unit MVC Model View Controller PCB Printed Circuit Board POM Project Object Model
  • 5. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 5 of 129 RF Radio Frequency SD Secure Digital SPI Serial Peripheral Interface SVN Subversion TVL Television Lines USB Universal Serial Bus USM University of Strathclyde Motorsport UART Universal Asynchronous Receiver/Transmitter
  • 6. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 6 of 129 TABLE OF CONTENTS 1 Introduction......................................................................................................................................... 11 2 Background Research...................................................................................................................... 13 Existing USM Systems ............................................................................................................ 13 The CAN Protocol..................................................................................................................... 15 Third Party Products.............................................................................................................. 15 2.3.1 Race Technology DL1 Data Logger.......................................................................... 15 2.3.2 Race Technology Analysis Software....................................................................... 16 2.3.3 DTASwin Software......................................................................................................... 17 State of the Art........................................................................................................................... 18 Previous Projects ..................................................................................................................... 19 2.5.1 Formula Student Smart Dash .................................................................................... 19 2.5.2 Telemetry System for Formula Student Race Car............................................. 21 3 Project Outline.................................................................................................................................... 24 Requirements ............................................................................................................................ 24 Objectives/Specification ....................................................................................................... 24 4 System Design and Implementation.......................................................................................... 28 On-board Network................................................................................................................... 30 4.1.1 Protocol Choice................................................................................................................ 30 4.1.2 System Architecture...................................................................................................... 31 4.1.3 Microcontroller Choice................................................................................................. 32 4.1.4 Power Supply................................................................................................................... 34 4.1.5 Packaging........................................................................................................................... 34 Standard and Extension Nodes .......................................................................................... 36 4.2.1 GPS........................................................................................................................................ 36 4.2.2 Accelerometer.................................................................................................................. 37 4.2.3 Analogue Voltages.......................................................................................................... 37 4.2.4 Software Design.............................................................................................................. 38 Telemetry Node........................................................................................................................ 39 4.3.1 Radio Link.......................................................................................................................... 39 4.3.2 Hardware Design............................................................................................................ 40 4.3.3 Software Design.............................................................................................................. 40 Logger Node............................................................................................................................... 40
  • 7. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 7 of 129 4.4.1 Hardware Design............................................................................................................ 41 4.4.2 Software Design.............................................................................................................. 41 Video Hardware........................................................................................................................ 41 4.5.1 Camera................................................................................................................................ 41 4.5.2 Transmitter and Receiver........................................................................................... 42 4.5.3 Analogue to Digital Converter................................................................................... 45 4.5.4 Display ................................................................................................................................ 45 Off-board Software System.................................................................................................. 46 4.6.1 Architecture of the System......................................................................................... 46 4.6.2 Storing Data...................................................................................................................... 49 4.6.3 Receiving Data and Video............................................................................................ 51 4.6.4 Viewing Data and Video............................................................................................... 55 Business Considerations....................................................................................................... 57 4.7.1 Cost for Prototype.......................................................................................................... 57 4.7.2 Packages and Services.................................................................................................. 58 4.7.3 Customers.......................................................................................................................... 59 4.7.4 Trademarking .................................................................................................................. 59 4.7.5 Patents ................................................................................................................................ 60 5 Testing Strategy.................................................................................................................................. 61 Test Cases.................................................................................................................................... 61 5.1.1 On-Car Network Testing.............................................................................................. 61 5.1.2 Standard Node Testing................................................................................................. 62 5.1.3 Extension Node Testing............................................................................................... 63 5.1.4 Telemetry Node Testing.............................................................................................. 64 5.1.5 Logger Node Testing..................................................................................................... 66 5.1.6 Video Systems Testing.................................................................................................. 67 5.1.7 Off-Board Software Testing........................................................................................ 69 6 Project Management......................................................................................................................... 79 Project Plan Review ................................................................................................................ 79 6.1.1 Standard and Extension Node................................................................................... 79 6.1.2 Telemetry and Logger Node ...................................................................................... 79 6.1.3 Video System.................................................................................................................... 79 6.1.4 Off-Board Software System........................................................................................ 79
  • 8. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 8 of 129 6.1.5 Integration......................................................................................................................... 80 Risks Review.............................................................................................................................. 80 7 Future Work......................................................................................................................................... 81 On-Car Network........................................................................................................................ 81 Standard and Extension Nodes .......................................................................................... 81 Telemetry Node........................................................................................................................ 81 Logger Node............................................................................................................................... 82 Video Systems............................................................................................................................ 82 Off-Board Software System.................................................................................................. 82 7.6.1 Lap Parsing........................................................................................................................ 82 7.6.2 Two-Way Communication with Car ....................................................................... 83 7.6.3 User Control of Real-Time Sensors......................................................................... 83 7.6.4 Graph Styles...................................................................................................................... 83 7.6.5 Database Structure ........................................................................................................ 83 8 Conclusion ............................................................................................................................................ 84 9 References ............................................................................................................................................ 85 10 Appendices ...................................................................................................................................... 88 Technical Risks.......................................................................................................................... 88 Cost of System ........................................................................................................................... 89 User and Developer Guides.................................................................................................. 96 TABLE OF FIGURES Figure 1 - USM13, University of Strathclyde Motorsport's 2013 car..................................... 11 Figure 2 - USM's current sensor setup, and logging systems.................................................... 13 Figure 3 - A GoPro video camera being used to monitor chain slack. ................................... 14 Figure 4 - A screenshot from a GoPro, monitoring air flow over a front wing. ................. 14 Figure 5 - Race Technology DL1 Logger [1]..................................................................................... 16 Figure 6 - Race Technology Analysis Software............................................................................... 17 Figure 7 - DTASwin Software................................................................................................................. 17 Figure 8 - The Ferrari F1 team monitoring the incoming data stream from the car [9].18 Figure 9 - Formula 1 regulated data acquisition system [10]................................................... 18 Figure 10 - Smart Dash Hardware Components [11]................................................................... 20
  • 9. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 9 of 129 Figure 11 - Smart Dash [11].................................................................................................................... 20 Figure 12 - On-board System [12]........................................................................................................ 21 Figure 13 - LabView ECU Summary GUI [12] .................................................................................. 22 Figure 14 - LabView ECU Data Log Graph GUI [12] ...................................................................... 22 Figure 15 - Overall System Architecture............................................................................................ 28 Figure 16 - System State Diagram ........................................................................................................ 29 Figure 17 - Extract from ECU Manual showing CAN stream [14] ........................................... 30 Figure 18 - Front and Rear CAN Nodes Architecture ................................................................... 31 Figure 19 - MCP2561 Wiring [21]........................................................................................................ 33 Figure 20 - Standard Node PCB Design.............................................................................................. 35 Figure 21 - Standard Node (top) and Extension Node (bottom) PCBs ................................. 35 Figure 22 - Enclosure................................................................................................................................. 35 Figure 23- Venus 638FLPX Breakout Board by Sparkfun [24] ................................................ 37 Figure 24 - MMA8542Q multiple byte read feature [26]............................................................ 39 Figure 25 - A comparison of lens size and the associated angle of view [35].................... 42 Figure 26 - Linear Polarisation vs. Circular Polarisation............................................................ 44 Figure 27 - Multipath interference....................................................................................................... 44 Figure 28 - Circular Polarised Antennas [39].................................................................................. 44 Figure 29 – System Architecture........................................................................................................... 47 Figure 30 - Parsing Bytes......................................................................................................................... 52 Figure 31 - Real-Time Data...................................................................................................................... 53 Figure 32 - GPS Plotted on Google Maps............................................................................................ 56 Figure 33 - Athenatec Logo ..................................................................................................................... 60 Figure 33 - Gantt chart summary.......................................................................................................... 79 Figure 34 - Summary of Costs ................................................................................................................ 89 Figure 35 - Standard Node Costs .......................................................................................................... 90 Figure 36 - Extension Node Costs......................................................................................................... 91 Figure 37 - Logger Node Costs............................................................................................................... 92 Figure 38 - Telemetry Node Costs........................................................................................................ 93 Figure 39 - Video Systems Costs ........................................................................................................... 94 Figure 40 - Calculating Package Costs ................................................................................................ 95
  • 10. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 10 of 129 TABLE OF EQUATIONS Equation 1 – Transfer Function............................................................................................................. 50 TABLE OF TABLES Table 1 - Specification for McLaren Electronic Systems F1 DAQ & ECU Systems [10]... 19 Table 2 - Project Objectives..................................................................................................................... 25 Table 3 - Processing Architecture Comparison .............................................................................. 32 Table 4 - Summary of Costs..................................................................................................................... 57 Table 5 - Product Selling Prices............................................................................................................. 58 Table 6 - Services Offered........................................................................................................................ 59 Table 7 - Technical Risks.......................................................................................................................... 88
  • 11. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 11 of 129 1 INTRODUCTION Formula Student is an international design competition challenging students at university to design, build and manufacture a single seat race-car. The University of Strathclyde Motorsport (USM) team competes against other universities from across the world every summer at Silverstone, UK and Hockenheim, Germany. The team’s 13th car, USM13, is shown in Figure 1. It is important that all design decisions throughout the season are data driven, and justified through suitable analysis and testing. There is a need for data acquisition while running the car to allow the team to compare simulated values with real-life results. This allows them to validate their designs and improve the car where possible. The high performance nature of a racing car often means that components are operating at the limits of their design, requiring values to be monitored in real-time to keep them within safe limits. Figure 1 - USM13, University of Strathclyde Motorsport's 2013 car Concerns have been raised by USM that there are three different places that data is logged on the car, all with differing software packages to access and analyse the information. This makes it difficult to compare values that have been recorded on different systems. Team members are also unable to invest the time required to learn the different software packages. The current system requires an engineer to start the logging on all the systems before a run which is time consuming and is therefore often not done, resulting in the car running without data being logged. Traditionally critical values (such as oil/water temperature) have been displayed to the driver on the dashboard, alongside RPM lights and current gear. However most Formula Student tracks are very tight and test the driver’s skill and concentration. Consequently the driver does not have time to accurately assess these values while also driving to the best of their ability. If the critical values could be monitored in real-time by other members of the team at the side of the track the driver could be warned and they could take appropriate action, without them having to constantly check the warning lights. This project developed a system that integrated all sensor data onto an on-car embedded network, making data accessible for analysis – even if the data originated from different control or sensing systems. Software has been developed that allows team members to carry out analysis quickly and easily, improving access to the data, while also allowing data to be exported to more powerful analysis packages when required.
  • 12. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 12 of 129 Wireless telemetry has also been developed that allows engineers at the side of the track to monitor and view critical sensor values and trends on the car. The driver can therefore concentrate on driving to the best of their ability. Video systems have been used to assist in driver training and to allow monitoring the behavior of components that could be difficult to sense through traditional systems – such as rear wing flex, or air flow.
  • 13. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 13 of 129 2 BACKGROUND RESEARCH This section contains information about the current systems that USM use, studies of competitors to the proposed product, state of the art systems as used in Formula One, and summaries of related projects that have been carried out in the past. EXISTING USM SYSTEMS Two members of the project team are involved with the USM team, and have accompanied them to one of their test sessions in order to understand fully how the current systems are being used. This was essential information to allow the project to deliver appropriate solutions. The current team uses a DTA S80 Pro [1] Engine Control Unit (ECU) to sense and control engine parameters such as oil and water temperature, a Race Technology DL1 MK1 [2] Data Acquisition Unit (DAQ) to log analysis parameters such as suspension travel, steering angle and brake temperatures, and a smartphone to display some of these parameters to the driver. Figure 2 - USM's current sensor setup, and logging systems. The ECU outputs various data parameters about the engine onto a Controller Area Network (CAN) bus which currently drives a smartphone to give dashboard indications of these parameters to the driver. This has meant that all data on the CAN bus is not available to the DAQ to log. Some CAN data logging functionality is available on a
  • 14. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 14 of 129 smartphone; however this is limited and not easy to access. Data is also logged internally on the ECU, but again this requires specialist software to access. It can be seen from the diagram in Figure 2 that data acquired from sensors attached to the ECU is not available to the DAQ systems, preventing comparisons such as throttle position against suspension pot readings. USM have purchased a CAN adapter for the DAQ to allow logging of engine data but they have not been able to make it function correctly. However this would not be a permanent solution as the current DAQ (Race Technology DL1) is not expandable past seven analogue inputs, therefore the team cannot run all of the DAQ sensors shown in Figure 2 simultaneously during a test session. Figure 3 - A GoPro video camera being used to monitor chain slack. Finally, it is difficult for team members outside of the electronics team to understand which sensors are logged on which subsystem and therefore the data that has been logged is not utilised to make informed design decisions. An example of this was when tuning the engine on the dynamometer, the Head of Engine Systems required to know what throttle percentage to tune the engine to (as this improves performance when on track). It was suggested to look at the data from the race in the previous year to find this out, so he loaded up the data from the DAQ. He then realised that the data for throttle position is actually stored on the ECU, so that data had to be loaded up, exported, and then imported into Microsoft Excel, which is a long process. Figure 4 - A screenshot from a GoPro, monitoring air flow over a front wing.
  • 15. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 15 of 129 GoPro [3] cameras are also used to monitor components on the car as seen in Figure 3 when monitoring chain slack, or in Figure 4 when monitoring air flow over wings. The most recent version of the GoPro range, the Hero3, has WiFi built in. This makes it possible to monitor the video feed in real-time on a compatible smartphone. However it was observed that a delay of 1-2 seconds is present when the team use this feature. It is difficult to find information on other teams, as they generally do not publish details of their systems in order to maintain any competitive advantage. Further research was carried out into CAN in order to fully understand the implementation required. THE CAN PROTOCOL The Controller Area Network (CAN) protocol was developed by Bosch in the 1980s in order to establish reliable serial communications inautomotive applications. Data is sent as a voltage difference between two wires (CAN high and CAN low), rather than as zero volts and high volts as with other protocols. Most electrical noise will affect both wires in the same way, so the voltage difference will stay constant. This results in a much more resilient and reliable system. The CAN protocol implements the lower two levels in the ISO/OSI reference model; the Data Link and Physical layer. This leaves the system developer the flexibility to implement the upper levels of the OSI reference in order to standardize start-up procedures or determine the structure of the actual messages [4]. The protocol is message based, meaning that all messages are sent over the whole network with the receiver deciding if it should use the message. The alternative, an address based network, would send packets to particular devices on the network based on an internal address in the packet. CAN is Carrier Sense Multiple Access/Collision Detection (CSMA/CD), operating in a similar manner to Ethernet. Every node on the CAN bus monitors activity on the bus for a period of no activity before sending. Once this period is detected, every node has the same opportunity to transmit, giving it ‘Multiple Access’. If two nodes transmit at the same time, a collision is detected. In CAN this is non-destructive, so the higher priority message will be transmitted without delay. This requires the message identifiers in the CAN messages to be set with appropriate priorities (lower being better). In this application, very few data values will be higher priority than the ECU data. THIRD PARTY PRODUCTS This section will discuss the products that the USM team currently use as well as discussing other existing products available on the market. 2.3.1 Race Technology DL1 Data Logger This is the data logger that is currently used by the USM team. It is a small, highly robust data logging system with a powerful software system for analysis (described in Section 2.3.2).
  • 16. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 16 of 129 The DL1 is a small data logger that can store data from a number of sources, including internal accelerometers, high accuracy GPS and eight analogue inputs. In addition there are inputs for frequency measurements (such as wheel speed sensors) and a serial data input for information sent from the vehicle's ECU, such as RPM, throttle position and engine temperatures (however this requires the additional cost of an adapter to convert CAN protocol data to a proprietary serial format to be used with USM’s DTA ECU) [5]. The logger can be seen in Figure 5. Figure 5 - Race Technology DL1 Logger [1] The data is logged to a CompactFlash card inserted into the logger, which is then used to transfer data to a PC via a standard card reader. There is no option for real-time monitoring of the data that has been logged, other than a dash system that can be connected to the device for additional cost. This dash system receives data over a serial port, but again the protocol is proprietary which stops different systems from accessing this data. The logger is extremely robust, with all electrical connections being vibration proof and high strength, housed in a tough metal enclosure. The DL1 combines GPS and accelerometer data to accurately map tracks, with their experiments showing that the results are much more accurate than other GPS systems [6]. The DL1 logger costs £511. 2.3.2 Race Technology Analysis Software This is the software package currently used by the USM team for most of their analysis. After a race, the software receives the data either from a serial (RS232) link running at high speed or the data is read from a CompactFlash card. The software converts the raw data into useful information and then the software can be used for analysis. Simple graphs can be plotted or more powerful analysis features can be used [7]. The Race Technology Data Analysis software package has many desirable features. Theoretical lap times can be calculated as well as simple lap and sector times. Also, multiple runs and laps can be analysed which allows for comparison between races and drivers. The software includes a feature to import video to be viewed alongside the logged data. It also includes a fully featured standard and HD video export system with optional overlaid graphics. The interface is drag and drop and there is an optional black background on graphs for improved trackside visibility in bright sunlight. Virtual dashboards make a great user experience and real-time playback is very useful when analysing all the data. To improve the user experience even further, the user can define and select variables and define graphs. Finally, the software allows the data to be saved, printed and exported to a spreadsheet or Matlab [7].
  • 17. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 17 of 129 Figure 6 shows the track mapping and graph displays. It also shows how different laps can be analysed and compared against each other by overlaying the data on one graph. The software is free to download but can only be used with the data from the DL1 logger discussed in Section 2.3.1. Figure 6 - Race Technology Analysis Software 2.3.3 DTASwin Software DTASwin is the control software that is used for the S series of the ECU that the USM team use in the car. It is used for configuring settings on the ECU such as engine maps, launch control settings or sensor scaling. The USM team can also use this when connected to the dynamometer (dyno) for tuning the engine. It displays real-time data such as water temperature, oil temperature or oil pressure while directly connected to the ECU. Figure 7 - DTASwin Software
  • 18. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 18 of 129 Communication with a PC can be set up by using a CAN network with a suitable adapter for the ECU or through a serial cable. An example screen within the software is shown in Figure 7. It has a virtual dashboard that displays all of the parameters while tuning. STATE OF THE ART Research was carried out into the state of the art in data acquisition systems within Formula 1. As seen in Figure 8, a huge amount of information is required while the car is running in real-time in order to monitor the performance of the car. Additionally terabytes of data are logged from the car for analysis at a later date [8]. Figure 8 - The Ferrari F1 team monitoring the incoming data stream from the car [9]. Every team is required by regulation to use the same electronic control system, which is designed and manufactured by McLaren Electronic Systems [10]. The system has a star topology as seen in Figure 9, with a central unit (TAG-310B) hosting the majority of sensor inputs and all of the control systems on the car. Additional units (HIUs) are used to add additional localised sensors to the system, for example within each wheel. Figure 9 - Formula 1 regulated data acquisition system [10].
  • 19. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 19 of 129 These localised ‘hubs’ interface with the central control unit over a number of embedded CAN buses allowing sensor data to be transferred over a single twisted pair wire, rather than a single wire for every sensor. A similar approach is used in this project. Table 1 - Specification for McLaren Electronic Systems F1 DAQ & ECU Systems [10] TAG-310B TAG-320 Application processing power 955MIPS 4,000MIPS Memory (RAM) 40MB 512MB Memory protection Limited Full Logged data capacity 1GB 8GB CAN buses 6 11 Standard analogue input sampling rate capability 1kHz 10kHz Fast analogue input sampling rate capability 10kHz 100kHz Internal accelerometer None Tri-axis ±10g Maximum number of logging channels 512 4,000 Ethernet link maximum speed 100Mbps 1Gbps Table 1 shows the specifications for the central control unit, with the updated version, the TAG-320, being developed to control the more complex turbocharged V6 engines that were introduced in 2014. The technology used to achieve this specification is state of the art, and is not inexpensive – with such a system costing tens of thousands of pounds1. PREVIOUS PROJECTS This section discusses previous final year projects that have been carried out for the USM team. 2.5.1 Formula Student Smart Dash In the academic year 2012/2013, a final year project was carried out that designed, implemented and tested a smart phone based driver feedback system for use in a Formula Student race car. The project involved developing a CAN node on the car to receive data from the ECU, transmitting the data via Bluetooth to the smart phone and developing an app that would read the data, write to a database, display the values and perform analysis on the collected data [11]. 1 An exact cost is not publicly available, and Formula One teams do not publish cost breakdowns.
  • 20. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 20 of 129 For the CAN node, a PIC microcontroller was chosen. A CAN transceiver was required to communicate with the CAN bus and a Bluetooth module was incorporated to send data to the smart phone. The hardware architecture can be seen in Figure 10. Figure 10 - Smart Dash Hardware Components [11] An Android app was chosen to be developed due to the free development and easy IDE available. The app featured two modes – a Driver Mode and an Analysis Mode. The Driver Mode displayed data to the driver and alerted the driver when the measured data went out of operating bounds. The Analysis Mode was used to analyse the driver’s performance after the race and displayed a track map showing the data at each point around the track [11]. The app can be seen running in Figure 11. This also shows the custom designed enclosure for the smart phone. Figure 11 - Smart Dash [11] This project was a success, with all major objectives being met. The project developed a small CAN network on the car and documented technical manuals on how the system works, which can be used to further enhance and improve the network by future teams. The USM team have said many positive things about the project and are currently using the smart dash in the Formula Student car. Two members of the project were involved with USM while the Smart Dash project was being developed. The CAN development carried out as part of the Smart Dash project was therefore used as a base to develop the system described in this report.
  • 21. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 21 of 129 2.5.2 Telemetry System for Formula Student Race Car In the academic year 2011/2012, a final year project was carried out that involved the design and development of a wireless telemetry system suitable for the USM team. It comprised of two main subsystems – an on-board system that extracted the measurement data from the car and an off-board system that received the data and displayed them to the pit engineers. The two subsystems were connected via a wireless communication link [12]. Figure 12 - On-board System [12] The on-board system was implemented using an Arduino UNO with an XBee Pro Transceiver to transmit the data. Also included in the on-board system was an OpenLog Data Logger with a 2 GB SD card to serve as a backup should communications fail [12]. Figure 12 shows the final PCB for the on-board system. The off-board system used an Arduino UNO to receive the data and a GUI was designed within LabView to view the data. Figure 13 and Figure 14 show some screenshots of the GUI.
  • 22. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 22 of 129 Figure 13 - LabView ECU Summary GUI [12] Although the majority of the objectives were met with this project, there were many problems. Firstly, the XBees used for the wireless transmission only achieved a transmission distance of about 200 m when tested on a car. Another problem was that the sampling frequency was not high enough and so a more powerful microcontroller could have been used. The power supply used for the on-board system was AA batteries which is not very practical. Rechargeable batteries, or the car’s power supply, would have been a more cost-efficient solution. Figure 14 - LabView ECU Data Log Graph GUI [12] Another problem with this project is the off-board system. The team used LabView to display their data in a GUI that they designed. This GUI is not customisable and users are required to graphically program the interface in order to add an interpretation for any additional sensors. Therefore if the user is not skilled with LabView, they will not be able to extend this program for future use.
  • 23. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 23 of 129 USM have said that the system did not work correctly all the time and that the GUI used did not display the data the way that was required. As such, this system is not currently used by the USM team.
  • 24. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 24 of 129 3 PROJECT OUTLINE This section discusses the requirements that were communicated from the USM team, and then shows the project specification to meet those requirements. REQUIREMENTS Meetings were held with USM early in the project in order to understand their current systems, and requirements. The main problems, discussed in more detail in Section 2.1, that were found with the current systems are as follows: 1. Lack of expandability to add more sensors to logging systems (limited to seven). 2. Engine related sensors are logged on separate systems to other sensors, often preventing comparisons between sensors. 3. Multiple powerful and complex software packages have to be used for different sets of data, preventing the team members from carrying out simple analysis quickly between test runs. 4. Data is not available in the pits in real-time, leaving the driver to monitor critical values. There is a real need to improve the data acquisition systems for the USM Formula Student team, and it is suggested that other Formula Student teams and amateur racers have similar problems. OBJECTIVES/SPECIFICATION It is proposed to integrate all the data logging functionality on the car into one system, where all data is available everywhere. For example it would be possible to display RPM and gear position against GPS data, something that is not possible with the current system. This would be done by developing an on-board embedded network that all devices on the car communicate through. Sensor ‘nodes’ will be developed to directly convert analogue voltages to the network protocol, reducing the amount of wiring on the car (currently individual cables are run for every single sensor). This would also make the data acquisition set up a lot more flexible, allowing sensors to be added and removed as required. In addition, it is proposed to develop a communication link between the on-board network and an off-board software system, allowing the sensed data to be monitored in real-time by the pit crew. The off-board system would allow team members to analyse the gathered data in a manner that is easy to use by an untrained engineer while also allowing data to be exported to more complex software packages to be used for more in depth analysis. Finally, video systems are to be integrated into the project, enabling team members to see external factors that cause fluctuations in recorded telemetry. An example of this would be a driver taking a slightly different racing line in a corner. This could also be used to assist in driver training and gain significant improvements in overall lap times. The system is to be modular in design, allowing for it to be integrated into any other racing car in amateur racing series. The end product will also be lower in cost and more
  • 25. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 25 of 129 flexible than other racing data acquisition/telemetry/video analysis systems, making it more affordable and accessible to amateur racers. Table 2 shows a summary of the high level objectives of the project, with an importance assigned to each in order to set scope for the work done Responsibilities were assigned as shown. Table 2 - Project Objectives # Objective Importance Responsible 1 Literature review into automotive network architectures and protocols. Major Daniel 2 Develop a network to allow all data acquisition components on the car to communicate and share data. Major Daniel 3 Develop nodes to interface sensors on the car with the on-board network. Minor Daniel 4 Literature review into on-board to off-board wireless communication technologies. Major Matthew 5 Design, implement and test a wireless channel for communication. Major Matthew 6 Development of nodes to interface on-board network and off-board systems. Major Matthew 7 Development of on-board data logger. Optional Matthew 8 Literature review into current video solutions. Major Amarjeet 9 Integration of video into off-board software system, to view alongside the acquired data. Major Amarjeet 10 Implementation of wireless transmission of video stream(s). Optional Amarjeet 11 Literature review into existing analysis systems. Major Lauren 12 Development of software and/or integration of 3rd party software package(s). Major Lauren 13 Design the off-board system to be user configurable. Minor Lauren 14 Include real-time displays for incoming data from on- board systems. Optional Lauren 15 Package the solution as a marketable product for potential customers. Optional All
  • 26. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 26 of 129 A detailed explanation of the objectives and scope for the project follows. OBJ-1 Literature review into automotive network architectures and protocols. Research is to be carried out into CAN and alternative network architectures that are available. This will allow appropriate decisions to be made as to which protocol to use on the car and which is the best solution for amateur race teams. OBJ-2 Develop a network to allow all data acquisition components on the car to communicate and share data. The chosen network architecture will be implemented and tested, integrating ECU data with DAQ sensors. This includes both transmit and receive functions (to be integrated with telemetry and logging systems as required). OBJ-3 Develop nodes to interface sensors on the car with the on-board network. The developed nodes will convert analogue voltages from sensors into appropriate data formats for the on-board network. The data will be labelled as required by the off-board system for identification of individual sensors. OBJ-4 Literature review into on-board to off-board wireless communication technologies. Research will be carried out into technologies and products available for wireless communication. This will facilitate the choice of hardware for the system. OBJ-5 Design, implement and test a wireless channel for communication. The chosen wireless channel will be tested under various different realistic conditions in order to get an idea of the limitations and whether this will influence the design further. OBJ-6 Development of nodes to interface on-board network and off-board systems. The nodes on either end of the wireless channel will be developed in order to integrate the system with the data formats provided and required by the on-board and off-board systems. OBJ-7 Development of on-board data logger. An on-board data logger will be developed to store all data on the on- board network. OBJ-8 Literature review into current video solutions. Research will be carried out into wireless video transmission products that are currently available on the market.
  • 27. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 27 of 129 OBJ-9 Integration of video into off-board software system, to view alongside the acquired data. This objective includes converting the received video into an appropriate format allowing it to be embedded within the analysis software. OBJ-9 Implementation of wireless transmission of video stream(s). This will include development of a wireless transmitter and receiver to facilitate off-board viewing of video in real-time. OBJ-10 Literature review into existing analysis systems. This will give insight into the types of data that are processed, how the data is displayed, what analysis can be done on that data etc. and this knowledge will feed into the design of the software. OBJ-11 Development of software and/or integration of 3rd party software package(s). This involves creating an application that will display the data from the car in an efficient manner (such as graphs or tables) and that is easy to use. This application could be entirely developed by the project team or could involve an aspect of 3rd party software. OBJ-12 Design the off-board system to be user configurable. The analysis software should be simple and easy to use. Therefore, if the user can configure the software to their needs it will enhance their experience. OBJ-13 Include real-time displays for incoming data from on-board systems. If data can be transmitted wirelessly then viewing the data real-time would be a significant improvement on the current system.
  • 28. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 28 of 129 4 SYSTEM DESIGN AND IMPLEMENTATION The design has taken the USM Formula Student cars as a prototype and will be integrated into existing systems where possible. The system has been designed to be modular, allowing flexibility when packaging solutions for differing types of race teams, for example real-time displays may not be required by some customers. The general system architecture is detailed in Figure 15. An on-board network aggregates all ECU and DAQ data onto the same system (differing from the current system). DAQ sensors will be input into ‘nodes’, which will interface with the analysis software. Also connected to the network is a telemetry ‘node’ which transmits the data to the off-board systems. A logging ‘node’ is included to store the data on the car. The advantage of using an integrated system means that all data is available everywhere; the same data can be displayed on the dash as is available on the analysis systems. This makes the system much more flexible and easily expandable if extra systems are added in the future, such as active aero or suspension. The new system simply needs to be connected to the on-board network to access all the data it requires. Figure 15 - Overall System Architecture Video systems use a separate set of radios, with the camera being able to be mounted anywhere on the car to allow different variables to be analysed. ON-BOARD OFF-BOARD ECU Engine Sensors DAQ Sensors Logger Telemetry EmbeddedNetwork Analysis and Display Camera Transmitter Receiver Receiver
  • 29. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 29 of 129 The off-board software system will allow simple analysis to be carried out quickly by relatively untrained users (compared to the training required for the current systems) and also allow real-time values to be displayed. The integrated system means that data from the ECU can be compared with data from DAQ sensors, something that is not currently possible. Through consultation with USM, three main states of running the car were identified. ‘Pre-Run’ is when the car is being set up and is the period in which data acquisition systems are set up, alongside other systems on the car. When the car is ‘Ready to Run’, the engine is ready to be started and the car will start a session. This is when the data acquisition systems should be ready to start logging. ‘Running’ is when the car is on track and logging systems should be active. This is where real-time displays and video would be useful to the team for monitoring the health of the car and driver behaviours. ‘End of Run’ is when the car comes back into the pits; logging should be stopped and data stored for future analysis. The actions to be carried out within each system state are shown in Figure 16. Figure 16 - System State Diagram The final design has been split into four subsystems: 1. On-Board Network and Sensor Interfaces This system includes all on-car network development, interfacing with the ECU and data acquisition sensors (OBJ-1 to OBJ-3). 2. Telemetry/Logging Systems 1. Pre-Run • DAQ and telemetry systems set up. • Video systems set up and mounted on car. • Off-board software started up. 2. Ready to Run • CAN nodes sending data. • Wireless connections established (video shown). • Logging can be started through switch on car. 3. Running • Log all data on internal SD card. • Send real-time values to server. • Save incoming video on off-board systems and display real-time. 4. End of Run • Stop logging through button on dash. • Transfer all data from SD card by removing SD card and uploading to server. • Save all data on off-board systems. • Display simple analysis and export options in software.
  • 30. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 30 of 129 This includes all wireless communication development for data transmission from the car to off-board software (OBJ-4 to OBJ-7). All on-board logging also comes under this subsystem. 3. Video Systems All video systems development, testing and integration into the off-board software will be carried out as part of this subsystem (OBJ-8 to OBJ-10). 4. Off-Board Software System Analysis software, real-time displays and data storage will be developed as part of this subsystem (OBJ-11 to OBJ-14). Each subsystem design is discussed in further detail in the following sections. ON-BOARD NETWORK The main design decisions made for development of the on-board network are discussed in this section, along with implementation details. 4.1.1 Protocol Choice The main design decision that had to be made for the on-board network was the protocol to use. The team’s ECU [13] has the option to use RS232 or CAN, with more variables output over the latter. The CAN stream that is output from the ECU is shown in Figure 17, extracted from the manual [14]. Figure 17 - Extract from ECU Manual showing CAN stream [14] As can be seen a huge amount of information is available from this source, and as of 2013 it is used to drive USM’s dashboard to allow the driver to monitor essential variables. In addition RS232 is a unicast protocol and therefore can only be used to transmit to one device at a time. The CAN protocol is a broadcast system and is much better suited to this problem, where communications across multiple devices is required. The CAN protocol is discussed in more detail in Section 2.2. Other embedded network protocols are available, such as TTEthernet [15]. However as CAN currently is an industry standard, with most high end ECUs including at least one CAN controller, the decision was made to use the CAN protocol as the embedded network for this project. This will allow the developed system to be integrated into existing systems that USM and other teams use [16], rather than implementing a new system that replaces existing functionality – something that this project aims to avoid.
  • 31. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 31 of 129 Many lower end ECUs do not include a CAN interface as standard and only offer a RS232 interface for programming and basic data stream outputs [17]. However the advantages of using CAN (all data available everywhere) would warrant implementing an RS232 to CAN converter for such devices. Many of the ECU manufacturers offer such a converter for additional cost. As the DTA S80 Pro is at the lower end of the high end ECUs on offer, and is used throughout the amateur racing scene, using CAN seems to be an appropriate choice, given that teams who don’t use the higher end ECUs won’t be so interested in in- depth analysis and tuning of the car. 4.1.2 System Architecture There are two main options for the main system architecture – individual CAN nodes for each sensor or larger nodes with multiple sensors attached to them as seen in Figure 18. As can be seen in Figure 2 the sheer number of sensors means the first option is not practical, as suitable mounting locations would need to be found for each sensor node along with the additional weight associated with the enclosures. For this to be practical, each sensor node would need to be extremely small, resulting in additional development costs and complexity. Figure 18 - Front and Rear CAN Nodes Architecture The decision was made to go with the second option, where the raw analogue voltages are sent from each node to the data logger/telemetry, with the off-board system providing calibration functionality. The advantage of this is that each car setup can be saved easily on the higher power system, rather than adding complexity across the whole system to achieve calibration functionality. The second option, shown in Figure 18, has two larger nodes, with multiple sensors attached to each one. This is a compromise between reduced weight from the wiring and the additional weight from each enclosure. The design is still expandable, so if more sensor inputs are required an additional node can be added. It will also facilitate easier design, manufacture and integration than with the first option. Finally, most ECU TELEMETRY DASH CAN Bus FRONT NODE REAR NODE
  • 32. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 32 of 129 microcontrollers include multiple channel analogue to digital converters (ADCs), therefore the larger nodes will result in higher utilisation of hardware, reducing costs further. When sending data, again two options were discussed. The first was to send the real values of sensors (in degrees, Newtons or displacement centimetres for example), and the second was to send the raw voltage of the sensors and calibrate in the off-board software. The advantage of the first option is that the sensor calibration has been done before it is sent onto the network, therefore any device on the network can read the actual value and act on it appropriately (useful for dash displays). The disadvantage of this is that the calibration values have to be sent in some way to each CAN node, either through CAN itself (adding complexity in how these calibration values are stored in non-volatile memory) or re-flashing each chip (which reduces ease of use). The decision was made to calibrate sensor values in the off-board software. 4.1.3 Microcontroller Choice Four main processing architectures were considered for the implementation of the on- board network: Arduino (Atmel), PIC (Microchip), Atmel, and Texas Instruments AT series. Most of the architectures researched offered CAN libraries to facilitate fast development, rather than having to implement the CAN protocol from scratch. Table 3 shows the advantages and disadvantages for each architecture. Table 3 - Processing Architecture Comparison Arduino PIC Atmel Texas Instruments + Group very experienced. + Some experience. - No experience (other than Arduinos). - No experience. + Large online community. + Previous projects have used CAN on these devices. + Devices available that match project requirements. + Devices available that match project requirements. - None with native CAN controllers (other than Arduino DUE). + Through-hole packages available. - Surface mount only. - Surface mount only. + No external development systems/debuggers required. + Debugger already owned by USM. - Requires purchase of debugger to load code. - Requires purchase of debugger to load code. - High power requirements due to additional hardware. - Reputation for being difficult to develop for [18]. + Lower power requirements [18]. The Atmel and Texas Instruments architectures were ruled out due to no through-hole packages being available, which makes it difficult to prototype and manufacture with the facilities available at the university. The PIC family of microcontrollers (MCUs) offer through-hole packaging, with some experience within the group of using the
  • 33. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 33 of 129 development environment and debugger (which is already available for use from the USM team). The group is very experienced with Arduino microcontrollers, but due to the large size and high power requirements they are not suitable for this project. Therefore the PIC family of microcontrollers was investigated in further detail. The microcontroller used for the Smart Dash project in 2013, the PIC18F4580, was deemed inappropriate due to physical dimensions and the number of digital I/O pins which were not required for this project. However personal experience using and tweaking the system led to the conclusion that this was a suitable device family to use, with CAN libraries available from microC [19] for communication with the inbuilt CAN controller. The Microchip C18 compiler also offers a CAN library that supports the inbuilt CAN controller. The decision was made early on to use the same microcontroller across the project to aid ease-of-development. This is suitable due to the low costs of the PIC (less than £5). The architecture decision was also influenced by the other peripheral interfaces required. UART ports were required to communicate with GPS and radios, alongside i2c for the accelerometer. An inbuilt ADC was also required. The device chosen was the PIC18F25K80, in a through-hole package. The specifications match the requirements of the project, with eight 12 bit ADC channels, a CAN controller, a SPI, and two UART channels. The package is also very small, at just over two and a half centimetres in length, which will facilitate small packaging for the CAN nodes. Experience from the Smart Dash project was drawn upon with it documented that the internal oscillator on the PIC became unstable after longer periods of time. Therefore an external 20 MHz oscillator was specified for each CAN node to offer stability. This value was one of the highest supported as specified in the MCU’s datasheet. A CAN transceiver is required to convert the CAN differential signals into transistor- transistor logic (TTL) signals for the microcontroller. This chip protects against high- voltage spikes in automotive environments, and acts as the interface between the CAN controller built into the microcontroller and the physical two-wire CAN bus. The recommended transceiver for the PIC18F25K80, the MCP2561 [20], was selected which is to be wired as shown in Figure 19. Figure 19 - MCP2561 Wiring [21] Voltage Regulator Microcontroller
  • 34. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 34 of 129 All circuit schematics for all the nodes are included in the accompanying CD. The basic circuit to support the microcontroller (including external oscillator and in-circuit programming header) along with the CAN transceiver to interface to CAN is the same across all the nodes, with additional peripherals included to allow node-specific functionality – such as GPS, radios or on-board flash storage. An external 20 MHz oscillator is included between pins 8 and 9 on the microcontroller with loading control capacitors. A 10 kΩ pull-up resistor is connected to MCLR (pin 10) to keep the microcontroller out of reset, and a 330 Ω current limiting resistor is also included to protect that input. A decoupling capacitor is included between power and ground to reduce high frequency noise on the main power supply. 4.1.4 Power Supply Voltage regulation will be required to offer stable power supplies to the hardware on each CAN node, especially when the system is powered through the relatively unstable power supply on the vehicle. Previous experience has shown that switched regulators facilitate easy development and stable supplies. In addition they do not require large heat sinks to dissipate the heat generated when stepping down from 12 V to 5 V as required with linear voltage regulators. The current output was chosen to support 1.5 A, so that the node is able to power itself alongside external sensors if required. A small linear voltage regulator was also specified to step the 5 V supply down further to 3.3 V for peripheral devices, such as radios, GPS and accelerometer. This is a smaller step down in voltage, and with less current output required, no large external heat The Formula Student rules were consulted to ensure that power is allowed on the car while the engine is switched off to keep data acquisition and cooling systems on. The only time that the car has to be completely off is when the main kill switch is turned off. This allows systems to be monitored as the engine cools down. This information was communicated back to USM so they could incorporate this in the design of the electrics. In addition, system power consumption estimations were calculated so that they could be fed back to the team, allowing power systems to be sized appropriately. These calculations indicated that the entire data acquisition system consumed around 2 W. This is not significant compared to other devices used on the car. This analysis is included in the accompanying CD. 4.1.5 Packaging The automotive environment is not very forgiving towards electrical circuits, and as such they require protection against many different elements. Printed circuit boards (PCBs) were designed and manufactured by the EEE workshop to achieve high reliability in this environment. PCB design was carried out in Designspark by RS, as project members had experience in using this software, and the free version has no board size limitation. An example of the PCB design is shown in Figure 20 for the standard node, and the completed PCB is shown in Figure 21. A copper pour was connected to ground across the whole PCB to improve oscillator stability and improve ease of manufacture.
  • 35. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 35 of 129 Figure 20 - Standard Node PCB Design Figure 21 - Standard Node (top) and Extension Node (bottom) PCBs Off the shelf enclosures were purchased to house the PCBs while on the car. These were available in a blue aluminium, which was used across all the nodes to allow a cohesive brand to be developed in conjunction with the logo and business considerations as discussed in Section 4.7. An example of these enclosures is shown in Figure 22, this one for the standard node. Figure 22 - Enclosure
  • 36. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 36 of 129 Connectors were sourced to allow wires to be easily connected to the circuit by the user. This was done by using a two part pin and socket connecter, with wires that screwed into one section that is then inserted into the socket on the PCB. This is a neat solution that is utilised by the Race Technology DL1, with experience showing that this works well in the automotive environment. STANDARD AND EXTENSION NODES The standard node is a single node that includes a GPS module for location sensing, and an accelerometer to sense the movement of the vehicle. Four of the eight channels are utilized on the internal ADC. Four of the ADC channels are left unused in order to ease the requirements on the microcontroller, alongside reducing the size of the enclosure. The extension node is exactly the same architecturally as the standard node, without the GPS and accelerometer modules. All eight channels on the ADC are utilised. 4.2.1 GPS In order to log the car’s position on track, a GPS module is included. Most GPS chips output a NMEA [22] sentence over a UART serial communication link, containing position and current time. The Venus638FLPX offers 20 Hz updates (faster than most on the market) [23] however it is only available in column grid array (CGA) surface mount packaging which the university does not have the facilities to solder. A solution, albeit more expensive and with a larger physical size, is to buy a breakout board with the same GPS device pre-soldered onto it. Sparkfun offer a breakout board, with an SMA connector for an external GPS antenna on-board, as seen in Figure 23. This device runs at 3.3 V, whereas the chosen microcontroller operates at 5 V logic. A logic level converter is therefore required to communicate with the serial port of the GPS chip. The module was configured with a custom firmware using the GPS Configurator software that is supplied by the manufacturer [24]. This software is designed to connect directly to the module through a USB port, so the module was connected to a serial port on an Arduino Mega, which was then configured to mirror incoming bytes onto its USB, and vice versa. The module was set to output a single NMEA sentence that included the location information (GPRMC), with other sentences disabled. The maximum rate that the GPS can send strings is 20 Hz, but testing showed that the microcontroller struggled to deal with this amount of data while also being integrated with the other peripherals on the standard node. The system was proven to be stable at an update rate of 2 Hz, however it is suggested it may be possible to have a higher data rate if the serial port was configured to have a higher baud rate than the default 9600 baud. A high dynamic range firmware was also loaded, in theory allowing it to detect sharper turns at the expense of a slightly noisier signal, as a smaller moving average is used to calculate position.
  • 37. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 37 of 129 Figure 23- Venus 638FLPX Breakout Board by Sparkfun [24] The datasheet [23] specifies that the chip takes 29 seconds to connect to satellites from a no power state but only takes 1 second if kept in a low power state. This was tested and was proven to be the case. The standard node PCB included a 0.2 F super-capacitor to keep the GPS module in a low power state when the power is switched off. This circuit diagram can be found on the accompanying CD, including the logic level convertor to communicate with the MCU, and the LM317 3.3 V voltage regulator as discussed in Section 4.1.4. 4.2.2 Accelerometer A similar problem with the accelerometers was found as with the GPS – they are generally only available in packages that cannot be soldered without infra-red oven facilities. Pre-soldered breakout boards were therefore sourced, with the knowledge that if the product was to go into mass production, these manufacturing methods would be available. An accelerometer was chosen that had an i2c interface. This allows the module to independently poll an internal ADC to sense the acceleration – rather than that load being placed on the host MCU. Only two pins are required to communicate with the device – SDA and SCL. SDA is the data line and, as i2c is a synchronous protocol, SCL is the clock line. This architecture also allows more i2c sensors to be daisy chained in the future if required. As with the GPS, a logic level converter is required to convert the 3.3 V logic to 5 V logic. The chosenmodule was the Freescale MMA8542Q [25], which can be configured to sense ±2g, ±4g or ±8g.This was configured to ±2g after discussions with USM, however could be reconfigured for other applications. External i2c pull-up resistors are usually required on the SDA and SCL lines to keep them high unless pulled low by the master MCU. These are included on the breakout board that was bought. The other potential option would be to use an accelerometer module that gives analogue voltage outputs for acceleration on the X, Y and Z plane individually. The problem with this is that most of these modules operate at 3.3 V, and with a 5 V MCU, there is a loss of resolution on the ADC. It is difficult to amplify the output signal to match the input on the ADC on the MCU, as they rest at 1.25 V at 0g in order to show negative acceleration. The digital modules were therefore chosen as the most suitable option. 4.2.3 Analogue Voltages As discussed previously, the internal 12-bit ADC on the MCU was used to sample external sensors. This simply required the appropriate pins to be connected to the external
  • 38. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 38 of 129 sensor. Protection on these inputs was considered, as there is potential for these to be connected incorrectly by the user. Current limiting resistors could be placed in series with the input, along with Zener diodes between the input and ground. If a higher voltage is present at the input, the Zener diode would break down and short to ground – protecting the input of the MCU. Further research indicated that the PIC microcontroller used in this project has internal clamping diodes to protect the inputs up to the supply voltage plus 0.5 V, in conjunction with current limiting resistors. It was decided that as the sensors in general would be supplied by the node’s own regulated 5 V supply, the input voltage was unlikely to vary very much. Transient voltage spikes may be present due to electrical noise on the car, however they are unlikely to last very long, and a Zener diode would not protect against these due to the relatively slow reaction time. Therefore the decision was made to use the internal protection on the microcontroller – with the cost of replacing a microcontroller (around £2) being less significant than the development and manufacture of effective protection circuits. 4.2.4 Software Design The node is required to send data at a rate of 10 Hz. The code is organised so that the sensors are polled continuously, updating a set of global variables. A timer is set up to send an interrupt every 100 ms (10 Hz), at which point a flag is set to package the data into CAN packets and send. The GPS module sends NMEA sentences over UART. It was important to deal with incoming bytes as fast as possible. Through testing it was found that the hardware UART on the MCU has a buffer of 2 bytes which if not read before another byte arrives causes an overrun error to occur. This causes the MCU’s UART to go into reset, meaning that no more data can be received. The code was reorganised to have a high priority interrupt fire when a byte was received on the UART, which then put that byte at the end of a circular buffer. The polling loop can then process from the start of the circular buffer when possible, meaning that data was not lost. The i2c operation for the accelerometer follows the protocol. The master (the MCU) writes the address of the accelerometer to the bus (controlling the clock appropriately), at which point all other slaves on the bus ignore any more messages (in this case no other slaves are present). The accelerometer then sends an acknowledge message. The master then writes the address of the register that it wishes to read data from. The slave gets this data and sends an acknowledge command, at which point the master can clock in the data. The master releases the bus before the next i2c operation by sending a not- acknowledge, NACK. The MMA8542Q offers a multiple byte read which allows the next address in the device to be read automatically after an acknowledge message, without the master explicitly asking for it. This is very useful as for the acceleration readings six registers have to be read.
  • 39. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 39 of 129 Figure 24 - MMA8542Q multiple byte read feature [26]. The overall process can be seen in an extract from the device’s datasheet in Figure 24. The operation for the MCU’s internal ADC is relatively simple using the C18 compiler libraries. The ADC is set up with an appropriate clock speed, and set to use internal voltage references. It uses the internal RC oscillator on the microcontroller for simplicity. To make an analogue reading, the ADC needs to be switched onto the appropriate channel, and a conversion started. The program then needs to wait until the conversion is complete before reading the ADC result. A slight issue was found when using some of the channels on the ADC, which was resolved by fixing some slight errors in the library which were not correct for the specific microcontroller. This fixed header file has to be included in the source file, rather than the one from the compiler for those channels to work. The CAN controller in the MCU is the same as used in the previous Smart Dash project, so the same approach was used to control it. The helper application from Microchip, Application Maestro, was used to create an initialise method, and library functions to send and receive onto CAN. It was necessary to set up the bit timing for the controller, as the CAN protocol is asynchronous and has no clock sent during data transmission. Each CAN node on the network has different clock speeds, so synchronisation is achieved by dividing each frame into different segments: sync, propagation, phase 1 and phase 2. A CAN bit timing calculator provided by Microchip [27] was used to calculate the appropriate values for each of the segments, given the clock speed of the nodes (20 MHz) and the desired bit rate of the CAN bus (1 Mbps). Receive and send filters on the CAN controller had to be set to extended mode to support the extended addressing as used by USM systems and the DTA ECU. TELEMETRY NODE The telemetry package is made up of two nodes, one transmitter node on-board the car connected to the vehicles CAN bus and one receiver node positioned at the side of the track and connected to the off-board software system. The telemetry link is half duplex, however it is only currently set up to transmit data from the car to the pits. This could be expanded in the future to allow transmission from the pits to the car allowing further configuration of the data which is sent or control of on-car systems. 4.3.1 Radio Link A 173.25 MHz radio link is used to communicate between the two nodes. The low frequency of this link will allow reliable data transfer between the car, which could be
  • 40. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 40 of 129 travelling at up to 60 mph, and the receiver at the side of the track which could be positioned up to 500 m away from the car. The long wavelength of the 173.25 MHz signal allows it to diffract around obstacles between the transmitter and receiver making it more suitable for the environment of a racetrack than a comparable higher frequency link. 4.3.2 Hardware Design A PIC microcontroller links the on-board CAN bus with the radio link. A linear voltage regulator and logic level converter are used to link the 5 V circuit of the microcontroller and the 3 V specified by the radio transceiver. The circuit for this setup has been included on the accompanying CD. The Radiometrix Bim1 radio transceiver [28] on each node communicates with the microcontroller over a UART serial connection. Due to lack of experience in RF PCB design the transceivers were connected to the system using their breakout boards as supplied with the narrow band evaluation kit [29]. However with the time and production facilities to do so the transceivers could be connected directly to the telemetry node PCBs, reducing package size and production costs. The off-board design is implemented on a PCB linking the transceiver through a logic level converter to an Arduino Mega board. The design utilises several features offered by the Mega board: the microcontroller, the 3.3 V regulated supply and the UART to USB used in order to communicate with the server. It would however be possible to use individual components for each of these in order to reduce package size and production costs. 4.3.3 Software Design On the on-board system data is continually collected from CAN using a polling loop and used to update a set of variables storing the data. A timer is set to call an interrupt every 0.2 s (5 Hz) at which point a flag is set to call the transmit code on the next loop. This code transmits all the stored data over UART and the radio link before continuing to poll data from CAN again. Due to limitations with the C18 compiler, the variables used to store the data have had to be manually declared in separate sections. This is due to the compiler not allowing blocks of memory larger than 256 bytes unless declared in separate sections [30]. A set packet structure is used across the radio link with preamble to reduce noise. The packet structure has five ASCII STX (start of text) bytes to denote the start and five ASCII EOT (end of transmission) bytes to denote the end of the packet. Twenty three values are then sent in real-time, each value separated by a delimiter which is the ASCII US (unit separator) byte. Finally, a checksum has been used to ensure integrity of the data. LOGGER NODE The logger node logs all data on the CAN bus to a microSD card. The data is logged at 5 Hz and includes date and time from a real-time clock module, GPS, accelerometer, all ECU data and all analogue inputs from the standard node and up to 4 optional extension nodes.
  • 41. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 41 of 129 4.4.1 Hardware Design A PIC microcontroller is used to retrieve the data from CAN, arrange it into packets and send it over UART to a second microcontroller which adds the current time sampled from a real-time clock to each packet before storing to a microSD card. The DS1307 real-time clock module [31], which has a battery backup, uses an i2c bus. The Sparkfun SD breakout board used to write to the microSD card, communicates over SPI. The PIC microcontroller that is used, the PIC18F25K80, supports both of these protocols. Unfortunately both of the protocols use the same serial port so cannot be run together. In order to simplify the system and making use of existing libraries developed for Arduino, the communication with these two devices was offloaded to the second microcontroller, an Atmel 328PU. The SparkFun SD breakout board was used to provide the microSD enclosure which is otherwise unavailable in a package size suitable for prototyping. The circuit for this setup has been included on the accompanying CD. 4.4.2 Software Design The logger code is split into two parts each implemented on its own microcontroller. On the PIC microcontroller data is continually collected from CAN using a polling loop, with the data being used to update a set of variables. A timer is set to call an interrupt every 0.2 s (or 5 Hz) at which point a flag is set to call the transmit code on the next loop. This code transmits all the stored data over UART to the Atmel microcontroller before continuing to poll data from CAN again. On the Atmel chip the data is received and checked using a checksum to ensure it is consistent with what was sent from the PIC. The real-time clock is then sampled to find the current date and time and this is concatenated to the start of the data packet before being stored to the microSD file in FAT32 format. VIDEO HARDWARE The video system designed is very similar to first person view (FPV) systems as used in remote control airplanes. FPV means that the user can view everything as if they were actually in a plane or in this case, racing in the car or further monitoring a component. The design consists of five main components:  Camera - captures the live video feed.  Transmitter - transmits the video stream over a selected channel.  Receiver - receives the video stream over the selected channel.  ADC - converts analogue video feed into a digital one.  Display – displays the live video stream. This section will discuss the hardware decisions that were made during the process of building such a system. 4.5.1 Camera There is a wide range of different types of cameras available, from small portable cameras up to broadcast cameras as used in television productions. USM have specified that the chosen camera should be small and portable enough to be placed anywhere on the car. Thus the following factors have been considered.
  • 42. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 42 of 129 4.5.1.1 CCD or CMOS Two of the most common camera types that match the requirement of USM are CMOS (Complementary Metal Oxide Semiconductor) and CCD (Charged Couple Device) [32]. Both of these cameras capture the video in a similar manner but CCD provides high sensitivity, enabling it to capture video in very low-light (i.e. under the chassis). This sensitivity is determined through the lux value of the camera and the chosen CCD camera has 0.01 lux. This means that the camera can be placed in locations that may be darker in order to monitor components. In addition, the CCD images are cheaper to develop compared to CMOS, which leads to CCD cameras being less expensive [33]. 4.5.1.2 Camera Resolution Camera resolution depends on the television lines (TVL) [34], which is a specification of an analogue camera’s horizontal resolution power. TVL is crucial when measuring a video system because the more TVL a camera has, the better quality of the captured video. The camera chosen for this video system consists of 700 TVL, which should give a high quality image. 4.5.1.3 Lens Size The lens size of a camera determines the field of observation view and zoom level it provides. A smaller lens size produces a wider angle of view meaning a larger area can be viewed, with less focus on individual objects as seen in Figure 25 [35]. Therefore the lens size chosen is 2.8 mm giving a much wider angle of view allowing the USM team to clearly see what is happening while the car is on track. Another camera with a larger lens size can be chosen to provide a target for a particular component on the car. Figure 25 - A comparison of lens size and the associated angle of view [35] 4.5.2 Transmitter and Receiver The transmitter and receiver are an essential part of a wireless video system, and the frequency of these and types of antennas chosen will determine the range and the reliability of the video transmission. A 2.4 GHz transmitter and receiver have been chosen for this system and the linear antennas have been replaced with the clover leaf
  • 43. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 43 of 129 and skew planar antennas. The reasons for choosing this frequency and these particular type of antennas are explained in the following sections. 4.5.2.1 System Frequency When considering FPV video transmission, there are four frequencies that are commonly used. The lower frequency band allows for a waveform with higher amplitude to be produced. This gives a longer range and is less susceptible to interference, allowing the transmission to penetrate objects such as buildings [36]. Due to the fact these wavelengths are extremely long, they require larger antennas to be transmitted [37]. The frequencies available for the video transmission are as follows [38]:  900 MHz – This frequency is the lowest frequency band available for transmitting video thus produces the largest waveform. This would have been the best frequency to choose but the downside is that it is used by mobile phones in UK for 3G technology and is illegal to use in the UK for licence-free radio transmission.  1.3 GHz – This offers good penetration and allows for long range transmission but once again it is also illegal to use in UK [36] so therefore has not been investigated further.  2.4 GHz – This frequency suffers from interference from WiFi networks so cannot be used in urban areas effectively. However the tracks used by USM are often obstacle free and are away from urban areas, so this is not a concern. Due to the higher frequency, range is reduced however this can be overcome by the use of specialised or high gain antennas.  5.8 GHz – This frequency can be used with smaller antennas resulting in a lighter weight system. It has disadvantages of a shorter transmission range and reduced penetration. The 2.4 GHz band is an ideal frequency to use in UK for this particular video system and where range issues occur, as mentioned above, they can be overcome with the high-gain antennas on the receiver side. 4.5.2.2 Antennas Antennas are a crucial link between the transmitter and receiver. Therefore it is best to select the proper antenna for this scenario to ensure robust transmission and that a long range is realised. There are two types of antennas; linear polarised and circular polarised. Linear polarised antennas produce a vertical wave whereas circular polarised antennas output a wave in a circular pattern. Waves produced by both antennas can be seen in Figure 26 [39].
  • 44. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 44 of 129 Figure 26 - Linear Polarisation vs. Circular Polarisation One of the advantages of using a circular polarised antenna is that it provides reliable transmission. With linear antennas the transmitter antenna has to match the angle of the receiver antenna. This condition not being met can lead to a loss in signal resulting in a drop in picture quality or even total loss of picture [39]. In addition, linear antennas suffer from multipath interference. Multipath interference is caused due to a linear signal bouncing off an object (refer to Figure 27) and arriving later than expected or arriving out of phase compared to the original pattern. In circular polarisation, when a signal is bounced off an object it changes its pattern in a different orientation. A receiver antenna doesn’t detect it, leading to the multipath rejection capability of circular polarised antennas [39]. Figure 27 - Multipath interference Due to improved signal reception and multipath rejection capabilities of circular polarisation antennas, the linear antennas weren’t further investigated. Figure 28 - Circular Polarised Antennas [39] The most common types of circular polarised antennas are (as seen in Figure 28):
  • 45. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 45 of 129  The Cloverleaf – These antennas are designed specifically for FPV use and consist of 3 distinct lobes. These antennas have gain of 1.2 dbi and produce an isotropic radiation pattern [40]. An isotropic pattern means that the radiation pattern is the same in all directions, allowing a 360 degree vertical and horizontal bandwidth. Therefore these antennas are ideal for transmitters because they radiate in all directions with the same gain [38].  Skew-Planar Wheel – These antennas are also designed specifically for FPV use. The difference between cloverleaf antenna type and this antenna type is that it is constructed of four 105 degree arcs instead of three. It also has a lower gain (0.9 dbi). Their omni-directional nature and better multipath rejection capability, compared to cloverleaf antennas, makes them a suitable receiver antenna [41].  Helical – There is a lack of gain in circular polarised antennas as discussed above, hence longer range transmission often requires an additional antenna with higher gain to be incorporated on the receiver side. This usually affects the circular polarisation of transmission by compressing the bandwidth in one particular direction. An alternative to this solution is called a helical antenna. This produces a true circular polarisation and provides a gain of 7.5 – 13 dbi [39] [42]. A cloverleaf antenna will be used for the transmitter due to their lower cost, smaller size and appropriate gain. A Skew-Planar antenna will be used for the receiver. Furthermore a helical antenna can also be used to extend the range of transmission. 4.5.3 Analogue to Digital Converter In order to display the analogue video alongside the data on the off-board system application it has to be converted into a digital format. Therefore it requires a conversion tool such as a video capture card. This capture card plug into a user’s computer via a USB port and convert analogue video stream into a digital stream. Once the conversion has taken place the stream can be modified using video editing tools that are included with the capture card, therefore allowing the stream to be recorded and saved onto a storage device. The initial capture card chosen for the system was the EasyCap USB 2.0 video and audio capture card. After installing the drivers for the card and testing it with the designed off- board system, it didn’t work as expected. External software was used to validate the fact that the problem was with the card itself and not the software system. The bought card consisted of a UTV007 chip which was discovered to be a fake device and doesn’t include the appropriate video decoder chip [43]. An alternative capture card was sourced solving these issues. The Dazzle DVD recorder which outputs the analogue signals into H264 format. H264 is a video format of mp4 that can easily be supported by most of the browsers. 4.5.4 Display There are two options to display the video; either the video can be displayed on a monitor through analogue output on the receiver side or it can be displayed alongside the application with the use of an ADC. This is further discussed in Section 4.6.3.
  • 46. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 46 of 129 OFF-BOARD SOFTWARE SYSTEM This application is used during runs to view data in real-time to allow the pit crew to watch for any fluctuations that may require immediate attention. A live video stream alongside the data helps the team to identify reasons for anomalies in the data. The application is also used after runs for analysing the data for a driver or to aid testing and designing of the car. 4.6.1 Architecture of the System It was decided that the software would primarily be programmed in Java, as the project member assigned the role of developing the system had strengths in Java. As one of the requirements from the USM team was to be able to view the data in real-time, it was decided that multiple users should be able to view this data to make the software as useful as possible. To allow for this, it was decided that the best approach was to design the software as a web application, allowing many clients to access the application via a server. Making the analysis software a web application allows it to be very flexible – many users can access it simultaneously, multiple sets of data can be viewed at once, the software can be viewed on different devices and the look and feel of the software can be updated easily. With previous software that the USM team have used, the software has been limited to a specific number of computers due to licencing and restrictions. However, using a web application removes this constraint and allows more members of the team to use the software simultaneously. The analysis software is a web application designed with the Model-View-Controller (MVC) framework in mind. The view is the JSP pages which are styled using Bootstrap. The model is the underlying code that creates the objects. The controllers use Spring to pass information between the view and the model. The data is stored in a MongoDB database (described in the next section). Services are used to write data from the model to this database, and retrieve data from the database to pass back to the model. The whole application is hosted on a Tomcat web server and Spring Security is used to only allow authorised users to view the application. A basic diagram of how the software is made up is shown below in Figure 29.
  • 47. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 47 of 129 Figure 29 – System Architecture 4.6.1.1 Maven The project was set up as a Maven project. Maven is a tool used for building and managing Java-based projects. It allows a project to be built using a set of plugins (shared by all Maven projects) and a project object model (POM) [44]. Maven allows for JARs to be included in a project by including a few lines of code, meaning that the project can be easily imported to other computers as Maven will automatically download all the relevant files. 4.6.1.2 Spring The system was designed as a Model-View-Controller (MVC) application. MVC is a software pattern used to separate the internal representations of information (the model) from the way that the information is presented to the user (the view). The controller is the link between the view and the model, translating user commands from the view into messages which can be interpreted by the model. Using an MVC design allows for different views to be used easily with the same model. To link the back end Java with the front end HTML, the Spring framework was used as the MVC implementation for the web application. Spring is an open source application framework and inversion of control (IoC) container for the Java platform, providing comprehensive infrastructure support for developing Java applications [45]. The IoC is a consistent means of configuring and managing Java objects (otherwise known as beans [46]) – it creates the objects, calls their initialisation
  • 48. 19250 CES GROUP PROJECT – FINAL REPORT GROUP H Page 48 of 129 methods and configures the objects by connecting them together [47]. The IoC uses reflection (examining and modifying the structure and behaviour of an object at runtime) to do this. The Spring MVC implementation is designed around a Dispatcher Servlet that dispatches requests to handlers. Using annotations such as @Controller and @RequestMapping offers a wide range of flexible handling methods and creates a RESTful2 web application [48]. The model is a Map interface which allows for complete abstraction of the view and can be integrated directly with JSP (JavaServer Page that contains static data and dynamic content [49]) as well as directly generating JSON and other content types. 4.6.1.3 Bootstrap Bootstrap is a powerful front-end framework for faster and easier web development [50]. It contains HTML and CSS based design templates for typography, forms, buttons, navigation and other interface components. It also includes optional JavaScript extensions [51]. Bootstrap is responsive which means that it adapts to the change in platforms with super speed and efficiency. For example, if a user moves from using a laptop to using their phone, the page will automatically resize and components will adapt [52]. 4.6.1.4 Tomcat As the analysis software has been designed as a web application for client/server use, a server is needed to host the software. Tomcat is an open source web server and servlet container which provides a pure Java HTTP web server environment for Java code to run in [53]. By running this server on a computer, the USM team can access the web application by going to the following page “http://XXX.XXX.XXX.XXX:8080/USM- Analysis-Application”, where XXX represents the IP address of the computer that is running the server. 4.6.1.5 Spring Security As the data that is recorded from the car is sensitive and the USM team do not want other Formula Student teams to be able to see the data, security has been put in place to ensure only USM members can access the analysis application. Spring Security is a powerful and customisable authentication and access-control framework which is the standard for securing Spring-based applications [54]. If a user tries to access any part of the web application, a login box will appear asking for a username and password. Once this has been entered, the user is free to use any of the web application software. If the user cannot provide the username and password then they cannot access the application and therefore cannot view the data. This ensures that the USM’s data is protected if the username and password is kept to within the team. 2 Representational state transfer (REST) is an architectural style consisting of a coordinated set of architectural constraints applied to components, connectors and data elements within a distributed hypermedia system [77].