Accepted Manuscript A unified method of generating tool path based on multiple vector fields for CNC machining of compound NURBS surfaces Yuwen Sun, Shuoxue Sun, Jinting Xu, Dongming Guo
PII: DOI: Reference:
S0010-4485(17)30048-9 http://dx.doi.org/10.1016/j.cad.2017.04.003 JCAD 2501
To appear in:
Computer-Aided Design
Received date : 12 September 2016 Accepted date : 10 April 2017 Please cite this article as: Sun Y., et al. A unified method of generating tool path based on multiple vector fields for CNC machining of compound NURBS surfaces. Computer-Aided Design (2017), http://dx.doi.org/10.1016/j.cad.2017.04.003 This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
*Highlights (for review)
Highlights A unified method of generating tool path based on multiple preferred vector fields is given for the compound surface; The machining intent at CC points is taken into account in tool path designing and is represented by the vector fields; The G1 blending methods of vector fields in the parameter space and on the compound surface are first proposed; Based on G1 vector fields, the tool path is smooth, continuous across the common boundary of the adjacent patches;
*Manuscript Click here to view linked References
A unified method of generating tool path based on multiple vector fields for CNC machining of compound NURBS surfaces Yuwen Sun1*, Shuoxue Sun1, Jinting Xu2, Dongming Guo1 1
School of Mechanical Engineering, Dalian University of Technology, Dalian, 116024, China
2
School of Automotive Engineering, Dalian University of Technology, Dalian, 116024, China
Abstract The vector field based tool path method can conveniently generate the desired tool paths according the preferred feed directions which reflect the machining intent of the designers at CC (cutter contact) points, thus recently, it has become the focus of interests. But, the current methods are still limited to the single surface machining. When machining the compound surface patch by patch, it has to plan additional tool path to machine the blending areas of the adjacent patches, and more importantly, the solutions of the key issue, i.e. tool path construction over the vector field, are still heuristic due to the high computational complexity. To solve the problems, this paper develops a unified method of generating tool paths based on multiple vector fields for CNC machining of the compound NURBS surfaces. In this method, the preferred feed directions on the surfaces are mapped into the corresponding parameter domains, and for the vector field on each parameter domain, a stream function which is a polynomial with B-spline basis is reconstructed to represent the vector field and is used to produce the streamlines along these preferred the feed directions. A novel algorithm is subsequently proposed to blend the vector fields in the adjacent parameter domains with G1 continuity. Meanwhile, to guarantee the tool path, obtained by reversely mapping the streamline onto the surface, be smooth, continuous and no unappealing visual artifact left at the blending area of two adjacent patches, the condition maintaining G1 continuity of the vector fields between the adjacent patches is also given, avoiding planning additional tool paths to machine the blending areas. Further, to make our method be implemented easily in CAD/CAM systems, a specific implementation process is also briefly presented. Finally, three examples are given to demonstrate the validity of the proposed method. Keywords: Tool path generation, compound surface, preferred feed direction, vector fields blending
paths, especially at the blending area of two adjacent patches, when milling the compound surface, so that the unappealing visual artifact is left at this area, decreasing the surface finish [7-9]. Also, it is not easy to make the tool paths along the preferred feed directions specified at CC points according to the machining intent of the designers. The preferred feed direction at CC point has a variety of options, which may be the one that maximizes the material removal rate, the feedrate or minimizes the cutting force, etc., thus if the designing process of tool paths can take fully into consideration the machining intent of the designer at every CC point, undoubtedly, it can bring the great flexibility for tool path designing. Recently, for machining of the free-from surface, tool path methods have been evolving from traditionally offsetting the initial tool path over the whole surface according to these geometry patterns of Zig-zag [3, 4], contour-parallel [10] and spiral trajectory [11, 12], etc., to the vector field based methods that make the cutter mill the surface as much as possible along the preferred feed directions at every CC points [6, 11- 17], achieving the expected machining performance of the designers. But, the existing vector field based methods are only limited to the machining of a single surface.
1. Introduction In CAD/CAM systems, for describing the complicated or detailed shapes, almost all free-form surface parts that are designed to meet the superior aero and fluid dynamic performance and/or functional requirements are modeled by compound NURBS surface with multiple patches. For such compound surface, its machining is often completed patch by patch on three or five axis CNC machines using traditional tool path methods [1, 2]. These methods, used widely in manufacturing industry, such as iso-parametric method [3], iso-scallop height method [4] and iso-planar method [5], etc., produce tool path by offsetting an initial tool path which may be a boundary of surface or a curve meeting a certain rule within the surfaces. Although they have taken into consideration the local surface geometry in tool path planning, once the initial tool path is selected, the distribution of the whole tool path and the feed directions at CC points are largely determined [6]. For these methods, it is difficult to produce smooth continuous tool
*Corresponding author. Email:
[email protected] (Y. W. Sun ) 1
Similarly, when applying these methods to mill the compound surface patch by patch, the blending area between the adjacent patches has to also be processed carefully by planning additional tool path [13, 14]. Although this kind of method no longer force the cutter to follow the traditional tool path patterns, due to the high computational complexity that the cutter visits every CC point and follows the preferred feed direction at every CC point, almost all solutions of the key issue, i.e. tool path construction over the vector field, are still heuristic or limited to propagateing the optimal initial tool path. To solve these problems, this paper develops a unified method of constructing tool path based on the multiple vector fields on the compound surface and its specific process of implementation is also presented briefly. Next, the related works to vector field based tool path generation methods are first reviewed.
scope of the traditional tool path planning, except for the initial tool path selection. Considering the distributions of the feed directions in different regions, Liu et al [13], Kumazawa et al [14] and Bohez et al [15] subdivide the surface into sub-surfaces, each of which has similar feed directions, by identifying those degenerate points of the tensor field [13, 14], or by utilizing the vector clustering method [15]. On each subsurface, after an initial tool path that is a region boundary or a middle pathline of the region is determined, the remaining tool paths are generated by propagating the initial tool path using the traditional iso-scallop method. In this method, since the surface needs to be subdivided into different regions, the boundary area of the adjacent regions has to be processed carefully in the machining processes; otherwise the machining marks of tool entry and exit are left at this area, decreasing the surface finish. It will become worse not only at the borders of the sub-surfaces but also at the blending areas of the adjacent patches when processing the compound surface with multi-patches. Recently, Moodleah and Makhanov [16] made a valuable progress that is different from the previous works in this field. In their method, a curvilinear grid, which is aligned well with the vector field, is first constructed and then the biased space-filling curve method is used to connect the grid point as much as possible along its preferred feed direction in Zig-zag-like topology. In [18], Zhang and Tang also proposed a different tool path planning method over the vector field. In their method, starting from a CC point, the next CC point is determined to be the one that maximizes the feedrate limit at the current CC point and simultaneously minimizes the cutting strip overlaps. This process is carried out iteratively until all vertices are cut. Although the generated tool path follows the optimal or nearly preferred feed directions, the constructing process is greedy and heuristic. So far, the vector field based tool path methods mainly focus on the optimal initial tool path selection [6, 20], the surface subdivision [13-15] and the overall machining direction optimization [17,21]. Tool path construction over the vector field is still to propagate the optimal initial tool path by offsetting operations [6, 13-15], unfortunately the sudden turn, sharp corner and self-intersection in the generated tool path, caused by offsetting, will deteriorate their real machining performance. Few different methods [16, 18] also fall in the heuristic strategy. Essentially, compared with these paths, streamlines are more suitable to represent the tool paths in the vector field since it has the characteristics of being tangential to the feed directions at every point, having no sharp corners and neither selfintersecting nor intersecting with each other. In[19], Kim
1.1 Related works Vector field based tool path planning methods first discretizes the part surface into a grid of point, and at every point, evaluates a preferred feed direction which may be the one that maximizes the machining strip width [6, 1315], the material removal rate [16, 17], the feedrate [18] and the kinematic performance [19], or minimize the cutting force [20], the change of tool orientation[21] and the consumed energy in the machining process [22], or even is the one specified according to certain machining intent, then attempts to make the tool paths visit every point and follow smoothly the feed direction at every point. Its definition is very unequivocal, but the construction of such tool path is actually a very challenging task. Chiou and Lee proposed a method to attempt to solve this problem [6]. In their method, a vector field, which is a collection of the feed directions with maximum machining strip width, is first constructed on the model surface, and then an optimal initial tool path which has the largest average machining strip is selected and propagated inside the surface by offsetting method. If the cutting efficiency of the newly generated adjacent tool path falls below a given threshold, a new searching cycle of determining and propagating the initial tool path is launched again for the remaining area until the whole surface is covered. Similar work is also done by Li et al [20], the difference is that they select the initial tool path by minimizing the change rate of tool posture and then propagate it over the surface. Though, taking into account the gradually deviating from the preferred feed direction of the adjacent tool path, this kind of tool path method can automatically subdivide the surface into sub-surfaces, the subdivision is not very well motivated from the viewpoint of optimization [16]. Moreover, the construction of tool path is not still beyond the 2
n ru
rv
f
ru
CC point
Tangent plane
Tool path
Part surface
Fig.1. The preferred feed direction on the object surface
and Sarma have demonstrated the feasibility of constructing the streamlines on a single surface according to the calculated vector field. However, in engineering practice, most of industrial parts are constructed by the compound surface with multiple patches and generally the vector fields vary in different patches. How to construct a smooth, continuous tool path over the multiple vector fields on all patches of the compound surface is not addressed by extending simply the methods on the single surface.
In order to simplify the problem, the proposed method starts from the vector field construction in the single parameter space. Assume that the object surface has been discretized into a grid of point, at which the feed directions have been computed to guarantee the maximum material removal or machining strip width, etc., or are specified to certain cutting requirement. The paper focuses mainly on how to construct the desired tool paths from the preferred feed directions. This may be achieved by fitting a vector field to the feed directions, but fitting a vector field directly on the surface is a difficult task. For the convenience of processing, these preferred feed directions at the sampling points are first mapped into the parameter space.
1.2 Contributions and organization of this paper This paper does not concern the calculation of preferred feed directions at CC points, but dedicates to develop a unified method of generating smooth tool path from the multiple vector fields for CNC machining of the compound NURBS surface, including the methods of the vector field representation and construction, smoothly blending with G1 continuity between the vector fields of adjacent patches to avoid planning additional tool paths to cut the blending area and simultaneously guaranteeing no unappealing visual artifacts left across the shared border. The specific implementation in CAD/CAM systems and the experiments are also discussed and performed to validate our method. The remaining of this paper is organized as follows. The methods of representation and construction methods of vector field in the parameter space are given in Section2. Smoothly blending between the vector fields on the adjacent parameter domains and the condition that maintains G1 continuity of the vector fields on the corresponding adjacent patches are discussed in Section3. Tool path generation process is briefly presented in Section 4. The implementation of the algorithms and the experiments are presented and discussed in Section 5. Finally, the concluding remarks and the future works are presented in Section 6
2.1 Mapping feed directions on a surface to its parameter space As shown in Fig. 1, the feed direction at a point is on the tangent plane of this point and can be described as
where
, are the first partial derivations of surface with respect to and , is the unit normal vector at CC point. can be also expressed in the form of a tangent vector at CC point on the surface as follows
To obtain the representation of feed direction in the parameter space of the surface, the first fundamental matrix of surface is introduced as follows
Let
2. Vector field construction in single parameter space 3
be the angle between
and
,
(a)
(b)
Fig. 2. Feed directions on a compound surface with four patches; (a) Feed directions on the surface; (b) Feed directions in the parameter space
then the vector
can be expressed as
used to represent the streamfunction, which is written as
where matrixes Using it to substitute
,
,
are defined as follows
in Eq. (1) can obtain
where is determinant of matrix E that can be written as . Comparing Eq.(2) with Eq. (6) can obtain the feed direction in the parameter space: The elements in , spline basis function defined over
is k-degree B:
where the coefficient denotes magnitude of and is usually 1. Fig. 2 gives an example of the feed directions transformed into the parameter space. is l-degree B-spline basis function defined over , which has similar defination as . and are both clamped and open knot vector which are determined by the sample points in parameter space. It is well known that the gradient of a function at a point must be perpendicular to the tangent to its level curve at this point. For stream function , it can be written as
2.2 Fitting vector field to the feed directions in parameter space Fitting the continuous vector field to the sampling feed directions is similar to the vector interpolation in a flow field[23]. If we assume that the feed directions in the parameter space are the flow directions of an incompressible plane flow, the concept of stream function can be introduced to capture the feed directions at arbitrary points and the level curves of stream function, i.e. streamlines, can be used as the potential tool paths in the parameter space. Here, considering the flexibility and local control abillity of B-spline basis, a polynomial with B-spline basis is
The first partial derivations of and are calculated by 4
with respect to
Feed direction
Stream line
(a)
(b)
Fig. 3. An example of stream function construction from the sampling feed directions. (a) Sampling feed directions in the parameter space; (b) The obtained stream function fitting to the sampling feed directions using the method in Section 2.2
where
is the first derivation of
with
in every segmentation of
, and
with
in every segmentation of
.
:
is the unknown column vector and . All equattions (see Eq. (15)) at the sample points are collected as
where is the ith knot in knot sequence U and can also be calculated using similar formulas. According to Eq. (11) and Eq. (12), we can obtain
where , is the number of the sample points, . Though Eq. (16) has no exact solutions since it is an over-determined linear equation system, using LS (least-squares) method can find out the approximate solution. Once the coefficients of the stream function are determined, it can be used to obtain the feed directions at arbitrary points, thus realizing the vector field representation in the parameter space. Fig.3 gives an example of a stream function fitting to the sampling feed directions in the parameter space of a single surface.
Eq. (14) can be further simplified as a linear equation:
In Eq. (15), A is a coefficient matrix that composes of Bspline basis function and can be written as ,
3. Vector field blending with G1 continuity
where
For the compound surface, the vector fields are fitted separately on the parameter domains of different patches by the above method, which possibly causes the streamline be out of smooth transition at the shared border of the adjacent parameter domains. Fortunately, the flexibility and local control ability of the polynomial with B-spline 5
2 ( w, v)
1 (u, v)
2 ( w, v)
1 (u, v)
(b)
(a)
Fig. 4. Blending for two adjacent vector fields in the parameter space. (a) Original streamlines; (b) The blended streamlines.
basis leaves room to blend smoothly the vector fields, guaranteeing the smoothness of the streamlines across the border of adjacent parameter domains. Next, the adjacent vector fields blending with G1 continuity in the parametter space will be discussed in detail. 3.1 Blending with G1 continuity for two adjacent vector fields in the parameter space We first discuss the simplest case, i.e. the blending for two adjacent vector fields in the parameter space. Let the vector fields on the two adjacent parameter domains be and , the shared border of the parameter domains be line for the left patch and line for the right patch, as shown in Fig. 4. At a point on the shared border, the feed direction is expressed as follows
The condition of G1 blending of vector field at the shared border is
In practical processing, constant is preferable from the viewpoint of computation. Assume = Putting Eq. (18.a) and Eq. (18.b) into (19) can obtain
It is noted that there are infinite pairs of candidate values satisfying Eq. (20.a). In this situation, it is difficult to get the optimal solution. To solve this problem, it is assumed simply that the elements in the last column of are fixed and only the first column of is adjusted. The elements obtained by adjusting should have the minimum deviation from the original ones.
where the superscript 1 and 2 stand for the left patch and right patch, respectively. The definition of , can be referred to Eq. (8), is a control matrix for and is the control matrix of for . Assume that the knot vectors in direction are same for and , denoted by . In this situation, Eq. (17. a) and Eq. (17.b) are further simplified using and as
where symbol denotes the elements after adjusting. From Eq. (20.a), it can be obtain
Eq. (22) can be solved iteratively after setting can be written as 6
.
4 (u, s)
3 (w, s)
4 (u, s)
3 (w, s)
1 (u, v)
2 ( w, v)
1 (u, v)
2 ( w, v)
(a)
(b)
Fig. 5. Blending of four adjacent vector fields in the parameter space. (a) The original streamlines; (b) The streamlines after blending.
vector fields are blended smoothly so that the streamline can pass across the shared border of the adjacent parameter domains with G1 continuity, as shown in Fig. 5 (b). After putting Eq. (23) into Eq. (21), can be achieved by
3.2 G1 blending for multiple vector fields in the parameter space The above method can be extended to multiple vector fields blending. But, it is noted that if only implementing simply the blending method of Section3.1 between every pair of adjacent vector fields, the blending results appear possibly incompatible problem at the common corner. In fact, this incompatible problem is only related to four control coefficients, close to the common corner, of each stream function, thus the blending strategy is to first blend the adjacent vector fields using the method of Section 3.1 and then adjust the control coefficients around the corner. Four vector fields blending shown in Fig. 5 is taken as an example to explain the blending processes of multiple vector fields. In this case, the incompatible problem is related only to 16 control coefficients around the common corner (the red point in Fig. 5 (a)). They are respectively,
to minimize
Maintaining Eq. (20.a), and in Eq. (20.b) are also adjusted simultaneously to realize G1 blending. Similarly, the minimum deviation to optimize and can be written as
Minimizing subject to Eq. (20.b) can be solved using Lagrange multiplier method and the resulting and are written as
where . Optimize and , then update the original control coefficients by replacing , and using the adjusted , and , respectively. By this method, two
Here, for simplicity, , , and are taken as the same order . For each pair of adjacent vector fields, the compatibility problem is solved by constructing a linear equations 7
Rv(Sv) Tangent plane Pathline v
Streamline
u
f2
R(u,v)
v
w
Sw f1 Ru
Sharp corner
(a)
S(w,v)
(b)
Fig. 6. An non-smooth pathline generated by reversely mapping a stream line with G1 continuity. (a) A G1 blending streamline in the parametric spaces; (b) The sharp corner in the pathline at the common boundary of two adjacent patches.
according to the G1 condition along and across the shared border. For example, for and , the compatibility condition at the shared corner is represented by the following four equations:
shows the blended vector fields using the above blending method for multiple adjacent vector fields. 3.3 G1 blending vector fields on the compound surface Vector fields with G1 continuity in the parameter space do not necessarily mean that the corresponding vector fields on the compound surface have also G1 continuity. It leads to that G1 streamline in the vector fields in the parameter space has not to correspond to G1 path line in the vector fields on the compound surface as shown in Fig. 6. In order to avoid this problem, it is found that as long as the compound surface is C1 continuous, the corresponding vector fields in the parameter space and on the compound surface have the same G1 continuity, thus ensuring the streamline and its corresponding pathline also having also identical continuity. In the following, a brief explanation about this conclusion is presented. Assume the compound surface is C1 continuous. It can be easily deduced that the corresponding vector fields on the compound surface and in the parameter space have identical G1 continuity. The condition of C1 continuity of the adjacent patches and is as follows,
where is the scale factor of G1 blending of and , , are the adjusted control coefficients obtained by the algorithm in Section 3.1 and symbol denotes the adjusted control coefficients satisfying the compatible condition at the common corner. In this way, totally 16 equations is established for solving the compatibility problem of blending four vector fields. Similarly, if patches share a common corner, it needs a system consisting of equations with unknown coefficients. In the normal circumstance, the equation system has the unique solution, but for some special cases, such as vector fields shown in Fig. 5 (a), it has infinite solutions. In this case, the optimal solution can be still gained by using the minimum deviation principle used in Section 3.1, i.e. the deviation between the adjusted coefficients and the original coefficients must be minimized. The deviation is expressed as
If two vector fields have been blended with G1 continuity in the parameter space of and , then at the shared border of the parameter domains, vector in the parameter domain of and vector in the parameter domain of must satisfy
where and on The optimal solution can be achieved when reaches its minimum value under the constraint of Eq. (27). Fig. 5 (b) 8
is a constant coefficient. The direction vectors, which correspond to and and , respectively, can be written as
Putting Eq. (29) and (30) into Eq. (31), it is evident that . That is, the corresponding vector fields on the compound surface have the identical G1 continuity as the vector fields in the parameter space. Next, we assume that the compound surface is only G1 continuous. Under this assumption, the condition, which the compound surface should satisfy under the normal situation, is deduced to guarantee the corresponding vector fields in the parameter space and on the compound surface have the identical G1 continuity. According to [24,25], at the shared border of the adjacent patches and 1 , G continuity condition is as follows,
Eq. (34) always holds. This means that under general situation, if the corresponding vector fields in the parameter space and on the compound surface have the same G1 continuity, the compound surface should be C1 continuous. Under the condition, the pathlines on the surface can also have the identical continuity as the corresponding stream lines in the parameter space across the shared border of two adjacent patches. 4. Tool path generation As mentioned previously, the stream lines in the parameter space correspond to the pathlines, as shown in Fig. 6, which can be also called as stream lines on the surface, so the pathlines have the characteristics similar to stream line, namely smoothly following the feed direction at CC point, having no sharp corners and neither self-intersecting nor intersecting with each other. As long as the sides step between two pathlines can be controlled reasonably, the pathlines can be selected as the desired tool paths. As the pathline can be easily obtained by reversely mapping the stream line in the parameter space onto the surface, in this section, the stream line calculation in the parameter space is discussed in detail and then the stream lines are used to generate the desired tool paths.
Generally, and in Eq. (29) is set as constants and . The condition of G1 blending of vector fields in the parameter space is as follows
where and correspond respectively to two direction vectors on and . If the vector fields on and can also preserve G1 continuity, these two corresponding direction vectors should have a same unit vector, namely
4.1 Stream line generation According to Section 2.2, streamline is the level curve of stream function and satisfy the following equation.
Putting Eq. (32) into Eq. (34) can obtain Once an initial value , also called as the seed point in this paper, is specified, the stream line, passing through this seed point, can be traced by solving Eq. (39) using four-order Runge-Kutta method: Eq. (36) can be easily drawn from Eq. (35)
where is step size of in the numerical iteration, , and are calculated by
,
Putting Eq. (36) into Eq. (33) produces
For a general compound surface, the ratio is not constant, but varies along the shared border of the adjacent patches. In this case, only when and ,
4.2 Seed point selection Any one of the streamlines in the parameter space can be selected to generate the initial tool path on the surface. After that, next stream line is computed such that the side 9
(u1b , v1b ) ( wb2 , vb2 ) Undercut domain
i2th 2 (wb,2 a , vb,2 a ) 2 ( wb2 , vb2 )
The ith stream line
1
Stream line generated from (u s1 , vs1 ) Stream line generated from ( ws2 , vs2 )
2
Iso-plane of stream function
1 | 2 (wb,2 a , vb,2 a ) i2th |
Curves fitted to the calculated parameter points (ui1, j , vi1, j ) in every parameter domain. (a)
2 | 2 ( wb2 , vb2 ) i2th |
(b)
Fig. 7. Seed point selection for calculating the stream line. (a) The candidate seed points on the shared border; (b) Determination of the seed points.
step between its corresponding tool path and the previous tool path can be as wide as possible. Assume is the allowed side step at CC point, the corresponding parameter increment between two stream lines, which correspond to two adjacent tool paths, in the parameter space can be calculated by
seed points for the i+1th stream line on the two parameter domain, respectively. As shown in Fig.7, on the shared border, a point having the same value of stream function as :
is identified. At the same time, another point , on the share border, which has the same value of stream function as , is also determined. where and are the normal vector of the surface and the feed direction at CC point, respectively. Once the parameter increments at all CC points , where j indicates the jth point on the ith stream line, are gained, the stream function is evaluated at the parameter points
Then, is evaluated at which is the same point as on the shared border. Let be the value of stream function on the ith stream line, as shown in Fig. 7, then if
Then, the point , which has the minimum increment of stream function value from the corresponding point on the ith stream line, is selected as the seed point for next stream line. That is
is selected as the seed point; otherwise, the seed point is . After the seed point on the shared border is determined, the stream lines on these two adjacent parameter domains can be calculated by Eq. (40), which are then reversely mapped onto the compound surface to produce the tool path along the preferred feed directions. As shown in Fig. 7 (a), the stream line obtained by using this method does not produce any undercuts.
If the stream line is across the shared border from one parameter domain to its adjacent parameter domain, the seed point can be determined on the shared border using the following method. Assume and are the stream functions on two adjacent parameter domain, respectively, and are the candidate
5. Implementation and experiments 5.1 Implementation of algorithm Our method has been developed based on the famous geometric modeling kernel, 3D ACIS Modeler, which is the one of the two most widely used geometric modeling 10
(a)
(b)
(c)
Fig. 8. Two kinds of tool paths generated on the lampshade by the proposed methods. (a) The lampshade surface with five patches; (b) Tool paths generated on the non-blending vector fields; (c) Tool paths generated on the blending vector fields.
(a)
(b)
Fig. 9. Stream lines in two adjacent parameter domains of lampshade; (a) Stream lines in the non-blending vector fields; (b) Stream lines in the blending vector fields.
kernels in many CAD/CAM software systems (The other is Parasolid, from Siemens PLM) such that the proposed algorithm can be integrated easily and rapidly into these widely used CAD/ CAM systems and be implemented in the machine shop floor. For the implementation of our algorithm, the key is to gain the adjacency relationship of the patches and recognize their shared border both on the surface and in the parameter space. Using this geometric modeling kernel, all information about the compound surface, including the geometry of patches and topological relationships among the adjacent patches can be retrieved conveniently. Generally, the selected patches to be machined are all stored in an Entity list. The first patch can be selected to launch the algorithm that is used to search the geometry of this patch, including the index, the equation of surface, the parameter interval and the edges bounding this patch, etc. In the data structure of edge, it has a poin-
ter which points to the adjacent patch of the current patch if this pointer is not NULL. Using the index of patch, the visiting repeatedly to a patch can be avoided. In this way, the geometry and topology in Entity list are very explicit for our algorithm such that it can be easily coded and implemented in CAD/CAM systems and be used rapidly in the actual industry applications. 5.2 Application to the typical compound surface In this section, a lampshade that is represented by five patches, as shown in Fig. 8 (a), is first used to test the proposed method. Though it has five patches, two adjacent patches only share one border; thus the adjacent vector fields blending can be realized by the method of Section 3.1. In the experiment, a ball end cutter with a diameter 12mm is used, the scallop height is set to be 0.2mm, the preferred feed directions are specified as the ones of the 11
(a)
(b)
(c)
(d)
Fig. 10. Three kinds of tool paths on the compound surface with two patches; (a) Surface model. (b) SNPath;(c) SBPath; (d) OBPath.
(a)
(b)
Fig. 11. (a) The stream lines corresponding to SNPath; (b) The stream lines corresponding to SBPath;
maximum machining strip width, and two kinds of tool paths are generated. One is the tool path generated on the non-blending vector fields, as shown in Fig. 8 (b) and the corresponding stream lines are shown in Fig. 9 (a), the other is the tool path on the blending vector fields, shown in Fig. 8 (c) and the stream lines are shown in Fig. 9 (b). As five patches of the lampshade have the same topology, only tool paths on arbitrary pair of adjacent patches are shown in Fig.8 as well as the stream lines in Fig. 9. From the results of Fig. 8, it is clearly seen that the tool paths
generated on the blending vector fields have no sharp corners and realize the smooth transition of tool paths at the shared border of the adjacent patches, compared with the tool paths on the non-blending vector fields. Thus, when the compound surface needs to be milled by the smooth, continuous tool paths, having the desired machining performance, across the boundary of the adjacent patches, the proposed method is very applicable and feasible. 5.3 Machining and comparison of the proposed method A compound surface with two patches shown in Fig.10 12
(a)
(b)
(c)
(d)
Fig. 12. Machining experiments of three kinds of tool paths in Fig.10; (a) Machining of SNPath; (b) Machining of SBPath; (c) Machining of OBPath; (d) The magnified views of the boundary of two patches.
(a) is first tested and machined. In this test, the radius of the used ball end cutter is 6mm and the machining scallop height is set to be 0.1 mm. For comparison, two kinds of the vector fields are designed. One is the simple vector fields in which the feed directions at the sampling points maintain relative to the parameter line, as shown in Fig. 11. Such feed direction is usually determined according to the overall machining tendency after analyzing the preferred feed directions at all sampling points, as done in [17, 21]. The other is the vector fields consisting of the maximum machining strip width directions at the sampling points. The designed vector fields are blended using the method of Section 3.1. On the simple vector fields, two kinds of tool paths are produced. One is constructed on the non-blending simple vector field, denoted by SNPath and shown in Fig.10 (b), and the other is generated on the blending simple vector fields, denoted by SBPath and shown in Fig. 10 (c). The tool paths generated on the vector fields representing the preferred feed directions by our method are shown in Fig. 10 (d) and denoted by OBPath. As mentioned in Section 4, OBPath is generated by reversely mapping the stream
line along the preferred feed directions at the sampling points on the parameter domain, thus compared with the two kinds of tool paths on the simple vector fields, i.e. SNPath and SBPath, OBPath generated by our method can comply better with the preferred feed directions at CC points. All tool paths shown in Fig. 10 are applied to machine the test surface and the machined surfaces are shown in Fig. 12 and the comparison results are listed in Table 1. From Fig. 12, it is seen that, benefiting from the vector fields blending method of Section 3, the tool paths generated based on the blending vector field, i.e. SBPath and OBPath, can generate the better surface finish at the shared border of the adjacent patches. According to Table 1, OBPath can hold the best performance on the aspects of either the length of tool path or the machining time. The second test surface is the upper surface of the car seat pillow, as shown in Fig. 13 (a), which is modeled by four patches around a common corner with C1 continuity, and this surface is more complicated than the test surface in Fig. 10 (a). In this test, the same cutter and machining scallop height are applied. Similar to the above test, three kinds of tool paths, i.e. SNPath, SBPath and OBPath, are 13
Table 1. Comparison of experimental results of generated three kinds of tool paths in Fig. 10 and Fig. 13. Surface model
Fig. 10 (a)
Fig. 13 (a)
Tool path
Number of
Total length of
Machining time
Improvement of
Improvement of
generation method
sharp corner
tool path (mm)
(s)
tool path length
machining time
SNPath
31
5643.4
510
8.5%
10.4%
SBPath
0
5656.1
504
8.7%
9.3%
OBPath
0
5165.3
457
-
-
SNPath
102
8577.0
748
9.2%
12.2%
SBPath
0
8608.4
731
9.5%
10.1%
OBPath
0
7787.5
657
-
-
Note: the improvements of either the tool path length or the machining time are both ones of OBPath relative to SNPath or SBPath.
(b)
(a)
(c)
(d)
Fig.13. Three kinds of tool paths on the compound surface with four patches. (a) Surface model; (b) SNPath;(c) SBPath; (d) OBPath.
generated on the seat pillow surface and shown in Fig. 13 (b)-(d), respectively. From the machined surfaces shown in Fig.14 and the comparison of tool paths listed in Table 1, the same conclusions can be drawn that the tool paths based on the blending vector fields, SBPath and OBPath, produce the better surface finish at the boundary of the adjacent patches, and OBPath generated on the preferred blending vector fields using the proposed method is more efficient on the aspects of either the length of tool path or
the real machining time. 6. Conclusions A unified method of generating tool path based on multiple vector fields is proposed for the compound surface, mainly including the vector field reconstruction, adjacent vector fields G1 blending and stream line based tool path generation process. In the construction of the vector field the tangent line of the stream line at a point is specified 14
(a)
(b)
(d)
(c)
Fig. 14. Machining experiments of three kinds of tool paths in Fig. 13. (a) Machining of SNPath; (b) Machining of SBPath; (c) Machining of OBPath; (d) The magnified views of the boundary of two patches.
as the feed direction at the point in the parameter domain, therefore the tool path obtained by reversely mapping the stream line onto the surface must follow the corresponding feed directions on the surface, thereby guaranteeing to achieve the expected machining performance at CC point. So, by means of our method, the machining intent of the process designers at every CC point can be conveniently integrated into the tool path designing. Undoubtedly, this will bring the great flexibility for tool path designing. Another point worth noting is that the blending of two adjacent vector fields with G1 continuity in the parameter space is first processed, and simultaneously the condition that the corresponding vector fields on the compound surface maintain G1 continuity is also discussed. Under this condition, the tool path on the surface and the corresponding stream line in the parameter domain have the same continuity, guaranteeing the tool paths can pass smoothly across the boundary of the adjacent patches and avoiding planning additional tool paths to machine their blending
area, such that the desired surface finish is achieved. This point has been also demonstrated by the experiments. In addition, compared with those methods that only use the vector fields to determine the overall machining direction, our method can obtain the better machining performance on the aspects of both the total length of tool path and the actual machining time. It is also noted that although the vector fields blending has been able to ensure the smooth transition of tool path across the boundary of the adjacent patches, the machining performance at this area is still limited by the physical capacities of the machine tool. The vector fields blending under the constraints of the geometry accuracy and kinematical limitations of the machine tool will be the works that have to be addressed in this field. References [1] 15
Lasemi A, Xue D, Gu P. Recent development in CNC
machining of freeform surfaces: A state-of-the-art review.
efficient sculptured surface machining. Comput Aided
Comput Aided Des 2010; 42(7): 641-654. [2]
Des 2015; 67: 1-12.
Zhang K, Tang K. Optimal five-axis tool path generation
[15] Bohez EL, Makhanov SS, Munlinb M. On 5-axis
algorithm based on double scalar fields for freeform
freeform surface machining optimization: vector field
surfaces. Int J Adv Manuf Technol 2016; 83(9-12): 1503-
clustering approach. Int J CAD/CAM 2009; 5(1): 1-14.
1514. [3]
[16] Moodleah S, Makhanov SS. 5-axis machining using a
Sun YW, Guo DM, Wang HX. Iso-parametric tool path
curvilinear tool path aligned with the direction of the
generation from triangular meshes for free-form surface
maximum removal rate. Int J Adv Manuf Technol 2015;
machining. Int J Adv Manuf Technol 2006; 28(7-8): 721-
80(1-4): 65-90.
726. [4]
[17] Quinsat Y, Sabourin L. Optimal selection of machining
Feng HY, Li H. Constant scallop-height tool path
direction for three-axis milling of sculptured parts. Int J
generation for three-axis sculptured surface machining.
Adv Manuf Technol 2006; 27(11-12): 1132-1139.
Comput Aided Des 2002; 34(9): 647-654. [5]
[18] Zhang K, Tang K. An efficient greedy strategy for
Ding S, Mannan MA, Poo AN, et al. Adaptive iso-planar
five-axis tool path generation on dense triangular mesh.
tool path generation for machining of free-form surfaces.
Int J Adv Manuf Technol 2014; 74(9-12): 1539-1550.
Comput Aided Des 2003; 35(2): 141-153. [6]
[7]
[8]
[9]
[19] Kim T, Sarma SE. Tool path generation along directions
Chiou CJ, Lee YS. A machining potential field approach
of maximum kinematic performance; a first cut at
to tool path generation for multi-axis sculptured surface
machine-optimal paths. Comput Aided Des 2002; 34(6):
machining. Comput Aided Des 2002; 34(5): 357-371.
453-468.
Senatore J, Segonds S, Rubio W, et al. Correlation
[20] Li LL, Zhang YF, Li HY. Generating tool-path with
between machining direction, cutter geometry and step-
smooth posture change for five-axis sculptured surface
over distance in 3-axis milling: application to milling by
machining based on cutter’s accessibility map. Int J Adv
zones. Comput Aided Des 2012; 44(12): 1151-1160.
Manuf Technol 2011; 53(5-8): 699-709.
Vijayaraghavan A, Hoover AM, Hartnett J, et al.
[21] Lamikiz A, De Lacalle LL, Sánchez J A, et al. Cutting
Improving end milling surface finish by workpiece
force integration at the CAM stage in the high-speed
rotation and adaptive tool path spacing. Int J Mach Tools
milling of complex surfaces. Int J Comput Integr Manuf
Manuf 2009; 49(1): 89-98.
2005; 18(7): 586-600.
Chen ZC, Fu Q. A practical approach to generating
[22] Pavanaskar S, Pande S, Kwon Y, et al. Energy-efficient
steepest ascent tool-paths for three-axis finish milling of
vector field based toolpaths for CNC pocketmachining. J
compound NURBS surfaces. Comput Aided Des 2007;
Manuf Process 2015; 20: 314-320. [23] Scheuermann G, Tricoche X, Hagen H. C1-Interpolation
39(11): 964-974.
for vector field topology visualization. Visualization’99
[10] Xu JT, Sun YW, Zhang L. A mapping-based approach to eliminating self-intersection of offset paths on mesh
Proceedings. IEEE 1999; 271-79
surfaces for CNC machining. Comput Aided Des 2015;
[24] Du WH, Schmitt FJ. On the G1 continuity of piecewise
62: 131-142.
Bezier surfaces: a review with new results. Comput Aided Des 1990; 22(9): 556-573.
[11] Huertas-Talón JL, García-Hernández C, Berges-Muro L,
[25] Shi X, Wang T, Wu P, et al. Reconstruction of et al. Obtaining a spiral path for machining STL surfaces
convergent G1 smooth B-spline surfaces. Comput Aided
using non-deterministic techniques and spherical tool.
Geom Des 2004; 21(9): 893-913.
Comput Aided Des 2014; 50: 41-50. [12] Sun YW, Xu JT, Jin CN, et al. Smooth tool path generation for 5-axis machining of triangular mesh surface with nonzero genus. Comput Aided Des 2016; 79: 60-74. [13] Liu X, Li YG, Ma SB, et al. A tool path generation method for freeform surface machining by introducing the tensor property of machining strip width. Comput Aided Des 2015; 66 1-13. [14] Kumazawa GH, Feng HY, Fard MJB. Preferred feed direction field: A new tool path generation method for 16
Feed direction
(a)
Stream line
(b)
Fig. 3. An example of stream function construction from the sampling feed directions. (a) Sampling feed directions in the parameter space; (b) The obtained stream function fitting to the sampling feed directions using the method in Section 2.2