Brother Blum-Novotest V4B Probing

Blum-Novotest V4B is the workpiece probing software for Brother CNC machines. Unlike Renishaw (which uses separate macro numbers per cycle), Blum uses a single dispatcher macro G65 P8700 with parameter combinations selecting the measurement type. Results are stored via indirect addressing: #[#111+n] (default base #100).

Architecture — Key Difference from Renishaw

AspectBlum V4B (Brother)Renishaw Inspection Plus (Fanuc/Haas)
Cycle dispatchSingle macro G65 P8700Separate macros G65 P9811, P9812, P9814, etc.
Cycle selectionParameter combination determines typeMacro number determines type
Output variables#[#111+0]#[#111+9] (indirect, configurable)Fixed #135#149 (Fanuc) / #185#199 (Haas)
Calibration variables#[#110+0]#[#110+5] (indirect, configurable)Fixed #500#519 (Fanuc) / #556#597 (Haas)
Protected moveG65 P8703G65 P9810
Probe on/offParameter M on P8700 (M1.=on, M2.=off, M3.=neither)Separate macros O9832/O9833

Program Overview

ProgramNameDescription
8700MAINMain dispatcher—all measuring and calibration calls go through here
8701TOUCH XYZSingle point and corner touching
8702CONTOURContour touching (bore, boss, width)
8703PROTECTED MOVEProtected positioning (collision detection)
8704MEASUREMeasuring block execution
8705SET WCSWrite workpiece coordinate system offset
8706SET TOOLTool offset correction after measurement
8707TOLERANCETolerance checking
8708PROBE ONOFF STATUSProbe on/off and status checking
8709CALIB-MEAS SPHERECalibration on sphere
8710USER GLOBALUser-configurable global settings
87113-POINTS CONTOURContour probing with 3 points
87128714CORNER MAIN/MOVE/CALCCorner/contour location calculation
8715ANGLE-DISTANCEAngle and distance calculation
8716DPRNTData output via DPRNT command
8717TC-USER 1Settings for probe 1
87188719TC-USER 2/3Settings for optional probes 2 and 3

Cycle Types via G65 P8700

The measurement type is determined by which parameters you pass, not by calling a different macro number:

MeasurementCall FormatExample
Calibration (parameter C)
Calibrate Z + XY (ring)G65 P8700 C1. Z... then G65 P8700 C1. S...G65 P8700 C1. Z-10.
Calibrate XY (sphere)G65 P8700 C2. S... Z...G65 P8700 C2. S25. Z-10.
Zero Point — Single Point (parameter W + axis)
Single point X/Y/ZG65 P8700 X... W...G65 P8700 X-10. W55.
Corner 2-axisG65 P8700 X... Y... W...G65 P8700 X10. Y10. W59.
Corner 3-axisG65 P8700 X... Y... Z... W...G65 P8700 X10. Y10. Z-10. W59.
Zero Point — Contour (parameter S + W)
Inside diameterG65 P8700 S... W...G65 P8700 S40. W57.
Outside diameterG65 P8700 S... Z... W...G65 P8700 S30. Z-10. W54.
Inside width (X or Y)G65 P8700 S... X1. W...G65 P8700 S20. X1. W54.
Outside width (X or Y)G65 P8700 S... X1. Z... W...G65 P8700 S10. X1. Z-20. W54.
3-point bore/bossG65 P8700 S... W... H... U... V...G65 P8700 S40. W57. H30. U150. V280.
Measurement During Production (parameter A1.)
Measure single pointG65 P8700 A1. X...G65 P8700 A1. X0.
Measure cornerG65 P8700 A1. X... Y...G65 P8700 A1. X10. Y10.
Measure inside diameterG65 P8700 A1. S...G65 P8700 A1. S60.
Measure outside diameterG65 P8700 A1. S... Z...G65 P8700 A1. S50. Z-3.
Measure inside widthG65 P8700 A1. S... X1.G65 P8700 A1. S20. X1.
Measure outside widthG65 P8700 A1. S... X1. Z...G65 P8700 A1. S20. X1. Z-4.

P8700 MAIN Program — Input Parameters

ParamVarDescription
A#1Mode: 0. = relative, 1. = absolute dimensioning. For measuring: A1. = production measurement mode
B#2Select probe (1. = probe 1, 2. = probe 2, 3. = probe 3)
C#3Calibration: 1. = Z + XY with ring gauge, 2. = XY with sphere
D#7Angle/distance function (D>0 = distance, D<0 = angle measurement)
E#8Tool number for correction after measurement
H#11Angle of 1st probing point (0°–360°)
I#4Set position X
J#5Set position Y
K#6Set position Z
M#13Probe on/off: 1. = on, 2. = off only, 3. = neither on nor off
Q#17Overtravel in XY (overrides default from #114)
R#18Safety distance / clearance for external features
S#19Set value: diameter, width, or calibration gauge size
T#20Tolerance check (see TOLERANCE program)
U#21Angle of 2nd probing point for 3-point measurement
V#22Angle of 3rd probing point for 3-point measurement
W#23WCS number to write (54–59 = G54–G59; negative = extended G54.1 Pn)
X#24Nominal position / traverse in X
Y#25Nominal position / traverse in Y
Z#26Nominal position / traverse in Z (also triggers external feature mode)

