RCI 020 · Public test protocol

Three test boundaries. Three positions. Five recorded cycles.

RCI-BLM-1 turns an undocumented “backlash” number into a complete torque–angle hysteresis record: exact hardware state, external flange angle, measured output torque, temperature, repeated reversals, uncertainty and raw samples.

Published 2026-08-1016 min readProtocol v0.1.0 · Public draft
3separate test boundaries
3positions per unit
5recorded cycles per position
3units before a model-level statement

The direct answer

How should backlash or lost motion be measured on a robot joint actuator? Lock or hold the input using one explicitly named hardware boundary, apply a calibrated bidirectional output-torque triangle from −10% to +10% of an exact continuous or rated output-torque reference, and measure the external output-flange angle. Run three preconditioning cycles and five recorded cycles at three output positions while keeping temperature, brake, servo and compensation states fixed.

What should be reported? Publish the full synchronized torque–angle samples, the zero-torque branch gap H0, the RCI low-torque branch gap LM4 at equal ±4% rated torque, cycle variation, position variation and expanded uncertainty. A precise result is not reportable when expanded uncertainty exceeds 20% of the metric.

Protocol status

RCI-BLM-1 v0.1.0 is a public draft ready for laboratory and inter-laboratory review. Machine status: public-draft-lab-validation-required. It is not an ISO standard, has not completed a physical round-robin and does not create a safety or production-acceptance claim.

Do not mix three different test objects

The same actuator can produce different curves when the gear input is mechanically locked, the complete unpowered actuator is locked through its motor path, or a powered controller holds position. RCI requires the boundary in every raw row and forbids cross-boundary ranking.

BoundaryWhat the curve containsState that must be frozenComparison rule
Gear or reducer only; input mechanically locked
gear-only-mechanical-lock
Reducer, output bearing, fixture and measurement-chain torsional response.Input lock type and measured lock motion; lubricant, ratio, assembly, preload and output-bearing state.Compare only with the same reducer-only boundary and equivalent assembly state.
Integrated actuator unpowered; motor/input mechanically locked
integrated-unpowered-mechanical-lock
Complete actuator mechanical path, including couplings, brake state, bearings, housing and reducer.Power removed; brake state explicit; motor shaft/input lock explicit; internal and external angle references retained.Do not merge with reducer-only or servo-on results.
Integrated actuator powered in a fixed servo-hold state
integrated-servo-hold
Closed-loop joint response including controller, sensing, current limits, compensation and mechanical path.Firmware, control mode, gains, current limits, command, compensation, brake and supply state frozen and published.A system-control result; never relabel as gear backlash or compare with a mechanically locked result.

A servo-hold result may be exactly what a robot integrator needs, but it includes gains, current limits, encoders, firmware, friction compensation and control delay. It cannot be renamed “gear backlash.” Conversely, a reducer-only test cannot predict closed-loop joint behavior.

The baseline profile

ParameterRequired valueBoundary
Reference torque TrefExact continuous or rated output torqueSame model, ratio, voltage, cooling and thermal condition; never substitute peak or stall torque.
Torque path−10% Tref → +10% Tref → −10% TrefUse measured output torque for analysis.
Ramp and dwell1% Tref/s; 2 s at each endpointAny modified rate is a disclosed protocol deviation.
Cycles3 preconditioning + 5 recorded per positionDo not select the best cycle.
Positions0°, 120°, 240°; or 10%, 50%, 90% safe travelContinuous and limited axes use different position notation.
Temperature20 ±2°C; ≥60 min soakHousing drift ≤0.5°C over 15 min before acquisition.
Acquisition≥100 Hz synchronized torque and angleRaw, unfiltered samples remain public.
Population1 unit = unit characterization; ≥3 units = model-level descriptionNeither threshold creates a production acceptance claim.

If a trustworthy Tref is unavailable, a laboratory may publish an absolute-torque exploratory run. It must state the absolute torque and cannot use the unqualified RCI-BLM-1 normalized result label. This prevents a peak or stall number from silently setting the test load.

The fixture must not hide inside the result

  1. Torque: use a calibrated bidirectional transducer at the output flange. A commanded motor current is not a substitute for measured output torque.
  2. Output angle: use an independent external angle reference attached to the output flange. Motor encoder resolution alone cannot establish output hysteresis.
  3. Input movement: measure motion at the locked input or lock attachment. An apparently rigid lock can contribute a meaningful share of a small result.
  4. Fixture: publish adapter drawings, fasteners, bolt torque, lever arm and blank-fixture characterization. If a correction is applied, publish corrected and uncorrected values.
  5. Thermal state: record ambient and housing temperature throughout the run; name each sensor location.
  6. Uncertainty: link calibration records and an uncertainty budget. Include the coverage factor rather than publishing a bare ± value.

