Design and Development of an in situ Machining Simulation System Using Augmented Reality Technology

Design and Development of an in situ Machining Simulation System Using Augmented Reality Technology

Available online at www.sciencedirect.com Procedia CIRP 3 (2012) 185 – 190 45th CIRP Conference on Manufacturing Systems 2012 Design and Developmen...

465KB Sizes 0 Downloads 79 Views

Available online at www.sciencedirect.com

Procedia CIRP 3 (2012) 185 – 190

45th CIRP Conference on Manufacturing Systems 2012

Design and Development of an in situ Machining Simulation System Using Augmented Reality Technology J. Zhanga, S.K. Onga, A.Y.C. Neea,* a

Mechanical Engineering Department, Faculty of Engineering National University of Singapore, Singapore * Corresponding author. Tel.: +65-6516-2892; fax: +65-6779-1459. E-mail address: [email protected]

Abstract CNC machining simulation has been developed to validate NC codes and optimize the machining process. Conventional simulation systems are usually performed in virtual environments, and this has the limitation that the operator needs to transfer the knowledge from the software environment to the real machining environment. The ARCNC system is proposed in this paper where the operator can observe in situ simulation between the real cutter and a virtual workpiece. The system design and the research problems addressed are discussed in this paper, including the tracking and registration methods and the physical simulation approach based on an enhanced dexel model. © 2012 2012 The The Authors. Authors. Published Published by by Elsevier Elsevier B.V. B.V. Selection Selection and/or © and/or peer-review peer-reviewunder underresponsibility responsibilityofofProfessor ProfessorD.D.Mourtzis Mourtzisand and Professor G. G. Chryssolouris. Professor Chryssolouris. Keywords: CNC machining simulation; Augmented reality; Enhanced dexel model

1. Introduction CNC machining simulation systems have been developed in virtual environments for NC tool path verification and machining process optimization. CAM simulation systems were first introduced in the early 2000s. VR-based CNC simulation systems were next developed [1], and a comprehensive review of VR-based systems has been reported by Kadir et al [2]. Although applied broadly in the manufacturing industries, limitations exist as the systems are usually softwarecentric rather than machine tool-centric. The user has to adjust the experience gathered from the 3D graphic environment to the real machining environment. AR technology has been applied widely in various areas, including medical, entertainment, military, education, etc. [3,4]. Last decade saw various AR applications in the manufacturing industries [5]. By enhancing the users’ understanding and interactions with the manufacturing environment, shorter lead time and lower manufacturing costs can be achieved. In addition, providing simulation in a real environment partly

removes the time-consuming geometric and kinematic modelling of the machine tools and accessories in the real environment, and thus improves the simulation efficiency. Few studies have reported AR applications in CNC machining simulation. The ASTOR system [6] was developed to enable real-time visualization of the machining conditions on real machining scenes using a holographic optical element window installed on a lathe. Weinert et al. [7] developed a CNC machining simulation system for 5-axis CNC machines. An ARToolKit [8] marker was used to track the movement of the cutter with respect to the machine table, and dexel boards were used to model the workpiece. This paper presents the implementation of AR in a CNC machining environment to achieve an in situ CNC machining simulation system, namely, the ARCNC system, for ball-end machining operations on a 3-axis vertical CNC machining centre. A virtual workpiece is rendered onto the worktable of a real CNC machine, and a virtual cutter is registered with the real cutter moving according to given NC codes. The ARCNC system provides machining simulation on real CNC machines so that the user can acquire the knowledge of the specific

2212-8271 © 2012 The Authors. Published by Elsevier B.V. Selection and/or peer-review under responsibility of Professor D. Mourtzis and Professor G. Chryssolouris. doi:10.1016/j.procir.2012.07.033

186

J. Zhang et al. / Procedia CIRP 3 (2012) 185 – 190

