Professional Documents
Culture Documents
a r t i c l e in fo abstract
Article history: Milling performed with robots is quite demanding, even for low-strength materials, due to the high
Received 21 May 2008 accuracy requirements, the generally high and periodically varying milling forces and the low stiffness
Received in revised form of robots compared to CNC machine tools. In view of the generally improved recently robot stiffness, it
12 April 2010
is desirable to perform the milling operation in regions of the robot’s workspace where manipulability,
Accepted 12 April 2010
both kinematic and dynamic, is highest, thereby exhausting the robot’s potential to cope with the
process. In addition, by selecting the most suitable initial pose of the robot with respect to the
Keywords: workpiece, a reduction in the range of necessary joint torques may be reached, to the extent of
Robotic milling alleviating the heavy requirements on the robot. Two genetic algorithms (GAs) are employed to tackle
Genetic algorithms
these problems. The values of several robot variables, such as joint positions and torques, which are
Inverse dynamics
needed by the genetic algorithms, are calculated using inverse kinematics and inverse dynamics
Manipulability
models. In addition, initial positions and poses leading to singularities along the milling path are
penalized and, thus, avoided. The first GA deals solely with robot kinematics to maximize
manipulability. The second GA takes into account milling forces, which are computed numerically
according to the particular milling parameters, to minimise joint torque loads.
& 2010 Elsevier Ltd. All rights reserved.
0736-5845/$ - see front matter & 2010 Elsevier Ltd. All rights reserved.
doi:10.1016/j.rcim.2010.04.001
ARTICLE IN PRESS
518 G.-C. Vosniakos, E. Matsas / Robotics and Computer-Integrated Manufacturing 26 (2010) 517–525
4. Robot modelling
Table 1
Denavit–Hartenberg parameters.
1 0 0 0 y1
2 90o 0 0 y2
3 0 a2 d3 y3
4 90o a3 d4 y4
5 90o 0 0 y5
Fig. 2. Robot configuration and local coordinate systems according to D–H 6 90o 0 0 y6
convention.
ARTICLE IN PRESS
520 G.-C. Vosniakos, E. Matsas / Robotics and Computer-Integrated Manufacturing 26 (2010) 517–525
The problem was simplified by assuming single point contact 5. Genetic optimisation
between the cutting tool and the workpiece. Thus, moments on
the end effector are neglected. A further simplification stems from GAs are a generic search and optimisation method mimicking
the fact that the cutting tool remains vertical throughout the biological evolution. The main functions of a GA are depicted in
cutting path, i.e. the last three joints of the robot keep the same Fig. 7 and technical detail can be found in [24]. GAs involve
angular position, see Fig. 2. populations of chromosomes, each chromosome representing a
The start and end of the cutting path, hence the corresponding possible solution to the problem being investigated. Genetic
positions of the end effector are given as vectors. First the operators are applied to a population in order to transform it to a
homogenous transformation corresponding to the position and better-fitter population of chromosomes-solutions. Fitness of a
orientation of the end effector at the start and at the end of the chromosome is the measure of its optimality. Classic genetic
cutting path are calculated. operators are selection, mutation and crossover operators. Each
The Cartesian trajectory between start and end points of population results from the previous one after application of the
the cutting path is created, involving definition of the time vector, genetic operators during a cycle termed generation. The final
which in this case is from 0 to 10 s, with a certain sampling solution is picked as the fittest chromosome of the population
period, which in this case is 0.028 s resulting in 358 time-point usually reached after tens or even hundreds of generations.
samples. A three-dimensional array, in this case [4 4 358], Two GAs were setup on MatlabTM Genetic Algorithm Toolbox.
defines the position and orientation of the end-effector for The Genetic Algorithm Toolbox is a collection of routines which
all sampled time-points. An example of the Cartesian trajectory implement the most important functions in genetic algorithms,
of the end-effector along X Cartesian axis is shown in Fig. 3. such as population generation, selection, crossover, mutation,
This as well as the calculation result examples presented in reinsertion, etc. The user begins by creating the initial population
Figs. 4–6 correspond to the Cartesian trajectory from point and the chromosome encoding (binary, integer, etc.). Once the
(0.65, 0.15, 0.0) to point (0.6832, 0.15, 0.0), the end effector objective and fitness functions are defined, selection method and
orientation, in terms of roll, pitch and yaw angles, being rate have to be chosen. Then the user can define crossover,
constant at (0, p, 0). mutation and reinsertion parameters and rates. A common
Through inverse kinematics, the joint angles in the initial pose practice is to terminate the GA after a pre-specified number of
are readily calculated. Similarly, the joint angles corresponding to generations and then test the quality of the best members of the
the consecutive positions of the end effector (at the sampled time- population against the problem definition.
points) along its trajectory in Cartesian space, are also calculated, The GAs that were setup, are as follows:
see Fig. 4(a).
The Jacobian matrices corresponding to each configuration of (i) The first algorithm searches for the optimum initial position
the joints are calculated next. Following the inverse differential of the end-effector, which imparts maximum kinematic and
kinematics equation joint velocities are calculated based on the dynamic manipulability over the whole duration of the
desired end-effector velocity, in this case 0.00332 m/s, see milling task. This position is particular to the specific robot
Fig. 4(b). and it is related to the path followed and not to the milling
Singularity of each configuration is identified by checking the force.
rank and the determinant of the Jacobian. Therefore, Yoshikawa’s (ii) The second algorithm searches for the optimal initial position
and Asada’s manipulability measures can be computed at this of the end effector, which will result in the minimum total
stage. torque range in the robots joints 1, 2 and 3 over the whole
Joint accelerations are calculated numerically as time deriva- duration of the milling task. Milling forces do influence the
tives of joint velocities, see Fig. 5. Having calculated positions, choice of these positions, along with the robots characteristics
velocities and accelerations of the joints, and given the milling and the path followed.
forces and the gravity vector, the joint torques are calculated
without and with milling forces by employing the reverse
dynamics function, see Fig. 6. 5.1. Optimisation based on manipulability
Fig. 4. Variation with time of (a) joint angular position and (b) joint angular velocity for joints 2, 3 and 5. For the rest joints mean position is J1: 1.5 10 4 rad,
J4: 1.65 10 16 rad, J6: 1.5 10 4 rad and mean velocity is J1:7.5 10 7 rad/s, J4:9 10 19 rad/s, J6:7.5 10 7 rad/s.
The initial population was chosen to consist of 100 chromo- Note that many of the initial positions ‘suggested’ by the GA
somes. After several trials, the stopping criterion was set at 100 correspond to singular configurations, thereby blocking the
generations. Selection ratio was 60% (elitist re-insertion) cross- inverse kinematics function and, consequently, the GA to
over rate was 80% and mutation rate 5%. The mutation value range terminate. To overcome this problem the ikine function of Matlab
is the same as that set originally for the genes. Robotics Toolbox was slightly modified, in order to let the
The objective function expresses kinematic and dynamic evolution proceed by just penalising the respective solution with
manipulability in the whole of the trajectory, sampled at 50 a high objective function value.
points. The best objective function value, as well as the mean Fig. 8 depicts the evolution process. A relatively fast
value of the population, are recorded during the evolution. ‘convergence’ is noticed after about 30 generations. The
A medium-term tendency of the mean value to reach the best optimum initial position of the end-effector was computed as
value of the objective function is regarded as a sign of xEE ¼0.6368, yEE ¼ 0.2558, zEE ¼0.2329 in meters.
‘convergence’ of the evolution process to the optimum.
Due to the significance of milling forces and their variation,
5.2. Optimisation based on joint torques.
dynamic manipulability was given twice the weight of the
kinematic manipulability in the objective function. Maximising
The aim of this GA is to minimise the torque range of the joints
manipulability is transformed into minimising its negative. Thus
manifested over the whole trajectory.
Objective function ¼ w-2 n A significant simplification stems from the fact that due to
constant end-effector orientation along the trajectory, torque
The objective function executes the simulation model requirements for the last three joints are negligible. This was
presented in Section 4, except that the initial position of the observed in trial runs of the simulation model of Section 4, see
end-effector is not given by the user, but it is taken from the Fig. 9. By contrast, torque values for the first three joints were
chromosomes of the current population each time they need significant and exhibited intense variability. These observations
evaluation in order to compute fitness values. result in a reduced need for computation, i.e. just three torque
ARTICLE IN PRESS
522 G.-C. Vosniakos, E. Matsas / Robotics and Computer-Integrated Manufacturing 26 (2010) 517–525
values are computed, instead of six, for each of the discretised assigning an immense torque range (10,000 N m) to essentially
trajectory points. exclude the respective solution from the evolution process.
The chromosome is the same as in the first GA presented. The result is depicted in Fig. 9(a). Slow improvement of the
The initial population was chosen to consist of 100 chromosomes. solution is noted even after 200 generations. Note the initial
After several trials, the stopping criterion was set at 200 generations. torque range of 120 N m and the finally reached mean torque
Selection ratio was 60%, i.e. elitist re-insertion was implemented, range of 32 N m, i.e. an improvement by 390%. In particular, after
crossover rate was 90% and mutation rate was 10%. The mutation generation 166 the best individual exhibited a torque range of
value range is the same as that set originally for the genes. 14.02 N m. The optimum position in this case was computed as
The value of the objective function is the sum of the absolute xEE ¼ 0.4806 m, yEE ¼0.5731 m, zEE ¼0.2794 m.
value of the torque ranges in all three significant joints:
Fig. 6. Joint torques required (a) without milling force consideration (b) with milling force interaction. Torque in joints 3, 4 and 5 are negligible.
account that in each generation all offspring created by the Both genetic algorithms make use of the robot model
genetic operators need to be evaluated, through the model presented above. The first GA can be used in a preliminary
constructed in the robotics toolbox, each evaluation taking a investigation when just the desired milling path is known,
few seconds of CPU time. without considering the particular external forces applied to the
The value of the main parameters used in the GAs was end effector. The second GA can be employed when interaction
determined in a trial and error fashion. For instance, in the second forces need to be examined, too.
GA, the mutation rate was changed by one order of magnitude, Several other criteria could be used instead of manipulability
the result being shown in Fig. 9(b). A mutation rate of 1% leads and torque range, or, indeed, in addition to them in a weighted
to faster convergence, albeit to a local minimum, since the sum fashion or, if desired, in a Pareto front optimisation exercise.
corresponding value of the objective function is much higher than Such criteria may be maximum torque for each joint, maximum
that achieved with mutation rate equal to 10%. acceleration/deceleration for each joint, etc.
This work deals with robot placement in a different way than In addition, constraints such as maximum velocity, accelera-
the papers reported in literature so far. Most previous research tion, etc. may be directly taken into account in the optimisation
work optimises manipulability, in particular kinematic, whereas function, in the form of penalties. In the case study presented
this work considers dynamic manipulability to be more signifi- above milling feed was small enough to render such considera-
cant. However, the main point made in this work is that tions unnecessary.
optimisation should tackle the essence of the robotic operation, The GA approach can also be applied to wider definitions of the
which in this case is the large (for the typical magnitude of robot optimisation problem. For instance, the straight line milling path
stiffness) and varying forces at the end effector, which create may not be constrained to lie along the x direction or on the
stringent requirements on torques at the joints. Minimisation of horizontal plane either. In this case, the chromosome should be
joint torque or, better still, torque variation, is a more concrete expanded to contain the end point of the milling path, too.
criterion than manipulability and, therefore, more useful. As far as milling strategy is concerned, note that the end-effector
orientation was considered constant – always vertical – therefore
ARTICLE IN PRESS
524 G.-C. Vosniakos, E. Matsas / Robotics and Computer-Integrated Manufacturing 26 (2010) 517–525
Table 2
Cartesian coordinate limits for the end effector. Fig. 9. Evolution of torque minimisation solution with population ¼ 100, selection
rate¼ 0.6, crossover rate¼ 0.9 and (a) mutation rate¼ 0.1, (b) mutation rate¼ 0.01.
X Y Z
surface. Changing the placement of the robot with respect to the dFy,j ðjj ðzÞÞ ¼ þ dFt,j sin jj ðzÞdFr,j cos jj ðzÞ,
o
workpiece causes a change in yi, which results in a different
dFz,j ðjj ðzÞÞ ¼ þ dFa,j ð5Þ
dynamic (chatter) behavior of the system in milling, hence in a
different limiting depth of cut. The methodology presented in this
paper can be used to improve chatter stability of milling robots, The total force along each main direction is the sum of the
provided either that the FRF of the robot can be computed via a corresponding elementary forces coming from all cutting edges.
suitable model or that the individual FRFs representing each Note that they refer to a specific time point or, equivalently, to a
mode are known in order to be multiplied by the respective specific rotation angle of the tool j:
direction factors for each position tried in the genetic algorithm. X
N 1 X
N 1 X
N 1
The objective function in this case should contain the computed Fx ðjÞ ¼ Fx,j , Fy ðjÞ ¼ Fy,j , Fz ðjÞ ¼ Fz,j ð6Þ
allowable depth of cut. This may well be another interesting j¼0 j¼0 j¼0
future step of this work.
References
Appendix A. End-mill force calculations
[1] Zeghloul S, Pamanes-Garcia JA. Multi-criteria optimal placement of robots in
constrained environments. Robotica 1993;11(2):105–10.
For a typical end mill with helix angle b, milling forces are [2] Tu Q, Rastegar J. Determination of allowable manipulator link shapes; and
calculated by adding up the individual force components task, installation, and obstacle spaces using the Monte Carlo method.
corresponding to each one of the discrete cutting edge parts. Transactions of the ASME Journal of Mechanical Design 1993;115(3):
457–61.
Axial depth of cut is assumed to be constant. The milling [3] Soman NA, Davidson JK. A two-dimensional formulation for path-placement
parameters for one slice are given in Fig. 10. Starting with one in the workcells of planar 3-R robots. Transactions of the ASME Journal of
of the cutting teeth tip as reference, assumed to be at angle j, the Mechanical Design 1995;117(3):479–84.
[4] Chen C-J, Tseng C-S. The path and location planning of workpieces by genetic
tooth angular pitch being jp, the tips of each of the rest of the algorithms. Journal of Intelligent Manufacturing 1996;7(1):69–76.
teeth j are located at angles given as: [5] Barral D, Perrin J-P, Dombre E, Liegeois A. Development of optimisation tools
in the context of an industrial robotic CAD software product. International
jj ð0Þ ¼ j þ jjp , j ¼ 0, 1, 2, :::, N1 ð1Þ Journal of Advanced Manufacturing Technology 1999;15(11):822–31.
[6] Mahr C. Beyond the standard cycle: increasing total work cell productivity by
At axial depth of cut z, hysterisis angle is c ¼ kbz, where optimising robot placement and other key performance influencers. Indus-
kb ¼(2 tan b)/z. Thus, a cutting point on tooth j and axial depth of trial Robot 2000;27(5):334–7.
cut z corresponds to an angle [7] Aspragathos NA, Foussias S. Optimal location of a robot path when
considering velocity performance. Robotica 2002;20(2):139–47.
jj ðzÞ ¼ j þ jjp kb z ð2Þ [8] Tian L, Collins C. Optimal placement of a two-link planar manipulator using a
genetic algorithm. Robotica 2005;23(2):169–76.
The tangential, radial and axial components of the milling [9] Abdel-Malek K, Yu W, Yang J. Placement of robot manipulators to maximize
force acting on a elementary part of the cutting edge with length dexterity. International Journal of Robotics and Automation 2004;19(1):
6–15.
dz are expressed as
[10] Mitsi S, Bouzakis K-D, Sagris D, Mansour G. Determination of optimum robot
dFt,j ðj,zÞ ¼ ½Ktc hj ðjj ðzÞÞ þ Kte dz, base location considering discrete end-effector positions by means of hybrid
genetic algorithm. Robotics and Computer-integrated Manufacturing
dFr,j ðj,zÞ ¼ ½Krc hj ðjj ðzÞÞ þ Kre dz, 2008;24(1):50–9.
o [11] Walstra WH, Bronsvoort WF. Interactive simulation of robot milling for rapid
dFa,j ðj,zÞ ¼ ½Kac hj ðjj ðzÞÞ þ Kae dz, ð3Þ shape prototyping. Computers & Graphics 1994;18(6):861–71.
[12] Chen YH, Hu YN. Implementation of a robot system for sculptured surface
cutting. Part 1: Rough Machining. International Journal of Advanced
Manufacturing Technology 1999;15(9):624–9.
where chip thickness is given as
[13] Matsuoka S, Shimizu K, Yamazaki N, Oki Y. High-speed end milling of an
hj ðj,zÞ ¼ c sin jj ðzÞ ð4Þ articulated robot and its characteristics. Journal of Materials Processing
Technology 1999;95:83–9.
These forces can be projected onto the three main directions [14] Cetinkunt S, Tsai R-L. Position error compensation of robotic contour end-
milling. International Journal of Machine Tools and Manufacture
x, y, z, as
1990;30(4):527–613.
dFx,j ðjj ðzÞÞ ¼ dFt,j cos jj ðzÞdFr,j sin jj ðzÞ, [15] Shirase K, Tanabe N, Hirao M, Yasui T. Articulated Robot Application in
End Milling of Sculptured Surface. JSME International Journal SERIES C,
Dynamics, Control, Robotics, Design and Manufacturing 1996;39(C2):
308–16.
[16] Zielinski C, Mianowski K, Nazarczuk K, Szynkiewicz W. A prototype robot for
polishing and milling large objects. Industrial Robot: An International Journal
2003;30(1):67–76.
[17] Terrier M, Dugas A, Hascoët J-Y. Qualification of parallel kinematics machines
in high-speed milling on free form surfaces. International Journal of Machine
Tools and Manufacture 2004;44:865–77.
[18] Pan Z, Zhang H, Zhu Z, Wang J. Chatter analysis of robotic machining process.
Journal of Materials Processing Technology 2006;173:301–9.
[19] Altintas Y. Manufacturing automation: metal cutting mechanics. Machine
Tool Vibrations and CNC Design. UK: Cambridge University Press; 2000.
[20] Budak E, Altintas Y, Armarego EJA. Prediction of milling force coefficients
from orthogonal cutting data. ASME Journal of Manufacturing Science and
Engineering 1996;118(2):216–23.
[21] Xu M, Jerard RB, Fussell BK. Energy based cutting force model calibration for
milling. Computer-aided Design and Applications 2007;4(1-4):341–51.
[22] Sciavicco L, Siciliano B. Modelling and control of robot manipulators, 2nd ed.
Springer-Verlag; 2000.
[23] Corke PIA. Robotics toolbox for matlab. IEEE Journal of Robotics and
Automation 1996;3(1):24–32.
[24] Gen M, Cheng R. Genetic algorithms and engineering optimization. New
York: Wiley; 2001.
[25] Altintas Y. Manufacturing automation: metal cutting mechanics, machine
tool vibrations and CNC design [chapter 3—static and dynamic deformations
Fig. 10. Geometry of slice j of an end-mill. in machining]. Cambridge University Press; 2000.