Vous êtes sur la page 1sur 5

Robot Arm without Using Robot Language and Its

Application to Machining Process


Fusaomi Nagata, Kosuke Nakamura and Akimasa Otsuka

Keigo Watanabe

Department of Mechanical Engineering, Faculty of Engineering


Tokyo University of Science, Yamaguchi
Sanyo-Onoda 756-0884, Japan
Email: nagata@rs.tus.ac.jp, otsuka a@rs.tus.ac.jp

Department of Intelligent Mechanical Systems


Division of Industrial Innovation Sciences
Graduate School of Natural Science and Technology
Okayama University, Okayama 700-8530, Japan
Email: watanabe@sys.okayama-u.ac.jp

AbstractA cast metal is generally produced by using a sand


mold. A foamed polystyrene mold is used as the master mold for
making the corresponding sand mold. Recently, the development
of a exible machining robot for foamed polystyrene materials is
expected in the cast metal industries because of the high cost and
inefciency of conventional large-sized CNC machine tools. In this
paper, a machining robot based on an industrial robot is proposed
for foamed polystyrene materials. A compact and light weight tool
is developed and attached to the arm tip. Also, the robot has a
novel robotic CAM system from the view point of teachingless
operation. The proposed CAM system performs the basic function
which enables the robot arm to follow not only numerical control
data (NC data) but also cutter location data (CL data) consisting
of position and normal direction vectors. The developed robotic
CAM system provides a simple interface without using any robot
languages between a well-known CAD/CAM system and the
robot arm RV1A. The basic design of the machining robot using
the robotic CAM system is presented for foamed polystyrene
materials.

I.

Sanding robot

Fig. 1. Already developed sanding robot for wooden parts and polishing
robot for aluminum molds.

given constraints and criteria are used [7]. The authors also
developed a sanding robot for wooden parts [8] and a polishing
robot for aluminum molds [9] as shown in Fig. 1, in which
the desired position and orientation of the tool was controlled
based on cutter location data. Pan et al. reviewed the recent
research progresses on the programming methods for industrial
robots, in which online programming, ofine programming,
programming using augmented reality, and future direction
of robot programming were described [10]. However, robotic
CAM system for industrial robots has not been discussed and
developed as CNC machine tools widely used in industry.

I NTRODUCTION

Articulated Industrial robots have made remarkable


progress and been applied to many manufacturing processes
such as handling, welding, painting, assembling, polishing
and so forth [1]. Teachingless operation has been one of the
most desired application for industrial robots. For example,
Izumi et al. developed a teachingless grinding robot that can
sense grinding torque and grinding force acting on grinding
wheel [2]. Liu et al. proposed contour following method and
teachingless machining method for an Industrial Robot [3].
Also, Asakawa and Takeuchi developed an automatic spraypainting system by using a six-DOF industrial robot equipped
with an air spray gun, which aimed at generating robot
control commands without any special knowledge on spraypainting [4]. Nagao et al. developed a welding robot system
for large box structures and put to practical use to automate welding process and to reduce labor requirements. The
robot automatically generated the robot operation data, i.e.,
the robot language codes, based on the design information
from a three-dimensional CAD model without the need for
conventional teaching by a skilled operator [5]. Further, Neto et
al. presented a CAD-based system to directly program a robot
from a 3D CAD model, which enables users with basic CAD
skills to generate robot programs off-line, without stopping
robot production [6]. Furthermore, Chen and Xi presented a
robot tool trajectory connection method for a spray forming
process, in which the CAD model of a part, a tool model,
978-1-4673-6053-1/13/$31.00 2013 IEEE

Polishing robot

Matsuoka et al. proposed the direct end milling system


using an articulated industrial robot for the machining process
of aluminum building materials [11]. The most important
function of this approach was using an end mill with a small
diameter and a high-speed spindle to be able to reduce the
cutting force in order to reduce the effect of the low stiffness
of the robot. Andersson and Johansson proposed a control
method for the wood carving process [12] . The method
improved the robot control performance and supported simpler
programming due to using an industrial robot with a wrist
mounted force/torque sensor. However, few robots have been
applied to machining process using an end mill in industrial
elds because CNC machine tools are superior in terms of
the applicability to metallic materials and the accuracy after
machining [13].
In this paper, at rst, a simple and straightforward CAM
97

CYBERNETICSCOM 2013

cl (i)

cl (i1)

wO

cl (i+1)
wr(k1)

Fig. 3.

Calculation of desired trajectory wr(k) using CL data cl(i).

Fig. 2. Machining scenes of a wood mold and a formed polystyrene mold


