CNC Axis Drive Sizing: Ballscrew, Belt, Stepper and Servo
Size CNC axis force, ballscrew or belt torque, reflected inertia, stepper and servo capacity. Check cutting loads, rapids, screw critical speed, buckling and command resolution.
Size a CNC axis drive for both cutting and rapid travel. This CNC stepper motor sizing calculator is for router builders, mill retrofits, machine designers and students who need to connect a planned cut to a realistic motor operating point. It compares a stepper candidate with a servo candidate using the same mechanism, moving mass and motion requirements.
Start with the transmission. Enter the ballscrew lead, or the pitch diameter of a timing-belt pulley or rack pinion. A reduction ratio means motor turns per transmission turn. Include the mass of the table, workpiece, spindle carriage and other moving parts. Set the inclination to 90° for a vertical Z axis, then include guide friction, cable drag and any counterbalance. Preload torque is the running resistance measured at the screw shaft.
Next describe the milling operation: cutter diameter, flutes, spindle speed, axial depth, radial engagement and feed. The material presets provide rough specific cutting-force coefficients. Use tooling-specific data whenever possible, especially for small chips, worn tools or difficult alloys. The calculator integrates chip forces along uniformly helical flutes and integrates a complete tooth-passage period with engagement-adaptive phase sampling. Select a known axis direction or retain the conservative in-plane resultant. The cutting allowance covers uncertainty separately from the motor service factor.
The ballscrew torque calculation includes forward and backdriving efficiency, acceleration of the translating mass, screw or pulley inertia, rotor inertia and reduction losses. The physical reflected inertia is reported separately; efficiency does not change the load-to-motor inertia ratio. The speed chart compares demand throughout the cutting and rapid ranges, so a large holding-torque number alone cannot make a stepper suitable.
For CNC axis motor torque selection, an entered manufacturer pull-out curve is the preferred stepper source. The electrical option calculates a synchronous current-and-voltage envelope from bus voltage, winding resistance, inductance and back EMF, then applies a user-set utilization factor. It remains a planning estimate. The servo comparison checks peak torque, RMS duty torque, maximum speed, overload duration and the entered inertia-ratio limit. Servo torque is constant to base speed and follows constant power above it.
The duty cycle is one cutting stroke, a rapid return and the entered total dwell. Short strokes use triangular velocity profiles. Cutting resistance follows instantaneous feed during acceleration and deceleration, and torque squared is integrated over each phase. The RMS capacity check uses the minimum continuous servo torque over the commanded speed range.
Ballscrew selection also needs critical-speed and compression checks. Enter the actual unsupported spans and end restraints, which can differ for whirling and buckling. The tool also applies the manufacturer's DN and rated-speed limits.
This tool does not predict chatter, cutter deflection, machine stiffness, screw fatigue life, belt tooth strength, backlash or achieved positioning accuracy. Microstep and encoder increments describe commands. Confirm the chosen motor, driver, wiring and mechanism against their published data and test the complete axis. Installation work belongs to a qualified person.
How it is calculated
For peripheral milling, feed per tooth is . Specific cutting force is energy per removed volume in equivalent force/area units. A flute at engagement angle removes chip thickness ; , and . The tool derives the force projections and analytically integrates them along each uniform helix, with phase lag . Climb engagement is , conventional engagement , where . The planar resultant bounds either horizontal-axis projection. The cutting allowance multiplies the absolute selected-axis waveform. One tooth-passage period is partitioned at flute entry, exit, and their helix-shifted events. Local refinement samples both sides of every boundary and the interval interior for peak force; weighted four-point Gauss quadrature in subintervals computes phase averages without missing narrow engagements. Sandvik's milling formulas (attached p. 1) independently give mean power from .
Guide force is , while signed gravity and counterbalance contribute . Add once. The transmission radius is for a ballscrew and half the pulley or pinion pitch diameter otherwise. Motoring torque is plus preload; an overhauling load contributes . Screw/pulley rotational inertia is added at the output shaft, reduction losses follow power direction, then rotor and input-side inertia are accelerated at the motor. THK selection examples, attached pp. 4–6 and 12–13, and Oriental Motor's sizing examples support this separation.
Physical reflected load inertia is , excluding rotor inertia and efficiency. Both candidates are checked at every sampled cutting and rapid speed, including both travel directions and acceleration signs. Cutting force scales with feed along the speed sweep. The separate torque service factor is applied to motor demand.
The electrical stepper estimate maximizes q-axis current inside both the sine-current circle and the steady-state voltage circle: , . In SI, . It includes possible negative d-axis current at the voltage limit. The usable bus fraction is 0.9; a separate utilization input derates this ideal synchronous envelope. Oriental Motor Stepper Technical Manual, chapter 7, pp. 83–89, gives the underlying voltage and torque equations. Entered pull-out points instead use PCHIP interpolation over their measured speed range.
For the servo, continuous and peak torque are constant to base speed and constant-power above it. RMS torque integrates torque squared over each cutting and rapid trapezoidal/triangular phase and dwell. Cutting resistance follows instantaneous feed, including short-stroke peak feed. Each ramp is split where linear-load or output-shaft power changes sign; torque is affine in feed on each segment, so its squared time integral is evaluated exactly. The overload check finds the longest contiguous moving/dwell block whose conservative peak exceeds continuous torque.
For a steel ballscrew, first-mode bending gives . The speed allowance is 0.8 of critical, further limited by DN and the rated drive speed. Euler compression capacity uses THK mounting multipliers 0.25, 1, 2 or 4 and a 0.5 factor; also check the 147 MPa permissible axial stress and entered allowable thrust. Whirling and compression spans/fixity are separate. THK and HIWIN selection guides use these checks.
Assumptions
Uniform, equally spaced, rigid helical flutes and constant effective kc; 90° peripheral side cutting with axial depth no greater than ten cutter diameters. The material presets are Sumitomo's rough planning coefficients, not grade-specific cutting data. Radial/tangential ratio 0.3, axial/tangential ratio 0.2, cutting allowance 1.25, and electrical utilization 0.65 are editable design assumptions.
The screw is a solid steel cylinder for rotating inertia and a root-diameter cylinder for bending and compression: E = 206 GPa, density = 7850 kg/m³. Nut mass belongs in moving mass. Additional input-side coupling/reducer inertia is editable in the stepper specification table and applies to both candidates. Guide normal force includes weight normal to the guide only; add measured drag when cutting reactions or rail preload increase resistance.
The default stepper electrical basis is the 23HS30-2804S revision-1 data; sine-current torque is two-phase holding torque divided by √2 at the same phase-current peak. The default resistance is the maker's 25 °C value: enter the operating-temperature resistance for a hot motor. The inertia-ratio limit of 10 is a planning assumption, not a universal stepper rating. The default servo torque ratings and rotor inertia come from Oriental Motor's NXM620A example; its permitted maximum speed is conservatively capped at the cited 3000 rpm rated speed. The 1 s peak-duration setting, command counts, drive-thrust rating and controller pulse limit are design inputs that must match the actual equipment.
Where it applies
This is axis drive sizing for peripheral milling, not a toolpath, chatter or structural-dynamics simulation. It excludes edge/ploughing forces, runout, variable helix, tool bending, chip recutting, jerk, static breakaway friction, changing cable loads, ballnut life, bearing life, alignment, and belt/rack tooth or pretension design. Resolve both screw spans at every nut position and use the governing case; a nut is not automatically a lateral support. Euler buckling applies to slender steel segments; short shafts need a direct strength check. Ballnuts, supports and recirculation systems can impose lower catalog limits.
The cutting-axis sign conventions belong to the idealized cutter geometry. Absolute force is treated as resisting travel, and the planar resultant is conservative for either horizontal axis. Vertical-axis gravity, counterbalance and motor holding torque are included; brake holding, loss of power, regenerative bus-voltage rise and stopping protection require separate design.
The electrical stepper curve is an estimate, not a measured pull-out curve or a guaranteed motor recommendation. It omits resonance, instability, saturation, iron losses and driver bandwidth. Use the manufacturer's pull-out curve for the exact driver, current, wiring and voltage before selecting hardware. No curve is invented for the entered-data mode: its zero placeholders must be replaced. The servo envelope must likewise match the real motor/drive; its duration screen does not replace a drive I²t/thermal model.
The envelope checks commanded speeds even when a short stroke cannot reach them. Duty RMS scales cutting resistance with instantaneous feed during both ramps and uses the achieved peak feed during cruise. Full nominal ramp resistance is not a conservative assumption on an overhauling axis because cutting can reduce braking torque. The continuous-capacity comparison conservatively uses the lowest servo continuous torque over the commanded speed range. Cutting-force ripple is averaged over spindle phase for heating; peak torque is checked separately.
The default phase target is 720 intervals per full revolution. Identical flutes make the force periodic over one tooth pitch, which is shown in the chart. Engagement events always split the integration domain, with at least 16 Gauss nodes and 16 peak-sampling intervals in every nonzero event interval, however narrow. An additional doubled peak grid and a comparison against kc·MRR trigger a warning if peak refinement exceeds 0.1% or cutting-power error exceeds 0.001%. Increase the advanced resolution until the warning clears. The torque-speed sweep uses at least 401 points and follows the phase target. Axial helix integration and the piecewise-quadratic time integral during feed ramps are analytic; neither uses a depth or time-step mesh. Nominal microstep/encoder increments are command resolution, not positioning accuracy. A reserve above one means only that the modeled check is met.
References
- THK, Ball Screw Selection Examples, B15-69 onward; axial force, whirling, DN, buckling, inertia and RMS sizing: https://tech.thk.com/en/products/pdf/en_b15_069.pdf
- THK, Permissible Axial Load and Permissible Rotational Speed, general ball-screw selection equations, E=206 GPa, 0.5/0.8 factors: https://www.thkstore.com/mwdownloads/download/link/id/113/
- HIWIN, Ballscrew Technical Catalog, buckling, critical speed, drive torque and inertia: https://hiwin.com/wp-content/uploads/2026/08/HIWIN-Ballscrew-Catalog-1.pdf
- Oriental Motor, Selection Example—Ball Screw Mechanism, stepper and servo worked examples: https://www.orientalmotor.co.in/in/tech/calculation/sizing-motor06
- Oriental Motor, Technical Manual—Stepper Motor Edition, chapter 7, voltage/current circles and torque constant: https://www.orientalmotor.eu/system/files/document/tech/technicalmanual_stepping_10e.pdf
- Sandvik Coromant, Formulas and Definitions for Milling—Metric, H79: https://cdn.sandvik.coromant.com/files/sitecollectiondocuments/services/metal-cutting-e-learning/formulas-and-definitions/formulas-and-deinitions-for-milling-metric-enu.pdf
- Sumitomo, Catalogue 2020–2021, Technical Guidance N2, rough specific cutting-force values: https://www.sumitomotool.com/files/Public/downloads/catalogs/Sumitomo_Catalogue_2020-2021_EN.pdf
- StepperOnline, 23HS30-2804S electrical/mechanical specifications, revision 1 (2025): https://www.omc-stepperonline.com/download/23HS30-2804S.pdf
Inputs
| Input | Symbol | Unit | Default |
|---|---|---|---|
| Transmission | drive | Ballscrew | |
| Moving mass | M_load | kg | 40 |
| Axis inclination Positive travel climbs this angle; 90° is a vertical Z axis. | incline | deg | 0 |
| Guide friction coefficient | mu_guide | 0.02 | |
| Seal and cable drag | F_drag | N | 15 |
| Additional positive-travel load Positive opposes uphill travel; use a negative value for a counterbalance. | F_bias | N | 0 |
| Motor turns per drive turn | reduction | 1 | |
| Reduction efficiency Use 1 for a direct coupling. | eta_gear | 0.97 | |
| Forward drive efficiency | eta_drive | 0.9 | |
| Backdrive efficiency Use the reverse efficiency for an overhauling load. | eta_back | 0.85 | |
| Screw lead | lead | mm | 10 |
| Screw outside diameter | d_screw | mm | 20 |
| Screw root diameter | d_root | mm | 17.5 |
| Rotating screw length | L_screw | mm | 800 |
| Whirling support span Check every bearing-to-bearing and nut-to-bearing span; enter the governing span. | L_whirl | mm | 700 |
| Whirling end fixity | whirl_support | Fixed–supported | |
| Compression span Longest compressed segment between the nut and thrust restraint. | L_buckle | mm | 700 |
| Compression end fixity Nut restraint can differ from the whirling support arrangement. | buckle_support | Fixed–fixed | |
| Preload and bearing drag torque Running drag at the screw shaft; add measured seal and bearing torque. | T_pre | N*m | 0.05 |
| Pulley or pinion pitch diameter | d_pitch | mm | 40 |
| Pulley or pinion output inertia Include all rotating parts on the transmission output side. | J_drive | g*cm^2 | 400 |
| Rated usable drive thrust Allowable axial thrust; for belts use net tangential force after pretension. | F_rated | N | 2000 |
| Rated drive speed limit | n_drive_max | rpm | 6000 |
| Workpiece coefficient preset Use Custom for an effective kc from the toolmaker at the actual chip thickness. | material | Aluminum | |
| Cutter diameter | D_tool | mm | 6 |
| Effective flutes | z_teeth | 3 | |
| Spindle speed | n_spindle | rpm | 18000 |
| Cutting feed | v_cut | m/min | 1.8 |
| Axial cutting depth | a_p | mm | 3 |
| Radial engagement | a_e | mm | 2 |
| Helix angle | helix | deg | 30 |
| Milling direction | milling | Climb / down milling | |
| Cutting force component | cut_axis | Conservative in-plane resultant | |
| Radial / tangential force ratio Use measured or tooling data; the default is a planning assumption. | k_radial | 0.3 | |
| Axial / tangential force ratio | k_axial | 0.2 | |
| Cutting load allowance Multiplies the calculated axis force for wear and uncertain cutting data. | K_cut | 1.25 | |
| Rapid feed | v_rapid | m/min | 6 |
| Cutting acceleration | a_cut | m/s^2 | 1 |
| Rapid acceleration | a_rapid | m/s^2 | 2 |
| One-way stroke | stroke | mm | 500 |
| Total dwell per round trip | t_dwell | s | 1 |
| Cutting stroke direction | cut_direction | Positive / uphill | |
| Result candidate | selected | Stepper | |
| Torque service factor | K_torque | 1.5 | |
| Stepper rotor inertia | J_step | g*cm^2 | 300 |
| Stepper electrical specifications | stepper | 23HS30 electrical basis | |
| Stepper torque source | step_curve | Electrical envelope estimate | |
| Driver bus voltage | V_bus | V | 48 |
| Electrical-envelope utilization Planning derating; it cannot predict resonance or replace a measured pull-out curve. | pullout_factor | 0.65 | |
| Entered curve end speed Six points are evenly spaced from zero to this speed; no extrapolation is used. | curve_span | rpm | 1800 |
| Enter six pull-out torques | pullout | Supply manufacturer curve | |
| Servo rotor inertia | J_servo | g*cm^2 | 162 |
| Servo torque and speed specifications | servo | NXM620A rating basis | |
| Servo peak-duration limit Permitted overload duration from the drive data; the check uses the whole moving phase. | t_peak_limit | s | 1 |
| Ball-center pitch diameter | d_ball | mm | 20.75 |
| Manufacturer DN limit Use the maker's DN definition; 70 m/min represents 70,000 mm·rpm. | DN_limit | m/min | 70 |
| Microsteps per full step | microsteps | 16 | |
| Servo command counts per turn Command counts after electronic gearing; encoder counts alone may not set command resolution. | encoder_counts | 10000 | |
| Controller pulse-rate limit | pulse_limit | kHz | 200 |
| Spindle phase intervals | N_phase | 720 |
Results
With the default inputs above, the calc gives:
| Result | Value |
|---|---|
| Candidate comparison | Both candidates meet model |
| Selected governing check | Stepper running torque |
| Peak axis cutting resistance | 82.2 N |
| Peak transmitted thrust | 145 N |
| Selected motor peak design torque | 0.607 N·m |
| Selected motor cycle RMS design torque | 0.22 N·m |
| Required maximum motor speed | 600 1/min |
| Total physical load inertia at motor | 0.0002 kg·m² |
| Selected load-to-rotor inertia ratio | 6.67 |
| Selected minimum sizing reserve | 1.43 |
| Selected nominal command increment | 3.125 um |
| Axis travel per full step | 0.05 mm |
| Transmission feed ceiling | 33,735 mm/min |
| Transmission thrust reserve | 13.79 |
| Cutting-stroke and rapid-return cycle time | 22.75 s |
| Mean ideal cutting power | 144 W |
Checked against sources
Each case below was calculated by this calc and agrees with the value from its source (within the tolerance where one is shown).
THK horizontal transfer axial load
Source: THK Ball Screw Selection Examples, printed B15-72 to B15-73, attached pp. 4–5. 60+20 kg, mu 0.003, drag 15 N, 1 m/s reached in 0.15 s. THK rounds the force to 550 N; the unrounded sum is 550.687 N. Use a 0.2% rounding allowance.
Inputs: Moving mass = 80 kg; Guide friction coefficient = 0.003; Screw lead = 20 mm; Rotating screw length = 1,200 mm; Whirling support span = 1,100 mm; Compression span = 1,100 mm; Rapid feed = 60 m/min; Rapid acceleration = 6.667 m/s²; Axial cutting depth = 0 mm; Rated usable drive thrust = 100,000 N; One-way stroke = 1,000 mm; the others as above.
| Result | Source | This calc |
|---|---|---|
| Worst rapid axial drive force | 550 ± 1.1 N | 550.7 N |
| Motor speed at commanded rapid feed | 3,000 rpm | 3,000 rpm |
THK critical speed, DN and buckling example
Source: THK Ball Screw Selection Examples, printed B15-73 to B15-74, attached pp. 5–6. Root 17.5 mm, span 1100 mm; fixed–supported for whirling, fixed–fixed for compression. Published rounded speed 2180 rpm, DN speed 3370 rpm, buckling 15500 N and stress limit 35500 N. This implementation uses the unrounded beam equations with E=206 GPa and rho=7850 kg/m³. The source's rounded axial coefficient 116 N/mm² is 0.48% above 147π/4; a 200 N tolerance retains the exact stated 147 MPa stress model.
Inputs: Moving mass = 80 kg; Guide friction coefficient = 0.003; Screw lead = 20 mm; Rotating screw length = 1,200 mm; Whirling support span = 1,100 mm; Compression span = 1,100 mm; Rapid feed = 60 m/min; Rapid acceleration = 6.667 m/s²; Axial cutting depth = 0 mm; Rated usable drive thrust = 100,000 N; One-way stroke = 1,000 mm; the others as above.
| Result | Source | This calc |
|---|---|---|
| Screw speed allowance with 0.8 factor | 2,180 ± 6.54 rpm | 2,182 rpm |
| Ball recirculation speed allowance | 3,370 ± 6.74 rpm | 3,373 rpm |
| Permissible buckling load with 0.5 factor | 15,500 ± 46.5 N | 15,472 N |
| Permissible shaft axial load | 35,500 ± 200 N | 35,358 N |
Oriental Motor stepper torque and inertia
Source: Oriental Motor, Selection Example—Ball Screw Mechanism, αSTEP/Stepper sections (1), (4), (6). Published TL=0.0567 Nm, JB=0.236×10^-4 kg m², Jr=2.28×10^-4 kg m², JL=2.52×10^-4 kg m² and JL/J0≈6.8. https://www.orientalmotor.co.in/in/tech/calculation/sizing-motor06 . Published density is 7900 versus this steel model's 7850 kg/m³; the 1% inertia tolerance includes the 0.63% density difference. Acceleration torque is not forced to the source's value, which omits the extra motoring loss on accelerating translating mass.
Inputs: Guide friction coefficient = 0.05; Seal and cable drag = 0 N; Reduction efficiency = 1; Screw lead = 15 mm; Screw outside diameter = 15 mm; Screw root diameter = 13 mm; Rotating screw length = 600 mm; Whirling support span = 550 mm; Compression span = 550 mm; Preload and bearing drag torque = 0.004677 N·m; Rapid feed = 18 m/min; Rapid acceleration = 1.5 m/s²; Axial cutting depth = 0 mm; One-way stroke = 180 mm; Stepper rotor inertia = 370 g·cm²; Torque service factor = 2; the others as above.
| Result | Source | This calc |
|---|---|---|
| Positive steady motor torque without cutting | 0.0567 ± 1.701 × 10⁻⁴ N·m | 0.0567 N·m |
| Solid-cylinder screw polar mass inertia | 2.36 × 10⁻⁵ ± 2.36 × 10⁻⁷ kg·m² | 2.341 × 10⁻⁵ kg·m² |
| Moving mass reflected to the motor | 2.28 × 10⁻⁴ ± 4.56 × 10⁻⁷ kg·m² | 2.28 × 10⁻⁴ kg·m² |
| Total physical load inertia at motor | 2.52 × 10⁻⁴ ± 1.26 × 10⁻⁶ kg·m² | 2.514 × 10⁻⁴ kg·m² |
| Stepper load-to-rotor inertia ratio | 6.8 ± 0.034 | 6.794 |
| Motor speed at commanded rapid feed | 1,200 rpm | 1,200 rpm |
Oriental Motor servo mechanism load and inertia
Source: Oriental Motor, Selection Example—Ball Screw Mechanism, For Servo Motors (1), (4), (5). 100 kg, guide mu 0.04, drag 29.4 N, 25 mm × 1000 mm screw, 10 mm lead: rounded TL≈0.13 Nm and JL=5.56×10^-4 kg m². https://www.orientalmotor.co.in/in/tech/calculation/sizing-motor06 . TL evaluates to 0.1323 Nm before the source's two-decimal rounding. Inertia tolerances allow source density 7900 versus fixed steel density 7850 kg/m³.
Inputs: Moving mass = 100 kg; Guide friction coefficient = 0.04; Seal and cable drag = 29.4 N; Reduction efficiency = 1; Screw outside diameter = 25 mm; Screw root diameter = 22 mm; Rotating screw length = 1,000 mm; Whirling support span = 900 mm; Compression span = 900 mm; Preload and bearing drag torque = 0.01093 N·m; Rapid feed = 12 m/min; Axial cutting depth = 0 mm; the others as above.
| Result | Source | This calc |
|---|---|---|
| Positive steady motor torque without cutting | 0.13 ± 0.00325 N·m | 0.1323 N·m |
| Solid-cylinder screw polar mass inertia | 3.03 × 10⁻⁴ ± 3.03 × 10⁻⁶ kg·m² | 3.01 × 10⁻⁴ kg·m² |
| Moving mass reflected to the motor | 2.53 × 10⁻⁴ ± 5.06 × 10⁻⁷ kg·m² | 2.533 × 10⁻⁴ kg·m² |
| Total physical load inertia at motor | 5.56 × 10⁻⁴ ± 2.78 × 10⁻⁶ kg·m² | 5.543 × 10⁻⁴ kg·m² |
| Motor speed at commanded rapid feed | 1,200 rpm | 1,200 rpm |

Responses