Nowadays the technical sports are getting more and more popular. The outcome of a fierce competition may depend on a fraction of a second, so the accurate measurment of time is crucial. During my work I designed a complex system which able to measure lap times of RC cars during a race. Before I designed the lap timer system I made researches among the lap timing systems which are out on the market, especially the ones with photocell and infrated solutions. I made bibliographic searching in the topic of IrDA standards, the RFID communication, I learnt about validation and verification, and examined the suitability of the 16-bit PIC microcontrollers for lap time measurement.
At the beginning of the designing I wanted to specify the system components and their tasks. It was very important during the designing to use my knowledge about the available lap timer systems, and eliminate their flaws in order to get a better and cheaper system. During a race the RC cars must be distinguishable, so they need to get a unique ID. I use a sender circuit to do this task, which send unique ID throughout the race using IrDA standard. The receiver circuit will read and process these signals with the help of a TFDU4100 transceiver designed on the circuit. Since more than one receiver circuit is involved in the measurement, it was necessary to design a central unit, that is capable of measuring time, to communicate with the receivers , and delivering the measured data to the computer.
In the system, a number of data transmission types are implemented: the transmitter and receiver circuits using infrated communication according to IrDA standard, the central unit gets the data of the receivers by using an SPI bus, and the communication between the central unit and the PC is realized with a FTDI FT232RL IC which implements a UART-USB interface. The different components of the circuits are controlled by 16-bit PIC microcontrollers, which I programmed in MPLAB integrated development environment, with a C code I wrote. I created the user interface in Microsoft Visual Studio using C# programming language.
I observed the appropriate operation the different communication types in the system during test. In order to check the accuracy of the time measurement, I made multiple calculations, to make sure, that the factors which affect the timing of the system, does not results noticeable differences in the time measurement.