RFrftools.io
Motor

Encoder Resolution Calculator

Calculate encoder counts per revolution, angular resolution, and maximum frequency for quadrature and single-channel encoders.

Loading calculator...

Formula

CPR = PPR × 4 (quadrature), θ = 360°/CPR

PPRPulses per revolution (pulses)
CPRCounts per revolution (×4 for quadrature) (counts)

How It Works

A rotary encoder converts shaft angular position into a digital signal. Incremental encoders output a pulse train (A/B quadrature channels plus an optional Z index pulse) with a fixed number of pulses per revolution (PPR). Quadrature decoding multiplies effective resolution by 4 (one count per edge on both channels), giving counts per revolution (CPR) = 4 × PPR. Position resolution in degrees is 360° / CPR. Absolute encoders output a unique digital word for each shaft position, so no homing is required after power-up.

Worked Example

A 500 PPR quadrature encoder is used with a 20:1 gearbox. The output shaft must be positioned to within 0.1°. Step 1 — Counts per revolution at encoder shaft: CPR = 4 × PPR = 4 × 500 = 2000 counts/rev Step 2 — Angular resolution at encoder shaft: θ_enc = 360° / 2000 = 0.18°/count Step 3 — Angular resolution at gearbox output shaft: θ_out = θ_enc / gear_ratio = 0.18° / 20 = 0.009°/count Step 4 — Required resolution check: 0.009° < 0.1° requirement → the encoder is adequate with 11× margin Step 5 — Maximum pulse frequency at 3000 RPM motor speed: f_max = PPR × RPM / 60 = 500 × 3000 / 60 = 25 000 Hz = 25 kHz Result: A 500 PPR encoder with 4× quadrature decoding satisfies the 0.1° output shaft resolution requirement. Ensure the microcontroller quadrature decoder can handle 25 kHz input pulses at maximum motor speed.

Practical Tips

  • Place the encoder on the load side of a gearbox when absolute position accuracy matters — motor-side placement cannot detect gearbox backlash or compliance errors
  • Use differential line driver outputs (RS-422) rather than single-ended TTL for encoder cables longer than 0.5 m to reject common-mode noise in motor environments
  • Index pulse (Z channel) homing at power-up is essential for incremental encoders — without it, any power interruption loses position reference

Common Mistakes

  • Confusing PPR (pulses per revolution) with CPR (counts per revolution) — a 500 PPR encoder with 4× decoding gives 2000 CPR, not 500
  • Forgetting to account for gearbox backlash — a gearbox with 0.5° output backlash eliminates the benefit of high-resolution encoder placement on the motor shaft
  • Exceeding the maximum encoder input frequency of the microcontroller decoder at high speeds, causing missed counts and position error accumulation

Frequently Asked Questions

Incremental encoders output a relative pulse count from a reference position; they lose position on power-down unless battery-backed or re-homed. Absolute encoders output a unique digital code for each shaft angle, retaining position through power cycles. Absolute encoders cost more but eliminate homing routines.
A quadrature encoder has two output channels (A and B) offset by 90°. By detecting all four edges (rising and falling on both A and B) and comparing the phase relationship between channels, a decoder determines both direction of rotation and increments a counter. This gives 4× the resolution of counting only one channel's rising edges.
Stepper motors in open-loop operation typically provide 200 full steps or 3200 microstepping positions per revolution. An encoder with CPR ≥ 3200 is needed to verify each microstep. In practice, 1000–2000 CPR is adequate for closed-loop stepper control because position is corrected each control cycle regardless of individual step accuracy.

Shop Components

Affiliate links — we may earn a commission at no cost to you.

Stepper Motors (NEMA 17)

NEMA 17 bipolar stepper motors for precision motion

Motor Driver ICs

Integrated stepper and DC motor driver ICs

DC Motors (12 V)

12 V brushed DC motors for general-purpose drive applications

Related Calculators