using a ve-axis NC machine tool with a tiltable head.

system without using any robot languages is introduced for


a Cartesian-based servo controller in order to enhance the
relationship between a conventional CAD/CAM system and
a robot arm [14], [15]. The robot arm with the proposed CAM
system can work based on both NC data and CL data without
any teaching tasks and robot languages. Next, an application
of the CAM system is considered. Cast metals are generally
made using a metallic mold or a sand mold. The metallic
mold enables to perform a thin wall and good surface quality,
however, the equipment and metallic mold itself are more
expensive than the case of the sand mold. That is the reason
why the sand mold is mainly used in the cast metal industries.
A sand mold is made by transcribing a master mold. Although,
up to now, wooden molds have been mainly used for the master
mold, recently, foamed polystyrene molds are beginning to be
used instead of the wooden mold because of the easiness to
be machined.

w
w

xd (k+1)

xd (k)

X Not used

p (i)

xd (k+2)

xd (k1)

xd (k2)

xd (k+3)

p (i+1)

xd (k3)

xd (k+4)

Not used

p (i1)

Fig. 4. Relation between position component p(i) in CL data and desired


position wxd (k), in which p(i) wxd (k) and p(i + 1) wxd (k + 3)
are dealt with as fraction.

B. Position and orientation components for discrete-time control system

T
First of all, wr(k) = wxTd (k) woTd (k)
is dened as
the desired position and orientation vector at discrete time
k. The superscript w denotes the work coordinate system,
w
xd (k) 31 and wod (k) 31 are the position and orientation components, respectively. wod (k) is the normal direction
vector at the position wxd (k). wr(k) should be generated along
designed CL data. The CL data are usually calculated with
a linear approximation along the models surface. The ith
step of CL data is represented by cl(i) = [pT (i) nT (i)]T .
p(i) 31 and n(i) 31 are position and normal
direction vectors calculated from the origin wO, respectively.
w
r(k) is calculated using both linear equations and a scalar of
tangent velocity vt called the feed rate.

Generally, CNC machine tools are used for machining


wooden molds and foamed polystyrene molds as shown in
Fig. 2. Since the CNC machine tool is higher in price and
more inexible than an articulated-type industrial robot, the
usage of the industrial robot is highly expected. It is known
that the industrial robot is not good at 3D machining because
of the drawback of its serial link structure, i.e., low rigidity and
position accuracy around 0.1 mm. However, when the target
workpiece is limited to foamed polystyrene materials, such
an industrial robot may be able to work well. In this paper, a
machining robot is proposed for foamed polystyrene materials.
A compact and light weight tool is developed and attached to
the arm tip. The basic machining experiment of the machining
robot with the robotic CAM system is presented.
II.

wr(k) w
r(k+1)

Figure 3 shows the relation between cl(i) and wr(k). By


assuming wr(k) [cl(i 1), cl(i)], wr(k) can be obtained
through the following procedure. First, a direction vector
t(i) 31 is dened as
t(i) = p(i) p(i 1)

D ESIRED T RAJECTORY

A. Main-processor of general 3D CAD/CAM system

(1)

The tangent velocity scalar vt is decomposed into x, y


and zcomponents using t(i) as

In this section, how to generate desired position and


orientation vectors along a 3D model is considered for an
industrial robot. For example, robotic sanding task needs a
desired trajectory so that the sanding tool attached to the
arm tip can follow the workpieces surface, while keeping
contact with the surface from the normal direction [8]. If the
workpiece is designed by a CAD/CAM and machined by a
CNC machine tool, then CL data can be used as the desired
trajectory consisting of position and orientation components.
It is important to describe the process for enhancing the
relationship between the main-processor of CAD/CAM system
and an industrial robot, which is one of the important roles of
the proposed robotic CAM system.

tj (i)

vtj (k) = vt
t(i) (j = x, y, z)

(2)

where v t (k) = [vtx (k) vty (k) vtz (k)]T is the tangent velocity
vector. Consequently, each component of wxd (k) is represented by
xdj (k) = wxdj (k 1) + vtj (k)t (j = x, y, z)

(3)

where t is the sampling period.


Next, how to calculate the normal direction vector wod (k)
is explained. By using the normal direction vectors of two
98

adjacent steps in CL data, a rotational direction vector tr (i)


31 is similarly dened as
tr (i) = n(i) n(i 1)

+Z

(4)
+ (yaw)

Each component of od (k) can be linearly calculated with


tr (i) as
odj (k) = nj (i 1) +
xd (k) p(i 1)
(j = x, y, z)
trj (i)
t(i)

