0% found this document useful (0 votes)
35 views

Robotics Lab

The document discusses finding the forward kinematics of a PUMA560 robot using the Denavit-Hartenberg (DH) parameters method. It goes through 11 steps to determine the DH parameters including assigning coordinate frames, determining link offsets, lengths, joint angles and twist angles. This results in a 4x6 DH table being constructed. The forward kinematics calculation is also demonstrated using MATLAB code and the Robotics Toolbox.

Uploaded by

Abdul Moiz Qarni
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views

Robotics Lab

The document discusses finding the forward kinematics of a PUMA560 robot using the Denavit-Hartenberg (DH) parameters method. It goes through 11 steps to determine the DH parameters including assigning coordinate frames, determining link offsets, lengths, joint angles and twist angles. This results in a 4x6 DH table being constructed. The forward kinematics calculation is also demonstrated using MATLAB code and the Robotics Toolbox.

Uploaded by

Abdul Moiz Qarni
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Robotics Lab

Lab Report # 7
Submitted to: Engr. Shehbaz Khan
Submitted by: Abdul Moiz Qarni
Section: A
Registration # 17PWMCT0564
Due Date: 4th February 2021

University of Engineering & Technology


Peshawar

1
Contents
Introduction .................................................................................................................................... 3
Objective ......................................................................................................................................... 3
Solution ........................................................................................................................................... 3
Step 0: Number of Joints............................................................................................................. 4
Step 1: Assigning coordinate frame 0 to the robot base. ........................................................... 4
Step 2: Align zi with the axis of joint i+1. .................................................................................... 5
Step 3: Locate the origin oi at the intersection of zi and zi-1 ....................................................... 5
Step 4: Assigning the x coordinates ............................................................................................ 6
Step 5: Assigning the y coordinate ............................................................................................. 6
Step 6: Set origin on at the tool tip .............................................................................................. 7
Step 7: Finding the bi................................................................................................................... 7
Step 8: di = distance from origin oi-1 to bi measured along zi-1 ................................................... 7
Step 9: ai = distance from bi to oi measured along xi................................................................... 8
Step 10: θi = angle of rotation from xi-1 to xi measured along zi-1 ............................................... 8
Step 11: αi = angle of rotation from zi-1 to zi measured along xi.................................................. 8
DH Table: ......................................................................................................................................... 9
Matlab Part: .................................................................................................................................... 9
Conclusion ..................................................................................................................................... 10
References .................................................................................................................................... 11

2
Rigid Motions and Homogeneous
Transformation
Introduction
In robotics, the orientation of a robotic system can be represented in mathematical terms using
rotation matrices. Rotation matrices transform the coordinate axes (e.g. x, y, and z)
representing the orientation of a 3D object in one frame to the coordinate axes of another
frame. These matrices can help us determine how the end effector of a robot changes its
orientation due to changes in a robotic arm’s angle [1]
These matrix manipulation can very well be doing by hand using basic mathematics but gets
impractical in practice, therefore we can use premade toolboxes such as “Robotics, Vision and
Control” toolbox, which is an add-on in Matlab, developed by Peter Corke. [2]

Objective
 Find the Forward Kinematics of PUMA560 Robot

Solution
Let’s take a look at the PUMA560 Robot. The figure below shows a diagram of one:

Figure 1 Puma560 Diagram

3
The systematic way of finding the forward kinematics of it are through the DH table steps

Step 0: Number of Joints


Going back to figure 1, it can be seen that the numbers of total joints are joints 6 as shown in
the figure below

Figure 2 Number of Joints

Step 1: Assigning coordinate frame 0 to the robot base.


In this the base of the robot is going to be assigned ‘0’ as show in the figure below

Figure 3 0th frame

4
Step 2: Align zi with the axis of joint i+1.
In the skeletal diagram of the Puma below, all the z coordinates are assigned

Figure 4 Assigning z

Step 3: Locate the origin oi at the intersection of zi and zi-1


This is shown in the Figure below

Figure 5 Assigned the Origin

5
Step 4: Assigning the x coordinates
In the below figure are the xi and xi+1 coordinates

Figure 6 Assigning the x coordinates

Step 5: Assigning the y coordinate


In the below figure are the yi and yi+1 coordinates

Figure 7 Assigning y frame

6
Step 6: Set origin on at the tool tip
This part of the steps is already solved in the steps about with the x6, y6 and z6 having assigned
the directions as shown.

Step 7: Finding the bi


This would be by finding the intersection between xi and zi-1. After doing so, the result given
would be:

Figure 8 Finding the bi

Step 8: di = distance from origin oi-1 to bi measured along zi-1


A general measurement of the link length of the robot would be used for this step.Listing down
the numbers, the result is:
d1 = 0
d2 = 149.09mm
d3 = 0
d4 = 433.07mm
d5 = 0
d6 = 56.25mm

7
Step 9: ai = distance from bi to oi measured along xi
Likewise the distance used in this one is a generalized distance of a PUMA560 robot. The result
is:
a1 = 0
a2 = 431.8mm
a3 = -20.32mm
a4 = 0
a5 = 0
a6 = 0

Step 10: θi = angle of rotation from xi-1 to xi measured along zi-1


Using general parameters, the information is:
θ1 = 90
θ2 = 0
θ3 = 90
θ4 = 0
θ5 = 0
θ6 = 0

Step 11: αi = angle of rotation from zi-1 to zi measured along xi


Again using standardized parameters of a PUMA560 robot, we get:
α1 = -90
α2 = 0
α3 = 90
α4 = -90
α5 = 90
α6 = 0

8
DH Table:
Now with all the steps completed a DH table can be finalized to present the forward kinematics
of this robot.

Axis θ d a α
1 90 0 0 90
2 0 149.09mm 431.8mm 0
3 90 0 -20.32mm 90
4 0 433.07mm 0 -90
5 0 0 0 90
6 0 56.25mm 0 0

Matlab Part:
This program can be ran on Matlab as well with the following code:
startup_rvc
clc
clear all

startup_rvc
L1 = 0.4; L2= 0.1; L3 = 0.2; L4 = 0.3;

L(1) = Link([0, 0, 0, pi/2, 0])


L(2) = Link([0, 0, L1, 0, 0])
L(3) = Link([0, L2, L3, -pi/2, 0])
L(4) = Link([0, L4, 0, pi/2, 0])
L(5) = Link([0, 0, 0, -pi/2, 0])
L(6) = Link([0, 0, 0, 0])
Rob = SerialLink(L)
Rob.name = 'guy'

Rob.plot([pi/2,0,pi/2,0,0,pi/2])

This would plot us the following DH table:

9
Figure 9 Matlab DH table

And the following output image would be given:

Figure 10 Matlab robot output

Conclusion
This lab is about finding the kinematics and the DH table of any robotic figure. This process is
immensely simplified with the use of following some very basic steps, which take is step by step
to our end DH table result.

10
References

[1] [Online]. Available: https://automaticaddison.com/how-to-find-the-rotation-matrices-for-


robotic-arms/.

[2] [Online]. Available: https://petercorke.com/toolboxes/robotics-toolbox/.

11

You might also like