CNC machines intuitively. The ARCNC system can be used to train novice machinists and observe machining simulation before the actual machining operations. The paper is organized as follows. Section 2 presents a review of the related research work. Section 3 discusses the system design and research tasks. Section 4 presents the methodologies formulated, and the experimental case studies that have been carried out. Conclusions and future work are discussed in Section 5. 2. Literature Review 2.1. Geometric simulation methods Geometric simulation of the material removal process is an essential aspect in CNC machining simulation. Three groups of modelling methods have been applied, namely, the solid modelling and approximation methods [9-12], the discrete vector intersection (DVI) methods [13,14], and the spatial partitioning representation (SPR) methods using dexels [15-17]. Using the approximate solid modelling methods and the DVI methods, the geometric simulation process can be simplified by converting the 3D models into 2.5D objects. However, the approximate solid modelling method has one limitation which is its view-dependency. The DVI method also has some limitations. It is difficult to develop proper vectors from surface points that have abrupt changes in the normal directions, e.g., edges, sharp grooves, etc., such that it is difficult to achieve simulation of these areas. Furthermore, the DVI method does not provide volumetric models of the objects. The SPR method overcomes the drawbacks in the DVI and the solid modelling methods. With the SPR method, volumetric units, normally parallel cubic cells, are introduced and arranged to be independent of the viewpoint of the user. The SPR method can be applied not only to part verification, but also volumetric information-based tasks. The model partitioning and updating process using the SPR method is based on a sampled surface. The dexel width w affects the accuracy of the simulation, and it should be selected carefully to ensure a good balance between simulation accuracy and system efficiency. Assuming the ball-end cutter radius is R, a w/R ratio has been evaluated by researchers for computation effectiveness and efficiency [16,18-19]. Researchers have also developed enhanced dexel models [20-22] and triple dexel-based surface modelling methods [23-24] for the purpose of improving computation efficiency and accuracy, and implementing certain functions during machining simulation. However, simulation using the tri-dexel model requires higher computation resources and longer computation time compared with using the single-direction dexel model.

2.2. Physical simulation methods On the physical simulation aspect, MRR and machining forces are usually considered as the two typical factors that are observed closely during machining simulation and real machining processes. MRR is considered to be proportional to the average power consumption P during a machining process [25]. Researchers have used MRR to optimize machining parameters, such as feed rate, spindle speed, etc., by maximizing the MRR during the machining processes [26-27]. Discrete models [28] and the solid modelling method [29-31] have been applied to model the workpiece for MRR calculation. MRR is usually determined by dividing the volume removed from the workpiece during one tool path by the path machining time. If the dexel model is applied to the workpiece, the dexels along this tool path are identified and the volume removed along this tool path is determined [32]. This method has two limitations. Firstly, it is possible that machining processes using different machining parameters yield the same MRR results. Secondly, the averaged MRR result does not show dynamic changes that may have occurred within one tool path. Accurate estimation of machining forces facilitates the prediction of machining conditions. Machining forces can also be used as a reference for the process planners to optimize the machining parameters. Mechanistic machining force modelling methods based on chip load analysis have been studied by many researchers. These methods are generally based on the relationship between the machining force F and the chip load area, which can be simplified as a product of the width and the thickness of cut. Sun et al. [33] developed a new chip thickness model considering the tool motion under different feed rate and tool path conditions using a Z-map model to determine the tool engagement. Wei et al. [34] improved the conventional chip thickness model using the equivalent feed rate and the approximated cutting cross-section during transient cutting processes during pocket machining. Wan et al. [35] took cutter runout into consideration when modelling the instantaneous uncut chip thickness. Simplified models have also been developed relating the maximum cutting forces with the machining parameters. Fan and Loftus [36] provided experimental analysis to address the relationship between the maximum cutting force with depth of cut, width of cut, feed per tooth, and chip load. Their analysis shows that the cutting force can be expressed as logarithmic functions of one or several of these four parameters under certain conditions.

187

J. Zhang et al. / Procedia CIRP 3 (2012) 185 – 190

