Hello, I have searched for this for hours but every post ends up leading down the path of "if you try this instead", or "This might work better for you".
I have a small stand built to break in new go kart and mini bike engines. I need a RELIABLE tachometer to do this and I'm wanting to make the switch to an inductive clamp.
I first used an optical sensor. Very fast, but had issues at high speeds with high vibration and it wasn't quickly adapted from one engine to another, I often had to make several changes.
Now I use a hall effect type sensor to read the teeth on a sprocket. The problem is that when seeing over 2000 teeth/second, the readings become erradic. Also, when changing engines I often have to relocate the sensor and it takes some effort to get it within proximity for reliable readings. Sometimes this also means changing sprockets, so I have to change the count in the code with nearly every new engine, etc.
With an inductive clamp, I simply clip it around the spark plug wire and let it go. I will make a toggle switch for either 2 stroke or 4 stroke, but within their particular categories, I won't need to make ANY changes to read the RPM other than simply clipping on the inductive clamp.
I'm wanting to use something like this, which is made to plug into either an automotive multi-meter or oscilloscope. It should never see more than 100 pulses/second, which is GREAT compared to 2000/second with a sprocket.
I cannot find any wiring diagrams for this type of clamp. There are several ready made clamp/module combos used for measuring AC current from places like RFRobot, but I believe this is a DC discharge and I'm not sure on the compatibility.
You are mixing an inductive sensor with a capacitive sensor. If you are doing something with a spark plug wire you want to make a capacitor to sense the voltage. There is almost no current to sense.
Easy to make. Get a wooden, not metal or plastic, cloths pin, like you use to hang cloths on a line. Wrap a bit of aluminum foil around the end so it is pressed against the spark plug wire when you attach it. Fasten a wire to the foil. Use a thumb tack, etc.
Even if you buy something, it may put out 12V which could damage the Arduino.
And, spark-voltage can "jump around" components and through insulation. So, "be careful."
the readings become erradic.
A spark isn't necessarily a "clean pulse" so this could be tricky too, especially with a variety of engines in unknown condition. It's worth a try, but I don't know what kind of results you'll get. You may need some filtering or some fuzzy logic or sanity-check logic if you get 2 RPM or 100,000 RPM, etc.
raschemmel:
Ignition pulses are electrical. RPM is mechanical.
apples and oranges
There is one ignition pulse every 2 RPM, it is not as if ignition pulses are completely random. All I have to do is count the pulses.
These same clamps are used in dozens of different types of automotive equipment to read RPM. They're using on dynos for an RPM signal, timing lights to detect spark and flash a bulb, etc.
I found a diagram that shows how these companies are using an inductive clamp on a spark plug wire and getting a square wave signal for various microprocessors.
Does this appear to be something along the lines of what I would need to do?
Why has a thyristor (BT149) been specified ? Is that the best choice in this application ? Simply that I have not seen these in Arduino applications before.
I gave away my 12 volt timing light with the clip-on sensor, many years ago. Would someone do me a favor and measure the resistance between the red and black pins? Just curious about how many turns of wire are in the pickup head.
6v6gt:
Why has a thyristor (BT149) been specified ? Is that the best choice in this application ? Simply that I have not seen these in Arduino applications before.
I have come across many hand held power timing lights that use the SCR input method, and it is very good for noise immunity and a nice sharp negative pulse to trigger the LM555 and keep timing delays to a minimum.
Handheld power T/L usually have an inverter in them to get 400Vdc for the flash tube, this can create a "bit"of noise.
TomGeorge:
I have come across many hand held power timing lights that use the SCR input method, and it is very good for noise immunity and a nice sharp negative pulse to trigger the LM555 and keep timing delays to a minimum.
Handheld power T/L usually have an inverter in them to get 400Vdc for the flash tube, this can create a "bit"of noise.
It looks weird,but it works.
Tom...
OK. Thanks. I think I see it. It is not a typical thyristor application which is switching AC , and naturally unlatches it self in the negative part of the cycle. Here, it is switching DC but unlatches it self after triggering, because the triggering causes the discharge of the capacitor between the anode and cathode and the anode is thus pulled sufficiently low to unlatch.
Edit:
Then I guess the circuit could be simplified to eliminate the 555 monostable and still be "noise tolerant".
Simply connect the point marked IN- to an interrupt pin of the arduino.
The interrupt is triggered on the falling edge and the interrupt service routine counts the pulses and maybe has some "debouncing" logic to ignore triggers which occur within say 2 or 3 mS of the last accepted trigger.
The measurement of RPM would be similar to frequency measurement application.
Some 4 stroke engines have a "idle" spark so a detection occurs on every crankshaft rotation (as is so for 2 strokes). Other 4 stroke engines spark on every second crankshaft rotation.
I built several wireless tachometers a decade or two ago. Dirt simple. 555 timer wired as a monostable, with a trimmable bias on pin 2. A collapsible antenna and some overvoltage protection connected to pin 2. A couple of scales and a switch to change it between 2 cycle and 4 cycle.
The logic SCR looks like a great way to clean up the pulse to feed it to an Arduino. The 555 is acting as a pulse stretcher and hysteresis, I don't think I'd leave it out.
I have the programming aspect down. I'm still VERY new to the hardware and diagrams.
There are 2 companies I found that well pre-made inductive clamps that convert the output to square wave. Cheaper one is $85. If I can make something for a total cost of $25 and learn along the way, that would be great!
I'll order the $13 inductive clamp, NE555, 1N4148 Diode, BT149, resistors and capacitors. Anything I'm missing?
I have the programming aspect down. I'm still VERY new to the hardware and diagrams.
There are 2 companies I found that well pre-made inductive clamps that convert the output to square wave. Cheaper one is $85. If I can make something for a total cost of $25 and learn along the way, that would be great!
I'll order the $13 inductive clamp, NE555, 1N4148 Diode, BT149, resistors and capacitors. Anything I'm missing?
When you use the clamp on the lead, keep it away from hot engine surfaces and try not to drop the clamp, the ferrite material inside is brittle unfortunately.
Some manufacturers would put 5mm rubber strips around the end to protect from any impact, if it is going to be almost permanently on the lead, then wrap it in some heat proof material.
You could also try a large toriodal ferrite ring that will let the cable go thru it and wind about 5 to 10 turns of insulated wire around the ring.
Hexen:
There is one ignition pulse every 2 RPM, it is not as if ignition pulses are completely random.
Not always. Some older engines fire on the compression stroke as well. Before you say phooey, I know because I have one. The pre-made tachometer reads 2X the actual RPM.
adwsystems:
Not always. Some older engines fire on the compression stroke as well. Before you say phooey, I know because I have one. The pre-made tachometer reads 2X the actual RPM.
When emission requirements and ECU were getting into serious operation, the distributor was omitted and a spark coil for each cylinder was adapted, but some manufactures for say a 6cyl 4stroke engine, used three spark coils.
Each of the coils was/is connected to the two cylinders that are mechanically in phase but 4stroke wise 180deg out of phase.
So when the coil fired, one cylinder was about to go to top of compression, the other was about to go to the top of exhaust.
So you basically had 2stroke ignition on a 4stroke motor.
Most engines these days use one coil per cylinder.
Tom...
adwsystems:
Not always. Some older engines fire on the compression stroke as well. Before you say phooey, I know because I have one. The pre-made tachometer reads 2X the actual RPM.
Phooey ? Certainly not from me. Read the end of post #10.
The current flowing in a spark lead is oscilliatory - several pulses of alternating polarity can flow over a few uS. The thyristor/555 cleans this up. Nice idea..
I've measured one of those clamp-on inductive pickups - a couple of hundred ohms. So quite a few turns.
Guys, its a 4 stroke single cylinder engine. No wasted spark. One spark every 2 RPMs.
I'm not new to this, I build race cars and am picking up small cart/bike engines as a hobby.
I just need a way to measure RPM via inductive clamp. Don't dig into it too much.
allanhurst:
The current flowing in a spark lead is oscilliatory - several pulses of alternating polarity can flow over a few uS. The thyristor/555 cleans this up. Nice idea..
I've measured one of those clamp-on inductive pickups - a couple of hundred ohms. So quite a few turns.