You are on page 1of 16

Unit 5 Trajectory Planning

5.1 Trajectory Planning

 To accomplish a specific task, the end-effector of manipulator must move in a particular


fashion.
 Trajectory planning deals with finding the movement pattern to achieve a task.
 The goal of trajectory planning is to describe the required motion of the manipulator as a
time sequence of joint/link/end-effector locations and the derivatives of locations, which
are generated by interpolating or approximating the desired path by a polynomial
function.

5.2 Commonly Used Terminology in Trajectory Planning


Path:
A path is the locus of points to be traversed by the manipulator to execute the specified task.
A path is purely geometric description of the motion.
Trajectory:
A trajectory is a path with specified qualities of motion, i.e. a path on which time law is
specified in terms of velocities and / or accelerations at each point. In other words, a
trajectory is the time sequence of position, velocity and acceleration for each joint or end-
effector of the manipulator.
Knot Points or Via Points or Interpolation Points:
These are a set of intermediate locations between the start point and destination point on the
trajectory through which the manipulator must pass.
Spline:
It is the smooth function that passes through the set of via points.

5.3 Steps in Trajectory Planning


Trajectory planning is divided into three steps:
 Task Description
 Selecting and employing a trajectory planning technique
 Computing the trajectory
Task Description

 The first step in trajectory planning is to identify the kind of motion required.
 The kinds of motion commonly encountered are:
 Point – to – point (PTP) motion
 Continuous path (CP) motion and
 Motion with more than two points specified (Point – to – point with via points)
 In point – to – point motion, the initial and final end-effector locations are specified. It is
not of interest what path the arm takes to reach the destination point. It is enough if the
arm reaches from one point to another in given time. Such motions are suitable for simple
pick and place applications, where the path taken by the arm is not important.
 In continuous path motion, in addition to the start and end points, the path to be
traversed by the arm is also specified. This type of motion is suitable for applications such
as welding and painting.
 Another type of motion is one where more than two points of the path are specified. This
is an extension of point to point motion, which ensures better monitoring of the executed
trajectory. This is suitable for pick and place application with obstacle between the pick
and place points.

16EI450 Robotics & Automation IV EIE SNSCT


1
Unit 5 Trajectory Planning

Selecting and employing a trajectory planning technique

 The trajectory planning techniques are classified as:


 Joint space techniques and
 Cartesian space techniques
 The selection of the technique depends on the nature of task.
 For PTP motion (with or without via points), joint space techniques are employed,
wherein the motion planning is done at joint level.
 For continuous path motion, Cartesian space techniques are used, wherein the motion
planning is done at end-effector level. In this case the joint variables required to achieve a
desired end-effector location is calculated from inverse kinematics.

Computing the trajectory


The final step in trajectory planning is to compute the time sequence of values attained by the
functions generated from the trajectory planning technique.

5.4 Joint Space Vs. Cartesian Space

Joint Space Cartesian Space


 Simple to implement  Computationally complex
 Does not account for existence of  Takes the existence of obstacles into
obstacles in workspace. account.
 Difficult to predict the resulting end  Easy to specify the position and
effector motion that will be produced. orientation of rigid body.
 Accuracy is more.  Accuracy is less.
 Planned paths do not have singularities.  Planned paths may have singularities.
 Representation of task is not simple and  Better and simpler representation of task.
clear

5.5 Joint Space Trajectory Planning


The joint space trajectory planning techniques are:
 Third Order Polynomial Trajectory Planning
 Fifth Order Polynomial Trajectory Planning
 Linear Segments with Parabolic Blends
 Higher order Trajectory Planning

5.5.1 Third Order Polynomial Trajectory Planning


In Third Order Polynomial Trajectory planning, a Third Order equation describes the
trajectory, which is given by:
( ) ( )
There are four unknowns to be found in (1), so four conditions are required here. The initial
position, final position, initial velocity and final velocity are used to find the four unknowns.
Generally the initial and final positions are given and the initial and final velocities are
assumed to be zero.
Let us assume that the initial and final conditions are given by:
( )
( )

16EI450 Robotics & Automation IV EIE SNSCT


2
Unit 5 Trajectory Planning

