07-04-2013 01:02 PM
Hi,
I have calculate the RPM of the gearbox from the encoder output. The encoder output is non periodic analog output. Suggest me the best method to calculate RPM.
Pls find the attached analog out from the encoder and it was captured from oscilloscope.
Thanks,
Mallikarjuna
07-04-2013 01:06 PM
attachment added
07-04-2013 01:11 PM
encoder op
07-04-2013 01:44 PM
From the picture, you have two large pulses, and two small pulses. Is this a single rotation? Does the rising edge of each of the four pulses represent a particular angular position of the shaft?
One approach might be to simply count the number of pulses / minute and divide by 4 - this would give you RPM. If you counted the number per second, it would be cycles per second (CPS) which you can convert to RPM by multiplying by 60.
Hope this helps.
07-04-2013 10:43 PM
Hi,
The encoder output gives the 16 pulses (8 Large Pulses and 8 Small Pulses) / rotation. Iam tried to count it from NI 6008 but pulses are not counted.The 4 pulses indicate the one aliquot of the encoder and interns 1/4 rotation of the motor( 4 aliquots = 1 rotation).
Pls suggest me the best method and supported NI devices. Also i want to measure 10 such measurements at a time.
Thnaks
Mallikrajuna
07-05-2013
12:00 AM
- last edited on
04-21-2025
04:17 PM
by
Content Cleaner
Hi,
I'm not able to see the picture attached... Its broken for me
Well for measurement of encoder output, counters are always preferable. But for 10 such signals, analog measurement would be suggested.
Check this link for using analog channels for measurement of pulses.
07-05-2013 02:44 AM
Hi See the wf.pdf 2nd attachment
07-05-2013 03:27 AM
Hi Swamy,
Iam tried to count it from NI 6008 but pulses are not counted. ... Pls suggest me the best method and supported NI devices. Also i want to measure 10 such measurements at a time.
1. How did you try to count the pulses? Can you show your VI?
2. The USB6008 only has one counter (?) available - but that counter works nicely for such tasks...
3. Using the USB6008's digital inputs will not work probably as you are limited to software-timing with max ~100Hz. You will miss pulses for higher speeds...
4. Call NI directly and ask them for devices capable of providing 10 counters. I would suggest a cRIO with a DIO module for 32 inputs. Then use the FPGA to count the pulses...
07-05-2013 07:56 AM
Idealy a counter/timer channel would be used to measure this but it can be done using an analog in and some post processing.
Attatched is a VI that should do most the work for you. Run the VI, then choose the physical channel where the signal is being wired to. Then click Start. It should take 5000 samples/second in the analog in, then look at it every 500ms (so 2500 samples at a time). It will look for places where the signal was low and now is high indicating a pulse. The threshold at the moment is set to 1V so anything lower is a low, and any thing higher is a high. Then it gets the number of revolutions, and from that RPM.
This hasn't been tested well and is likely to have bugs but should get you started.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
17 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
07-08-2013 03:49 AM
Hello,
Thanks for the VI ,it working good. But if i change the sampling frequency the rpm values also chages.hoe to fix this.?
Thanks,
Mallikarjuna