Okuma Renishaw Output Variables

VS Output Variables

After each probing cycle, results are stored in VS (system) variables. Only variables relevant to each cycle are populated.

O9811 — Single Surface

VarOutput
VS75X position
VS76Y position
VS77Z position
VS78Size
VS80X error
VS81Y error
VS82Z error
VS83Size error
VS85True position error
VS86Metal condition
VS87Direction indicator
VS88Out of tolerance
VS89Probe error flag

O9812 — Web / Pocket

VarOutput
VS75X position
VS76Y position
VS78Size
VS80X error
VS81Y error
VS83Size error
VS85True position error
VS86Metal condition

O9814 — Bore / Boss

VarOutput
VS75X position
VS76Y position
VS78Size
VS80X error
VS81Y error
VS83Size error
VS85True position error
VS86Metal condition

O9815 — Internal Corner

VarOutput
VS75X position
VS76Y position
VS78Size
VS79X surface angle
VS80X error
VS81Y error
VS82Y surface angle
VS83Y angle error
VS84X angle error
VS85True position error

O9816 — External Corner

VarOutput
VS75X position
VS76Y position
VS79X surface angle
VS80X error
VS81Y error
VS82Y surface angle
VS83Y angle error
VS84X angle error
VS85True position error

O9817 — 5 Point Rectangle

VarOutput
VS75X position
VS76Y position
VS79Component angle

O9818 — 4th Axis

VarOutput
VS794th angle
VS83Height error
VS84Angle error

O9819 — PCD Bore

VarOutput
VS75X position
VS76Y position
VS78Size
VS79Angle
VS80X error
VS81Y error
VS82PCD error
VS83Size error
VS84Angle error
VS85True position error
VS86Metal condition
VS87Hole number

O9820 — Stock Allowance

VarOutput
VS84Maximum value
VS85True position error
VS86Variation (stock)

O9821 — Angle Single Surface (AD Input)

VarOutput
VS75X position
VS76Y position
VS78Size from start
VS80X error
VS81Y error
VS83Size error
VS85True position error
VS86Metal condition

O9821 — Angle Single Surface (XYZ Input)

VarOutput
VS75X position
VS76Y position
VS77Z position
VS78Size
VS80X error
VS81Y error
VS82Z error
VS85True position error
VS86Metal condition

O9822 — Angle Web / Pocket

VarOutput
VS75X position
VS76Y position
VS78Size
VS80X error
VS81Y error
VS83Size error
VS85True position error
VS86Metal condition
VS87Direction indicator

O9823 — 3 Point Bore / Boss

VarOutput
VS75X position
VS76Y position
VS78Size
VS80X error
VS81Y error
VS83Size error
VS85True position error
VS86Metal condition

O9834 — Feature to Feature

VarOutput
VS75X incremental distance
VS76Y incremental distance
VS77Z incremental distance
VS78Minimum distance
VS79Angle
VS80X error
VS81Y error
VS82Z error
VS83Minimum distance error
VS84Angle error
VS85True position error
VS86Metal condition

O9843 — XY Angle Measure

VarOutput
VS79Angle
VS83Height error
VS84Angle error

VC Output Variables (Base Number of 50)

When using VC (common) variables instead of VS (system) variables, the same outputs are available with the VC prefix. Variable numbers match the VS equivalents.

O9811 — Single Surface

VarOutput
VC75X position
VC76Y position
VC77Z position
VC78Size
VC80X error
VC81Y error
VC82Z error
VC83Size error
VC85True position error
VC86Metal condition
VC87Direction indicator
VC88Out of tolerance
VC89Probe error flag

O9812 — Web / Pocket

VarOutput
VC75X position
VC76Y position
VC78Size
VC80X error
VC81Y error
VC83Size error
VC85True position error
VC86Metal condition

O9814 — Bore / Boss

VarOutput
VC75X position
VC76Y position
VC78Size
VC80X error
VC81Y error
VC83Size error
VC85True position error
VC86Metal condition

O9815 — Internal Corner

VarOutput
VC75X position
VC76Y position
VC78Size
VC79X surface angle
VC80X error
VC81Y error
VC82Y surface angle
VC83Y angle error
VC84X angle error
VC85True position error

O9816 — External Corner

VarOutput
VC75X position
VC76Y position
VC79X surface angle
VC80X error
VC81Y error
VC82Y surface angle
VC83Y angle error
VC84X angle error
VC85True position error

O9817 — 5 Point Rectangle

VarOutput
VC75X position
VC76Y position
VC79Component angle

O9818 — 4th Axis

VarOutput
VC794th angle
VC83Height error
VC84Angle error

O9819 — PCD Bore