̇( )
̇( )
From (1),
̇( ) ( )
Assuming the initial time to be , substituting the initial and final conditions in (1) and
(2), we get
Consider ( )
( ) ( ) ( ) ( ) ( )

But ( )

Consider ̇ ( )
̇( ) ̇( ) ( ) ( )
But ̇ ( )

Consider ̇ ( )
̇( )
But ̇( )

( )
Consider ( )
( )
But ( )

( )
Solving (3) and (4), a2 and a3 can be found.

Problem
1) It is required that the joint of a robot move from an initial angle of 30° to a final
angle of 60° in 5 seconds. Using third order polynomial, estimate the joint angles at 1, 2
and 4 Seconds.
Sol.
Given
Initial time
Final time
Initial angle ( )
Final angle ( )
Let us assume that the initial and final velocities are zero i.e. ̇ ( ) ̇( )
Let the third order polynomial describing the trajectory be
( )
̇( )
Consider ( )
( ) ( ) ( )

16EI450 Robotics & Automation IV EIE SNSCT


3
Unit 5 Trajectory Planning

Consider ̇ ( )
( ) ( )

Consider ( )
( ) ( ) ( )

Substituting the values of a0 and a1, we get,


( )

( )

Consider ̇ ( )
( ) ( )

Substituting , we get

( )
Solving (1) and (2), we get

Hence the equation of trajectory is

( ) ( )

( )

The joint angles are found by substituting different values of t in θ(t)


( ) ( ) ( )

( ) ( ) ( )

( ) ( ) ( )

5.5.2 Fifth Order Polynomial Trajectory Planning


In Fifth Order Polynomial Trajectory planning, a Fifth Order equation describes the
trajectory, which is given by:
( )
There are six unknowns to be found in (1), so six conditions are required here. The initial
position, final position, initial velocity, final velocity, initial acceleration and final
acceleration are used to find the six unknowns.
Problem
1) It is required that the joint of a robot move from an initial angle of 45° to a final
angle of 90° in 4 seconds. Using fifth order polynomial, estimate the equations for joint
angles, positions, velocities and accelerations, assuming an initial acceleration and final
deceleration of 5 deg/Sec2.
16EI450 Robotics & Automation IV EIE SNSCT
4
Unit 5 Trajectory Planning

Sol.
Given
Initial time
Final time
Initial angle ( )
Final angle ( )
Initial Acceleration ̈ ( )
Final Acceleration ̈ ( ) ( )
Let us assume that the initial and final velocities are zero i.e. ̇ ( ) ̇( )
Let the fifth order polynomial describing the trajectory be
( )
̇( )
̈( )
Consider ( )
( ) ( ) ( ) ( ) ( )

Consider ̇ ( )
( ) ( ) ( ) ( )

Consider ̈ ( )
( ) ( ) ( )

Consider ( )
( )
Substituting the values of a0, a1, a2 we get,

( )
Consider ̇ ( )
( )
Substituting the values of a0, a1, a2 we get,

( )
Consider ̈ ( )

Substituting the value of a2, we get,

( )
Solving (1), (2) and (3), we get,

Hence the equation for joint angle is


( )

16EI450 Robotics & Automation IV EIE SNSCT


5
Unit 5 Trajectory Planning

The equation for joint velocity is


̇( )
̇( ) ( ) ( )
̇( )
The equation for joint acceleration is
̈( )
̈( ) ( ) ( ) ( )
̈( )

5.5.3 Linear Segments with Parabolic Blends Trajectory Planning


If the joints are operated at constant speed between the initial and final locations, the
accelerations have to be made infinite at the beginning and end points to create instantaneous
velocities at these two points. To prevent this problem, Linear Segments with Parabolic
Blends Trajectory Planning is adopted.
In Linear Segments with Parabolic Blends Trajectory Planning, the linear segments
are blended with parabolic sections at the beginning and end of the motion segment to create
continuous position and velocity variations. In this case, the equation is given by:

( )

5.5.4 Higher Order Polynomial Trajectory Planning


If in addition to the initial and final position, via points are also given then higher order
polynomial trajectory planning technique is preferred. In this case, the continuous movement
is considered as series of point-to-point motions. In this case, the equation is given by:

( )

5.6 Cartesian Space Trajectory Planning


