Application of Nurbs curve interpolation processing in WinCNC

OverviewWhen high-speed milling is used for high-precision surface processing, the numerical control program composed of micro-section straight lines or arcs is very large, resulting in a large increase in the amount of processing information.In addition, straight lines or arcs cannot reflect CAD / CAM truly and completely The complex surface model produced by the system, which causes the manufacturing accuracy to deviate from the design requirements. In order to better solve the industrial problems of high-speed cutting, a CNC interpolation controller based on Nurbs theory has appeared, which makes the CNC system equipped with a Nurbs curve With the ability of interpolation processing, Nurbs interpolation technology has become the key technology in the field of CNC machining and CAD / CAM.
In CNC machining, compared with traditional linear interpolation, the use of Nurbs interpolation toolpath machining has the unique advantages of high speed, high precision and high surface quality.It is a high-speed machining unit technology that is accompanied by the development of high-speed machining technology- -The core basic technology of CNC controller and CAM software package.

Application of Nurbs curve interpolation technology in Jiahong WinCNC CNC system Jiahong WinCNC CNC system supports Nurbs curve interpolation, can receive standard G06 codes, and has the ability to directly fit the micro-section linear interpolation (G01) to Nurbs curve interpolation (G06 ) Powerful function, and can directly generate Nurbs (G06) processing code in WinCNC software and save it as CNC file.
Nurbs curve processing G06 code generally does not need to be manually written.
The generation method is as follows: 1. Directly generated by CAM software 2. Directly fit the micro-segment linear interpolation (G01) into Nurbs curve interpolation (G06) code through Jiahong WinCNC numerical control software.
Jiahong WinCNC CNC system is used with Jiahong 6050 card, which can perform three-axis and four-axis Nurbs curve interpolation.
Jiahong WinCNC CNC system supports 5, 6-axis Nurbs curve interpolation. It needs to be matched with two Jiahong 6050 cards or two Jiahong 6030 cards.
Oriental Jiahong 6050 and 6030 cards support Nurbs curve interpolation. The interface of WinCNC CNC system is intuitive, easy to operate, and has excellent performance in the processing of complex curves.


Micro-segment linear interpolation (G01)


Nurbs curve interpolation (G06)

Note: The red part is the Nurbs curve interpolation (G06) fitted by the micro-segment linear interpolation (G01) through the WinCNC software control code. The fitting control code can be adjusted as required.

Detailed NURBS curve

NURBS (Non Uniform Rational B-spline) curve is usually called non-uniform rational B-spline curve, and its mathematical definition is as follows:

The basis function is defined by the recursive formula:

Non-uniform: refers to the value and spacing of the node vector can be any value. In this way, we can get different mixed function shapes in different intervals, which provides greater freedom for the free control curve shape. The main difference between uniform and non-uniform is the value of the node vector. If the node vector is set properly, an open uniform spline can be generated, which is the intersection of uniform and non-uniform. The node values ​​of the open spline at both ends are repeated d times, and the node spacing is uniform. E.g:
{0,0,1,2,3,3}, (d = 2, n = 3)
{{0,0,0,1,2,2,2}, (d = 4, n = 4).
Open uniform B-splines are very similar to Bezier splines. If d = n + 1 (that is, the degree of polynomial is n), then open B-splines become Bezier splines, and all node values ​​are 0 or 1. For example, the three-time open B-spline of four control points, the node vector is: {0,0,0,0,1,1,1}.
Rational B-spline: A rational function is the ratio of two polynomials, a rational spline is the ratio of two spline functions, and a rational B-spline is described by a vector.
The URBS curve is defined by the following three parameters:
(1) Control point : Determine the position of the curve, usually not on the curve, forming a control polygon. (See Figure 1, the figure )


Figure 1 The influence of control point movement on the curve

(2) Weight factor : Determine the weight of the control point, which is equivalent to the "gravitation" of the control point. The larger the value, the closer the curve is to the control point (see Figure 2, Bi is the control point).


Figure 2 The curve changes with the weight factor

(3) Node vector K: The NURBS curve changes with the change of parameter K. The parameterized point K corresponding to the control vertex is called a node, and the set of nodes Ki: [K0, K1 ..., Kn ..., Kn + m + 1] is called a node vector.
Node: There is more than one control point at any point on the curve (except for the end point of the bezier). The node is like a boundary. On this boundary, one control point loses its influence, and the other control point takes effect.

2. How the NURBS curve passes the first and last node multiple node sequence to make the spline curve closer to the position of the repeated node. If the end node is repeated d + 1 times, the d-order B-spline must interpolate the last control point. Therefore, one method to solve the problem that the spline curve cannot span the entire control vertex sequence is to repeat the first and last two nodes, and the resulting spline curve will interpolate the first and last two control points.

For non-periodic splines, the node vector is


That is, there are m + 1 identical nodes at both ends of the node vector, so that the curve passes through the first and last points of the control polygon and is tangent to the first and last sides.

(Refer to System Programming §2.7 Program Example)

3. The matrix calculation method and matrix representation of the NURBS curve trajectory. Because the distribution of the node parameters of the NURBS spline function along the parameter axis is not equidistant, the B-spline basis functions formed by different node vectors are different and need to be calculated separately, and The weight factor is added to the algorithm, so the calculation of curve trajectory points is more complicated and time-consuming. In order to improve the real-time nature of NURBS curve interpolation, necessary preprocessing is required before real-time interpolation. Its main task is to determine the calculation of NURBS curve trajectory Relevant coefficients of the formula to simplify the calculation of real-time interpolation.
If the curve is expressed in cubic NURBS form (the calculation method of cubic and K is the same, the expression is different), that is K = 3, , Then the i-th curve can be written in the following matrix form:

Organize:

Since the control point di and the weight factor Wi are both known, and Mi is only related to the node vector, it is also determined. Ci is related to Mi, Wi, and di, that is, it is also determined, so the coefficients in the formula are known and are related to The parameters of the interpolation point are irrelevant, and can be obtained at one time before interpolation. Since the value of i in the formula is 3 to n, so for the entire NURBS curve, there are n-2 groups of coefficients that can be calculated. During interpolation The corresponding coefficient is dynamically selected according to the position of the interpolation point.


The coordinates X, Y, and Z on the curve are:

Propane Gas Stove

Single Burner Propane Stove,Propane Stove Top,Portable Propane Stove,Propane Gas Burner

Fungho Industries (Group) Co., Limited , https://www.funghogroup.com