3. Methodologies The ARCNC system consists of four units, viz., a 3axis vertical CNC machine, a display device, a camera and a desktop PC as the computing unit. The video seethrough configuration is used in the ARCNC system as it allows different users to focus on different information and tasks, which can be useful during a training session when several trainees are involved, and the augmented virtual contents will not lag behind the real scene captured using the camera. A Firewire camera is used in the ARCNC system to stream the live video of the scene to the vision-based tracking and registration functional module. Camera calibration was conducted to achieve the intrinsic parameters of the Firewire camera using the camera calibration toolbox for MATLAB [37]. The experiments discussed in this paper were set up on a 3axis vertical CNC machine (Mori Seiki NV5000 vertical machining centre). 3.1. Machining coordinate system reconstruction In the NV5000 vertical machining centre, the worktable moves in the XY-plane and the cutter moves simultaneously along the Z-axis. The machining coordinate system (MCS) needs to be reconstructed, while the cutter should be registered to the MCS in realtime. A multi-region tracking and registration scheme has been formulated in this research. An assumption is that there are no abrupt movements of the camera with respect to the CNC machine. During initialization, the user specifies one rectangular region of interest (ROI) to include the surface where the virtual workpiece will be located on (Fig 1a). Four base points (BPs) within this ROI will be chosen in a clockwise direction to specify the orientation of the WCS (Fig 1b-c). Locating surface

Z

Y X

the ith frame, template matching is applied first to find a best matching area of the locating surface. The KLT feature tracking method [38] is applied to track the four BPs within the best matching area. A second-level template matching for the four BPs is employed as an alternative tracking method. Templates of the BPs are recorded during initialization as well (Fig 1d). If any of the four BPs tracked using the KLT tracker is lost from the previous frame, a template matching process will be applied to recover this point. 3.2. Cutter registration scheme To perform the in situ simulation, the coordinates of the real cutter in the reconstructed MCS have to be determined. Feature-based tracking methods cannot be applied as it is difficult to identify feature points from 2D projections of a ball-end cutter with a diameter of only a few millimetres. On the other hand, area-based tracking methods, such as template matching, can only reflect the 2D positions of the cutter in the image plane, and the 3D information will generally be lost. Hence, in the ARCNC system, information collected from the NC codes including the start- and end-points, the feed rate, and the machining operation type, is applied as constraints to determine the cutter coordinates. A second template matching is applied in the ARCNC system for the cutter registration. Apart from the ROI for the reconstruction of the MCS, the user will specify another ROI containing the cutter in the upper part of the scene. For ith frame, the best match of the cutter template is denoted as (uic, vic) in the image plane. It should be noted that the matching result (uic, vic) is not the projective position of the cutter (ui, vi). However, taking into consideration of the spindle and the cutter as rigid bodies, the offset of this matching result, (Δu, Δv), is equal to the offset of the projective position of the cutter. Cutter registration is thus achieved using Equation (1), where ρi is a non-zero scalar and (xi, yi, zi) is the cutter coordinates.

ROI (a)

(c)

(b)

Template for BP 1

BP 2

BP 4

BP 3 (d)

Fig. 1. Initialization of the MCS

The tracking of the four BPs is accomplished using a hybrid area-based and feature-based tracking method. A template including the pixels within the ROI will be automatically recorded during initialization (Fig 1d). For

ªui 1  'u º Ui «« vi 1  'v »» «¬ »¼ 1

A > Ri

ª xi º «y » Ti @ « i » « zi » « » ¬1¼

(1)

This registration scheme can be applied to 3-axis machining operations with the pre-condition that only two independent variables among xi, yi and zi need to be derived. Specifically, this pre-condition applies to two machining categories. Firstly, if only one or two coordinates have changed during the machining process, the scheme is applicable since the given coordinate can be applied as a constraint to solve Equation (1).

188

J. Zhang et al. / Procedia CIRP 3 (2012) 185 – 190