The techniques that were used for joint space planning can be used here. In case of joint
space technique, the value obtained is the direct joint value. But in case of Cartesian space
technique, from the obtained value, joint values must be computed using inverse kinematics
approach. So Cartesian space trajectory planning is complex when compared to joint space
planning.
The step by step process followed in Cartesian space planning is describes as follows:

 Increment the time by


 Calculate the position and orientation of the hand based on the selected function (third
order / fifth order / higher order polynomial / linear segment with parabolic blends)
for the trajectory.
 Calculate the joint values for the obtained position and orientation using inverse
kinematics approach.
 Send the joint information to the controller.
 Go to the beginning of loop.

16EI450 Robotics & Automation IV EIE SNSCT


6
Unit 5 Trajectory Planning

5.7 Introduction to Robot Programming


Programming a robot is very important since the task it performs depends on how it is
programmed. The robot programming can be classified as:
 Online Programming
 Powered Lead through
 Manual lead through or walk through
 Offline Programming
 Robot Oriented Programming
 Task Level Programming

5.7.1 Online Programming

 Online programming takes place at the production site itself by skilled operators and
involves the workcell. Online programming is also called teaching–by–showing.
 Online programming is basically a lead through programming method, where the robot
arm is moved and these movements are recorded / stored in a memory.
 Online programming is further classified as powered lead through and manual lead
through based on whether a teach pendant is used or the operator himself leads the hand
of robot.
 As the robot arm moves, the points are stored in memory for future playback.
 There are two ways of recording the trajectory of the arm motion, namely point-to-point
(PTP) or continuous path (CP).
 In the PTP method, the arm is transferred to each characteristic point of the trajectory,
stopped there, and by pressing a button on the control panel, this position is memorized
by the system. During playback, the robot arm goes through these points.
 In the CP method, the positions are recorded automatically at constant intervals of time as
the arm is moved. During playback, the robot traverses the path as stored in memory
 The advantages of online programming are:
 Simplicity in programming
 Easily accessible
 Real time programming
 The disadvantages of online programming are:
o While programming is being done, robot must be idle
o Program logic and calculations are hard to program
o Difficult to incorporate sensor data
o Cost is equivalent to production value
o Not compatible with CAD/CAM technologies, data communications, networking and
other computer based technologies.
Powered Lead through Programming
 The powered lead through programming makes use of a teach pendant to control various
joint motors, and to power the robot arm and wrist through a series of points in space.
 Each point is recorded into memory for subsequent playback during the work cycle.
 The teach pendant is usually a small hand held control box with combinations of toggle
switches, dials and buttons to regulate the robot’s physical movements and programming
capabilities.
 This technique is limited to joint–to– joint motion applications as it is extremely difficult
to use teach pendant for complex motions in case of continuous motion applications.
 This technique can be used in applications such as parts transfer, machine loading &
unloading and spot welding.
16EI450 Robotics & Automation IV EIE SNSCT
7
Unit 5 Trajectory Planning

Manual Lead through / Walk through Programming


 In manual lead through method, the programmer physically grasps the robot arm and
manually moves it through the desired motion cycle. The path is stored in memory of the
robot and the robot is capable of playing back this motion cycle.
 In cases where physically moving the robot arm is difficult, assistive devices or small
replicas of the arm can be used.
 This technique is very well suited for continuous path motion applications, where the
motion cycle involves smooth curvilinear movements of the robot arm.
 This technique can be used in applications such as spray painting and continuous arc
welding.

5.7.2 Offline Programming


Offline programming can be carried out on a computer away from the production site and
does not involve the work cell.
The steps in offline programming are:
 CAD model generation – Creation of 3D CAD model of the robot and workpieces.
 Tag creation – Recognizing the position of an object
 Motion planning – Trajectory is planned and chosen to avoid issues of reachability
and collision avoidance
 Process planning – necessary when more than one robot is in operation
 Post-processing – addition of input-output control signals to the equipment in the
workcell with which the robot interacts
 Simulation – verification of motion is carried out and checked for collision with
objects in environment
 Calibration – done to make corrections as geometry of elements in workcell is
