See discussions, stats, and author profiles for this publication at: [Link]
net/publication/277244707
Rapid prototyping using robot welding : slicing system developmens
Article · January 1996
CITATIONS READS
0 122
2 authors:
Fernando Ribeiro John Norrish
University of Minho University of Wollongong
132 PUBLICATIONS 1,103 CITATIONS 104 PUBLICATIONS 1,810 CITATIONS
SEE PROFILE SEE PROFILE
All content following this page was uploaded by Fernando Ribeiro on 01 June 2015.
The user has requested enhancement of the downloaded file.
RAPID PROTOTYPING USING ROBOT WELDING -
SLICING SYSTEM DEVELOPMENT
Fernando Ribeiro and Prof. John Norrish
Universidade do Minho University of Wollongong - Faculty of Engineering
Electronica Industrial Department Northfields Avenue
4800 Guimarães Wollongong NSW 2522
PORTUGAL AUSTRALIA
ABSTRACT generated by the program in order to achieve the
With direct deposition of metal a new Rapid Prototyping required bead geometry and stable operating
process had been developed at Cranfield University in the last parameters. These parameters were derived from
couple of years. The process entails the use of a Gas Metal Arc welding studies carried out by Norrish and parametric
fusion welding robot which deposits successive layers of metal equations generated by Ogunbiyi and Norrish [2] [3].
in such way that it forms a 3D solid component. First, a solid
model is drawn using a CAD system, then data indicating the The robot program is automatically generated and can
kind of layers and dimension is incorporated and the solid is be simulated with the use of a robot simulation
automatically sliced. This slicing routine also generates reports program to check for collisions or other problems
on the welding time and conditions for the production of the such as access. The robot program may be modified if
component and automatically generates the robot program.
The slicing routines used in traditional rapid prototyping
necessary then compiled and downloaded to the
processes did not cope with this welding deposition technique robot.
and therefore a new slicing process was developed specificaly
for this process. A few attempts had been made before getting CONCEPT OF SLICING
to the final solution. All these attempts are described in this
paper as well as the final solution. To build up a component using the gas metal arc
welding process, the robot has to deposit several
INTRODUCTION TO RAPID PROTOTYPING USING layers of metal on top of each other. The location of
FUSION WELDING these layers have to be mathematically defined to
The current process was first described by Ribeiro allow the robot to follow them during the building
in and therefore only a brief description of the process. These weld layers need to be drawn in a
process will be given here [1]. To reduce prototyping CAD program in order to visualise them. The weld
time, it has often been stated that there was a need to deposited has some thickness and the path the robot
automate the production of ‘one off’ components for has to follow is the centre line of the weld. The
development and evaluation. Casting, which may be individual weld runs are considered to be ‘slices’ of
used for components of this type is an expensive and the initial CAD solid.
time consuming process especially if used to make The main objective of this paper is to explain the
only ONE component. Most of the rapid prototyping different stages or attempts to generate the slices. The
processes evolved in response to this requirement use slices are 2D mathematical entities like lines, arcs or
resin based materials which are not always suitable polylines (a polyline is a group of one or more ARCS
for the purpose of testing. Metal based prototypes are and/or LINES). These polylines represent the welding
often required and additional processing is necessary trajectory to build up the desired component or in
to convert resin based materials to a useful form. other words the centre line of the weld bead.
In the process used here the component is formed Following are described the attempts taken their
by melting and depositing the metal using the GMA problems and advantages/disadvantages.
welding process. A CAD drawing system is used to
create the initial solid shape and a welding robot is MANUAL PROGRAMMING
used to manipulate the welding torch. The first attempt was to prove that it was possible
After having drawn the component in a CAD, a to make a component using this metal deposition
slicing ‘add-on’ of the CAD program is implemented technique, to prove that this system would work even
to produce the desired layers which will form the if manually programmed. Therefore, the CAD
robot program. It is also necessary to enter additional package was used to draw the first component as
data to indicate the bead geometry and the material LINES/ARCS instead of drawing it as a real solid.
used. The welding parameters are automatically These LINES/ARCS represent the path that the robot
would have to follow (welding trajectory) to make the required some adjustments of the shape drawn most
component. commonly in the bead height (or distance between
It was decided that a very simple shape would be ARCS). Because the shape was made up of around
used to test this technique. A 200 mm height ‘VASE’ about 200 ARCS, when the layer height had to be
as shown in Fig. 1 was chosen. changed this entailed redrawing the remaining 199
This shape was fairly easy to draw as a solid ARCS manually.
model but as a set of geometrical arcs it was more This task was so impractical that it forced an
difficult. Firstly, it took a very long time to draw attempt to automate the adjustment of the co-
because every ARC has a different radius from the ordinates and radius of the arcs, by using a
previous one and a different Z co-ordinate (if a simple spreadsheet. Several parameters were defined in cells
cylinder was to be drawn this way, an array which when edited would change the co-ordinates
instruction could be used). This method of drawing and radius of the arcs automatically. This technique
was time consuming and repetitive and considered facilitated the creation of the model but the shape was
not to be suitable for the final implementation of the not stored in a CAD program which meant that the
technique. It was however pursued in order to fully available CAD tools could not be used.
test the welding techniques. An advantage of using a spreadsheet however is
After the shape (several ARCS) was drawn it was that some useful values can be calculated from the
saved as a DXF file format and then imported into a cells. Arc Length can be extracted from the radius of
robot simulation package (WorkSpace 3.3) to create each arc, total welding length can be calculated,
the robot program. timing for the operation can be calculated if another
The only import file format that the simulation cell is created containing the welding speed, etc. A
package accepts is DXF. This simulation program spreadsheet also allows the user to create a report
was then used to create the robot program to follow which generates informative values relative to the
these geometrical ARCS. The robot language used component.
was ARLA (since the robot used was an ASEA IRb The problem with using a spreadsheet is that no
2000). A robot simulation sample can be seen in complex shapes can be 'drawn'. Only regular or
Figure 2. extruded shapes can practically be placed in a
This was again a very time consuming task spreadsheet. Although being easy to use, this option
because the instruction 'FOLLOW POLYLINE' was limits the complexity of components to be
repeated ‘N’ times where ‘N’ was the number of programmed and therefore it is not a very good
slices. For the VASE described and considering a choice for production.
layer height of around about 1 mm there were at least The spreadsheet proved to be a useful tool for
200 slices. developing the system but could not be accepted as a
Each time a FOLLOW POLYLINE command is final option.
to be used, the user has to select the polyline (with
ARCS/LINES) by clicking on it with the mouse and C PROGRAMMING IMPLEMENTATION
then selecting the command on a sub-menu. The spreadsheet option had another very
Considering the VASE above described with his 200 important limitation which was that it did not create
arcs the image seen on the screen is very confusing the robot program. There was no point in making the
due to having so many arcs on it and therefore it is spreadsheet with all the desired co-ordinates if it
very difficult to click on the correct ARC. The order could not generate the robot program automatically.
in which the arcs are selected is also very important The only way to overcome this problem was by
and has to be followed from the bottom to the top creating a C Language program which could read the
respectively. co-ordinates and radius of the arcs from the
Although very boring, repetitive, tiring and spreadsheet and write them down as a text file in the
difficult to perform, this technique proved possible to form of a robot program. This was undertaken as the
draw this kind of component. The next task was to third attempt for automating the creation of slices and
automate it. the robot program.
Since the user would have to run the C program,
EXCEL SPREADSHEET INTERFACE
the use of the spreadsheet could be avoided and
As expected, the first components to be built everything could be done in one program with a ‘user
using the manual approach needed several tests in friendly’ menu driven interface. A C program was
order to perfect the welding parameters. These tests therefore written in such a way that the user only had
to create a text file in which the required shape was creating cells and imagining the component but the
designed and variables such as the welding speed, the user had to draw the component from memory and
position of the table in relation to the robot, the had to calculate the centre point of every shape as
orientation of the welding torch and the height of the well as every dimension. The user was also limited by
layers are specified. An example of a typical text file the number of different regular shapes which were
is shown below. just 4 or 5.
The first section of this file sample ([GLOBAL]
[GLOBAL] section) allows the user to define some global
// Table centre co-ordinates variables like the location of the turn table in relation
TABLE_CENTRE_X = 895.28
TABLE_CENTRE_Y = -0.40 to the robot, co-ordinates of the centre of the table
TABLE_CENTRE_Z = 799.63 when the table is tilted, orientation of the welding
torch, geometry of the bead (such as thickness and
// Tilted table centre co-ordinates
TABLE_CENTRE_TILTED_X = 1366.60 height) as well as Boolean variables to define if the
TABLE_CENTRE_TILTED_Y = -0.10 user wants the welding instructions to be incorporated
TABLE_CENTRE_TILTED_Z = 686.40 in the ARLA program or not, if the user wants to
// Some orientations defined here generate the BUILD UP report, etc.
ORIENTATION1="Q1=0.88544 Q2=0.00018 In this example the first part built is a cone called
Q3=0.46484 Q4=0.00055" CONEBFLN and the robot ARLA program is number
ORIENTATION2="Q1=0.11111 Q2=0.22222
Q3=0.33333 Q4=0.44444" 80. Then, the definition of the cone with values for its
location, rotation in relation to the table, radius of the
// Double slash is a comment for the line
LAYER_THICKNESS = 3.5
base, radius of the top, height of the cone, etc. If the
LAYER_HEIGHT = 1.5 thickness or height of the bead are to be different
SPEED = 360.0 from those defined in the global section, these can be
// extra variables (ARLA program) defined again in this section otherwise the global
WELDING = OFF values are used. Boolean variables can also be used in
CREATE_REPORT = ON this component section. Examples may be; if the user
USE_TABLE = OFF
TABLE_INDEX = ON wants to use the table or the robot to make a circle or
the table is to be indexed before starting each circle
[CONE - CONEBFLN - 80] or if a build up report for the part is to be generated.
LOCATION_X =TABLE_CENTRE_X + 1.5 - 2.4 * 2
LOCATION_Y = TABLE_CENTRE_Y - 15 More than one entity can be written in this text
LOCATION_Z = TABLE_CENTRE_Z * 2 file and this enables the user to create more complex
ROTATION_X = 10.0 + 15.0 parts.
ROTATION_Y = 0.0
ROTATION_Z = 0.0 When this file had been written, a post-processor
RADIUS_OF_BASE= 120.0 program (written in C language by the author) was
RADIUS_OF_TOP = 120.0 used to transform this text into one or more ARLA
HEIGHT = 10.0
THICKNESS = 17.5 programs which would later be downloaded to the
STARTING_ANGLE= 0.0 robot to make the component. It would also create a
ENDING_ANGLE = 358.0 report containing timing for the operation, welding
// extra variables (welding) length, etc. In other words it would produce the same
LAYER_HEIGHT = 2.0 results as the spreadsheet but with an application
SPEED = 350.0
ORIENTATION = ORIENTATION1
specially built for the process which should be easier
to work with.
// extra variables (ARLA program) Another option which was considered was to
WELDING = OFF
CREATE_REPORT = ON create a small dedicated CAD program which would
USE_TABLE = OFF allow the user to draw simple shapes or solids. This
TABLE_INDEX = ON program could then be expanded to accept more
solids according to the needs of the system. This idea
By using a text editor to write a text file which was rejected due to the complexity of creating a
contains generic and pre-defined entities like powerful enough CAD program to be able to generate
CONES, CYLINDERS or CUBES, the use of a CAD solids. In addition, there are many CAD packages on
program is avoided but it was not possible to see the the market and the author saw no need to ‘re-invent
shape of the component on the computer screen. It the wheel’.
was easier to ‘type in’ the shape as text rather than
FINAL SLICING ROUTINE This slicing process was deeply tested and used
and several components were built. All these
The final concept considered was the use of a
components were made completely automatic, from
well known and powerful CAD package which had its
the 3D drawing up to the final component.
own programming language to manoeuvre its CAD
The main advantages of the slicing program used
data. For economic and portability reasons the CAD
was that the slices were automatically created, the
package chosen was AutoCAD from AutoDesk. It has
ARLA robot program was generated completely
its own language; AutoLisp, and this language is very
automatically and it was not essential to use a robot
powerful. In addition the whole package is user
simulation package to test it, although simulation can
friendly, easy to learn, very compatible with most
be used to save on line time.
other CAD systems and has excellent data portability.
These slicing routines are independent of the
In the technique which was devised, the user
robot used (or robot language). The ‘moving’
draws the component in separate solid shapes, to
instructions and the welding start/stop instructions are
simplify the process, and gives to each part of the
parametrised which means that should any of the
component a sequential order number. This number
hardware change, the routines still work perfectly.
represents the order in which the robot will build up
For these reasons, this process is a very flexible
the component. The only limitation in solid shape
rapid prototyping system and has been very
complexity is dictated by AutoCAD. When the user
successful for all the components made so far. As
finishes the drawing, he then calls the add-on (within
bottom line, a few samples produced with these
AutoCAD created by the author of this work) which
slicing routines and this rapid prototyping technique
comprises all the commands for automating the
can be seen in Figure 3 and Figure 4.
slicing relative to this rapid prototyping process.
Most of these tasks will be automatic but the user still
has to define some variables for example to inform ACKNOWLEDGEMENTS
the program which welding parameters to use, height
Mr. Ribeiro would like to thank John Norrish for
of each layer, etc.
his support in this project and his expertise in the
There are Global variables called
welding field and also Dr. McMaster for his academic
PREFERENCES and also variables for each part of
help. My very special thanks go to John Savill for his
the component which have to be input although
strong support in welding all of the components and
default values are always assumed. All the interface
for solving in an efficient way the practical problems
to input these values are AutoCAD like and the
which arose as well as encouraging me to new ideas.
interface is very simple to use.
A special thank you for my wife is also deserved for
Once the user has defined all the variables, he has
her understanding during the difficult periods of this
an option to slice the parts of the component. Once
project as well as for my all family for supporting all
the slices are created it is then possible to generate
my decisions.
the robot ARLA programs as well as reports with
information relative to the build up. This build up
REFERENCES
plan can then be used during the construction of the
component to check and control its production. [1] RIBEIRO, A. F. M., NORRISH, J. AND MCMASTER R.,
When the robot programs are generated these can "Practical case of Rapid Prototyping using Gas Metal Arc
be tested in a Robot simulation package to check Welding", 5th International Conference on Computer
Technology in Welding, Paris, France, 15-16 June 1994.
integrity and to detect collisions. Then the complete
[2] Norrish, J., "Advanced Welding Processes",
program can be downloaded to the robot which is Institute of Physics Publishing, 1992.
then ready to start building the component. [3] NORRISH, J., Ogunbiyi B., "An Adaptive Quality
Control concept for robotic GMA Welding", 5th
TENTATIVE CONCLUSIONS International Conference on Computer Technology in
Welding, Paris, France, 15-16 June 1994.
Fig. 1 - Vase drawn as a series of geometrical arcs
Figure 2 - Robot Simulation of the Vase build up
Fig. 3 - 'Portuguese' Vase Fig. 4 - Pint Glass
1
RIBEIRO, A. F. M., NORRISH, J. AND MCMASTER R., "Practical case of Rapid Prototyping using Gas Metal
Arc Welding", 5th International Conference on Computer Technology in Welding, Paris, France, 15-16 June 1994.
2
Norrish, J., "Advanced Welding Processes", Institute of Physics Publishing, 1992.
3
NORRISH, J., Ogunbiyi B., "An Adaptive Quality Control concept for robotic GMA Welding", 5th
International Conference on Computer Technology in Welding, Paris, France, 15-16 June 1994.
View publication stats