calculating ppr for encoder

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

  1. vijaybala85

    Thread Starter Member

    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
    26
    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.

    If you have more specific questions, reply and I'll answer them.

    Regards,
    Kamran Kazem
     
  3. vijaybala85

    Thread Starter Member

    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.

    ??? Comments???

    V
     
  4. vijaybala85

    Thread Starter Member

    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
  6. vijaybala85

    Thread Starter Member

    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
     
  7. vijaybala85

    Thread Starter Member

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

    Thread Starter Member

    Jan 7, 2010
    92
    0
    bump! :)

    VJ
     
  9. vijaybala85

    Thread Starter Member

    Jan 7, 2010
    92
    0
    any help? :)
     
  10. retched

    AAC Fanatic!

    Dec 5, 2009
    5,201
    312

    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.
     
  11. vijaybala85

    Thread Starter Member

    Jan 7, 2010
    92
    0
    Thank you wretched with an R and not Wr :)
     
Loading...