rights / license: research collection in copyright - non ...47096/et… · exploitation of...
TRANSCRIPT
Research Collection
Doctoral Thesis
Exploitation of tolerances and quasi-redundancy for set pointgeneration
Author(s): Sellmann, Florian
Publication Date: 2014
Permanent Link: https://doi.org/10.3929/ethz-a-010335533
Rights / License: In Copyright - Non-Commercial Use Permitted
This page was generated automatically upon download from the ETH Zurich Research Collection. For moreinformation please consult the Terms of use.
ETH Library
Diss. ETH No. 21975
Exploitation of tolerances andquasi-redundancy for set point
generation
A dissertation submitted to the
ETH ZURICH
for the degree of
Dr. sc. ETH Zurich
presented by
FLORIAN SELLMANN
Dipl.-Ing. Maschinenbau, TU Darmstadt
born 4. April 1981
citizen of Germany
accepted on the recommendation of
Prof. Dr. K. Wegener, examiner
Prof. Dr. C. Glocker, co-examiner
2014
Acknowledgments
This thesis was realised during my time at inspire AG and the Institute for Machine Tools
and Manufacturing (IWF) of the ETH Zurich.
The cooperation with my co-workers and with the industrial project partners greatly
contributed to my work. I would like to thank Prof. Dr. Konrad Wegener, head of the
IWF and supervisor of this thesis for his generous support, constructive suggestions and
for his trust in me and my work.
My group leader Dr. Sascha Weikert and my co-supervisor Prof. Dr.-Ing. Dr.-Ing. ha-
bil. Christoph Glocker supported my research and thesis and contributed with valuable
suggestions and ideas.
This work would not have been the same without the support of my industrial partners.
In particular, I am indebted to Dr. Gerhard Hammann, Dr. Nico Zimmert and Thomas
Kieweler from TRUMPF as well as Dr. Martin Munz and Ralf Spielmann from the Siemens
AG.
I appreciate the supportive teamwork of Daniel Spescha, Titus Haas, Dr. Markus Steinlin,
Hop Nguyen, and Stefan Thoma. Thank you for the inspiring discussions and critical
remarks. Additionally I would like to thank all the people at and around the IWF, who
provided a comfortable working atmosphere for all the work- and non-work related dis-
cussions, especially Dr. Carl Wyen, Dr. Thomas Lorenzer, Dr. Josef Mayr and Florentina
Pavlicek.
In particular, I am deeply grateful to Dr. Florian Bachmann, who is not only a companion
but also a good friend and always supported me with valuable advices in all situations.
Last but not least I want to thank my family. My parents, who gave me a good education.
My sisters for their support and encouragement. And my wonderful wife Anna for all her
patience and support.
Florian Sellmann
Zurich, Dezember 2014
III
Contents
Symbols and abbreviations VIII
Abstract XII
Zusammenfassung XIII
1 Introduction 1
1.1 Outline of the thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 State of the art 5
2.1 Set point generation for machine tools . . . . . . . . . . . . . . . . . . . . 5
2.1.1 Fundamental ideas . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.2 Geometry optimisation for machine tools . . . . . . . . . . . . . . . 7
2.1.3 Feed rate optimisation for machine tools . . . . . . . . . . . . . . . 12
2.2 Feed rate optimisation for redundant machine tools . . . . . . . . . . . . . 14
2.3 Error modelling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4 Research gap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3 Fundamentals of curves 19
3.1 General remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2 Important properties of curves . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.3 Orientation representation . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4 Methods for interpolation and approximation . . . . . . . . . . . . . . . . 24
IV
3.4.1 Polynomial interpolation . . . . . . . . . . . . . . . . . . . . . . . . 24
3.4.2 B-Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.3 NURBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.5 Path dynamics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.6 Continuity of trajectories . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4 Geometry optimisation for machine tools 31
4.1 Global optimisation problem . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.2 Local optimisation problem . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.2.1 Objective function . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.2.2 Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.2.3 Boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.3 Discrete geometry optimisation . . . . . . . . . . . . . . . . . . . . . . . . 38
4.3.1 Quadratic programming problem . . . . . . . . . . . . . . . . . . . 38
4.3.2 Objective function . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.3.3 Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.3.4 Boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.3.5 Parameterisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3.6 Windowing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.4 Application examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.4.1 Virtual CNC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.4.2 Machine model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.4.3 2D laser cutting example . . . . . . . . . . . . . . . . . . . . . . . . 56
4.4.4 3D laser cutting example . . . . . . . . . . . . . . . . . . . . . . . . 59
5 Feed rate optimisation using quasi-redundant degrees of freedom 64
5.1 Definition of quasi-redundancy . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.2 Conception of the optimisation . . . . . . . . . . . . . . . . . . . . . . . . 66
5.3 Problem formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.3.1 Discretisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
V
5.3.2 Geometric Constraints . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.3.3 Boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5.4 Nonlinear programing approach . . . . . . . . . . . . . . . . . . . . . . . . 71
5.4.1 Objective function . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.4.2 Numerical optimisation . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.4.3 Application example . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.5 Quadratic programing approach . . . . . . . . . . . . . . . . . . . . . . . . 76
5.5.1 Linearisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5.5.2 Dynamic Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.5.3 Objective function . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.5.4 Influence of the additional weights . . . . . . . . . . . . . . . . . . . 81
5.6 Application Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.7 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6 Tolerance model 92
6.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
6.2 General procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.2.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.2.2 Calculation of geometric uncertainties . . . . . . . . . . . . . . . . . 95
6.2.3 Overall description of the method . . . . . . . . . . . . . . . . . . . 97
6.3 Geometric uncertainties of a 3-axis machine tool . . . . . . . . . . . . . . . 99
6.3.1 Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.3.2 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.4 Geometric uncertainties of a 5-Axis machine tool . . . . . . . . . . . . . . 101
6.4.1 Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.4.2 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
7 Conclusion and Outlook 108
7.1 Geometry optimisation for machine tools . . . . . . . . . . . . . . . . . . . 108
7.2 Feed rate optimisation using quasi-redundant degrees of freedom . . . . . . 109
VI
Appendix 111
A Parametric study 112
Bibliography 115
VII
Symbols, abbreviations and glossary
Symbols
a+ upper limit of rectangular distribution
a− lower limit of rectangular distribution
a Control points
a, b Interval limits
A Linear inequality constraint function: Ax ≤ b
Aeq
Linear equality constraint function: Aeqx = beq
b Linear inequality constraint function: Ax ≤ b
beq Linear equality constraint function: Aeqx = beq
C(i) Matrix with the function values of the ith parametric derivative of
a B-Spline
Cn nth time parametric continuity of a curve respectively continuity ofdnsdtn throughout the curve.
cv coverage factor
d Dimension of a parametric curve
et(s) Tangential accompanying vector
en(s) Normal accompanying vector
eb(s) Binormal accompanying vector
ex Unit vector in direction x
Gn nth time geometric continuity
h Number of NC-Blocks
I Identity matrix
i, j General index and counter variables
J Objective function of an optimisation problem
k Multiplicity of a knot
VIII
L Chord length of a spatial curve
m Number of control points
n Number of discrete points
n(s) Normal vector of the sheet metal
N B-Spline basis function
p Degree of a polynomial function
r(s) Path curve
R Rational Base Function
s Path parameter, also called curve parameter
t Time variable
u Knot vector
uc Combined standard uncertainty
ur Strongly positive correlated contributors for the combined standard
uncertainty
ui Standard uncertainty of uncorrelated contributors for the combined
standard uncertainty
U Measurement uncertainty
w Weights for NURBS shaping
x(i) ith derivative of x with respect to t respectively s
x∗ Optimal solution
δx Small change of x
∆ Euclidian length
∆n Tolerance for the deviation in direction of ev(s)∆t Tolerance for the deviation in direction of eu(s)∆proc Tolerance for the deviation in direction of ew(s)∆ϕtilt Tolerance for the deviation of the tilt-angle of the tool orientation
∆ϕlead Tolerance for the deviation of the lead-angle of the tool orientation
∆dwg Tolerance value known from the drawing
∆NC Tolerance value given to a machine tool without any machining error
∆smt Available smoothing tolerance
δϕ Small angular deviation
ζ Set of equality constraints for the description of the state equations
ηi Additional weights for the discrete geometry optimisation
θ(s) Local Frenet frame
κ Curvature of a spatial curve
λi Parameter for the shaping of B-Spline of degree while ensuring G2
continuity
IX
νi Additional weights for the exploitation of quasi-redundancy
Φ Physical limitation
ϕ Orientation angle
ψ(s) Local coordinate system for the tolerance sharing for linear axes
consisting of the eu(s), ev(s) and ew(s)0 Zero vector
Abbreviations
CAD Computer Aided Design
CAM Computer Aided Manufacturing
CNC Computerised Numerical Control
DAO Domain of admissible orientations
DGO Discrete geometry optimisation
DOF Degrees of freedom
ETH Eidgenossische Technische Hochschule Zurich
MCS Machine coordinate system
NC Numerical Control
NLP Nonlinear programming
NURBS Non Uniform Rational B-Splines
QP Quadratic programming
TCP Tool Center Point
Glossary
Closed loop control Control with feedback of the actual position.
CNC/NC Abbr.: Computerised Numerical Control. Automatic control of a
process performed by a device that makes use of numerical data
introduced while the operation is in progress according to [23].
Feed rate Process speed programmed in the NC-program.
Feed rate optimisa-
tion
Sub step to the trajectory generation, where the feed rate is opti-
mised.
Geometry optimisa-
tion
Sub step to the trajectory generation, where only the geometry is
optimised.
Jerk Third time derivative of position d3xdt3 .
X
Open loop control Prediction of the feed rate without any feedback of the actual posi-
tion.
Semi closed loop con-
trol
Closed loop control with an indirect measurement system.
Set point Output of the trajectory generation. Desired value of the actuator.
Tracking error Difference between the actual position of an axis and the previously
calculated set points.
Trajectory Toolpath as a function of time.
Trajectory generation The path and feed rate provided by the NC program is optimised
by the trajectory generation. The resulting trajectory satisfies the
demands to the trajectory generation algorithm.
XI
Abstract Abstract
Abstract
An increase in productivity of a machine tool is obtained by reducing the processing time,
while maintaining the required quality within given constraints, which result from the
features of the machine structure, the actuators and the process. The set point gener-
ation, consisting of geometry optimisation and feed rate optimisation, is minimising the
processing time within machine specific limits.
This thesis presents an algorithm for discrete geometry optimisation using B-splines, and
allows for a pointwise tolerance for deviations from the original geometry for any number
of axes. By the use of a tolerance model the geometric uncertainties of the machine
tool can be considered for the pointwise evaluation of the smoothing tolerance. For the
subsequent feed rate optimisation higher parametric derivatives are optimised during the
optimisation. The discretised geometry is optimised by a quadratic programing approach.
Depending on the manufacturing process the manufacturing tolerances are shared by the
different axes, which is demonstrated at the example of a 5-axis laser cutting machine
tool. Application examples show, that the geometry optimisation leads to an increase of
the machining productivity over state of the art methods.
Furthermore a method for the exploitation of the quasi-redundancy is presented in this
thesis based on additional degrees of freedom, which arise in 5-axis machining depending
on the manufacturing process. Taking into account the inertias of the different axes the
exploitation of the quasi-redundancy is demonstrated at the example of a 5-axis laser
cutting machine tool with two quasi-redundant degrees of freedom. The optimisation of the
weighted jerks of the different axes in response to the quasi-redundant degrees of freedom
results in a nonlinear optimisation problem for the general case of a large orientation
tolerance with either linear or nonlinear constraints. For the use case of a small orientation
tolerance a linearisation of the optimisation problem mentioned above is obtained, which
leads to a quadratic programming problem. Thus for a given trajectory at the Tool-Center-
Point a jerk minimal trajectory of all axes is determined. Application examples show, that
the mechanical excitation of the machine tool and the path disturbance can be reduced.
XII
Zusammenfassung Zusammenfassung
Zusammenfassung
Eine Produktivitatssteigerung einer Werkzeugmaschine ergibt sich durch Reduktion der
Bearbeitungsdauer unter Beibehaltung der geforderten Qualitat innerhalb gegebener Rand-
bedingungen. Diese ergeben sich durch die Eigenschaften der Maschinenstruktur, der An-
triebe und des Prozesses.
Die Fuhrungsgrossengenerierung, bestehend aus Geometrieoptimierung und Geschwindig-
keitsfuhrung, minimiert die Bearbeitungsdauer innerhalb maschinenspezifischer Limite.
Diese Arbeit prasentiert einen neuen Algorithmus zur diskreten Geometrieoptimierung
mittels B-Splines beliebiger Ordnung, welcher fur beliebig viele Achsen eine punktwei-
se Tolerierung der Abweichungen von der Originalgeometrie berucksichtigt. Mittels eines
Toleranzmodells konnen fur jedem Punkt im Arbeitsraum geometrische Unsicherheiten
bei der zur Verfugung stehenden Toleranz berucksichtigt werden. Fur die anschliessende
Fuhrungsgrossengenerierung werden wahrend des Optimierungsschritts hohere parametri-
sche Ableitungen optimiert. Im Algorithmus erfolgt eine Formulierung als ein quadrati-
sches Optimierungsproblem, welches mit einem Standardverfahren gelost werden kann.
In Abhangigkeit des Fertigungsverfahrens erfolgt eine Aufteilung der Fertigungstoleran-
zen auf die einzelnen Achsen, was am Beispiel des 5-achsigen Laserschneidens fur Linear-
und Rundachsen dargelegt wird. Anhand von Anwendungsbeispielen wird aufgezeigt, dass
sich durch die beschriebene Geometrieoptimierung eine Produktivitatssteigerung gegen-
uber herkommlichen Verfahren ergibt.
Des Weiteren wird in dieser Arbeit ein Verfahren zur Ausnutzung der Quasi-Achsredundanz
prasentiert. Hierbei handelt sich um zusatzliche Freiheitsgrade bei der 5-Achs-Bearbeitung,
welche sich in Abhangigkeit des Fertigungsverfahrens ergeben. Die Auflosung der Quasi-
Achsredundanz wird am Beispiel des 5-achsigen Laserschneidens mit zwei quasi-redundanten
Freiheitsgraden und unter Berucksichtigung der Achstragheiten aufgezeigt. Durch Optimie-
rung der gewichteten Achsrucke in Abhangigkeit der inneren Freiheitsgrade ergibt sich fur
den allgemeinen Fall grosser Orientierungstoleranzen ein nichtlineares Optimierungspro-
blem mit wahlweise linearen- oder nichtlinearen Nebenbedingungen. Fur den Anwendungs-
XIII
Zusammenfassung Zusammenfassung
fall mit kleiner Orientierungstoleranz wird eine Linearisierung des o.g. Optimierungspro-
blems durchgefuhrt. Hieraus ergibt sich ein quadratisches Optimierungsproblem, welches
sich mit einem Standardverfahren losen lasst. Somit lasst sich zu einer gegebenen Tra-
jektorie am Tool-Center-Point eine ruckminimale Trajektorie aller Maschinenachsen be-
stimmen. Anhand von Anwendungsbeispielen zeigt sich, dass sich der Ruck der einzelnen
Maschinenachsen, die mechanische Anregung der Maschine und somit Bahnabweichungen
reduzieren lassen.
XIV
1
Chapter 1
Introduction
This thesis describes methods for the set point generation of machine tools for high produc-
tivity applications. The aim of these machines is to produce workpieces within a specified
accuracy and a minimum amount of machining time.
From the design of a workpiece to the final manufacturing process there are many steps
in between,which have to be passed as shown in figure 1.1.
Figure 1.1: Manufacturing data flow.
A common tool for the design of a workpiece is the computer aided design (CAD). Cur-
rent CAD programs offer various capabilities for the design of a workpiece, the virtual
assembling of different components, and also FEM simulations of the workpiece. The de-
2 1. Introduction
sign informations of the CAD include the geometry of the workpiece as well as tolerance
informations.
Due to the fact that the final manufacturing process consists of a relative movement of
the tool and the workpiece along spatial trajectories the surface informations of the design
have to be converted into NC code to be used for the control of the machine tool. This
step is performed by a computer aided manufacturing (CAM) tool like NX [70].
The resulting NC code contains the segment wise geometric informations of the trajecto-
ries, a proposed feed rate along the trajectories during manufacturing as well as specific
commands for the control of the process. Usually the geometric information of the trajecto-
ries is given to the machine tool by standard geometric elements like straight lines, circular
arcs, polynomial functions or B-Splines referred to ISO 6983-1 [48] and ISO66025-2 [45].
Based on the NC-Code the control manages the movement of the machine axes, which
interact with the mechanical structure of the machine tool as well as the process. This
interaction is observed by the measurement system assembled to the machine axes and
given to the control, which reacts to the interaction.
The procedure inside of the computerised numerical control (CNC/NC) can be divided into
open loop and closed loop controller according to Stute [81]. In the open loop controller
the set points for the movement of the machine axes are calculated according to figure 1.1.
Because of the required real time execution of NC code, the set point generation of state
of the art machine tools is divided in the two main steps geometry optimisation and
feed rate optimisation. In a first step the geometry, which is given by the NC-Code
is prepared, since discontinuities are eliminated. The subsequent feed rate optimisation
generates a time discrete feed rate profile along the previously optimised geometry fulfilling
the constraints, which are given by the limits of the machine tool and additional commands
like the proposed feed rate along the tool path e.g. included in the NC code. Afterwards,
the fine interpolated trajectory is given to the closed-loop controller of the different axes,
which finally leads to a relative motion between the tool and the workpiece. During
manufacturing the closed loop controller adjusts the deviation between the precalculated
set points and the actual movement of the machine tool. For further particulars it is
referred to Geering [32] and Stute [81].
An important parameter for both the manufacturers and the users of machine tools is
the productivity, which is defined as the number of manufactured parts of a comparable
quality per manufacturing time according to Weck et al. [90] and is influenced by both the
accuracy and the machining time.
Both geometry and feed rate optimisation are having an impact on the productivity. Ac-
1.1 Outline of the thesis 3
cording to Hadorn [38], Yu [94] and Fauser [27] discontinuous movements and high curva-
tures usually lead to mechanical excitations and a reduced accuracy of the machine tool
due to discontinuous and high actuator forces. Pursuant to Beudaert et al. [10] the con-
secutively optimised feed rate is influenced by the parametric derivatives of the previously
optimised geometry. The feed rate optimisation minimises the machining time by taking
advantage of the limits of the axes so the optimisation of the set points leads to
• Reduced mechanical excitation
• Exploitation of the axes limits
and finally an increased productivity.
Regarding the geometry optimisation a sufficient tolerance domain must be defined in a
previous step. Taking into account that the resulting deviation of a machine tool consists
of different contributors due to static, dynamic, thermal and process errors this thesis
presents an approach for the position dependent calculation of the smoothing tolerance
based on the known geometric errors of a machine tool.
A possible approach for a reduction of the mechanical excitation respectively high actuator
forces is a rearrangement of the forces, which are given to the mechanical system. Five
axis machine tools consisting of both linear and rotational axes offer the capability of
additional degrees of freedom within the orientation tolerance for the rearrangement of
the actuator forces with respect to the axes inertias. This work provides an optimisation
algorithm for the reduction of the mechanical excitation by rearranged actuator forces.
1.1 Outline of the thesis
The thesis is structured as follows:
After a brief introduction here in chapter 1, chapter 2 gives an overview of known methods
in the fields of set point generation and error modeling. Section 2.1 discusses the demands
on geometry optimisation by a brief introduction of the operative connection and presents
state of the art approaches for the geometry optimisation. Common approaches for the
resolution of redundancy are illustrated in section 2.2. State of the art approaches in the
field of error modeling are mentioned in section 2.3. The last section 2.4 specifies the
research gap, which is approached within this thesis.
The fundamentals of the curves used in this thesis are described in chapter 3. In sec-
tion 3.1- 3.3 general properties of the regarded curves including the representation of the
4 1. Introduction
orientation are presented. Section 3.4 illustrates known methods for the interpolation and
approximation of given data points.
A quadratic programming approach for both the rounding of the transition of subsequent
NC-Blocks and the compression of multiple NC-Blocks within a given tolerance is discussed
and quantified in chapter 4.
Chapter 5 presents two approaches for the exploitation of quasi-redundancy. In the case
of large tolerances of the tool orientation a nonlinear optimisation approach is presented
in section 5.4. For the use case of small tolerances of the tool orientation a quadratic
programming approach is shown in section 5.5.
In order not to suffer from the heuristic approach of assuming a global conservative toler-
ance value along the whole tool path, a procedure for the position dependent elaboration
of the available smoothing tolerances based on the geometric errors of a machine tool is
presented in chapter 6.
A summary of the results and an outlook of further research topics is presented in chapter 7.
5
Chapter 2
State of the art
This chapter gives an overview of known approaches in the field of set point generation
for machine tools. Both industrial and scientific approaches for the set point generation of
machine tools are presented in section 2.1. First of all fundamental ideas concerning the set
point generation are presented in section 2.1.1. After that methods for both geometry and
feed rate optimisation are illustrated in section 2.1.2 and section 2.1.3 respectively. Current
approaches for the exploitation of redundancy are regarded in section 2.2. Section 2.3
discusses several approaches in the field of error modelling for machine tools. Finally
section 2.4 identifies the research gap, which will be filled in this thesis.
2.1 Set point generation for machine tools
The requirement for a machine tool of maximum productivity is comparable to the task a
race driver has to accomplish. According to Braghin et al. [15] the best race driver is the
one that, with a given vehicle, is able to drive on a given track with a given track width
in the shortest possible time. Two strategies can be followed to reach this task according
to figure 2.1: minimise the space and/or maximise the speed respectively minimise the
curvature.
Knowing, that these two strategies are conflicting, the shortest lap time is reached by a
compromise between the two strategies. In this comparison the vehicle stands for the tool
respectively the machine tool, the track stands for the programmed tool path and the
track width finally stands for the given manufacturing tolerance.
Because of the requested real time ability of state of the art NC controllers the optimisation
of geometry and feed rate are subsequent calculation steps in order to save calculation time.
This is called a decoupled approach and is based on the heuristics, that an optimisation of
6 2. State of the art
a
b
Figure 2.1: Comparison between the shortest track (a) and the lowest curvature (b),
which allows for an increased speed along the track.
the tool path and a subsequent optimisation of the feed rate does not satisfy the demand
for a time optimal movement in general. However from a practical point of view in most
of the use cases the heuristic mentioned above is a sufficient trade off between robustness
respectively real time ability and the productivity.
2.1.1 Fundamental ideas
Non regarding point to point movements, which is a usual task for robot applications based
on the heuristic described above an usual task for a machine tool is the geometry optimi-
sation along curved tool paths. It contains all methods for the calculation of geometries
from a startpoint to an endpoint with a predefined shape within given tolerances. Due to
the fact that most of the geometric segments, which are used by state of the art CAM tools
are discontinuous (non tangential) straight lines and circular arcs, two main challenges for
the geometry optimisation along curved tool paths are the rounding of block transitions
and the comprehensive rounding of multiple NC-Blocks or in general an elimination of
discontinuities.
The subsequent feed rate generation maximises the feed rate along the previously defined
tool path in order to minimise the manufacturing time with respect to given limitations
due to the requested accuracy.
Independent from the used method for the set point generation in every point of the
resulting time dependent trajectory the interaction between the manufacturing tolerance,
2.1 Set point generation for machine tools 7
the feedrate along the tool path, the acceleration perpendicular to the tool path and the
curvature of the tool path, which is shown in figure 2.2 have to be considered.
acceleration
velocity
curvaturemanufacturing
tolerance
Figure 2.2: Operative connection for the set point generation
One of the influencing factors for the fulfillment of the manufacturing tolerances are the
dynamic errors of the machine tool. Depending on the compliance of the mechanical
structure these errors are affected by all acceleration derivatives perpendicular to the tool
path. These accelerations on the other hand depend on the feed rate along the tool path
and the curvature of the tool path itself. For the simplification of these interactions a
heuristic approach is the limitation of different dates of the machine tool. Not only for
limitation of dynamic errors but also for the stability of the manufacturing process itself a
usual way to achieve the demanded accuracy is the limitation of the feed rate. Further the
axis-wise acceleration and the jerk are usually limited in order to reduce the mechanical
excitation and to guarantee a certain accuracy at every point of the workspace.
Depending on the application a selection of both the commercial- and the scientific ap-
proaches for geometry optimisation are regarded below.
2.1.2 Geometry optimisation for machine tools
In the following both scientific and commercial state of the art approaches for geometry
optimisation in the fields of
• General smoothing methods
• Surface machining
8 2. State of the art
• Pocket machining
• Collision avoidance
are presented and discussed.
General smoothing methods: Methods for geometry optimisation of machine tools,
which are independent from the manufacturing process focused on tool path smoothing as
well as 5-axis machining are summarised and discussed below.
For the optimisation of the geometry and the feed rate for linear systems Yu [94] presents
algorithms, which are based on the spline representation of the tool path and use several
spline based interpolation and approximation methods. Bouard et al. [12] minimises the
sum of the square of the curvature while ensuring the constraints given by the process and
the geometry. Zhao et al. [97] shows the analytic smoothing of multiple G01 blocks with
B-Splines. In addition feed rate constraints are evaluated along the tool-path.
The compression of multiple NC-Blocks includes all methods for smoothing of a geo-
metry by the replacement with a primarily continuous curve within the requested toler-
ances. Hadorn [38] investigated two smoothing algorithms: Transition smoothing with
quintic Bezier-Splines and comprehensive smoothing of multiple NC-Blocks with cubic
Beta-Splines. The curvature minimal shaping of the splines is done via an optimisation
algorithm. During optimisation for the fulfillment of the given tolerances the convex hull
property of the used Bezier respectively Beta-Splines is used, which leads to a resulting
continuous curve on the convex side of the original geometry but excludes all solutions
on the concave side of the original geometry according to figure 3.5. Established in the
field of CAGD Park [63] evaluates dominant points of a given discrete curve depending
on the curvature. As a consequence of that only discrete points at curve sections with
a large curvature are considered for a subsequent approximation with B-Splines. For the
approximation of curves with a continuous curvature this approach leads to a good ap-
proximation with a minimum amount of control points. In the case of discontinuities or
high curvatures of the geometry this approach leads to an unintended accumulation of
control points and thus a bad shape of the resulting curve as well as a low feed rate.
A quadratic programming approach with linear constraints for the smoothing of B-Splines
is formulated by Kano et al. [50]. The integral of the squared second derivative of a B-
Spline within the constraints is minimised here and exemplified. Although the deviation
between the smoothing function and the programmed trajectory is limited during opti-
misation, there is no tolerance sharing between the optimised axes, which are involved in
the optimisation. As a consequence of that a maximum utilisation of the manufacturing
2.1 Set point generation for machine tools 9
tolerance is not given with this approach. Also Haas [37] uses a quadratic programming
approach for the optimization of the tool-path of a machine tool. In his thesis higher
parametric derivatives of the curve are minimised with respect to linear constraints on the
tool path. The decreased mechanical excitation is evaluated by the use of a 2 mass spring
model and measurements on a real machine tool.
5-axis machining has become more important in the last decade, because of an envisaged
decreased manufacturing time, enhancement of the quality of the workpiece, better cutting
conditions for the tool as well as the minimisation of subsequent manufacturing tasks,
which finally leads to a cost reduction. Taking into account that the feed rate is directly
influenced by the parametric derivatives of the geometry Beudaert et al. [10] show an
approach for the smoothing of 5-axis tool paths in order to maximise the resulting real
feed rate and to reduce the machining time by local smoothing of single axes movements.
In the case of geometrical variations the feed rate has to be decreased, so by a local
smoothing of the tool paths the real feed rate is maximised. So knowing the dynamic
limitations of each drive a maximum reachable feed rate is computed in order to localise
the areas for the tool path smoothing. Based on a given tool path the joint motions are
optimised in order to increase the resulting feed rate.
Lavernhe et al. [55] optimises tool trajectories and their follow-up during machining by
orientation smoothing while ensuring the requested accuracy of the machined part. The
optimisation is performed using a surface model for both the tool path and the orientation
with the focus on finding the best orientations so the kinematic performances of the axes
are optimised.
Also by the use of a surface model Grigoriev et al. [36] calculates the tool path based
on surface informations of the workpiece, whose surface is described by Splines. Wang et
al. [89] optimises the cutter contact data within the tolerance and the orientation along
the tool path in order to minimise the tilt angle of the tool. Based on NURBS-surfaces
Qiao et al. [67] derives dual NURBS curves for 5-axis machining. The curves are finally
subdived into Bezier-Splines. Dual curves for tool path planning were also evaluated by
Rufeng [69] by the use of a cubic B-Spline under the condition of smoothness of the tool
path.
An algorithm for the local corner rounding for 5-axis machining is presented by Beudaert et
al. [92]. In order to obtain a continuous path of both the tool tip and the tool orientation a
local rounding of tangency discontinuities between adjacent linear NC-Blocks is performed.
The path of the tool tip and the tool orientation is described by two B-Spline curves, which
are connected with the initial tool path. For the sake of a decrease of the velocity collapses
at the connection of the orientation a parameterisation spline is computed. This leads to a
10 2. State of the art
better feed rate at the tool, but both the kinematic and dynamic behavior of the machine
tool are not taken into account.
Farouki et al. [26] presents an algorithm for the optimisation of the tool orientation of a
5-axis machine tool. In this algorithm the deviation of the tool orientation and the surface
normal is minimised to the constraint of maintaining a constant cutting speed with a ball-
end tool. This leads to an increased productivity for 5-axis machining due to the reduction
of an unnecessary actuation of the machine rotary axes.
Over and above the scientific approaches described before the CNC manufacturers are in-
vestigating their own approaches for the geometry optimisation. A challenging condition
for all the commercial approaches for both geometry and feed rate generation is the re-
quested real time ability. Therefore in contrast to the optimisation approaches illustrated
above usually the geometry is prepared by the use of properly chosen assumptions. Docu-
mentations of algorithms used by the CNC-manufacturers are barely available. Depending
on the manufacturer the smoothing of non tangential transitions is done with circular arcs,
Splines, polynomial functions or filtering.
The CNC controller Indra-Motion MTX 09VRS, which is manufactured by Bosch [11] uses
circular arcs or polynomial functions for the rounding of the block transitions.
Heidenhain [24] has different filtering techniques for the smoothing of a given geometry,
which are parameterised in response to the requested manufacturing result. This leads to
an either rough, smooth or a fast manufacturing process.
Depending on the feed rate of the two segments of the corner, the corner angle and the
time-constant of the exponential acceleration/deceleration Fanuc [31] calculates the feed
rate along the corner.
In a comparable manner Siemens [77] has investigated smoothing algorithms within the
840D CNC controller. The functions G64X lead to a smooth transition of the NC-Blocks
via the insertion of circular arcs, and polynomial functions up to fifth degree.
Due to the fact that most of the NC programs for free-form surfaces consist of short straight
lines and circular arcs, the compression of multiple NC-Blocks is another important task
for the manufacturers of CNC-units. Especially in the case of mould and die applications
with a high demand on the tolerances the quality of the manufactured surfaces relies on a
smooth trajectory with the inclusion of adjacent tool paths within the demanded tolerances
as well as the avoidance of gouging. Like the rounding of the block transitions every CNC
manufacturer has own methods for the compression of multiple NC-Blocks. The user is
supplied with certain parameters but the used method remains hidden in the software.
2.1 Set point generation for machine tools 11
Surface machining: The main challenge for the geometry optimisation in the field of
surface machining is the calculation of a tool path, which leads to a smooth surface and
a minimum amount of subsequent machining. Especially methods for the optimisation of
the 5-axis milling are further developed in the last years. A widespread overview on 5-axis
flank milling methods is given by Harik et al. [42]
An optimisation of the tool path and orientation within the given tolerance for 5-axis
flank milling is shown by Zhu et al. [99, 98]. Knowing the geometry of the the cutter and
the desired surface the geometry of the tool path and the shape is optimised in order to
increase the accuracy of the machine tool. The kinematic and dynamic behavior of the
machine tool is not taken into account.
By the use of the envelope surface of the tool Lartigue et al. [51] calculate the tool path
deformation in the case of 5-axis flank milling. The tool path and the tool orientation
are described using two curves at particular points of the tool axis. Within the proposed
method the distance between the envelope surface and the desired surface is minimised in
order to increase the machining accuracy.
Wu et al. [91] obtained the tool orientation by two surfaces, which are generated by the
CAD/CAM. A connection-line between these surfaces represents one possible orientation
of the tool path with a certain machining error. A dynamic programming approach leads
to an optimal combination of tool positions with the machining error as objective function.
Lauwers et al. [53] shows the optimisation of the tool inclination angle by matching the tool
profile of a flat end cutter with a temporary spline representing the curvature of the part
surface in the tool contact point. Also based on integrated material removal simulation
Lauwers et al. [54] present a 5-axis milling tool path generation with dynamic step over
calculation.
The automatic generation of an osculating-optimal collision free tool path for five-axis
milling of free form surfaces is shown by Schnider [71].
Pocket machining: The major aim in the case of pocketing is to remove as much
material as possible within a minimum amount of time with respect to the demanded
manufacturing tolerances as well as the strength of the tool.
The optimisation of the tool path for pocket machining for convex pockets without islands
is illustrated by Vosniakos et al. [88] in order to maximise the cutting rate. Based on the
geometry of the requested pocket geometry as well as the radii of the used tools a polygon
for the tool path is evaluated. The optimised geometry is given to the machine tool via
NC-Code. The curvature of the tool path as well as the continuity are not taken into
12 2. State of the art
account. Pateloup et al. [64] show an approach for the optimisation of the tool path of
pocketing by calculation of corner radii according to the kinematic behavior of the machine
tool. Trochoidal tool paths for multi axis milling are optimised by Rauch et al. [68]. The
optimised geometry is given to a Siemens 840D open loop controller via NC code by the
use of the CSPLINE function according to Siemens [77]. Stori et al. [80] present a spiral
in algorithm for 2 1/2D material removal of convex geometries.
Collision avoidance: Especially in the case of 5-axis machining collisions of the work-
piece and the machine tool are critical to handle due to the complexity of the axes move-
ments. Not only for the purpose of collision avoidance but also for the tool path optimi-
sation Castagnetti et al. [17] introduce the domain of admissible orientations (DAO). An
accompanying pyramid restricts the possible orientations of the tool axis for each point of
the tool path for the subsequent smoothing. Also Abele et al. [1], Kanda et al. [49] and
Takeuchi [82] present possible methods and solutions to prevent collisions and collision
damages of machine tool components. The generation of collision-free 5-axis tool paths
by the use of a haptic surface is shown by Balasubramaniam et al. [6]. Lauwers et al.[52]
reveals an optimal and collision free tool posture in five-axis machining through the tight
integration of tool path generation and the simulation of the kinematic of the machine
tool.
2.1.3 Feed rate optimisation for machine tools
Based on the optimised geometry the feed rate optimisation can be seen as subsequent
task for the set point generation. Especially the feed rate optimisation along a curved
tool path is important for machine tools and is regarded below. In order to increase the
productivity the most important goal for the feed rate optimisation is the minimisation
of the machining time. Regarding the quality of the machined parts the mechanical ex-
citation of the machine tool should also be minimised. According to Davison et al.[21] and
Geering [33] the resulting challenge is a minimum time movement without the violation of
predefined boundaries, which is a long known problem in the field of optimal control.
Based on simulations Yazar et al. [93] calculate the cutting force of the 3D-milling process.
Assuming that the process variables are directly influenced by the cutting force, this force
is used as feedback variable to adjust the feed rate. As already mentioned in section 2.1.2
Yu [94] presents basic algorithms for the optimisation of the geometry as well as for the
generation of jerk controlled feed rates.
An indirect method for the feed rate optimisation by the use of a phase plane approach
2.1 Set point generation for machine tools 13
is shown by Hadorn [38, 39]. Along a one dimensional path parameter the optimisation
algorithm searches for switching points in the phase plane to get the time optimal solution,
which is found when the velocity along the given path is maximal with respect to the given
boundaries. A time optimal solution is obtained by choosing the constraint that leads to
the highest velocity along the tool path. The here arising problem of infeasible regions for
the switching conditions is treated by Hadorn [38], Huang et al. [43] and Shin et al. [76].
A feed scheduling strategy for the purpose of an optimal metal removal rate in 3-axis
machining with respect to the machining accuracy is investigated and validated by Tounsi
et al. [84, 83]. In order to realise a nearly constant cutting force different constraints like
the cutting force, the feed rate boundaries and the contour error are taken into account
during the optimisation process.
Based on geometric constraints Annoni et al. [5] presents a segment wise feed rate limi-
tation with respect to the desired chord error and jerk as well as acceleration constraints.
Based on this feed rate profiles for the different segments are calculated using a windowing
technique.
Methods for both the reduction of mechanical excitation and also the minimisation of
the cycle time along splined tool paths are shown by Altintas et al.[2]. In this approach
the Spline is divided in different segments, whose duration is minimised with respect to
velocity, jerk and acceleration limits. Additionally in every iteration step the integral of
the squared jerk is minimised.
Feed rate interpolation by the intersection of the given constraints is presented by Beudaert
et al. [9]. The aim of the algorithm is to calculate the next reachable point along a given
path within a fixed time-step ∆t knowing all the characteristics on the previous points by
dichotomy.
The time optimal feed rate along a given tool-path with nonlinear constraints is formulated
as an optimal control problem by Steinlin [79]. With the proposed algorithm discontinuities
in the force profile of the trajectory are limited as well as mechanical excitations by the
limitation of the jerk and the jerk-rate.
Stating that a reduction of the jerk limit will not guarantee a decreased mechanical ex-
citation Fauser [27] presented a frequency based approach, which optimises the spectrum
only by a modification of the feed rate profile. Subsequent to the calculation of the max-
imum feed rate for different path segments an acceleration profile with a limited bandwidth
is calculated.
14 2. State of the art
2.2 Feed rate optimisation for redundant machine tools
The use of redundant axes configurations, where a slow and a fast axis arranged in a
congruent manner bares high potential with respect to resulting productivity at a moderate
increase of effort. According to Neugebauer [59] the redundancy of a mechanical system
can be divided in redundant kinematics respectively actuation redundancy and kinematic
redundancy, which are defined and illustrated in figure 2.3.
q1
q2
(a) actuation redundancy
q1
q2q3
(b) kinematic-redundancy
Figure 2.3: Redundant kinematics lead to additional forces on the joints of the system
without an increased number of the degrees of freedom of the end effector (a). Due to the
kinematic-redundancy there is no bijective mapping between the position and the orienta-
tion of the end effector and the different joints. The degrees of freedom of the end effector
are not increased(b)
The motion planning for kinematic redundant systems is an important topic for both
robot applications and machine tools for example for the avoidance of obstacles as well as
singularities. Most approaches for the resolution of the actuation redundancy are published
in the field of robotic science. For example Dasgupta et al. [20] present a trajectory
optimisation of a redundant robot in order to get the shortest path for a point to point
movement by the avoidance of obstacles. For the optimisation of the joint trajectories of
an industrial robot with redundant degrees of freedom a generic approach is presented by
Vosniakos et al. [87]. By the use of a kinematic and dynamic simulation model of the robot
the total work for the motion is minimised. Also Boudreau et al. [13] show an improvement
of the force capabilities by the use of redundancy.
A detailed survey of redundant kinematics for machine tools is given by Steinlin [79] as
well as a quadratic programming approach for the resolution of actuation redundancy for
a 2-axis laser cutting machine tool. By the use of filtering methods using a FIR-filter also
Brecher et al. [16] separate a high from a low dynamic trajectory in the case of a planar
machine tool.
2.3 Error modelling 15
Regarding hybrid redundant kinematics, which consist of both a serial and a parallel
kinematic Schroder [72] and Neugebauer et al. [60] present approaches for the partioning
of motion in order to take advantage of both the large work space of the serial kinematic
and the high dynamics of the parallel-kinematics. Also Harib et al. [41] are splitting the
movement of hybrid redundant kinematic machine tool by a rule-based approach.
Chin et al. [18] illustrates the optimisation of the movement of a redundant kinematic by
the use of a generic approach at the example of parallel kinematic and a redundant cross
table. Generic algorithms (GA) work in a comparable way as the natural selection. An
arbitrarily chosen first generation of a possible solution is evaluated with a fitness function.
In this paper for the motion coordination between the arising redundant degrees of freedom
the fitness function is represented by the summation of the square displacement of each
moving axis of the parallel structure due to the fact that the cross table has a better
tracking precision. As a consequence of that least motion of the parallel structure is
achieved. After that a new generation of solutions is obtained and evaluated by selection,
reproduction, crossover, and mutation. This procedure is repeated until the maximum
generation is reached.
An example of the optimisation of the tool path of a machine tool with redundant degrees of
freedom is shown by Halevi et al. [40]. Exploiting the redundancy the energy consumption
is considerably reduced. This is done by minimising a cost function based on the energy,
which is calculated by a full electro mechanical model of the regarded machine tool.
At the example of a 7-axis fiber placement machine tool Debout et al. [22] demonstrate the
reduction of the manufacturing time while ensuring the quality of the final part by taking
advantage of redundant kinematic degrees of freedom. The smoothing algorithm is based
on a filtering method and incorporates the geometry of the movement of the different axes.
The proposed method minimises the curvature and takes into account the difference of the
dynamic characteristics of each axis in the objective function. The optimised geometry is
described as a polygon, which is later compressed inside the CNC to ensure a continuous
movement.
2.3 Error modelling
For the geometry optimisation a tolerance domain must be defined in a way, that the
resulting error at the TCP, which consists of the systematic deviation due to the smoothing
of the trajectory and the machining errors complies with the requested accuracy.
Experiences show, that the accuracy of machine tools is significantly influenced by different
16 2. State of the art
types of machining errors, which are listed in table 2.1. Due to the fact that this work
is focused on laser cutting machine tools without any process-forces, the process-error
is not incorporated in table 2.1 since it depends strongly on the regarded process and
the specification of the regarded machine tool e.g. number of cutting edges, tool-length,
manufacture material etc....
All these errors lead to a resulting error of a given tool-path. An approach for the iden-
tification of the different types of error is shown by Andolfatto et al. [4]. The tracking
errors are evaluated by comparison of the machine controller inputs and the actual en-
coder values. Because of the usually high stiffness of machine tools at low velocity and low
inertial forces, the dynamic errors at low feed rate are neglected in this approach. Know-
ing the contouring errors and assuming a low feed rate the remaining error contributors
are the quasi-static errors, which are decomposed into the link errors consisting of both
component and location errors of the machine and the thermal drift of the machine.
The contribution of the link errors to the volumetric error along a given tool path is
calculated by a an error model, which is proposed by Zargarbashi et al. [96]. Having a
thermal state of the machine with a negligible thermal drift and a low feed rate all the
resulting errors, which are not explained by the link errors are attributed to the motion
errors and dynamic errors. The effect of the thermal drift on the volumetric errors is
modeled as an offset from the reference thermal state on the measured volumetric errors.
The dynamic geometric errors are defined as additional errors occurring when programmed
feed rates, and so dynamic forces on the machine structure increase.
There are two known ways for the improvement of the accuracy respectively the reduction
of machining errors:
1. error minimisation
2. error compensation
For the minimisation of the inacurracies error avoidance is usually done during the design at
Kind of error Time constant Magnitude µm
component errors ∞ 1− 20location errors ∞ 10− 50thermal errors min - h 1− 100structural dynamic errors 0.2− 1s 5− 20tracking error 0.1s 10− 300
Table 2.1: Different types of machining errors
2.3 Error modelling 17
the manufacturing stage of a machine tool. However, this approach involves a high degree
of investment as machine costs rise exponentially with the level of accuracy according to
to Slocum [78].
Due to the quasi-static behavior of both the geometric and the thermal errors and the
fact, that these error types are the largest sources of inaccuracy, in literatur several com-
pensation approaches can be found.
The prediction of geometric errors and thermal errors is shown by Okafor et al. [62]. For the
example of a 3 axis machine tool and the use of homogeneous coordinate transformation
a mathematic model for the prediction of the resulting volumetric error is developed in
order to compensate it in a final step. A capacitance sensor based multi degree of freedom
(DOF) measurement system for the simultaneous measurement of five error components
is shown by Lee et al. [56]. Here the error estimation is done with a least squares fitting
method in order to represent the geometric errors. The compensation is done with a
recursive compensation approach. The geometric error compensation by a model based
feed forward approach is shown by Gao [30].
Zhu et al. [100] illustrate the error estimation by regarding the machine tool as a multi-
body system and the use of homogeneous transfer matrices. The compensation is done
by NC-Code. Further approaches for the modeling of geometric errors are presented by
Ferreira et al. [28], Treib et al [85, 86] and Yu et al. [95].
For the compensation of thermal errors Ess [25] presents a virtual machine prototype
consisting of a multi-body dynamics and thermo mechanical FE code for the simulation of
thermal errors along a given NC path. The virtual machine prototype uses the NC path
to compute the state of the machine tool and then sends a command back to the CNC to
move the axes in such a way, that no relative error between the TCP and the workpiece
occurs.
Although these compensation strategies and other procedures for the minimisation of the
machining errors increase the accuracy of a machine tool there remains an uncertainty
along the tool path. Getting back to the tolerance domain for the geometry optimisation
usually the remaining uncertainty mentioned above is represented by a global tolerance
value, which is based on the worst case of the remaining uncertainty within the workspace.
Assuming that the geometric errors, which are defined in ISO230-1 [46] are the largest
non-thermal sources of inaccuracy a modelling of this position depend uncertainty should
lead to a position dependent tolerance domain and thus an increased exploitation of the
given manufacturing tolerances. Sellmann et al. [75] presents a tolerance model for the
calculation of the available smoothing tolerance, which is discussed in chapter 6.
18 2. State of the art
2.4 Research gap
Referring to chapter 1 both the machining time and the accuracy of machine tools, which
is directly influenced by the structural excitation are having an impact on the machining
productivity. Assuming a machine tool without any process-forces, e.g. laser-cutting
the mechanical excitation of the machine tool is caused only by the trajectory. Taking
into account, that discontinuous actuator-forces cause structural excitation the machining
productivity can significantly be influenced by trajectories, which lead to continuous forces
and a minimum amount of machining time within certain constraints. These constraints
include point- and axe wise limits for the tool path and the tool orientation along the tool
path as well as axe wise limitations of the acceleration, jerk and the jerk-rate.
Many state of the art methods in the field of geometry optimisation are investigated for
the purpose of surface machining, which is a very challenging task because very small
tolerances and adjacent tool paths have to be taken into account. The appliance of these
methods on laser cutting machine tools leads to a reduced exploitation of the usually
high tolerances for both the tool path and the tool orientation. As a consequence of
that the resulting trajectories have high curvatures, which leads to a higher structural
excitation. Taking into account that the subsequent calculated feed rate is influenced by
the parametric derivatives of the geometry, there is also a need for a global optimisation of
these derivatives with respect to the tolerances for the tool path and the tool orientation.
Regarding 5-axis machining state of the art approaches do not deal with the arising quasi-
redundant degrees of freedom, which are defined in chapter 5 and their exploitation. Espe-
cially the smoothing of the movement of the machine tool axes with respect to the different
inertias of the axes is not taken into account.
Both commercial- and scientific approaches for the geometry optimisation are based on
the assumption of a global conservative value for the smoothing tolerance, which is usually
chosen in order to assure a given accuracy with respect to the known errors of the machine
tool. These errors depend on the position of the tool. The resulting global tolerance
value is evaluated with respect to the worst case behavior of the machine tool inside of
the workspace so there is a demand for an individual tolerance model for the position
dependent calculation of the path tolerance of a machine tool.
The deficiencies described for the optimisation of the geometry and the feed rate for
machine tools with- and without quasi-redundancies as well as the position dependent
calculation of the geometric errors of a machine tool are approached in this thesis.
19
Chapter 3
Fundamentals of curves
In this chapter the mathematical methods, which are used in this thesis are described.
General remarks are given in section 3.1. Section 3.2 presents important properties of
the curves used for the trajectory representation. The representation of orientations is
explained in section 3.3. Common methods for the interpolation and approximation and
their different features are shown in section 3.4. A contemplation on the path dynamics
and the continuity of trajectories is given in section 3.5 and section 3.6.
3.1 General remarks
For the description of the trajectories in this work two coordinate systems have to be
distinguished: A movement of the Tool Center Point (TCP) depending on time t or para-
meter s in the following denoted as rT CP (t) and rT CP (s) describes a relative movement of
the tool and the workpiece in a workpiece fixed coordinate system. The movement of the
different axes of the machine tool in the machine coordinate system (MCS) with respect to
time t or the parameter s is in the following denoted as rMCS(t) and rMCS(s). Both TCP -
and MCS-trajectories are described with parametric curves with respect to an increasing
parameter t respectively s.
The following remarks are based on Aminov [3]. According to this, an d-dimensional
parametric curve is defined as:
Definition 3.1 A parametric curve in Rd is the map r : I → Rd of the closed interval
I := [a, b] to Rd.
Thus every parametric value, in the following denoted as s, inside of the closed interval
I := [a, b] is mapped to a point in Rd. The mapping of the interval [a, b]→ [c, d] allows for
20 3. Fundamentals of curves
a reparameterisation of r(s), which does not affect the shape of the curve in general but
leads to a different mapping of a specific parameter value to a point in space. Moreover,
the derivatives of r(s) are influenced by reparameterisation.
3.2 Important properties of curves
This section briefly describes the relevant characteristics of curves in space, which are
used in this thesis. Important parameters are the parametric derivatives r(i)(s), which are
defined as follows:
Definition 3.2 The ith parametric derivative of r(s) is defined as r(i)(s) = di
dsi r(s). r′(s)is called the parametric velocity, r′′(s) is called parametric acceleration.
The regularity of curves is defined as:
Definition 3.3 r′(s) 6= 0 ∀s ∈ I := [a, b]
Non regular curves are not considered in this thesis, since the feed rate optimisation
will not be feasible in the case of zero parametric velocity. Using the Frenet formulas the
parametric derivatives of a curve in R3 lead to the Frenet frame θ(s) = {et(s), en(s), eb(s)},which is defined as follows:
et(s) = r′(s)|r′(s)| (3.1)
en(s) = (r′(s)× r′′(s))× r′(s)|(r′(s)× r′′(s))× r′(s)| (3.2)
eb(s) = en(s)× et(s) (3.3)
The Frenet frame of a curve is shown in figure 3.1.
et(s) and en(s) are spanning the osculating plane. In this plane lies the curvature circle
as shown in figure 3.1. The rectifying plane and the bi normal plane are perpendicular
to the osculating plane and are also denoted in figure 3.1. While et(s) is tangential to
the curvature circle, en(s) is perpendicular to it and denotes the direction of a connecting
line between the point on the curve and the center of the curvature circle. The reciprocal
value of the radius of the curvature circle is called the curvature κ and describes the rate
of change of the direction of et(s) along the arc length of the curve.
3.3 Orientation representation 21
XY
Z
curvature circle
osculating plane
et(s)
en(s)
eb(s)
Figure 3.1: Frenet frame, osculating plane and curvature circle of a parametric curve.
κ = |r′ × r′′||r′|3 (3.4)
If r′′(s) vanishes, the curvature is zero in this point. If r′′(s) = 0 ∀s ∈ I := [a, b] the
curve is a straight line. The Frenet frame is not defined in this case and can be calculated
according to Hadorn [38] by regarding the neighboring NC-Blocks.
An NC block itself is defined as follows:
Definition 3.4 A NC-Block is a regular curve r(s) according to definition 3.1, which is
defined within the interval 0 ≤ s ≤ 1 and is supposed to be smooth, i.e. all parametric
derivatives are continuous.
3.3 Orientation representation
The methods, which are presented in this work are exemplified on a 5-axis laser cutting
machine tool whose kinematic is sketched in figure 3.2. Quaternions would be the most
22 3. Fundamentals of curves
general description of the orientation due to the fact that no gimbal lock occurs. Assuming
that the orientation representation in this context is used for the evaluation of the tool
orientation n(sa) as a function of given tool angles ϕB(sa) respectively ϕC(sa) according
to figure 3.2 the gimbal lock is not taken into account, so the tool orientation is sufficiently
described using the rotation scheme (3.5) assuming an initial orientation of the tool n0 =[0 0 1]T and initial rotation angles ϕB(s = 0) = 0 and ϕC(s = 0) = 0.
A first rotation of n0 around the Y -axis of the machine coordinate system by ϕB and a
second rotation around the Z-axis of the machine coordinate system by ϕC leads to the
tool orientation at sa, which is defined as
n(sa) =
cos(ϕC(sa)) sin(ϕC(sa)) 0sin(ϕC(sa)) cos(ϕC(sa)) 0
0 0 1
cos(ϕB(sa)) 0 − sin(ϕB(sa))0 1 0
− sin(ϕB(sa)) 0 cos(ϕB(sa))
001
=
cos(ϕC(sa)) sin(ϕB(sa))sin(ϕB(sa)) sin(ϕC(sa))
cos(ϕB(sa))
(3.5)
As well as the TCP-Position the tool angles ϕB(s) and ϕC(s) depend on the same global
path parameter s, so a position-rotation movement of the machine tool in R3 space is
defined in a similar way.
For the optimisation of the orientation along the tool path in the case of 5-axis machining,
which is shown in the chapters 4 and 5 the movement of the axes of a machine tool rMCS(s),their valuation and thus the transformation TCP →MCS is important.
For the kinematics of the laser machine tool used as example here shown in figure 3.2 the
transformation is defined as:
rMCS(s) = rT CP (s)
−
cos(ϕC(s)) − sin(ϕC(s)) 0sin(ϕC(s)) cos(ϕC(s)) 0
0 0 1
·
− sin(ϕB(s))
0−cos(ϕB(s))
·∆B
+
− sin(ϕC(s))cos(ϕC(s))
0
·∆C
(3.6)
with ϕB(s), ϕC(s), ∆B and ∆C according to figure 3.2.
3.3 Orientation representation 23
XY
Z
rT CP (s)
∆B
∆C
rMCS(s)
ϕB
ϕCn(sa)
Figure 3.2: Example of the kinematics of a laser cutting machine tool.
For kinematics with a larger number of joints standardised procedures for the reverse
kinematic such as Denavit-Hartenberg transformation as shown by Craig [19] are suitable.
Although for a rotational axis the curvature is not defined the parametric derivatives
r(n)(s) are subject of the geometry optimisation and are optimised in chapter 4 in order
to minimise fast changes in orientation movements of the tool.
24 3. Fundamentals of curves
3.4 Methods for interpolation and approximation
Interpolation and approximation contains methods by which a given function F (s) or
data points (si, f i) can be approximated by a continuous function r(s). According to
Schwarz [73] in the case of an approximation r(s) is determined so that a norm of the
difference between the values of the sought function and the given data points
∥∥∥r(si)− fi
∥∥∥ (3.7)
or the given function and the sought function ‖r(s)− F (s)‖ is minimised. During in-
terpolation the approximating function is constructed so that it coincides with the given
function or the data points at given parameter values:
r(si) = F (si) or r(si) = fi
(3.8)
In literature different approaches for interpolation and approximation can be found. The
Polynomial interpolation, B-Splines and the Non Uniform Rational B-Splines in the fol-
lowing denoted as NURBS are illustrated below because of their practical significance. For
further details it is referred to Schwarz [73], Bartels [7] and Piegl [65]. Important for the
selection of a suitable interpolation method are the requirements, that should be met in
the geometry optimisation. These are:
accuracy: r(si) should represent the fi
within a certain tolerance.
intuitiveness: There should be a relationship between the modification of singular values
of the curve, and the appearance of the curve, in the following denoted as shaping.
continuity: r(s) should be as much continuous as requested.
practicability: A direct application on a commercial NC-unit with respect to the max-
imum polynomial order must be possible.
3.4.1 Polynomial interpolation
Interpolation is used in order to determine new data point within the range of a set of
known data points. A generalisation of the linear interpolation is the polynomial interpo-
lation, which is searching for a polynomial of degree p
r(s) = a0 + a1x+ . . .+ apxp, (3.9)
3.4 Methods for interpolation and approximation 25
which matches the interpolation condition
r(si) = fi, i = 0, 1, . . . , n. (3.10)
According to Schwarz [73] this leads to:
Definition 3.5 To n + 1 arbitrary value pairs (si, f i), i = 0, 1, . . . , n, with distinct real
values si 6= sj∀i 6= j there exists exactly one interpolation r(s) with the property (3.10)
whose degree is at most n.
Insertion of (3.9) in (3.10) provides a linear system of equations, which has only one
solution if si 6= sj for all i 6= j.
Runges phenomenon: If the number of nodes si and the degree of the polynomial
functions of the interpolation increases especially at equidistant nodes the quality of the
interpolation according to definition 3.5 drastically decreases. This becomes clear in the
interpolation function of the Runge-function
F (s) = 11 + s2 , s ∈ [−5; 5] (3.11)
with polynomial function with higher degrees, which is illustrated in figure 3.3.
−5 −4 −3 −2 −1 0 1 2 3 4 5−0.5
0
0.5
1
1.5
2
s
f(s
)
Runge function5th order interpolation polynom10th order interpolation polynomsampling points
Figure 3.3: Interpolation of the Runge-function with 5th- and 10th order polynomial
functions.
26 3. Fundamentals of curves
If the Tschebyscheff nodes, which are closer at the interval limits, are used instead of
equidistant sampling points, the total error of the interpolation can be reduced as shown
in figure 3.4. For the geometry optimisation, the interpolation with the polynomial func-
tions described above is unsuitable because of its shown susceptibility to mathematical
oscillations. B-Splines also consist of polynomial functions but because of the piecewise
definition shown in the following this type of curves is more suitable for geometry optimi-
sation.
3.4.2 B-Splines
An alternative approach to the polynomial interpolation are the piecewise polynomial
functions, the Splines, which are suitable for the approximation- and interpolation of data
points. The following explanations are based on Schwarz [73] and Piegl [65]. The name
”Spline” is originated from the shipbuilding. Here the Spline is a longitudinal slat, which
is fixed at certain points and behaves like a cubic Spline. The Basis-Spline in the following
denoted as B-Spline of degree p is defined as the linear combination of the control points
ai with the ith B-Spline basis function Ni,p of the degree p:
r(s) =m∑
i=0Ni,p(s)ai a ≤ s ≤ b (3.12)
−5 −4 −3 −2 −1 0 1 2 3 4 5−0.5
0
0.5
1
1.5
2
2.5
s
f(s
)
Runge functionInterpolation with equidistant sampling pointsInterpolation with Tschebyscheff-pointsequidistant sampling pointsTschebyscheff-points
Figure 3.4: Interpolation of the Runge-function with Tschebyscheff-nodes.
3.4 Methods for interpolation and approximation 27
B-Spline basis function: The recursively defined ith B-Spline basis functions of degree
p is obtained for p > 1 as
Ni,p(s) = s− si
si+p − si
·Ni,p−1(s) + si+p+1 − ssi+p+1 − si+1
·Ni+1,p−1(s) (3.13)
with
Ni,0(s) ={
1 if si ≤ s ≤ si+1
0 otherwise(3.14)
Knot vector: si are the knots. At every knot the description of the basis function
changes. All si lead to the knot vector u of the length m + p + 1. For the evaluation of
the knot vector it must be distinguished between closed, opened or clamped curves. In
the following only clamped curves are regarded, which interpolate the first and the last
control point. For these type of curves the knot vector is defined as
u = [ a, . . . , a︸ ︷︷ ︸p+1
, . . . , um−p−1, b, . . . , b︸ ︷︷ ︸p+1
]. (3.15)
Characteristic is the p + 1-fold occupation of the first and last node and the aperiodic
internal nodes.
Properties of B-Spline curves: The above described definition of the B-Splines leads
to the following properties:
affine invariance: It is no difference if the B-Spline r(s) is first evaluated and then
transformed or whether the points ai are transformed and r(s) is generated on the
basis of these control points.
convex hull: Each segment of a B-Splines of order p is inside of the convex hull of the
segment associated with p control points as shown in figure 3.5
local behavior: Modification of the point ai modifies the B-Spline r(s) only in the inter-
val [si, si+p+1) because of Ni,p(s) = 0 for u /∈ [si, si+p+1).
differentiability: At a knot of the multiplicity k a B-Spline is p− k-times continuously
differentiable. Control points according to knots with maximal multiplicity are in-
terpolated. At this point r(s) is C0 continuous.
28 3. Fundamentals of curves
0 0.5 1 1.5 2 2.5 30
0.5
1
1.5
2
2.5
3
Position X [mm]
PositionY
[mm
]
B-Splineai
convex hull
Figure 3.5: A quintic B-Spline with u = [0 0 0 0 0 0 1 1 1 1 1 1] without internal knots,
which is also known as quintic Bezier-Spline and the enclosing convex hull.
In comparison to the polynomial functions described above B-Splines do not tend to unde-
sirable oscillations. However, B-Splines are non-rational polynomial functions and there-
fore cannot represent arbitrary shapes, e.g. conic sections, circular arcs, ellipses, parabolas
and hyperbolas. For this, the concept of the B-Spline curves is extended to NURBS curves,
which are described in the following section according to Piegl and Tiller [65].
3.4.3 NURBS
NURBS are the general form of the Spline-interpolation and approximation. With NURBS
it is possible to describe conic sections, circular arcs, ellipses, parabolas, hyperbolas and
arbitrary shapes. A NURBS-curve of degree p is defined as
r(s) =∑m
i=0Ni,p(s)wiai∑mi=0Ni,p(s)wi
a ≤ s ≥ b (3.16)
3.5 Path dynamics 29
with the m control points ai, corresponding weights wi and the B-Spline basis functions
Ni,p according to section 3.4.2.
a = 0, b = 1, wi > 0 ∀ i and
Ri,p(s) = Ni,p(s)wi∑mj=0Nj,p(s)wj
(3.17)
(3.16) can be formulated as
r(s) =m∑
i=0Ri,p(s)ai (3.18)
Ri,p are the rational basis functions, which consist of the weights and the B-Spline basis
function. wi are additional weights in order to affect the shape of the curve in the following
manner:
• a large wi (>1) pulls the curve to the point ai.
• wi = 1 ∀i leads to the non-rational B-Spline curve.
• wi = 0 implies, that wi has no influence on the shape of the curve.
Properties of NURBS: In addition to the advantages of B-Splines NURBS offer great
capabilities for the shaping because of their rationality and the weights in order to rep-
resent conics and other shapes. The required continuity can be met with NURBS and
the possibility of the conversion of NURBS into polynomials offers an access to standard
NC-units.
3.5 Path dynamics
In the previous chapter different methods for the description of the path function r(s) were
introduced but do not satisfy the concept of a movement with respect to time t. In order
to obtain the effective velocity along a given curve r(s) a functional dependency between
the path parameter s and the time t, s = s(t) is introduced. Using the chain rule this
leads to
Position x(t) = r(s(t)) (3.19)
Velocitiy x(t) = r′(s)s (3.20)
Acceleration x(t) = r′′(s)s2 + r′(s)s (3.21)
for the definition of the effective velocity respectively acceleration with respect to time t.
30 3. Fundamentals of curves
3.6 Continuity of trajectories
An important parameter for the set point generation in order to get a physical feasible
trajectory and less mechanical excitation of the machine tool is the continuity of the
calculated trajectory referred to Bartels et al. [7]. In the field of parametric curves the
parametric continuity and the geometric continuity have to be distinguished.
A curve r(s) is said to be Cn continuous if the nth derivative dnrdsn is continuous for s ∈ [a, b].
A descriptive example is the movement of a mass along a precalculated path with respect
to time, which must be at least C1 continuous to have a finite acceleration. In order
to realise a smoother motion like the path planing of a roller-coaster higher orders of
parametric continuity are required.
With the concept of geometric continuity according to Bartels et al. [7] a curve or surface
can be described as Gn continuous with the parameter n as a measurement of the smooth-
ness. Assuming a parametric curve r(s) of the R3 in the closed interval s ∈ [a, b] the first
three orders of geometric continuity are described as follows:
G0: The curve is continuous.
G1: Also the direction but not necessarily the magnitude of the tangent vector is contin-
uous. In other words a curve without any crinkle.
G2: Also the direction but not necessarily the magnitude of the curvature vector is con-
tinuous.
Assuming that discontinuous and also high force respectively force rates lead to a me-
chanical excitation, which is an influencing factor on the productivity of machine tools as
shown in chapter 1 at least G2 respectively C2 continuity is necessary for the set point
generation.
31
Chapter 4
Geometry optimisation for machine
tools
This chapter deals with methods for the geometry optimisation based on the methods for
B-Spline approximation, which are introduced in chapter 3. First of all the global and local
optimisation problem are illustrated in section 4.1 and 4.2. An algorithm for the rounding
of NC-Block transitions and the comprehensive rounding of multiple NC-Blocks within a
given tolerance is presented in section 4.3. Assuming that a maximum exploitation of the
given tolerance leads to a decrease of the local curvature of the trajectory, a local higher
feed rate will be possible. This finally leads to an increase of the machining productivity,
which is exemplified in section 4.4.
4.1 Global optimisation problem
As already mentioned in section 2.1 the global task of the set point generation is to obtain
a time optimal movement within both geometric and dynamic constraints and a minimum
amount of mechanical excitation of the machine tool. A coupled approach, which optimises
the geometry and the feed rate in one calculation step, would be sufficient but in favor of
robustness and due to the requested real time ability of common open-loop controllers the
optimisation task mentioned above is splitted into the two subsequent optimisation steps
geometry optimisation and feed rate optimisation. This approach is in fact heuristic and
does not lead to a time optimal movement in general but is a trade off between robustness
respectively real time ability and the productivity.
The resulting task for the geometry optimisation is to smooth a given tool path within
the given geometric tolerances. Due to the fact that a time optimal trajectory cannot be
32 4. Geometry optimisation for machine tools
preserved only by geometry optimisation, the upcoming question is the objective function
for the geometry optimisation. An important parameter for the smoothness of a curve is
the curvature (3.4) respectively the rate of the curvature. It is shown by Hadorn [38], that
an at leastG2 continuous smoothing function with a minimal curvature leads to a decreased
mechanical excitation of the machine tool. This prevents discontinuous accelerations in
the sensitive direction of the tool path so the mechanical excitation of the machine tool is
finally minimised. According to (3.19)-(3.21) the resulting feed rate and their derivatives
with respect to time, which are calculated in a subsequent task are influenced by the
parametric derivatives r(i)(s). Thus, a smoothing of the curvature respectively the rate
of the curvature, which are calculated by the parametric derivatives of a curve has an
influence on the subsequent calculated feed rate according to Beudaert et al. [10].
Regarding the set up of an optimisation problem for the application case the robustness of
the used optimisation algorithm is important. Assuming a feasible solution the robustness
of an optimisation algorithm is influenced by both the computing time and the convexity of
the optimisation problem. In the field of convex optimisation for the linear programming,
the quadratic programming with both linear and quadratic constraints as well as the
second order cone programming high performance algorithms with real time ability are
available. For the set up of these algorithms an objective function with positive function
values in a comparable magnitude leads to an increased speed of convergence. Therefore
in this work a quadratic programming approach is used. In the case of convexity these
types of optimisation problems can later be reformulated as a second order cone program
according to Boyd [14].
Due to the complexity an objective function, which represents the curvature (3.4) does
not lead to a convex optimisation problem. A convex formulation, which is described in
more detail in section 4.3, minimises the parametric derivatives of r(s) along a given set
of NC blocks.
For simplicity the constraints, which ensure the requested geometric tolerances during
optimisation, are formulated in a linear matter, which is also shown in section 4.3.
The optimisation of the tool path is accomplished depending on the NC code, which usually
consists of one of the two following programming types:
• Geometries, which are described by a sequence of straight lines and circular arcs in
order to realise machining operations on the shop floor.
• Freeform curves, which in the majority of cases are described as polygons. Usually
this type of NC program is created by a CAM tool.
The first type represents sequences of comparatively long NC blocks with a constant curva-
4.1 Global optimisation problem 33
ture so discontinuities are only located at the transition, which is regarded during optimi-
sation. Depending on the requested continuity the resulting trajectory for the smoothing
starts and ends on the original tool path in the immediate vicinity of the transition with
respect to the local direction of the tangent and the local curvature.
Contrary to a sequence of long NC blocks the second type consists of NC blocks with a
very small length, which is usually smaller than 1mm. A rounding of the transitions with
the above described method will be very disadvantageous, because every corner has to
be optimised separately. As a consequence of that the curvature will be continuous but
would oscillate along the tool path so there is a need for the global smoothing of multiple
NC-blocks within a given tolerance. In the field of NC programming this type of rounding
is used to save computational power by pooling of several NC-blocks. For this reason,
this methods are also called compression. While the rounding of NC block transitions is
only focused on the transition between two subsequent NC-blocks the challenging task for
the compression is to find a continuous function to represent a sequence of NC blocks as
smooth as possible within a given tolerance according to figure 4.1.
−0.5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5−2.5
−2
−1.5
−1
−0.5
0
0.5
Position X [mm]
PositionY
[mm
] GeometryCompressionRounding
Figure 4.1: Planar geometry consisting of circular arcs and straight lines. The compres-
sion of multiple NC-blocks is denoted by the red line. The rounding of the transition of
subsequent NC-blocks is denoted by the blue line.
34 4. Geometry optimisation for machine tools
4.2 Local optimisation problem
In the following section the resulting local optimisation problem for the geometry opti-
misation is introduced. Like every optimisation problem, a cost function, constraints and
boundaries have to be formulated.
For a given tool path r(s) consisting of the NC blocks r1(s) to rh(s) with 0 ≤ s ≤ 1an at least G2 continuous curve r(s) with a minimum curvature in every point along the
tool path is sought. In the following it is assumed, that r(s) consists of straight lines and
circular arcs. This leads to the local optimisation problem, which is formulated below.
While in the following all given quantities are denoted with an upper bar, the optimised
quantities are denoted with a tilde.
4.2.1 Objective function
With the parametric derivatives r(i)(s) of the smoothing function the objective function is
defined as
J =i=p∑
i=1
∫ sb
sa
ηi(r(i)(s))2ds. (4.1)
ηi are additional weights, which are defined in section 4.3.5.
4.2.2 Constraints
Since the geometry optimisation is separated from the feed rate optimisation no dynamic
limitations of the different axes of the machine tool are taken into account, and the only
constraint of r(s) is the fulfillment of the given manufacturing tolerances. Additionally,
the process uncertainties need to be taken into account, in order to hold the manufacturing
tolerances.
In consideration of the fact that the methods illustrated in this thesis are exemplified on
5-axis laser cutting the constraints for r(s)T CP and the orientation of the laser beam along
r(s)T CP in order to fulfill the given tolerances can be formulated as described below.
Track tolerance: For the definition of the laser specific tolerances along the tool path
r(s)T CP a local coordinate system ψ(s) is defined. In the following it is assumed, that the
programmed orientation of the laser beam is collinear to the normal vector n(s) to the
4.2 Local optimisation problem 35
sheet metal, which is cut during machining and perpendicular to the cutting direction et(s).The accompanying tripod is aligned to the sheet surface and the cutting line by ψ(s) ={eu(s), ev(s), ew(s)}. It must strictly be distinguished from the local Frenet frame θ(s)(3.1)-(3.3) and is defined as
eu(s) = et(s) (4.2)
ev(s) = n(s)× eu(s) (4.3)
ew(s) = n(s) (4.4)
according to figure 4.2. In the case of a corner the parametric speed r′(s)T CP for the
computation of et(s) and ψ(s) becomes undefined. In this case ψ(s) is calculated by
comparison of the neighboring NC-Blocks.
Regarding the laser cutting process two tolerance values must be taken into account. The
tolerance due to the uncertainty of the process must be considered in the design phase of
the manufactured part. For the geometry optimisation the tolerance due to the focusing of
the laser beam is important since the laser cutting process only works within a small range
for the distance between the TCP and the sheet metal. Therefore the process tolerance
∆proc is introduced, which is defined as the limitation of the deviation ∆w of the TCP in
direction of ew(s).
For the fulfillment of the manufacturing tolerance ∆n and ∆t are defined as the limitation
of the deviations ∆u and ∆v of the smoothing function in direction of ev(s) respectively
eu(s) of the given NC block.
All deviations of the tool path, which are limited by the tolerance values described above
are lying in the cuboidal tolerance volume, which is spanned by eu(s), ev(s) and ew(s) as
shown in figure 4.2. Therefore a deviation between r(s)T CP and r(s)T CP is defined as
r(sa) = r(sa)T CP + ∆ueu(sa) + ∆vev(sa) + ∆wew(sa) (4.5)
according to figure 4.2. As mentioned before ∆proc is given by the process tolerance, which
consists of the following to contributors: An uncertainty of the process, which is regarded
in chapter 6 and a tolerance of the process, which allows for a sufficient laser process and
is considered in the following. ∆n and ∆t are limited by the manufacturing tolerance so a
deviation of the global tool path is admissible if
36 4. Geometry optimisation for machine tools
−∆t ≤ ∆u ≤ ∆t (4.6)
−∆n ≤ ∆v ≤ ∆n (4.7)
−∆proc ≤ ∆w ≤ ∆proc (4.8)
is fulfilled in every point.
XZ
Y
eu(s) = et(s)
ev(s) = n(s) × eu(s)ew(s) = n(s)
∆w
∆v
∆u
r(s)
Figure 4.2: Local trihedron ψ(s), which is based on the parametric derivatives of r(s)T CP
and the tool orientation n(s) as well as the admissible deviations ∆t, ∆proc and ∆n of the
smoothing function.
Orientation tolerance: For the definition of the orientation tolerance a pyramid with
a rectangular base containing all the admissible orientations of the tool axis according to
Castagnetti et al. [17] is defined as shown in figure 4.3.
Lead and tilt angle shown in figure 4.3 are constrained by the process and the manu-
facturing tolerance. From a practical point of view collision avoidance has to be taken into
account but is not regarded in this thesis.
The limiting factor for the lead angle is the process tolerance because orientation deviations
in positive or negative direction of the cutting edge are negligible for the quality of the
4.2 Local optimisation problem 37
XZ
Y
eu(s)
ev(s)
ew(s)
tool axis
∆ϕtilt
∆ϕlead
Figure 4.3: Domain of admissible orientations according to Castagnetti et al. [17].
cutting edge. For the tilt angle on the other hand the maximum skewing of the cutting
edges is the limiting tolerance value so in this case the process tolerance is negligible.
4.2.3 Boundaries
The boundaries deal with the start and the endpoint of the regarded curve. Since the
optimised curve should be embedded into an existing NC program the curve should begin
and end on the original curve in the sense of G0 continuity. Although accomplished by the
increasing parameterisation introduced in chapter 3.1, the beginning of the curve should be
located before the end. As defined in chapter 3.6 also a G2 continuous transition between
r(s) and r(s) is requested and should be mentioned in the boundary conditions, which
have to be formulated.
38 4. Geometry optimisation for machine tools
4.3 Discrete geometry optimisation
In the following a method for the optimisation problem, which is figured out in section 4.1
is presented. With this method both the rounding of the transition zones of adjoining
NC-Blocks and the compression of multiple NC-Blocks is accomplished.
The basic idea of the discrete geometry optimisation (DGO), which is presented in the
following, is to minimise the weighted sum of one or more parametric derivatives of the
sought curve evaluated at given parameter values while ensuring the given tolerances,
which are described in section 4.2. The sought curve for this problem is described by B-
Splines, which are introduced in chapter 3. In favor of robustness the method is formulated
as a quadratic programming problem with linear constraints.
First of all general remarks about quadratic programming are made. Then the formula-
tion of the optimisation problem is presented including the set up of the cost function,
the constraints as well as the boundary conditions. Finally, the influence of individual
parameters on the resulting curve is illustrated and a windowing technique is shown.
4.3.1 Quadratic programming problem
According to [57] a quadratic program (QP) finds a vector x, which minimises
J = 12x
THx+ cTx (4.9)
subject to
Ax ≤ b (4.10)
Aeqx = beq (4.11)
If the matrix H is positive semidefinite, then J is a convex function: In this case the
quadratic program has a global minimiser if there exists some feasible vector x satisfying
the constraints and if J is bounded below on the feasible region. If the matrix H is positive
definite and the problem has a feasible solution, then the global minimiser is unique.
For the solution different commercial algorithms are available. A very efficient method
for the solution of a QP-problem is the interior-point-convex method, which is available
for MATLAB [57] and is used for the computations, which are shown in the remainder of
this chapter. According to [57] quadprog performs the following steps in order to obtain
a solution:
4.3 Discrete geometry optimisation 39
Presolve/Postsolve: In a first step the QP is simplified, e.g. redundant constraints are
removed respectively simplified with respect to Gould [35].
Generate initial Point: According to Mehrotra [58] an initial point x0 fulfilling the
given constraints is generated.
Interior point method: Using a predictor-corrector method, which first predicts a step
from Newton-Raphson formula. Then a corrector step is computed.
Multiple Corrections: In order to increase the step size and to improve subsequent
steps multiple corrections according to Gondzio [34] are computed.
Total Relative Error: An additional function in order to measure the feasibility is eval-
uated. If this function grows too large the problem has no solution.
4.3.2 Objective function
For the quadratic programming approach the cost function (4.1) has to be reformulated
in a way that it is represented by (4.9). Additionally the resulting QP-problem must be
convex respectively the matrix H in (4.9) must be at least positive semidefinite in order
to obtain a convex optimisation problem.
As already mentioned above, the function r(s) for the rounding of r(s) and its parametric
derivatives are defined as B-Splines of degree p. These are given by a knot vector u for
the evaluation of the B-Spline base functions Ni,p and the control points ai for having an
influence on the shape of the curve. Therefore the vector x in (4.9) contains m control
points ai for each axis, which are optimised. Assuming a knot vector u withm+p+1 entities
and a vector s with n discrete parameter values leads to the ith parametric derivative for
a pth degree B-Spline
r(k)(s) =n∑
i=0N
(k)i,p (s)ai = C(k)(s) · a (4.12)
with C(k)(s) including the base functions N(k)i,p (s). In order to realise a good shape of r(k)(s)
both a parameter vector and an appropriate knot vector must be selected. Assuming that
the parameter lies in the range s ∈ [0, 1] three methods for the parameterisation are
described by Piegl and Tiller [65]. For the DGO, the commonly used parameterisation
proportional to the chord length of rT CP (s) is selected. Other methods are equally spaced
parameters, or the centripetal methods, which are also described by Piegl and Tiller [65].
Let L be the chord length
40 4. Geometry optimisation for machine tools
L =n−1∑
i=0|ri+1 − ri| (4.13)
Then it is
s0 = 0 (4.14)
sn = 1 (4.15)
and
si = si + |ri+1 − ri|L
i = 0, . . . , n− 1. (4.16)
Based on the parameterisation described above a suitable knot vector u must be defined.
For this purpose also by Piegl and Tiller [65, 66] the following technique of averaging for
the computation of u is recommended. It is
u0 = · · · = up = 0 (4.17)
um−p = · · · = um = 1 (4.18)
and
un+p = 1p
n+p−1∑
i=i
si j = 1, . . . , n− p. (4.19)
With this method the knot vector reflects the distribution of s and supports a good shape
of the resulting curve, so the C(i) in (4.12) can be evaluated.
Substituting of (4.12) in (4.1) with a given discretisation s and the nth increment ∆sn
leads to
J =p∑
k=1
∫ sb
sa
ηk(r(k)(s))2ds
=p∑
k=1
n∑
i=1ηk(r(k)(si))2
=p∑
k=1ηk(C(k) · ai)2 (4.20)
Therefore H and c in (4.9) are defined as
H =p∑
k=1ηkC
Tk Ck (4.21)
c = 0 (4.22)
4.3 Discrete geometry optimisation 41
In the general case x consists of the control points ai of the smoothing function r(s).
Knowing that xTHx represents the squared sum of a linear combination of parametric
derivatives it is
xTHx ≥ 0 ∀x ∈ R (4.23)
Therefore H is positive semidefinite and the function J(x) is convex assuming that the
linear constraints (4.10) and (4.11), which are defined below support a feasible solution.
4.3.3 Constraints
The set up of the linear constraints in (4.10) and (4.11) is shown in order to ensure that
r(s) satisfies the given tolerances, which are figured out in section 4.2.2. The control points
ai are defined separately for every axis. However, the deviation between r(s) and r(s) is
defined as illustrated in figure 4.2 and 4.3. In the sense of a maximum utilisation, the given
tolerances must be shared by all the axes, which are involved in a given trajectory as well
as the process. Therefore the tolerance-sharing for both the tool path and the orientation
of the tool is presented in the following.
Tolerance sharing for the tool path: During computation of the DGO the original
geometry is discretised by n points. In order to get a feasible solution, the tolerance for
the TCP, which is defined in section 4.2.2 must be satisfied at every point. Therefore the
tolerance sharing for the tool path is accomplished by evaluation of ψ(s) at every regarded
point sa along the geometry r(s). To ensure that the movement of the nth value of r(s)arising from (4.5) is limited to a cuboidal volume spanned by the local accompanying
trihedron ψn(s) with the edge lengths 2∆u, 2∆v and 2∆w, during optimisation (4.5)-(4.8)
must be represented by the linear constraints (4.10)-(4.11).
For the representation of (4.5) the vector x in (4.9)-(4.11) is defined as
x = {Xm, Ym, Zm,∆un,∆vn,∆wn} (4.24)
with the dimension [3m+ 3n, 1]. For the representation of (4.5) it is
42 4. Geometry optimisation for machine tools
Aeq
=
−et,X,1 −en,X,1 −eq,X,1
C(0) 0 0 . . . . . . . . .
−et,X,n −en,X,n −eq,X,n
−et,Y,1 −en,Y,1 −eq,Y,1
0 C(0) 0 . . . . . . . . .
−et,Y,n −en,Y,n −eq,Y,n
−et,Z,1 −en,Z,1 −eq,Z,1
0 0 C(0) . . . . . . . . .
−et,Z,n −en,Z,n −eq,Z,n
(4.25)
and
beq =
rX1...
rXn
rY 1...
rY n
rZ1...
rZn
(4.26)
so the nth value of r(s) is only able to move along the local accompanying trihedron ψ(sa).
C(0) in (4.25) are the base functions of the requested B-Spline evaluated at the n assumed
parameter values si. The other contributors of (4.25) are diagonal matrices of the X, Y
and Z components of the normed components of ψ(s).
(4.6)-(4.8) are represented by the linear inequality constraints (4.10) with
A =
0 . . . 0 I 0 0...
. . .... 0 I 0
0 . . . 0 0 0 I
0 . . . 0 −I 0 0...
. . .... 0 −I 0
0 . . . 0 0 0 −I
(4.27)
4.3 Discrete geometry optimisation 43
and
b =
∆t
∆n
∆proc
−∆t
−∆n
−∆proc
. (4.28)
Knowing the matrix H for the objective function, which was defined in section 4.3.2 and
the constraints defined above the quadratic programming problem (4.9)-(4.11) for the tool
path is sufficiently defined to obtain a feasible solution within the constraints. This is
shown at the example of a simple planar geometry consisting of two linear NC-blocks,
which are connected G1-continuously by an arc segment according to figure 4.4. Using the
constraints, which are defined above the geometry is rounded within a maximum deviation
in normal direction of the tool path of 50µm using the quadratic programming approach
(4.9)-(4.11). From figure 4.5 it is obvious that the tolerance in normal direction of the
tool path is satisfied at every point of the geometry. Due to the fact that the transitions
between the NC blocks are tangent, the tolerance is not exploited like in the case of a
sharp corner.
Tolerance sharing for rotational axes: In the case of 5-axis laser cutting the given
tolerance values for the lead and tilt angle, which are introduced in 4.2.2 strongly differ.
Depending on the process and excluding the avoidance of obstacles, lead angles up to 20◦are admissible during manufacturing. On the other hand the tilt angle is limited by the
manufacturing tolerance. Usual values for the tolerance of the tilt angle are up to 5◦.
Taking into account, that the optimisation is carried out at the TCP for every machine
axis, the orientation tolerance described in section 4.2.2 must be shared by the rotational
axes, which are involved in the trajectory. Because of the nonlinear transformation between
rT CP (s) and rMCS(s) according to (3.6) and the circumstance, that the linear inequality
constraints (4.10) must contain the limitation of both the lead and the tilt angle along a
given trajectory, a method for the formulation of the tolerance sharing for rotational axes
is required. For this purpose the domain of admissible orientations (DAO), which was
investigated by Castagnetti et al. [17] is used.
The procedure for the calculation of the DAO in order to derive linear constraints for the
optimisation of the movement of the rotational axes is as follows according to figure 4.6.
For further details it is referred to Fischer [29] and Castagnetti et al. [17]:
Creation: For every point along the trajectory the DAO is defined in the local part coor-
44 4. Geometry optimisation for machine tools
0 10 20 30 40 50 60 70 80
0
10
20
30
40
50
60
70
80
Position X [mm]
PositionY
[mm
]
Original geometry r(s)Geometrical error of r(s) · 200
Figure 4.4: 2D-Geometry, which consists of 2 straight lines, which are connected G1
continuous by a circular arc (black). In favor of the visibility the deviation of the smooth-
ing function in normal direction of the tool path is scaled two hundred times (red). The
wiggling of r(s) in the immediate vicinity of the transitions of the different NC blocks
does not necessarily lead to a time optimal movement but a smooth trajectory without any
discontinuities.
dinate system ψ(s). In the regarded case of 3D laser cutting, the DAO is described
as a pyramid with a rectangular base containing all the possible orientations of the
tool axis for each point on the tool path.
Transformation: Taking into account the kinematics of the machine tool for every orien-
tation of the tool within the DAO a corresponding tuple of angles for the rotational
axes B and C is calculated using the transformation (3.6). For each point on the
tool path this leads to an arbitrarily area in the plane spanned by B and C.
Linearisation: Choosing a rectangle inside of the arbitrarily area in the B/C plane de-
scribed above, a domain of admissible angles is calculated. The upper and lower
limitation of B respectively C is given by the edges of the chosen rectangular. Based
4.3 Discrete geometry optimisation 45
0 20 40 60 80 100 120 140−60
−40
−20
0
20
40
60
80
Path [mm]
GeometricalError
[µm
]
Geometrical Error [µm]maximum permissible deviation [µm]
Figure 4.5: Deviation in normal direction of the tool path of figure 4.4 along the arc
length.
on this linear constraints for the quadratic programming problem are derived as
described by Fischer [29].
4.3.4 Boundaries
As mentioned in section 4.2 an at least G2 continuous transition between r(s) and r(s) is
requested and should be mentioned in the boundary conditions, which are formulated in the
following. First of all the λ-parameterisation, which was investigated by Hadorn [38] for the
quintic Bezier-Spline is generalised for a B-Spline of degree p. Since the λ-parameterisation
is originated in order to ensure a G2 continuous movement of linear axes an expansion for
rotational axes is presented.
λ-parameterisation for the tool path: A B-Spline curve shall be computed in order
to connect the two given points ra and rb. The local Frenet frames at the begin and the
end of the curve are given as θa respectively θb. Boundary conditions for the curvature
are given by κa at s = 0 and κb at s = 1. In the case of linear axes and the fact that
r(s) is connected with common NC-blocks like straight lines respectively circular arcs the
following demands on the parametric derivatives at the begin
46 4. Geometry optimisation for machine tools
Creation
Transformation
Linearisation
Local part coordinate system (TCP)
Maschine coordinate system (MCS)
Maschine coordinate system (MCS)
B
C
B
C
XZ
Y
eu(s)
ev(s)ew(s)
tool axis
∆ϕtilt
∆ϕlead
Figure 4.6: Workflow for the point wise evaluation of the DAO in order to obtain linear
constraints for the subsequent optimisation.
ra = r(s=0) (4.29)
λaet,a = r′(s=0) (4.30)
κa =|r′(s=0) × r′′(s=0)||r′(s=0)|3
(4.31)
0 = r′(s=0) · r′′(s=0) (4.32)
4.3 Discrete geometry optimisation 47
and the end of the curve
rb = r(s=1) (4.33)
λbet,e = r′(s=1) (4.34)
κb =|r′(s=1) × r′′(s=1)||r′(s=1)|3
(4.35)
0 = r′(s=1) · r′′(s=1) (4.36)
occur, in order to ensure G2 continuity between the smoothing function and the planned
path.
Since only clamped curves defined by the knot vector (3.15) are used in this work r(s)interpolates the first and the last control point so G0 respectively C0 continuity is ensured
by a0 = ra and an = rb.
According to Piegl and Tiller [66] the first two parametric derivatives of a B-Spline of
degree p for s = 0 respectively s = 1 are defined as
r′(s = 0) = p
up+1(a1 − a0) (4.37)
r′(s = 1) = p
1− um−p−1(an − an−1) (4.38)
r′′(s = 0) = p(p− 1)up+1
(a0up+1
− (up+1 + up+2)a1
up+1up+2+ a2up+2
)(4.39)
r′′(s = 1) = p(p− 1)1− um−p−1(
an
1− um−p−1− (2− um−p−1 − um−p−2)an−1
(1− um−p−1)(1− um−p−2) + an−21− um−p−2
)(4.40)
Just as already defined by Hadorn [38] the 6 λ-parameters λ0 . . . λ5 are introduced in
order to ensure a movement of the control points ai at the begin and the end of r(s) on
the osculating plane spanned by the local Frenet frames θa and θb, which is evaluated at
the transition between r(s) and r(s). According to figure 4.7 the control points at the
begin and the end of r(s) are defined as
48 4. Geometry optimisation for machine tools
a1 = a0 + λ0et,a (4.41)
a2 = a0 + λ1et,a + λ2en,a (4.42)
an−1 = an − λ5et,e (4.43)
an−2 = an − λ4et,e + λ3en,e (4.44)
XZ
Y
a0
a1
a2
λ0
λ1
λ2
et,aen,a
eb,a
ra
Figure 4.7: λ-parameterisation for the begin of a B-Spline. As defined in (4.41)-(4.44)
by modification of λ0 . . . λ2 parameters the control points a1 and a2 are moved on the
osculating plane spanned by the local Frenet frame θa.
(4.41)-(4.44) in (4.37)-(4.40) leads to
λ1 = λ0up+1 + up+2
up+1(4.45)
λ2 =κ0up+2λ
20p
up+1(p− 1) (4.46)
λ4 = λ5um−p−1 + um−p−2 − 2
um−p−1 − 1 (4.47)
λ3 =κ1(um−p−2 − 1)λ2
5p
(um−p−1 − 1)(p− 1) (4.48)
for the fulfillment of (4.29) -(4.36). Obviously λ0 respectively λ5 are free parameters for
the shaping of the curve while ensuring the boundaries described above.
4.3 Discrete geometry optimisation 49
λ-parameterisation for the tool orientation: In order to ensure G2 continuity for
the optimised trajectory rT CP (s) respectively rMCS(s) also the continuity of the rotational
axes at the transition between r(s) and r(s) is required.
As already mentioned above rT CP (s) consists of straight lines and circular arcs. In common
open loop controllers for these type of NC-blocks a trajectory for a rotational axis C is a
linear interpolation between the start point Ca and the endpoint Cb along a tool path of
the arc length L.
Therefore in the followingd2C
ds2 = 0 ∀s ∈ I := [a, b] (4.49)
is assumed. Based on this, the λ-parameterised control points of a rotational axis C at
the begin and the end of r(s) are defined as
C1 = C0 + λ0et,c,a (4.50)
C2 = C0 + λ1et,c,a + λ2en,c,a (4.51)
Cn−1 = Cn − λ5et,c,e (4.52)
Cn−2 = Cn − λ4et,c,e + λ3en,c,e (4.53)
with C0 = Ca respectively Cn = Cb in order to ensure G0- respectively C0 continuity and
the λi, which are already defined in (4.41)-(4.44). Due to (4.49) λ2 and λ3 are zero. The
remaining scalar value et,c,a and et,c,e are calculated as follows:
A B-Spline of degree p for a rotational axis C shall be computed in order to ensure
dC
dL (L=0)= ∆C
∆l a(4.54)
with the gradient of the previous NC-block ∆C∆L a
and the first derivative of C(L), which is
defined as
dC
dL= dC
ds
ds
dL= dC
ds
1dLds
= C ′
L′(4.55)
Comparable to (4.37) for a B-Spline of degree p C ′ for s = 0 is defined as
dC
ds(s = 0) = p
up+1(C1 − C0). (4.56)
(4.50) in (4.56) leads todC
ds= pλ0et,c,a
up+1(4.57)
50 4. Geometry optimisation for machine tools
A function L(s) for the description of the arc length L can also be computed as B-Spline
of degree p. Their parametric derivative dLds
for s = 0 is defined as
dL
ds= p
up+1(L1 − L0). (4.58)
With L0 = 0 it isdL
ds= p
up+1L1. (4.59)
The arc length L of a spatial curve is defined as
L(s) =∫ s
0|r′(s)|ds (4.60)
with the parametric derivative
L′(s) = |r′(s)|. (4.61)
For s = 0 (4.61) yields to
L′(s = 0) = pλ0
up+1(4.62)
(4.62) in (4.59) leads to
L1 = λ0. (4.63)
(4.59) with (4.63) and (4.56) in (4.54) leads to
∆C∆L a
= C ′
L′ s=0= et,c,a. (4.64)
The same considerations for s = 1 yield
∆C∆L b
= C ′
L′ s=1= et,c,e. (4.65)
4.3.5 Parameterisation
Although the local optimisation problem is formulated with respect to the given constraints
and boundaries, a couple of parameters still remains undefined. These are the number of
control points, which are used for the smoothing spline, the degree of the B-Spline, which
is used during optimisation as well as the additional weights ηK in (4.1). Their influence
on the optimisation result, especially on the shape of the curve is shown in the following at
the example of the rounding of a planar rectangular corner within a permissible deviation
of the tool path of 50µm.
4.3 Discrete geometry optimisation 51
Influence of the number of control points: Taking into account the local behavior
of the B-Spline, which is described in section 3.4.2, the shape of the resulting curve is
influenced by the number of control points, which are used for the smoothing Spline. In
figure 4.8 different results for the smoothing of the planar geometry, which is described
above are shown in response to the number of control points. The smoothing of the corner
leads to local maxima of the higher parametric derivatives of r(s) in the vicinity of the
corner. It is apparent that a decreased number of control points leads to a more global
behavior of the smoothing spline.
0 10 20 30 40 50 60 70 80 90 100
−20
0
20
40
Path [mm]
GeometricalError
[µm
]
r(s) with 1000 pointsr(s) with 800 pointsr(s) with 600 pointsr(s) with 400 points
Figure 4.8: Deviation in normal direction of the tool path in response to the number of
control points.
Influence of the additional weights ηk: For the weighting of the different parametric
derivatives of r(s) the additional weights ηk in (4.1) are used. As already mentioned in
section 4.1 the global task for the geometry optimisation is the smoothing of a given geo-
metry, which does not lead to a time optimal movement in general but leads to a decreased
mechanical excitation of the machine tool due to the elimination of discontinuities and the
minimisation of the curvature. For the example of a quintic B-Spline their influence on
the resulting geometrical error due to the smoothing of the planar geometry, which is
described above, is shown in figure 4.9. For simplicity, only the following tuples are used:
η1 = {1, 0, 0, 0}: Weighting of the parametric speed
η2 = {0, 1, 0, 0}: Weighting of the parametric acceleration
52 4. Geometry optimisation for machine tools
η3 = {0, 0, 1, 0}: Weighting of the parametric jerk
η4 = {0, 0, 0, 1}: Weighting of the parametric jerk-rate
0 10 20 30 40 500
10
20
30
40
50
Position X [mm]
PositionY
[mm
]
Original geometryDeviation for η1 · 50Deviation for η2 · 50Deviation for η3 · 50Deviation for η4 · 50
Figure 4.9: Deviation in normal direction of the tool path in response to the tuple of the
used weighting factors ηi.
A minimisation of the parametric jerk and the jerk-rate due to η3 respectively η4 leads to
unintended wiggles on the shape according to figure 4.9. This is caused by the different
order of magnitude of the different parametric derivatives, so small changes of function
values of the higher derivatives lead to high changes of the function values of the lower
derivatives. Thus only a minimisation of the parametric speed and acceleration will provide
a sufficient shape of the resulting curve r(s).
According to Beudaert et al. [10] a minimisation of the second parametric derivative,
which is proportional to the curvature (3.4), leads to a smooth trajectory. Additionally a
parametric study, which is shown in appendix A leads to η = {0, 1, 0, 0} and is used in the
remainder of this chapter.
Influence of the spline degree: The degree of the B-Spline, which is used for the
smoothing of a geometry within the given tolerance has also an influence on the result.
The deviation in normal direction of the tool path along the arc length of the test geometry
4.3 Discrete geometry optimisation 53
is illustrated in figure 4.10. Obviously the maximum deviation in the corner at 50mm is
only reached for a short distance. This is caused by the used weighting factor figured out
above. This leads to a trajectory, which uses both the convex and concave side of the given
track within the constraints. Experiments show that the best shape is provided using a
cubic B-Spline.
0 10 20 30 40 50 60 70 80 90 100
−20
0
20
40
Path [mm]
GeometricalError
[µm]
Quintic B-Spline r(s)Quartic B-Spline r(s)Cubic B-Spline r(s)
Figure 4.10: Deviation in normal direction of the tool path in response to the degree of
the used B-Spline.
4.3.6 Windowing
In order to save computation power and because of the requested ability of rounding large
data sets, windowing techniques are necessary. In this context windowing means, that the
smoothing of r(s) is split in multiple computation parts, in the following named windows,
which are subsequently optimised and linked. The challenging task for the windowing is the
choice of a strategy in order to minimise the deviation between a smoothing function r(s)with and without windowing. Therefore a strategy for the set up of the different windows
is shown. Additionally at least C2 continuity is required, which must be taken into account
during the set up of the constraints of the different windows. Since the optimised trajectory
r(s) is described by clamped B-Splines with internal knots of multiplicity 1, methods for
the splitting and joining of different B-Splines are shown below based on Piegl and Tiller
[65].
54 4. Geometry optimisation for machine tools
Windowing strategy: In the case of an optimisation of huge data sets a common strat-
egy for the windowing is a forward computation. It consists of a computation window,
which is moved along the data set. Upcoming questions are the window length, the tran-
sition between subsequent computation windows as well as the overlapping of subsequent
windows. The window length is limited by the available computing power. In order to ob-
tain Cn continuity for the final trajectory, the starting condition of a computation window
ri(s) is defined by the transition condition located within the previous window ri−1(s).This leads to additional linear boundary conditions
r(k)i (si = 0) = r
(k)i−1(si−1) ∀si−1 ∈ I := [a, b] (4.66)
for the kth derivative at the starting point of ri(s). The end condition is left free.
If the transition between subsequent computations windows is located at the end of ri−1(s),the subsequent part of the trajectory r(s) is not taken into account during the optimisation
of ri−1(s). In the case of an uncertainty in the immediate vicinity of ri−1(s = 1) this leads
to bad starting conditions for ri(s). As a consequence of that subsequent computation
windows must overlap in a way, that the transition is located in a sufficient distance to
the end of ri−1(s). For simplicity and because of the local behavior of the used B-Splines,
a fixed overlapping of 40% is used in the following.
Methods for the splitting and joining of B-Splines: Two basic methods for the
windowing using B-Splines are the knot insertion and the knot removal, which are shortly
described in the following based on Piegl and Tiller [65].
Knot insertion: For the subdividing of a given curve or surface at a given parameter sa
the knot insertion is a common way in the field of NURBS respectively B-Splines.
For the windowing it is very useful, because it is only a change of the vector basis.
The shape of the curve and the derivatives are not affected. For the curve splitting of
a pth degree B-Spline at a parameter sa and in order to obtain a defined transition
point, which is interpolated by r(s), a knot of multiplicity k = p is inserted as
described by Piegl and Tiller [65]. This leads to new basis functions, which are
p − k times continuously differentiable at the new knot sa. In order to ensure the
continuity of the resulting curve, the derivatives of the resulting curve at sa are the
boundary conditions for the subsequent computation window. At the very end of the
optimisation multiple B-Spline of continuity Cp−1 with outer knots of multiplicity
k = p are lined up.
Knot removal: In order to join the B-Splines to one curve which is p times continuously
differentiable at each parameter s a knot removal is carried out. The knot removal is
4.4 Application examples 55
the reverse process of the knot insertion and is used for the removal of interior knots
of multiplicity k which result from the windowing as described above. Assuming
that the B-Splines are connected Cp−1 continuous it is not necessary to check if the
knot is removable, so given algorithms for the knot removal according to Piegl and
Tiller [65] can be simplified and used for this purpose.
4.4 Application examples
In the following section two examples for geometry optimisation are presented and dis-
cussed. First of all a virtual CNC for the evaluation of the feed rate and a machine model
for the simulation of the contouring error are introduced. The first example shows the
influence of the DGO on both the feed rate and the resulting contouring error for a planar
geometry. The second example illustrates the influence of the DGO on the feed rate in the
case of a 3D geometry including the smoothing of both the tool path and the orientation
of the tool along the tool path.
4.4.1 Virtual CNC
Since this chapter only deals with geometry optimisation the feed rate for the illustration
of the influence of the DGO is calculated from the virtual CNC, where the tool path is
introduced and the virtual CNC computes maximum feed rate. The virtual CNC is an
image of Siemens 840D open loop controller of a 5-axis machine tool and is used for feed
rate simulations. The feed rate constraints for the simulation are listed in table 4.1.
In order to obtain a time discrete profile of the feed rate the optimised geometry r(s), which
is available as B-Spline, is converted into NC-Code and given to the open-loop controller.
The execution of the resulting NC-Code leads to the required time discrete profile of the
feed rate, which is given to a machine model for the simulation of the contouring error,
Max. Velocity Max. Acceleration
X-axis 100 m/min 0.9 gY-axis 100 m/min 1gZ-axis 100 m/min 1gB-axis 3π 1/s 200 1/s2
C-axis 3π 1/s 100 1/s2
Table 4.1: Maximum Velocity, maximum acceleration and maximum jerk of the simulated
machine tool
56 4. Geometry optimisation for machine tools
which is described in the following.
4.4.2 Machine model
The machine model, which is explained in the following, is a rigid body model including
a model for the control system according to Nguyen [61].
Regarding a machine tool in the low and medium frequency range shifts primarily take
place in the coupling locations between the mechanical machine components like linear
guide ways or rotary bearings. Therefore the deflection behavior in the low and medium
frequency range is actually given by the deflection of these coupling elements. This allows
for an approach with multi body dynamics, which finally leads to results comparable with
those obtained by Finite Element Methods.
The model structure is coupled with a control system so the machine tool can be simulated
with respect to their structural behavior as well as their control parameters already in an
early phase of the machine tool design. In this context the model, which is explained
above and sketched in figure 4.11, is used for the simulation of the system response of an
existing machine tool.
4.4.3 2D laser cutting example
For the illustration of the influence of the DGO on machine oscillations and the resulting
feed rate, the planar geometry shown in figure 4.12 is rounded with a global tolerance value
in normal direction of the tool path of 50µm. The exploitation of the given tolerance in
normal direction of the tool path is shown in figure 4.13. Due to the selected parame-
terisation the given tolerance is not completely exploited. The optimised trajectory r(s)is given to the virtual CNC in order to obtain time discrete feed rate profiles. These are
given to the described machine model.
Regarding the resulting feed rate profile for the reference geometry, which is shown in
figure 4.14 velocity collapses at the boundaries of the different NC-block occur. Since
the reference geometry is not G2 continuous, the feed rate is reduced at the boundaries
between subsequent NC-blocks. In contrast, the geometry resulting from the DGO is G2
continuous, which provides a better feed rate since the velocity collapse at the boundaries
are significantly reduced. This leads to a time saving of 20%.
In order to evaluate the mechanical excitation of the machine tool the machine model,
which is described in section 4.4.2 is used. The resulting deviation at the TCP consists
of systematic errors caused by the smoothing of r(s), contouring errors, geometric errors
4.4 Application examples 57
−10
12
34
−10
12
−0.50
0.51
1.52
Position X [m]Position Y [m]
PositionZ
[m]
Figure 4.11: Machine model of the 5-axis laser cutting machine tool.
−20 −10 0 10 20 30 40 50 60 70 80 90 100 110 120−50
−40
−30
−20
−10
0
10
20
Position X [mm]
PositionY
[mm
]
Figure 4.12: 2D geometry, which is optimised with the DGO using the parameters, which
are identified in section 4.3.5.
58 4. Geometry optimisation for machine tools
0 50 100 150 200 250 300 350 400 450−60
−40
−20
0
20
40
60
80
Path [mm]
GeometricalError
[µm]
Geometrical Error [µm]maximum permissible deviation [µm]
Figure 4.13: Programmed deviation in lateral direction of the tool path.
0 0.5 1 1.5 2 2.5 3 3.50
100
200
300∆t = 20%
Time [s]
Feedrate
[mm
/s]
Original geometry r(t)Optimised geometry r(t)
Figure 4.14: Feed rate profiles, generated by the virtual CNC for the original geometry
(red) and the optimised geometry (green). Due to the decreased velocity collapses of the
optimised geometry a time saving of 20% is achieved.
of the machine tool as well as thermal errors, process errors and dynamic errors. The
dynamic errors are separated by evaluation of the spatial difference between the internal
measurement system and the TCP. As can be seen in figure 4.15 the maximum spatial
deviation between the TCP and the internal measurement system and therefore the me-
4.4 Application examples 59
chanical excitation can be reduced through optimisation.
0 50 100 150 200 250 300 350 400 4500
5
10
15
20
25
30
35
40
47% reduction of the
maximum geometrical
error
Path [mm]
GeometricalError
[µm
]
Original geometry r(t)Optimised geometry r(t)
Figure 4.15: Spatial deviation between the TCP and the internal measurement system.
Due to the optimisation with the DGO the maximum geometrical error can significantly be
reduced
4.4.4 3D laser cutting example
In the following the influence of the DGO on the resulting feed rate is presented for the ex-
ample of a typical geometry in the field of 3D sheet metal cutting shown in figure 4.16. The
geometry especially the trimming cut of the edge of the sheet metal shown in figure 4.17
is a very illustrative example because of the fast changes in the orientation of the tool
along the tool path. Depending on the kinematic of the machine tool these orientation
movements lead to large compensation movements, which are also shown in figure 4.17.
A rounding of both the tool path and the orientation within the given tolerance should
provide a smooth movement of the machine tool and thus a decrease of the dynamic error
60 4. Geometry optimisation for machine tools
Figure 4.16: CAD visualisation of the regarded sheet metal including the the desired
orientation of the laser beam (red) along the trimming cut. Because of the high curvature
of the sheet metal fast changes of the orientation along the tool path in order to ensure a
stable laser process are required.
−2000
200400
600800
1,000
−400−200
0200
−200
0
200
Position X [mm]Position Y [mm]
PositionZ
[mm
]
rT CP (s)rMCS(s)
Figure 4.17: rT CP (s) (red) and rMCS(s) (blue) of the trimming cut of the sheet metal
shown in figure 4.16. Obviously fast changes of the orientation along the tool path lead to
large compensation movements.
4.4 Application examples 61
as well as a better feed rate. The smoothing of the trimming cut of the edge of the sheet
metal, which is contemplated in the following, is carried out using global tolerance values
for the deviation of the tool path and the tool orientation of 50µm respectively 5◦ for
both the lead and the tilt angle. Because of the large data set for the description of the
geometry the windowing technique described in section 4.3.6 is used. Due to the fact that
the open loop controller of the virtual CNC is only able to handle a limited number of NC
blocks a description of the optimised geometry with a minimum amount of control points
ai is required. This is obtained by an iterative reduction of the number of control points
while ensuring a valid solution of (4.1) within the constraints. The number of discrete
points of r(s) remains unchanged. As a consequence of that the accuracy of the obtained
solution is kept, while the number of control points is reduced.
The optimisation in this example is subdivided in two computation parts. In a first step
the smoothing of the rotational axes within the constraints is carried out. For the sake
of robustness no tolerance-sharing for the rotational axes is used. Therefore the different
axes are separately optimised. The results for the B respectively the C axis are shown in
figure 4.18 and 4.19.
0 500 1,000 1,500 2,000 2,500 3,000 3,500−100
−50
0
50
Path [mm]
Angle
[◦ ]
rB(s)rB(s)
Figure 4.18: Trajectories rB(s) and rB(s) of the geometry, which is shown in figure 4.16
respectively figure 4.17.
Obviously the smoothing of a large change of the tool orientation along a short arc length at
the TCP leads to unintended wiggles on the smoothing spline rB,C(s). These are caused by
local extrema of higher parametric derivatives r(k)B,C(s), which lead to the described wiggles
as well as compensation movements of the linear axes.
Knowing the orientation of the tool, ψ(s) is evaluated for the tolerance sharing, so different
62 4. Geometry optimisation for machine tools
0 500 1,000 1,500 2,000 2,500 3,000 3,500−100
0
100
200
Path [mm]
Angle
[◦ ]rC(s)rC(s)
Figure 4.19: Trajectories rC(s) and rC(s) of the geometry, which is shown in figure 4.16
respectively figure 4.17.
tolerance values for ∆n and ∆proc can be distinguished during optimisation. The regarded
5-axis laser cutting machine tool is equipped with an additional redundant axis in the
direction of the laser beam, which is used for the adjustment of the gas nozzle, which is
used for the focusing of the laser. Since this axis is controlled with a closed loop controller,
there is no option of user supplied set points for this axis. Therefore the tolerance value
∆proc in direction of the laser beam can be enlarged up to the stroke of the redundant axis
of ±5mm.
The resulting feed rate along the trimming cut compared to the feed rate along the original
geometry in response to the time is shown in figure 4.20. For this example the time saving
only by smoothing of the TCP-path and the orientation of the tool is about 20%. Due to
the fact, that the machine model, which is described in section 4.4.2 is only defined for
small angles for the rotational axes, the mechanical excitation of the machine tool is not
regarded for this application example.
The DGO does not consider the kinematic behavior of the machine tool, so the algorithm
works for every machine tool. If rotational axes are involved in the trajectory, a round-
ing of all the axes does in fact provide a continuous movement of all the axes, but the
resulting MCS-trajectory is inherently not optimal in the sense of jerk- or jerk-rate mini-
malism. Therefore the exploitation of quasi-redundant degrees of freedom is provided and
is discussed in chapter 5.
4.4 Application examples 63
0 2 4 6 8 10 12 14 16 18 20 220
100
200
300∆t = 20%
Time [s]
Feedrate
[mm
/s]
Original geometry r(t)Optimised geometry r(t)
Figure 4.20: Exemplification of the time saving due to the smoothing of both the tool path
and the tool orientation. Because of the generous orientation tolerance a smooth movement
of the rotational axes and therefore smooth compensation movements and finally a good
feed rate is achieved.
64 5. Feed rate optimisation using quasi-redundant degrees of freedom
Chapter 5
Feed rate optimisation using
quasi-redundant degrees of freedom
This chapter presents two approaches for the exploitation of quasi-redundancy. First of
all the definition of this phenomenon is given in section 5.1. The conception of the opti-
misation for the exploitation of quasi-redundancy is presented in section 5.2. The general
formulation of the arising optimisation problem including the regarded constraints and
boundaries is figured out in section 5.3. Both a nonlinear and a quadratic programing
approach for the exploitation of quasi-redundancy are presented in section 5.4 respec-
tively 5.5. In order to show the increased productivity during machining the effect of the
proposed method is exemplified in section 5.6 and discussed in section 5.7.
5.1 Definition of quasi-redundancy
Redundancy is originated from robotics. Here the treatment of redundant kinematics and
kinematic redundancy are important tasks in the field of robotics control. A redundant
kinematic consists of a main and a second subsystem, which are arranged in a serial
manner, so one position in the workspace can be reached from various positions of the
main and the subsystem. Therefore the set point generation for a redundant kinematic
system has to separate the tasks of the two axis subsystems. Regarding a kinematic
redundant robot there is no bijective mapping between the position of the end effector
and the position of the different joints, which is an important task in the field of inverse
kinematics.
Regarding a 5-axis machine tool consisting of rotational and translational axes the trans-
formation between the TCP- and the MCS movement is unique, but within the given
5.1 Definition of quasi-redundancy 65
tolerances for both the position of the TCP and the tool orientation there is no bijective
correlation between the TCP- and the MCS movement. The basic configuration is given,
but within the tolerances of the tool orientation there remains an infinite residual diversity
of possible positions of the different axes, which is exemplified in figure 5.1. Therefore in
every machine tool consisting of both rotational and translational axes there exist ad-
ditional degrees of freedom within the tolerance of the tool orientation, which are in the
following denoted as quasi-redundant degrees of freedom.
The tolerance of the tool orientation is defined depending on the manufacturing process.
In the case of flank milling for example only rotations of the tool ∆ϕ around the normal
direction of the manufactured surface n are feasible as shown in figure 5.2. In this case
there exists only one quasi-redundant degree of freedom.
XZ
Y
rT CP (t)
∆ϕB
rMCS(t)
Figure 5.1: Example for quasi-redundancy in the case of a five axis laser cutting machine
tool. In this example a movement of rT CP is enabled by both a translation of rMCS and a
rotation of the B axis within the orientation tolerance ∆ϕB, which leads to compensation
movements of the linear axes.
In the case of five-axis laser cutting and also in the case of end milling the tolerance domain
66 5. Feed rate optimisation using quasi-redundant degrees of freedom
of the tool orientation can be described in two different ways: In the case of deviations of
the tool orientation, which depend on each other the tolerance domain can be described
as a cone. As already shown in chapter 4 according to Castagnetti [17] and figure 4.3
the more general case with independent admissible deviations of the tool orientation is
described as a pyramid with a rectangular base containing all the possible orientations of
the tool axis for each point on the tool path. Both approaches have in common, that the
admissible deviations of the tool orientation allow for two additional degrees of freedom.
In the following the exploitation of the quasi-redundancy in the case of five axis laser
cutting respectively end-milling is shown at the example of the kinematics of the 5-axis
machine tool shown in figure 3.2.
XZ
Y
n
∆ϕ
workpiece
tool
Figure 5.2: Definition of the tolerance of the tool orientation depending on the manu-
facturing process for flank milling as an example. The rotation ∆ϕ represents the ad-
ditional degree of freedom.
5.2 Conception of the optimisation
As already discussed in chapter 2 the global task for the trajectory optimisation is an
increase of the machining productivity, which is influenced by both the accuracy and the
machining time. For simplicity, the machining time and therefore rT CP (t) is assumed to be
5.2 Conception of the optimisation 67
fixed in the remainder of this chapter since it is evaluated in a previous step. Taking into
account that rMCS(t) denotes the movement of the axes of the machine tool, the accuracy
of the trajectory respectively the mechanical excitation of the machine tool and therefore
the dynamic errors during machining are influenced by an optimisation of rMCS(t). A first
approach in this field is presented by Sellmann et al. [74]. For the example of a 5-axis
laser cutting machine tool the smoothing of the movement of the axes of the machine
tool rMCS(t) is shown. Within the proposed objective function the rate of the curvature of
the trajectory in the machine coordinate system is minimised. The trajectory is described
by quintic polynomials, which are connected C2-continuously. By the use of a rigid-body
model it is shown, that the proposed method leads to reduced mechanical excitations of
the machine tool.
According to Steinlin [79] the mechanical excitation of machine tools due to the trajectory
generation is caused by the following two phenomena: In a frequency range below the
first eigenmode proportional to the acceleration of the trajectory x(t) according to (3.21)
elastic machine parts like guides are deformed quasi static by eccentric actuator forces.
The more relevant phenomenon for the set point generation is an excitation of machine tool
structures in the range of and above the first eigenfrequency, which is primary caused by
the rate of change of the actuator force and is addressed in the remainder of this chapter.
Non regarding frictional effects, the rate of change of the force is proportional to the jerk.
Additionally the inertias of the axes of the machine tool need to be taken into account
during optimisation.
This leads to the following demands on the optimisation method:
• Minimising the jerk values of the different axes for a given rT CP (t)
• Consideration of the inertias of the axes of the machine tool in order to obtain a
prioritisation of these axes during optimisation.
• Compliance with the given tolerance of the tool orientation
Generally speaking during the optimisation with respect to the axes inertias the jerk values...r
MCS(t) are minimised while the given...r
T CP (t) is maintained while exploiting the inner
degrees of freedom.
The physical limitations of a machine tool are chosen in order to ensure a reliable process
and the specified accuracy. Among other machining errors, which are already mentioned
in table 2.1, the accuracy is decreased by mechanical excitation, which is influenced by
the set point generation.
68 5. Feed rate optimisation using quasi-redundant degrees of freedom
Comparing an acceleration-limited trajectory with a trajectory, that is additionally jerk-
limited, the process time obviously increases for the jerk-limited trajectory, which is already
shown by Steinlin [79]. To avoid this effect the acceleration limitation has to be raised.
Taking into account that the acceleration limitations are set with respect to the possi-
ble actuator force or to reduce dynamic effects like cross-talk, raising of the acceleration
limitations is usually not possible.
Therefore together with a jerk-minimal trajectory of the axes of the machine tool the
jerk-limitations can be raised in order to save process time and to ensure the requested
accuracy, which leads to an increased productivity.
5.3 Problem formulation
As mentioned before, for the exploitation of quasi-redundancy for a given trajectory
rT CP (t), a jerk-minimal trajectory rMCS(t) within the given constraints with respect to
the axes inertia is sought. Therefore in a first step based on the DGO, which was pre-
sented in section 4.3, rT CP (t) is obtained either by the virtual CNC, which was introduced
in section 4.4.1, or is assumed to have a constant feed rate for simplicity. However this first
step leads to a discretised smooth trajectory rT CP (t) and the corresponding time vector
respectively the time steps hi. Because of this all derivatives with respect to the time t
become a linear function of time.
5.3.1 Discretisation
In the following the dynamics of the regarded trajectory r(t) including the movement of
all axes of the machine tool are discretised as
yi
= [ri, ri, ri] (5.1)
for the ith discretisation step. For n discretisation steps the variable space x is defined in
dependency of all states yi
as
x =[y1, . . . , yi
, . . . , yn
](5.2)
System dynamics: According to Steinlin [79] for the dynamics of the regarded trajec-
tory r(t) first order state equations are defined. To satisfy these equations a set of equality
5.3 Problem formulation 69
constraints
ζi = ri+1 − ri −hi
2 (ri+1 + ri) (5.3)
ζi+1 = ri+1 − ri −hi
2 (ri+1 + ri) (5.4)
is defined for each discretisation step and can be assembled to a system of linear equations
Aeqx = beq (5.5)
With (5.5) system dynamics up to the second derivative with respect to time are consid-
ered in the sense of C2-continuity, which is defined and requested in chapter 3.6. Higher
derivatives can be incorporated by additional state equations.
5.3.2 Geometric Constraints
Assuming a fixed rT CP (t) the orientation of the tool along the tool path is ensured during
optimisation by the geometric constraints. The regarded process of 3D laser cutting leads
to the following three options for the constraint formulation.
Individual limitation of the angles of the rotational axes: A basic constraint
formulation is the limitation of the rotation angles B(t) and C(t), which can be obtained
by linear constraints. For the ith discretisation step a feasible tool orientation is obtained
if Bi and Ci comply with
Bi −∆ϕB ≤Bi ≤ Bi + ∆ϕB (5.6)
Ci −∆ϕC ≤Ci ≤ Ci + ∆ϕC (5.7)
In (5.6) and (5.7) Bi and Ci represent the discretised programed angles B respectively C.
∆ϕB respectively ∆ϕC denote the point wise span of the tolerances for each axis.
Isotropic limitation of the tool orientation: In order to allow the tool for rotations
around the tool axis, an isotropic limitation of the tool orientation is requested. As shown
in figure 5.3, all orientations of the tool lying inside of the sketched cone with the opening
angle ∆ϕ are feasible. This is obtained by the limitation of the angle ϕ(ta) between the
actual tool orientation n(ta) and the programed tool orientation n(ta) with
70 5. Feed rate optimisation using quasi-redundant degrees of freedom
ϕ(ta) = arccos(
n(ta) · n(ta)|n(ta)| · |n(ta)|
)≤ ∆ϕ (5.8)
for every time step ta.
Anisotropic limitation of the tool orientation: In order to consider an anisotropic
limitation of the tool orientation in the case of 3D laser cutting it must be distinguished
between the lead and tilt angle ϕ(t)lead respectively ϕ(t)tilt, which are already mentioned
in section 4.2.2. For this purpose the local coordinate system ψ(t) = {eu(t), ev(t), ew(t)},which was introduced in section 4.2.2, is evaluated. The tilt angle ϕ(t)tilt is defined as
the angle between the tool and ew(t) in the plane, which is spanned by ev(t) and ew(t).Thus the lead angle ϕ(t)lead is defined as the angle between the tool and ew(t) in the plane,
which is spanned by the vectors eu(t) and ew(t).
For the example of 3D laser cutting the lead angle ϕ(t)lead is only limited by the process
tolerance. Depending on the material of the sheet metal as well as the used laser technology
the cutting process only works within a delimited angular deviation between the normal
direction of the sheet metal and the direction of the laser beam. The deviations of the
orientation in positive or negative direction of the cutting edge are negligible for the quality
of the cutting edge. For the tilt angle ϕ(t)tilt on the other hand the maximum skewing of
XZ
Y
∆ϕ
n(ta) n(ta)
rT CP (t)
Figure 5.3: Isotropic Limitation of the tool orientation
5.4 Nonlinear programing approach 71
the cutting edges is the limiting tolerance value, so in this case the process tolerance is
negligible.
Although both the isotropic- and the conical limitation of the tool orientation represent
more general cases for the constraint formulation, from a practical point of view e.g. com-
putational power for the optimisation the individual limitation of the angles B respectively
C are assembled to the constraints
Ax = b, (5.9)
which are first described and are used in the following.
5.3.3 Boundaries
In order to integrate the exploitation of quasi-redundancy in a windowing solution com-
pared to the method described in section 4.3.6, boundary conditions have to be formulated
for the optimisation. This is achieved by a set of linear equality constraints
dkr
dtk(t) = dkr
dtk(t), t = 0, te (5.10)
for the kth derivative of r(t) with respect to time at t = 0 respectively t = te, which are
attached to the linear equality constraints (5.5).
5.4 Nonlinear programing approach
For the general case of large tolerances of the tool orientation a nonlinear programing
(NLP) approach for the exploitation of the quasi-redundancy is developed in the following
for the example of the kinematics of the 5-axis laser cutting machine tool, which is shown
in figure 3.2.
With respect to the constraints and boundary conditions described above for a given tool
path rT CP (t) with 0 ≤ t ≤ te a jerk-minimal curve rMCS(t) as a function of the trajectory
of the rotational axes B(t) respectively C(t) is sought.
72 5. Feed rate optimisation using quasi-redundant degrees of freedom
5.4.1 Objective function
The objective function consists of the integral of the square of the jerk values of the
machine tool axes with respect to their different inertias. For n axes this leads to
J =i=n∑
i=1
∫ te
ta
νi(...r
MCS(t)i)2dt. (5.11)
...r
MCS(t)i is the jerk and contains as components the jerk of the different axes. νi are
additional weights, which are chosen proportional to the inertias of the linear axes. For the
example of the regarded 5-axis laser cutting machine tool with the offsets ∆B respectively
∆C, 3-times differentiation of the transformation (3.6) with respect to time leads to
...r
MCS(t)X = sinC(t)(− 3∆CC(t)C(t)− 3∆B cosB(t)
(C(t)B(t)
+ B(t)C(t))
+ ∆B sinB(t)(
3B(t)2C(t) + C(t)3
− ...C(t)
))+ cosC(t)
(− 3∆B sinB(t)
(B(t)B(t)
+ C(t)C(t))
+ ∆B cosB(t)(− B(t)3 − 3B(t)C(t)2 +
...B(t)
)
+ ∆C(− C(t)3 +
...C(t)
))+
...XT CP (t) (5.12)
...r
MCS(t)Y = sinC(t)(− 3∆B sinB(t)
(B(t)B(t) + C(t)C(t)
)
+ ∆B cosB(t)(− B(t)3 − 3B(t)C(t)2 +
...B(t)
)
+ ∆C(− C(t)3 +
...C(t)
))+ cosC(t)
(3∆CC(t)C(t)
+ 3∆B cosB(t)(C(t)B(t) + B(t)C(t)
)
+ ∆B sinB(t)(− 3B(t)2C(t)− C(t)3 +
...C(t)
))+
...Y T CP (t) (5.13)
...r
MCS(t)Z =− 3∆B · cosB(t) · B(t)B(t)
+ ∆B · sinB(t)(B(t)3 − ...
B(t))
+...ZT CP (t) (5.14)
...r
MCS(t)B =...B(t)T CP (5.15)
...r
MCS(t)C =...C(t)T CP (5.16)
Since...XT CP (t),
...Y T CP (t) and
...ZT CP (t) are evaluated in a previous step, all the different
contributors of the objective function only depend on the trajectories of the rotational
axes B and C.
5.4 Nonlinear programing approach 73
5.4.2 Numerical optimisation
The optimisation of the problem described above is carried out using a standard solver.
In order to feed this solver the optimisation problem described above, which is in fact
nonlinear must be formulated as a nonlinear program (NLP) according to Betts [8]. For a
given variable x ∈ Rn a best solution x∗ is evaluated, which minimises a scalar objective
function
J = f(x) (5.17)
subject to the nonlinear constraints
c(x) ≤ 0 (5.18)
ceq(x) = 0 (5.19)
and the linear constraints
A · x ≤ b (5.20)
Aeq· x = beq. (5.21)
(5.18) and (5.19) are functions that return vectors. In (5.20) and (5.21) b and beq are
vectors, A and Aeq
are matrices. The numerical optimisation is carried out using an
interior-point algorithm, which finds a minimum of constrained nonlinear multivariable
function. The interior-point algorithm allows for providing analytically calculated gradi-
ents for both the objective function and the nonlinear constraints as well as their Hessian.
If the gradient values and the Hessian are not supplied to the algorithm, the computation
time increases and the quality of the obtained solution decreases.
Identification of optimality: Due to the nonlinear problem formulation, which is ad-
ditionally not convex, the optimisation algorithm is not able to find the global minimum
of the objective function. Therefore, an initial guess close to the solution improves the
quality of the optimised solution.
5.4.3 Application example
In the following an application example is shown and discussed in order to demonstrate
the influence of the quasi-redundancy on the machining productivity.
74 5. Feed rate optimisation using quasi-redundant degrees of freedom
The step up geometry shown in figure 5.4 is a basic example for the quasi-redundancy.
The tool orientation is changed by 90◦ along the TCP-trajectory rT CP in the XZ-plane of
the workspace as shown in figure 5.4. This leads to the compensation movements of rMCS,
which are also shown in figure 5.4. Critical points are the reversal points of rMCS since in
this point at least one axis has to change its direction. At this point a high acceleration
respectively high jerks of the X respectively Z axis and an increased dynamic error is
expected.
Due to the fact that two linear axes and one rotational axis are involved in the trajectory
there is only one quasi-redundant degree of freedom within the given orientation tolerance
of 20◦ for the tilt-angle ∆ϕtilt. Therefore in this example the result is not affected by the
additional weights νi. In addition the objective function (5.11) is simplified assuming
0 50 100 150 200 250 300 350 4000
50
100
150
200
250
300
350
400
450
Position X [mm]
PositionY
[mm
]
rT CP
rMCS
rMCS
Figure 5.4: The TCP-trajectory (black) in the XZ-plane and compensation movements
of the linear axes due to the changed tool orientation (red and green). The exploitation of
the quasi-redundancy along the whole tool path leads to a local smoothing of the reversal
points of the original geometry (red). The direction of the movements of both rT CP and
rMCS are labeled with black arrows.
5.4 Nonlinear programing approach 75
0 50 100 150 200 250 300 350 400 450−100
−80
−60
−40
−20
0
TCP-path [mm]
PositionB
[◦ ]
rb
rb
Figure 5.5: Original (red) and optimised (green) trajectory of the B-axis which leads to
the compensation movements which are shown in figure 5.4.
C(t) = 0 ∀ t ∈ I := [0, te]. (5.22)
Assuming a constant feed rate for rT CP (t) and non regarding the dynamic limitations of the
machine tool axes, a minimisation of the objective function (5.11) leads to the optimised
movement of the B axis according to figure 5.5 and therefore an optimised trajectory rMCS.
The resulting discretised trajectory is approximated by a B-Spline using the DGO and is
converted to NC-Code, which is given to the virtual CNC in order to obtain a time discrete
feed rate profile. The results for the step up geometry, which are obtained by the virtual
CNC, are shown in figure 5.6-5.8 and are discussed in the following.
As shown in figure 5.6 due to the reduced arc length of rMCS(t), while the maximum feed
rate of rT CP (t) is reached as shown in figure 5.8, the maximum velocity of both the X and
the Z axis can significantly be reduced.
Regarding figure 5.7 the global smoothing of the given trajectory leads to a continuous
acceleration of the different axes. Additionally the maximum acceleration in the vicinity
of the transitions is reduced.
As shown in figure 5.8 velocity collapses along the tool-path are significantly reduced,
which leads to a time saving of about 20%. This is caused by both the decreased arc
length and the smoothness of rMCS(t) mentioned above. Therefore the trajectory is only
limited by the maximum feed rate at the TCP. The other dynamic limitations of the
involved axes are not affected.
76 5. Feed rate optimisation using quasi-redundant degrees of freedom
0 50 100 150 200 250 300 350 400 450−1,000
−500
0
500
1,000
1,500
TCP-path [mm]
Velocity
[mm
/s]
XMCS
˜XMCS
ZMCS
˜ZMCS
Figure 5.6: Resulting velocity of the X-axis (red) and the Z-axis(blue) for both the
original rMCS (solid line) and the optimised trajectory rMCS (dashed line).
Application limitations: Although the used solver allows for the analytical calculation
of the gradient respectively Hessian of the objective-function and the nonlinear constraints
the calculation of these additional arguments is very extensive. Especially the calculation
of the Hessian of the objective-function takes very much computational power, which limits
the number of discretisation steps. The inclusion of the physical limitations of the different
axes by nonlinear constraints would additionally complicate the regarded problem due to
the fact, that for all the physical limitations derivatives of (3.6) with respect to time t
need to be taken into account as well as their gradients and their Hessian. Therefore a
simplification of the NLP is required, which is figured out in the following.
5.5 Quadratic programing approach
The achievement of the quadratic programing approach (QP), which is described in the
following is comparable to the NLP described above. Based on a discretised trajectory
rT CP (t) a jerk-minimal trajectory rMCS(t) is sought within the given geometric and dyn-
amic constraints with respect to the inertia of the axes of the machine tool. First of all
the proposed linearisation of the NLP is pointed out. Afterwards the description of the
dynamic constraints of the different axes as well as the objective function for the quadratic
programing approach are presented.
5.5 Quadratic programing approach 77
0 50 100 150 200 250 300 350 400 450
−2
−1
0
1
2
TCP-path [mm]
Acceleration
[104
mm
/s2 ]
XMCS
˜XMCS
ZMCS
˜ZMCS
Figure 5.7: Resulting acceleration of the X-axis (red) and the Z-axis(blue) for both the
original rMCS (solid line) and the optimised trajectory rMCS (dashed line). The global
smoothing leads not only to a continuous acceleration but also to a reduced average accel-
eration for both the X and the Z-axis.
5.5.1 Linearisation
As shown in the previous example in the general case for the example of 5-axis laser cutting
a large orientation tolerance can be assumed. Although quasi-redundancy is available along
the whole trajectory, the main advantage can be gained by optimisation of trajectories with
large changes of the tool orientation along a short arc length of rT CP (t) and therefore large
compensation movements of the linear axes. With a programed tool orientation collinear to
the normal vector n to the sheet metal, these trajectories arise in areas of large curvatures
of the sheet metal, where the orientation tolerance must be reduced to ∆ϕ ≤ ±5◦ in order
to avoid collisions. Assuming a limitation of the tolerance of the rotational axes of ±5◦ this
offers an opportunity for a linearisation of the quasi-redundancy on the one hand. On the
other hand, a rotation around the tool-axis is not possible, which is advantageous for the
avoidance of collisions, but leads to a restriction of the solution space of the optimisation
algorithm for the exploitation of the quasi-redundancy.
Assuming that the orientation tolerance for the exploitation of the quasi-redundancy is
limited to a small angle δB respectively δC the ith value of the optimised trajectories B(t)respectively C(t) can be approximated as
Bi = Bi + δBi (5.23)
Ci = Ci + δCi (5.24)
78 5. Feed rate optimisation using quasi-redundant degrees of freedom
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.20
100
200
300∆t = 20%
Time [s]
Feedrate
[mm
/s]
Original geometry rT CP (t)Optimised geometry rT CP (t)
Figure 5.8: Resulting feed rate at the TCP. Due to the resolution of the quasi-redundancy
the velocity collapses along the tool-path vanish, which leads to a time saving of 20%.
with the ith given orientation Bi respectively Ci and
−5◦ ≤ δBi ≤ 5◦ (5.25)
−5◦ ≤ δCi ≤ 5◦ (5.26)
for i = 1, . . . , n.
Using the addition theorems according to Bronstein [44] with (5.23) and (5.24) it is
sin(Bi) = sin(Bi + δBi) = sin(Bi)cos(δBi) + cos(Bi)sin(δBi) (5.27)
sin(Ci) = sin(Ci + δCi) = sin(Ci)cos(δCi) + cos(Ci)sin(δCi) (5.28)
cos(Bi) = cos(Bi + δBi) = cos(Bi)cos(δBi)− sin(Bi)sin(δBi) (5.29)
cos(Ci) = cos(Ci + δCi) = cos(Ci)cos(δCi)− sin(Ci)sin(δCi). (5.30)
(5.27)-(5.30) in (3.6) leads to
rMCS,i,X = rT CP,i,X + ∆B((sin(Bi)cos(δBi) + cos(Bi)sin(δBi)
)
(cos(Ci)cos(δCi)− sin(Ci)sin(δCi)
))
+∆C(sin(Ci)cos(δCi) + cos(Ci)sin(δCi)
)(5.31)
rMCS,i,Y = rT CP,i,Y + ∆B((sin(Bi)cos(δBi) + cos(Bi)sin(δBi)
)
5.5 Quadratic programing approach 79
(sin(Ci)cos(δCi) + cos(Ci)sin(δCi)
))
+∆C(cos(Ci)cos(δCi)− sin(Ci)sin(δCi)
)(5.32)
rMCS,i,Z = rT CP,i,Z + ∆B((cos(Bi)cos(δBi)− sin(Bi)sin(δBi)
))(5.33)
Assuming that
cos(δBi) ≈ 1 (5.34)
cos(δCi) ≈ 1 (5.35)
sin(δBi) ≈ δBi (5.36)
sin(δCi) ≈ δCi (5.37)
sin(δBi)sin(δCi) ≈ 0 (5.38)
leads to
rMCS,i,X = rT CP,i,X + ∆Bsin(Bi)cos(Ci) + ∆Csin(Ci)
+ δBi
(∆Bcos(Bi)cos(Ci)
)
+ δCi
(∆Ccos(Ci)−∆Bsin(Bi)sin(Ci)
)(5.39)
rMCS,i,Y = rT CP,i,Y + ∆Bsin(Bi)sin(Ci)−∆Ccos(Ci)
+ δBi
(∆Bcos(Bi)sin(Ci)
)
+ δCi
(∆Csin(Ci) + ∆Bsin(Bi)cos(Ci)
)(5.40)
rMCS,i,Z = rT CP,i,Z + ∆Bcos(Bi)− δBi∆Bsin(Bi). (5.41)
Together with the offsets ∆B respectively ∆C (5.34)-(5.38) lead to an error of the resulting
trajectory rMCS(t) and their derivatives with respect to time t. Due to the fact that
admissible deviations of the tool orientation are directly limited by (5.25) and (5.26) the
fulfillment of the geometric constraints is not affected. Therefore during optimisation a
dynamic reserve must be ensured. For simplicity this is done in the following by scaling
of the time vector.
(5.39)-(5.41) are linear dependent on δB(t) respectively δC(t), so (3.6) is sufficiently ap-
proximated and can be attached to the linear equality constraints (5.5). With the state
80 5. Feed rate optimisation using quasi-redundant degrees of freedom
equations (5.3) and (5.4) and the given time vector t, both the velocity rMCS,i and the ac-
celeration rMCS,i can also be established as additional states during optimisation by linear
equality constraints.
5.5.2 Dynamic Constraints
Due to the additional state variables rMCS,i and rMCS,i with the physical limitations Φmax
and Φmin the limitation of the kth derivative with respect to time of the different axes at
the ith discretisation step can be incorporated according to Steinlin [79] by the normalised
linear constraints
dkrMCS,i
dtk/Φmax ≤ 1 Φmax > 0 (5.42)
dkrMCS,i
dtk/Φmin ≤ 1 Φmin < 0, (5.43)
which are attached to the inequality constraints (5.9). A jerk limitation is not consid-
ered, since within the optimisation the integral of the square of the jerk for every axis is
minimised using the objective function described in the following.
5.5.3 Objective function
With respect to Steinlin [79] the jerk...r
MCS,i is not defined by the state equations so the
jerk value for the objective function is determined by first order finite differences of the
acceleration values rMCS,i
...r
MCS,i =rMCS,i+1 − rMCS,i
hi
. (5.44)
With (5.44) (5.11) can be rewritten as
J = 12x
THx. (5.45)
Together with the linear constraints for the state equations, the linearised transformation,
the dynamic constraints and the boundaries this leads to a quadratic program with linear
constraints, which can be solved in the same way as the DGO shown in section 4.3.
5.5 Quadratic programing approach 81
5.5.4 Influence of the additional weights
The global task of the exploitation of quasi-redundancy is to reduce the dynamic error due
to the mechanical excitation of the machine tool caused by high changes of the actuator
forces. These are proportional to the jerk as well as the inertia of the axes of the machine
tool.
Both the nonlinear and the linearised optimisation approach described above obtain a
simultaneous solution for all axes of the machine tool. This leads to the opportunity of
a prioritisation of the different axes. Especially in the case of a machine tool with strong
differing inertias of the axes the finally resulting changes of the actuator forces can be
reduced by the prioritisation of the different axes.
Therefore in order to consider the inertias of the different axes the additional weights
νi are used in the linear combination of (5.11). Their influence during optimisation is
demonstrated by a basic test geometry, which consists of a linear positioning of the X,
Y and the C axis by 180mm respectively 180◦. The offset of the C axis ∆C, shown in
figure 3.2 is 163mm. This leads to the trajectory for rT CP (t) respectively rMCS(t), which
are shown in the figures 5.9 and 5.10.
For simplicity and because of the fact that the X respectively the Y axis of the machine
tool shown in figure 3.2 have the major inertias, only the influence of νx respectively νy
is regarded in the following. In order to demonstrate their influence the optimisation is
executed using a vector νi = {νX , νY , νZ , νB, νC} with the following three tuples
0 0.5 1 1.5 2 2.5 3 3.5 4−200
0
200
400
Time [s]
Position
[mm
,◦]
XMCS
Y MCS
ZMCS
BMCS
CMCS
Figure 5.9: Trajectory of the machine axes due to a linear positioning of 180mm of the
X and Y -axis combined with a linear positioning of the C-axis of 180◦
82 5. Feed rate optimisation using quasi-redundant degrees of freedom
0100
200300
−200−100
0100
200300
4000
100
200
Position X [mm]
Position Y [mm]
PositionZ
[mm
]rT CP
rMCS
Figure 5.10: Resulting trajectories for rT CP (t) and rMCS(t) due to the positioning of the
X, Y and the C axis described in figure 5.9
ν1 = {1, 1, 1, 1, 1} (5.46)
ν2 = {10, 1, 1, 1, 1} (5.47)
ν3 = {1, 10, 1, 1, 1} (5.48)
Figure 5.11 reveals, that the global optimisation of the tool orientation with a tolerance
range of ±5◦ leads to a deviation of the different solutions for rMCS(t) up to 25mm because
of the rearrangement of the actuator forces due to the trajectories of the rotational axes.
The general use case of a 5 axis laser cutting machine tool is the cutting of free-form sheet
metal with a usually high local curvature since it was moulded in a previous step. This
leads to a local large movement of the B and C axis along a short arc length and therefore
large compensation movements, so the orientation tolerance must be chosen very carefully.
Otherwise an optimisation leads to a collision of the machine tool with the sheet-metal.
Due to the fact that the euclidean length of the MCS-trajectory rMCS is changed during
optimisation for a given duration of the TCP-trajectory rT CP known from the virtual CNC
the velocity of the different axes also changes according to figure 5.12.
5.5 Quadratic programing approach 83
0 0.5 1 1.5 2 2.5 3 3.5 4−200
0
200
400
Time [s]
Position
[mm
,◦]
XMCS
XMCS,ν1
XMCS,ν2
XMCS,ν3
Y MCS
YMCS,ν1
YMCS,ν2
YMCS,ν3
CMCS
CMCS,ν1
CMCS,ν2
CMCS,ν3
Figure 5.11: Resulting position of the machine axes due to the optimisation. Depending
on the tuple of additional weights νi according to (5.46)-(5.48) the exploitation of the
quasi-redundancy leads to a deviation of the position up to 25mm in the machine coordinate
system.
0 0.5 1 1.5 2 2.5 3 3.5 4−100
0
100
200
300
Time [s]
Velocity
[mm
/s,◦
/s]
XMCS
XMCS,ν1
XMCS,ν2
XMCS,ν3
Y MCS
YMCS,ν1
YMCS,ν2
YMCS,ν3
CMCS
CMCS,ν1
CMCS,ν2
CMCS,ν3
Figure 5.12: Resulting velocity of the machine axes due to the optimisation with the tuple
of additional weights νi according to (5.46)-(5.48).
84 5. Feed rate optimisation using quasi-redundant degrees of freedom
Figure 5.13 respectively 5.14 illustrate the intended rearrangement of the actuator accel-
eration and their derivative with respect to time. Obviously an optimisation with ν1 leads
to a first reduction of the maximum jerk of all axes. As required for ν2 respectively ν3
both the maximum acceleration and the jerk of the X and the Y axis are rearranged.
This leads to decreased maximum acceleration respectively jerk for the X axis for ν2 and
a decreased maximum acceleration respectively jerk for the Y axis for ν3
In the remainder of this chapter ν is chosen proportional to the axes inertias known from
the acceptance test record of the machine tool. Since νi is included in the objective function
(5.11) not the absolute value of the inertias but the relationship between the different
inertias is important for the optimisation. This leads to νi = {0.3, 0.1, 0.07, 0.01, 0.01}.
5.6 Application Example
In the following section the exploitation of the quasi-redundancy is demonstrated for the
example of planar geometry in the XY plane of the workspace using an orientation toler-
ance of ±5◦. While the previous example only consists of a straight positioning movement
the geometry shown in figure 5.15 has sharp corners. As shown in figure 5.16 these are
optimised in a previous step using the DGO, which is described in 4.3. The time-discrete
0 0.5 1 1.5 2 2.5 3 3.5 4
−200
0
200
400
Time [s]
Acceleration
[mm
/s2 ,
◦/s
2 ]
XMCS
XMCS,ν1
XMCS,ν2
XMCS,ν3
Y MCS
YMCS,ν1
YMCS,ν2
YMCS,ν3
CMCS
CMCS,ν1
CMCS,ν2
CMCS,ν3
Figure 5.13: Resulting acceleration of the machine axes due to the optimisation with the
tuple of additional weights νi according to (5.46)-(5.48).
5.6 Application Example 85
0 0.5 1 1.5 2 2.5 3 3.5 4−2,000
0
2,000
4,000
6,000
Time [s]
Jerk
[mm
/s3 ,
◦/s
3 ]
XMCS
XMCS,ν1
XMCS,ν2
XMCS,ν3
Y MCS
YMCS,ν1
YMCS,ν2
YMCS,ν3
CMCS
CMCS,ν1
CMCS,ν2
CMCS,ν3
Figure 5.14: Resulting jerk of the machine axes due to the optimisation with the tuple
of additional weights νi according to (5.46)-(5.48).
feed rate profile is obtained using the virtual CNC. The trajectories of the rotational axes
are optimised using the quadratic programing approach which is described in section 5.5.
The optimisation leads to the trajectories for the B respectively C axis according to
figure 5.17. Obviously the given orientation tolerance is completely exploited for the B-
axis. The orientation tolerance of the C-axis is not exploited, since in this example this
axis is primary used for an infeed movement, which leads to quasi-redundancy between
the B and the X-axis.
Figure 5.18 shows the position of the X, Y and Z axis for both the original and the
optimised geometry. Except for the compensation movements of the X-axis the Y and
the Z axis are hardly affected by the optimisation since for this example the initial angle
of the C axis leads to a configuration of the kinematic, which primarily allows for a quasi-
redundancy in the X-direction as mentioned above.
The resulting trajectories rMCS(t) and rMCS(t) of the original and the optimised geometry
are shown in figure 5.19.
Regarding figure 5.20-5.22 the maximum velocity, acceleration as well as the jerk of the X-
axis are significantly reduced by the exploitation of the quasi-redundancy. As mentioned
before the Y -axis is not affected by the optimisation. The compensation movement due
to the trajectory of the B and C-axis shown in figure 5.17 is performed by the Z-axis.
86 5. Feed rate optimisation using quasi-redundant degrees of freedom
−20 −15 −10 −5 0 5 10 15 20 25 30 35 400
5
10
15
20
25
30
35
40
45
Position X [mm]
PositionY
[mm
]rT CP
rT CP
Figure 5.15: Planar geometry in the XY -plane, which is optimised in a previous step
using the DGO. A magnification of the right corner is shown in figure 5.16.
In order to compare the resulting mechanical excitation the spatial deviation between
the internal measurement system and rMCS(t) respectively rMCS(t) is simulated with the
machine model, which is introduced in section 4.4.2 as shown in figure 5.23. Taking into
mind the significant reduction of the jerk of the machine tool axes due to the optimisation,
the reduction of the spatial deviation shown in figure 5.23 is comparatively small. An
evaluation of the deviation at the TCP would be more sufficient since the compliance
of the whole machine structure is considered during simulation. Because of the strong
differing dynamics of the machine tool axes the contouring errors of the different axes
strongly differ, which leads to a significant deviation at the TCP for the machine model.
For the synchronisation of the contouring error of the linear axes circularity test can be
used. With the help of these tests the contouring error can also be reduced for higher
dynamics of the machine tool axes. For the synchronisation between rotary and linear
axes a suitable method such as the circularity test is not available, so an optimal setting
of the control parameters of the axes is not directly available. Further studies should be
5.6 Application Example 87
26 28 30 32 34
26
28
30
32
34
Position X [mm]
PositionY
[mm
]
rT CP
rT CP
Figure 5.16: Magnification of the right corner of figure 5.15 in order to show the opti-
misation of r(s).
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
−4
−2
0
2
4
t [s]
Angle
[◦ ] BMCS
BMCS
CMCS
CMCS
Figure 5.17: Resulting trajectory due to the optimisation for the B and C axis with
respect to time.
88 5. Feed rate optimisation using quasi-redundant degrees of freedom
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7−200
−100
0
100
200
t [s]
Position
[mm
] XMCS
XMCS
Y MCS
YMCS
ZMCS
ZMCS
Figure 5.18: Resulting trajectory rMCS(t) for the X, Y and Z for both the original and
the optimised geometry.
focussed on these methods.
5.7 Discussion
For the exploitation of the quasi-redundancy two optimisation approaches are described
and exemplified above. The nonlinear optimisation approach, which is presented in sec-
tion 5.4 allows for an optimisation in the general case of a large orientation tolerance. In
order not to suffer from the extensive evaluation of both the gradient and the Hessian of
the nonlinear optimisation approach a linearisation for a small orientation tolerance is per-
formed, which leads to the quadratic programing approach described in section 5.5. Just
as the DGO, which is described in section 4.3 the arising quadratic optimisation problem is
convex and therefore allows for a reformulation as a second order cone program according
to Boyd [14], which offers the capability of a real time application.
The limitation of the tolerance span and therefore the choice of one of the described
optimisation approaches must be figured out in response to the regarded trajectory. So
while in the general case in every point along the tool path the whole span of the quasi-
redundant degrees of freedom are available, the quadratic programing approach in the
worst case only allows for the optimisation in the direction of one axis as shown in the
application example. A basic opportunity to overcome this disadvantage is a preprocessing
of the initial angles of the B- and the C- axis within the given constraints in a previous
step.
5.7 Discussion 89
−20 −15 −10 −5 0 5 10 15 20 25 30 35 40
−160
−155
−150
−145
−140
−135
−130
−125
−120
−115
X [mm]
Y[m
m]
rMCS
rMCS
Figure 5.19: rMCS(t) of the original and the optimised geometry. Due to the primarily
optimised trajectory of the X-axis the span of the geometry in the Y -direction is hardly
affected.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7
−200
−100
0
100
200
t [s]
Velocity
[mm
/s] XMCS
˜XMCS
Y MCS
˜Y MCS
ZMCS
˜ZMCS
Figure 5.20: Resulting velocity of the X-, Y - and Z-axis.
90 5. Feed rate optimisation using quasi-redundant degrees of freedom
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7
−5,000
0
5,000
t [s]
Acceleration[m
m/s
2 ] XMCS
˜XMCS
Y MCS
˜Y MCS
ZMCS
˜ZMCS
Figure 5.21: Resulting acceleration of the X-, Y - and Z-axis.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7
−5
0
5
10
t [s]
Jerk[1
05m
m/s
3 ]
...XMCS
...XMCS...Y MCS
...Y MCS...Z MCS
...Z MCS
Figure 5.22: Resulting jerk of the X-, Y - and Z-axis.
5.7 Discussion 91
0 20 40 60 80 100 120 1400
10
20
30
40
50
Path [mm]
Deviation
[µm
]Original geometry rMCS(t)Optimised geometry rMCS(t)
Figure 5.23: Spatial deviation between rMCS(t) respectively rMCS(t) and the internal mea-
surement system.
92 6. Tolerance model
Chapter 6
Tolerance model
In the following a tolerance model for the derivation of the position dependent available
smoothing tolerance is presented. The motivation for the investigation of a tolerance
model is explained in section 6.1. The general procedure for the calculation of the avail-
able smoothing tolerance based on geometric uncertainties of a machine tool is shown
in section 6.2. At the examples of 3- and 5-axis machine tools the computation of the
geometrical uncertainties are demonstrated in the sections 6.3 and 6.4.
6.1 Motivation
The smoothing of the tool path of state of the art NC controllers is usually performed
assuming a constant value for the smoothing tolerance. According to Sellmann et al. [75]
this value has to be smaller than the final tolerance value, which is obtained for the finished
part because of additional errors during the manufacturing process. These errors consist of
geometric, dynamic and thermal errors as well as the effect of follow-up errors of the axis
drives pursuant to Andolfatto et al. [4]. All these errors depend on different parameters,
which can vary during machining. In order to have only one tolerance value, the smoothing
algorithm has to deal with the worst case for the above described dependency for the whole
workspace. As a consequence of that the resulting value for the smoothing tolerance is
very small in order to guarantee the requested accuracy. This leads to higher curvatures of
the tool path and finally to a higher mechanical excitation of the machine tool for a given
path velocity. Figure 6.1 illustrates the effect of different path tolerances on the resulting
curvature for corners having an angular range between 0 (straight) and 120 degrees.
Obviously, for a given corner angle a smaller smoothing tolerance ∆n increases the resulting
curvature and vice versa. Assuming that the forces perpendicular to the tool path and
6.1 Motivation 93
10 20 30 40 50 60 70 80 90 100 110 120
5
10
15
20
25
30
1
2
5
1020
50
100200
Angle [◦]
∆n
[µm
]
0
20
40
60
80
100
120
140
160
180
200
Max
imum
curvature
[1/m
m]
Figure 6.1: Contour plot of the resulting curvatures for a smoothed corner depending
on the smoothing tolerance and the angular range of the corner. The colorbar denotes the
maximum curvature of the smoothing function.
therefore the resulting loads on the machine tool are proportional to the curvature of the
tool path a maximum exploitation of the smoothing tolerance is desirable.
Geometric errors, which are defined in ISO230-1 [46] are the biggest non-thermal sources
of inaccuracy, so the tolerance model, which is described below predicts the position de-
pendent smoothing tolerance for a given workpiece. Based on the geometric errors the
resulting geometric uncertainties in the sensitive direction of the tool path are calculated
in a first step. In a second step the smoothing tolerance is suitably reduced.
Thermal and dynamic errors as well as follow-up errors are not regarded since they occur
during machining, so a prediction for the smoothing of the tool path is not possible.
They are considered by an additional reduction of the available smoothing tolerance by a
constant value.
94 6. Tolerance model
6.2 General procedure
In the following section the general procedure for the derivation of the position dependent
smoothing tolerance is presented. Definitions used in the course of the remaining chapter
are pointed out in section 6.2.1. The computation of the geometric uncertainties based
on the known geometric errors is shown in section 6.2.2. Finally the overall method is
described in section 6.2.3.
6.2.1 Definitions
For the derivation of the available smoothing tolerance different tolerance values have to
be defined.
The tolerance of the workpiece, which is known from the drawing, in the following denoted
as ∆dwg is shown in figure 6.2.
Assuming a machine tool without any machining errors and a rectangular distribution of
the occurring deviations, the NC tolerance in the following denoted as ∆NC for a given
∆dwg, is calculated as follows.
According to ISO230-9 [47] and figure 6.2 the standard uncertainty udwg due to deviations
up to ∆dwg is defined as
udwg = (L+ ∆dwg)− (L−∆dwg)2√
3= 2∆dwg√
12. (6.1)
L−
∆dw
g
L+
∆dw
g
Figure 6.2: ∆dwg known from the technical drawing.
6.2 General procedure 95
∆NC denotes the possible range of deviations, which lead to a combined uncertainty uNC
comparable to udwg. The standard uncertainties u1,2 due to deviations up to ∆NC are
defined as
u1 = u2 = ∆NC√12
(6.2)
According to ISO 230-9 [47] the combined standard uncertainty uc resulting from u1,2 is
defined as
uNC =√u2
1 + u22 =√
2u1,2 (6.3)
Equalising of (6.1) and (6.3) leads to
∆NC =√
2∆dwg (6.4)
The smoothing tolerance in the following denoted as ∆smt is the NC tolerance reduced by
the uncertainties Ui as a result of the machining errors due to
• thermal deviation
• dynamic deviation
• process deviation
• geometric deviation
as illustrated in figure 6.3
6.2.2 Calculation of geometric uncertainties
The uncertainty of measurement data in general is defined as the distribution of values
attributed to a measured quantity.
In the case of machine tools according to ISO230-9 [47] the uncertainty is defined as follows:
∆NC
∆smt
U U UU
Figure 6.3: Available smoothing tolerance ∆smt which is calculated by the reduction of
∆NC by the uncertainties Ui due to machining errors.
96 6. Tolerance model
The individual contributors to the measurement uncertainty are identified and expressed
as standard uncertainties ui. The combined standard uncertainty uc is calculated as
uc =√u2
r +∑
u2i (6.5)
with
uc: combined standard uncertainty
ur: sum of strongly positive correlated contributors (6.6)
ui: standard uncertainty of i uncorrelated contributor
ur =∑
uj (6.6)
where uj is the standard uncertainty of j strongly positive correlated contributors.
The measurement uncertainty U is calculated by
U = cv · uc (6.7)
with
U : measurement uncertainty
cv: coverage factor. Usually cv = 2, which defines an interval having a probability of
approximately 95%. For example cv = 3 defines an interval having a probability
greater than 99%.
uc: combined standard uncertainty
A standard uncertainty ui is obtained by statistical analysis of experimental data or by
other means, such as knowledge, experience and scientific guess. If an estimation gives a
possible range of ±a or (a+−a−) of a contributor and assuming a rectangular distribution
the standard uncertainty ui is given by
ui = a+ − a−2√
3(6.8)
with
ui: standard uncertainty
6.2 General procedure 97
a+: the upper limit of the rectangular distribution
a−: the lower limit of the rectangular distribution
For the calculation of the geometric uncertainties the component errors and the location
errors pursuant to ISO230-1 [46] are used. All these contributors are uncorrelated so the
ur in (6.5) vanishes.
The range for the evaluation of the uncertainties is given by measurement data like the
acceptance test of the machine tool. For estimation of the different contributors it should
be considered if the regarded geometric error depends on the position. In the case of a
position dependent error, which is shown in figure 6.4, the geometric error can be defined
as U = U0 + UL0LL0
. For position independent errors, which are shown in figure 6.5, the
geometric error should be defined as U = Utotal.
The calculation of the effective uncertainty depending on the kinematics of the machine
tool and the geometry of the workpiece is presented in the following section. All calcu-
lations are based on the assumption, that the uncertainty of a point in the workspace
remains nearly constant within the tolerance band. This is valid for small tolerances.
6.2.3 Overall description of the method
Pursuant to figure 6.6 the workflow for the calculation of the available smoothing tolerance
∆smt is as described below.
Evaluation of the axe wise movement: Based on ISO230-1 [46] the geometric errors
of a machine tool consist of the axe-wise component errors as well as the location errors
between the different axes. A composition of all these contributors leads to a resulting
U0
U(EXX)
L
U
X − stroke
Figure 6.4: Position dependent error.
98 6. Tolerance model
U0
U(EXX)
L
Utotal
X − stroke
Figure 6.5: Position independent error.
NC-Code
rMCS(s)
UMCS(s) measurement
dataTransformation
MCS ⇔ TCP
UT CP (s)
ψ(s)
Uueff (s)
∆smt(s) ∆NC∆dwg
process errors
thermal errors
dynamic errors
Evaluation
of the axe wise
movment
Calculation
of the effective
geometric uncertainties
Calculation
of the available
smoothing tolerance
Figure 6.6: Workflow for the calculation of the available smoothing tolerance.
6.3 Geometric uncertainties of a 3-axis machine tool 99
geometric error at the TCP for a given geometry. Based on the span of the resulting error
at the TCP the geometric uncertainty can be evaluated as described above. Since the
resulting geometric errors at the TCP are caused by the geometric errors of the machine
tool axes in a first step based on the programmed geometry the trajectory rMCS(s) is
evaluated.
Calculation of the effective geometric uncertainties: Based on rMCS(s) for the
manufacturing of a given workpiece for every s inside of the closed interval I := [a, b]an uncertainty UT CP = {UX , UY , UZ} is evaluated. Depending on the kinematic of the
machine tool the resulting uncertainties at the tool center point UT CP are calculated using
the transformation rMCS(s)⇔ rT CP (s).
The effective uncertainty Ueff is calculated by projection of UT CP in the sensitive direction
of rT CP . In the case of laser cutting the sensitive direction is congruent to the normal
direction ev(s), which is known from the local psi frame ψ(s).
Calculation of the available smoothing tolerance: The following 3 steps finally
lead to the available smoothing tolerance:
1. Calculation of ∆NC based on the technical drawing and ∆dwg according to (6.4).
2. Calculation of the effective uncertainties based on the geometric errors according to
section 6.2.2.
3. Reduction of ∆NC by constant values for
• thermal deviation
• dynamic deviation
• process deviation
and position dependent values for the effective geometric uncertainties.
6.3 Geometric uncertainties of a 3-axis machine tool
In the following the calculation of the geometric uncertainties of a 3-axis machine tool is
demonstrated and exemplified based on Sellmann et al. [75].
100 6. Tolerance model
6.3.1 Calculation
As defined and illustrated in ISO 230-1 [46] there are 6 component errors defined for each
linear axis listed for the example of a linear X-axis:
EXX: positional deviation
EYX: linear deviation
EZX: linear deviation
EAX: roll deviation
EBX: pitch deviation
ECX: yaw deviation
For 3 linear axes the 18 component errors and the location errors
C0Y : out of squareness between X and Y
B0Z: out of squareness between X and Z
A0Z: out of squareness between Y and Z
yield to 21 geometric errors for a 3 axis machine. All these error contributors are merged
to the axis wise geometric standard uncertainties UX , UY and UZ . For every position of
the trajectory the geometric uncertainties can be calculated according to
UX = 2√12√EXX2
T CP + EXY 2T CP + EXZ2
T CP + ∆Y 2 · C0Y 2 + ∆Z2 ·B0Z2 (6.9)
UY = 2√12√EYX2
T CP + EY Y 2T CP + EY Z2
T CP + ∆Z2 · A0Z2 (6.10)
UZ = 2√12√EZX2
T CP + EZY 2T CP + EYX2
T CP (6.11)
The contributors subscripted with TCP are the resulting deviation ranges at the TCP,
which are also indicated in the acceptance protocol of the machine tool.
6.4 Geometric uncertainties of a 5-Axis machine tool 101
6.3.2 Example
For the example of 2D laser cutting figure 6.7 shows the effective uncertainty in lateral
direction for a 2D work piece. In this case, for a quite small work piece and when only two
axes are involved in the movement, the resulting uncertainties only slightly differ along the
path and are mostly influenced by the contributors due to the squareness error between
the X and the Y axis.
6.4 Geometric uncertainties of a 5-Axis machine tool
Based on Sellmann et al. [75] the calculation of the geometric uncertainties of a 5-axis
machine tool is demonstrated in the following.
6.4.1 Calculation
Regarding a rotational axis there are 6 component errors defined, listed for the example
of a rotational C-axis with respect to ISO230-1 [46].
895 900 905 910 915 920 925 930 935 940
905
910
915
920
925
930
935
Position X [mm]
Pos
itio
nY
[mm
]
30
30.01
30.01
30.02
30.02
30.03
30.03
30.04
30.04
30.05
30.05
Eff
ecti
veunce
rtai
nty
[µm
]
Figure 6.7: Effective uncertainty in lateral direction for a 2D laser cutting work piece.
102 6. Tolerance model
EXC: radial error motion
EY C: radial error motion
EZC: axial error motion
EAC: tilt error motion
EBC: tilt error motion
ECC: positional deviation
Together with the geometric errors of the 3 linear axes described in section 6.3, the com-
ponent errors for 2 rotational axes and the additional location errors lead to the geometric
uncertainties for a 5 axis machine tool. Regarding the kinematics shown in figure 3.2
dominant contributors for the calculation of the effective uncertainties are the location
errors X0C, Y 0C, X0B and Z0B as well as the component errors ECC and EBB. The
remaining contributors are assumed to be negligible.
Regarding the positional deviation of the C-axis ECC with the span sECC and the radius
rC the resulting sinusoidal contributors in the X and Y direction of the TCP are
EXCT CP (C) = −(ECC(C) + sECC
2
)· sin(C) · rC (6.12)
EY CT CP (C) =(ECC(C) + sECC
2
)· cos(C) · rC . (6.13)
For the calculation of the effective uncertainty at the TCP due to the positional error
ECC only the span sECC of the C axis during the movement Cpart must be taken into
account. This leads to
UX,ECC = 2rC√12
(max
((ECC (Cpart) + sECC
2
)· sin (Cpart)
)
−min((ECC (Cpart)−
sECC
2
)sin (Cpart)
))(6.14)
UY,ECC = 2rC√12
(max
((ECC (Cpart) + sECC
2
)· cos (Cpart)
)
−min((ECC (Cpart)−
sECC
2
)cos (Cpart)
)). (6.15)
Alternatively the whole span sA of the C axis during the movement can be taken into
account, which leads to
6.4 Geometric uncertainties of a 5-Axis machine tool 103
UX,ECC = 2rC√12sA (6.16)
UY,ECC = 2rC√12sA. (6.17)
As a consequence of that the contributors of the effective uncertainty at the TCP due to
the positional error strongly increase for small angles.
The location errors X0C and Y 0C mentioned above are described in polar coordinates by
a radius rC and an angle ϕ0 according to figure 6.8. Together with the programmed angle
Cpart this leads to the resulting deviation at the TCP in the X and Y direction due to
X0C and Y 0C
EX(X0C,Y 0C) = rC · cos(ϕ0 + Cpart) (6.18)
EY(X0C,Y 0C) = rC · sin(ϕ0 + Cpart) (6.19)
Comparable to the evaluation of UX,ECC and UY,ECC mentioned above for the calculation
of the effective uncertainty due to the location errors X0C and Y 0C only the span of the
C axis during the movement must be taken into account. For a given angle C this leads
to
UX,(X0C,Y 0C) = 2rc√12
(max (cos (ϕ0 + Cpart))−min (cos (ϕ0 + Cpart))) (6.20)
UY,(X0C,Y 0C) = 2rc√12
(max (sin (ϕ0 + Cpart))−min (sin (ϕ0 + Cpart))) (6.21)
Regarding the B axis of the kinematics shown in figure 3.2 the current position of the C
axis must be taken into account for the calculation of the effective uncertainty. For the
positional error EBB this leads to
EXBT CP (B) = −(EBB (B) + sEBB
2
)· sin (B) · sin (C) · rB (6.22)
EY BT CP (B) = −(EBB (B) + sEBB
2
)· sin (B) · cos (C) · rB (6.23)
EZBT CP (B) = −(EBB (B) + sEBB
2
)· cos (B) · rB (6.24)
As already mentioned above for the calculation of the effective uncertainty only the span
of the regarded axis during the movement must be taken into account. For the effective
uncertainty of the B axis due to the positional error EBB this leads to
104 6. Tolerance model
UX,EBB = 2rB√12
(max
((EBB (Bpart) + sEBB
2
)· sin (Bpart)
)
−min((EBB (Bpart)−
sEBB
2
)· sin (Bpart)
))· sin (Cpart) (6.25)
UY,EBB = 2rB√12
(max
((EBB (Bpart) + sEBB
2
)· sin (Bpart)
)
−min((EBB (Bpart)−
sEBB
2
)· sin (Bpart)
))· cos (Cpart) (6.26)
UZ,EBB = 2rB√12
(max
((EBB (Bpart) + sEBB
2
)· cos (Bpart)
)
−min((EBB (Bpart)−
sEBB
2
)· cos (Bpart)
))(6.27)
Comparable to the location errors of the C axis the location errors X0B and Z0B are
considered using an initial angle β0 and a radius rB according to figure 6.8. Together with
the programmed angle ϕB this leads to
EX(X0B,Z0B) = rB · cos (β0 +Bpart) · sin (C) (6.28)
EY(X0B,Z0B) = rB · sin (β0 +Bpart) · cos (C) (6.29)
EZ(X0B,Z0B) = rB · sin (β0 +Bpart) (6.30)
for the resulting deviation at the TCP. Taking into account the span of the B axis during
the movement this leads to
UX,(X0B,Z0B) = 2rB√12
(max (cos (β0 +Bpart) · sin (Cpart))
−min (cos (β0 +Bpart) · sin (C)))
(6.31)
UY,(X0B,Z0B) = 2rB√12
(max (sin (β0 +Bpart) · cos (Cpart))
−min (sin (β0 +Bpart) · cos (C)))
(6.32)
UZ,(X0B,Z0B) = 2rB√12
(max (sin (β0 +Bpart))
−min (sin (β0 +Bpart)))
(6.33)
6.4 Geometric uncertainties of a 5-Axis machine tool 105
for the resulting uncertainties at the TCP.
Together with the component and location errors of the linear axes (6.9)-(6.11) the re-
sulting uncertainties at the TCP due to the movement of the X, Y , Z, B and C axis are
evaluated. This leads to
UX = 2√12(EXX2
T CP + EXY 2T CP + EXZ2
T CP + ∆Y 2 · C0Y 2 + ∆Z2 ·B0Z2
+ EXC2T CP + EXB2
T CP + EX2(X0C,Y 0C) + EX2
(X0B,Z0B)
)1/2(6.34)
UY = 2√12(EYX2
T CP + EY Y 2T CP + EY Z2
T CP + ∆Z2 · A0Z2
+ EY C2T CP + EY B2
T CP + EY 2(X0C,Y 0C) + EY 2
(X0B,Z0B)
)1/2(6.35)
UZ = 2√12(EZX2
T CP + EZY 2T CP + EYX2
T CP
+ EZB2T CP + EZ2
(X0B,Z0B)
)1/2(6.36)
6.4.2 Example
For the example of laser cutting figure 6.9 shows a typical 3D-movement including changes
of the orientation of the tool along the TCP path, which leads to large compensation
movements of the linear axes.
Due to the increased number of involved axes, but also caused by the large compensating
movements the uncertainties strongly increase. The deviations in X and Y -direction are
shown in figure 6.10-6.11.
The deviation in Z-direction has no influence on the effective uncertainty in lateral dir-
ection and is not regarded in this example. In figure 6.10-6.11 EXCT CP and EY CT CP are
contributors caused by a positional error ECC. EX(X0C, Y 0C) and EY (X0C, Y 0C) are
contributors due to the location errors X0C and Y 0C of the involved C-axis. Because of
X
Y
X0CY 0C
rC
ϕ0
X
Z
X0BZ0B
rB
β0
Figure 6.8: Description of the location errors of the C and the B axis.
106 6. Tolerance model
900950
1,0001,050
1,1001,150
700
800
900
1,000500
550
600
650
700
750
TCP Start/End Position
MCS Start/End Position
Position X [mm]Position Y [mm]
PositionZ
[mm
]
rT CP
rMCS
Figure 6.9: 5-Axis movement shown for 5-axis laser cutting.
0 20 40 60 80 100 120 140 160−40
−20
0
20
40
TCP-path [mm]
Deviation
[µm
]
X-direction
EXXEXYEXZC0YB0Z
EXCT CP
EX(X0C,Y 0C)
Ux
Figure 6.10: TCP-deviations in X-direction along the TCP path of figure 6.9
6.4 Geometric uncertainties of a 5-Axis machine tool 107
0 20 40 60 80 100 120 140 160−40
−20
0
20
40
TCP-path [mm]
Deviation
[µm
]Y-direction
EYXEY YEY ZA0Z
EY CT CP
EY(X0C,Y 0C)
Uy
Figure 6.11: TCP-deviations in Y-direction along the TCP path of figure 6.9
the large distance between the TCP and the rotation center of these axes the resulting
TCP uncertainties due to these contributors are dominant.
890 900 910 920 930 940 950 960 970 980 990900
910
920
930
940
950
960
970
Position X [mm]
Pos
itio
nY
[mm
]
30
31
32
33
34
35
36
37
Eff
ecti
veunce
rtai
nty
[µm
]
Figure 6.12: Effective TCP-uncertainties for the 5-axis movement from figure 6.9.
108 7. Conclusion and Outlook
Chapter 7
Conclusion and Outlook
This thesis proposes approaches for the solution of two basic problems in trajectory genera-
tion for machine tools. First, a method for geometry optimisation is presented. Secondly, a
method for the exploitation of quasi-redundancy within the given tolerances is introduced.
7.1 Geometry optimisation for machine tools
Chapter 4 showed a quadratic programing approach for the discrete geometry optimisation
(DGO). Within this approach both the geometry and the admissible deviations are discre-
tised in a first step. The objective function minimises the weighted sum of the parametric
derivatives of the different axes while ensuring the geometric constraints and boundaries,
which are given by the manufacturing tolerances. The optimised trajectories are described
by B-Splines and because of the convex problem formulation the optimisation succeeds for
all given optimisation cases.
Contrary to state of the art methods for geometry optimisation the method described above
allows for a point wise limitation of the admissible deviation between the programmed tra-
jectory and the smoothing function. Therefore the tolerance model, which was introduced
in chapter 6 can be incorporated in order to account for the effective geometric uncer-
tainties along the programmed tool path. While state of the art algorithms for geometry
optimisation only minimise geometric parameters like the curvature respectively the curve
rate, the DGO directly minimises parametric derivatives of the assumed B-Spline. These
optimised B-Splines are converted into NC-Code, which is transfered to the NC. The time
discrete feed rate profile is then evaluated by the look ahead inside of the open-loop con-
troller using the optimised parametric derivatives. Based on application examples it was
shown, that this method not only leads to a decrease of the mechanical excitation but also
7.2 Feed rate optimisation using quasi-redundant degrees of freedom 109
to an increase of the feed rate and thus to an increase of the machining productivity.
Regarding the data-flow during machining, which is shown in figure 1.1 the steps from
the design to the set points finally lead to a relative movement between the tool and the
workpiece. These steps are performed subsequently due to the fact that both CAD and
CAM-tools as well as the CNC are independent investigations. State of the art CAM
tools are able to work with NURBS surfaces. These are converted into NC-Code, which in
most cases consists of straight lines. The arising challenge of the smoothing of the given
NC-data, which has to be accomplished by the open-loop controller can be prevented by
a reasonable combination of the CAD and the CAM tool. Approaches in this field are
shown by Lartigue et al. [51] and Farouki et al. [26].
Due to the real time requirement of state of the art open loop controllers the time discrete
feed rate profiles are evaluated subsequently to the geometry optimisation. Usually these
trajectories are not time-optimal in the sense of ”bang-bang”, which means that at each
time-step at least one limitation is at its limit. Therefore further studies should be focused
on a combined optimisation of the feed rate and the geometry, which would further increase
the machining productivity. A next possible step could be the combination of the CAD/-
CAM tool and the set-point generation. This would have the advantage that the complete
data flow during manufacturing mentioned above can be performed and controlled in only
one step. Furthermore the mentioned subsequent steps are based on heuristics.
A combination of all these steps offers the opportunity of an optimisation of the machining
productivity in the sense of a time optimal solution without any heuristics.
7.2 Feed rate optimisation using quasi-redundant de-
grees of freedom
In chapter 5 a method for the exploitation of the quasi-redundancy was introduced. First
of all it was shown, that for a machine tool, which consists of both rotational- and linear
axes within the given orientation tolerance there is no bijective mapping between the
trajectory at the TCP and the trajectory of the different axes. Depending on the regarded
manufacturing process respectively the given manufacturing tolerances this leads to certain
additional degrees of freedom. For a 5-axis laser cutting machine tool it was shown that
there are two additional respectively quasi-redundant degrees of freedom within the given
manufacturing tolerances, which are subject of an optimisation problem.
Assuming that the mechanical excitation of a machine tool is mainly affected by the rate
of force of the different axes, which is proportional to the jerk, the objective function of the
110 7. Conclusion and Outlook
optimisation problem consists of the weighted sum of the jerk of the different axes, which
are involved in the trajectory in response to the inner degrees of freedom. The weights are
chosen proportional to the inertia of the different axes. Dynamic- and geometric constraints
are incorporated by additional constraints and boundaries. With this approach for a given
time discrete trajectory at the TCP jerk minimal trajectories for the different axes are
estimated. Contrary to state of the art trajectory optimisation algorithms in the field of
machine tools within this optimisation approach both the kinematic of the machine tool
and also the inertias of the different axes are taken into account.
Due to the fact that both the gradient and the Hessian of the nonlinear objective function
are given to the solver the optimisation succeeds for most but not for all the given optimi-
sation problems. Because of this and due to the use case of an orientation tolerance of up
to 5◦ a linearisation of the optimisation problem described above is obtained, which leads
to a quadratic programming problem.
For the example of two geometries it was shown that the optimisation described above
leads not only to a decreased jerk of the different axes but also to a rearrangement of
the maximum jerk. In other words: ”The more the inertia of the axis the less the jerk”.
This was achieved by the additional weights described above. By the use of a rigid body
model it was shown that the mechanical excitation of the machine tool and finally path
disturbances could be reduced.
Within the method described above for a given spatial trajectory at the TCP a jerk minimal
trajectory for the machine tool axes is evaluated. To improve this approach further studies
could be focused on a more general approach including a time optimal trajectory at the
TCP and also jerk minimal optimisation of the trajectories of the machine tool axes. This
approach is constrained by both the axes limits and the geometric constraints given by the
manufacturing process. Because all the axes have to be considered simultaneously the size
of the optimisation problem would drastically increase and would take more computational
power.
The method for the exploitation of quasi-redundancy described above is shown for the
example of 5-axis laser cutting. In this case no additional forces induced by the manu-
facturing process need to be regarded during optimisation. Therefore in further studies
the inclusion of these forces should be taken into account, which would lead to a more
general problem formulation, which could be used for the feed rate optimisation in the
field of flank- and end-milling.
The objective function, which is minimised during optimisation is based on the heuris-
tic that a high change of the actuator force respectively the jerk leads to a mechanical
excitation of the machine tool and therefore a dynamic error respectively a decreased ac-
7.2 Feed rate optimisation using quasi-redundant degrees of freedom 111
curacy. Knowing that due to a jerk limitation the productivity decreases further studies
should be focused on the improvement of the limitation during the set point generation.
State of the art methods for set point generation maximise the feed rate respectively min-
imise the machining time considering dynamic limitations like the maximum speed, axes
acceleration as well as the maximum jerk. The dynamic limitations during set-point gen-
eration are given in order to ensure a reliable process and a specified accuracy. Due to
the limited computational power neither a sufficient process-model nor a dynamic machine
model are taken into account during set point generation. The limitations are chosen based
on the heuristics described above. Therefore the investigation of reliable models should be
focused in further studies in order not to suffer from the heuristics described above.
112 A. Parametric study
Appendix A
Parametric study
As mentioned in section 4.3.5 due to the fact that the discrete geometry optimisation is
based on the heuristics of a minimisation of the weighted sum of the parametric derivatives
of a smoothing function r(s) the weighting factors ηi need to be figured out. As already
mentioned in section 4.3.5 due to unintended wiggles during optimisation η3 and η4 for
the weighting of the parametric jerk and the jerk rate are set to zero. The remaining
parameters are η1 and η2, which are figured out in the following by a parametric study.
The coathanger, which is shown in figure A.1 is a very illustrative example, since it contains
both tangent and non tangent transitions between straight lines and circular arcs. Ad-
ditionally the geometry is symmetric and allows for the testing of the symmetric behavior
−20 −15 −10 −5 0 5 10 15 200
5
10
15
20
Position X [mm]
PositionY
[mm
]
Figure A.1: 2D-geometry for the parametric study.
113
of the DGO, which is described in section 4.3.
In the following different tupels for η1 and η2 are given to the DGO in order to evaluate a
smoothing function r(s) within an assumend track tolerance of 50µm. Since the DGO is
based on the heuristics mentioned above r(s) does not necessarily lead to a time optimal
movement. Therefore an alternative criterion for the shape of r(s) is requested. Since the
DGO is primary used for laser cutting, a shape preserving behavior is important. Although
large tolerances for the tool path up to 100µm occur, the contour accuracy is important
for the quality of the manufactured part.
In the following the influence of η1 and η2 on the optimisation result is shown in order
to figure out a tupel satisfying the requirements mentioned above. Since the optimisation
result is influenced by the relationship between ηi,
ξ = η1
η2(A.1)
is introduced. (A.1) with
ξ = {0, 0.001, 0.1, 1, 10, 1000} (A.2)
leads to the optimisation results, which are shown in figure A.2 and are discussed in the
following.
For all ξ ≥ 1 the influence of η1 is dominant. According to (4.60) the arclength L(s) of a
spatial curve is influence by r′(s). Therefore ξ ≥ 1 leads to a minimisation of the arclength
of r(s). As a consequence of that the deviation between r(s) and r(s, ξ = 1)-r(s, ξ = ∞)is not restricted to the immediate vicinity of the transition.
As can be seen from figure A.2 for all ξ ≤ 1 the deviation between r(s) and r(s) is
sufficiently restricted to the immediate vicinity of the tranitions. Since for all ξ ≤ 1 there
is no significant deviation between the obtained solutions for the DGO η1 = 0 respectively
η2 = 1 is assumed.
114 A. Parametric study
−20 −15 −10 −5 0 5 10 15 20
0
5
10
15
20
25
Position X [mm]
PositionY
[mm
]
r(s)r(s, ζ = 0)r(s, ζ = 0.001)r(s, ζ = 1)r(s, ζ = 1000)
Figure A.2: Deviation between r(s) and r(s) due to the parameterisation (A.2).In favor
of the visibility the deviation of the smoothing function in normal direction of the tool path
is scaled two hundred times.
Bibliography 115
Bibliography
[1] E. Abele and D. Korff. Avoidance of collision-caused spindle damages: Challenges,
methods and solutions for high dynamic machine tools. CIRP Annals - Manu-
facturing Technology, 60(1):425 – 428, 2011.
[2] Y. Altintas and K. Erkorkmaz. Feedrate optimization for Spline interpolation In
high speed machine tools. CIRP Annals - Manufacturing Technology, 52(1):297 –
302, 2003.
[3] Y. Aminov. Differential Geometry and Topology of Curves. CRC Press, 2000.
[4] L. Andolfatto, S. Lavernhe, and J. R. R. Mayer. Evaluation of servo, geometric and
dynamic error sources on five-axis high-speed machine tool. International Journal
of Machine Tools and Manufacture, 51:787 – 796, 2011.
[5] M. Annoni, A. Bardine, S. Campanelli, P. Foglia, and C. A. Prete. A real-time
configurable NURBS interpolator with bounded acceleration, jerk and chord error.
Computer-Aided Design, 44(6):509 – 521, 2012.
[6] M. Balasubramaniam, S. Ho, S. Sarma, and Y. Adachi. Generation of collision-free
5-axis tool paths using a haptic surface. Computer-Aided Design, 34(4):267 – 279,
2002.
[7] R.H. Bartels, J.C. Beatty, and B. A. Barsky. An introduction to Splines for use in
Computer Graphics & Geometric Modeling. Morgan Kaufmann Publishers, Inc, Los
Altos, California 94022, 1987.
[8] J. T. Betts. Practical Methods for Optimal Control Using nonlinear Programming.
SIAM, 2010.
[9] X. Beudaert, S. Lavernhe, and C. Tournier. Feedrate interpolation with axis jerk
constraints on 5-axis NURBS and G1 tool path. International Journal of Machine
Tools and Manufacture, 57:73 – 82, 2012.
116 Bibliography
[10] X. Beudaert, P.-Y. Pechard, and C. Tournier. 5-Axis tool path smoothing based
on drive constraints. International Journal of Machine Tools and Manufacture,
51(12):958 – 965, 2011.
[11] Bosch Rexroth AG. Rexroth IndraMotion MTX 09VRS - Programmierhandbuch,
2002.
[12] M. Bouard, V. Pateloup, and P. Armand. Pocketing toolpath computation using an
optimization method. Computer-Aided Design, 43(9):1099 – 1109, 2011.
[13] R. Boudreau and S. Nokleby. Force optimization of kinematically-redundant pla-
nar parallel manipulators following a desired trajectory. Mechanism and Machine
Theory, 56(0):138 – 155, 2012.
[14] S. Boyd and L. Vandenberghe. Convex Optimization. Cambridge University Press,
2004.
[15] F. Braghin, F. Cheli, S. Melzi, and E. Sabbioni. Race driver model. Computers
& Structures, 86:1503 – 1516, 2008.
[16] C. Brecher and C. Heyers. Gesteigerte Dynamik mit dem Einsatz redundanter
Achsen. Werkstattstechnik online, 101:31–38, 2011.
[17] C. Castagnetti, E. Duc, and P. Ray. The Domain of Admissible Orientation con-
cept: A new method for five-axis tool path optimisation. Computer-Aided Design,
40(9):938 – 950, 2008.
[18] J.-H. Chin and Y.-C. Chen. System gains configuration and coordination of re-
dundant degrees of freedom by genetic algorithms for multi-axis machine system in
manufacturing. Computers & Industrial Engineering, 52(4):355 – 379, 2007.
[19] J.J. Craig. Introduction to robotics. Addison-Wesley, 1989.
[20] B. Dasgupta, A. Gupta, and E. Singla. A variational approach to path planning for
hyper-redundant manipulators. Robotics and Autonomous Systems, 57(2):194 – 201,
2009.
[21] E. J. Davison and D. M. Monro. A computational technique for finding ”bang-bang”
controls of non-linear time-varying systems. Automatica, 7(2):255–260, March 1971.
[22] P. Debout, H. Chanal, and E. Duc. Tool path smoothing of a redundant machine:
Application to Automated Fiber Placement. Computer-Aided Design, 43(2):122 –
132, 2011.
Bibliography 117
[23] DIN ISO 2806:1996. Numerical control of machines - Vocabulary.
[24] DR. JOHANNES HEIDENHAIN GmbH. Benutzer-Handbuch TNC640, 2014.
[25] M. Ess. Simulation and compensation of thermal errors of machine tools. PhD
thesis, ETH Zurich, Switzerland, 2012. DISS. ETH Nr. 20300.
[26] R. T. Farouki, C. Y. Han, and S. Li. Inverse kinematics for optimal tool orientation
control in 5-axis {CNC} machining. Computer Aided Geometric Design, 31(1):13 –
26, 2014.
[27] M. Fauser. Steuerungstechnische Massnahmen fur die Hochgeschwindigkeits-
Bearbeitung. PhD thesis, RWTH Aachen, 1997.
[28] P. M. Ferreira and C. R. Liu. An analytical quadratic model for the geometric error
of a machine tool. Journal of Manufacturing Systems, 5(1):51 – 63, 1986.
[29] P. Fischer. Diskrete Geometrieoptimierung fur die 3D-Laserbearbeitung. Semester
thesis, 2013.
[30] H. Gao. Erhohung der dynamischen Bahngenauigkeit durch ganzheitliche Opti-
mierung am Beispiel einer Linearmotofrasmaschine. PhD thesis, TU-Darmstadt,
2000.
[31] GE Fanuc Automation Europe. Bedienungshandbuch, 2002.
[32] H.P. Geering. Regelungstechnik. Springer Berlin / Heidelberg, IMRT, ETH-
Zentrum, CH-8092 Zurich, 5 edition, 2001.
[33] H.P. Geering. Optimale Regelung. IMRT Press, IMRT, ETH-Zentrum, CH-8092
Zurich, 2004.
[34] J. Gondzio. Multiple centrality corrections in a primal dual method for linear pro-
gramming. Computational Optimization and Applications, 6(2):137–156, 1996.
[35] N. Gould and P. L. Toint. Preprocessing for quadratic programming. Math. Pro-
gramming, 100:95–132, 2004.
[36] S. N. Grigoriev, A.A. Kutin, and V.V. Pirogov. Advanced Method of NC Program-
ming for 5-Axis Machining. Procedia CIRP, 1(0):102 – 107, 2012.
[37] T. Haas. Diskrete Geometrieoptimierung und Interpolationsmethoden fur die Laser-
schneidbearbeitung. Master’s thesis, ETH Zurich, Switzerland, 2012.
118 Bibliography
[38] M. Hadorn. Optimal Set Point Generation for Machine Tools under Nonlinear Con-
straints. PhD thesis, ETH Zurich, Switzerland, 2007. DISS. ETH Nr. 1132.
[39] M. Hadorn, C. Jager, and M. Steinlin. Rule based feed rate optimisation for Machine
Tools. In 8th International Conference and Exhibition on Laser Metrology, Machine
Tool, CMM & Robotic Performance, Lamdamap, 2007.
[40] Yoram Halevi, Emanuele Carpanzano, Giuseppe Montalbano, and Yoram Koren.
Minimum energy control of redundant actuation machine tools. CIRP Annals -
Manufacturing Technology, 60(1):433 – 436, 2011.
[41] K.H. Harib, A.M.M. Sharif Ullah, and A. Hammami. A hexapod-based machine tool
with hybrid structure: Kinematic analysis and trajectory planning. International
Journal of Machine Tools and Manufacture, 47(9):1426 – 1432, 2007.
[42] R. F. Harik, H. Gong, and A. Bernard. 5-axis flank milling: A state-of-the-art
review. Computer-Aided Design, (0), 2012.
[43] T. Huang, P.F. Wang, J.P. Mei, X.M. Zhao, and D.G. Chetwynd. Time minimum
trajectory planning of a 2-DOF translational parallel robot for pick-and-place oper-
ations. CIRP Annals - Manufacturing Technology, 56(1):365–368, 2007.
[44] G. Musiol H. Muhlig I. N. Bronstein, K. A. Semendjajew. Taschenbuch der Mathe-
matik. Verlag Harri Deutsch, 2013.
[45] ISO 66025-2:1988. Industrial automation; numerical control of machines; format,
preparatory and miscellaneous functions.
[46] ISO 230-1:1996. Test code for machine tools - Part 1: Geometric accuracy of ma-
chines operating under no-load or finishing conditions.
[47] ISO 230-9:1996. Test code for machine tools - Part 9: Estimation of measurement
uncertainty for machine tool tests according to series ISO 230, basic equations.
[48] ISO 6983-1:2009. Automation systems and integration - Numerical control of ma-
chines - Program format and definition of adress words.
[49] T. Kand and K. Morishige. Tool path generation for five-axis controlled maachining
with consideration of structural interference. International Journal of Automation
Technology, 6(6):710–716, 2012.
[50] H. Kano, H. Fujioka, and C. F. Martin. Optimal smoothing and interpolating splines
with constraints. Applied Mathematics and Computation, 218(5):1831 – 1844, 2011.
Bibliography 119
[51] C. Lartigue, E. Duc, and A. Affouard. Tool path deformation in 5-axis flank milling
using envelope surface. Computer-Aided Design, 35(4):375 – 382, 2003.
[52] B. Lauwers, P. Dejonghe, and J.P. Kruth. Optimal and collision free tool posture in
five-axis machining through the tight integration of tool path generation and machine
simulation. Computer-Aided Design, 35(5):421 – 432, 2003.
[53] B. Lauwers, G. Kiswanto, J.-P. Kruth, and K.U. Leuven. Development of a five-axis
milling tool path generation algorithm based on faceted models. CIRP Annals -
Manufacturing Technology, 52(1):85 – 88, 2003.
[54] B. Lauwers and D. Plakhotnik. Five-axis milling tool path generation with dynamic
step-over calculation based on integrated material removal simulation. CIRP Annals
- Manufacturing Technology, 61(1):139 – 142, 2012.
[55] S. Lavernhe, C. Tournier, and C. Lartigue. Optimization of 5-axis high-speed ma-
chining using a surface based approach. Computer-Aided Design, 40(10-11):1015 –
1023, 2008.
[56] J. H. Lee, Y. Liu, and S.-H. Yang. Accuracy improvement of miniaturized machine
tool: Geometric error modeling and compensation. International Journal of Machine
Tools and Manufacture, 46:1508 – 1516, 2006.
[57] MathWorks Inc., 3 Apple Hill Drive, Natick US. Optimization Toolbox-Users Guide,
2012.
[58] S. Mehrotra. On the Implementation of a Primal-Dual Interior Point Method. SIAM
Journal on Optimization, 2:575–601, 1992.
[59] R. Neugebauer. Parallelkinematische Maschinen. Springer-Verlag Berlin Heidleberg,
2006.
[60] R. Neugebauer, W.-G. Drossel, S. Ihlenfeldt, and Ch. Harzbecker. Design method
for machine tools with bionic inspired kinematics. CIRP Annals - Manufacturing
Technology, 58(1):371 – 374, 2009.
[61] M. H. Nguyen, S. Weikert, and K. Wegener. Toolbox for control system analysis of
machine tools. In Proceedings of the 13th Mechatronic Forum International Confer-
ence, Linz, Austria, 2012.
[62] A.C. Okafor and Y. M. Ertekin. Derivation of machine tool error models and error
compensation procedure for three axes vertical machining center using rigid body
120 Bibliography
kinematics. International Journal of Machine Tools and Manufacture, 40(8):1199 –
1213, 2000.
[63] H. Park and J.-H. Lee. B-spline curve fitting based on adaptive curve refinement
using dominant points. Computer-Aided Design, 39(6):439 – 451, 2007.
[64] V. Pateloup, E. Duc, and P. Ray. Corner optimization for pocket machining. Inter-
national Journal of Machine Tools and Manufacture, 44:1343 – 1353, 2004.
[65] L. Piegl and W. Tiller. The NURBS Book. Springer, 1996.
[66] L.A. Piegl and W. Tiller. Least-squares B-Spline curve approximation with arbitary
end derivatives. Engineering with Computers, 16:109–116, 2000.
[67] Z. Qiao, T. Wang, Y. Wang, M. Hu, and Q. Liu. Bezier polygons for the lineariza-
tion of dual NURBS curve in five-axis sculptured surface machining. International
Journal of Machine Tools and Manufacture, 53(1):107 – 117, 2012.
[68] M. Rauch, E. Duc, and J.-Y. Hascoet. Improving trochoidal tool paths generation
and implementation using process constraints modelling. International Journal of
Machine Tools and Manufacture, 49(5):375 – 383, 2009.
[69] X. Rufeng, C. Zhitong, C. Wuyi, W. Xianzhen, and Z. Jianjun. Dual drive curve
tool path planning method for 5-axis NC machining of sculptured surfaces. Chinese
Journal of Aeronautics, 23(4):486 – 494, 2010.
[70] M. Schmid. CAD mit Unigraphics NX. J. Schlembach Fachverlag, 2003.
[71] Th. Schnider. Berechnung schmiegungsoptimaler kollisionsfreier Werkzeugver-
fahrwege fur die funfachsige Frasbearbeitung von Freiformflachen mit Torusfrasern
. PhD thesis, ETH Zurich, Switzerland, 1998.
[72] Th. Schroder. Entwicklung und Evaluation von Algorithmen zur zeitoptimierten
Bewegungszerlegung bei kinematisch redundanten Werkzeugmaschinen. PhD thesis,
Technische Universitat Chemnitz, 2007.
[73] H.R. Schwarz and N. Kockler. Numerische Mathematik. Teubner, 2006.
[74] F. Sellmann, S. Weikert, and K. Wegener. Improvement of the dynamic behavior of
machine tools by geometrical optimization of the machine tool axes movements. In
Proceedings of the 13th Mechatronic Forum International Conference, Linz, Austria,
2012.
Bibliography 121
[75] F. Sellmann, S. Weikert, and K. Wegener. Model base calculation of the tool-path
smoothing tolerances. In Proceedings of ASPE anual meeting 2012, San-Diego, USA,
2012.
[76] K. G. Shin and N. D. McKay. Selection of near-minimum time geometric paths
for robotic manipulators. IEEE Transactions on Automatic Control, 31(6):501–511,
June 1986.
[77] Siemens AG. Grundlagen Programierhandbuch, 2010.
[78] A. H. Slocum. Precision machine design. Society of Manufacturing Engineers, 1992.
[79] M. Steinlin. Model based Feed-rate Optimization for Machine Tool Trajectories. PhD
thesis, ETH Zurich, Switzerland, 2012.
[80] J.A Stori and P.K Wright. Constant engagement tool path generation for convex
geometries. Journal of Manufacturing Systems, 19(3):172 – 184, 2000.
[81] G. Stute. Regelung an Werkzeugmaschinen. Hanser-Verlag, Munchen, Wien, 1981.
[82] Y. Takeuchi and T. Watanabe. Generation of 5-axis control collision-free tool
path and postprocessing for NC Data. CIRP Annals - Manufacturing Technology,
41(1):539 – 542, 1992.
[83] N. Tounsi and M.A. Elbestawi. Optimized feed scheduling in three axes machin-
ing. Part I: Fundamentals of the optimized feed scheduling strategy. International
Journal of Machine Tools and Manufacture, 43(3):253 – 267, 2003.
[84] N. Tounsi and M.A. Elbestawi. Optimized feed scheduling in three axes machin-
ing: Part II: Experimental validation. International Journal of Machine Tools and
Manufacture, 43(3):269 – 282, 2003.
[85] T. Treib. Vorschlag fur die Abnahme von Linearfuhrungen. PhD thesis, ETH Zurich,
Switzerland, 1988.
[86] T. Treib and E. Matthias. Error budgeting applied to the calculation and optimiza-
tion of the volumetric error field of multiaxis systems. CIRP Annals - Manufacturing
Technology, 36(1):365 – 368, 1987.
[87] G. Vosniakos and Z. Kannas. Motion coordination for industrial robotic systems with
redundant degrees of freedom. Robotics and Computer-Integrated Manufacturing,
25(2):417 – 431, 2009.
122 Bibliography
[88] G. Vosniakos and P. Papapanagiotou. Multiple tool path planning for NC machin-
ing of convex pockets without islands. Robotics and Computer-Integrated Manu-
facturing, 16(6):425 – 435, 2000.
[89] N. Wang and K. Tang. Five-axis tool path generation for a flat-end tool based on
iso-conic partitioning. Computer-Aided Design, 40(12):1067 – 1079, 2008.
[90] M. Weck and C. Brecher. Werkzeugmaschinen. Springer Berlin, Heidelberg, New
York, 2005.
[91] P.-H. Wu, Y.-W. Li, and C.-H. Chu. Optimized tool path generation based on dyn-
amic programming for five-axis flank milling of rule surface. International Journal
of Machine Tools and Manufacture, 48(11):1224 – 1233, 2008.
[92] Christophe Tournier Xavier Beudaert, Sylvain Lavernhe. 5-axis local corner round-
ing of linear tool path discontinuities. International Journal of Machine Tools &
Manufacture, 73:9–16, 2013.
[93] Z. Yazar, K.-F. Koch, T. Merrick, and T. Altan. Feed rate optimization based on
cutting force calculations in 3-axis milling of dies and molds with sculptured surfaces.
International Journal of Machine Tools and Manufacture, 34(3):365 – 377, 1994.
[94] G. Yu. Optimale Steuerung der Bewegung und der Geschwindigkeit fur das drei- und
funfachsige Frasen. PhD thesis, EHT Zurich, Switzerland, 1996.
[95] Z. Yu, L. Tiemin, and T. Xiaoqiang. Geometric error modeling of machine tools
based on screw theory. Procedia Engineering, 24(0):845 – 849, 2011.
[96] S.H.H. Zargarbashi and J.R.R. Mayer. Single setup estimation of a five-axis ma-
chine tool eight link errors by programmed end point constraint and on the fly mea-
surement with Capball sensor. International Journal of Machine Tools and Manu-
facture, 49(10):759 – 766, 2009.
[97] H. Zhao, L. Zhu, and H. Ding. A real-time look-ahead interpolation methodology
with curvature-continuous B-spline transition scheme for CNC machining of short
line segments. International Journal of Machine Tools and Manufacture, 65(0):88 –
98, 2013.
[98] L. Zhu, H. Ding, and Y. Xiong. Simultaneous optimization of tool path and shape
for five-axis flank milling. Computer-Aided Design, 44(12):1229 – 1234, 2012.
Bibliography 123
[99] L. Zhu, G. Zheng, H. Ding, and Y. Xiong. Global optimization of tool path for
five-axis flank milling with a conical cutter. Computer-Aided Design, 42(10):903 –
910, 2010.
[100] S. Zhu, G. Ding, S. Qin, J. Lei, L. Zhuang, and K. Yan. Integrated geometric error
modeling, identification and compensation of CNC machine tools. International
Journal of Machine Tools and Manufacture, 52(1):24 – 29, 2012.