+ (pitch)

(5)
+X

w
xd (k) and wod (k) shown above are directly obtained from
CL data without both any conventional complicated teaching
process and recently proposed off-line teaching methods. The
desired position and orientation in the discrete time domain
are very important to control the tip of a robot arm in real
time, i.e., to design a feedback control system.

where, for example, S and C mean sin d (k) and cos d (k),
respectively. Note that the direction of wod (k) is just inverse
to the one of the arm tip. Also, when referring to wod (k), the
arm tip can be determined only with the roll angle and the
pitch angle except for the yaw angle because of the symmetry
of ball-end mill, so that d (k) can be always xed to 0 [rad].
Thus, the roll angle d (k) and the pitch angle d (k) at the
discrete time k are obtained by solving the following simple
equation.
!
w
odx (k)
w
ody (k)
=
wodz (k)
!

!
C S S C S
0
0
0
C
S
(8)
1
S S C C C

I MPLEMENTATION TO A ROBOT A RM RV1A

The sampling time of the robotic servo system is set to


7.1 ms by the robot provider. UDP (User Datagram Protocol) packet is used for the communication between the
robot and the PC. The size of a UDP packet is set to
196 bytes. The packet transmitted by the socket function
sendto( ) includes values of desired position X d (k) =
[Xdx (k) Xdy (k) Xdz (k)]T [mm] and desired normal direction
vector O d (k) = [d (k) d (k) d (k)]T [rad] in robot absolute
coordinate system. d (k), d (k) and d (k) are called X-YZ xed angles or roll, pitch and yaw angles as shown in
Fig. 5. X d (k) and O d (k) are set in a UDP packet and
used for the position/orientation control of arm tip. Also, the
packet received by the socket function recvfrom( ) has values
of current position X(k) 31 and current orientation
O(k) 31 in robot absolute coordinate system.

where [0 0 1]T is the initial normal direction vector. Finally,


d (k) and d (k) are calculated by using the following inverse
trigonometric functions.
d (k) = asin {wody (k)}
d (k) = atan2 {wodx (k), wodz (k)}

By using the process described in this section, the desired


trajectory [X Td (k) O Td (k)]T for the robot arm can be generated
based on the CL data without conducting any conventional
complicated teaching task.
IV.

(6)

S S C C S
S S S + C C
S C

C S C + S S
C S S S C
C C

ROBOTIC CAM S YSTEM E XTENDED FOR D EALING


WITH NC DATA

A robotic CAM system based on CL data and its implementation to a robot arm RV1A have been introduced up
to the previous section. Generally, the main-processor of a
CAD/CAM system generates CL data, then the post-processor
transforms the CL data to the corresponding NC data according
to various types of CNC machine tools actually used. In
this section, the proposed robotic CAM system is extended
for dealing with NC data post-processed for a ve-axis NC

Next, we consider the rotational components to be represented by roll, pitch and yaw angles. The rotational matrix
RZ RY RX with a roll angle d (k), a pitch angle d (k), and a
yaw angle d (k) is given by

!
C C
C S
S

(9)
(10)

It should be noted that when actually setting the roll angle


d (k) around to the reference of the RV1As servo
system, excessive d (k) = d (k) d (k 1) brings about
undesirable servo error [15].

How to prepare X d (k) and O d (k) for the robot RV1A is


explained using an example as shown in Fig. 3. The tip of robot
arm follows the desired trajectory consisting of position and
orientation. Each components of X d (k) is represented with
the initial position X d (0) as
Xdj (k) = Xdj (0) + wxdj (k) (j = x, y, z)

+Y

Fig. 5. Roll, pitch and yaw angles around x-, y- and z-axes in case of the
robot RV1A.

If a linear approximation is used when the main-processor


of a CAD/CAM system generates CL data, the CL data
forming a curved line are composed of continuous minute lines
such as p(i) p(i 1) and p(i + 1) p(i) as shown
in Fig. 4. In this case, it should be noted that each position
vector in CL data such as p(i) and p(i+1) have to be carefully
dealt with in order to be accurately followed along the CL data.
For example, wxd (k + 1) and wxd (k + 4) are not calculated
by using Eq. (3) but have to be directly set with p(i) and
p(i + 1), respectively, just before the feed direction changes.
p(i) wxd (k) and p(i + 1) wxd (k + 3) are called the
fraction vectors to be cautiously dealt with.
III.

+ (roll)

(7)

99

V.
C-axis for rotation of head

B-axis for tilting of head