Secondly, if all three coordinates change at the same time and two coordinates are dependent on each other, which means one can be expressed by another, this scheme is applicable. The registration scheme is not applicable if xi, yi and zi change independently at the same time. 3.3. Enhanced dexel-based physical simulation In a conventional dexel model for 3-axis machining [17], only the dexel height is considered in the data structure, which is the height of the dexel along the Zaxis in the reference coordinate system. In the proposed enhanced dexel model, three new parameters are introduced, namely, the volume removed v, the intersection start time ts, and the intersection end time te. The interval (ts, te) is denoted as the intersection timespan (ITS). These four parameters will be updated for each machining path after the dexel is intersected by the cutter. The dexel width w is determined based on a comparison study between values of 0.04 [14], 0.2 [18] and 0.1. Based on the study, the value of w/R is specified as 0.1 in this research. The enhanced dexel model has been developed to facilitate MRR calculation and machining force estimation. Assumptions have been made in this research to simplify machining force modelling. First, the ballend cutter is modelled using its profile and the helical flutes are not considered. Secondly, the machining force F is considered to be proportional to the chip load area and the chip load is approximated by the cross-sectional area of the workpiece material being removed by the cutter. Hence, in order to estimate the machining forces, determination of the cross-sectional area of the material removed is vital during the machining process. An offline cross-sectional area calculation is carried out before the simulation by calculating and recording the cross-sectional area data generated when an enhanced dexel is intersected by a cutter moving along arbitrary paths with a unit feed rate Δf of 10 (mm/min). Assume a dexel with an initial height of zd (zd > R) is located at (0, 0, R- zd) in a Euclidean coordinate system, and a cutter moves along an arbitrary path and intersects this dexel from a start position of (X, Y, R) (Fig 2). Since the dexel is comparatively much smaller than the cutter when w/R = 0.1, the cutter is considered as moving along a linear path with a constant speed during the intersection. The path can be defined geometrically by three parameters, namely, an angle θ from the feed direction to the XY-plane, an angle φ from the projection of the feed direction on the XY-plane to the X-axis, and the distance l from the origin of the dexel to the tool path on the XY-plane, as shown in Fig 2. To address all the possible paths, offline calculation will be carried out iteratively for every possible combination of {θ, φ, l}.

Feed direction

Feed direction

Z

Y

θ φ

R

φ

l

Y

X

X w

Fig. 2. Cutter intersects a dexel from an arbitrary feed direction

Several characteristics of the three parameters θ, φ and l are identified. First, a path with θ =-90° means a drilling operation, and in this case, the value of φ is fixed as 0°. Secondly, a path with θ = 90° means a direct cutter retrieval and no intersection will happen; thus it is not considered in offline calculation. Thirdly, calculation based on φ is symmetric with respect to both X- and Yaxes; thus calculation in the range of [0°, 90°) for φ would be sufficient. Therefore, offline calculation will be performed using the parameters θ, φ and l in the respective ranges of [-90°, 90°), [0°, 90°), and [0, R]. The three parameters will be increased in steps of 5°, 5° and w during offline calculation. Bilinear interpolation is applied for the other θ and φ values during offline calculation. The cross-sectional area during a full intersection will be calculated and recorded during offline calculation. A full intersection means the cutter has moved past the dexel to the point that no material can be removed. For any paths defined by {θ, φ, l}, full intersection occurs between t0 = 0 and t, which can be determined based on triangulation. The offline cross-sectional area calculation is carried out according to the following steps: 1. Assume for a tool path {θ, φ, l}, the cutter removes a piece of material from the dexel during a period of (t1, t2) ((t1, t2)  (t0, t)) (Fig 3a). A set of cross-sectional planes can be defined inside this piece of material as shown in Fig 3b, and the geometry of these crosssectional planes is determined as below. 2. Assume the cutter positions at the time instance t1 and t2 are p(x1, y1, z1) and p(x2, y2, z2), respectively. The bounding surfaces of this piece of material can be determined from the cutter profile and the dexel structure. A point p0(0, 0, zp) is defined on the upper surface. 3. Given the cutter position p(x1, y1, z1) at t1, the radial vectors r can be calculated as r = (–x1, –y1, zp–z1). The tangential vector t is considered to be parallel to the XY-plane and thus it will be determined according to r as (y1, –x1, 0). 4. The cross-sectional planes are defined to be perpendicular to the tangential vector t (Fig 3b). One of these planes is defined to pass through the point p0,

