Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

Lab4

1. . Robot arm at zero-joint position


Picture below represents the position of the robot arm, when the joint angles (alpha) are equal 0.

Figure 1 Robot arm at 0 joint position Figure 2 0 joint postion in PolyScope

2. DH Parameters

Figure 3 DH frames for UR5 (Digital Design & Fabrication, 2021)


Figure 4 DH parameters for UR5 (Universal Robots, 2021)

3. Transform matrix of UR5

To obtain the equations regarding the change of variables there is the need of deriving
transform matrix (T06) for Universal Robot. Therefore, DH parameters of UR5 robot from manufacturer
website can be used.

All steps of derivation are represented in the attachment (name of attachment).

4. Position vector of Porg05


Calculation of position vector is shown in the attachment (Name of attachment).

5. Impact of change of variables on the y coordinate of position


vector from 0 to 6
The main purpose of this task was to check if change of joint angles excluding θ1 and θ5 (base
and wrist2) could impact the Y position of the final joint.

While having the derived position vector (06) from calculation (check:name of attachment) all of
the chosen variables can be substitute into the position equation. Three different random set of
variables were chosen to prove it.

In every case the final value was equal -0.191, which is not changing under different variables.

It can be also explained without calculations. Since robot arm is not rotated in terms of origin z
axis, therefore the Y coordinate of final frame cannot be changed.
6. Equation of θ1 based on geometrical model

In order to get the equation of θ1 it is possible to either extract it from transform matrix
calculated in previous step by substituting other joint angles by 0. Calculations can be checked in the
attachment (Name of attachment).

The second way is to define θ1 by geometrical sketch.

The Z axis does not depend on θ1.

7. Equation for θ5
Since θ1 was defined it can be used to define θ5 for next joint. In this case θ5 can be
once again either defined from Porg06 or geometrically. By substituting all joint angles except
first and fifth by 0 we can get equations, which depends on θ1 and θ5. (check: Name of
attachment).

The geometrical solution would look like this:

8. Y coordinate of Porg16
The calculus of Y coordinate is represented in the attachment (name of attachment).

9. Finding other joint variables


All calculations with explanation are represented in the attachment (name of attachment).

10. RoboKiSim
Software allows to find different solutions for the same end-effector position. It might be useful
especially when one must define other ways to reach specific point without for example facing obstacle.
When the end-factor has to reach for example position (x:300,y:400,z:500) program generates 512
different set ups of joint angles in order to reach this point.
Figure 5 Screenshot from RoboKiSim nr1

However, sometimes simulator is not respecting singularities and joint limits, therefore some of
the settings can be totally wrong, that is why it is up to the operator and his common sense to choose
the proper set-up. Example is shown below.

Figure 6 Screenshot from RoboKiSim nr2

11. Results for the same joint angles in different programs


In this part three different achieved solutions were compared. First one is the outcome achieved from
calculus created by the group in MathCad. Solution can be seen in the attachment (name of
attachment). The second was to use the Excel fine with forward kinematics provided by Universal Robot
Academy (see: name of attachment). And the third way was to use RoboKiSim program. Below there is
the representation of solutions from those three different approaches.
Figure 7 Comparison of different results

Difference in results comes from rounding error, however three shown results are pretty close
to each other.

12. Same end-effector position with different joint angles


While having all needed data gathered during calculations, it is possible to use them on the real
robot to check if they are working properly. Below there is representation of robot arm with joint
variables generated by RoboKiSim in two configurations.

Figure 8 First configuration

Figure 9 Second configuration


13. Singularities

Figure 10 Types of singularities in UR5 (Mecademic, 2021)

A robot singularity is a configuration in which the robot end-effector becomes blocked in certain
directions and robot arm loses one or more degrees of freedom. Below is the representation of elbow
singularity

Figure 11 Elbow singularity

You might also like