PortDock

Encoder Pulses ↔ RPM Calculator

Encoder PPR and ×1/×2/×4 decoding → output frequency and count rate, rpm from counted pulses, max rpm from response frequency, angle per count.

Results
Output frequency per channel
Count rate (with decoding)
Counts per revolution
Angle per count
Travel per count
Speed from the counted pulses
Max rpm from the response frequency

The defaults (1000 PPR, ×4, 1800 rpm, 12,000 counts in 100 ms, 100 kHz) are an example. Take PPR and maximum response frequency from the encoder datasheet and the counter input limit from the PLC or counter manual.

Results update as you type. Everything runs in your browser; nothing you type is sent anywhere.

Formulas

  • Output frequency per channel f (Hz) = rpm × PPR ÷ 60
  • Count rate = f × decoding, counts per revolution = PPR × decoding
  • rpm = counts ÷ (PPR × decoding) ÷ counting time (s) × 60
  • Max rpm = max response frequency × 60 ÷ PPR
  • Angle per count = 360° ÷ (PPR × decoding), travel per count = travel per revolution ÷ (PPR × decoding)

Decoding (×1, ×2, ×4)

  • An incremental encoder's A and B channels are pulse trains 90° apart. Counting only rising edges of one channel gives PPR counts per revolution (×1); both edges of that channel give twice as many; all edges of both channels give four times. Whether B leads or lags A gives the direction.
  • Higher decoding improves resolution but raises the edge rate the counter must handle. PLC and counter manuals differ on whether their «maximum input frequency» means per-channel frequency or the decoded count rate — check which.

Max response frequency and max rpm

An encoder datasheet's «maximum response frequency» is the pulse frequency its output can follow. Higher PPR means a higher frequency at the same rpm, so compare max rpm = max response frequency × 60 ÷ PPR with the mechanical speed limit and stay under the lower one. Check the receiving side (PLC high-speed counter, drive PG card…) the same way.

Output frequency per channel by PPR (kHz)

PPR1000 rpm1800 rpm3000 rpm6000 rpm
1001.6673510
360610.81836
5008.333152550
100016.6673050100
102417.06730.7251.2102.4
204834.13361.44102.4204.8
250041.66775125250
500083.333150250500

Two ways to measure rpm

  • Counting pulses in a fixed time (this calculator's «counted pulses»): fewer counts arrive at low speed, so one count is a large error — e.g. 1000 PPR ×4 over 100 ms, one count = 0.15 rpm.
  • Timing the interval between pulses suits low speeds and struggles at high speeds. The counter or drive manual says which method it uses.

FAQ

What frequency is a 1000 PPR encoder at 1800 rpm?

Each channel outputs 1800 × 1000 ÷ 60 = 30 kHz. With ×4 decoding the count rate is 120,000 counts per second.

Are PPR and CPR different?

PPR is usually pulses per revolution on one channel; CPR (counts) often means counts per revolution after decoding. Vendors use the terms differently, so check the datasheet definition.

What about absolute encoders?

An n-bit absolute encoder divides one turn into 2^n positions (17 bits = 131,072). If the output is Gray code, convert it to binary first.

Can I get speed from the drive frequency?

Synchronous speed is 120 × f ÷ poles, but the real speed is lower by the slip. For the true speed use an encoder — see the VFD frequency ↔ rpm calculator.

For drive frequency and motor speed, use VFD Frequency ↔ Motor RPM. To convert Gray code output to binary, use the Integer & Base Converter.

Basis

Everything is computed from definitions (1 minute = 60 s, one turn = 360°). Enter the maximum response frequency, mechanical speed limit and counter input limit from your products' datasheets.