Unit 15
Automation, Robotics and
Programmable Logic
Controllers (PLCs)
Lecture 5 – Robot
Control and
Programming
Lecturer
Dr. (Mrs) R. M. M. Ruwanthika
[email protected] Trajectory Generation - Introduction
❑ A trajectory that describes the desired motion of a manipulator
❑ Trajectory refers to time series data of position, velocity, and
acceleration
❑ In order to make a description of manipulator motion easy for
the human user
▪ Allow specifying trajectories with simple descriptions
▪ E.g. specify desired goal and orientation and leave system to decide
shape of the path, duration and velocity
❑ Trajectory generation
▪ Most of the cases, in run time
▪ Velocity acceleration computed
▪ Trajectory points are updated at a certain rate –path update rate
2
Trajectory Generation-Introduction
How to compute a trajectory in multidimensional space which
describes the desired motion of a manipulator?
e.g. motion of tool frame
How to move a manipulator from its initial position to
some desired goal position in a smooth manner?
3
Trajectory Generation - Trajectory
❑ A time history of position, velocity, and acceleration for each
DOF
❑ The system (not the user) will decide the exact shape of the
path to get to the goal, the duration, the velocity profile, and
other details
❑ A sequence of desired via points (frames which specify
position and orientation of tool) can be given.
❑ Path points include all the via points plus the initial and final
points.
4
Trajectory Generation- Considerations
❑ Each path point is specified in terms
of a desired position and orientation
of {T} relative to {B}
❑ Each of these points is converted into
a set of desired joint angles. (Inverse
kinematics) {T}
❑ A smooth function is found for each {B}
of the n joints which pass through the
via points and end at the goal point
❑ The time required for each segment
is the same for each joint
5
Joint Space Scheme
❑ A method of path generation which path shapes are described
in joint angles
❑ The path is specified in the joint space
▪ Easy to compute
▪ No problems with singularities
❑ Each path point is usually specified in terms of desired
position and orientation of tool frame {T}
❑ Each of these via points is converted into a set of desired joint
angles by inverse kinematics
❑ Then a smooth function is found so that all joints will reach
the via point at the same time
6
Joint Space Scheme-Cubic Polynomials
❑ Consider a problem of moving tool from initial position to
final position
4 constraints on (t )
(0) = 0 , (t f ) = f : initial and final values
(0) = 0, (t f ) = 0 : the function is continuous
in velocity
These 4 constraints can be satisfied by a polynomial
of at least third degree
(t ) = a0 + a1t + a2t 2 + a3t 3
7
Joint Space Scheme-Cubic Polynomials
❑ Possible paths for a single joint
Goal
position
Initial
position
8
Joint Space Scheme-Cubic Polynomials
Joint velocities and accelerations
Then
9
In Class Exercise – Q1
A single link manipulator with a rotary joint is at = 15 degree. It
is desired to move the joint in a smooth manner to = 75 degrees
in 3 seconds. Find the coefficients of cubic polynomial for this
motion?
Plot position, velocity, and acceleration of the joint as a function
of time
[10 minutes]
10
Joint Space Scheme-Cubic Polynomials-E.g
11
Cubic Polynomials for a Path
With Via Points
❑ Allow paths to specified that includes intermediate via points
❑ Pass through the via point without stopping
❑ Each via point is specified in terms of a desired position and
orientation of {T} relative to {B}
❑ Each of these via points is converted into a set of desired joint
angles. (Inverse Kinematics)
❑ Consider the problem of computing cubic which connect the
via point values for each joint together in a smooth way
12
Cubic Polynomials for a Path
With Via Points
❑ If the velocities at via points are known
Apply to each segment
13
How to Specify Desired Velocity
at the Via Points?
Several ways:
❑The user specifies the desired velocity at each via point
in terms of a Cartesian linear and angular velocity of {T}
at that instant
❑The system automatically chooses the velocities at the
via points
❑The system automatically chooses the velocities at the
via points in such a way as to cause the acceleration at
the via points to be continuous
14
How to Specify Desired Velocity
at the Via Points?
Tangents to the curve at each via points
If the slope of these lines changes sign at the via point, choose zero
velocity, if the slope of these lines does not change sign,
choose the average of the two slopes as the via velocity.
15
Higher Order Polynomials
❑ If we wish to be able to specify the position, velocity, and
acceleration at the beginning and end of a path segment, a
quintic polynomial is required.
(t ) = a0 + a1t + a2t 2 + a3t 3 + a4t 4 + a5t 5 ,
:the constraints are given as
0 = a0 ,
f = a0 + a1t f + a2t 2f + a3t 3f + a4t 4f + a5t 5f ,
0 = a1 ,
f = a1 + 2a2t f + 3a3t 2f + 4a4t 3f + 5a5t 4f ,
0 = 2a2 ,
f = 2a2 + 6a3t f + 12a4t 2f + 20a5t 3f .
16
Higher Order Polynomials
The solution for a linear set of equations with six unknowns:
17
In Class Exercise – Q2
A rest-to-rest path with no acceleration at the rest positions with
the following conditions:
𝜃0 = 10° 𝜃𝑓 = 45° 𝜃ሶ0 = 0 𝜃𝑓ሶ = 0 𝜃ሷ0 = 0 𝜃ሷ 𝑓 = 0
i. Find the coefficients of quintic polynomial for this motion.
ii. Find the path equation.
[10 minutes]
18
Industrial Robot-Details
26
Industrial Robot-
Details
Frames
27
Robot Kinematics
Forward Kinematics (angles to position)
What you are given: The length of each link
The angle of each joint
What you can find: The position of any point
(i.e. it’s (x, y, z) coordinates
Inverse Kinematics (position to angles)
What you are given: The length of each link
The position of some point on the robot
What you can find: The angles of each joint needed to
obtain that position
28
Selection of Robots - Discuss
Different
families Payload
Small/mediu
m/large Tool
Workspace
For specific & DOF
applications
29
New directions in Development of Robotic
Systems-Teaching demonstrations
http://www.kuka-
robotics.com/en/products/industrial_robots/sensitiv/lbr_iiwa_7_r800/start.htm 30
Robot
mastering
Start up
Base Tool
calibration the calibration
robot
Load
data
31
THANK YOU
33