Fanuc Renishaw Inspection Plus

Renishaw Inspection Plus is a suite of probing macros installed on Fanuc CNC controls. Cycles are called via G65 P98xx and handle protected positioning, measurement, calibration, and tool offset updates. Results are stored in common variables #135#149; calibration data lives in #500#541.

Cycle Quick Reference

CycleNameFormat
Calibration
O9801Probe Length CalibrationG65 P9801 Zz Tt
O9802Stylus X/Y Offset CalibrationG65 P9802 Dd [Zz]
O9803Stylus Ball Radius CalibrationG65 P9803 Dd [Zz Ss]
O9804Vector Ball Radius CalibrationG65 P9804 Dd [Zz Ss]
Positioning
O9810Protected PositioningG65 P9810 Xx Yy Zz [Ff Mm]
Standard Measuring
O9811Single Surface (X, Y, or Z)G65 P9811 Xx|Yy|Zz [opts]
O9812Web / PocketG65 P9812 Xx|Yy [Zz] [opts]
O9814Bore / BossG65 P9814 Dd [Zz] [opts]
O9815Internal CornerG65 P9815 Xx Yy [opts]
O9816External CornerG65 P9816 Xx Yy [opts]
Vector Measuring (requires O9804)
O9821Angle Single SurfaceG65 P9821 Aa Dd [opts]
O9822Angle Web / PocketG65 P9822 Aa Dd [Zz] [opts]
O98233-Point Bore / BossG65 P9823 Aa Bb Cc Dd [Zz] [opts]
Additional Cycles
O98174th Axis X MeasurementG65 P9817 Xx Zz [opts]
O98184th Axis Y MeasurementG65 P9818 Yy Zz [opts]
O9819Bore/Boss on PCDG65 P9819 Cc Dd Zz|Kk [opts]
O9820Stock AllowanceG65 P9820 Xx|Yy|Zz Ii Jj Kk [opts]
O9834Feature-to-FeatureG65 P9834 [Xx Yy Zz Aa Dd] [opts]
O9835SPC Tool Offset UpdateG65 P9835 Tt Mm [opts]
O9843XY Plane Angle MeasureG65 P9843 Xx|Yy Dd [opts]

Common Optional Inputs

Most measuring cycles accept these optional letter-address inputs:

InputDescriptionNotes
H hTolerance on feature dimensionExceeding triggers #3006 alarm
M mTrue position tolerance (cylindrical zone)Evaluated as radial error
Q qOvertravel distanceDefault: 4 mm (Z), 10 mm (X/Y)
S sWork offset number to updateS1–S6 = G54–G59; S7–S48 = extended
T tTool offset number to updateAdjusts wear offset register
W wPrint data (DPRNT)W1. = feature #; W2. = component #
E eExperience valueSpare tool offset # storing adjustment
F fPercent feedback0–1 fraction for tool offset update
U uUpper tolerance limitNo offset update if exceeded
V vNull bandDead zone—no offset if error within this range
R rRadial clearance (external features)Default 5 mm. R-r = force internal

Cycle Input Arguments

O9810 — Protected Positioning

Monitors probe trigger signal during positioning moves. If the probe trips (collision), machine stops immediately with #3000 = 86(PATH OBSTRUCTED).

InputReq?Description
X xYesTarget X position
Y yYesTarget Y position
Z zYesTarget Z position
F fModalFeedrate for all protected moves (stays set until changed)
M mOptM1. = flag mode: sets #148 = 7 on trigger instead of alarm

O9811 — Single Surface Measurement

Measures one surface in X, Y, or Z. Only one axis per call.

InputReq?Description
X x / Y y / Z zOne requiredNominal surface position
Plus common optional inputs: H, M, Q, S, T, W, E, F, U, V

O9812 — Web / Pocket Measurement

Measures a web (external) or pocket (internal) in X or Y. Omit Z for pocket; include Z for web.

InputReq?Description
X x / Y yOne requiredNominal feature size in X or Y
Z zOptAbsolute Z for web (external). Omit = pocket.
R rOptRadial clearance for external. R-r = force internal.
Plus common optional inputs: H, M, Q, S, T, W, E, F, U, V

O9814 — Bore / Boss Measurement

Four-touch measurement (X+, X−, Y+, Y−). Omit Z for bore; include Z for boss.

InputReq?Description
D dYesNominal diameter of feature
Z zOptAbsolute Z for boss (external). Omit = bore.
R rOptRadial clearance for boss. R-r = force internal.
Plus common optional inputs: H, M, Q, S, T, W, E, F, U, V

Calibration Cycles

