You are on page 1of 6

TuB1.

Proceedings of 2011 8th Asian Control Conference (ASCC)


Kaohsiung, Taiwan, May 15-18, 2011

The Development of Six D.O.F. Robot Arm For


Intelligent Robot
Jie-Tong Zou

Des-Hun Tu

Dept. of Aeronautical Engineering, National Formosa


University,
No.64, Wunhua Rd., Huwei Township, Yunlin County
632, Taiwan, R.O.C.
TEL: +886-5-6315556, FAX: +886-5-6312415
EMAIL: scott@nfc.edu.tw

Institute of Opto-Mechatronics and Materials, WuFeng


Institute of Technology,
Chian-Kuo Rd, Sec. 2, Ming-Hsiung, Chia-Yi 621,
Taiwan, R.O.C.
EMAIL: qwer70012@yahoo.com.tw

AbstractThe objective of this paper is to develop a six D.O.F


robot arm for an intelligent robot. As for the shoulder part, the
harmonic drive, which has some advantages (such as zero
backlash, small volume, and high reduction ratio), was used to
ensure the weight of the whole arm could be supported.
The kinematic equations of the robot arm have been verified
in this paper. As for the links of a robot arm, the DenavitHartenberg (D-H) coordinate transformation method is generally
used. The six axes data of the robot arm can be obtained from the
Inverse Kinematics analysis. Through the Simulink function of
Matlab software, we can make the forward or inverse kinematics
computation of the robot arm.
In the control aspect, the PC based controller and the DSP
based 8 axis motion control card were used to control the robot
arm. When the robot arm hardware was finished, the PID
control parameters of the servo motors should be adjusted first.
Finally, we make some experiments; the PC based controller can
control the robot arm to grab a box through a moving path
successfully.
Keywords- intelligent robot; robot arm; mechanism design;
kinematic analysis; motion control

I.
INTRODUCTION
A robot arm is a mechanical device that is driven by
electric motors, pneumatic devices, or hydraulic actuators.
The motion model of a robot arm decides the geometric forms
of the robot arm. The basic geometric forms of robot arm
include the Cartesian coordinate, cylindrical coordinate,
spherical coordinate, and the articulated coordinate.
There were quite a few researches regarding the robot
arm. For example, Ahmad [1] discussed the drive train of a
robot arm. Due to the backlashes, the eccentric joints, and the
influences that the flexibility of driving axles would have on
the accuracy and repeat accuracy of the arm positioning,
Ahmad used linear positioning compensation and obtained
good effects. Lee and Shah [2] conducted the kinematic
analysis of a robot arm of the closed kinematic chains,
utilizing the Homogeneous Transformation method to do the
analysis of the parallel-link robot arms, while calculating the
moving space. Veitschegger and Wu [3] developed the
kinematic adjustment model of the PUMA560 six-axis robot
arm. They used the model on compensating the positioning
tolerance of the manipulator. The experiments proved that it
could improve the positioning accuracy.

Zhang [4] worked on the adjustment of a robot arm and


proposed a new kinematic analysis method, which could avoid
the tolerance caused by the singularity of kinematic analysis.
Tischler, Samuel and Hunt [5] discussed the driving trains, the
limitation, the classification, and the drive of a robot
manipulator. Sacks and Joskowicz [6-8] discussed how the
planar mechanisms would cause the kinematic tolerance due to
the component shape tolerance that led to the contact point
differences between the components. In that research, Sacks
and Joskowicz aimed at the planar pair components shape
tolerance of single-point contacts and multi-point contacts.
They calculated the kinematic tolerance space and its
maximum tolerance. Zhang [9] used robust design method to
discuss the tolerance design of the components. Chen [10]
continued to use the trained neural network method and
analyzed the tolerance synthesis of a robot arm, while utilizing
the optimized cost-tolerance function (through the simulated
annealing method) to obtain the optimized tolerance design.
Wu [11] used homogeneous transformation matrix and
concluded that when the robot arms joint parameters and
kinematic parameters have slight tolerance, the linear
adjustment model of the homogeneous transformation matrix
can be obtained. This adjustment model could be applied to
the positioning of the kinematic grippers with minor
tolerances, and could be also applied to the positioning
tolerance analysis.
The purpose of this research was to design and
implement a six-degree-of-freedom robot arm of an intelligent
robot. We mainly used 3D CAD software such as Solidworks
to design the robot arm, made the components, and then
assembled the robot arm. As for the shoulder part, the
harmonic drive was used to ensure the weight of the whole
arm could be supported.
In the control aspect, the PC based controller and the
DSP based 8 axis motion control card were used to implement
the control of the robot arm. When the robot arm hardware
was finished, the PID control parameters of the servo motors
should be adjusted first. Then, we obtained the kinematic
equations of the robot arm, and the moving path of the robot
arm. Afterwards, in order to execute some difficult motions
such as grabbing a beverage can or a stick, adjustments and
execution were made according to the kinematic path of the
robot arm. The robot arm also could be combined with the
machine vision system to do the behavior control. The

- 976 Downloaded from http://www.elearnica.ir

manipulator could grab an object with this visual feedback


system.
In the software aspect, through the kinematic equations,
the kinematic path of the robot arm could be simulated.
Through the Simulink function of Matlab software, we can
make the forward or inverse kinematics computation of the
robot arm.
II.

DESIGN AND IMPLEMENT OF A SIX D.O.F. ROBOT ARM


The purpose of this research was to accomplish the
design and implementation of a six-axis robot arm. First, a 3D
CAD software such as Solidworks was used to design the sixaxis robot arm (as shown in Figure 1). Then, the components
were manufactured and assembled the proposed robot arm (as
shown in Figure 2). In addition, we purposely used the
harmonic gear regarding the part of shoulder joint. Its
advantages (such as zero backlash, small volume, and high
reduction ratio) ensure that the weight of the whole arm could
be supported.

reduction gear would be heavier. If we fixed the motor on the


shoulder joint, the weight and the inertia of the arm will
increase. In this way, not only should we choose a motor with
even more torque, but also the motions of the arm would not
be sharp enough. Therefore, we transferred the two motors on
shoulder joints (including the harmonic gears) into the body of
robot (as shown in Figure 1). Then, the cogged-belts were
used to link the motors and the shoulder joints. This design
could lighten the weight of the arms, while increasing the
flexibility.
B. The concentric design of the two axes of shoulder joints
There is limited space on a robots shoulders. In general,
it is quite difficult to make two or three rotary axes concentric.
Usually, Japans humanoid robots would use patented
spherical joints. In this research, we compressed the coggedbelt of one axis with idle wheels, and had it go through the
central hole of another axis belt pulley. The transmission
method (as shown in Figure 3) could concenter the two axes of
shoulder joints, so that the kinematic motions would be similar
to the ones of real human beings.

Figure 3. The concentric design of the two axes of shoulder joints


Figure 1. The CAD model of a six-axis robot arm

The design characteristics of the proposed robot arm are as


follows:
A. The transfer of motors on the shoulders

Figure 2. The picture of the six-axis robot arm

The shoulder joint of the robot arm has two degrees of


freedom. Generally speaking, shoulder joints need motors
with bigger horsepower and torque. Therefore, the motor and

III. KINEMATIC EQUATIONS OF ROBOT ARM


Kinematics
mainly
discusses
the
coordinate
transformation of a robot arm, and the coordinates will change
in space as time goes by. The variables include time, position,
and speed, but not taking the force or torque into account.
Kinematics can be divided into forward kinematics and
inverse kinematics. Forward kinematics gives the rotation
angle of each joint to calculate the ( x, y, z ) position and the
direction of a manipulator or an end effecter. Inverse
kinematics gives the coordinate of the manipulator, inversely
calculating the rotation angle of each joint. As for the links of
a robot arm, the Denavit-Hartenberg (D-H) coordinate
transformation method is generally used. The transformation
matrix of the coordinate could be abbreviated as D-H
transformation matrix.
Suppose there was a reference coordinate on every joint,
and there are links between the joints. The link relations
between the links and the joints are shown in Figure 4. A
joints reference coordinate will change along with the rotation
of the links. We need to consider the transformation relations
between joint n and n+1 that are in the two adjacent coordinate
systems, while defining the 4 important parameters by the D-H
method [12].

- 977 -

n +1The

angle by which the rotary joint rotates around Znaxis


an +1When being perpendicular to the oblique lines Zn -axis
and Zn + 1-axis, the distance in between
dn +1 The distance from Xn to Xn+1, with which the joint
translates along Zn -axis
n +1The angle between Zn -axis and Zn + 1-axis
Every rotary axis of the coordinate system is defined as Zaxis.

4. Rotate Zn -axis around Xn+1-axis by angle


and Zn+1 be superposed.

n +1,

letting Zn

The above steps are illustrated as shown in Figure 5.


According to the above 4 steps, the following are its matrix
algorithms:

(1)
A.

Forward kinematics analysis:


Forward kinematics gives the rotation angle of each joint
to calculate the ( x, y, z ) position and the direction of a
manipulator or an end effecter. Before establishing the
equations of motion, we must first know the D-H parameters
of each axis. The coordinate system of the robot arm is shown
in Figure 6. The D-H parameters of each joint are shown in
TABLE I.

Figure 4. The link relations between the joints and the links

Figure 6. The coordinate system of the robot arm


TABLE I The D-H parameters of each joint

Joint
1
2
3
4
5

Figure 5. The illustration of coordinate transformation

The D-H method was used to do the operation of


transformation matrix of two adjacent coordinate systems XnYn-Zn and Xn+1-Yn+1-Zn+1. The formula of coordinate
transformation was obtained by the following 4 steps. The
axes of the two adjacent coordinates would be superposed.
The steps are as follows:
1. Rotate around Zn-axis by angle
to Xn+1.

n +1,

letting Xn be parallel

2. Make a translation along Zn -axis with a distance dn


letting Xn and Xn+1 be collinear.

+1,

3. Make a translation along Xn -axis with a distance an +1,


letting the initial points of Xn-axis and of Xn+1-axis be
superposed.

0
0
0

0
0

0
0

T
he D-H parameters of each axis will be brought into the D-H
transformation matrix in equation (1). The transformation
matrixes of two joints are shown as follows:





- 978 -




(2)










(3)










(4)























(5)

Figure 7. The Matlabs illustration of the joint links

In the research, we proposed a simulation method,


inputting the 3D model of the robot arm into softwares such as
Matlab and Simulink(Matlabs build-in tool). We used its
unique program language S-Function and programmed the
expected control method. Then, the simulation results would
come out. Figure 7 shows the Matlabs illustration of the joint
links. Figure 8 shows the block diagram of the robot arm.

(6)

Where Ci = Cosi Si = Sini


The total transformation between the base of the robot
arm and the hand will be:





(7)



where

















Figure 8. The block diagram of the robot arm

(25)
IV. SIMULATION OF THE ROBOT ARM
In the research, we proposed a simulation method,
inputting the 3D model of the robot arm into software such as
Matlab and Simulink(Matlabs build-in tool). We used its
unique program language S-Function and programmed the
expected control method. Then, the simulation results would
come out. Figure 6 shows the Matlabs illustration of the joint
links. Figure 7 shows the block diagram of the robot arm.

Figure 9. The diagram of speed and position analysis

After combining all the block diagrams of the six-axis,


we can add the forward and inverse kinematic equations on
every axis. When all the kinematic equations are completed,

- 979 -

press the execution key, and the diagram of speed and position
analysis will be obtained as shown in Figure 9.
In addition, we could use the toolbox in the M-file folder,
and put it in the work section of the Matlab software. After
setting up the moving path, we could load the robot arms
assembly model. With the toolboxs additional functions, we
could make a five axis robot arm simulation as shown in
Figure 9 by forward kinematics.

finishing the inverse kinematics simulation in Matlab software


(Figure 12), the angle of each joint of the robot arm can be
computed and saved as an Excel file. This joint angle file can
be sent to the controller of the robot arm. Therefore, the
manipulator of the robot arm can move through a motion path
like 123.

In the kinematic equation control window, the drivebot


as shown in the down-left corner of Figure 10, enter the
rotation angle of each axis. Then, the manipulators position
would be shown as the way we wanted it. Or we could use its
sliding control to fast display the manipulators position.

Figure 12. Matlab software was used to make the inverse kinematics
simulation of the robot arm

V. HARDWARE CONFIGURATION
In order to achieve the purpose of accurate positioning,
the control structure of robot arm can be divided into
kinematic path programming, position control, velocity
control, and current voltage control, etc.. From the hardware
design point of view, the motion controller runs according to
the users preset program, or through learning the kinematic
path of the robot arm, in order to produce the motion control
code of the robot arm.

Figure 10. Five axis motion simulation by forward kinematics.

Figure 13 shows the hardware configuration of the sixaxis robot arm. This research used the National Instruments
(NI) eight-axis DSP based motion control card to control the
six-axis robot arm. Before using the 8-axis motion control
card to control the robot arms movements, every axis
parameter (such as: PID parameter) must be adjusted first, so
that every axis motor could achieve excellent control
response. This 8-axis motion control card could use the
computer to automatically tune every axis PID parameter.
PC based controller

8 axis motion control card

Drivers
Figure 11. The manipulator was configured to move through a motion path
like 123.

I n t hi s r e sear c h, we al so ma d e i n ver se
ki n e ma ti c s a na l ys i s o f t he r o b o t a r m. Given the end
point of the manipulator, what angles do the joints need to be
in the achieve that end point. Firstly, a motion planning
interface was used to plan the trajectory of the manipulator of
the robot arm. As shown in Figure 11, the manipulator was
configured to move through a motion path like 123. After

- 980 -

DC servo motor
Axis 1

Axis 2

Axis 3

Axis 4

Axis 5 Axis 6

Figure 13. The hardware configuration of the six-axis robot arm

VI. EXPERIMENTAL RESULTS


After completing the physical cabling, we began to
utilize an 8-axis motion control card to make the PID
parameter tuning of each axis motor. During the tuning
process, the parameter of the motor driver must be
simultaneously tuned. If the motors position tolerance was
close to zero, and vibration and noise were not produced, it
would represent that this axis motor has completed the tuning.
After testing and adjusting each axis motor, we utilized
Visual Basic (VB) to write the control program for each axis,
while doing an actual testing of the robot arms kinematic
paths. After each axis has completed the test, we could use the
multi-axis control program to complete the multi-axis
synchronous motion control. As shown in Figure 14(a)-(j),the
robot arm can pick and place a box from right to left across a
partition plate.

(a)

VII. CONCLUSION
This article has completed the design and production of
one robot arm of the intelligent robot, and verified the robot
arms kinematic equations. In addition, each axis data
calculated from inverse kinematics were utilized along with the
DSP based motion control system to complete the control of
the six-axis robot arm. Finally, we make some experiments;
the PC based controller can control the robot arm to grab a box
through a moving path successfully.
The future goal is to make the robot arm be able to grab
things by using the machine vision system. After completing
these experiments, we will finish producing the second robot
arm and establishing its kinematic paths and dynamics analysis,
as well as inserting different control methods. For example,
the neural control, reinforcement learning, and the fuzzy
control theory, etc.. These could be applied to the robot arms
dynamic control, so that some difficult and complicated
movements could be easily executed. In the end, we need to
work on the cooperative operation and motion control of two
robot arms. With the aid of machine vision system and force
sensor, the two robot arms will be able to complete a lot of
tasks.
ACKNOWLEDGMENT

(b)

This work is sponsored by the National Science Council,


Taiwan, Republic of China under grant number NSC- 97-2221E-274 -009.
REFERENCES
[1]
(c)

(d)
[2]
[3]

(e)

[4]
[5]

(f)

[6]

[7]

(g)

(h)

(i)

(j)

Figure 14. The robot arm pick and place a box from right to left across a
partition plate.

- 981 -

G. Eason, B. Noble, and I. N. Sneddon, On certain integrals of


Lipschitz-Hankel type involving products of Bessel functions, Phil.
Trans. Roy. Soc. London, vol. A247, pp. 529551, April 1955.
(references)
J. Clerk Maxwell, A Treatise on Electricity and Magnetism, 3rd ed., vol.
2. Oxford: Clarendon, 1892, pp.6873.
I. S. Jacobs and C. P. Bean, Fine particles, thin films and exchange
anisotropy, in Magnetism, vol. III, G. T. Rado and H. Suhl, Eds. New
York: Academic, 1963, pp. 271350.
K. Elissa, Title of paper if known, unpublished.
R. Nicole, Title of paper with only first word capitalized, J. Name
Stand. Abbrev., in press.
Y. Yorozu, M. Hirano, K. Oka, and Y. Tagawa, Electron spectroscopy
studies on magneto-optical media and plastic substrate interface, IEEE
Transl. J. Magn. Japan, vol. 2, pp. 740741, August 1987 [Digests 9th
Annual Conf. Magnetics Japan, p. 301, 1982].
M. Young, The Technical Writer's Handbook. Mill Valley, CA:
University Science, 1989.

You might also like