
adccommunitymod (AutomationDirect) asked a question.
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.
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.
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
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
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.
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
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
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
Created Date: February 03,2010
Created by: davek
That would be great Mr. Brock
Thanks a lot.
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.
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.