Fig. 6. Five-axis NC machine tool with a tiltable head used in woodwork


industries.

M ACHINING ROBOT A RM FOR F OAMED P OLYSTYRENE


M ATERIALS

It is known that industrial robots allows the production line


to suppress the introduction cost, running cost and maintenance
cost comparing with CNC machine tools. In this section, a
robot system incorporating the robotic CAM system is introduced for machining foamed polystyrene materials. Figure 8
shows a motor spindle EM30-S6000 provided by NAKANISHI
Inc., Japan and an aluminum part to attach it to the ange
of the robot arm. The motor equips a air-cooling device.
Figure 9 illustrates its design drawing. Note that the total
weight is about 850 g, which is under the maximum allowable
load 1.5 kg of the robot arm RV1A. Table I tabulates other
specications of the motor spindle.

For electric power

GOTO/0.5723828606,0.2375201911,0.1020156674,-0.2198992532,-0.0912510074,0.9712453717
GOTO/0.6475664298,0.0278731864,0.1091037886,-0.2450687551,-0.0105484886,0.9694483146
GOTO/0.6526497611,-0.1621162875,0.1153391475,-0.2440549410,0.0606225319,0.9678647087
GOTO/0.6058110542,-0.3450137928,0.1218380887,-0.2239736328,0.1275546097,0.9662120023
GOTO/0.4761586995,-0.5534497162,0.1307744799,-0.1735681810,0.2017421096,0.9639368277
GOTO/0.3149701749,-0.6874917189,0.1380822011,-0.1136185475,0.2479974828,0.9620748797
GOTO/0.1101979586,-0.7753144656,0.1458126756,-0.0393508031,0.2768585489,0.9601046079

For motor cooling

Linearly approximated CL data

Regular post process

Reverse post process

G01 X.572 Y.238 Z.102 B13.773 C-202.537


G01 X.648 Y.028 Z.109 B14.199 C-182.465
G01 X.653 Y-.162 Z.115 B14.565 C-166.05
G01 X.606 Y-.345 Z.122 B14.937 C-150.338
G01 X.476 Y-.553 Z.131 B15.434 C-130.707
G01 X.315 Y-.687 Z.138 B15.83 C-114.615
G01 X.11 Y-.775 Z.146 B16.239 C-98.089

Motor spindle
End mill cutter

NC data for 5-axis machine tool

Fig. 7.

Motor spindle EM30-S6000 and attachment for performing 3D


Fig. 8.
machining capability by using an end mill cutter.

Post-process and reverse post-process.

machine tool with a tiltable head used in woodwork industries


as shown in Fig. 6. If the NC data can be reversely transformed
to original CL data, it means that the proposed robotic CAM
system based on CL data allows the robot arm to be controlled
further based on the NC data. We call this transformation (NC
data CL data) the reverse post-process.
In the proposed reverse post-processing shown in Fig. 7,
the position components have only to be directly extracted.
On the other hand, the orientation components are dealt with
considering the geometric conguration, i.e., the tilt angle
90 B(i) 90 and the turn angle 0 C(i) 360 at the
ith step in NC data can be transformed to the corresponding
normalized vector [nx (i) ny (i) nz (i)]T in CL data by calculating

B(i)
C(i)
nx = sin
cos
180
180

B(i)
C(i)
ny = sin
sin
180
180

B(i)
nz = cos
180

(11)
(12)
(13)

100

Robot arm

Motor spindle

Robot flange

Light weight attachment

Spindle tip

Fig. 9. Design drawing of the light weight attachment for motor spindle
EM30-S6000.

A machining experiment was conducted to prove the effectiveness of the proposed robotic CAM system. Figure 10
is demonstrating the machining scene using a ball-end mill,
in which a contour path given with CL data was used. The
diameter of the ball-end mill was 5 mm, the feedrate was set
to 10 mm/s. It was conrmed that the industrial robot could

TABLE I.

S PECIFICATIONS OF EM30-S6000.

Items
Allowable motor speed
Spindle accuracy
Outside diameter
Weight of motor spindle
Weight of attachment

R EFERENCES

Values
60,000 rpm
within 1 m
30 mm
575 g
275 g

[1]

[2]

[3]

In case of a contour path

[4]

[5]

[6]

[7]

[8]

Fig. 10.
arm.

Machining test of a formed polystyrene material using the robot

[9]

[10]

machine the formed polystyrene material based on the CL data


generated by the main-processor of CAM without using any
robot languages.

[11]

[12]

VI.

C ONCLUSIONS
[13]

A cast metal is generally produced by using a sand mold.


