calculating ppr for encoder

Discussion in 'General Electronics Chat' started by vijaybala85, Apr 29, 2010.

Jan 7, 2010
92
0
Hi guys,

How do you calculate the right ppr for max. shaft speed of 3,100 rpm. I am using a photoelectric switch to detect number of pulses per revolution. I know I have to look at the response time of the switch as well as the max. speed 3100rpm.

Is this right so far? 3100rpm = 51.67 rps
max. ppr or default ppr of motor controller = 1024 ppr
max. frequency = 51.67*1024 = 52910.08 Hz

Now I am lost. If I choose 8 ppr (because for my application's current ppr is 6) 51.67 rps * 8ppr = 413.36 Hz which is below the encoder speed feedback of the motor controller. I am not sure if this is right but any pointers in the right direction welcome! Thanks!

V

2. kkazem Active Member

Jul 23, 2009
160
31
Hi,
I think you're a bit lost here.
3,100 (Revolutions/minute)*1 (minute/60 sec) = 51.66 revolutions per second. If your encoder has 1024 pulses/revolution, then your Encoder Pulse Rep Rate would be 51.66 (rev/sec)*1024 (pulses/rev) = 52,910 pulses per second for your drive speed of 3,100 revolutions/minute or 51.66 rev/sec, assuming that you have a properly built control system.

By the way, your equations look right to me until the last one or two. Since you have an encoder with 1024 pulses/rev, if you wanted 1 revolution per minute, you would simply need 1024 pulses every minute. If you want 3100 revolutions per minute, you would need 3.1744E+6 pulses per mi minute or 52,910 pulses per second to get a rotational velocity of 3100 revolutions per minute. It isn't rocket science. I think you may be getting lost when it comes to mating the feedback portion (rotary encoder) to the motor drive portion, and there are lots of way's to make this work. If you want constant speed, you'll need to have a stable system, requiring compensation in the feedback loop. This is getting way beyond basics here and into 3rd and 4th year BSEE courses in control systems, analog and digital.

Regards,
Kamran Kazem

Jan 7, 2010
92
0
Thank you for your reply! I get the idea. I just need to put them in equations and finding the value. The max. speed the shaft encoder can go is 3100rpm. My photoelectric switch has a response time of 1ms (getting a faster 300us response time one in a few weeks).

So, 3100rpm = 51.67rps
For 1 revolution = 19.35 ms
My shaft encoder disc is only so small that it can have 5-15 notches or holes in it viz. 5-15 ppr. Assuming I take 8ppr, 1 rev = 8pulses each 19.35/2 = 2.4ms pulse width. Which is within my response time of the switch to detect consequent pulses at max speed. So for slower speeds I need not be too concerned by choosing 8ppr.

V

Jan 7, 2010
92
0
1024 is the default ppr programmed in the motor controller.

5. rjenkins AAC Fanatic!

Nov 6, 2005
1,015
69
Last edited: Apr 30, 2010

Jan 7, 2010
92
0
Thanks rjenkins! Always appreciate your thoughts.

Currently, we use 6 ppr and we are able to make it work. Obviously, with slower speeds, the error is higher than we want but the encoder works nonetheless.

we use a phototransmitter and receiver as the light source on either side of the disc, the beam passing through a notch to read a pulse and read no pulse when blocked. Since more number of pulses per revolution will relate to speed, and even 6 ppr can give us for example 30 rps * 6 =180 pulses per revolution which should be good according to what you said. So, my question is do you think if a photoelectric switch has a response time of 300us, I can add more notches without losing pulses or the pulse wave turning into a ripple wave? Thanks!

V

Jan 7, 2010
92
0
oops.... 30rps * 6 = 180 pulses per second

Jan 7, 2010
92
0
bump!

VJ

Jan 7, 2010
92
0
any help?

10. retched AAC Fanatic!

Dec 5, 2009
5,201
316

Sure. you have 1,000,000 us to read 180 pulses.

at 300us switching time, you will cap out at 3333 per second. And if you give a 300us break after each, you will still be able to switch half that amount, or around 1666. You are around 1 tenth of that, so you should be well in range.