A lever-based load can add radial force and tilting moment at the joint bearing. That load must be calculated and kept inside the manufacturer’s bearing limits, or the fixture should apply pure torque. Guards, an emergency stop and the product’s electrical and thermal limits remain mandatory; this protocol is not a safety procedure.

Eight acquisition steps

  1. Freeze identity and boundary: Record the exact unit, ratio, revisions, test boundary, brake, servo, compensation, supply and Tref source before mounting.
  2. Calibrate and characterize the fixture: Zero synchronized channels, verify torque sign and angle sign, record calibration identifiers and measure input-lock or fixture motion.
  3. Stabilize temperature: Soak for at least 60 minutes at 20 ±2°C and continue until housing drift is no more than 0.5°C over 15 minutes.
  4. Set the first output position: Use 0°, 120° and 240° for a continuous axis, or 10%, 50% and 90% of declared safe travel for a limited axis.
  5. Precondition: Run three triangular cycles from −10% Tref to +10% Tref and back at 1% Tref/s; do not use them in the reported result.
  6. Acquire five cycles: Record five more complete ascending and descending triangular cycles at least 100 Hz, with a two-second dwell at each endpoint.
  7. Repeat positions: Repeat stabilization check, preconditioning and acquisition at the other two output positions without changing the declared boundary.
  8. Publish raw and summary data: Retain every sample and validity flag, calculate the four protocol metrics, publish the uncertainty budget and disclose every deviation.

Each recorded cycle contains both monotonic branches. Interpolate the ascending and descending branches independently at measured −4%, 0% and +4% Tref. Never average the branches first, and never delete inconvenient samples: invalid rows stay in the raw file with a reason.

Four metrics, none of them robot accuracy

MetricEquationInterpretation boundary
Zero-torque branch gap H0
h0_branch_gap
H0 = abs(theta_ascending(0) - theta_descending(0))Direction-dependent zero-torque hysteresis width at the declared flange and test boundary.
RCI low-torque lost-motion branch gap LM4
lm4_branch_gap
LM4 = (abs(theta_ascending(+0.04*Tref) - theta_descending(+0.04*Tref)) + abs(theta_ascending(-0.04*Tref) - theta_descending(-0.04*Tref))) / 2Mean separation of the two torque–angle branches at equal ±4% rated torque. This explicit RCI equation is not assumed equivalent to an undocumented vendor value.
Cycle repeatability of LM4
lm4_cycle_sd
sample standard deviation of valid cycle-level LM4 valuesWithin-position cycle variation; not robot pose repeatability.
Position dependence of LM4
lm4_position_range
max(position-mean LM4) - min(position-mean LM4)Observed variation across the three required output positions.

The ±4% reporting level is deliberately visible. Harmonic Drive’s public engineering data describes low-torque lost-motion measurement around ±4% rated torque with the input locked. RCI does not copy an unpublished calculation: LM4 defines the branch-gap equation above and requires the complete raw loop. A vendor value is comparable only when its equation, hardware boundary, torque reference, fixture, temperature, positions, cycles and uncertainty are all equivalent.

The raw file is part of the result

The raw template contains 40 columns. Required identity fields prevent a clean curve from becoming detached from the exact unit and test boundary; required sample fields preserve the torque, external angles and thermal state needed to recalculate the result.