J. Zhang et al. / Procedia CIRP 3 (2012) 185 – 190

and a spacing distance Δd is defined between these planes (Fig 3c). Hence, each plane can be defined with t and a point pk. 5. The cross-sectional area A during (t1, t2) can thus be determined using numerical integration. 6. Repeat Steps 2 to 5 to calculate the cross-sectional area during the full intersection period (t0, t) for the path {θ, φ, l} with the unit feed rate Δf. 7. Repeat Steps 1 and 6 to calculate the cross-sectional area for all the possible tool paths.

189

observe the new machining process using the updated codes. Simple collision detection has also been integrated in the system so that a warning message is rendered to the user when a collision is detected between the cutter and a virtual fixture. Fig 4 shows several experimental scenes captured during the experiments.

Cross-section planes

Y X Material removed between (t1, t2)

Fig. 4. Experiment scenes (left) rendering of machining simulation and conditions; (right) rendering of collision detection warning message

4. Conclusion and Future Work

Tangential and radial vectors (a)

Tangential vector t

(b) Radial vector r Δd p0(0, 0, zp) (c)

Fig. 3. A series of cross-sectional planes during (t1, t2)

During simulation, the feed direction θ and φ can be determined according to the given tool path. The nearest distance l can be determined through identifying the intersected dexels [39]. Next, the cross-sectional area for a full cutter-dexel intersection given the path {θ, φ, l} can be retrieved from offline calculation. A full intersection may not happen for all the dexels that are machined during a normal machining process. Hence, mapping the retrieved cross-sectional area from the dexel-based machining period (t0, t) to the path-based machining period is necessary so that the data from each intersected dexel can be accumulated numerically at the end of the machining period. Based on the cross-section area, the linear square fitting method is applied in this research to calibrate the machining force. 3.4. Experiments Experiments have been carried out to verify the proposed ARCNC system in the system applicability. During the experiments, the ARCNC system renders a virtual workpiece being machined according to the movement of the real cutter, as well as the machining conditions estimated by the physical simulation methods proposed. The user is allowed to alter the parameters in the given NC codes during the experiments and to

The ARCNC system presented in this paper can provide CNC machining training to novice operators, offer trial runs before actual machining, and detect any collision between cutter and fixture. It provides high visualisation for planning simulated machining operations in a real machining environment with minimum modelling work. The “in situ” feature demonstrated in the experiments shows that the simulation can be achieved in synchronization with the movements of the real cutter and worktable, and the simulation scene can be rendered onto the machine dynamically. The machining simulation is presented to the user with a strong sense of realism, and he can operate the real CNC machine and observe the simulation simultaneously. The system can be used with any CNC machine that the user is familiar with or is trained for. The ARCNC system has several limitations. Specifications of hardware, including the camera and the display device, restrict the tracking and registration accuracy as well as the rendering accuracy. Secondly, the computer vision based tracking and registration method imposes computation constraints on the ARCNC system, and this partly causes the low frame rate observed during the experiments. Future studies are proposed to improve the ARCNC system. Firstly, the template matching method applied in this research may not be accurate under large scale and perspective changes caused by abrupt camera movements. Further studies on rotation- and scaleinvariant template matching methods are needed to improve the tracking performance of the system if the camera needs to be moved. Secondly, when the user changes the codes through the machine panel, the NC codes stored in the system may not be changed automatically, and vice versa. Thirdly, the button

190

J. Zhang et al. / Procedia CIRP 3 (2012) 185 – 190

