Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Robot Kinematics 8
In the robot file the first lines explain the robot kinematics. The
next lines describe the information in the robot file.
The first four lines give you some information of the robot file.
The first line is the word, which every robot file has to begin.
VIII-1
8 R O B O T K I N E M A T I C S
Keyword ROBOTFILE V3.0, that you are using the robot file
for version 3.0.
The lines 2,3 and 4 are commented lines which give the
information for the user not for EASY-ROB.
VIII-2
R O B O T K I N E M A T I C S
• ABB Robots
• KUKA Robots
• Stäubli Robots
• Fanuc Robots
Fanuc Robot
M-16i
VIII-3
8 R O B O T K I N E M A T I C S
KUKA Robot
KR-Series
KR-150-1
VIII-4
R O B O T K I N E M A T I C S
Select one of
the 10 items and
modify the
current default
values.
The table bellow shows the meaning of all items in the dialog
box above.
Item Description
l1z [m] Length of the link 1 in the z direction.
l1x [m] Length of the link 1 in the x direction.
l1y [m] Length of the link 1 in the y direction.
l2z [m] Length of the link 2 in the z direction.
l2x [m] Length of the link 2 in the x direction.
l2y [m] Length of the link 2 in the y direction.
l3z [m] Length of the link 3 in the z direction.
l3x [m] Length of the link 3 in the x direction.
l3y [m] Length of the link 3 in the y direction.
l6z [m] Length of the link 6 in the z direction.
VIII-5
8 R O B O T K I N E M A T I C S
While creating the robot with RRR:RRR Back Link, the joints 2
and 3 are coupled. The picture bellow shows the links of the
robot with Back Links. The picture shows how can be applied
back links 2 and 3 on a Robot.
VIII-6
R O B O T K I N E M A T I C S
The picture
shows the
Dialog Box for
creating the
Robot
RRR:RRR
Back link
Item Description
Back link Length of the back link 2.
Joint2[m]
Back link Length of the back link 3.
Joint3[m]
VIII-7
8 R O B O T K I N E M A T I C S
The picture bellow shows the dialog box for TTT:RRR Simple
type.
All transformation
values are similar to
the Standard robot
type RRR:RRR.
VIII-8
R O B O T K I N E M A T I C S
After specifying the values for links apply the default robot
bodies.
This topic will introduced you about two types for creating a new
robot in EASY-ROB:
VIII-9
8 R O B O T K I N E M A T I C S
Example:
uni_tmpl.cel
This kinematic has one
active joint and three
passive joints:
pJnt1 is RZC0, F1
RZ = Rot about z-Axis,
’C’ = in the kin chain
0 = attached to joint 0
F1 = pass. joint depends
on user defined function
md_f1() in inv_user.cpp.
VIII-10
R O B O T K I N E M A T I C S
• Enter ’+1’ has the effect that this passive joint will move
(T or R) by the joint value of the active joint number 1.
• Enter ’-2’ has the effect that it moves by the negative
joint value of active joint number 2.
• Enter ’f1’ does mean, that it uses the mathematic
formula in function md_f1() in file inv_user.cpp.
The formula in md_f1() is user defined and could be for
example: -3*sin(q[0])+2*cos(q[1]) or whatever.
Universal Coordinates
Creating the robot with Universal coordinates requires the
following steps:
The following picture shows the main dialog box for creating a
robot with Universal coordinates:
VIII-11
8 R O B O T K I N E M A T I C S
The option 5
shows the
information of
the current
kinematic.
Double click on
the first option
and enter
number of active
joint. After that
you have to
specify the type
of each active
joint.
For example enter the 5 active joint and click on the Ok button,
previous dialog is changed to the following dialog box:
VIII-12
R O B O T K I N E M A T I C S
The picture bellow shows the dialog box for specifying the
Chain specification.
VIII-13
8 R O B O T K I N E M A T I C S
The next picture shows the dialog box for attaching the passive
joints to active.
Enter a mathematical
expression beginning
with a ’=’ sign or
select a function
number beginning
with an ’F’ sign, and
press the Ok button.
The next two options specify the geometric data for passive
joint. After all passive joints are parameterized, the inverse
kinematics for a robot has to be selected.
VIII-14
R O B O T K I N E M A T I C S
14 - Enables the
numerical solution, if
we have a DH
kinematic.
15 to 21 are individual,
predefined special
kinematic solutions.
VIII-15
8 R O B O T K I N E M A T I C S
The length a
and twist α of a
link
VIII-16
R O B O T K I N E M A T I C S
by di, the distance between the normals along the joint i axis,
and qi the angle between the normals measured in a plane
normal to the axis. di and qi are called the distance and the
angle between the links, respectively.
VIII-17
8 R O B O T K I N E M A T I C S
The following picture shows the main dialog box for creating a
new robot by DH notation.
VIII-18
R O B O T K I N E M A T I C S
DH parameters
for joint 1.
VIII-19
8 R O B O T K I N E M A T I C S
For each loaded robot you can modify existing kinematics. The
Dialog box for changing existing kinematics you can open by
choosing:
• Robotics->Robot Kinematics->Kinematics
Data.
You can also change the Robot attributes. The picture bellow
shows the Robot attributes.
• Robotics->Robot Kinematics->Robot
Attributes.
VIII-20
R O B O T K I N E M A T I C S
Examples
This topic will teach you how to create a new robot with
mentioned methods. We will use the KUKA robot which is
created with standard RRR:RRR kinematics, and save the
bodies of the robot. We need the bodies for other kinematics
types.
VIII-21
8 R O B O T K I N E M A T I C S
KUKA robot
KR-Seires
KR-150-1
Note: If you look in the Igp_Usr directory you can see several
igp part files. On this way we saved the robot bodies separately
links by links.
VIII-22
R O B O T K I N E M A T I C S
EASY-ROB gives you default values for back links and we don’t
need to change them.
VIII-23
8 R O B O T K I N E M A T I C S
After pressing the Yes button default robot bodies are showed
in the Render scene.
Note: On the picture bellow you can see the green coordinate
systems, which represent the “back link” joints 2 and 3.
VIII-24
R O B O T K I N E M A T I C S
Specifying name of
the robot.
Saving the
robot file.
VIII-25
8 R O B O T K I N E M A T I C S
Note:
Our files of the robot bodies are located in the
.\easy-rob\igp\Igp_Usr directory.
o KUKAExample_r1
o KUKAExample_r2
o KUKAExample_r3
o KUKAExample_r4
o KUKAExample_r5
o KUKAExample_r6.
VIII-26
R O B O T K I N E M A T I C S
Joint 1
-> ROT Z
VIII-27
8 R O B O T K I N E M A T I C S
The distance to
Joint 2 is in X and
in Z direction.
lx = 0.4100
lz = 0.8650
Joint 2
The distance in Z
direction to the next
joint is
lz = 1.000
-> ROT Y
VIII-28
R O B O T K I N E M A T I C S
Joint 3
Joints 3 rotates
about Y Axis.
-> ROT Y
lx = -0.045
lz = 1.000
Joint 4
-> ROT Z
VIII-29
8 R O B O T K I N E M A T I C S
Joint 5
-> ROT Y
VIII-30
R O B O T K I N E M A T I C S
Joint 6:
The distance to
the robots tip is
in Z direction.
lz=0.2100
Joints 6 rotates
about
Z Axis.
-> ROT Z
VIII-31
8 R O B O T K I N E M A T I C S
Choose the
inverse
kinematics #2.
Enter 8 for
number of
configuration.
VIII-32
R O B O T K I N E M A T I C S
Robot
KUKA
VIII-33
8 R O B O T K I N E M A T I C S
Joint 1:
Distance to Joint 2
Tz = 0.65
Tx = 0.300
Alpha = 90.0°
VIII-34
R O B O T K I N E M A T I C S
Joint 2:
Distance to Joint 3
Theta = 90.0
Tx = 0.6000
Joint 3:
VIII-35
8 R O B O T K I N E M A T I C S
Distance to Joint 4
Theta = -90°
Tx = -0.145
Alpha = -90.0°
Joint 4:
Distance to Joint 5
Tz = 0.60
Alpha = 90.0°
VIII-36
R O B O T K I N E M A T I C S
Joint 5:
Distance to Joint 5
Theta = 180.0°
Alpha = 90.0°
Joint 6:
VIII-37
8 R O B O T K I N E M A T I C S
Distance to Joint 5
Theta = 180.0°
Tz = 0.14
In this example we will define external axis for KUKA Robot with
Universal coordinates. In fact, we will put the Robot on Track
with one external linear axis in Y direction.
o Trans Y
o Set all Geometric Data to zero.
VIII-38
R O B O T K I N E M A T I C S
o X=0.5
o Y=-1.5
VIII-39
8 R O B O T K I N E M A T I C S
o Z=1.0
o X=0.6
o Y=0.2
o Z=1.0
VIII-40
R O B O T K I N E M A T I C S
Note: We must define external axis first, for all tag with value
zero. This is required because the robot must back from the
nonzero external axis in the zero external axis value for other
tags. After we define nonzero external axis value.
• Select the Tag T_1 and press the Move -> cTag
button.
• Select the Tag T_2 and press the same button.
VIII-41
8 R O B O T K I N E M A T I C S
VIII-42