Beta. These calculators are in beta. We work to make them right — every formula is written out under “Show the math” and the results are checked against published catalogue examples — but we take no responsibility for mistakes or for decisions made on them. Check the math, and check your supplier's data, before you order anything. Found a problem with a calculation? Write to [email protected] — say which calculator and what you entered.

How do I size a servo for a roll feeder?

The pinch rolls feed strip one length at a time. The motor sees the strip's mass as inertia through the roll radius, both rolls' own inertia, and the constant pulls on the strip — the back tension from the uncoiler and the drag the strip pulls through the press — through the roll radius and the efficiency. With a real back tension the feed rarely regenerates: the strip cannot push.

What you need

The math: Move time on a trapezoidal profileopen — every formula, so anyone can check it

A point-to-point move accelerates at a, runs at the top speed vmax, and decelerates at d. The area under the velocity–time profile is the distance s.

s_accel = v_max² / (2·a)         distance the acceleration uses
s_decel = v_max² / (2·d)         distance the deceleration uses

if s_accel + s_decel ≤ s   (trapezoid — the top speed is reached)
    t_accel  = v_max / a
    t_cruise = (s − s_accel − s_decel) / v_max
    t_decel  = v_max / d
else                        (triangle — the acceleration runs straight into the deceleration)
    v_peak   = √( 2·s·a·d / (a + d) )
    t_accel  = v_peak / a,   t_cruise = 0,   t_decel = v_peak / d

t_total = t_accel + t_cruise + t_decel

The inverse — the time is given, what speed and acceleration does it need? — splits the time into acceleration, cruise and deceleration by two fractions and reads the peak speed off the area:

t_accel = f_accel·t_total,   t_decel = f_decel·t_total,   t_cruise = the rest
v_peak  = s / (t_accel/2 + t_cruise + t_decel/2)
a = v_peak / t_accel,   d = v_peak / t_decel

Worked example. 100 mm at 0.5 m/s with 3.5 m/s²: accelerating and decelerating need 35.7 mm each, so the move is a trapezoid — 0.143 s accelerating, 0.057 s cruise, 0.143 s decelerating, 0.343 s in all. Halve the distance and it turns triangular, peaking at 0.418 m/s in 0.239 s.

On the cyclogram this whole move — all three phases — is the bar's ramp-up (the stroke out); the body is the stay at the end position, and the ramp-down is the move back. A bar is travel over time, not speed.

Package motion-time (calcpkg/1, open format) — pure functions with tests; the browser version is held against it number for number.

The math: Roll feeder — the strip and the rolls reflected to the motor shaftopen — every formula, so anyone can check it
K = π·D / i,   n_motor = v / K · 60,   α_motor = a / K · 2π
c = D / (2 · η · η_trans · i)
T_static = [ F_tension + μ_press·F_press + F_ext ] · c      back tension, drag through the press
J_load  = m_strip·(D/2)² / i²                              the strip mass in motion
J_mech  = (J_roll_drive + J_roll_driven) / i²              both rolls turn at the roll speed
T_accel = J_load·α/η + J_mech·α/η + J_trans·α/η_t + J_rotor·α + T_static
T_decel = T_static − ( (J_load + J_mech)·α_d·η + J_trans·α_d·η_t + J_rotor·α_d )

With a real back tension the deceleration torque usually stays positive: the strip cannot push, so the tension keeps braking the feed. No slip between roll and strip is assumed — the feed force must stay below μ·F_pinch, which is a roll-design check, not a motor one.

Package mech-roll-feeder (calcpkg/1, open format) — pure functions with tests; the browser version is held against it number for number.

The math: Motor check — can this motor make this move?open — every formula, so anyone can check it
T_rms = √( Σ T_i²·t_i / (Σ t_i + t_dwell) )        heating torque over the cycle
duty  = Σ t_i / (Σ t_i + t_dwell)
ratio = J_load_reflected / J_rotor

servo    T_peak ≤ T_peak,motor      T_rms ≤ T_rated      n ≤ n_rated (up to n_max: warning, torque derates)
         inertia ratio ≤ 10 fine, 10–30 warns, > 30 fails (gear it down by i ≈ √(ratio/10))

stepper  f = n/60 · 360/step angle                 full steps per second
         T_peak · safety factor (2) ≤ pull-out torque at f (linear interpolation of the curve)
         an unramped move must start with f ≤ f_self-start
         inertia ratio ≤ 5 direct, ≤ 10 geared (warn);  duty > 50 % warns;  n > 1000 rpm: consider closed loop

dc       n_motor = n·i,   T_motor = T / (i·η)
         T_available = T_stall · (1 − n_motor/n0)      the straight torque–speed line
         T_motor · 1.3 ≤ T_available,   n_motor < n0,   T_rms,motor ≤ ½·T_stall (thermal)
         short of torque → i ≈ n0 / (2·n) puts the motor at its maximum-power point

Checked against Oriental Motor's AZM66AC selection example: required torque with the safety factor and the inertia ratio reproduced within 1 %.

Package motor-move-check (calcpkg/1, open format) — pure functions with tests; the browser version is held against it number for number.

Questions people ask

Which strip mass do I enter?

The length that accelerates with the feed — from the last free loop to the press. The loop decouples the coil's inertia from the feed.

What is the press friction force?

The strip is pressed by guides or a straightener with a normal force; the drag is that force times its friction coefficient, entered separately so you can see its share of the torque.