LM2907 - tachometer for high speed RPM measurement

Thread Starter

daniel.struwig

Joined Dec 2, 2011
6
Hi
I was wondering if someone could give me advice with a part of my project.

I require the measurement of rotational speed of a centrifugal compressor. The maximum speed is in the order of 150 000 RPM (2.5kHz). I measure the RPM with an OPB732 refelctive switch from the shaft at the inlet of the compressor. This would typically give a square wave ranging (gnd - Vcc). I then do some signal conditioning with a schmitt trigger and non-inverting opamp to get a nice clean square wave (gnd - Vcc). From here I would like convert the measured frequency to a voltage (0 - 2.5kHz = 0 - 10V).

  • Will the LM2907 be able to operate at such a high frequency?
  • Also the LM2907 must operate with the following characteristic in order of highest to lowest importance:

  1. Linearity
  2. Ripple
  3. Response time
 

praondevou

Joined Jul 9, 2011
2,942
Yes, it should definitely work up to 2.5kHz.

"Non-linearity is at most +-1% deviation (typ 0.3%) at 5kHz from a straight line defined by Vout at 1kHz and 5kHz. See note 5 in the datasheet. What's the linearity you need?
 

SgtWookie

Joined Jul 17, 2007
22,230
Why don't you post the circuit you have now?

.png format images are preferred. Click the "Go Advanced" button near the bottom of the page, then "Manage Attachments" - it's more or less self-explanatory from there.

You can use a high-speed comparator with some hysteresis to generate a very clean square wave; comparators are faster than opamps in open loop, as comparators are not compensated.
 

Thread Starter

daniel.struwig

Joined Dec 2, 2011
6
To praondevou and Sgt Wookie

Thankyou for both for your speedy reply. Just to give some background on my project / MScEng Thesis. I'm building a cetrifugal compressor test bench for micro gas turbine (MGT's) applications. The test bench will typically be used for the performance testing of centrifugal compressors that are used in MGT's. So the test runs will typically last anywhere from 10 - 20min at RPM's ranging from 80,000 - 150,000, also depending on the high pressure air supply.

praondevou
To answer your question I would require good linearity at higer RPM's. I'm not quite sure what you mean by "What's the linearity you need?" I guess the relationship between measured frequency and output voltage should be as linear as possible. Say 250Hz/V for a freq range of 0 - 2.5kHz and output voltage of 0 - 10V.

Sgt Wookie
I have not yet drawn up a schematic digitally but only on paper . I will do this ASAP and post my circuit for you to have a look. Subsequently, I followed your discussion with StealthRT from a few of years back and I was very impressed on how dilligently you helped him with his project.
 

praondevou

Joined Jul 9, 2011
2,942
Note 5 of THIS datasheet says that the deviation from a straight line from 1kHz to 10kHz, measured at 5kHz could be as much as +- 1%.
So it's not really defined at 2.5kHz.

I never worked with this IC but if we assume that the non-linearity is in worst case always +-1% halfway of the maximum configured frequency then if at 0Hz you have 0V output voltage and at 2.5kHz 10V output voltage, then the max deviation would be at 1.25kHz.
+-1% of 1.25kHz is 12.5Hz maximum error. Question is if this is acceptable.
 

Thread Starter

daniel.struwig

Joined Dec 2, 2011
6
Hey praondevou

You are fast... Well if +-1% of 1.25kHz equates to 12.5Hz which in effect translates to an RPM linearity error of 750RPM at most... Mmmmm it could be a bit much, but it will have to do. I intend to use 4 of these configurations and taking the average.

As with all fluid dynamic pressure and temperature measurements it is common practice to take the avg of 4 sensor measurements at a single station. I would then also incorporate this linearity error in my calculations.

Thanx
 

Thread Starter

daniel.struwig

Joined Dec 2, 2011
6
I have one more question...

How do you determine the value for I2 and C2. Would this be an iterative procedure. The way I see is that I2 = I3 and that from the datasheet a ripple voltage has to be chosen from which C2 is calculated... Or this could be done in reverse. Choosse a C2 and see what the ripple voltage but also bearing in mind the time repsonse of your circuit. In my case this is the least important priority as my testing is at steady state conditions where the RPM speed needs to stay constant for an extended period of time.
 

THE_RB

Joined Feb 11, 2008
5,438
...
Thankyou for both for your speedy reply. Just to give some background on my project / MScEng Thesis. I'm building a cetrifugal compressor test bench for micro gas turbine (MGT's) applications. The test bench will typically be used for the performance testing of centrifugal compressors that are used in MGT's. So the test runs will typically last anywhere from 10 - 20min at RPM's ranging from 80,000 - 150,000, also depending on the high pressure air supply.
...
In my opinion it seems silly to mess with building an analogue tachometer. If you just need an instrument you can buy a digital tacho from many sources that will display RPM perfectly in good digital resolution.

If you need a special application (like something will use the real time data) then it would be best to go digital, any cheap microcontroller with a xtal can measure the tacho frequency with very high precision and even add averaging etc to increase precision further.

The micro can send digital data to PC as serial to allow RPM logging, this is far superior to the analogue system.
 

SgtWookie

Joined Jul 17, 2007
22,230
I suggest that you will be better off using a microcontroller to count the pulses, and calculate the RPM periodically from the pulses.

[eta]
I thought that I posted this earlier today, but for some reason it didn't go.
 

Thread Starter

daniel.struwig

Joined Dec 2, 2011
6
Thank you THE_RB and SgtWookie for your advice. Yes you are both correct and I have considered using a micro controller, specifically an Arduino.

My current data acquisition setup is as follows. I'm using a National Instruments LabVIEW software and cRIO 9073 controller to measure pressure and temperature with a 0 - 10V input module (NI9207) and thermocouple module (NI9213). The reason that I want to convert the freq to a linear voltage is so that it may be used with the cRIO and therefore display the RPM on my GUI.
 

THE_RB

Joined Feb 11, 2008
5,438
I think Labview can display RPM based on the incoming digital squarewave frequency?

In that case, just run the squarewave directly into a spare analogue channel of the cRIO controller, and get Labview to decode the squarewave frequency to RPM.

Assuming your analogue sampling rate is at least a few times higher than your tacho max frequency of 2.5kHz then it should work fine. :)
 

Thread Starter

daniel.struwig

Joined Dec 2, 2011
6
Hi THE_RB

Yes you are entirely correct on that one. The input module that im using is unfortunately nowhere near fast enough to sample at > 2.5kHz. There are faster modules available but at a high price, which brings me to my second point, financial constraint. I have to do this at a minimal cost. That is why I'm vying for the cheaper analogue option... I have done some calculations for my LM2907 application and came up with these values.

R1 = 55k ohm
C1 = 6n F
C2 = 470n F

Here is the design methodology that I used:
1.Vcc = 12V.
2.Choose fin_max and Vout_max (2.5kHz and 10V respectively).
3.Calculate tau = R1C1 (333uS)
4.Calculate / read off I2 from page 6 of LM2907 datasheet (+-185uA)
5.Choose R1 according to:
R1 > V3max/I3max with (V3max = Vout_max, I3max = I2)
6.Calculate C1 using given formula
7.Choose C2 for a given Vripple (I didn't know what would be acceptable here so I chose C2 = 470nF which gave a Vripple = 76.6mV.

Any comments?

Thanx
DS
 
Top