Need help with Variable Reluctance interface circuit

Thread Starter

n4mwd

Joined Mar 21, 2016
50
I have been trying to design an interface circuit for my Ninja motorcycle to be able to condition the impulses from the variable reluctance sensor located near the flywheel. There are several VR chips out there, but none of them will work properly with the Ninja's unique tooth pattern. Because its a high RFI environment, the only acceptable solution is to use a balanced input as opposed to a grounded input. The MAX9924 is the only chip with a balanced input, but unfortunately is incompatible with the Ninja's irregularly sized teeth. I decided to roll my own, but I'm definitely a novice when it comes to analog circuitry.

I have attached what I have so far. The main idea is to convert the balanced output from the VR sensor into a 0-3.3V analog input to an ADC. The CPU will handle all issues with thresholds and such. However, the CPU needs to know when the tooth starts and when it ends, because the different sized teeth mean different things. So a zero crossing detector is useless.

The problems that I am aware of are that the voltage differential can swing from 100mV to 100V. I attempt to handle the problem with back to back zener diodes, but I am concerned that this is still too high a voltage since I am powering the input op amp with a +/-5V power rail. Also, the BAT70 diodes were copied from another circuit. I'm not sure they are even appropriate to a balanced input.

The circuit is powered by the 12V battery, but during cranking, the power can drop to 7 volts which is why everything must operate at 7 volts.

One last little caveat is that the Ninja is a very high RPM engine. The crank makes a complete revolution about once ever 3mS. This translates to a minimum sample rate of 120Ksps.

I would appreciate any comments or constructive criticism from any op amp experts who would be willing to look it over.

Thanks in advance.
 

Attachments

Alec_t

Joined Sep 17, 2013
12,799
Looks ok, providing your opamp ±5V supply rails can track the battery voltage drop.
I'm surprised, though, that zero-crossing detection is ruled out, since even with the tooth width varying it is surely the pulse timing, rather than amplitude, which is significant?
 

Thread Starter

n4mwd

Joined Mar 21, 2016
50
Thanks for looking at it.

There is a buck regulator (not shown) that takes the raw 12V battery input, which can vary from 7V to 15V or even 20V if there is a fault, and converts it to a stable 5V. A second converter generates the -5V for the OPA197. Because of this, the power rails on the OPA197 should be stable.

The zero crossing takes place somewhere in the middle of a tooth. Its not precise. So it wont tell you how long the tooth is or its position. On the Ninja, different sized teeth mean different things. One tooth, for example, is 1/8th the circumference of the flywheel, others are 1/64th. So the only way I know of to accurately detect the teeth is to detect the start of the tooth (positive pulse) and then the end of the tooth (negative pulse).

Ideally the circuit would have comparators and flip flops to effectively reproduce the tooth train as a TTL input to the CPU, but to do that would mean a lot of extra chips. The cpu has enough horsepower to do all of that internally which saves me a lot of circuitry.

As for the circuit itself, I was wondering if the BAS70 diode clamps were really necessary? These were copied from another circuit. Also, the OPA197 says it supports a 36 volt differential, but I'm wondering if that is true when the voltage rail is only +/-5V. Are 30V zeners the right thing, or should I clamp it at 10V?

Lastly, the inputs have two resistors in series. Seems kindof odd to do it this way. Again, I copied this from another circuit. Is there a reason they are like that?

Thanks.
 

Alec_t

Joined Sep 17, 2013
12,799
Also, the OPA197 says it supports a 36 volt differential, but I'm wondering if that is true when the voltage rail is only +/-5V.
I think the 36V diff figure applies when the voltage between the power rails is also 36V. (Check the datasheet).
The BAS70 diode clamps will restrict the differential input to 10V + two diode drops. More importantly, they won't let either input go more than a diode drop beyond either power rail. Arguably, the zeners are redundant.
 

Thread Starter

n4mwd

Joined Mar 21, 2016
50
Thanks. I looked at it again. In this configuration, it looks like the BAS70's would clamp the input to ground as opposed to -5V. This could be remedied by connecting the BAS70's to -5V instead of GND. I'm wondering why the zeners aren't good enough by themselves since the main thing here is to clamp the differential voltage. The VR sensor isn't grounded so other than the differential, there is no ground reference.
 
Top