triggering mechanism is not very prompt and intuitive. It is recommended to apply speech recognition to the system. References [1] Chryssolouris G., Mavrikios D., Fragos D., Karabatsou V., Pistiolis IK., 2002. A Novel Virtual Experimentation Approach to Planning and Training for Manufacturing Processes, Int. Journal of Computer Integrated Manufacturing 15, p. 214-221. [2] Kadir A.A., Xu X., Haemmerle E., 2001. Virtual Machine Tools and Virtual Machining – A Technological Review, Robotics and Computer-Integrated Manufacturing 27, p. 494-508. [3] Azuma, R., 1997. A Survey of Augmented Reality, Presence: Teleoperators and Virtual Environments 6, p. 355-385. [4] Azuma, R., Baillot, Y., Behringer, R., Feiner, S., Julier, S., MacIntyre, B., 2001. Recent Advances in Augmented Reality, IEEE Computer Graphics and Applications 21, p. 34-47. [5] Ong, S.K., Zhang, J., Shen, Y., Nee, A.Y.C., 2011. Augmented Reality in Product Development and Manufacturing, Handbook of Augmented Reality, Borko, F., (Ed.), Springer. [6] Olwal, A., Gustafsson, J., Lindfors, C., 2008. Spatial Augmented Reality on Industrial CNC Machines, In SPIE 2008 Electronic Imaging, the Engineering Reality of Virtual Reality 2008, p. 6804. [7] Weinert, K., Zabel, A., Ungemach, E., Odendahl, S., 2008. Improved NC Path Validation and Manipulation with Augmented Reality Methods, Production Engineering 2, p. 371-376. [8] Kato, H., Billinghurst, M., 1999. Marker Tracking and HMD Calibration for a Video-Based Augmented Reality Conferencing System, In IWAR’99, p. 85-94. [9] Hook, T.V., 1986. Real-time Shaded NC Milling Display, Computer Graphics 20, p. 15-20. [10] Wang, W.P., Wang, K.K., 1986. Real-Time Verification of Multiaxis NC Programs with Raster Graphics, In ICRA1986, p. 166-171. [11] Hsu, P.L., Yang, W.T., 1993. Realtime 3D Simulation of 3-Axis Milling Using Isometric Projection, Computer-Aided Design 25, p. 215-224. [12] Menon, J., Marisa, R.J., Zagajac, J., 1994. More Powerful Solid Modeling through Ray Representations, IEEE Computer Graphics and Applications 3, p. 22-35. [13] Chappel, T., 1983. The Use of Vectors to Simulate Material Removed by Numerically Controlled Milling, Computer-Aided Design 15, p. 156-158. [14] Jerard, R.B., Hussaini, S.Z., Drysdale, R.L., Schaudt, B., 1989. Approximate Methods for simulation and Verification of Numerically Controlled Machining Programs, The Visual Computer 5, p. 329-348. [15] Takafumi, S., Takahashi, T., 1991. NC Machining with G-buffer Method, Computer Graphics 25, p. 207-216. [16] Huang, Y., Oliver, J.H., 1994. NC Milling Error Assessment and Tool Path Correction. In SIGGRAPH 1994, p. 287-294. [17] König, H., Gröller, E., 1998. Real Time Simulation and Visualization of NC Milling Processes for Inhomogeneous Materials on Low-End Graphics Hardware, In CGI ’98, p. 338349. [18] Inui, M., Kaneda, M., Kakio, R., 1998. Fast Simulation of Sculptured Surface Milling with 3-Axis NC Machine, In MMSS’97, p. 97-108. [19] Choi, B.K., Jerard, R.B., 1998. Sculptured Surface Machining Theory and Applications, Kluwer Academic. [20] Lee, S.-K., Ko, S.-L., 2002. Development of Simulation System for Machining Process using Enhanced Z Map Model, Journal of Material Processing Technology 130-131, p. 608-617. [21] Blasquez, I., Poiraudeau, J.-F., 2004. Undo Facilities for the Extended Z-Buffer in NC Machining Simulation, Computers in Industry 53, p. 193-204.