ColumnRequiredUnitPurpose
protocol_idYesMust be RCI-BLM-1 for this protocol.
protocol_versionYesProtocol version used for acquisition.
test_idYesStable identifier for the complete test run.
unit_idYesPseudonymous stable unit identifier.
manufacturerYesManufacturer of the tested hardware.
modelYesExact model and ratio or ordering code.
serial_hashConditionalOne-way serial-number hash when traceability is permitted without publishing the serial.
hardware_revisionYesHardware, reducer and assembly revision.
firmware_versionConditionalRequired for powered tests; otherwise not applicable.
test_boundaryYesOne of the three protocol test-boundary identifiers.
fixture_configuration_urlYesVersioned fixture drawing, fastener, adapter and load-path record.
axis_orientationYesAxis direction and gravity orientation.
input_constraint_methodYesMechanical lock or servo-hold implementation and attachment point.
input_angle_referenceYesSensor and physical point used to measure input or lock motion.
brake_stateYesAbsent, released, engaged or other explicitly defined state.
servo_stateYesUnpowered, disabled or powered hold.
control_modeConditionalRequired for servo-hold tests.
control_configuration_urlConditionalRequired for servo-hold tests; versioned gains, limits, command and compensation settings.
compensation_stateYesBacklash, friction, gravity and compliance compensation state.
rated_torque_reference_nmYesN·mExact continuous or rated output-torque reference Tref; never peak or stall torque.
rated_torque_sourceYesVersioned source and condition for Tref.
instrument_configuration_urlYesVersioned torque, angle, temperature, synchronization and calibration-chain record.
position_idYesStable identifier for one of the three required output positions.
output_position_degYesdegNominal output position relative to a marked datum.
cycle_indexYesRecorded cycle number; preconditioning samples use negative or zero indices.
branchYesascending, descending, dwell or transition.
timestamp_sYessMonotonic time from the start of acquisition.
target_torque_percent_trefYes% TrefNormalized target torque.
commanded_output_torque_nmYesN·mCommanded fixture or actuator output torque.
measured_output_torque_nmYesN·mCalibrated output torque at the tested flange.
measured_input_angle_degYesdegMeasured input or lock motion at the declared reference; use zero only when a calibrated channel actually measured zero.
external_output_angle_degYesdegCalibrated external output-flange angle; this is the primary angular reference.
internal_motor_angle_degConditionaldegInternal motor-encoder angle when available.
internal_output_angle_degConditionaldegInternal output-encoder angle when available.
ambient_temperature_cYes°CAmbient temperature at each sample or joined by timestamp.
housing_temperature_cYes°CHousing temperature at the declared measurement point.
supply_voltage_vConditionalVRequired for powered tests.
bus_current_aConditionalARecommended for powered tests; state not measured if absent.
sample_validYestrue or false; never delete rejected samples from the published raw file.
invalid_reasonConditionalRequired when sample_valid is false.

The 30-column summary template keeps unit-, position- and model-level aggregation separate. Every row links back to immutable raw data, calibration records, the uncertainty budget and an analysis-code commit.

What a laboratory may—and may not—claim

  • One physical unit: “Unit U03 produced LM4 = x° under RCI-BLM-1 v0.1.0, boundary Y.” Do not generalize to the model population.
  • Three or more units: a descriptive model-level aggregate may be reported only after publishing every unit and position. It is still not a production lot acceptance result.
  • Measurement capability: if expanded uncertainty is more than 20% of the metric, publish below_measurement_capability, the uncertainty and the raw data—not a precise leaderboard value.
  • Deviation: a modified run may remain useful, but every deviation is listed and the unqualified protocol label is removed.
  • Terminology: H0 and LM4 are component-level quasi-static hysteresis metrics. They are not robot pose accuracy, robot repeatability, dynamic transmission error, lifetime or safety performance.

Relationship to standards and manufacturer conventions

ISO 230-2:2014 publicly identifies direct measurement, repeated measurements and rotary-axis applicability for machine-tool positioning tests. ISO 9283:1998 addresses industrial-robot performance criteria and test methods. RCI-BLM-1 is a component-level hysteresis protocol: it is neither a reproduction of the paid standards nor a claim of conformity to either one.

Harmonic Drive’s engineering data provides the public ±4% rated-torque convention that motivated RCI’s explicit LM4 reporting level. NIST Technical Note 1297 is the reporting boundary for expanded uncertainty, its coverage factor and the underlying uncertainty components.

Rights boundary

RCI links to public metadata and manufacturer engineering material, but does not redistribute the paid text of ISO standards. The protocol steps, field contract and equations published here are RCI’s own method and must not be represented as text issued by ISO, NIST or a manufacturer.

What remains before the method is validated

Version 0.1.0 still needs a physical shakedown on at least one reducer-only fixture and one integrated actuator, followed by an inter-laboratory round-robin. The first campaign must test time alignment, lock-motion measurement, interpolation stability, fixture correction, the 100 Hz sample floor and the uncertainty threshold. Any material correction will create a new version; the current release remains immutable.

Until that work is complete, this page is a reproducible protocol specification—not an independent measurement result. RCI has published no actuator LM4 values and makes no claim that a current catalog model passes or fails the method.

Download the protocol and templates

Suggested citation: Robot Component Index. “Robot Joint Backlash Test Protocol: 3 Boundaries, 3 Positions, 5 Recorded Cycles.” RCI 020, version 0.1.0, 2026-08-10. https://robotcomponentindex.com/research/reproducible-backlash-lost-motion-test-protocol/

Download the immutable protocol JSON, raw-sample CSV template and result-summary CSV template. Stable current aliases are protocol JSON, raw CSV and summary CSV.

Use the protocol together with RCI 016’s 18-record public-claim audit and the backlash, transmission error and repeatability field guide. Submit corrections or laboratory feedback through the public corrections channel.