autox
[Top] [All Lists]

Re: Autocross Timing/Scoring Software

To: autox list <autox@autox.team.net>
Subject: Re: Autocross Timing/Scoring Software
From: John Eagan <johneagan@toltbbs.com>
Date: Sat, 02 Oct 1999 12:30:29 -0400
It's been a great discussion. I'd like to throw in my comments now. I'm
a computer fixit guy to make a living, with an electronics background
and a few years dealing with the PC world. I run autocross, I take care
of the content of the NWOR SCCA website, and I'm a musician (this is
actually relevant, stand by), so this is all something I have some
interest in and can make a couple observations on. Forgive any
redundancy, since there seem to be a few people very well qualified on
the subject who have thrown in their bit.

In the digital world, any dedicated hardware can do a much more
effective job on a specific specialised task than a general purpose
computer. You design the circuit to do exactly what it needs to do and
nothing else. The essential concept of a PC is to be a general purpose
flexible machine. A "soft machine". It has hardware that can be made to
do a huge number of different things, based on a general architecture
that can be manipulated by instructions and data created by programmer
type humans to basically make the machine appear from the outside
functions to be what it needs to be at a given time. They have inherent
inefficiencies because of their general-purpose nature, which are more
or less gross depending on the hardware, the operating system running
the show, and the specific application programs and how effeciently they
work.

A few people here who seem well qualified have a good grasp of the
reality of all this, especially Paul Foster, for one. If you want
precise and accurate timing for a task, a dedicated box is best. A PC is
a good tool for self torture for the person trying to get the job done,
if it's not approached right.

The key thing is, it's not a huge problem using a PC in a case like
this. The crux of the matter is, you don't make the computer do all the
work! It's that simple. 

What you do, and several people in the discussion clearly understand
this, is have a chunk of electronics that handles the timing-critical
parts, and use the computer as a control interface and data processing
box. The timing issues involved in the PC are really irrelevant then. I
would think that a good digital electronics design engineer could spend
about a week or less to come up with the appropriate plug in card. Build
a ISA buss card (if it's an IBM class machine, substitute whatever is
appropriate for other computers). Have a pair of connectors where you
plug in the timing sensors. Provide circuitry that handles signals from
photocells (or maybe something different? Another subject.) and turns
that into a pulse that flips a bit on somewhere inside. Provide the card
with its own independent crystal controlled clock circuit driving the
internal logic and memory circuitry of the card. The card counts clock
ticks between sensor inputs, tracks time appropriately (including the
fact that multiple events are being timed), and stores the count in
memory registers to be dumped out through the buss to whatever software
asks for it. There would be some stuff to think about, particularly to
make sure that you can properly keep the time count sorted out among a
steady stream of time marks as a queue of cars running a heat goes
around, including the problem of that order being screwed up for various
reasons, but it can be done, and probably pretty cheaply. Give a
programmer the information about how to ask the card for data and how to
reset the internals and all that jazz, and the programmer writes
something that handles all that and sorts out the numbers and makes it
pretty and pleasant for an operator sitting in your timing truck who may
or may not know their ass from their elbow when it comes to computers.
Once you have an interface that can work with whatever computer you
have, a programmer does the rest, and it would not be a huge project
necessarily. You could do it with a TRS-80 and Basic language. It could
be Windows ver.Whatever. Your option. 

The point is that issues of timing with the computer hardware and
operating system don't need to be relevant at all. The system just needs
to be able to poll the card and say "look in your memory and tell me how
many start and stop events there have been since <x> and how much time
was there between them". Maybe use the software to sort things out for
multiple times because of more than one car on course, if you prefer.
You get the idea.

For years now people have been using Macs and IBM class PCs for digital
audio recording, including multiple synchronized tracks. This has been
happening with older slower machines than the current bunch, and with
operating systems that make timing issues ugly for programmers because
some people want computer software to be cartoon based. The timing
issues are absolutely critical, and we're looking timing accuracy and
precision in increments WAY smaller than 1 millisecond here. They just
make hardware designed for the needs take care of the critical stuff and
figure out how to make the system and software communicate with it.

Bottom line. If given my choice, I'd like our club to have a system like
what I'm talking about if nothing else just because it would make it
possible to take a huge load off our timing and scoring and pointskeeper
guys, Lynn Ritchie and Dave Cubbedge, and getting me results data for
the club website would not involve one of those guys taking reams of
paper from an event and manually typing it all into a spreadsheet like
they do now. I could leave the event with a floppy disk in my pocket and
have the results on the website before the evening is out. That would be
nice.


JLE

<Prev in Thread] Current Thread [Next in Thread>