VarOutput
VC75X position
VC76Y position
VC78Size
VC79Angle
VC80X error
VC81Y error
VC82PCD error
VC83Size error
VC84Angle error
VC85True position error
VC86Metal condition
VC87Hole number

O9820 — Stock Allowance

VarOutput
VC84Maximum value
VC85True position error
VC86Variation (stock)

O9821 — Angle Single Surface (AD Input)

VarOutput
VC75X position
VC76Y position
VC78Size from start
VC80X error
VC81Y error
VC83Size error
VC85True position error
VC86Metal condition

O9821 — Angle Single Surface (XYZ Input)

VarOutput
VC75X position
VC76Y position
VC77Z position
VC78Size
VC80X error
VC81Y error
VC82Z error
VC85True position error
VC86Metal condition

O9822 — Angle Web / Pocket

VarOutput
VC75X position
VC76Y position
VC78Size
VC80X error
VC81Y error
VC83Size error
VC85True position error
VC86Metal condition
VC87Direction indicator

O9823 — 3 Point Bore / Boss

VarOutput
VC75X position
VC76Y position
VC78Size
VC80X error
VC81Y error
VC83Size error
VC85True position error
VC86Metal condition

O9834 — Feature to Feature

VarOutput
VC75X incremental distance
VC76Y incremental distance
VC77Z incremental distance
VC78Minimum distance
VC79Angle
VC80X error
VC81Y error
VC82Z error
VC83Minimum distance error
VC84Angle error
VC85True position error
VC86Metal condition

O9843 — XY Angle Measure

VarOutput
VC79Angle
VC83Height error
VC84Angle error

Worked Example: Probe a Feature and Use the Output

The tables above tell you where each cycle leaves its results — this program shows the full loop in use: call the O9814 bore/boss cycle, copy its VS outputs somewhere safe, gate on tolerance with IF/GOTO, and write the measured center error into the active work offset via the OSP work-zero system variables VZOFX/VZOFY.

( ===== PROBE A 25.0 MM BORE AND CORRECT WORK OFFSET SET 1 ===== )
( PROBE IS CALIBRATED AND IN THE SPINDLE, SPINDLE STOPPED )
G15 H1                       ( ACTIVATE THE WORK OFFSET WE INTEND TO CORRECT )
G00 X0 Y0                    ( RAPID OVER THE NOMINAL BORE CENTER )
G00 Z5.0                     ( 5 MM ABOVE THE FACE )
CALL O9814 D=25.0 Z=-8.0     ( BORE/BOSS CYCLE - MEASURE THE BORE 8 MM DOWN )

( COPY THE RESULTS OUT OF THE VS OUTPUT VARIABLES BEFORE THE )
( NEXT PROBING CYCLE OVERWRITES THEM )
VC1=VS75                     ( MEASURED X CENTER )
VC2=VS76                     ( MEASURED Y CENTER )
VC3=VS78                     ( MEASURED DIAMETER - SIZE )
VC4=VS80                     ( X ERROR )
VC5=VS81                     ( Y ERROR )
VC6=VS83                     ( SIZE ERROR )

( TOLERANCE GATE: REJECT IF THE BORE IS MORE THAN 0.05 MM OFF SIZE )
IF [ABS[VC6] GT 0.05] N900

( IN TOLERANCE - SHIFT THE WORK ZERO BY THE MEASURED CENTER ERROR )
( VZOFX/VZOFY ARE THE OSP WORK-ZERO SYSTEM VARIABLES; [1] = G15 H1 )
VZOFX[1]=VZOFX[1]+VC4        ( CORRECT X )
VZOFY[1]=VZOFY[1]+VC5        ( CORRECT Y )
GOTO N990

N900 M00                     ( STOP: SIZE OUT OF TOLERANCE - OFFSET NOT TOUCHED )
( OPERATOR: INSPECT THE BORE AND REMEASURE BEFORE CONTINUING )
N990 G00 Z100.0              ( RETRACT CLEAR )
M02

Two habits worth keeping: first, always copy the VS results into VC variables (or act on them) immediately — every cycle in the tables above reuses the same VS75–VS89 slots, so the next probing call clobbers them. On installations configured for VC output, read the VC75–VC89 equivalents instead. Second, prove the sign convention on your machine before trusting the offset write: rerun the same O9814 call after the correction and confirm the X/Y errors (VS80/VS81) collapse toward zero — if they doubled instead, the correction needs the opposite sign.

References

  • Renishaw, Inspection Plus Programming Manual, Renishaw plc.
  • Okuma, OSP Programming Manual, Okuma Corporation.

Have a question or want to contribute?

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

Get in Touch