A foamed polystyrene mold is used as the master mold for
making the corresponding sand mold. In this paper, after
developing a compact and right weight tool, a machining
robot has been proposed for foamed polystyrene materials. The
robot arm has a novel robotic CAM system from the view
point of teachingless operation. The proposed CAM system
performs the function which enables the robot arm to follow
not only numerical control data (NC data) but also cutter
location data (CL data) consisting of position and orientation
components. The developed robotic CAM system provides a
simple interface without using any robot languages between a
well-known CAD/CAM system and the robot arm RV1A. The
basic design of the machining robot using the robotic CAM
system has been presented for foamed polystyrene materials.
The effectiveness has been conrmed through a few machining
experiments.
In future work, we are planning to develop the optimization function of feed rate [mm/s] by using fuzzy reasoning
approach, which enables the robot to suitably generate the feed
rate according to CL data or NC data.
ACKNOWLEDGMENT
This work was supported by JSPS KAKENHI Grant Number 25420232.
101

[14]

[15]

T. Aized, Flexible Manufacturing System: Hardware Components,


Future Manufacturing Systems, pp. 116, ISBN: 978-953-307-128-2,
InTech, 2010.
T. Izumi, T. Narikiyo and Y. Fukui, Teachingless Grinding Robot
Depending on Three Force Information, Advanced Robotics, Vol. 2, No.
1, pp. 5567, 1987.
M.H. Liu, S. Wienand and A. Seyffer, Contour Following and Teachingless Machining with an Industrial Robot, International Journal on
Robotics and Automation, Vol. 9, pp. 110, 1994.
N. Asakawa and Y. Takeuchi, Teachingless Spray-painting of Sculptured
Surface by an Industrial Robot, Procs. of the 1997 IEEE International
Conference on Robotics and Automation, pp. 18751879, 1997.
Y. Nagao, H. Ohta and F. Honda, A Teaching-Free Robot System
Utilizing Three-Dimensional CAD Product Data, Industrial Robotics:
Programming, Simulation and Applications, INTECH, pp. 365372,
2006.
P. Neto, J.N. Pires, A.P. Moreira, CAD-Based Off-Line Robot Programming, Procs. of 2010 IEEE Conference on Robotics Automation and
Mechatronics, pp. 516521, 2010.
H. Chen and N. Xi, Automated Robot Tool Trajectory Connection
for Spray Forming Process, Journal of Manufacturing Science and
Engineering, Vol. 134, No. 2, pp. 021017(1)021017(9), 2012.
F. Nagata, Y. Kusumoto, Y. Fujimoto and K. Watanabe, Robotic Sanding
System for New Designed Furniture with Free-formed Surface, Robotics
and Computer-Integrated Manufacturing, Vol. 23, No. 4, pp. 371379,
2007.
F. Nagata, T. Hase, Z. Haga, M. Omoto and K. Watanabe, CAD/CAMBased Position/Force Controller for a Mold Polishing Robot, Mechatronics, Vol. 17, Nos. 4/5, pp. 207216, 2007.
Z. Pan, J. Polden, N. Larkin, S. V. Duin, and J. Norrish, Recent
Progress on Programming Methods for Industrial Robots, Robotics and
Computer-Integrated Manufacturing, Vol. 28, No. 2, pp. 8794, 2012.
S. Matsuoka, K. Shimizu, N. Yamazaki, and Y. Oki, High-Speed End
Milling of an Articulated Robot and Its Characteristics , Journal of
Materials Processing Technology, Vol. 95, Nos. 1/3, pp. 8389, 1999.
J.E. Andersson, and G. Johansson, Robot Control for Wood Carving
Operations, Mechatronics, Vol. 11, No. 4, pp. 475490, 2001.
Y. Chen, and F. Dong, Robot Machining: Recent Development and Future Research Issues, International Journal of Advanced Manufacturing
Technology, Vol. 66, Nos. 9/12, pp. 14891497, 2013.
S. Yoshitake, F. Nagata, A. Otsuka, K. Watanabe, and M. K. Habib,
Proposal and Implementation of CAM System for Industrial Robot
RV1A, Procs. of the 17th International Symposium on Articial Life
and Robotics (AROB 17th 12), pp. 158161, 2012.
F. Nagata, S. Yoshitake, A. Otsuka, K. Watanabe, and M. K. Habib,
Development of CAM System Based on Industrial Robotic Servo
Controller without Using Robot Language, Robotics and ComputerIntegrated Manufacturing, Vol. 29, No. 2, pp. 454462, 2013.