Robotics Note M
Robotics Note M
Robotics Note M
PREPARED BY DR.B.B.CHOUDHURY,
05.05.2016
bbchoudhury@igitsarang.ac.in
MODULE-I
Robots
An important part of the automation scene is the area of “Robotics” a multidisciplinary field that
involves mechanical, electronics and several other engineering disciplines. Though the ultimate
aim is to attempt emulate human activities, something which is extremely difficult to attain, these
attempts have resulted in development of robots. These are beneficial in handling hazardous
tasks and for operating in hazardous areas like chemical or nuclear plants. Examples of such
tasks include plates being x-rayed for inspection of internal cracks and flaws, a routine but
hazardous operation.
Where complex movements are involved as in welding along a 3D profile, robots can be used for
assuring quality and consistency. In assembly operation of precision and tiny parts, like in
watches, robots perform with accuracy and repeatability. (The SCARA robot developed in Japan
is one such robot specifically suit5able for precision assembly tasks.) Painting is hazardous to
humans and also complex movements are involved (for example in painting a car body) and in
such applications robots may replace human beings.
Robots have certain inherent capabilities and limitations, just as any other machine or human
being does, and these should be borne in mind when attempting to use them in a given
application. A lathe is best used for generating cylindrical objects and milling machines are ideal
for producing prismatic parts. One would not attempt to use a lathe for manufacture of prismatic
parts or a milling machine to produce cylinders. Thus manufacturing processes are chosen to suit
the product and conversely, products should be designed to suit the manufacturing process. This
philosophy applies to robotics also. One cannot expect a given robot to execute any arbitrary task
or handle any product. Sometimes it may be beneficial to redesign the product to enable robots to
handle them with ease. A well-known example of designing a product to suit robots is the SONY
“Walkman” which has been designed for ease of assembly by robots.
Today robot finds applications in industries, medical and other fields. For example, in eye
surgery (replacement of retina), where a cylindrical portion needs to be replaced, the operation is
best done by robots. Mobile robots like walking machines, hopping machines are examples of
robots, and so also are robotic aircraft and ships. Nuclear and power plants uses fish like robots
which move inside pipes for purpose of inspection
Computers are required for higher level control of such complex systems. Computers convert
higher level commands to lower level commands for purpose of interpreting sensor outputs and
controlling motors in these machines. In autonomous robots, operating at remote locations,
endurance of power supply (batteries) may be an issue.
Three Laws of Robotics"
• A robot may not injure a human being or, through inaction, allow a human being to come
to harm.
• A robot must obey orders given it by human beings except where such orders would
conflict with the First Law.
• A robot must protect its own existence as long as such protection does not conflict with
the First or Second Law.
History of robots :
• Actuators
• Transmission systems
• Power supplies & power storage system
• Sensors
• Microprocessors & controllers
• Algorithms & software (higher level & lower level)
Actuators:
Actuators are basically prime movers providing both force and motion. Pneumatic cylinders,
hydraulics, permanent magnet motors, stepper motors, linear motors are some conventional
actuators. More advanced ones are based on hi-tech polymers, shape memory alloys, piezo
patches, and pneumatic muscles. Brushless servo motors also exist for low noise levels, and
printed armature motors are used for quick response.
Transmission systems:
The transmission system used in robot to transmit power and motion consists of chains, timing
belts, metal belts, cables and pulleys and linkages. Gear boxes and harmonic drives serve to
provide speed reduction. Ball screws are used with suitable mechanisms to convert rotary motion
to linear motion and if needed back to oscillatory motion. Drive stiffness is an important
consideration in robotics and so also is backlash.
Power supplies:
Hydraulic and Pneumatic power packs: These consist of a motor driving a positive displacement
pump or compressor to generate the high pressure fluid flow. In using hydraulic systems the
necessity of having an oil tank increases the weight of the system, additionally the issue of
ensuring that the oil is free of contaminants is to be handled. In pneumatics power pack dry air is
desired. Electric motors use what ate known as PWM (pulse width modulation) amplifiers. These
are electronic devices, consisting of transistors used as switches to rapidly switch on and off the
supply in a controlled manner to control motor speeds. Such drives have higher efficiency.
Electronics:
There are a host of electronic circuits, motor controllers, analog to digital converters and digital
to analogue converters, frame grabbers and so on utilized to handle sensors and vision systems
and convert the inputs from them into a form usable by the processor for control of the entire
system in conjunction with the algorithms and software developed specifically for the purpose.
Software:
The software used consists of several levels. Motor control software consists of algorithms which
help the servo to move smoothly utilizing the data from feed-back units. At the next level there is
software to plan the trajectory of the end effector and translate the same into commands to
individual motor controllers. The output of sensors is also to be interpreted and decisions made.
At the highest level there is software which accepts commands from the user of the robot and
translates it into appropriate actions at the lower level.
• Fixed or mobile.
• Serial or parallel.
• According to degree of freedom (DOF).
• Rigid or flexible.
• Control – point-to-point, autonomy and “intelligence”.
• Most older industrial robots – fixed base and consisting of
Most older industrial robots have fixed base and consisting of links connected by actuated joints.
Many modern robots can move on factory floors, uneven terrains or even walk, swim and fly.
Serial robot – a fixed base, links and joints connected sequentially and ending in an end-effector.
Figure –PUMA 560 Serial Robot
SCARA robot
This also has a cylindrical work space. Such robots were used to assemble the SONY walkman.
The “P” is for raising and lowering the end effector. Otherwise all the motion is in a horizontal
plane.
Figure –SCARA
Wrists
There are 3 motions and 3 actuators are required for motion. It is known as YPR (Yaw, Pitch and
Roll).
Rigid and Flexible Robot
• Most industrial robots are built heavy and rigid – for required accuracy.
• Minimizing weight for space applications – links and joints are flexible.
(a) Rigid Robot (Puma 700 series) (b) Flexible Robot (Space shuttle robot arm)
Computer controlled – inputs are given from a computer often after being tried out in an off-line
programming system.
Sensor driven – Sensors are used to avoid obstacles and take decisions.
Intelligent – Robot can ‘learn’ about the environment using artificial intelligence (AI) and
perform efficiently.
MODULE-II
Robot Kinematics
Forward Kinematics
1) Draw sketch
2) Number links. Base=0, Last link = n
3) Identify and number robot joints
4) Draw axis Zi for joint i
5) Determine joint length ai-1 between Zi-1 and Zi
6) Draw axis Xi-1
7) Determine joint twist αi-1 measured around Xi-1
8) Determine the joint offset di
9) Determine joint angle θi around Zi
10) Write link transformation and concatenate
⎡ nx ox ax Px ⎤
⎢n oy ay Py ⎥⎥
F =⎢ y
⎢ nz oz az Pz ⎥
⎢ ⎥
⎣0 0 0 1⎦
• A pure translation.
Assumption: The frame is at the origin of the reference frame and parallel to it.
Figure - Coordinates of a point in a rotating frame before and after rotation around axis x.
Figure- Coordinates of a point relative to the reference frame and rotating frame as viewed from
the x-axis.
Figure- The hand frame of the robot relative to the reference frame
Cylindrical Coordinates
It involves 2 Linear translations and 1 rotation.
• Translation of r along the x-axis
• Rotation of α about the z-axis
• Translation of l along the z-axis
Spherical Coordinates
It involves 1 Linear translations and 2 rotation
• Translation of r along the z-axis
• Rotation of β about the y-axis
• Rotation of γ along the z-axis
Articulated Coordinates
Where the four quantities θi, ai, di, αi are parameters associated with link i and joint i. The four
parameters ai, αi, di, and θi are generally given the names link length, link twist, link offset, and
joint angle, respectively. These names derive from specific aspects of the geometric relationship
between two coordinate frames, as will become apparent below. Since the matrix Ai is a function
of a single variable, it turns out that three of the above four quantities are constant for a given
link, while the fourth parameter, θi for a revolute joint and di for a prismatic joint, is the joint
variable.
An arbitrary homogeneous transformation matrix can be characterized by six numbers, such as,
for example, three numbers to specify the fourth column of the matrix and three Euler angles to
specify the upper left 3×3 rotation matrix. In the D-H representation, in contrast, there are only
four parameters. How is this possible? The answer is that, while frame i is required to be rigidly
attached to link i, we have considerable freedom in choosing the origin and the coordinate axes
of the frame. For example, it is not necessary that the origin, Oi, of frame i be placed at the
physical end of link i. In fact, it is not even necessary that frame i be placed within the physical
link; frame i could lie in free space —so long as frame i is rigidly attached to link i. By a clever
choice of the origin and the coordinate axes, it is possible to cut down the number of parameters
needed from six to four (or even fewer in some cases).
Figure-Coordinate frames satisfying assumptions DH1 and DH2.
as shown in the above Figure Under these conditions, we claim that there exist unique numbers
a, d, θ, α such that
Of course, since θ and α are angles, we really mean that they are unique to within a multiple of
2π. To show that the matrix A can be written in this
and let ri denote the ith column of the rotation matrix R01. We will now examine the implications
of the two DH constraints.
The only information we have is that r31 = 0, but this is enough. First, since each row and column
of R01 must have unit length, r31 = 0 implies that
Once θ and α are found, it is routine to show that the remaining elements of must have the form,
using the fact that R01 is a rotation matrix.
Next, assumption (DH2) means that the displacement between O0 and O1 can be expressed as a
linear combination of the vectors z0 and x1. This can be written as O1 = O0 +dz0 +ax1. Again, we
can express this relationship in the coordinates of o0x0y0z0, and we obtain
Combining the above results, we obtain (3.10) as claimed. Thus, we see that four parameters are
sufficient to specify any homogeneous transformation that satisfies the constraints (DH1) and
(DH2). Now that we have established that each homogeneous transformation matrix satisfying
conditions (DH1) and (DH2) above can be represented in the form (3.10), we can in fact give a
physical interpretation to each of the four quantities in (3.10). The parameter a is the distance
between the axes z0 and z1, and is measured along the axis x1. The angle α is the angle between
the axes z0 and z1, measured in a plane normal to x1. The positive sense for α is determined
from z0 to z1 by the right-hand rule as shown in Figure 3.3. The parameter d is the distance
between the origin O0 and the intersection of the x1 axis with z0 measured along the z0 axis.
Finally, θ is the angle between x0 and x1 measured in a plane normal to z0. These physical
interpretations will prove useful in developing a procedure for assigning coordinate frames that
satisfy the constraints (DH1) and (DH2), and we now turn our attention to developing such a
procedure.
We may summarize the above procedure based on the D-H convention in the following
algorithm for deriving the forward kinematics for any manipulator.
• Serial manipulators: One end fixed → Links and joints → Free end with end-effector.
• Kinematics → Motion of (rigid) links without considering force and torques.
• Kinematics → Study of “geometry” of motion.
• Serial manipulators modeled using Denavit-Hartenberg parameters.
• Two main problems: Direct Kinematics and Inverse Kinematics.
• Grübler-Kutzbach’s criterion
Where, N – Total number of links including the fixed link (or base),
J – Total number of joints connecting only two links (if joint connects three links then it
must be counted as two joints),
Fi – Degrees of freedom at the ith joint, and λ = 6 for spatial, 3 for planar manipulators
and mechanisms.
• Since all D-H parameters are known → All 4×4 link transforms ii−1 [T]; i = 1; ::;n are
known.
• With respect to {0}, the position and orientation of {n} is 0n[T] =01[T]12[T]::::::n−1n [T].
• For another reference {Base}, Base n [T] = Base0 [T]0n[T].
Note: Base0 [T] must be known.
• The end-effector geometry does not appear in 0n[T].
• To obtain Base Tool [T], perform the matrix multiplication Base 0 [T] 0 n[T] nTool [T]; nTool [T] must
be known.
• One advantage of the used D-H convention: Manipulator transform 0n[T] can be computed
only once and need not be changed if location of {Base} or the geometry of end-effector
n
Tool [T] changes – Recall a robot can have a variety of end-effectors!
• The direct kinematics problem can be always solved for any serial manipulator.
• The solution procedure is simple – Involves only multiplication of matrices.
Examples 1: A planar 3R manipulator
(2)
(3)
Figure –SCARA Manipulator
(4)
Summary
• Direct kinematics: Given D-H parameters, find position and orientation of end-effector.
• Direct kinematics problem can always be solved for any number of links.
• Direct kinematics can be solved using matrix multiplication.
• Direct kinematics in serial manipulators is unique.
• Direct kinematics problem for serial manipulators is the simplest problem.
Inverse Kinematics of Serial Robots
• Inverse Kinematics Problem (restated): Given the constant D-H link parameters and 0n[T],
find the joint variables θi ; i = 1; ::;n.
• For 3D motion, 6 task space variables — 3 position + 3 orientation in 0n[T].
• For planar motion, 3 task space variables — 2 position + 1 orientation in 0n[T]
• Following cases possible:
o n = 6 for 3D motion or n = 3 for planar motion → Same number of equations as
unknowns.
o n < 6 for 3D motion or n < 3 for planar motion → Number of task space variables larger
than number of equations and hence there must be (6−n) ((3−n) for planar) relationships
involving the task space variables.
o n > 6 for 3D motion or n > 3 for planar motion → More unknowns than equations and
hence infinite number of solutions — Redundant manipulators.
Planar 3r Manipulator
• Once θ2 is known
where k2 = l2s2 and k1 = l1+l2c2. Note: atan2(y;x) is the four quadrant arc-tangent function and θ1
[ א0;2π].
• Origins of {4}, {5} and {6} are coincident — known as the wrist point.
• Position vector 0O6 of the wrist point is only a function of θ1, θ2 and θ3.
• From equation (4),
(9)
where ci , si denote cos(θi ), sin(θi ), respectively and a2, a3, d3, d4 denote constant D-H
parameters.
• From the first two equations:
• Transcendental equation in sine and cosine of θ1 which can be solved to obtain two sets of
values for θ1.
(10)
(11)
−1
Note 1: tan gives an angle between 0 and π and hence 0 ≤θ1 ≤ 2π.
Note 2: Two possible values of θ1 due to the ± before square root.
(12)
(13)
• Two possible values of θ2 in the range [0; 2π].
• To obtain θ4, θ5 and θ6, form
• Since
(14)
(x;y; z) are functions of three independent variables θ1, θ2 and θ3 ֜ Represents a solid in 3D
space. Can obtain equations of the bounding surfaces.
• Squaring and adding the three equations in equation (14) gives
• At every point in the solid all possible orientations, except two special ‘singular’
configurations when r23 = ±1, are possible.
Introduction to Control
Control System:
Simply speaking, a control system provides an output or response for a given input or stimulus.
An industrial control system typically consists of an automatic controller, an actuator, a plant and
a sensor (measuring element).
Controller:
It is an important element of Control system.It compares the actual value of the plant output with
the reference input ( desired value), determines the deviation and produces a control signal that
will reduce the deviation to zero or to a small value. The manner in which the controller
produces the control signal is called the control action. Wise design of controller lead to
substantial cost savings and performance improvement. It detects the actuating error signal,
which is usually at a very low power level, and amplifies it to a sufficiently high level. The
output of an automatic controller is fed to an actuator, such as an electric motor, a hydraulic
motor or a pneumatic motor or a valve. We will see various types of controller & certain
controllers in detail but later on.
Actuator:
It is a power device that produces the input to the plant according to the control signal so that the
output of plant will approach the refernce input.In case of Robot control system, actuator is
generally electric motor.
Plant:
It is the one whose output is to be controlled. e.g. In case of Robot control system, plant is the
Robot Manipulator.
Excluding Higher level controller, the rest of system is same as that of typical industrial control
system. Each axis of Robot will have this part of control sustem excluding higher level
controller. Higher level controller generates commands and sends it to lower level controllers.
Higher level controller has to co-ordinate between various axes of robots.Now we will see
controller design issues.
Controller Design issues:
• Stability of controllers :
It should have stabilty both in numerical implementation & actual performance.
• Performance of controllers :
As per application need, performance requirement should found out & depending on that
decision on control strategy should be taken.
• Energy required to achieve high performance:
It is the most important issue as there is upper limit on energy input to controller.
Types of Controller:
Proportional Derivative Integral (PID), Proportional & Derivative (PD), or Proportional &
Integral (PI) used in many industries (not suitable for high performance applications).
2nd & 3rd step & simulation part of 4th step we will see in detail in coming lectures.
Mathamatical Modelling of physical system:
3. State-Space Representation:
This can be used for that systems that can not be described by linear differential equations. State
space methods are used to model systems for simulation on digital computer. This representation
turns an nth order differential equation into n simultaneous first order differential equation.
Transient Response:
Steady state error:
Now suppose the task of moving is done but if there is difference between final desired position
& actual position. That difference XD -- Xa is known as steady state error. This should be as
minimum as possible.
Stability:
Discussion on Transient response & Steady state error is immaterial if the system is not stable.
Then what is meant by Stability?
For that consider a standard spring-mass-damper system. Its response to given input consist of
two parts
Transient response can be directly related to Natural Response & steady state response can be
directly related to Forced response. Initially the response will be mixed one & after some time
natural response will die out & only forced response of system will be there which will be
dependent upon input.
Consider a standard spring-mass system & suppose there is no damper in the system & system is
disturbed from mean position & released, system will never return to its mean position. It will
perform vibrations about mean position. System is said to be unstable in this case. Now suppose
there is damper in the system, the system will return to mean position after some time which will
be dependent on amount of damping.
So for system to be stable, transient response should die out after some time.Once the transient
response dies out, the systems response will depend on input only. If the input is bounded one
then output will be bounded one.This leads to another definition of stability.
System is said to be stable if bounded input to system gives bounded output(BIBO). Non-linear
systems have Asymptotic stability means their output reaches to equilibrium as Linear systems
are only exponentially stable means their output reaches to equilibrium in exponential fashion.
Important notions :
One of them is stability which we have seen .Others are controllability & observability.
Controllability:
System is said to be Controllable if robot can be taken from one to another state in finite time .
Linear systems:
Conditions on matrix A,B,C,D for controllability. Matrix A, B, C, D are the coefficient matrix in
state space representation.
Observability :
It checks whether feedback taken from given sensors is sufficient to define state of system or not.
Conditions on A, B, C, D for observability.
Control Strategy
Controller Implementation:
Analog domain:
Use of Electronic circuits (main element is op-amp. )
Digital domain:
In this computer or micro-controller is used as a controller. In case of Computer as a controller,
sensors & actuators handle analog signals while Computer handles digital signals. Conversion
from Analog to Digital and Digital to Analog is necessary. It is done by using Analog to digital
& digital to analog converter.
Here Jeff is effective inertia which is assumed to be constant over a range of motion & is function
of generalized co-ordinates.
Beff- is constant damping term.
dk- disturbance term (which accounts for coriolis, centripetal, inertia & coupling forces)
In Trajectory tracking problem we have to move end effector along predefined path. By using
inverse kinematic analysis we can find out desired joint angles which are function of time. From
these we can find out desired angles through which the motor should rotate as we know gear
reduction ratio for each actuator.
PD or PID control are suitable for slow point to point motion problem(regulation problem). In
case of trajectory tracking problem the end-effector is moving along predefined path. In case of
tracking problem desired position is a function of time. So it continuously changes with respect
to time. Motor response will never catchup the desired position within shortest time by using PD
or PID techniques only. So we cannot use PD or PID control strategy for trajectory tracking
problem.
In this example we have to move end effecor from Ps to Pf along a straight line.
Trajectory Tracking using PD + Feed forward :
In this Jeff & Beff are computed along the trajectory at various instants of time & these terms are
feed forwarded . This is the basis of Feed forward algorithm. Along predefined path we can find
out ,
We can also estimate Jeff & Beff at various points along trajectory. So along given trajectory,
actuator(i.e. motor) have to overcome following torques.
But
Controller Equation
One can now easily say that the tracking error is due to dK term. Substituting this controller
equation, system dynamics becomes
Robotics
Review of serial robotic manipulators. Classification of Parallel Robots (Steward Platform,
Wheeled Mobile Robots, Walking Machine etc.).Algorithms for inverse and forward
kinematic/dynamic analyses of parallel robots. Kinematic design of serial and parallel robots
based on singularity, workspace, manipulability, dexterity, etc.Mechanical design of robot links
and joints. Introduction to control of robotic systems
Text Books:
1. Robotic technology and flexible automation - S.R Deb, TMH.
2. Robotics - Lee, Fu, Gonzalez, Mc Graw Hill.
3. Industrial Robot - Groover, Mc Graw Hill.
4. Robots manufacturing and application - Paul Afonh, John Wiley.