different from that of real time.
The features expected out of offline robot programming are:
 Real time operating system
 World modeling
 Motion control
 Input / output
 Sensor data reading
 Interaction with physical system
 Error detection capability
 Recovery of correct operational functions
 Specific language structure
The advantages of offline programming are:
 The robot need not be disturbed while programming
 Reduction in cost as robot is in operation during programming
 Programs can be changed quickly
 Debugging is easy
 Existing CAD data can be reused
 Optimization of workspace layout
The drawbacks of offline programming are:
o Need of expert programmers
o Additional investment in offline programming system
Offline programming can be of two types:
 Robot oriented and
 Task oriented or Object oriented

16EI450 Robotics & Automation IV EIE SNSCT


8
Unit 5 Trajectory Planning

Robot Oriented Programming


 It is a structural programming language which can incorporate high – level statements and
have the characteristics of an interpreter language in order to obtain an interactive
environment.
 In robot oriented programming, the assembly task is explicitly described as a sequence of
robot motions. The robot is guided and controlled by the program throughout the entire
task with each statement of the program roughly corresponding to one action of the robot.
 Some features of robot oriented programming are:
 Text editor
 Complex data representation structures
 Use of predefined state variables
 Matrix algebra operations
 Symbolic representations for coordinate frames
 Subroutines with data and parameter exchange
 Logic conditioning and queuing by means of flags
 Capability of parallel computing and
 Functions of PLC
Task Oriented Programming
 In task oriented programming, the assembly task is expressed as a sequence of positional
goals of the object rather than the motion of robot needed to achieve these goals.
 Task oriented programming is divided into three phases:
 Task specification
 World modeling and
 Program synthesis
 Task specification allows the user to describe the task in a high level language.
 World modeling deals with consulting a database depending on the task.
 Program synthesis transforms the task specification into robot-level program that will
accomplish the task.
 In case of Task oriented programming, the user just supplies the input-output
requirements of the desired task. The required program is generated by the system to
produce the desired input-output behavior.

5.8 Current Applications of Robot


The current applications of robots can be categorized as:
 Industrial Applications and
 Non – industrial applications
The robots used in industries are referred to as industrial robots or steel collar workers.
Robots find application in industries in four major fields:
 Material Handling
 Processing
 Assembly and
 Inspection
5.8.1 Robots in Material Handling applications
The most basic application of robot is for pick and place operation. Some applications that
require pick and place operation are:
 Material transfer application
 Machine loading / unloading application and
 Palletizing application

16EI450 Robotics & Automation IV EIE SNSCT


9
Unit 5 Trajectory Planning

1) Robots for Material transfer application:


The primary objective in material transfer application is to move a part from one location to
another. This application usually requires a relatively simple robot with few degrees of
freedom and a simple controller. The end-effector motion required for the work cycle is only
point-to-point motion as the path traversed by the end-effector is not important here. The
material transfer application is illustrated in fig.1. below.

Move to desired position

B C
Safe distance

Move Away
D

A Desired position of part


Conveyor Work Table (Delivery Point)

Pick up Point

Fig.1. Material Transfer work cycle (A – B – C –D)


The sequence of operations in material transfer is as follows:


The part to be transferred is made available to the robot at a fixed known location and
orientation called the “pick up point”.
 The robot end-effector approaches this known location (pick up point, point A),
grasps the part using the gripper attached to the end-effector, and moves away from
this point to a safe distance (Point B).
 The end-effector moves close to the position where the part is to be placed (Point C)
and places the part at the desired location (delivery point, Point D).
In pick and place operation described above, it is very important that the part to be picked is
available at the pick-up point and after it is placed at the delivery point it should be removed
before another part arrives.

2) Robots for Machine Loading & Unloading application:

The primary objective in machine loading and unloading application is to pick the part from a
point, place it in machine, wait for some process to take place on the part and then move it to
another machine or to the delivery point as the case may be. The machine loading and
unloading application is illustrated in fig.2.

16EI450 Robotics & Automation IV EIE SNSCT


10
Unit 5 Trajectory Planning

Machine 2
Machine 1

Robot
Workspace

Input Output

Robot
Pickup Parts here Place finished Parts here

Fig.2. Machine Loading and Unloading Application