P8703 — Protected Move

Equivalent to Renishaw O9810. Monitors probe signal during positioning; stops on collision.

ParamVarDescription
X#24Target X position
Y#25Target Y position
Z#26Target Z position
M#131. = switch probe on first, 3. = probe already on

Typical sequence: G65 P8703 X.. Y.. Z.. M1. (on + move) → G65 P8703 X.. Y.. Z.. M3. (move only) → G65 P8700 S.. M3. (measure) → G65 P8700 Z.. M2. (retract + off)

Output Variables (Result Parameters)

Results are stored via indirect addressing from base address #111 (default value: 100, so results go to #100#109). The base address can be changed in program 8710 (USER GLOBAL).

VariableDefaultDescription
#[#111+0]#100Result X — center or edge position in active WCS
#[#111+1]#101Result Y — edge or ball center position
#[#111+2]#102Result Z — edge or ball center position
#[#111+3]#103Deviation from set position (I) in X, or actual value X
#[#111+4]#104Deviation from set position (J) in Y, or actual value Y
#[#111+5]#105Deviation from set position (K) in Z, or actual value Z
#[#111+6]#106Contour result: bore diameter, width, or sphere diameter
#[#111+7]#107Deviation from set value (S) for contour measurement
#[#111+8]#108Corner length, or component presence (1. = present, -1. = absent)
#[#111+9]#109Angle result (corner angle, rotation axis correction)

Additional distance/angle results: #142#146 (fixed, not indirect).

Calibration Variables

Stored via indirect addressing from base address #110 (default value: 500, so calibration data lives in #500#505). Configurable in program 8717 (TC-USER 1).

VariableDefaultDescriptionExample Value
#[#110+0]#500Calibration value X2.785 (3 mm ball)
#[#110+1]#501Calibration value Y2.788
#[#110+2]#502Probe center offset X0.005
#[#110+3]#503Probe center offset Y0.010
#[#110+4]#504Basic rotation for G68
#[#110+5]#505Calibration value Z0.206

Error Codes

Blum errors use #3000 with codes in the 101–116 range. Format: #3000 = NNN.mm where NNN is the error group and mm is the sub-code.

ErrorTitleCommon Causes
101–107Probe signal errorsNo STATUS/ERROR signal from P8703/P8704, start and skip positions identical, probe move error
108Battery lowBATTERY error signal active from probe interface
109Wrong probe lengthEntered probe length = 0, or tool length mismatch in TC-USER (#4111/#4120)
110Error switching on/offProbe could not be switched on/off within specified time, ERROR signal missing
111Wrong toolH-number of probe in USERPARATAB not active, tool correction mismatch
112No calibration value in ZZ calibration parameter undefined—calibrate probe in Z first
113Error in USERPARATABInvalid parameters in TC-USER 1 (8717): address range, ball radius, feed, distances
114Communication errorTimeout or error communicating with counterpart, waiting for QUIT signal
115Turn spindle by 180°Programmed stop during calibration requiring spindle reorientation
116Parameter settingsParameters deleted by M0 during measurement; adapt machine settings

Practical Example — Measure Bore & Set WCS

(MEASURE BORE AND SET G55)
(PROBE IS IN TOOL #99, BORE IS APPROX 40MM)

T99 M6
G43 H99
G90 G54

(PROTECTED MOVE TO ABOVE BORE)
G65 P8703 X0. Y0. Z50. M1.

(PROTECTED MOVE INTO BORE)
G65 P8703 X0. Y0. Z-15. M3.

(MEASURE INSIDE DIAMETER, SET G55)
G65 P8700 S40. W55. M3.

(RETRACT AND TURN PROBE OFF)
G65 P8703 X0. Y0. Z50. M3.
G65 P8700 Z100. M2.

(RESULTS NOW IN #100-#109)
(#100 = BORE CENTER X)
(#101 = BORE CENTER Y)
(#106 = MEASURED DIAMETER)
(#107 = DEVIATION FROM S40.)

References

  • Blum-Novotest, V4B Probing System Manual, Blum-Novotest GmbH.
  • Brother, Operator’s Manual, Brother Industries, Ltd.

Have a question or want to contribute?

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

Get in Touch