Robot Arm Without Using Robot Language and Its Application To Machining Process
Robot Arm Without Using Robot Language and Its Application To Machining Process
Keigo Watanabe
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
Polishing robot
CYBERNETICSCOM 2013
cl (i)
cl (i1)
wO
cl (i+1)
wr(k1)
Fig. 3.
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)
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.
wr(k) w
r(k+1)
D ESIRED T RAJECTORY
(1)
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)
+Z
(4)
+ (yaw)
+ (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
(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
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)
+Y
Fig. 5. Roll, pitch and yaw angles around x-, y- and z-axes in case of the
robot RV1A.
+ (roll)
(7)
99
V.
C-axis for rotation of head
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
Motor spindle
End mill cutter
Fig. 7.
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
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]
[4]
[5]
[6]
[7]
[8]
Fig. 10.
arm.
[9]
[10]
[11]
[12]
VI.
C ONCLUSIONS
[13]
[14]
[15]