I am trying to build a arduino tachometer (0rpm-6000rpm = 0Hz-200Hz) for a two stroke engine using the pickup sensors as input. I want to use the arduino interrupt to measure the time between two rising after cleaning the signal to a square wave.
Here is attached the signal I get from the pickup sensor.
I’ve already tried using a schmitt trigger with and RC filter and diode and it works but only around the max speed at 6000rpm. At low speed, the voltage peak from the sensor is too low and the schmitt hysteresis doesn’t see it so I get 0rpm.
Maybe could i measure the negative peaks instead ?
What would be the best way to filter it correctly and get a nice square signal ?
Thanks in advance for your inputs.