Independent CNC repair and technical reference Contact

FANUC G06.2 NURBS: why changing R changes the curve even when control-point coordinates stay the same

Published Updated

The 15i-MB G06.2 format distinguishes order, weight and knot. An original rational quadratic example with three control points shows how R changes the path and why control points need not lie on the curve.

Contents
  1. Interpret P, R and K for the specified edition
  2. An original counterexample with three control points
  3. Why checking XYZ alone misses errors
  4. Assess speed after confirming geometry

Identical XYZ values in a NURBS program do not imply an identical curve; R here is not an arc radius either. A postprocessor that retains only control points and replaces all weights with 1 can change the toolpath while leaving its start and endpoint exactly the same.

Interpret P, R and K for the specified edition

In the FANUC 15i/150i-MB programming manual B-63784EN/01, §4.17, pages 121–126 (public mirror of the original manual), G06.2 uses P for order, R for control-point weight and K for a knot. P3 means order three and degree two, not cubic; an omitted weight is treated as 1. The knot count equals the control-point count plus the order. This article concerns systems of that edition with NURBS configured and does not mix in extended syntax from newer series.

An original counterexample with three control points

Let planar control points be A=(0,0), B=(10,20) and C=(20,0), in mm; use order 3, knot vector [0,0,0,1,1,1] and weights [1,w,1]. This is a rational quadratic segment. For 0≤t≤1, its geometry is:

P(t)=[(1−t)²A+2wt(1−t)B+t²C]/[(1−t)²+2wt(1−t)+t²].

t is a curve parameter, not seconds or a proportion of time at constant speed. Substituting t=0.5 always gives horizontal coordinate 10 and vertical coordinate 20w/(1+w):

Middle-point weight wP(0.5)Distance from middle control point B
0.5(10, about 6.667) mmAbout 13.333 mm
1(10,10) mm10 mm
2(10, about 13.333) mmAbout 6.667 mm

All three curves end at A and C but pass through different intermediate positions. Control point B constrains the geometry; it is not a required intermediate stop for the tool. Changing w=2 to 1 without justification changes this example by about 3.333 mm at t=0.5.

Why checking XYZ alone misses errors

A NURBS geometric object is determined jointly by control points, weights, knots and order. Export review must check both coordinates and the correspondence among these data types. For example, this case has 3 control points and order 3, requiring 6 knots. A cleanup tool must not delete trailing knot records because they contain no coordinates.

This is an original offline curve, not directly executable NC code. An actual 15i-MB also requires the starting position to join the first control point and imposes mode restrictions such as cutter compensation. Correct curve mathematics does not establish a valid program context.

Assess speed after confirming geometry

Equal t increments generally do not correspond to equal arc lengths, so the parameter positions in the table are not machining-time positions. Verify the geometric curve first, then assess motion under the corresponding controller's interpolation and speed constraints. Avoid estimating NURBS toolpath length from the polyline connecting control points. Further advanced interpolation resources are in the OPTION section.

Related technical articles

FANUC optional rotary-axis control: how the sign of an absolute command selects directionFANUC direction-dependent high-speed position switches: why one coordinate can give different outputsFANUC flexible synchronization: matching speed and aligning phase are separate conditions