The sequence of operations in machine loading and unloading is as follows:

 The robot reaches the pick-up point and picks the part using its gripper.
 The robot then moves towards the machine1 and places the part in desired position
and orientation into the work holding device of the machine1.
 Once the part is loaded into the machine, some manufacturing operations are
performed on the part by the machine and then the part is unloaded from the machine.
 For unloading, the robot picks the part from the work holding device of the machine
and places it either in another machine or places it at the delivery point, as the case
may be.

In machine loading and unloading application, the timing of the robot and the machine must
be coordinated. The robot’s cycle time must match the machine’s cycle time. For this
coordination, the robot controller must establish communication with the machine or monitor
the machine operation with the help of suitable sensors and controllers.

Machine loading and unloading is not just restricted to loading / unloading of parts. Robots
can also be used to load / unload tools, raw materials etc. some manufacturing operations
where robots are successfully used are forging, plastic moulding, Die casting etc. As the
environment of these work places is hazardous, the use of robots is justified for these
applications.

3) Robots for Palletizing application:

Palletizing refers to stacking of parts, material or cartons on a pallet in a specified manner. In


palletizing applications, individual parts are picked from a fixed pickup point and moved for
placing them on the pallet. In Depalletizing application, the parts from a pallet are picked up
and placed at a fixed delivery point. The major difference between palletizing and pick – and
– place application is that, the placing point / destination is not fixed but keeps changing with
every part till the pallet is full. The palletizing operation is shown in fig.3.

16EI450 Robotics & Automation IV EIE SNSCT


11
Unit 5 Trajectory Planning

Fig.3. Palletizing Application


The sequence of operations in palletizing application is:
 The robot reaches the pick-up point (Point A), picks the part.
 The robot moves along the specified path B – C – D and places the part in the delivery
point (Next Location)
 Again the robot moves to point A, picks another part, moves to new delivery point
and places the part. This cycle is repeated until the pallet is full.
Robots can be easily programmed to perform palletizing operation. The program computes
the delivery point for each part, while keeping the count of number of parts to detect when
the pallet is full. When the pallet is full, it is removed and an empty pallet is placed. Sensors
and micro-switches in the workcell coordinate these operations with the robot controller.

5.8.2 Robots in Processing Applications such as welding and painting:


Processing applications are those where the end effector is a tool rather than just a gripper.
The tool may either be fixed permanently to the end of wrist or can be temporarily fixed to
the wrist. The robots with replaceable tools are preferred as they offer great flexibility in
adapting to new application. Some processing applications where robots are used include Arc
Welding, Spot Welding, drilling, polishing, water jet cutting, Spray Painting and Paint
Scraping.
Robots in Arc Welding Application
Arc welding involves continuous long welding to make a welded joint between two parts.
The arc welding equipment consists of an electrode holder, an electrode, a low voltage high
current electric supply and cables. An arc is initiated between the electrode and the metal
pieces to be joined and this arc produces temperatures sufficient to melt the parts locally and
form a pool of molten metal to fuse the two pieces together. The welder moves the electrode
along the path where welding is to be done. It may be a simple straight line path or a complex
curved path. Arc welding of straight line and curved paths is illustrated in fig.4.

Fig.4. Arc Welding of a) Straight Line Path b) Curved Path


16EI450 Robotics & Automation IV EIE SNSCT
12
Unit 5 Trajectory Planning

Since the arc produces UV radiation, it can damage human vision. The other dangers of arc
welding include high temperature, molten metal, flying sparks and toxic fumes. All these
factors justify the use of robots for arc welding applications.
The issues to be tackled in utilizing robots for arc welding are:
 The arc welding process is in low quantity and the path of welding is not constant
(changes with need)
 The edges to be welded are often irregular.
 The path to be negotiated by the electrode is complex
 The quality of weld depends on the speed of electrode movement. If speed is low,
more metal will deposit and if speed is more, less metal will get deposited.
The requirements of a robot for arc welding are:
 The manipulator should be capable of moving its tool-point along a trajectory in
three-dimensional space.
 It must be capable of continuous point motion rather than point-to-point motion.
 It should have a feed mechanism for electrode.
 The workcell controller must coordinate the robot motion, electrode feed, the spark
