Since the inception of NC machines, control manufacturers have searched for easier and faster ways of part programming. Originally, the manual line-by-line "G-code" programming was the only way to program a part. This laborious manual program entry was and continues to be prone to mathematical and typographical errors.
Shop-floor or conversational programming (SFP) was an early attempt to reduce the pain of line-by-line program entry, in which parts are programmed and graphically presented by responding to prompts. In an interactive SFP, on the other hand, part geometry and tool path are created and verified graphically rather than textually.
The clear conclusion is that design engineers are finding graphical programming simpler, more accurate, and more intuitive compared to manual data input. Major advances made in the area of open architecture motion control ensure that NURBS (Non-Uniform Rational B-Spline) performs far ahead of any current market offering.
A fast sample update rate is only one of many measures by which a motion controller is rated for a high-speed machine. Other factors include:
A fast and accurate CAM graphical interface along with low and high level interpolation algorithms for 3D machining
High-bandwidth digital current loop and motor commutation (traditionally performed in servo amplifier)
On-line system analyzer by which the motion controller can visualize the machine's mechanical problems in order to expand its performance envelope
Resonance, friction torque, and backlash cancellation algorithms
A parallel-processing computation engine to make the servo loop update rate independent of the number of motion control/PLC tasks running simultaneously.
The main focus of this article is on CAD/CAM interface and interpolation accuracy for the high-speed machining.
Traditional G-code. Many CAD/CAM drawing packages offer low-level geometric primitives, such as G-Code for objects, lines, and arcs. Because the representation of lines and arcs is mathematically exact, their resolution is independent and unaffected by changes in position, orientation, or scale. A complex curve approximated by many lines (or arcs), however, can never be as accurate as the original curve. In an attempt to reduce the inaccuracies caused by CAD/CAM post-processing and enhance the resolution of the curve, one must increase the number of primitives describing a complex curve.
When curves are broken down to small lines and presented by G-code, the G-code program complexity and length will often parabolically increase with the part's complexity. This occurs to the point that their setup (feed rate and run-time optimization) on the machine, in conjunction with their interpretation by a motion controller, will impede the process of manufacturing both off-line and on-line.
The quest for faster block (of G-code) transfer rate is never ending and hard to satisfy. CNCs are often choked with information because block execution time is shorter than block processing time. Most single DSP-based motion controllers still can process only about 1,000 blocks per second, which is barely adequate for high-speed machining applications.
Also, since G-code is only an approximation of the real part (e.g., lines describing a complex curve or surface), given a fixed block transfer rate, there will always be a trade off between machine precision and machine speed. Therefore, it is intuitively clear that an attempt should be made to eliminate this self-induced post-processing error, and putting much effort to increase block transfer rate is not appropriate.
NURBS, the new standard. Non-Uniform Rational B-Spline has become the de facto industry standard for the representation and data exchange of geometric information on parts in machine tools. Many international standards such as IGES, STEP, and PHIGS recognize NURBS as a powerful tool for part designs--but only recently for implementation.
NURBS has many design and application advantages (see table), as well as better graphical description capabilities. It is a better way to describe a 3D surface, because the shape of a NURBS curve is determined by, among other things, the position of a set of points called control points. The control points are often joined with connecting lines to make them easier to see and to clarify their relationship to curves. These connecting lines form what is known as a control polygon.
These properties, combined with their successful implementation on DSP Control Group's Mx4 Octavia controller, have made the industrial application of NURBS for machine tools both possible and desirable. In comparison tests, NURBS consistently outperforms G-Code both on the basis of shorter transmission times and improved accuracy.
DSP's Mx4 Octavia is also equipped with algorithms especially designed for high-speed machining. One of these algorithms is automatic resonance cancellation, which removes resonance at the specified frequency range. To reveal machine resonance, an embedded system analyzer identifies the system performance over a programmed frequency range. The analyzer then displays all of the machine's mechanical properties and generates a transfer function of up to 20th order.
This method, compared to the traditional step response, reveals the system performance over the entire range of torque and speed--and is simpler to visualize. That is, a wider bandwidth shows a more responsive system, a resonance peak reveals a mechanical problem, and the diagram shows the margin of stability.
The many advantages of NURBS
Results in fast and numerically stable algorithms
Allows for easy-to-understand and intuitive interpretation of complex geometry
Possesses mathematical exactness and resolution independence
Requires very little data to represent complex shapes
Ability to define curves with no kinks or sudden changes of direction, which is especially useful in machine-tool applications
Removes the post-processing error induced by approximation
Removes the need for faster block transfer rate to achieve more precise parts at a high feedrate
Simplifies part programming and machine set-up