[22] Zhang, L., Feng, J., Wang, Y., Chen, M., 2009. Feedrate Scheduling Strategy for Free-Form Surface Machining through an Integrated Geometric and Mechanistic Model, International Journal of Adv. Manufacturing Technology 40, p. 1191-1201. [23] Zhang, W., Leu, M.C., 2009. Surface Reconstruction using Dexel Data from Three Sets of Orthogonal Rays, J. of Computing and Information Science in Engineering 9, p. 011008-1-12. [24] Ren, Y., Lai-Yuen, S.K., Lee, Y.-S., 2006. Virtual Prototyping and Manufacturing Planning by using Tri-dexel Models and Haptic Force Feedback, Virtual and Physical Prototyping 1, p. 318. [25] Smith, S., Tlusty, J., 1991. An Overview of Modeling and Simulation of the Milling Process, Journal of Engineering for Industry 113, p. 169-175. [26] Li, Z.Z., Zhang, Z.H., Zheng, L., 2004. Feedrate Optimization for Variant Milling Process Based on Cutting Force Prediction, International Journal of Advanced Manufacturing Technology 24, p. 541-552. [27] Merdol, S.D., Altintas, Y., 2008. Virtual Cutting and Optimization of Three-Axis Milling Processes, International Journal of Machine Tools and Manufacture 48, p. 1063-1071. [28] Fussell, B.K., Jerard, R.B., Hemmett, J.G., 2001. Robust Feedrate Selection for 3-Axis NC Machining Using Discrete Models, Journal of Manufacturing Science and Engineering 123, p. 214224. [29] Mounayri, H., Spence, A.D., Elbestawi M.A., 1998. Milling Process Simulation - A Generic Solid Modeller Based Paradigm, Journal of Manufacturing Science and Engineering 120, p. 213220. [30] Saturley, P.V., Spence, A.D., 2000. Integration of Milling Process Simulation with On-Line Monitoring and Control, International Journal of Advanced Manufacturing Technology 16, p. 92-99. [31] Li, Z.Z., Zhang, Z.H., Zheng, L., 2004. Feedrate Optimization for Variant Milling Process Based on Cutting Force Prediction, International Journal of Advanced Manufacturing Technology 24, p. 541-552. [32] Jerard, R.B., Fussell, B.K., Ercan, M.T., 2001. On-Line Optimization of Cutting Conditions for NC Machining, In Proc. 2001 NSF Design, Manuf. & Industrial Innovation Research Conf. [33] Sun, Y., Ren, F., Guo, D., Jia, Z., 2009. Estimation and Experimental Validation of Cutting Forces in Ball-End Milling of Sculptured Surfaces, International Journal of Machine Tools and Manufacture 49, p. 1238-1244. [34] Wei, Z., Wang, M., Han, X., 2010. Cutting Forces Prediction in Generalized Pocket Machining, International Journal of Advanced Manufacturing Technology 50, p. 449-458. [35] Wan, M., Zhang, W., Dang, J., Yang, Y.A., 2010. Novel Cutting Force Modeling Method for Cylindrical End Mill, Appl. Mathematical Modelling 34, p. 823-836. [36] Fan, X., Loftus, M., 2009. A Simplified Cutting Force Model for Light-Cut Ball-End Milling Applications, Machining Science and Technology 13, p. 52-75. [37] Bouguet, J.Y., Camera Calibration Toolbox for MatLab. http://www.vision.caltech.edu/bouguetj/calib_doc/index.html (last accessed on Nov 8, 2011). [38] Zhang, J., Ong, S.K., Nee, A.Y.C., 2009. Development of an AR System Achieving in situ Machining Simulation on a 3-Axis CNC Machine, Computer Animation and Virtual Worlds 21, p. 103-115. [39] Zhang, J., Ong, S.K., Nee, A.Y.C., 2006. A Volumetric ModelBased CNC Simulation and Monitoring System in Augmented Environments, In CW’06, p. 33-40.