Last Update: 13 January 2004 04:21:57 PM
The software was written in Visual Basic 6.0. Both the demo version and the full
version is now fully compatible with Windows 95 through to Windows 2000. We're currently using Windows 98 on a
Pentium II 200MMX. You will need a sound card and speakers to hear the sound clips
used in the software. If you want to print directly to a printer instead of to print
files, you'll need to do one of two things:
1. Add a second printer port controller card
to your pc and attach the printer to this second port.
2. Use a second computer with the
printer attach to it and set up a network between the two. Share that printer and connect
to it from the 'laptiming' computer.
For obvious reasons the first option will be easiest and most feasible. At one point we used
the second option ourselves but then changed to the first option and never looked back. The
networking option was always a temporary setup on race nights and often we had networking
problems if the two computers weren't started up correctly.
The software now supports two, three and four lane tracks but the demo version
only supports a two lane track. The software keeps a
database of competitors that compete at your track and of the classes hosted.
You then attach each competitor to the classes he competes in. You set the
number of minutes per heat and the number of heats (1 to 3) before the finals.
After all competitors have been selected, for the current event, they will randomly
be grouped together by class. Between each heat each competitor will be
"moved" on two lanes, meaning that lane one will go to three, two to
four, three to one and four to two. When starting a race there is a 'spoken' countdown from five to one with a
buzzer for "Go". If the start lights are used then the lights will
light up one by one until all five are lit up (red) before turning green for
"Go". As a car passes the sensors when completing a lap a whoosh
sound will also be heard. There are also 'spoken' messages indicating the
remaining race time on two minutes, one minute, 30 seconds and 10 seconds.
When the time is up a 'spoken' message is given stating that the race is over
and that the the lap must be completed. During the race the following info is
shown on-screen for each competitor: Number of laps, reaction time at the start,
previous lap's time,
slowest lap, fastest lap, average lap time and average speed. If a "jump" start
occurs the race is immediately stopped and the guilty person is pointed out. When all heats
have been finished the finals are compiled and only the top four competitors
in each class go through to the finals. The top six competitors in each class
get championship points as follows 1st-12pts, 2nd-10pts, 3rd-8pts, etc. These
points are then kept in a championship database grouped together by class. You
can set if printing must go to print files on disk or directly to your default
printer. You can set if the timing is done electronically or manual (using
keyboard). You can also enter the length of each lane in centimeters for the
average speed calculation.
I am currently working on new functionality through which up to four relays can also be controlled
to allow for switching the lanes on and off. It will work like this: When the application is started all lanes
are disabled. When you enter the practise screen all lanes will be enabled until the screen is closed. When
a new race is started all lanes are switched on when the 'race' screen is entered. If a "jump" start occurs,
instead of stopping the race, the lane(s) on which it occurred will be disabled for a configurable amount of time
while the race continues. At the end of the race each lane is disabled when the driver completes the last lap.
The circuit design will be done in such a way that when a lane is disabled it will not affect the brakes applied
by the controllers. A 10mm dual color LED will also be added to each lane. Each LED will light up green when
the corresponding lane is enabled and red when the corresponding lane is disabled. I will post the updated test
application as soon as this development is complete.
The demo version of the software is now available on the
downloads page.
Due to some features being disabled in
the demo version you will also not be able to use any electronics for timing
but only the keyboard. If you want to start building the electronics in the mean time,
there is also a test application available on the
downloads page with which you
can test it.
The electronics connect to the computer via the primary printer port (LPT1). The
main sensor circuit looks like this:
The above circuit uses the following parts:
2 x 10k resistors
1 x 100k potentiometer (PCB version)
1 x LDR, 5 mm round
2 x 220 ohm resistor
1 x standard led (3 mm)
1 x super bright red led (5 mm)
1 x LM324 IC, with 14 pins IC socket
1 x 5V DC power supply (small adaptor will do)
1 x Sub D 25 pin male parallel port connector
For simplicity of the image this circuit diagram was drawn for only one lane. You
however need to build four such little circuits onto one board using
ONE LM324.
Obviously you also need only one power supply and one 25 pin connector. According
to the diagram the pin connections of the LM324 IC are as follows:
PIN 4 = +5v
PIN 11 = GND and also to parallel port pin 25
As on the image the following would represent Lane 1:
PIN 1 = Output to parallel port pin 13
PIN 2 = -
PIN 3 = +
Now you must duplicate the circuit for each of the remaining 3 lanes and use
the following pin connections on the IC:
Lane 2:
PIN 5 = +
PIN 6 = -
PIN 7 = Output to parallel port pin 12
Lane 3:
PIN 8 = Output to parallel port pin 11
PIN 9 = -
PIN 10 = +
Lane 4:
PIN 12 = +
PIN 13 = -
PIN 14 = Output to parallel port pin 10
A few construction notes: You can use veroboard to build the circuits on. The
triggering circuit doesn't have to be on the same board as the pulse
stretching circuit below but it can be. Put the high power LED's and LDR's on
wire leads so that it's easy to mount them on the track. The LDR's go under
the track and 5mm holes must be drilled just next to the metal of the
tracks. All your cars should be able to cover these holes easily. The LDR's
must then be install so that they do not stick out of the holes. They must be
flush with the track surface or just below it. The high
power LED's must go in a bridge over the LDR's and should shine directly on
the LDR's. Once finished with the construction you need to calibrate the
electronics as follows. With the LED's shining on the LDR's you adjust the
variable resistors on the board down until their accompanying LED on the board
turns on. Turn the resistors back up until the LED turns off again. If you now
break the light beam on the track with a car that lane's LED on the board
should turn on. When taking the car away it will turn off again.
You could however use any other means of triggering like infrared beams.
Infrared light beams for automated gates will also work but they do work out a bit
expensive as you need four sets. No matter what triggering system you use, it
is highly advisable to use the pulse
stretching circuit below and trigger it with your
triggering system. This circuit takes the split second long pulse coming from the
trigger/sensor and holds it for about 2 seconds enabling the software to
properly pick the signal up. Don't worry, it won't affect the accuracy of the
timing. If you use a slowish computer and two cars come through the sensors
very close after one another the computer is still busy processing the first car's
signal when the second comes through. By the time the computer checks for the
next signal, the signal is already gone. Once a specific signal has been
processed it will be ignored for a configurable number of second. The software
will therefore not be confused when an old signal is still active when a new
one is received. So, instead of taking the outputs, as specified for the circuit
above, directly to the parallel port, they should go to the trigger input of this
stretching circuit. The stretching circuit's output then goes to the parallel port.
As above you need four of these circuits:
The above circuit uses the following parts:
1 x 2k2 resistor
1 x 2k7 resistor
1 x 10k resistor
1 x 1M resistor
1 x BC337 transistor
1 x 1 microfarad capacitor
1 x 555 timer IC
NB: If you're not using the pulse 'stretching' circuit you must remember
that the output voltage from your sensors must not exceed 5V or you will end up
with a blown parallel port. The stretching circuit can handle up to 12V at the trigger
but for how long I can't say as I haven't done any long term testing with such a
high voltage.
The start lights I mentioned earlier use five dual coloured LED's (red/green). The red
side of each LED is connected to the parallel port separately but the green side is
connected to each other and then to the parallel port. They are connected as follows:
This is what our finished bridge looks like with the "display" LED's in the side facing the competitors and the high
power LED's in the bottom of the bridge shining down onto the LDR's mounted in the track: