Beruflich Dokumente
Kultur Dokumente
= 90
min
ge DynamicRan
raw raw
ingAngle FingerBend
val ---------- (2)
However, data from the sensor is in volts (0V to 5V). A conversion equation is required to convert the voltages value to
acceleration values (m
2
/s), where the slope and intercept is defined by the calibration data for the sensor, as shown in
equation (3). Kinematics equations are used to convert accelerations into velocities and positions.
Intercept ue VoltageVal Slope on Accelerati + = ) ( ---------- (3)
at u v + = ---------- (4)
2
2
1
at ut s + =
---------- (5)
5.1 Data filtering
Fifty samples are taken per second to reduce latency and flickering problems. The sensor records the positions, orientations,
velocity and accelerations of the programmers hand. Positions and orientations are used for the robot kinematics. However,
velocity and accelerations are used to define the dynamic behaviours of the robot. A filtering process is required to reduce
the large amount of data. However, the filtering processes are done for the sensor tracker only, which is used to generate the
robot parameters. Three methods are used, namely:
a) Stopped positions Movement of the hand is stopped for a while. The error occurred because the humans hand is not
100% static when the movement is stopped. The hand will slightly shake in space, which cannot be filtered using the
cut-off line. These data are too close to each other and the average data can be calculated by using a statistics equation.
VR-Based Robot Programming and Simulation System
319
N
x
x
i
=
---------- (6)
b) Straight paths In general, only two points are required to define a line: starting point and ending point. Intermediate
points can be ignored and erased from the database. Figure 8 shown the process path differs between actual data from
sensor tracker and expected robot movement in a linear line (Point-to-Point).
Figure 8: Data filtering for straight path
c) Curving paths In this particular study, no curve path is used to perform the task. However, a method is developed
based on the Bzier curve and this method is supported by OpenGL (Francis, 2000). An average value (control point) is
calculated for every 5 to 10 points. Four control points are required to define the curving path in OpenGL.
6. SIMULATION AND COMMAND GENERATOR SYSTEM
The development of robot a simulation system offers potentially great and cost-effective benefits. The time for which a
robot is out of production may be reduced by as much as 85% by using offline programming (A.C. Boud & S.J . Stiner,
2000). Before the actual operation, the movement of robot manipulators with any tools is simulated on the PC. The
simulation program offers the ability to record and analyse the manipulations during a procedure. This type of analysis
enable the users to improve their skills, as well as test them as to whether or not their manipulative skills and paths are at an
acceptance level of performance for a given task.
6.1 Robot kinematics
There are two basic ways of describing robot movements for industrial robot in robot control system in terms of
manipulator joint angles or end-effector location. The forward kinematics determined the position and orientation of the
robots end (tool center point), with all joints variables are known. However, inverse kinematics is used to calculate the
value of each joint variable by knowing the position and orientation of the end-effector.
The Denavit-Hartenberg representation (Lee & Chang, 2003) has been used to derive the forward and inverse
kinematics equations of all possible configuration of a Kuka robot. The Kuka is a 6-axis manipulator robot. The link
transformation that relates the first joint until the sixth joint is summarized and equations (7) specify how to compute the
position and orientation of the tool center point refer to the base.
= = =
1 0 0 0
33 32 31
23 22 21
13 12 11
6
1
5
6
4
5
3
4
2
3
1
2
0
1
z
y
x
H
R
P r r r
P r r r
P r r r
A A A A A A A R
---------- (7)
where
6 5 23 1 6 5 4 1 6 5 4 23 1 11
C S S C C C S S C C C C C r + =
6 4 1 6 4 23 1
S C S S S C C +
6 5 23 1 6 5 4 1 6 5 4 23 1 21
C S S S C C S C C C C C S r =
6 4 1 6 4 23 1
S C C S S C S
.
4 23 4 23 6 5 23 6 5 4 23
d C a S d C C d S C S P
z
=
1 2 3 2
d d a S + +
Yap et al.
320
Besides that, the Kuka is characterized by a spherical wrist, which the inverse kinematics problem can be separated into
positional part (
1,
2,
3
) and orientation part (
4,
5,
6
). The details of derivations are not shown in this paper.
) / ( 2 tan
1 xw yw
P P A = , and 180
1
---------- (8)
+ + + + +
+ + + +
=
) )( ( ) )( (
) )( ( ) )( (
2 tan
3 4 3 4 3 2 1 1 4 3 4 3 2 1
4 3 4 3 2 1 1 3 4 3 4 3 2 1
2
a d S a C a P S P C d C a S P d d
d C a S a P S P C a d S a C P d d
A
yw xw zw
yw xw zw
---------- (9)
+
=
4
4
3
2 tan
a
d
A
+ + +
+ + + +
2
4
2
4
2
3
2
1
2
2 1
2 2
2 2
4
2
3
2
4
2
2
2
2 1
2 2 2
4
2
3
) (
] ) ( [
2 tan
d a a a P d d P P
d a a a P d d P P d a
A
zw yw xw
zw yw xw
---------- (10)
) ( 2 tan
33 23 23 23 1 13 23 1
23 1 13 1
4
m S m C S m C C
m C m S
a
+
+
= , and
o
180
4
---------- (11)
)
) ( ) (
( 2 tan
33 23 23 23 1 13 23 1
2
33 23 23 23 1 13 23 1
2
23 1 13 1
5
m C m S S m S C
m S m C S m C C m C m S
a
+ + +
= ---------- (12)
) ( 2 tan
31 23 21 23 1 11 23 1
32 23 22 23 1 12 23 1
6
m C m S S m S C
m C m S S m S C
a
+ +
= , and
o
180
6
---------- (13)
6.2 The virtual robot
A robot simulation system has been developed based on C/C++programming language with OpenGL. After filtering, the
new set of data is sent to the simulator. The simulator has the capacity of real-time simulation of a virtual Kuka robot
through 3D animation on a personal computer. The user can control and visualize the virtual robot by mouse or keyboard
through a user-friendly interface window. The movement of the virtual robot can be simulated many times after the filtered
data has been loaded. The user can change the viewing angle or zoom in from any position. The simulator is designed to:
Compare the filtered data with the original data.
Check the dynamic behaviour. Since the teaching system is based on the human hand, robot limitations need to be
checked and confirmed.
Check the robot aspects like orientations, reaches, clearances, collision detections and so on.
6.3 Command generator
After the user is satisfied with the process, the database can be translated into a Kuka Robot Language (KRL) through a
command generator or postprocessor. The output commands generated by the developed post-processor is only readable by
the controller of the Kuka Robot model KRC6. Robot languages differ from one another. The creation of a generic post-
processor is not practical. The movements of the robot are executed with constant velocity and acceleration (default).
Figure 9 shows an example of KRL commands that been generated. These KRL commands can be loaded into the
controller of the real Kuka robot.
Figure 9: An example of KRL command
VR-Based Robot Programming and Simulation System
321
7. DISCUSSIONS AND CONCLUSION
The developed system allowed the user to teach the robot through the virtual environment. The process path is
automatically tracked by the sensor tracker and saved into a database. The software allows the user to try as many times as
required, until an optimum path is obtained. The system has been tested for the palletizing process (pick-and-place).
7.1 Case study Palletizing Process
Experiment on the palletizing task was performed, which the robot is requested to move the work-pieces from a fixed
location (conveyer) and rearrange into the nine different locations (storage table), as shown in figure 5. In the VR-based
system, experiments were done using 0.01 second as the interval time, which means the program is able to generate 100
data per second. The setting is chosen to generate flicker free real-time simulation. However, actual speed of the robot can
be adjusted according to the conveyer system and production line.
Based on the result from virtual reality system, the KUKA robot can be programmed by using Point-To-Point (PTP)
method in linear motion. The complete path for a single work-piece is illustrated in figure 10, and the loop can be repeated
for another eight variable locations. The robot command is then generated and loaded into robot for actual testing. The
robot is able completed the task as expected. The system also been tried by students who do not have any knowledge about
KUKA robot programming skill, and the same result is obtained.
Figure 10: Complete path for the first work-piece.
7.2 Conclusion
Advanced computer technology and modern electronic developments (virtual reality technology) have made it possible to
develop an offline programming system with real-time simulation. It demonstrates the application of virtual reality as a
powerful tool for human-robot interaction. The developed VR-based system can be used to generate a Kuka KLC6 robot
command though three sub-system virtual teaching system, robot simulator and command generator. The system has been
tested with palletising process. The robot command also has been loaded into the robot to perform the task.
It is expected that the system developed in this research can be directly applied to an industrial robot. Programmer can
use the virtual teaching system and simulation to confirm the robot program. Mistake in programming can be avoided and
damage to the robot can be reduced. It also can be used to improve the work envelope, efficiency and safety. The developed
system also can be used to test a variety of robots. However, the robot aspects (model, workspace, kinematics, robot
languages and so on) need to be updated accordingly. This may improve the interaction and integration between human and
machine (robots). A lot of experience can be gained from the robot simulations without having the actual robots at no extra
costs and risks.
8. REFERENCES
1. A.C. Boud and S.J . Stiner (2000). A New Method for Off-Line Robot Programming: Application and Limitations
Using a Virtual Environment. Proceedings of the 5
th
International Conference on Factory 2000, pp. 450-455.
2. Francis S. Hill, J r, (2000). Computer Graphics using OpenGL, 2
nd
ed., Prentice-Hall Inc.
3. Grigore Burdea and Philippe Coiffet (1994). Virtual Reality Technology. J ohn Wiley & Sons, Inc., New York.
4. J ohn Vince (1995). Virtual Reality System. Addison-Wesley Publishing Company, Singapore.
5. Lee H.S. and Chang S.L. (2003). Development of a CAD/CAE/CAM System for a Robot Manipulator. J ournal of
Materials Processing Technology, vol 140, Issues 1-3, pp. 100-104.
6. Mikell P. Groover (1986). Industrial Robotics: Technology, Programming and Application. McGraw-Hill, New York.
Yap et al.
322
7. P.F. J acobs (1996). Stereolithography and Other RP&M Technologies. Society of Manufacturing Engineers.
8. Sett, A. & Vollmann K. (2002). Computer Based Robot Training in a Virtual Environment. IEEE International
Conference on Industrial Technology 2002 (ICIT 02), vol.2, pp. 1185-1189,
9. Tomoichi Takahashi and Hiroyuki Ogata (1992). Robotic Assembly Operation based on Task-Level Teaching in
Virtual Reality. Proceedings of the IEEE International Conference on Robotics and Automation, pp. 1083-1088.
10. Yap Hwa J en, Z. Taha, Irvin Hoh and Lee J .V. (2006). Development of a 3-Dimensional CAD Model Generator.
Proceedings of the 1
st
International Conference on Manufacturing & Material Processing (ICMM 2006), University of
Malaya, pp. 268-271, Kuala Lumpur.
BIOGRAPHICAL SKETCH
Yap Hwa J en is a researcher cum PhD student in the Centre of Product Design and Manufacture
(CPDM), University of Malaya, Malaysia. He is also a Lecturer in the Department of
Engineering Design and Manufacture, Faculty of Engineering, University of Malaya, Malaysia.
He obtained his bachelor degree in Mechanical Engineering with Honors from the University of
Malaya in 2000. He received a Master of Engineering Science from University of Malaya in
2005. His research interests included virtual reality, human-computer interface, product design,
robotics and automation.
Zahari Taha is currently director and Professor of Centre for Product Design and Manufacturing
(CPDM) Faculty of Engineering University of Malaya (UM). He graduated with a BSc in
Aeronautical Engineering with Honors from the University of Bath, UK. He obtained his PhD in
Dynamics and Control of Robots from the University of Wales Institute of Science and
Technology in 1987. From 1995 to 1998, he completed his postdoctoral at the University of
Wales Institute College Cardiff in the area of engineering design and ergonomics. He was
awarded the Hitachi Fellowship in 1992 and also the Young Malaysian Scientist award by
Ministry of Science, Technology and Environment in 1997. Dr. Zahari has published more than
100 papers in academic books, journals and proceedings. His major research interest includes
mobile robots, underwater robots, surgical robots, ergonomics design, ergonomics at work,
software development for traffic applications and motion analysis.
Lee J er Vui has obtained his BSc (Applied Physics) from University of Malaya in 1999. In
addition, he has obtained his MSc (Laser and Optoelectronics) from the same university in 2001.
Currently, he is pursuing his PhD in Robotics at Department of Engineering Design and
Manufacture, Faculty of Engineering, University of Malaya. His research interests are robotics,
computer simulation and visualization, and Laser Material Processing.