gap, the welding current and other activities in workcell.
 The loading of parts for welding operation may be done either manually or by another
robot. If another robot is used for loading of parts, then the work cycle of these two
robots must be synchronized.
 The workspace of the welding robot must be large enough to accommodate the parts
to be welded.
 If sensors are provided to track the path of welding, then the welding can be done
easily and effectively.

5.8.3 Robots in Assembly Applications


Assembly is the final stage of manufacturing where a lot of human laborers are involved.
Assembly is the fitting of two or more discrete parts together to form a new product or sub
assembly. The assembly operation involves considerable amount of handling, positioning and
orientation of parts and applying controlled force to mate them together properly. Since
interaction between two parts is involved, this application of robot is complex compared to
other applications.
The simplest assembly application is peg–in–hole assembly. Though placing the peg in hole
is simple application for human beings, it is a very complex task for a robot.

Peg-in-hole Assembly Application:

Fig.5. Peg – in – hole Assembly application

16EI450 Robotics & Automation IV EIE SNSCT


13
Unit 5 Trajectory Planning

The assembly of round peg in round hole is illustrated in fig.5(a). For this operation,
the orientation of peg about its own axis is not required for correct assembly. Hence a robot
manipulator with 5 degrees of freedom can perform the task. If the assembly involves a part
that is not symmetric about its own axis, for example assembly of square peg in a square hole
(fig.5(b)), the robot manipulator requires one additional degree of freedom.

Fig.6. Multiple Peg-in-Hole Assembly Application

A complex multiple peg-in-hole assembly operation is shown in fig.6. In this case many
components like resistor, inductor, capacitor, ICs etc. have to be placed in many holes
available on the PCB.

Steps in Assemble Application:

Assembly operation generally involves four steps. They are:

 Approach
 Hole – crossing
 One-point contact and
 Two-point contact

These four steps are illustrated in fig.7. below.

Fig.7. Stages in peg-in-hole assembly

16EI450 Robotics & Automation IV EIE SNSCT


14
Unit 5 Trajectory Planning

5.8.4 Robots in Inspection Application

Application of robots for inspection is an emerging area. Manual inspection of finished


product as well as the in-process parts is tedious and monotonous task for human operator. In
large scale production areas, 100% inspection is impossible. Robotics can play a major role in
such cases. Robots can be used to inspect physical dimensions, surface finish and other
characteristics of raw materials, intermediate stages of parts, finished parts, sub-assemblies or
finished products.

There are two types of inspection:

 Sensor based inspection and


 Vision based inspection

Sensor based Inspection:

By placing sensors on the gripper, specific physical dimensions can be determined by the
robot. In material handling, when a part is being transferred from one place to another, the
sensors fitted to the gripper can be used to assess the size of the part being carried and
information regarding whether the part is of desired size can be obtained. If the size of the
part is correct, it can be placed at desired place else it can be thrown in bin or sent for further
processing.

Vision based Inspection:

A robot’s vision system can also be utilized for inspection purpose. The factors to be
considered for design of robotic vision based inspection system are:

 Proper lighting of workspace is to be ensured


 Camera with required resolution to extract dimensions and other features to the
desired accuracy is to be ensured
 The field of view must be large enough to accommodate the part
 The robot should have sufficient DOFs to manipulate the camera or part as the need
arises.

5.9 Non – industrial Applications of robots


Home Sector:
Sweeping and cleaning
Cooking
Entertainment
Replacing Pets
Garden Maintenance
Security
Health Care
Patient care and monitoring
Surgery
Rehabilitation – prosthetic limbs and robotic wheel chairs
Service Sector
Traffic Control
Fire Fighting

16EI450 Robotics & Automation IV EIE SNSCT


15
Unit 5 Trajectory Planning

Drive a Vehicle
Sweep office, classroom, and streets
Manage shopping malls
Serve food in restaurants
Maintenance and repair
Disaster recovery
Agriculture and Farms
Plough fields, sow seeds and transplant saplings
Pluck, sort and pack fruits
Breed livestock
Animal shearing
Research and Exploration
Space exploration
Under-sea exploration
Nuclear research
Geological exploration

End of unit-5

16EI450 Robotics & Automation IV EIE SNSCT


16

You might also like