Development of Two Cooperative Stewart Platforms For Machining
Development of Two Cooperative Stewart Platforms For Machining
B.Eng., ITB
A THESIS SUBMITTED
2012
DECLARATION PAGE
i
ACKNOWLEDGEMENTS
and Assoc. Prof. Ong Soh Khim for their suggestions, guidance, insights, and
patience that have been invaluable to this research project and this thesis, and
I would like to thank all fellow students in our research group and AR
Tan Suan Beng, and Mr Lee Chiang Soon, for their administrative and
that in many ways help this research project and the group. I would especially
thank Low Minyi Cindy, Chock E-Wei, V.M. Ajay, and Ye Chenhao for their
contribution. Finally, I would like to thank my family and my friends for their
ii
TABLE OF CONTENT
DECLARATION PAGE...............................................................................I
ACKNOWLEDGEMENTS........................................................................ II
1.2 Background....................................................................................... 2
iii
2.1 Kinematics ...................................................................................... 10
IMPLEMENTATION ............................................................................... 29
iv
4.5 Extended Configuration ................................................................ 51
PLATFORM ............................................................................................... 53
Software .......................................................................................... 98
v
6.4.1 Machining an ‘NUS’ Pocket ............................................... 107
vi
SUMMARY
While very large and heavy duty machines are still needed for high
for lighter production machines with smaller size and mass to increase the
especially for machining and positioning. PKMs have inherent properties for
interact with one another. One of them carries the tool and the other one holds
vii
to the characteristics of the Stewart platforms. Development and results of the
viii
LIST OF TABLES
Table 5.2 G-codes used for Stewart platform and their meaning ................ 71
Table 7.1 Workspace Volume with various tilt angles of the tool axis ..... 124
Table 7.5 Error comparison of calibration with measurement errors ........ 136
ix
LIST OF FIGURES
Figure 1.1 The first octahedral hexapod or the Gough Stewart platform ...... 4
Figure 1.2 The Logabex robot LX4 (courtesy of Logabex Company) .......... 6
x
Figure 4.16 Machining a clamped work-piece on the table-SP with the tool-
SP ................................................................................................................. 52
Figure 5.1 The flowchart to plot the workspace of the Stewart platform .... 57
Figure 6.2 The moving platform position to reach the tool contact point.... 79
Figure 6.5 Coordination of the tool-SP and the table-SP to reach the input
xi
Figure 6.8 Coordinate mapping in extended configuration ......................... 88
Figure 6.11 A smooth trajectory from the algorithm with extra constraint;
showing: ....................................................................................................... 98
Figure 6.12 Steps to machining with the cooperative manipulators .......... 100
Figure 6.13 Fixture for holding work-piece on top of the tool-SP ............ 100
Figure 6.14 Information flow of part design and NC code generation ...... 102
xii
LIST OF ABBREVIATIONS
SP Stewart platform
PD Proportional Derivative
CC Cutter Contact
CL Cutter Location
xiii
LIST OF SYMBOLS
li Leg vector
R Rotation matrix
S Sine
C Cosine
Y Measured variables
xiv
Fi The objective function for the ith pose
κ Condition Number
xv
CHAPTER 1
INTRODUCTION
1.1 Overview
joints. This thesis improves upon the development of a specific type of PKMs,
which are also known as Stewart platforms (SP) for positioning and
machining applications, and investigates the control and user interface aspects.
occur within the workspace and need to be avoided at all cost. Such problems
this does not stop researchers from developing new strategies to work with
PKMs and come up with new methods that could bring PKMs to their full
cooperative architecture that consists of two PKMs to study the effect of extra
1
architecture could bring additional benefits to the applications of PKMs in
1.2 Background
etc. However, there are actually three basic robot architectures, namely as
follows:
1. Serial architecture
3. Hybrid architecture
a robot’s kinematic properties, which are closely related to the sequence and
maximum of eight rigid links and joints with some prismatic and revolute
joints which can be passive and active (actuated). The main advantage is their
large workspace resulted from their first long links from the base and
a tool suitable for a specific task. The serial architecture also tends to have
higher dexterity. Their weaknesses are mainly their limited payload, low
2
precision due to the bending force over the long links connected in a serial
manner, and the large number of parts leading to high inertia which is
undesirable for high bandwidth motion control. The high inertia disadvantage
prevents the use of serial robots for applications requiring high accelerations
and agility, e.g., flight simulation and rapid pick and place tasks.
PKM, is composed of six variable struts that are driven by prismatic actuators,
connected to a fixed rigid body and a moving platform which position and
Figure 1.1 (Gough and Whitehall 1962). Stewart suggested that the structure
be used for high payload applications because every actuator is located to the
precision due to their structure in which errors in each link do not add up to
of singular configurations.
3
Figure 1.1 The first octahedral hexapod or the Gough Stewart platform
have explored the combination of serial and parallel structures to form hybrid
and complement the drawbacks of each structure. Promising results have been
reported, e.g., the Logabex LX4 robot (Figure 1.2) or the robotic arm
operations (Chai and Young 2001; Callegari and Suardi 2003; Zheng et al.
2004; Carbone and Ceccarelli 2005; Harib et al. 2007). Hybrid structures are
usually designed such that one platform performs pure translation and the
4
et al. 1997; Tsai and Joshi 2002). However, it is still uncertain whether this
option will solve the problems and bring forth the full potential of both types
structures has been conducted (Geldart et al. 2003). The result showed that
and Staimer 2002; Schwaar et al. 2002), of which some of the structures
industrial works have been already done for the hybrid architecture, this thesis
in the past where variants of PKMs are developed for specific applications
(Terrier et al. 2005; Refaat et al. 2007; Neuman 2006). The Gough Stewart
5
Figure 1.2 The Logabex robot LX4 (courtesy of Logabex Company)
1.3 Organization
using models and simulation tools. The research on the Stewart platforms in
solid model are built to analyse the motion of the Stewart platforms. Second,
into the Stewart platform trajectory is developed. Third, basic and complex
programs are run to test the Stewart platforms, where parts are designed and
6
Since there have been much research on several aspects of PKMs,
concepts that are used in relation to the configuration of the Stewart platform
graphical interface and characteristic analysis that are useful for future design.
Chapter 6 explains the crux of the motion planning algorithm for the
with two Stewart platforms can be used to plan the optimal motion path for a
given tool path trajectory. In addition, machining case studies which have
been executed with the proposed Stewart platform are presented. From these
7
are used to evaluate tool path generation, work-piece setup, user experience,
the Stewart platform are reported. The error model and calibration of the
principle, the end-effector can be positioned in any way that is required for
the respective task, e.g., milling, welding, cutting and assembly. In particular,
three DOF) or (six DOF and six DOF) to form a nine or twelve DOF
system. For example, one of the SPs can be used to locate and hold a
necessary machining paths and avoid any collision. The two Stewart
8
platforms can move together such that the time to reach the final
3. To obtain the work volume of the two Stewart platforms and provide
positions.
9
CHAPTER 2
LITERATURE REVIEW
Few research studies have been reported on motion planning, control and
these areas (Zhang et al. 2005). In this chapter, some key issues in this field
2.1 Kinematics
general, is a study of the geometry of the motions of the end-effector and the
actuating joints, and the relationship between these two types of motions
without consideration of the torques and forces that cause these motions. The
inverse kinematics problem, i.e., to find the lengths of the links for a given
For a general SP, 40 assembly modes (i.e., direct model solutions) can exist
10
1991; Parikh and Lam 2005; Wang 2006). Another method is to use a larger
can be used to improve the direct kinematics algorithm (Cheok et al. 1993;
Parenti-Castelli and Di Gregorio 1995; 2000; Chen and Fu 2006). It has been
moving platform of the PKM for which the manipulator loses its inherent
linear velocity and the angular velocity of the robot arm are bounded. The
these configurations, the actuators cannot control the mechanisms, which gain
1992). There are two Jacobian matrices J for a PKM (Gosselin and Angeles
1990b), i.e., one for the inverse kinematic and one for the direct kinematic.
11
configuration, or both. In addition, another type of singularity exists, namely,
arises from the symmetrical architecture of the SPs causing singularity poses
the characterization of the singularity of SPs (Hunt 1978; Fichter 1986; St-
and torque transmission of the PKM, which better capture all the singularity
simply detected by computing the Jacobian matrix. This type can be detected
the actuators’ stroke, the range of the passive joints, and the link interference
(Bonev and Ryu 2001). The workspace of a manipulator is defined as the set
12
a SP are coupled, a first approach is to fix the values of a few of the DOFs
until only three DOF are free, so that it can be represented in a 3D plot. Most
gives the best result as it provides an exact calculation with a compact storage
and easy representation. However, numerical methods (Du Plessis et al. 2001)
are also preferred as they can deal with joint limits and workspace verification
problems (Masory and Wang 1995) (i.e., to determine whether a part of the
workspace is reachable).
tools, where only five DOFs are required for completing a task. Workspace
analysis for PKM based machine tools has been reported (Wang et al. 2001).
Huang (Huang et al. 1999) showed that the minimum reachable yaw angle
for a given point may be calculated exactly when the constraints on the
part that the machining trajectory will lie within the workspace. This problem
2002).
13
2.3 Calibration and Accuracy
conventional robots and better stiffness in the same range as the machine tools.
tool can be classified into geometric and non-geometric. Geometric errors are
errors in the parameters that define the geometric relationships. Other sources
main sources of errors and investigate the relationships between the errors of
the joints and those of the end-effector. Masory (Masory et al. 1997) has
studied the influence of the sensor errors and the manufacturing tolerances on
the locations of the joint centres. A more thorough analysis has been proposed
by Ehmann et al. (Petal and Ehmann 1997; Wang and Ehmann 2002), which
includes the location errors of the passive joint centres, errors in the leg
lengths, and the imperfect motions of the ball joints. Tischler and Samuel
the influence of the backlash of the joints, while Meng (Meng and Li 2005)
and Wolhart (Wohlhart 1999) proposed an analysis of the effect of the joint
Other sources of errors, such as thermal errors, gravity induced errors, and
dynamic errors (Pritschow et al. 2002, Niaritsiry et al. 2004; Clavel 2005),
14
Geometric errors, sometimes called the kinematic errors, can be
and Haynes 1994), and partial differentiation (Ropponen and Arai 1995).
differences between the measured pose and the desired pose give an
calibration process.
and only the manipulator measurements are used for the calibration.
sensors.
measured easily using dial gauges. Takeda (Takeda et al. 2004) proposed
15
using a double-ball-bar measuring device. In his study, the robot performed
circular paths, and the deviation from circularity was measured using the
experiments (Chanal et al. 2007). Recent research shows a trend using camera
calibration that can produce good accuracy with relatively low cost (Andreff
et al. 2004; Dallej et al. 2006a; Daney 2006; Renaud et al. 2006; Tanaka
2006).
dealt with motion planning between two poses by looking for the parameters
of the screw motion linking the two poses, and reckoning that this motion
should be able to minimize the changes in the link lengths. Gosselin and
Angeles (Gosselin and Angeles 1990c) presented an algorithm that can find
the orientation of the manipulator with the best accuracy in some specific
path planning has emerged as one of the most promising approaches to path
and Simeon 2003). However, this approach does not consider singularity or
16
multiple solutions for the direct kinematics, which may prohibit the use of the
trajectory.
fewer than the number of DOFs of the machine may be used, e.g., for a SP,
the rotation about the tool can be ignored as it does not have to be specified
for machining tasks. Therefore, it is possible to determine the ranges for the
free DOFs to ensure that a given machining trajectory lies within the
other performance criteria for the SP (Merlet 2000). Another approach (Chen
et al. 2003) partitioned the DOFs into critical and secondary DOFs, and
synthesized a control law that ensured the tracking of the critical DOFs while
inputs’ that offer a means to improve their performance and increase their
redundancies:
with a larger number of DOFs than necessary. This may be used for
17
2. Actuation redundancy: The end-effector is over constrained by the
Gosselin 2004).
When two SPs are combined, there is one redundancy caused by the
which is applicable when the leg inertia and the joint friction are negligible.
As the SPs became better known, there were three major approaches of
and Burdet 1997; Dasgupta and Choudhury 1999; Harib and Srinivasan 2003),
18
the Lagrangian formulation (Nguyen and Pooran 1989; Geng et al. 1992; Liu
et al. 1993), and the principle of virtual work (Wang and Gosselin 1998; Tsai
1991; Kim and Lee 1992; Kock and Schumacher 2000) concluded that the
and the requirements, i.e., the purpose of evaluating the dynamics, whether it
reported are not rigorous. In the field of machine tools, the trend is to try to
adopt existing hardware for controlling the PKMs. However, the use of
the performance of the system in the long term (Merlet 2002). Some
et al. 2002). Wang (Wang et al. 1995) and Zheng (Zheng and Haynes 1993)
presented a neural network control scheme and showed its superiority over
proposed (Li et al. 2003) to control a machine tool, and the Popov hyperstable
tracking control scheme has been proposed (Huang et al. 2004; Huang and
19
implemented (Zuo et al. 2002; Dallej et al. 2006b; Andreff et al. 2007). Lastly,
the combination of more than one single control strategies that takes
relatively unexplored.
where the PKMs can be best utilized according to their capability. These
include applications where flexibility, accuracy and high loads are essential
for success. Most of the previous research studies were focused on issues,
industry.
industry is producing smaller batches and uses more common platforms and
components. This increases the need for greater flexibility within the
20
manufacturing operations and stimulate new approaches to designing and
cooperative manipulators can check its own performance and correct any
detected inaccuracies.
1999; 2000; Fassi and Wiens 2000; Neugebauer et al. 2000). Therefore, one
21
tools on accuracy and stiffness but rather on the flexibility of accomplishing
22
CHAPTER 3
produce a required industrial part. Nowadays, almost all machining tasks are
obtain the tool paths required to cut the material. Modern CAD and CAM
software are able to reflect changes in a part design almost instantly in the
part program. This allows late changes to be included in the production cycle,
but without interfering with the entire design process from the beginning.
package often comes together with standardized machine tools libraries that
of CNC machine tool. Moreover, they develop speeds and feeds data
required shape and size of the tool, the speed and feed rate, and the orientation
23
of the tool relative to the work-piece. These parameters are different from one
program also prescribes a set of cutter location (CL) points assigned to cut
a specific machine tool. This process is called post-processing. Thus, the post-
package. The post-processor has the ability to output the correct syntax for a
particular machine tool and transform coordinate systems with respect to the
specific arrangement within the machine tool. The standard syntax for most
program has been generated, it is stored in a file which is then fed to the
move the machine tool along a linear and/or circular path interpreted from the
to overcome the limitations of the machine tool drivers, which may cause tool
of a SP such that many sampled points are used. The controller of the
move the actuators to certain positions with various speed settings. Fine
24
tuning is performed to obtain the optimum PID parameters to allow actuators
configuration, both Stewart platforms can move together in order to move the
rotary axes can be changed in addition to spatial motions along the Z, Y and
basically a six-legged structure which can perform 6-DOF motions, it has the
communication and automated tool path generation. These systems are able
to model the parts, and perform measurements and interference checking with
high precision. They are used as a virtual prototyping tool to evaluate design
requirements and verify errors before the designed part is sent to be machined.
electronic format. The tool path needs to be generated using either the CAD
transferred to the CAM system each time when there is a design change. This
has the tendency of slowing down the production process. Currently, there is
25
no specific CAM system or post-processor for machine tools based on SP as
SP has not been widely used for machining applications. Therefore, tool path
tool path has to be converted in order to run the tool path in a SP-based
machine tool.
is described as follows:
2. The CL data are computed from the set of CC points. The method for
CC-CL data conversion must include the geometry of the cutting tool
control.
26
4. The machine commands are converted into an NC part program in a
The tool path is modified or reconstructed entirely in such a way that the cost
which produces the output as a solid model. The solid model can be compared
with the desired part and the efficiency of the optimization strategies can be
evaluated.
further processing of the tool path is done through analysing the NC codes.
27
effector module to perform a variety of operations, such as drilling, milling,
of structure, have limited payload due to their inherently large moving masses
of their components. This surfaces the needs for powerful actuator systems,
amount of heat from the motors and bearings. Designing a PKM machine tool
the moving mass. In operation, PKM only moves its end-effector mass. The
acceleration and speeds are achievable. It also minimizes the error on the final
are averaged instead of added, which is the case in serial manipulators. PKM
consists of fewer mechanical bodies and each structural linkage is built from
the same components. It is suited for modular design that would reduce the
service and maintenance costs. Finally, the operating cost is lower because of
the lower energy consumption and faster material removal rate (Fassi and
Wiens 2000).
28
CHAPTER 4
AND IMPLEMENTATION
similar structures. The spindle is attached to the tool-SP in Figure 4.1a. This
between the moving platform and the base produce the motion. Universal
joints are used to connect the actuators to the base and ball-socket joints are
used to connect the actuators to the moving platform, which holds the spindle.
named the table-SP. The table-SP works with the tool-SP, and it is thus
configuration where the tool-SP and the table-SP are both installed on a frame.
the table-SP. The table-SP can move the work-piece relative to the tool-SP to
provide access to locations further on the work-piece which are outside the
29
larger movement range for the work-piece to achieve a larger overall
Base of
Tool-SP
Universal
joint
Leg
actuated
by an
internal
motor
Moving
Platform
Tool
30
Moving
Platform
Ball-
socket
joint
Leg
actuated
by a
motor
Universal
joint
Base of
Table-SP
(b) Table-SP
31
Figure 4.2 Extended Configuration of the cooperative manipulators
base. This arrangement allows the moving platform to move based on the
32
ZP
Moving XP YP P
ai
Platform {P}
li
ZF
Base
YF bi
XF {F}
frame {F} and a moving platform coordinate frame {P}. The position vector
bi denotes the position of the centre of the universal joint of leg i in {F} and
the position vector Pai is defined in {P} pointing to the location of the centre
of the ball-socket joint of leg i. The legs are represented by vectors li defined
in {F}. If FRP and q = [qxqyqz]T are the rotation matrix and a position vector
expressing the pose (orientation and position) of {P} relative to {F}, li can be
li = F RP P ai + q − bi (4.1)
This equation is well known as the inverse kinematic formula. The leg
length can be computed by computing the length of this vector. The values of
the leg lengths must take into consideration the initial length offsets of the
33
On the other hand, the forward kinematic model that is used to
calculate the pose given the leg lengths is a difficult problem which is usually
kinematic solution of this pose, which gives the six leg lengths, Lg =
[Lg1Lg2Lg4Lg4Lg5Lg6]T
2. Compute the partial derivative 6×6 matrix J of the pose vector, dX,
4. Repeat steps (2)-(4) until (La – Lg) is less than a certain pre-defined
The initial pose can be set as the home position of the moving platform.
The algorithm will give a robust solution of the correct pose if the pose is
within the range of the manipulator movement and not near to any singularity
configurations.
In this thesis, the subscript ‘2’ is used to denote all the kinematic
li 2 = F2
RP 2 P 2 ai 2 + q2 − bi 2 (4.3)
34
λi 2 = li 2 − LOi 2 = Li 2 − LOi 2 (4.4)
Both the tool-SP and table-SP are built from commercially available
components. The links and connecting parts are fabricated in the workshop at
Figure 4.4 shows the tool-SP before it was installed on the frame as a
part of the cooperative manipulators. Figure 4.5 depicts the main components
of the tool-SP. Figure 4.5a shows a Physik Instrumente M-235 series actuator
ultra-low friction, heavy duty ball screw. This ball screw is driven by a closed-
SEIKO ball-socket joint, SRJ006C. The movable parts of the ball-socket joint
have a very low frictional resistance due to its rolling joint structure under
preload, achieving high precision with little clearance. Compared with other
and they are also much smaller in size. They are optimal for achieving high
precision, high rigidity and downsizing of the PKM. Figure 4.5c is a universal
joint with needle bearing. It is designed to maintain low backlash for critical
35
excellent for continuous operation applications. The joint has rigid axial
The aluminum
block for
attaching the
tool spindle
36
The tool holder is attached to the moving platform. The tool holder is
designed so that the tool height from the moving platform can be adjusted.
attached on top of the moving platform using two M10 screws (Figure 4.6).
The spindle is fixed on to the aluminium block. The tool can be moved up
and down through the slot on the aluminium block. Figure 4.6 presents this
arrangement.
Adjustable
tool height
The controller for the tool-SP is the PC-based controller cards. One of
control and it comes with incremental encoder position feedback signals. The
37
axes can be programmed either independently or synchronously to allow
multi-axis motion. Power is drawn from the PC power supply. Therefore, the
built-in PID controller, and a desired position and velocity can be specified.
The controller card comes with C/C++ library that can be used for
the operations.
actuators and passive joints. Its actuators are driven by servo motors with a
dedicated power supply. Therefore, the power rating is higher than the tool-
SP and the table-SP can move a larger payload. The actuators are also
38
controlled by a PC controller card. The main difference lies on the passive
joint selection in the tool-SP and the table-SP. The table-SP is designed for a
larger workspace and requires passive joints that have high maximum tilting
and the joint clearance in the design of passive joints themselves with respect
to price. The joint clearance affects the accuracy of the moving platform
position and orientation, especially for the ball-socket joints. Higher joint
Thus, although the table-SP has a larger workspace, the expected accuracy is
Figure 4.8 shows the table-SP without the frame. The kinematic
chains are the same as the tool-SP. The table-SP is designed for carrying the
work-piece which can be fixed on top of its moving platform using fixture.
The motor at each leg is driving the leg length through a pulley and a ball
screw to convert the rotary motion to linear motion. Such a design allows the
motor to be larger and hence has a higher power rating to drive heavier load.
A high precision encoder is installed on the rotor of each motor to sense the
39
Figure 4.8 The table-SP (outside the frame)
The ball-socket joint and the universal joint, which connect the legs
to the moving platform and the base, are shown in Figure 4.9. There are
components that are fabricated in the workshop besides the joints. The passive
joints are selected according to the size and power rating of the actuator. The
ball-socket joints and the universal joints have working angle limits of 35 and
60 degrees, respectively.
40
Figure 4.9 The passive joints of the table-SP
SPiiPlus PCI controller card installed on the PC. The controller can perform
various functions and generate motion profile for testing each motor. The
vendor has supplied the program manager by which the servo parameters can
using a discretization method (Merlet 2006) and the results with respect to
41
independent variables are plotted so that optimum geometric parameters can
platform can be predicted without driving the links to their limits. During the
simplicity, the main relationship between joints location attached to the base
α° Y
α°
120° X
120° 120°
Ra
Legend:
= Joint
attachment ai
α°
42
β°
Y
120° 120°
Rb
120°
Legend:
β° β° = Joint
attachment bi
(b) Base
The base radius is always greater than the moving platform radius to
application, however, there are many factors that can affect the design
constant (α, β) and (Ra, Rb) and plot the workspace characteristics with respect
to two variables. The search range is defined for α, β, Ra, and Rb. It can be
43
Table 4.1 Search range for the dimensional synthesis
Ra 25mm 75mm
Rb 50mm 100mm
with each pair of the dimensional design parameters held constant. From the
which can include workspace and footprint ratio. This process can be repeated
6
x 10
2
Workspace Vol.(mm )
3
1.5
0.5
0 60
100 90 80 40
70 60 50
Rb Ra
44
5
x 10
11
10.5
Workspace Vol.(mm3)
10
9.5
8.5
40
30 40
30
20
20
10
β
10
α
The six universal joints which connect the Stewart platform’s legs to
the base are located at point bi, where i=1, 2,… 6. These points bi are located
along the perimeter of a circle and the centre of this circle coincides with the
origin of the base frame {F} at the centroid of the base platform. Similarly,
the six ball-socket joints which connect the Stewart platform’s legs to the
moving platform are located at point ai, where i=1, 2,… 6. The points bi are
45
located along the perimeter of a circle which centre coincides with the origin
of the moving platform frame {P} at the centroid of the moving platform.
This arrangement is shown in Figure 4.12 for the tool-SP. The circle radii rF
and rP for the base platform and the moving platform are different for the tool-
SP and the table-SP according to their dimensions. Furthermore, the joints are
positioned based on angles θai and θbi with reference from the positive X axis
of the respective frame. Thus, the coordinates of the joint positions in the
{F} θai XF
rF {F}
ai
{P} XP
rP θbi
{P}
bi
46
Tool Stewart platform Table Stewart platform
{F} {P} {F} {P}
i ai bi ai bi
152.5 cos (180° ) 70 cos (150° ) 250 cos ( 45° ) 125 cos (15° )
152.5 sin (180° ) 70 sin (150° ) 250 sin ( 45° ) 125 sin (15° )
1 0 0 0 0
152.5 cos ( 210° ) 70 cos ( 240° ) 250 cos ( 315° ) 125 cos ( 345° )
152.5 sin ( 210° ) 70 sin ( 240° ) 250 sin ( 315° ) 125 sin ( 345° )
2 0 0 0 0
152.5 cos ( 300° ) 70 cos ( 270° ) 250 cos ( 285° ) 125 cos ( 255° )
152.5 sin ( 300° ) 70 sin ( 270° ) 250 sin ( 285° ) 125 sin ( 255° )
3 0 0 0 0
152.5 cos ( 330° ) 70 cos ( 0° ) 250 cos (195° ) 125 cos ( 225° )
152.5 sin ( 330° ) 70 sin ( 0° ) 250 sin (195° ) 125 sin ( 225° )
4 0 0 0 0
152.5 cos ( 60° ) 70 cos ( 30° ) 250 cos (165° ) 125 cos (135° )
152.5 sin ( 60° ) 70 sin ( 30° ) 250 sin (165° ) 125 sin (135° )
5 0 0 0 0
152.5 cos ( 90° ) 70 cos (120° ) 250 cos ( 75° ) 125 cos (105° )
152.5 sin ( 90° ) 70 sin (120° ) 250 sin ( 75° ) 125 sin (105° )
6 0 0 0 0
47
4.3.5 Frame Design
4.13a) which can be used to determine the size of the stationary frame. Based
on the volume of the working space, the dimension of the frame structure is
designed (Figure 4.13b). The main frame structure consists of aluminium bars
which were used at the four corners to provide better rigidity and minimize
For the top frame structure, all the aluminium bars (40 x 40 mm) were
welded together and they can move up and down and can be tightened to the
aluminium bars using angle brackets with M8 bolts and nuts. For the top
aluminium cover plate, four M8 holes were drilled and tapped to hold the base
plate of the tool-SP. Another twelve holes were also drilled to hold the cover
48
below the tool-SP, which can be installed onto the frame as shown in Figure
4.15. Therefore, the table-SP is not used and it can be assumed that the table-
the tool-SP is not the zero position in the NC code programming. In the NC
clamped onto the machining table relative to the coordinate frame {W}. By
knowing the transformation between coordinate frames {W} and {F}, the
program.
Top
aluminum
cover plate
(a) (b)
49
Stewart Platform Base {F}
{P}
Moving
Platform
Tool
Work
piece {W}
50
4.5 Extended Configuration
moving platform of the table-SP, as shown in Figure 4.16. This table-SP acts
as a movable table. The idea is to enable the work-piece to move beyond the
workspace of the tool-SP so that the tool can access points that are not
the tool-SP and table-SP are attached with the coordinate frame {F}. The
because both SPs base are installed to the frame, the relation between
Therefore, the machining task can be performed using both SPs in the
single configuration.
51
Figure 4.16 Machining a clamped work-piece on the table-SP with the tool-
SP
52
CHAPTER 5
PLATFORM
Stewart platform can be determined and the effect of different designs on the
are modelled, namely, the ranges of the leg actuator, collisions between the
legs, and the physical limitations of the passive joints (Harib and Srinivasan
Each leg of the Stewart platform has a minimum and maximum length
due to its mechanical limit. Therefore, each leg length must satisfy
Equation 5.1, where Li,min and Li,max are the minimum and maximum
The ball-socket joints and the universal joints have their respective
and universal joints, and they must satisfy Equation 5.2, where θi,min
53
and φi,max are the maximum operating angles of the ith ball-socket
joints and the ith universal joints, respectively. The value of the current
Let jai and jbi be the unit vector along the axis of symmetry of the ball-
be the unit vector along the leg axes, which can be computed by
dividing the leg vector by its magnitude, ni = li / Li. The current angle
of the ball-socket joints and the universal joints are calculated using
Equation 5.3.
coincides with the centre of the leg axis. Hence, in order to avoid any
54
location. However, the most commonly used 3-DOF workspace is the 3-DOF
platform where the origin {P} is located. The algorithm to find the workspace
in Figure 5.1. This algorithm is known as the discretization method for the
workspace with a certain size (a box with a length, a width, and a height). The
box size can be approximated by choosing a size that contains the workspace.
The algorithm is to check all the points whether they are reachable by the
moving platform and store the result. After all the points have been tested, the
and it is more accurate than the actual volume with a smaller cell size. Let
Nreach be the number of reachable points, the calculation of the volume of the
workspace can be implemented by adding the volume of all the cells that are
Cartesian coordinates.
55
V = N reach ∗ ∆X .∆Y .∆Z , (5.4)
with the orientation (0°, 0°, 0°). All the points inside the envelope in the figure
1mm x 1mm x 1mm, and the total volume is 386,680 mm3. After obtaining
the result of the workspace, the limitation of the position and orientation of
the moving platform can be verified. Hence, the motion of the platform can
56
Get kinematic parameters of
the Stewart platform
description
Collection of
points (position
coordinates) to be
tested from the test
space
END
NO
Inverse kinematics, determine
leg lengths and the passive
joints angle
YES
Any constraint
violated?
Figure 5.1 The flowchart to plot the workspace of the Stewart platform
57
-290
-300
-310
Z
-320
-330
-340
50
50
0
0
X -50 Y
-50
hardware and software. A user interface has been developed for controlling
the Stewart platforms. The interface allows the user to define platform motion
the Stewart platforms. The constraints of the passive joints that limit the
can be provided in the following ways: manual input to the user interface,
58
pre-programmed data file, and 6-DOF joystick or a combination of joystick
and keyboard. Figure 5.3 shows a user interface. In this interface, there are a
few selections to be set in order to control the Stewart platforms, and they are
listed as follows.
control.
59
Figure 5.3 User Interface for Stewart platform control
options of the interface in order to avoid any damage that may be done to the
system status whenever possible. The interface displays various options from
which the user can select using the PC pointing device (mouse). The user can
opt to run the motion in graphical model shown in the interface without
moving the actual Stewart platforms to check whether the execution of the
reference positions. If the platform is initially high above the home position,
function homes one axis at a time and hence if the platform is too far away
60
from the home position, the process can damage the joints. Therefore, there
is an option to select the axis to perform the home function. The user is
expected to know the state of the Stewart platform to select the axis to move.
scale factor and sampling time. The scale factor is the value of how much the
platform motion. The scale factor determines the range of the movement of
the actual Stewart platform corresponding to each axis. This option enables
the user to perform a rapid motion on the Stewart platform. Secondly, the
sampling time is the waiting time between two subsequent data reads from
the joystick. This is related to the response time of the Stewart platform to the
joystick movement. The smaller the value, the more responsive is the Stewart
platform and vice versa. There is a minimum sample time to prevent over
speeding the moving platform. The joystick input can be treated as a distance
command is being executed. If the real motion option is selected, the Stewart
the background such that for each movement, the values of the joint
coordinates and the location of the moving platform are updated. Based on
these values, the program is set to stop immediately and will halt all the
61
the state of the Stewart platform is always known to prevent violation of the
interface provides a basic and simple way to control the Stewart platforms.
5.3 Programming
built-in mathematical functions and matrix operations that make it ideal for
vendors.
As has been stated above, there are two input methods to the interface
point motion, jog motion and spline motion. They are explained as follows,
62
1. Point-to-point motion: The response of the Stewart Platform is
option uses a constant velocity for each leg. For machining, this motion
scheme is used.
platform. However, the values sent to the controller are the leg length
values. Therefore, the program calculates the distance travelled per each
sampling time period. The spline function is not suitable for manual
the specified motion profile. Hence, this motion scheme results in lower
position error.
3. Jog motion: The joystick movement and keyboard input are interpreted
program sends the computed velocity values of each leg to the controller.
no velocity interpolation. The side effect is that the resulting motion has
63
the joint coordinates, the resulting moving platform motion profile may
relationship between the location of the moving platform and the leg
to update the required leg lengths. This process ensures that the moving
platform follows the desired trajectory between the starting and final
position.
are sent to the controllers after ensuring that the constraints are satisfied.
decreased or increased according to the state of the input and the magnitude
64
Figure 5.4 Point-to-point motion control flowchart
For the spline motion, the program has to calculate the leg lengths in
each sampling period. The flowchart for the spline motion program is shown
in Figure 5.5. The input is interpreted as velocity reference for the moving
65
Figure 5.5 Spline motion control flowchart
The jog motion program interprets the input from the joystick or
period, the new leg lengths are calculated using inverse kinematics. The
velocity of each leg is determined by dividing the difference between the new
and the current lengths by the sampling time. The velocity is sent to the
66
Figure 5.6 Jog motion control flowchart
file. The trajectory for machining can be obtained from the NC code for a
certain job. In this program, more data points (via-points) between subsequent
discrepancies between the desired and the actual motion trajectory can be
limitation on the minimum sampling period to allow sufficient time for the
67
Figure 5.7 Interpolated motion control flowchart
parts and generate the tool paths for these parts. The CAM output is the NC
The NC codes used for controlling a machine tool are based on certain
shown in Figure 5.8. Table 5.1 summarizes a variety of NC codes and their
68
to accept input values of coordinates of the tool in millimetres, a specific G-
Character Function
A Additional rotary axis parallel and around the X axis
B Additional rotary axis parallel and around the Y axis
C Additional rotary axis parallel and around the Z axis
D Tool radius offset number, Depth of cut for multiple
repetitive cycles
E User macro character, Precise designation of thread lead
F Feed rate, Precise designation of thread lead
G Preparatory function
H Tool Length offset number
I Incremental X coordinate of circle centre or parameter of
fixed cycle
J Incremental Y coordinate of circle centre
K Incremental Z coordinate of circle centre or parameter of
fixed cycle
L Number of repetition
M Miscellaneous function
N Sequence or block number
O Program number
P Dwell Time, program number, and sequence number
designation in subprogram
Sequence number for multiple repetitive cycles
Q Depth of cut, shift of canned cycles
Sequence number for multiple repetitive cycles
69
R Point R for canned cycles, as a reference return value
Radius designation of a cycle arc
S Spindle-speed function
T Tool-function
U Additional linear axis parallel to X axis
V Additional linear axis parallel to Y axis
W Additional linear axis parallel to Z axis
X X coordinate
Y Y coordinate
Z Z coordinate
Since the codes beginning with ‘G’ and ‘M’ are most commonly used,
these codes are usually referred to as ‘G-code’ and ‘M-code’. In the current
work, the G-code and coordinate codes, such as ‘A’,’B’,’C’,’X’,’Y’, and ’Z’
are sufficient to control the Stewart platform as it does not have many
Char Data Char Data Char Data Char Data Char Data
N 01 G 00 X 24 Y 45 F 40
program block can consist of several G-codes. The list of G-codes that are
70
Table 5.2 G-codes used for Stewart platform and their meaning
stored in the data file and are used to control the Stewart platform according
Figure 5.9 and Figure 5.10 show the representation of the 3D model and
71
dynamic control of the Stewart platform in the SimMechanics toolbox and
72
CHAPTER 6
linear coordinates and three angular coordinates describing the translation and
tool-SP and 6-DOF from the table-SP. For machining applications, the task
type of the machining job. For the 2.5- and 3-axis machining, there are three
angular motion can be defined. These 1- or 2-DOF angular motions add two
extra coordinates.
configuration or with both the tool-SP and the table-SP in the extended
configuration.
73
6.1.1 Single Stewart Platform Configuration
moving platform of the tool-SP and the object is the work-piece fixed onto
the machining table. The detailed description of the single configuration with
base platform of the tool-SP and the work-piece are positioned in such a way
that it is parallel to the machining table and the origin of frame {F} and frame
{W} are aligned. The object or the work-piece is fixed onto the machining
table below the tool-SP with a distance of h. There is a distance of dt from the
moving platform to the tool tip. The tool is attached to the tool-SP in such a
way that the tool axis is coincident with the Z-axis of {P}.
position and the orientation of the moving platform frame {P} with respect to
74
ZF
{F} YF Tool-SP
XF ZP
Height between
the tool-SP base {P} YP
and the Tool height dt
machining table XP
h
ZW
{W}
YW Work-piece
coordinate-frame
XW
Object or
work-piece
describing the rotation of the tool. In this research, the orientation of frame
rotations. First, by rotating frame {P} about axis ZF with an angle θ1, and
rotating about the new axis XP with an angle θ2 , and then rotating about the
new axis ZP with an angle θ3. Thus, the rotation matrix can be derived as
Equation 6.2.
F
RP = Rθ1 Rθ2 Rθ3
75
Cθ 1 − Sθ 1 0
Rθ1 = Sθ 1 Cθ 1 0
0 0 1
Cθ 2 0 Sθ 2
Rθ2 = 0 1 0
− Sθ 2 0 Cθ 2
Cθ 3 − Sθ 3 0
Rθ3 = Sθ 3 Cθ 3 0 (6.3)
0 0 1
object. For the PKM based machine tool, the input coordinates can be defined
as the tool contact point with the work-piece. The vector representing the
are the rotation. The coordinate description in Equation 6.1 can be mapped to
the 6-DOF coordinate system for the tool-SP. However, according the
complexity of the machining task, fewer than 6-DOF may be required. For 3-
76
For machining, the coordinates Φ, Γ are used for defining the 4th and
the 5th rotation axes of the tool. The rotation coordinates Φ, Γ are defined as
follows. First, by rotating about the new axis XW with an angle Φ, and then
rotating about the new axis ZW(1) with an angle Γ. The last orientation
coordinate Ω corresponds to the rotation of the tool along the tool axis which
is redundant with the spindle rotation (cutter rotation for removing material).
Hence, this last orientation is not needed for machining and it represents an
extra DOF that could be used to optimize a certain index. This extra DOF
comes from the fact that the machining task only requires maximum five-axis
description above. The first two input angle coordinates are mapped to the
first two rotation coordinated of the tool SP, θ1 = Φ, θ2 = Γ . The free DOF
CΦ CΓ − SΦ CΦ S Γ
F
RP = SΦ CΓ CΦ SΦ SΓ (6.5)
− SΓ 0 CΓ
optimum pose of the moving platform (Bonev et al. 2002). The rotation
77
C 2 Φ CΓ + S 2 Φ SΦ CΦ ( CΓ − 1) CΦ SΓ
SΦ CΦ ( CΓ − 1) S Φ CΓ + C Φ S Φ SΓ
F 2 2
RP =
− S Γ CΦ − SΓ S Φ CΓ
(6.6)
contact point with respect to frame {W}. These coordinates can be mapped to
the position of the tool contact point FTc (x’,y’,z’) by transforming the input
coordinates to the tool-SP base frame {F}. The transformation of frame {W}
with respect to frame {F} is given as Equation 6.7 based on the assumption
stated above.
1 0 0 0
0 1 0 0
F
TW = (6.7)
0 0 1 −h
0 0 0 1
translated to z’ with offsetting the values according the location of the origin
x’ = x ; y’ = y ; z’ = z - h (6.8)
and the centroid of the moving platform, the position of the moving platform
must be adjusted to achieve the correct location of the tool. This issue can be
78
described in Figure 6.2. The vector dt . vt is parallel to the tool axis as shown
in Figure 6.2. Therefore, the moving platform (the origin of frame {P})
position with respect to frame {F} in order to achieve the tool contact point
at FTc can be calculated as Equation 6.9. where vt can be obtained as the unit
vector of the Z axis of the moving platform with an opposite direction. The
ZF
Tool-SP
{F}
OF YF
XF
ZP
{P}
F
XP OP (qx , qy , qz)
d t . vt YP
F
Tc = (x’ , y’ , z’) Tool
Figure 6.2 The moving platform position to reach the tool contact point
79
{W} F
Xi XP
x’ = x
x , y, z y’ = y
z‘=z-h
= - d t . vt
Φ, Γ , Ω
θ1 = Φ
θ2 = Γ
θ3 = Ω = 0 ;
or θ3 = Ω = - Φ
In the extended configuration, both the tool-SP and the table-SP are
placed below the tool-SP and installed in the frame. The height difference
between the Stewart platform bases is h2. The base frames {F} and {F2 } are
made parallel to each other and their base frame origins are aligned. Each SP
table-SP are defined as the position and the orientation of the moving platform
80
The transformation matrix of frame {F2} with respect to frame {F} is
1 0 0 0
0 1 0 0
F
TF2 = (6.11)
0 0 1 −h 2
0 0 0 1
the tool and the work-piece in order for the tool to reach the desired tool
contact point on the work-piece by using both the tool-SP and the table-SP.
This means in order to fulfil the coordinate map, the tool-SP must move its
moving platform in such a way that the tool tip can reach the desired tool
contact point. This tool contact point is determined from the input coordinate
{W}
Xi = [x , y , z , Φ, Γ , Ω]T .
platform of the table-SP. It is assumed that the work-piece is setup such that
the description of the input coordinates in frame {W} is the same as the input
coordinates in frame {P2}. Thus, one can also write the input coordinate as
Equation 6.12.
{P2}
Xi = [x , y , z , Φ, Γ , Ω]T (6.12)
In addition, the tool-SP carries the tool so that the tool tip can reach
frame {F} (the base frame of the tool-SP). Figure 6.5 explains the
81
the work-piece and the tool contact point that must be reached by the tool tip
are the same point such that, Xi = Tc must be fulfilled for the condition of
configuration (Equation 6.9). However, the tool contact point FTc (x’,y’,z’)
{P2}
must be calculated from the input coordinates Xi . In order to determine
F
Tc (x’,y’,z’), the translation input coordinates x,y,z can be transformed with
respect to frame {F}. According to Figure 6.5, the tool contact point with
respect the table-SP base frame {F2} is the addition of two position vectors
in Equation 6.13, where F2RP2 is the rotation matrix of frame {P2} relative to
frame {F2}.
qx 2 qx 2 x
{F2}
Xi = q y 2 + F2RP2 {P2}Xi = q +
y2
F2
RP 2 y (6.13)
qz 2 qz 2 z
the relationship of the base frame {F} and {F2} is known in Equation 6.11,
x ' 0 qx 2 x 0
F
Tc ≡ y ' = Xi + 0 =
{F2} q + F 2 R y + 0
y2 P2 (6.14)
z ' −h2 qz 2 z −h2
The table-SP moving platform has three extra DOF. As can be inferred
from Equation 6.14, although the input coordinates are defined relative to
82
frame {P2}, the translation of the moving platform is not restricted as long as
the tool-SP moves the tool such that its tip touches the tool contact point FTc.
ZF
{F} YF
Tool-SP
XF ZP
{P} YP
Tool height dt
Height between
XP
the tool-SP base
and the table-SP
base ZP2
h2
YP2
Object or XP2 Table-SP
work-piece {P2}
ZF2
{F2} YF2
XF2
83
ZF
{F}
OF
YF
XF
ZP
{P}
F
XP OP (qx , qy , qz)
d t . vt YP
F
Tc = (x’ , y’ , z’) Tool
{P2}
Xi = (x , y , z)
ZP2 Work-piece
The intended location of
the tool contact point on
the work-piece from {P2} Table-SP
input coordinates YP2
F2
XP2 OP2 (qx2 , qy2 , qz2)
ZF2
{F2}
YF2
OF2
XF2
Figure 6.5 Coordination of the tool-SP and the table-SP to reach the input
the rotation is arbitrary. However, the tool-SP has two rotation DOFs that are
used for machining and the third DOF is not used because it rotates about the
tool axis. This is also true for the table-SP. To simplify rotation coordinates
mapping, the rotation axes of the table-SP are made the same with the
84
rotation-axes of the tool-SP, so that the angles can be added arithmetically.
The first two rotation coordinates of the tool-SP are used for machining, as
the last one is a free DOF that can be set arbitrarily. It can also be set for the
table-SP that the first two rotations are the DOFs that are used in machining.
The two rotation axes (Φ, Γ ) are mapped to the four rotation DOFs of both
Figure 6.6 describes the rotation axes used in the tool-SP in the single
configuration. The table-SP Euler angles must have the same convention as
the Euler angles of the tool-SP so that the angle can be combined. The table-
SP first rotation is along the ZP2 axis, which is parallel to the ZP axis of the
tool-SP. So, the first input rotation coordinate can be mapped using Equation
6.15..
Φ = θ1 – θ12 (6.15)
The minus sign in Equation 6.15 comes from the fact that the table-
direction. Moreover, the rotation matrix for the first rotation on the table-SP
Cθ 1 − Sθ 1 0
Rθ12 = Sθ 1 Cθ 1 0 (6.16)
0 0 1
85
The second rotation axis of the table-SP is defined as parallel to the
second rotation axis of the tool-SP, so that the angle can also be summed
Γ = θ2 – θ22 (6.17)
The second rotation axis is along the new axis XP after the first rotation
Figure 6.7. The rotation matrix for the second rotation on the table-SP can be
S 2θ 1 (1 − Cθ 22 ) + Cθ 22 − Sθ 1Cθ 1 (1 − Cθ 22 ) Cθ 1Sθ 22
Rθ22 = − Sθ 1Cθ 1 (1 − Cθ 22 ) C 2θ 1 (1 − Cθ 22 ) + Cθ 22 Sθ 1Sθ 22 (6.18)
−Cθ 1Sθ 22 − Sθ 1Sθ 22 Cθ 22
Although it is possible to define the third rotation, the use of the DOF
may not be necessary for the current machining application. Therefore, the
third rotation is fixed at 0, or it can be defined that the rotation matrix of the
Rθ32 = I (6.19)
sequence.
F2
RP2 = Rθ12 Rθ22 Rθ32 (6.20)
86
ZP’’ ZP
YP’’
YP’
θ2
θ2
θ1 YP
θ1
XP
XP’
ZP’’ ZP2
YP’’
YP2’
θ22
θ22
θ12 YP2
θ12 θ22
XP2 XP’
(of the tool SP)
XP2’
XP2’’
87
{W}
Xi = {P2}Xi F
XP and F2XP2
x , y, z =
= - d t . vt
Φ = θ1 – θ12
Φ, Γ , Ω Γ = θ2 – θ22
θ3 = Ω = 0 ;
or θ3 = Ω = - Φ
θ32 = 0
the structure and minimize the force requirement of the actuators while
velocities and the force acting on the actuators, and the velocities and the twist
88
of the end-effector (Stoughton and Arai 1993). If the Jacobian matrix
becomes singular (i.e., when the condition number reaches infinity), the
manipulator will gain additional freedom and lose its rigidity and ability to
expresses the amplification of the relative error in the joint coordinates to the
error of the moving platform pose. Thus, the condition number has to be as
small as possible. The following are the derivation of the Jacobian matrix of
lɺ = J(X) Xɺ (6.21)
T
Xɺ = [ qɺ T θɺT ]T = qɺ T ω T is the Cartesian velocity of the end effector.
Using inverse rate kinematics (Harib and Srinivasan 2003), both Jacobian
vectors on the axis of the legs yield the extension rates of legs of the tool-SP
(6.22)
i = 1,2,..6 (6.23)
89
The Jacobian matrices can be obtained through comparing the
ɺl = J Xɺ = J qɺ P
F
(6.24)
ω
F 2 qɺ P 2
lɺ2 = J 2 Xɺ 2 = J 2 (6.25)
ω2
Thus, the Jacobian matrix for the tool-SP and the table-SP are
nT ( RP ⋅ P a1 × n1 )
F T
1
T
( RP ⋅ a2 × n2 )
F P T
n
J = 2
⋮ ⋮ (6.26)
nT ( RP ⋅ a6 × n6 )
F P T
6
12
T
( RP2 ⋅ P a22 × n22 )
F2 T
n
J 2 = 22
⋮ ⋮ (6.27)
nT ( RP2 ⋅ a62 × n62 )
F2 P2 T
62
κ = J J− (6.28)
κ 2 ( X 2 ) = J 2 J −2 (6.29)
90
where J denotes the 2-norm of the Jacobian matrix J. Since the Jacobian
matrix is a function of the moving platform pose, the condition number is also
rotational elements, i.e., the last three columns of the Jacobian matrices are
divided by the radius of the mobile platform of each manipulator (Ma and
is defined.
f ( X , X 2 ) = κ ( X ) ⋅ κ2 ( X 2 ) (6.30)
The condition number ranges from 1.0 to infinity, i.e., 1 < κ < ∞ .
Thus, the value of the scalar multi-variable function f has the same range and
= (6.31)
91
where χ = diag [k1,k2,…,k6] and k1,k2,…,k6 are the axial stiffness of the legs
which direction is much affected by the maximum mean of the stiffness value.
formulated for each SP in the following. If the actuated leg lengths are
= (6.32)
infinitesimal motion of the end-effector can exist although all leg lengths are
fixed.
determine the redundant parameters so that the resulting pose will give the
best dexterity for a given task. The reachable workspaces of both platforms
92
optimization will solve the coordinates of the moving platforms, FXP = [qx ,
qy , qz , θ1 , θ2 , θ3 ]T for the tool-SP and F2XP2 = [qx2 , qy2 , qz2 , θ12 θ22 , θ32 ]T
the coordinate mapping, the value of θ32 is equal to zero, and the value of θ3
so that the resulting trajectory is smooth. The algorithm will search for the
optimum pose with the lowest condition number, but within the adjacent
range from the previous pose. It is done by adding the following constraints.
( F
X Pi −1 − ∆X ) ≤ F
X Pi ≤ ( F
X Pi −1 + ∆X )
( X P 2i −1 − ∆X ) ( X P 2i −1 + ∆X )
(6.33)
F2
≤ F2
X P 2i ≤ F2
By limiting the range of the next pose, the trajectory will not change
drastically from one point to another point. The fmincon function only
estimates the local minimum within a certain range. If the first guess for all
that the solution will not converge to the target range specified. Therefore, the
93
previous pose is used as the first guess for the next computation. The
computation will begin from a constant guess only for the first point of the
simulation are shown in Table 6.1. In addition, since the fmincon function is
the first guess used was qz = qz2 = Z0/2, and the other parameters are zero ( qx
= qx2 = x0 =0 ; qy = qy2 = y0 = 0 ).
result is shown in Figure 6.10 for qz. Although the proposed algorithm had
94
successfully solved the trajectory, the result is not satisfactory. From the
figure, it can be seen that there are discontinuities in these solutions. The
additional smoothing constraints, the optimization with the same input was
repeated. The results are shown in Figure 6.11. No discontinuity was observed,
such that the actual motion based on this trajectory will be smooth. Hence,
with the added constraints, this trajectory planning becomes practical and
First guess value (qz, qZ2, θ1, θ2, 250 mm , 250 mm , 0°, 0°, 0°, 0°
θ12, θ22)
Smoothing constraint
∆X (1 mm, 1mm, 1mm, 0.25° , 0.25° ,
0.25° )
Input {F2}Xi (X, Y, Z, Φ, Γ, Ω)
Start pose 10 mm , 10 mm , 1 mm, 5°, 5°, 5°
End pose 10 mm , 10 mm , 50 mm, 5°, 5°, 5°
Z0 500 mm
x0 , y0 0 mm , 0 mm
95
∆qy
Mean (mm) 2.023 0.145
Standard Deviation 0.58 0.45
Mean of first derivative 0.675 0.312
(mm/s)
Standard Deviation of first 1.13 0.87
derivative
∆qz
Mean (mm) 0.678 0.087
Standard Deviation 1.3 0.72
Mean of first derivative 2.134 1.536
(mm/s)
Standard Deviation of first 0.345 0.287
derivative
qz
96
qx
(a)
qy
(b)
97
qz
(c)
Figure 6.11 A smooth trajectory from the algorithm with extra constraint;
showing: (a) qx, (b) qy, (c) qz (in mm, t = step number, T = total number of
steps = 50)
Software
cooperative manipulators has been presented. The tool-SP and the table-SP
are three options that can be done with the cooperative manipulators:
98
1. Only the tool-SP moves with the cutting tool, the table-SP is
configuration.
In this research, the second option is not used. This is due to the design of the
table-SP that has a larger workspace but lower accuracy. To maintain high
move at different timings. This is due to the observation that the results are
not satisfactory because the error is too high when both SP moves at the same
time during cutting. Tool-SP is used to perform the material removal process,
table (in the single configuration). The fixture consists of an L-shape locator,
which provides the reference point, and two clamps which provide the
clamping force. Clamps are fixed to the platform through two screws. A slot
is designed in each clamp, hence the position of the screw is adjustable and
the fixture will be able to accommodate various work-piece sizes within the
99
Part Design
100
A part can be designed using a CAD software. In this research, a CAD
machining tool path (NC code) to remove the material from a stock, so that it
becomes shaped as designed in CAD. There are two ways of creating a design
6.14.
generated in MasterCAM.
The first approach is easier when the user is more familiar with
SolidWorks or other CAD software that can export Parasolid format. Because
an intermediate data file is used, some design features may not be fully
recommended if the user is familiar with the modelling of the part directly in
CAM. This approach will not have any incompatibility issues as all the
In the next few sections, the first approach will be used, but with more
SolidWorks, so that the part design and tool path generation can be done in
101
the SolidWorks user interface. This method can only process up to 3-axis
machining jobs. For 5-axis machining, the second approach must be used. In
addition, Figure 6.15 shows machining parameters that can be set for a
Machining Input
Parameters
(a)
Machining Input
Parameters
(b)
In order to generate the tool path from the NC codes generated from
102
translator that reads the tool path instructions issued from MasterCAM and
is written in MatLab.
NC file to a compatible format, the first few lines up which contain additional
information till the line before ‘G21’ should be deleted as shown in Figure
6.16 in blue colour. Besides that, the block numbers should be removed by
choosing the menu ‘NC Functions’, and select ‘Remove Block Numbers’
103
Figure 6.17 Block Numbers removal in the NC code
mapping defined in Section 6.1. There are two steps in conducting the MatLab
post-processor. First, the program will scan the NC file and extract the G-
Cutter Location (CL) Data. This process continues from the previous step,
where the via points are inserted in between two subsequent CLs with a
must be performed to check whether all the points are reachable to ensure
104
are plotted continuously in blue colour. If some parts of the simulated
trajectory are plotted in red colour, then these parts are not accessible by the
Stewart platform. In the case that the whole trajectory has filled the entire
machine this trajectory in such a way that the trajectory starting point is near
the boundary, so that the trajectory can be covered by the workspace as shown
in Figure 6.18c.
50
-50
-100
-150
-200
-250
-300
-350
100
0 100
50
0
-100 -50
-100
(a)
-270
-295
-280
-300
-290
-305
-300 -310
-315
-310
-320
-320
-325
-330 -330
-335
-340
100 100 50
50 50 50
0 0 0 0
-50 -50 -50 -50
-100 -100
(b) (c)
105
6.3.2 Determining Machine Origin
The machine origin is defined as the position (0,0,0) of the tool when
all the Stewart platform joint coordinates are zeroed (home position). This is
used as the reference for determining the start point of the trajectory. The start
point may not be at the machine origin, but its location is determined with
respect to the machine origin. The procedure to determine the machine origin
is done manually. In the single configuration, the tool-SP is moved to its home
position. Next, the distance along the base ZF axis between the tool tip and
X_Machine_origin = X_Current_Cutter_Location;
Y_Machine_origin = Y_Current_Cutter_Location;
tool-SP and the table-SP are configured in their home position before the
procedure is conducted. The distance between the tool- and the table-SP
106
Current
Cutter
Z_distance Location
Machine
origin
After the stock has been defined, a sketch is created on the top surface
(Figure 6.20). The Extruded Cut feature is used to generate the pocket. The
tool path is generated using the MasterCAM Feature Based tool path function
107
that will recognize any feature after the stock dimension has been defined.
The cutter diameter is also selectable in the interface. Each tool path group
curve or complex surfaces with a large number of data points, because one
whole chunk of the tool paths will involve huge amount of memory for
processing in MatLab and may halt the Stewart platform in the middle of an
operation. The resulting trajectory and the actual machining are shown in
Figure 6.21.
Figure 6.20 Sketch for the ‘NUS’ pocket on top of the stock model
108
(a)
(b)
rectangular base. The machining is done in two stages: roughing and finishing.
Accordingly, the MasterCAM generates one tool path group for each tool path
109
group. The roughing creates a pocket with a rectangular island. The finishing
the dome shape (Figure 6.23). The finishing tool path is generated based on
addition, the tool path must be contained in the pocket to make sure no tool
110
(a) Pocket with an island
Surface to be machined
111
(a) Tool path
(b) Result
112
6.4.3 Machining a Test Part
each stage a feature is machined. The depth of the cut is selected within the
safe limit of the tool. Machining was done after simulation in MasterCAM.
The machined work-piece is shown in Figure 6.26. It can be seen that the
cooperative manipulators can machine such a part with a good finish. The
part with thin wall features (Figure 6.27). Thin walls with thickness of 0.1
walls with lower thickness could also be machined. However, due to the
brittleness of the material, the thin walls collapsed as the tool passed through
designed as shown in Figure 6.28. With two stages of machining, facing and
113
(a) Part model and machining tool path
Figure 6.25 The first test part comprising of 2-axes machining features
114
Figure 6.26 Machined test part
115
(b) Machining results
Figure 6.27 The second test part with thin wall features
116
Figure 6.29 Three-axis machining result
five-axis machining. This tool path processor has the same rotation axes and
The wall of the island has an angle of five degrees. By machining this part,
the Stewart platform can demonstrate the accessibility of the cutting tool to
reach the tool nutation angle of five degrees while the tool precession angle
in Figure 6.31. In addition, an S-shape swarf wall was also designed as shown
117
in Figure 6.32. This shape could be a component of a more complex part such
as a turbine blade.
118
(a) 3D model of the part with the S-shape swarf (wire frame display)
119
CHAPTER 7
work-piece that can be reached by the tool on the tool-SP. The work-piece
distant points reachable for every direction of the tool in the combined
workspace evaluation. In addition, the distance between the bases of the two
Stewart platforms is 1200 mm and the distance from the tool-SP moving
platform origin to the tool tip is 150 mm. These data are based on the actual
circles are used among the layers of the workspace plot as shown in Figure
7.1. This approximation guarantees that all the points in the inscribed circles
are inside the actual workspace. Thus, it is named the inscribed workspace.
collection of tool location relative to the object resulting from the movement
120
location in the table-SP workspace is tested. Consider Figure 7.2, for an
the table-SP. The table-SP can position the work-piece such that the tool-SP
description is used. While the tool tip reaches the point Tc in the workspace,
the tool tilt angle can be changed in the conic face of β (Figure 7.3) . Based
on this, the smallest reachable nutation angle (βmin) is defined as the smallest
value of the nutation angle of the moving platform while the tool tip is at point
Tc and the precession angle α changes continuously in interval [0, 360°]. The
machining workspace is then defined as the collection of points that the tool
tip can reach given a value of the smallest reachable nutation angle, βmin
various tilt angles of the tool axis have been simulated. The result is presented
in Table 7.1.
121
60
40
Y (mm) 20
-20
-40
-60
-60 -40 -20 0 20 40 60
X (mm)
Figure 7.1 Inscribed circle (blue) inside the workspace boundary (2D
workspace)
800
750
700
650
600
550
500
200 200
0 0
-200 -200
-440
-450
-460
-470
-480
-490
50
50
0
0
-50 -50
122
250
200
150
100
50
0
400 400
200 200
0 0
-200 -200
-400 -400
Change curve of
minimal reachable
nutation angle βmin
Change curve of
maximal reachable
nutation angle βmax
Tool axis
Tc(x,y,z)
123
Table 7.1 Workspace Volume with various tilt angles of the tool axis
information when developing a process plan and tool paths is examined. Since
the workspace of the tool-SP is not a rectangle and it changes size and shape
based on the tool angle, a visual method is called for. The method is to use
the 3D plot of the tool-SP workspace for a given tool angle in the CAD/CAM
system to choose the location and orientation of the work-piece. The work-
can change during machining which allows the tool-SP to access a larger
volume.
124
Several parameters influence the work volume as it is applied to
process planning and tool path generation. First, the volume is based on the
position of the moving platform, and the orientation of the tool axis vector. If
the tool is not tilted with respect to the table, three-axis machining, the
workspace takes on a different shape, in this case larger. Large tool axis vector
tilt angles would be required to remove the needed material, if the volume is
much smaller. This is the case because positioning uses a finite resource, the
Because only five DOF motions are used for machining, the rest of
the DOFs can be used for optimizing certain indices. However, to minimize
error in the motion and maintain accuracy in machining, it is advised that only
the tool-SP is used to cut the material and the table-SP is stationary in
position and orientate the object or work-piece with respect to the tool-SP and
the tool-SP is used to perform the intended operation or the cutting of the
material.
inherent problem where the kinematic parameters are not exactly equal to the
125
of the required joint angles will result in an accurate end-effector pose. The
determine the relationship between the actuated joint angles and the end-
effector pose, (2) measurement and recording of the manipulator poses, (3)
actuated joint angles, and (4) correction for the geometric parameter errors in
and leg offsets. The main purpose of the calibration is to find the actual
kinematic parameters that have deviated from their nominal values due to the
important for profiling geometric entities that cause motion errors of the end-
affect the motion of the end-effector. Errors considered in the calibration are
geometric errors and they are treated as static values or constants. The
following explanation uses the designation for the tool-SP, although the same
126
1995). These kinematic parameters are of main importance and they are
namely, the leg length offset LOi (one parameter), locations of the universal
(three parameters each). Hence, there are seven kinematic parameters per leg.
an arbitrarily fixed coordinate system located at the base frame {F} and the
moving platform {P}. The absolute locations of the origins of frame {F} and
frame {P} have no effect on the motion error, because the kinematic
parameter errors are defined within the Stewart platform closed kinematics
loops relative to these origins. Therefore, six parameters that are defined with
respect to frame {F} and six parameters with respect to frame {P} can be
b1, b2, Pa1, Pa2 are set to the nominal/reference values and the other 30
which is used to calibrate the Stewart platform. The digital indicators are
digital indicators; however, they must be installed with the axes of the gauges
perpendicular to the table. The purpose is to measure the distance along the
axes of the gauges between the machining table and the moving platform.
Figure 7.4 shows an illustration of the Stewart platform with the setup. The
coordinate frames {T} and {W}, refer to the tool coordinate system and the
127
world coordinate system, respectively. The digital indicator measurement is
achieved relative to the world coordinate system. The world coordinate frame,
{W} is attached on the machining table on which the digital indicators are
(a) 3D model
128
(b) Coordinate systems
129
A numerical nonlinear gradient descent optimization method is used
to solve for the real kinematic parameters from the measurement data. The
moving platform and determine the error between the desired and the actual
locations. The readings of the digital indicators give different values than the
η), i=1..N, where η denotes the real (unknown and to be found) kinematic
indicators, and Qi is the leg length computed from the inverse kinematics
that gives the nominal values of readings of the digital indicators when the
Equation (7.1).
Y1 − F1 ( Qi ,η )
min ... (7.1)
η
YN − FN ( Qi ,η )
minimize the error by finding the real kinematic parameters. This equation is
also known as the Least Squares Formulation (LSF). The LSF procedure
130
determines the real kinematic parameters, which are initially set according to
the nominal parameters of the Stewart platform. When the errors in Equation
7.1 are minimized, the set of kinematic parameters that best represent the
function Fi in Equation (7.1) gives the pose of the moving platform from the
the expected digital indicator readings based on the machining table location,
on which the frame {W} is attached, with respect to the base coordinate frame
{F}. Using the end-effector location that has been calculated, the expected
digital indicator readings are determined by finding the distances between the
applying the method to the actual Stewart platform calibration with real data.
In the simulation, a real model is assumed and used to test the calibration
method. Table 7.2 summarizes the deviations of the real model from the
nominal model. The nominal model is used for initialization of the kinematic
parameters at the start of the error minimization in the LSF. Table 7.3 presents
the various simulation results with a random error applied in the measurement
data. This error emulates the noise and disturbance in the measurement. The
131
The calibration process has been performed in several stages to
improve and obtain the best geometric parameters that can minimize the
errors. Some measurement errors due to instability were observed during the
calibration process where the data obtained for the same pose differed by
compensate this error, two sets of data were taken for each configuration
during measurement and the average was recorded. The result shows the
calibration using optimally selected poses gives the least error. Table 7.4
frame which origin is at the SP’s base. While it is true that the calibration of
each SP may yield worse result than the simultaneous calibration of both SPs,
the latter is actually not feasible for practical reasons. For the calibration to
work, the coordinate frame must be fixed accurately. In the setup of 2-SP
respect to each other is not known beforehand. Although the values can be
optimized. The number of parameters is quite large and the optimization has
approximation is used.
132
Table 7.2 Real model for calibration simulation
nominal and real digital indicators reading , PE(x): pose error mean in α
error reduction).
133
Table 7.4 Kinematic Parameters after Calibration
In the case that the dial gauges are not perfectly mounted onto the
perpendicularity for each gauge, ϒi , i=1..3. This error angle can be described
in Figure 7.5. The dial gauge measurement axes are supposed to be parallel
have deviation. Thus, the actual distance reading from each gauge should be
corrected by a factor of cos ϒi for each dial gauge. These parameters can be
equation.
where the superscripts 0 indicate that the variables or parameters are at their
134
counter this problem. A priori notions of accuracy of the measurement that
principle are considered in the TLSF. In this context, the LSF does not take
words, it is assumed that the measurement is perfect and the real leg lengths
are known without any discrepancies. Consequently, it only finds the ∆η that
Vector parallel to ZW
Measurement axes
Zw ϒi
Yw External Plate
Xw
On the other hand, the TLSF needs to consider non-zero ∆Q and ∆Y.
If this is the case, the TLSF must find the best combination of ∆Q, ∆Y, and
∆η. Because these errors are assumed to be Gaussian with zero mean, the best
1995):
N
χ2 = ∑ ∆Q W ∆Q + ∆Y
i =1
T
Q
T
WY ∆Y + ∆η T Wη ∆η (7.3)
135
where WQ, WY, Wη can be obtained from the inverse of the covariance
subject to (7.1). With the TLSF, it is ready to calibrate the real case with
TLSF simulations are performed with the same settings with the previous
simulation using the LSF. Equation (14) shows that the TLSF tries to guess
what is happening in the real case where errors are not just caused as a result
from only the kinematic parameters deviation, but also error angle, noises and
the calibration results with error angles imposed on the dial gauges.
nominal and real digital indicators reading , PE(x): pose error mean in α
error reduction).
136
7.3.2 Pose selection for Calibration
collected from the various poses or configurations of the PKM. These data,
identification Jacobian matrix, JP. This matrix has components that are
∆Y = J P . ( X P ) ∆η (7.4)
parameters, and XP is the pose set (collection of the moving platform location
difference in ∆η (Huang et al. 1998). There are four options that have been
proposed in the literature for the definition of the observability index from the
matrix JP (Nahvi and Hollerbach 1996; Daney 2002). One of the best indices
Index, O given in equation (5), where σi are the singular values of JP ordered
137
In this research, a swarm-based PSO (Particle Swam Optimization)
(Kennedy and Eberhart 1995) search method shown in Figure 7.6 is proposed
to search for the best set of poses for calibration measurement. The PSO
method models the optimum candidates as moving particles over the search
domain, which is the PKM workspace. The aim is to find a pose set within
the workspace of the PKM that maximizes the objective function O(JP(XP)),
between the kinematic errors and the measurement variables. The framework
but with PSO as its search method. The steps are as follows:
for XN+1.
b. Compute the best position of each particle and find the global best
138
c. Update the particle position (move the solution candidates to new
d. Stop if the global best objective value is not improving for several
The XN+1 found is the pose represented by the last global best
particle position.
4. Repeat steps (2) and (3) until X- = XN+1, which implies that the
newly added pose is not improving the current pose set, and stop.
The initial pose set is initialized randomly over the workspace. Next,
the PSO is conducted to search for one additional pose such that if this pose
is added to the group, the group will have the best performance index; this is
the AddFind step. Immediately after a new pose has been added to the group,
the RemoveFind step is executed to find one pose of the group that if this pose
is removed, the group will have the best objective value. These two main
value for the pose set can be found. The PSO search domain is defined by the
configurations are often found near the boundary of the workspace. This
139
implies that the initial guesses of the PSO search can be taken near the
optimized in the AddFind process based on the global best pose. The PSO
algorithm is stopped after 40 iterations and it is concluded the pose with the
pose in the group by calculating the index. If one pose is added, and then one
and the pose to be removed are the same, then the search for pose stops.
140
-34
x 10
10
7
Global
6
Best
5
2
0 5 10 15 20 25 30 35 40
been investigated. Figure 7.8 presents the plot of the error in the kinematic
test, random poses are used. It can be concluded that a larger number of poses
will lead to better calibration results. In addition, there is a limit where the
141
-5
x 10
1
mean
0.9 Standard Deviation
0.8
0.7
0.6
Error in mm
0.5
0.4
0.3
0.2
0.1
0
20 30 40 50 60 70 80 90 100 110 120
Number of poses
Compensation
long as the selected poses are measurable and reachable. The calibration
using the draw-wire sensors installed between the base and the moving
mechanism using the wire sensors, so that the wire sensor readings can fully
capture the moving platform pose. As the wire sensors are used for the
142
Stewart platform. This arrangement allows machining and measurement to be
Draw-wire
sensor pool
different output according to the length of the wire that has been drawn out
of the sensor. The output is a voltage signal instead of the reading of the wire
length. Hence, a calibration of the draw-wire sensor is also needed to find the
relationship between voltage output and the wire length as well as to check
143
In order to stabilize the voltage input to have a steady result, an
10 μm is used to calibrate the wire sensor. The results shown in Figure 7.10
show good linearity. With these data, the bias offset in voltage reading is
can be calculated.
length
before and after the calibration. Early investigation shows that the accuracy
of the Stewart platform differs significantly such that it can be seen in the
shape of the work-piece in Figure 7.11. Before calibration, the shape is more
like an ellipse than a circle. The accuracy of Stewart platform improves after
144
calibration took place. The updated kinematic parameters resulted in a better
the surface such as shown in Figure 7.12. With careful selection of the
145
distance between two subsequent via points, the interpolation can give
sufficient number of points in order for the tool-SP to machine a good surface
finish.
146
manipulators, the author tried his best to clear off the chips during machining
metal. Hence, no tool jam was observed although the chips were piling around
the work-piece during machining. However, for metal cutting the chips could
jam the tool. An automated chips removal system may need to be installed on
the cooperative manipulators for metal cutting. In this research, the study is
limited to machining wax because it is soft and can be machined quite easily.
The machined part can reflect the tool movement of the cooperative
configuration), a part with a tapered wall was machined. The inclination angle
of the wall is 10 degrees. The maximum angle in one axis of rotation of the
tool-SP is about 13-15 degrees. The result is shown in Figure 7.14. In addition,
147
Figure 7.15 shows the tool-SP when it was machining the tapered wall. As
can be seen, at the configuration during machining the tapered wall, the tool-
SP has almost reached the limit of some of its ball-socket joints. In fact, the
ball-socket joint constraint is the main limitation for the rotation of the tool.
Thus, the table-SP in the extended configuration could be used to position the
work-piece to allow the tool to approach the work-piece with a larger rotation
angle.
Figure 7.14 A tapered wall machined from the most tilted angle of the tool
of the tool-SP
148
Figure 7.15 The tool-SP in its most tilted configuration
verify the error of the calibration process. This verification method includes
the identification of error factors from the Stewart platform kinematics and
trigger probe was used to measure points on the machined surface. The CMM
generated from the local part coordinates obtained from the vertices of the
faces forming the surface of the work-piece as shown in Figure 7.16. Figure
7.17 shows the 3D plot of the measured points on the surface. The mean of
149
the absolute deviation from the defined work-piece before and after
7.5
6.5
5.5
5
10
10
8
6
4
0 2
0
Figure 7.16 Surface model and extracted vertices of the dome shaped test
part
8.5
7.5
6.5
5.5
10
5
0 5
2
4
6
8 0
10
150
8.5
7.5
6.5
5.5
5
10
10
8
5 6
4
2
0 0
Since the emergence of the first Stewart platform based machine tool
decades ago, researchers are investigating whether the full potential of the
and modularity. Nevertheless, the design of these PKMs is the key to bring
out these benefits to the machining industry. This researcher has experienced
Stewart platform. In addition, the frame in which the Stewart platforms are
difficult to be achieved with the current setup. The tool-SP was built with the
best joints in the market, and presently, it has the highest accuracy among the
151
others. However, it is still below the performance of conventional CNC
machines. Finally, the accuracy is not satisfactory because a few main causes:
the vibration of the frame structure, tool holder misalignment, and mostly
In addition, there are a few aspects which are worth mentioning in this
the workspace efficiently. For example, an additional rotary table with one or
two DOF would increase the tool approach angle of the tool-SP. The rotary
table could add more flexibility compared to the table-SP. Since the tool-SP
workspace is strongly affected by the tool orientation, the rotary table could
replace the orientation capability of the platform, making the job easier and
This is similar to the decoupling concept in the serial manipulator, where the
hand performs all the translation and the wrist performs all the rotation
required by the task. Fortunately, the table-SP can act as a multi-DOF table.
Thus, one can see the second SP not as another manipulator, but as an
sources that are hard to address include localized heat generation in the
152
screw/nut system, axis errors, and nonlinear kinematic mapping errors. It is
interesting that the calibration issue is also related to stiffness analysis, work-
piece placement, and controller development. All of these other issues can
affect the accuracy in different ways. Due to its complexity and time-
of a PKM is important when dealing with the effect of leg inertia and
dynamics behaviour. What is required for the control system of a PKM is the
check that the trajectory does not exceed the workspace limits. The
provide a maximum, stiffness along the machining path between the work-
153
CHAPTER 8
8.1 Conclusions
has been presented, including its brief history, literature review, applications,
structural stiffness, larger payload capacity and lower friction. The primary
and positioning. The focus is to control and plan the motion of Stewart
been fabricated and developed in this research. A frame is designed for the
calibration and machining purposes are installed and attached on this frame,
154
such as wire-sensors, camera, cabling compartments, machine tool
attachment point, and other peripherals that are needed for the control systems.
interface which uses a mouse and a joystick as devices to control the motion
of the Stewart platforms. In addition, a user can control the movement of the
in the various coordinate systems, namely, the pose of the moving platform
and the joint coordinates of the actuators. Inverse and forward kinematics
analyses are included in this control system to observe the motion of the
direct solution while the forward kinematics can be solved by using the
parameters and joint constraints on the motion of the Stewart platforms and
to provide useful information about the workspace, joint angle, and dynamics
of the leg lengths. The graphical simulation program is also used with the user
to correct the positioning of the moving platform of the Stewart platforms and
compensate for the deviations of the kinematic parameters from the nominal
155
formulated based on a standard parameters set that is accepted in most
research literature. The analytical formulas are developed and simulated prior
to applying the data collected from sensors. In particular, dial gauges and
calibration results are useful to improve the absolute and relative accuracy
machined.
This work has incorporated two fields of research, namely, the field
156
studies of the proposed cooperative manipulators have led to some generally
applicable concepts for hybrid manipulation for tasks that require high
stiffness and large workspace. The following points summarize the research
platforms.
manipulators.
tool, the proposed method for finding optimum motion planning of two
157
8.3 Future Work
on the moving platform and using the additional feedback for the
dynamic effects caused by the interaction of the tool and the work-
158
3. The mechanical design can be reviewed to increase the present
working envelope. The results have shown that the table-SP can
application requirement.
explored. A few research studies on this area have proven that the
159
BIBLIOGRAPHY
Andreff N., Renaud P., Martinet P., Pierrot F.. (2004). Vision-based
Andreff N., Dallej T., Martinet P., (2007). Image-based visual servoing of a
Bhattacharya S., Hatwal H., Ghosh A., (1998). Comparison of an exact and
965-974.
Bonev I.A., Ryu J., (2001). A new approach to orientation workspace analysis
36(1): p. 15-28.
Bonev I.A., Zlatanov D., Gosselin C.M., (2002). Advantages of the modified
Euler angles in the design and control of PKMs. In: Proceeding of the
Germany; p. 171-188.
160
Carbone G., Ceccarelli M. (2005). A serial-parallel robotic architecture for
Chanal H., Duc E., Ray P., Hascoët J.Y., (2007). A new approach for the
Chen S.-H., Fu L.-C. (2006) The forward kinematics of the 6-6 Stewart
Cheok K.C., Overholt J.L., Beck R.R. (1993). Exact methods for determining
Chiacchio P., Pierrot F., Sciavicco L., Siciliano B. (1993). Robust design of
393-403.
161
Clavel R., Helmer P., Niaritsiry T., Rossopoulos S., Verettas I. (2005) High
4671.
Dallej T., Andreff N., Mezouar Y., Martinet P. (2006b) 3D pose visual
162
Daney D., Madeline B., Papegay Y. (2005). Choosing measurement poses for
robot calibration with the local convergence method and Tabu search.
Daney D., Andreff N., Chabert G., Papegay Y. (2006). Interval method for
345-69.
Fassi I., Wiens G.J. (2000). Multiaxis machining: PKMs and traditional
163
Fichter E.F. (1986). A Stewart-Platform based manipulator: general theory
5(2): p. 157-182.
Gallardo, J., Rico J.M., Frisoli A., Checcacci D., Bergamasco M. (2003).
Geng, Z., Haynes L.S., Lee J.D., Carroll R.L. (1992). On the dynamic model
Geldart M., Webb P., Larsson H., Backstrom M., Gindy N., Rask K., (2003).
6(3): p. 281-290.
164
Gosselin, C., Angeles J. (1990c). Kinematic inversion of parallel
Gough, V.E. Whitehall S.G. (1962) Universal tire test machine. In:
1962, p. 117-137.
Han C., Kim J., Kim J., Park F.C., (2002). Kinematic sensitivity analysis of
37(8): p. 787-798.
47(9): p. 1426-32.
p. 1565-1568.
165
Decision and Control. Nassau, Bahamas; 14-17 December 2004. p.
5228-5223.
Huang T., Wang J., Gosselin C.M., Whitehouse D.J. (1999). Determination
Huang T., Whitehouse D.J. (2000). A Simple yet Effective Approach for
Huang T., Chetwynd D.G., Whitehouse D.J., Wang J. (2005). A general and
239.
1978.
166
gears. In: Proceedings of IEEE Conference on Robotics and
1923
Lallemand J.P., Goudali A., Zeghloul S. (1997). The 6-DOF 2-Delta parallel
2003. p. 2164-2167.
Liu G.F., Wu Y.L., Wu X.Z., Kuen Y.Y., Li Z.X. (2001) Analysis and control
2001. p. 3748-3754.
Liu, K., Lewis F., Lebret G., Taylor D. (1993). The singularities and
Marquet F., Company O., Krut S., Pierrot F. (2002) Enhancing parallel robots
167
on Robotics and Automation. Washington, DC, USA; 11-15 May
2002. p. 4114-4119.
Masory O., Wang J., Zhuang H. (1997) Kinematic modelling and calibration
541.
2005 p. 2468-2473.
Merlet J.P. (1999) Parallel Robots: Open Problems. In: Proceedings of 9th
168
Merlet J.P. (2002) Still a long way to go on the road for parallel mechanisms.
2002.
Merlet J.P., Parallel Robot. Solid Mechanics and Its Application., Dordrecht:
Springer, 2006.
402.
Nahvi A., Hollerbach J.M. (1996) The noise amplification index for optimal
Neumann K.E., (2006). Exechon Concept. In: The 5th Chemnitz Parallel
Nguyen C.C., Pooran F.J. (1989). Dynamic analysis of a 6 DOF CKCM robot
Nguyen C.C., Zhou Z.-L., Antrazi S.S., Campbell C.E., Jr. (1991) Efficient
169
platform-based manipulator. In: Proceedings of IEEE SoutheastCon
121(1):p. 21-25.
Parikh P.J., Lam S.S.Y. (2005). A hybrid strategy to solve the forward
170
Pierrot F. (2002) Parallel mechanism and redundancy. In: Proceedings of 1st
Pritschow G., Eppler C., Garber T. (2002). Influence of the dynamic stiffness
333.
Refaat S., Herve J.M., Nahavandi S., Trinh H., (2007). Two-mode
Renaud P., Andreff N., Lavest J.-M., Dhome M. (2006). Simplifying the
171
Conference on Robotics and Automation. Nagoya, Aichi, Japan; 21-
Tanaka W., Arai T., Inoue K., Takubo T., Park C.S. (2006) Calibration
172
Tarokh M. (2007) Real time forward kinematics solutions for general Stewart
Terrier M., Giménez M., Hascoët J.Y., (2005). Verne - a five-axis parallel
219(3): p. 327-336.
use of serial and parallel kinematics for machines tools. CIRP Annals
173
Voglewede P.A., Ebert-Uphoff I., (2005). Overarching framework for
Wampler C.W., Hollerbach J.M., Arai T. (1995). An implicit loop method for
Wang H., Xue C., Gruver W.A. (1995) Neural network control of a parallel
2938.
Wang J., Masory O. (1995) On the accuracy of Stewart Platform – Part I the
Wang J., Gosselin C.M. (1998). A New Approach for the Dynamic Analysis
334.
Wang, S.-M., Ehmann K.F. (2002). Error Model and Accuracy Analysis of a
174
Wang, Y. (2006) An incremental method for forward kinematics of parallel
1-5.
Wang, Z., Liu W., Lei Y. (2001). A study on workspace, boundary workspace
Weck M., Staimer D., (2002). Parallel Kinematic Machine Tools – Current
34(7): p. 1103-1126.
Yurt S.N., Őzkol I., Kaya M.O., Haciyev C., (2002). Optimization of the PD
Zhang D., Wang L., Lang S.Y.T. (2005). Parallel Kinematic Machines:
Zheng G., Haynes L.S. (1993). Dynamic control of a parallel link manipulator
19(4): p. 265-76.
Zheng X.Z., Bin H.Z., Luo Y.G. (2004). Kinematic analysis of a hybrid serial-
175
Zhuang H., Roth Z.S. (1993). Method for kinematic calibration of Stewart
Zhuang H., Yan J., and Masory O. (1998). Calibration of Stewart Platform
Zuo A., Wu Q.M.J., Gruver W.A. (2002) Stereo vision guided control of a
125-130.
176
PUBLICATIONS FROM THIS RESEARCH
2. Saputra. V.S., Ong S.K., Nee A.Y.C., A PSO algorithm for mapping
review.
177