Engine Data Acquisition

Thread Starter

eckertd

Joined Jun 19, 2007
3
Great site!

I've been tinkering with a data acquisition system for my 1967 Mustang. All the newer vehicles can tie right into their OBD to pull data like RPM, air-fuel ratio, exhaust gas temp, etc. But older cars like mine don't have such luxuries.

It so happens that my car has an MSD-6AL ignition module that has a tachometer port. It outputs a 12V (20% duty cycle) square wave. I figured this would be a good place to start collecting data.

I figured a linux laptop with the "parapin" driver from sourceforge.net would let me write and read to/from the printer port. First I wanted to take the "pulses" from the MSD directly to pin-10 and calculate RPM via a processor interrupt. Now, I think using a binary ripple counter works better, and I've added some other functionality, like reading 1-5V signals from O2 sensors, etc.

I've got about 90% of the C coding done, I just need some help with the circuit design. I was a CS major in college. I did have classes in digital/analog circuits...but that was a LONG time ago and I'm more than rusty. Would someone be willing to have a look at what I've done so far? Comments/suggestions/*ANY* help would be appreciated!

Thanks!

Doug Eckert
Pennington, NJ
 

Attachments

lightingman

Joined Apr 19, 2007
374
Hi there...Have done a similar thing, but I ended up doing it with a PIC18F458 microcontroler.... It takes in the data from all the sensors and sends it serialy to 11 LCD displays that make up the dahboard.....The serial data also goes into an RS232 interface and the data can be displayed on my laptop with a program that I wrote in V.B.....You can through the same interface, re-program / update the system when you wish..... Now of course this system was designed for my for my Mini Cooper with it's "A" series engine (that you could probably get into the glove compartment of your car).....Also I do not have schematics for it as I did it all out of my head......What I am trying to say is, that I did start as you have but I ended up with 4 PCB's full of IC's.....The PIC has 8 channels of A to D plus loads of I/O ports and lot's more features, and all the calc's can be done in software so future expansion of a system like this is made easy.....If you do need any info on how I did this, let me know and give me some time to dig out what I have and try to remember the diagrams.....Good luck....Daniel.
 

Thread Starter

eckertd

Joined Jun 19, 2007
3
Very impressive! I would certainly be interested in how you got the sensor data in. You can see from my block diagram that I take up to 4 0V-5V sensor lines into a 4 channel MUX, then to an ADC. I just don't know how to translate the 8-bit output of the ADC into actual air/fuel ratio or exhaust gas temp values.

I've visited the MSD Ignition forums to inquire about the tach output, and all they could tell me was what I already knew, it's 12V square wave, 20% duty cycle. I need to drop that 12V to 3-5V for the ripple counter. I figured a ???ohm resistor (any thoughts?) and a 7.5V zener diode (reverse-biased) should do the trick. Does that look right?

For the RPMs, I figured to let the counter do its thing (clocked by the MSD square wave), then at each polling interval (0.25sec), record the value then set the MSR high thus zeroing it out to begin another cycle (simple math from there, right?).

I'd like to keep it relatively simple & compact, but I can see swapping the 4-ch MUX for an 8-ch now to add more sensors later.

--Doug
 

lightingman

Joined Apr 19, 2007
374
Leave it with me, and I will get all the info that I have......As I said before... the calculations and data conversion is all done in the PIC.....I will try and dig out the code.....Daniel.
 
Top