My second year project was building a Telemetry Vehicle (TV), with a team we passionately named “Team TV”. It was a three person team, and I was responsible for implementing the GPS functionality. This included interfacing the ARM MCU with the Venus GPS, parsing the NMEA strings sent to us, and using that information to help plan the tank's route. A secondary responsibility of mine was to implement the manual override controls sent over the Xbee wireless. We planned to make a modular device that could easily provide telemetry to a vehicle, as long as it had some form of microcontroller that could recognize and act upon generalized movement commands.
The Project was split into 3 parts, with the base vehicle being a secondary consideration. The goal was to combine the data from a GPS module and a Magnetometer in order to be able to navigate a vehicle platform. The 3 parts would be brought together with a Tiva Launchpad, which is a development board based on the ARM Cortex M4F MCU. The Tiva would take in the GPS coordinates continuously, and use its current coordinates and the destination coordinates to get a direction vector. At the same time, the Magnetometer would grab the direction the tank was currently facing. We compare this to the calculated vector, which gives us a direction to point and a distance to drive.
The original intent of the project was to have a module that could be plugged into any control system programmed to receive the data. Unfortunately we didn't have time to package up the components into a nice housing, and even had to make a large mast to prevent the motors from interfering with the magnetometer.
My partners worked on the wireless communication and the magnetometer compass. My part of the project was to implement the GPS module, decode the NMEA data streaming in, and provide that in a usable way to the rest of the systems on the vehicle.
Here are some tests and images of our progress on the project: