Hi,
As the title suggests, I have an application question...
First of all, I'm nearly positive that this will do the minimum of what I want, but I figured I'd ask anyways.
I need, at the very least, to create a "stopwatch" for a timing system for automobile racing.
The stopwatch needs to be accurate to a thousandth of a second (.001 seconds) and up to 10 minutes (600 seconds).
And that's the only real limitation I have... is the clock speed on this system fast enough for that (I would assume yes).
The reason I need this, and this is the biggest thing I need (besides the accuracy) is to have multiple-trip protection. Frequently with our current system, if the car is traveling slow, the car can trip it two or three times when it's only supposed to do it once. a "multiple trip" protection function is extremely important, so that it will only take one input in the span of say 1 second. It's important that it take the first input, in this case, but that should be simple.
I'll give the minimums:
Output: mm:ss.sss (so 2 places for minutes, 5 places for seconds (3 of which for tenths, hundredths, thousandths)
so I need 7 display outputs total.
I am aware that Arduino can output that many decimal places (up to 8 with the proper hardware?).
It will need to have start/stop/reset functions that can be user controlled.
Start/stop functions also need to be able to take inputs from the sensors.
everything will run off of 12VDC (possible use of batteries can make Arduino run off of other voltage settings... whatever it likes, but run off of batteries none the less.
A lap function will also be extremely appreciated. That is using one sensor input to start the timer, then every time the sensor is tripped it displays the time (for say 10 seconds) and resets the timer. For the next lap.
On that note, lap # and recall of those times would be awesome.
It's worth noting that some application will be lap based (going around a track) and some will be start/stop based (drag racing). I see doing this either with two modes, or just having the start/stop sensor in the same input ports and either using one sensor or two, depending on the application.
Storage of values or uploading values to a computer would be nice. Storing then uploading would also be nice. Ability to put in info for datasets would be nice (for example, put in the name of the driver for each lap set).
Sector times would be very nice. That is, you have a sensor for the start/finish of the run, and other sensors at other spots in the track. It measures the lap time relative to the "main" lap sensor, and also time in between each sensor. I have 5 sensors at the moment.
On software side, some data anlysis would be nice. when uploaded to computer, it could find fastest lap (and with sector times, fastest rolling lap (this analysis uses each sector gate as a start/finish instead of a checkpoint, it then finds the fastest lap, which might have started/ended in the middle of the track, but due to being slow before or after that point, would not show up as being as fast under normal circumstances... I hope that is an adequate description)).
Also plot histograms of data and maybe do some more complicated analysis.
This is the first part of what I want. A piece of harware that only really measures time between sensor trips with some flexibility to filter out multiple trip errors and the like. It would not interface with the car at all.
Depending on how easy/doable/flexible this project and Arduino is in general, I'm sure I could come up with boat loads of other applications, all the way to DAQ and in-car driver instrumentation. Maybe even telemetry stuff?
Last but not least... a recommendation of what hardware to get would be nice.
Cheers!
-Martin