tachometer project

Thread Starter

CaliusOptimus

Joined Aug 14, 2005
59
id like to build myself a tach for small two stroke engines.

ive got most of my bases covered, but theres a few parts of my idea that i havent quite figured out yet.

the magneto on my particular engine has two windings. one for the plug and one for the kill switch. i scoped the kill winding and it produces an aprox 50vpk spike every time the plug fires. heres the circuit i came up with:

http://img5.imageshack.us/img5/6499/scrng.jpg

(you may be wondering why i tested it @ 20KHz....the motor i have is capable of 20k rpm!)

im pretty sure this will work just fine, as the zener limits the positive voltage to ~5v and shunts any negative voltage to ground. the transistor is there as a fuse :) im not sure how this will affect the motor, but i will bread board it and hook it up to be sure all is ok.

id like to use a crystal oscillator for my clock source, but i have no idea how to do that. i was reading the datasheet for a 4060, but im not sure if thats the best choice for my application. any suggestions?

also im having trouble finding a logic circuit that allows me to multiply a binary number. id like the tack to refresh once per second, or possibly have this adjustable. say an option to refresh every 0.5, 1 or 2 seconds.

say my circuit counts 84 sparks in one second....how do i multiply that by 60?
 

Thread Starter

CaliusOptimus

Joined Aug 14, 2005
59
alright...ive answered one of my own questions.

anytime you multiply a binary number by two, you simply tag a zero on the end. SO, instead of trying to multiply by 60, it would be easier to multiply by 64 (just add 6 zeros)

that means i need to refresh the count every 1/64th of a minute (.9375 seconds or 1.0666...Hz) which is actually an easy clock frequency to get. i can take a 60khz clock and divide it by 56,250, which can be done with two divide-by-n counters (one set to divide by 250, the other to divide by 225).

so (60khz/250)/225 = 1.066...Hz


now i just need a circuit for a 60khz crystal oscillator and i should be good to go
 

SgtWookie

Joined Jul 17, 2007
22,230
You should definitely follow The_RB up on his project offer.

You'll have a much better finished project than trying to do it using a bunch of ICs.

I did a bit of "tweaking" on your simulation. I think you'll find the performance will be a bit better when you put it into actual use. Right now, you have quite a bit of resistance in the transistor's base path, so it's operating in its' linear range when it needs to be a saturated switch.

R3 was chosen to source up to 5mA current to the output; Q1 will sink 20mA easily. Before, there was so little current available for source/sink that it may have caused problems with a capacitive load.

I've attached an image of the simulation, and the .asc file - just copy it to your SwitcherCad directory and load it up.
 

Attachments

Thread Starter

CaliusOptimus

Joined Aug 14, 2005
59
thank you guys for your suggestions! id like to do this project solely out of logic ic's, for fun more or less. ive got an OOPIC on standby in case i decide to go the easy route. also, thanks for taking a look at my sim, ill breadboard it tomorrow and check results with my scope.


ive been looking over the datasheet for a 4060, and its got me kind of confused. figure 6 shows the typical crystal oscillator circuit, but the values for Cs and Ct remain the same regardless of the crystal.

is it safe to assume i could throw any value crystal in that circuit and make it work just by varying Ro? or do i need to somehow take into account the 'load capacitance' rating for my particular crystal?
 

Thread Starter

CaliusOptimus

Joined Aug 14, 2005
59
i decided to go with a different method anyhow.

i will feed the magneto signal to 3 cascaded BCD up counters. they will count for 1/100th of a minute (0.6 seconds) then the results will be displayed via 3 4511's. the displays will latch, and the counters will reset and begin again.

the display will read in 100's of RPMs, and should be accurate to +0, -100 rpms. quite accurate enough for my uses!

i also decided to use one of these for the clock. its accurate to +/-100ppm, which should be negligible.
 
Last edited:

Thread Starter

CaliusOptimus

Joined Aug 14, 2005
59
alright, the counting/display circuit is all done and tested, but im having some troubles with my input circuit.

having the magneto directly coupled to the the rest of the circuit it causing some strange things to happen. the pulses im getting from the circuit are pretty clean, accept for a massive (±15v ish) spike in one part of the wave form. ive tried a handful of different things like snubbing caps, RC filters etc. to get rid of it without success.

im thinking my best bet would be optoisolation, but ive never played with an optoisolator before. ive found this part on digikey, and it seems simple enough.

the signal from the magneto is usually about 100vpk (i said 50v earlier, i was working from memory:rolleyes:) but occasionally for whatever reason it will jump to -100v and i need to protect my circuit from this.

this is what i have devised.... and i would greatly appreciate a second opinion before i go off roasting optos!
 

SgtWookie

Joined Jul 17, 2007
22,230
i decided to go with a different method anyhow.

i will feed the magneto signal to 3 cascaded BCD up counters. they will count for 1/100th of a minute (0.6 seconds) then the results will be displayed via 3 4511's. the displays will latch, and the counters will reset and begin again.
Take a look at a 4553 counter. It has three BCD counters in one package, and an oscillator.

You use them in conjunction with a 4543 7-segment driver and a few transistors to multiplex the displays. Lots easier to use 2 ICs than 6!

Look at OnSemi's datasheet for an MC14553B. It shows how to connect up a 4553, 4543, and transistors to drive the displays.
 

SgtWookie

Joined Jul 17, 2007
22,230
alright, the counting/display circuit is all done and tested, but im having some troubles with my input circuit.

having the magneto directly coupled to the the rest of the circuit it causing some strange things to happen. the pulses im getting from the circuit are pretty clean, accept for a massive (±15v ish) spike in one part of the wave form. ive tried a handful of different things like snubbing caps, RC filters etc. to get rid of it without success.

im thinking my best bet would be optoisolation, but ive never played with an optoisolator before. ive found this part on digikey, and it seems simple enough.

the signal from the magneto is usually about 100vpk (i said 50v earlier, i was working from memory:rolleyes:) but occasionally for whatever reason it will jump to -100v and i need to protect my circuit from this.

this is what i have devised.... and i would greatly appreciate a second opinion before i go off roasting optos!
Well, with that 20k resistor and a 50v input pulse, you'll only be getting about 2.5mA current through the opto emitter. You might want to drop that resistor to 10k or even 5k to bring the IR emitter current up.
 

Thread Starter

CaliusOptimus

Joined Aug 14, 2005
59
alright, ive almost given up on this. my input circuit is being affected by RFI from the spark of the engine, and its causing double triggers. opto-couplers havent helped.

im thinking i need to go with something that captures that little bit of RFI from the spark, and turns it into a usable logic signal. its quite a strong pulse, and just leaving my scope probe near the engine as it fires creates a 2v pulse on the scope. im having a hard time testing a circuit to pick up this RFI because it's showing up on my scope regardless.

i know its doable. theres a tach out there for dirtbikes and the like that use this principal.

plz, any suggestions
 

Thread Starter

CaliusOptimus

Joined Aug 14, 2005
59
it looks like an over complicated version of my first circuit. it's directly connected to the coil. been there, tried that.


im tempted to leave a cmos gate tied to ground with a high value resistor (1M+) and run an antenna wire from there to the spark plug. it just might work with some filtering.
 
Top