CycleRequired InputsPurpose
O9801Z z (ref surface), T t (tool offset #)Calibrate probe length
O9802D d (bore diameter), opt Z z for externalCalibrate X/Y stylus offsets → #502, #503
O9803D d (gauge diameter), opt Z z, S sStandard ball radius → #500, #501
O9804D d (gauge diameter), opt Z z, S sVector ball radius → #500#501 + #510#517

Calibration order: O9801 (length) → O9802 (X/Y offsets) → O9803 or O9804 (ball radius). Use O9804 if you will use vector cycles (O9821/O9822/O9823).

Calibration Variables

Stored in persistent common variables #500#541. These survive power-off.

VariableNameDescription
#500XRADX calibration ball radius
#501YRADY calibration ball radius
#502XOFFX-axis stylus offset
#503YOFFY-axis stylus offset
#506BMCFBack-off distance (basic move control factor)
#509Active vector radius (for O9821/O9822/O9823)
#510#517VRADVector calibration radii at 30° intervals (30°, 60°, 120°, 150°, 210°, 240°, 300°, 330°)
#518#521K1Multi-stylus K1 store (XRAD, YRAD, XOFF, YOFF)
#522#525K2Multi-stylus K2 store
#526#533K11Vector multi-stylus K11 store
#534#541K12Vector multi-stylus K12 store

Skip Signal & Internal Variables

Renishaw macros use G31 (skip signal) internally. When the probe contacts the workpiece, the position is captured in system variables:

VariableDescription
#5061Skip signal X position (machine coords at probe contact)
#5062Skip signal Y position
#5063Skip signal Z position

Standard two-touch measuring: fast approach → back-off → slow gauge move at 100 mm/min. Measuring uncertainty ≈ 0.002 mm at 4 ms PLC scan time.

Error & Alarm Handling

#148 — Out-of-Tolerance Flag

ValueMeaningOffset Update?
0No error
1OUT OF TOL / OUT OF POS / ANGLE OUT OF TOLYes (after cycle start)
2OUT OF POSYes (after cycle start)
3UPPER TOL EXCEEDEDNo
4ANGLE OUT OF TOLYes (after cycle start)
5DIA OFFSET TOO LARGEYes (after cycle start)
6EXCESS STOCKNo
7Probe triggered (O9810 flag mode)

#3000 Reset Alarms (Program Stop)

Alarm #MessageCause
86PATH OBSTRUCTEDProbe triggered during O9810 move
88NO FEED RATEO9810 called without F input
89NO TOOL LENGTH ACTIVEG43/G44 not active before probe cycle
91FORMAT ERROR / INPUT MISSINGRequired input not supplied or conflicting inputs
92PROBE OPENProbe already triggered before move (stylus in contact)
93PROBE FAILProbe did not trigger during move (surface not found)

#3006 Cycle-Start-to-Continue Alarms

These pause execution; press cycle start to continue:

MessageCondition
OUT OF TOLFeature size outside H tolerance
OUT OF POSPosition outside M true position tolerance
ANGLE OUT OF TOLAngle outside B tolerance
UPPER TOL EXCEEDEDExceeds U upper tolerance (no offset update)
EXCESS STOCKStock exceeds U limit (no offset update)

Output Variables by Cycle

All measuring cycles write results to #135#149. Variables #148 (out-of-tolerance flag) and #149 (probe error flag) are set by every cycle.

O9811 — Single Surface

VarOutput
#135X position
#136Y position
#137Z position
#140X error
#141Y error
#142Z error
#145True position error
#146Metal condition
#147Direction indicator

O9812 — Web / Pocket

VarOutput
#135X position
#136Y position
#138Size
#140X error
#141Y error
#143Size error
#145True position error
#146Metal condition

O9814 — Bore / Boss

VarOutput
#135X position
#136Y position
#138Size (diameter)
#140X error
#141Y error
#143Size error
#145True position error
#146Metal condition

O9815 — Internal Corner

VarOutput
#135X position
#136Y position
#138Size
#139X surface angle
#140X error
#141Y error
#142Y surface angle
#143Y angle error
#144X angle error
#145True position error

O9816 — External Corner

VarOutput
#135X position
#136Y position
#139X surface angle
#140X error
#141Y error
#142Y surface angle
#143Y angle error
#144X angle error
#145True position error

O9817/O9818 — 4th Axis

VarOutput
#135X position (O9817)
#136Y position (O9818)
#1394th axis angle
#143Height error (Z1−Z2)
#144Angle correction

O9819 — PCD Bore/Boss

VarOutput
#135X position
#136Y position
#137PCD
#138Size (diameter)
#139Angle
#140X error
#141Y error
#142PCD error
#143Size error
#145True position error
#146Metal condition
#147Hole number

O9820 — Stock Allowance

VarOutput
#144Maximum value (metal)
#145Minimum value (metal)
#146Variation (stock allowance)

O9821 — Angle Single Surface

VarOutput
#135X position
#136Y position
#140X error
#141Y error
#143Size error
#145True position error
#146Metal condition

O9822 — Angle Web / Pocket

VarOutput
#135X position
#136Y position
#138Size
#140X error
#141Y error
#143Size error
#145True position error
#146Metal condition
#147Direction indicator

O9823 — 3-Point Bore / Boss

VarOutput
#135X position
#136Y position
#138Size (diameter)
#140X error
#141Y error
#143Size error
#145True position error
#146Metal condition

O9834 — Feature to Feature

VarOutput
#135X incremental distance
#136Y incremental distance
#137Z incremental distance
#138Minimum distance
#139Angle
#140X error
#141Y error
#142Z error
#143Min distance error
#144Angle error
#145True position error
#146Metal condition

O9843 — XY Angle Measure

VarOutput
#139Measured angle
#143Height error
#144Angle error

References

  • Renishaw, Inspection Plus Programming Manual, Renishaw plc.
  • Fanuc, Operator’s Manual / Parameter Manual, FANUC Corporation.

Have a question or want to contribute?

Contact us with corrections, additions, or topics you'd like covered.

Get in Touch