adccommunitymod (AutomationDirect) asked a question.

RPM calculation

Created Date: January 30,2010

Created By: davek

**** This post has been imported from our legacy forum. Information in this post may be outdated and links contained in the post may no longer work.****

I am trying to come up with a method for calculating the rpm of a shaft that is moving just below and above 1800 rpm. My problem is that I only have one flag for the inductive sensor and an encoder is not very practical for the application. Because of this the resolution I currently have is only in 60 rpm increments. Is there a way to measure the time between pickups and use a reciprocal value in an equation to calculate the speed more accurately? I'm using a DL-06 for this application.


  • adccommunitymod (AutomationDirect)

    Created Date: January 30,2010

    Created by: bcarlton

    If you have a free slot try using the H0-CTRIO. It has its own processor and should be able to distinguish finer increments. Otherwise, just using the high speed inputs you aren't going to get much better.

  • adccommunitymod (AutomationDirect)

    Created Date: January 31,2010

    Created by: bgirouard

    Crude Encoder?

    If you cannot put a formal encoder, perhaps you could put a crude version of one? I was thinking of a photoelectric sensor with multiple flags about the diameter. You would get better resolution with something like that.

    Of course, I have absolutely no idea of the applications's specifics and details, but just my $.02

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: January 31,2010

    Created by: bfitz

    How fast do you need your updates? You could try counting pulses for something like 60 seconds and update the speed register every minute. If you didn't miss any counts, it would be better resolution than what you have now. You would likely have to wire your input to one of the high speed inputs and setup an interrupt to increment a counter.

    Brian

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: February 01,2010

    Created by: allukes

    At 1800 RPM, the pulses comes every 33 ms. If you can sample at 1 minute and your scan time is less than 33ms, you should be able to get +/- 1 RPM using the built in High Speed Counter. Lower the sample time and your error will proportionallly increase. However, the high speed counter inputs can count pulses at 7 khz. If you can add 3 or more flags to your shaft sensor at equal spacings, then the error will decrease.

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: February 02,2010

    Created by: twbrock

    Try this formula

    V2100 = Theta (1 to 99) 99 works best

    V2110 = New speed

    V2114 = Avg speed

    ((V2114*V2100)+((K100-V2100)*V2110))/K100=New Avg speed

    Add 1% to get speed

    I use the scan time V7775 to get time in mS between pulse one per revolution.

    I have checked this against a handheld tack and its +or- 1RPM at all speeds

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: February 03,2010

    Created by: davek

    This seems kind of like what I had in mind but I'm not quite sure how your putting it together. How is the V7775 scan time incorporated into the ladder logic. Do you have an example of what this program looks like?

    I'm new to these Koyo units and still trying to get accustomed to memory layout.

    Dave

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: February 03,2010

    Created by: twbrock

    Yes I will put the speed part of one of my programs into a small form and post here ASAP

    TW Brock

  • adccommunitymod (AutomationDirect)

    Created Date: February 03,2010

    Created by: davek

    That would be great Mr. Brock

    Thanks a lot.

  • adccommunitymod (AutomationDirect)

    Created Date: February 04,2010

    Created by: twbrock

    Dave:

    I have attached a zip file with the program its only 9 lines

    You can change the Vmem locations if you wish I just picked V2000 to start. I think there is enough documentation if not just ask.

  • adccommunitymod (AutomationDirect)

    Created Date: January 30,2010

    Created by: davek

    I am trying to come up with a method for calculating the rpm of a shaft that is moving just below and above 1800 rpm. My problem is that I only have one flag for the inductive sensor and an encoder is not very practical for the application. Because of this the resolution I currently have is only in 60 rpm increments.

    Is there a way to measure the time between pickups and use a reciprocal value in an equation to calculate the speed more accurately? I'm using a DL-06 for this application.

    Expand Post