GE Fanuc



NURBS Interpolation

NURBS is not a new term. It is an acronym for "Non-Uniform Rational B Spline" and is basically an accurate way to define a free-form curve. CAD-CAM systems have used NURBS for many years to define curves.

With the GE Fanuc NURBS Interpolation Function, the CAM process passes the original CAD "Control Points", "Weights", and "Knots" required to define the NURBS curve directly to the control in the "G Code" format. Then, the CNC interpolates the original NURBS curve at the CNCs Interpolation Rate. GE Fanuc NURBS Interpolation is supported by many CAM process vendors.

This brief describes why GE Fanuc NURBS Interpolation provides the following benefits over "traditional" methods of processing NURBS data:

  • More Accurate Parts
  • Reduced Cycle Times
  • Improved Surface Quality
  • Drastically Smaller Part Programs

Processing NURBS Data Using Linear Interpolation

In the past, NURBS data has been sent from the CAD system to a CAM process which would post-process the CAD NURBS data into small linear segments and create a "G-Code" Linear Interpolation Part Program for the CNC. This linearized NURBS data presented several problems for the CNC:

  • The resulting part program was very long and required a large amount of Part Program storage at the CNC.
  • Many CNCs could not process the data fast enough for the feedrate and size of the linear segments. When these programs were run in the CNC, the machine would start and stop in a machine gun type fashion in between each block because the block execution time was shorter than the Block Processing Time. For these types of CNCs the user had two choices. The first was to make the linear segments longer to increase the block execution time, but this led to decreased accuracy. The second was to slow down the feedrate to increase the block execution time, but this led to decreased precision. So there was a choice between decreased accuracy or decreased precision.
  • Some CNC systems could handle the high block processing rate required but did not have the mass storage required to store the Part Program at the CNC. In this case, the CNC user needed to run the program from an external storage device in a DNC mode sometimes also called "Drip Feed Mode". A very high communication rate was required for this mode and many CNCs were not capable of these high rates. Therefore, the only solution was to decrease the feedrate or increase the size of the linear segments to match the time required to transfer a part program block through the communications link. Again, the choice was decreased accuracy or decreased precision.
  • Representing the NURBS curve with small linear segments in the CAM processor led to decreased accuracy. The size of the linear segments was totally dependent on the CNC. The slower the CNC, the longer the segment, and the poorer the accuracy.

These have been some tough problems for CNC manufacturers to address. GE Fanuc has been the leader in the high speed and high accuracy CNC market for many years by overcoming the first three problems with very high Block Processing Rates, very fast Interpolation rates, mass storage in the CNC, and very high communications rates. GE Fanuc CNCs can run a linear interpolation part program at very high rates with very small segments with no decrease in accuracy or performance. This left GE Fanuc only to solve the accuracy problem caused by representing the curve with small linear segments.

Pre-processing linear data into NURBS

Where the CNC capability cannot be further increased, another way to address these issues (used by several CNC manufacturers) is for the CNC to preprocess the large CAM-generated linear interpolation part program into a smaller, NURBS-type format. In GE Fanuc CNCs this is called the "Smoothing Interpolation" option. However, tolerance limits in both the initial CAM process and this CNC preprocessing introduce compounding errors that limit the accuracy of this program compared to the original NURBS data in the CAD.

NURBS Interpolation in the CNC

With GE Fanuc NURBS interpolation, the initial CAM process creates a part program using the original NURBS data from the CAD system. The CAM process transfers the original CAD "Control Points", "Weights", and "Knots" required to define the NURBS curve directly to the control in "G Code" format. This results in a reduction of program size of 1/10th to 1/100th compared to the size of a comparable linear interpolation part program and significantly improves the fundamental accuracy issues. The CNC interpolates the original NURBS curve at the CNC’s interpolation rate.

The Importance of Interpolation Rate

The Interpolation Rate is the cyclic period of time during which the CNC processor tells all of the Axes in the CNC to move a certain number of counts. This happens at each Interpolation Period. During this period, the control is actually moving a linear segment because the velocity is constant during that period. For example, with GE Fanuc NURBS Interpolation the CNC interpolation is 1ms (millisecond). This means that every 1ms the control tells all of the axes how many counts they should move during that period. The faster the interpolation rate, the smaller the linear segment, so the more accurate the finished part for a given feedrate.

Some manufacturers may claim that the interpolation rate does not matter because the CNC is constantly changing the rate on the axis hardware after the interpolation so it is not moving a linear segment during the Interpolation period. However, path error is a well-documented result of doing the Acceleration and Deceleration after interpolation, so more inaccuracies are introduced into the system and ultimately the finished part. While GE Fanuc controls are capable of operating in this manner, GE Fanuc does not recommend it for high accuracy applications.

The interpolation rate directly affects the accuracy of the finished part and the machining cycle time. Make sure to understand the interpolation rate of the CNC before comparing the NURBS choices that are available.


NURBS Interpolation offers significant benefits to CNC users for high speed, high accuracy machining. NURBS Interpolation is available on GE Fanuc’s Series 15-B, Series 16-C and Series 16i-MA CNCs.

Re-posted with permission. Copyright © 1998 by GE Fanuc Automation