Field Robotics
Field Robotics
Dr. T. Asokan
asok@iitm.ac.in
Robots Every where
Dr. T. Asokan
NASA's Mars rover Curiosity lands
The objective of this course is to introduce the kinematics, dynamics, control, and
applications of field and service robots such as ground, underwater, aerial and
medical robots.
Learning Outcomes
By the end of the course it is expected that the students will be able to:
• Understand and appreciate different kinds of field and service robots and their applications
• Learn how to model and simulate the kinematics and dynamics of autonomous field and service robots
• Learn the basics of designing few robots for field and service applications.
• Understand and Appreciate the challenges in the design and development of autonomous robots
Syllabus:
References
1. Ollero, Aníbal; Maza, Iván (Eds.) Multiple
Heterogeneous Unmanned Aerial Vehicles,:
Springer Tracts in Advanced Robotics, Vol. 37
2007, ISBN: 978-3-540-73957-9
2. B Scicilliano, O Khatib (Eds), Handbook
of Robotics, Springer, 2008
GRADING
• Assignments/homeworks : 3 (3x5=15 marks)
• Quiz : 2 (2x15=30 marks)
• Seminar : 1 (10 marks)-Research Paper
review
• End Sem. Exam : 1 (45 marks)
History
Dr. T. Asokan
The Laws of Robotics (according to the Handbook of Robotics, or
more precisely, Isaac Asimov):
Dr. T. Asokan
Evolution of Robotics Research
Manipulators
Introduction to Robotics 21
Industrial robots
Introduction to Robotics 22
Mobile robots
Introduction to Robotics 26
Underwater Robots
Introduction to Robotics 27
Medical Robots
Introduction to Robotics 28
Educational/Entertainment Robots
Introduction to Robotics 29
Domestic Robots
Introduction to Robotics 30
Humanoids/ Exoskeletons
Introduction to Robotics 31
Introduction to Robotics 32
Reading Assignment
Introduction to Robotics 34
II. What is Robotics all about?
Contd….
Introduction to Robotics 35
III. Hardware & Software Components of a Robot:
Hardware:
Mechanical Subsystem (arm, gripper, body and wheels, etc)
Electrical subsystem (motors, computers, ...)
Sensor Subsystem (camera, force sensor, …)
Software:
Modeling
Planning
Perception
Control
Simulation
The physical structure of a robot determines its working envelope, degrees of
freedom, and the geometry or spatial configuration of its movement.
Introduction to Robotics 36
IV. Topics in Robotics
• Kinematics: deals with the spatial locations and velocities of a robot end effectors and
its internal joints
Forward and Inverse kinematics
• Statics: analyzes the force/moment acting upon a robot when it is at rest.
• Dynamics: study the dynamic behavior of a robot, i.e., the relationship between the
driving torques and the motions of the robot.
• Trajectory Planning: determines a feasible and effective trajectory for a given path.
• Path Planning: determines a collision-free and effective path to accomplish a task.
• Trajectory Control: deals with how to servo a robot's actuators to make the robot
motion follow a desired trajectory.
• Sensing and Perception: obtain and reason about sensory information to acquire the
state of a robot and/or its task.
• Task Planning: determines the sequence of primitive actions for a higher level task
command (e.g., put the peg in hole) and the resources need.
• World Modeling: represent the knowledge about the robot, the task, and the
environment in the computer.
• Robot Programming: program the robot tasks in various levels. Sensor-based
programming.
• Simulation/Haptics: simulate physical movements and the tactile sensation associated
with physical interaction.
Introduction to Robotics 37
Some basics
Object Location and Motion
Contents:
Object location
- Position of a point in space
- Location of a rigid body in space
- Homogeneous transformation matrix
Object Motion
Translation (Transformation Matrix) and
Inverse
Basic Rotation (Transformation Matrices)
and Inverse.
General Rotation
Examples.
Properties of homogeneous transformation
matrix.
Examples.
Given an object in a physical world,
• how to describe its position and orientation, and
• how to describe its change of position and orientation due
to motion
are two basic issues we need to address before talking
about having a robot moving physical objects around.
Introduction to Robotics 41
Co-ordinate frames
X2
[ p] p.x
x
k
k
[p]2x p
[p]1x X1
Introduction to Robotics 44
Co-ordinate Transformation
m
3
mf3
3 P P
Represent position of p wrt fixed
P m2
frame f={f1,f2,f3} m3
m2
m1
m2 f2 m1
m1
Fixed
link
f1 P
Introduction to Robotics 45
Co-ordinate Transformation Matrix
f Fixed
Introduction to Robotics 46
1 link
Inverse Co-ordinate Transformation
A-1=AT
Introduction to Robotics 47
Rotations
f3 m3
m2
In order to specify the position and
orientation of the mobile tool in terms of
a co-ordinate frame attached to the
fixed base, co-ordinate transformations m1
m3
involving both rotations and translations
are required.
m2 f2
Introduction to Robotics 48
Fundamental rotations
f3
1 0 0
R1 ( ) 0 cos( ) sin( ) m3’
m3
0 sin( ) cos( ) m2’
cos( ) 0 sin( ) m2 f2
R2 ( ) 0 1 0 m1’
m1
Introduction to Robotics 51
Yaw-Pitch-Roll Transformation matrix
R( ) R3 ( 3 ) R2 ( 2 ) R1 (1 ) I
Roll
Example
Suppose we rotate tool about the fixed axes, starting with yaw
of p/2, followed by pitch of –p/2 and finally, a roll of p/2, what
is the resulting composite rotation matrix?
Suppose a point P at the tool tip has mobile co-ordinates [p]M=
[0,0,.6]T, Find [p]F following YPR transformation
Introduction to Robotics 52
Homogeneous co-ordinates
Introduction to Robotics 53
Homogeneous Transformation matrix
If a physical point in three-dimensional space is expressed in
terms of its homogeneous co-ordinates and we want to
change from one coordinate frame to another, we use a 4x4
homogeneous transformation matrix.
In general T is
R p
T T
s
The 3x3 matrix R is a rotation matrix
P is a 3x1 translation vector
is a perspective vector, set to zero
Introduction to Robotics 54
• The fundamental operations of rotations and translations can each be
regarded as special cases of the general 4x4 homogeneous transformation
matrix.
0
R ( ) 0
Rot( , k ) k 1 k 3
0
0 0 0 1
Rot( , k) is the k th fundamental homogeneous rotation matrix
1 0 0 p1 f3
0 1 0 p2
p
3
Tran( p ) m2
0 0 1 p3
p
2
0 0 0 1 f1
p
Tran (p) is known as the fundamental homogeneous m3
m1 1
1 RT RT p
T
0 0 0 1
Introduction to Robotics 57
Direct (Forward) Kinematics Problem
R p
T T
s
T (q) T (q1 )T (q2 )T (q3 )....... T (q)
0
n
0
1
1
2
2
3 n
n 1
Tool
Z0
X0
tool
Tbase (q) Tbase
1
(q1 )T12 (q2 )T23 (q3 )....... Tntool
1 ( q )
tool
Tbase ( q ) Tbase
wrist tool
( q1 , q2 , q3 )Twrist (q4, q5 , q6 )
Introduction to Robotics 58
Arm Equation
R(q) p (q )
tool
(q)
1
T
base
0 0 0
Tool
p
Z0 r3
X0
Introduction to Robotics 59
• Manipulator tasks are normally formulated in terms of the desired position
and orientation.
• A systematic closed form solution applicable to robots in general is not
available.
• Unique solutions are rare; multiple solutions exist.
• Inverse problem is more difficult than forward problem
1
Tbase
Tool
0 0 0 Z0
p
a s
Solvability
nx sx ax px C1C234C5 S1S5 C1C234 S5 S1C5 C1S 234 C1 (177.8C2 177.8C23 129.5S 234 )
n sy ay p y S C C C S S1C234 S5 C1C5 S1S 234 S1 (177.8C2 177.8C23 129.5S 234 )
y 1 234 5 1 5
Differential relationship
. .
x J (q ) q; J (q ) is a 6xn matrix and is
called the Jacobian matrix
or Jacobian
wk (q )
Vkj (q ) 1 k 6, 1 j n
q j
Introduction to Robotics 62
w1 w1 w1 w1
X wq q .
q2 q3 qn
1
.
w2 w2 w2 w2 q1
.
x .
. q1 q2 q3 qn .
y w w3 w3 w3 q2
. 3
. .
z
q1 q2 q3 qn . q3
w4 w4 w4 w4 .
x q q2 q3
.
qn q4
1 .
w5 w5 w5 w5 ..
y
qn
.
z q1 q2 q3 qn
w w6 w6 w6
6
.
q1
q2 q3 qn
6X 1 6X n nX1
Introduction to Robotics 63
Dynamics: Lagrangian Formulation
Complex dynamic systems can be modeled in a relatively simple,
elegant fashion using an approach called the Lagrangian
formulation.
d L L
( ) i
dt qi qi
Lagrange function is defined
L K P
.. . . .
D(q) q c(q, q) q h(q) b(q)
Control Systems
When one or more output variables of a system need to follow
a certain reference over a time, a controller manipulates the
inputs to the system to obtain the desired effect on the
output of the system.
Introduction to Robotics 66
Transfer Function
Introduction to Robotics 67
Robot Control
• Robots need to follow prescribed motion trajectory
•Actuators are commanded in terms of torque
•Control System computes appropriate actuator commands to
realise the desired motion
Robot System:
e qd q
q q
Trajectory q d q d e e tor
• Joint Level Controller qd _
Controller Robot
Planner
Introduction to Robotics 70
PID controller: Proportional / Integral / Derivative control
e= yd ya
V = Kp • e + Ki ∫ e dt + Kd d e)
dt
Error signal e
Closed Loop Feedback Control
yd ya
desired yd V actual ya
compute V using
- PID feedback
Motor
actual ya
Introduction to Robotics 71
Evaluating the response
Introduction to Robotics 72
Control Performance, P-type
Kp = 20
Kp = 50
Kp = 200 Kp = 500
Introduction to Robotics 73
Control Performance, PI - type
Kp = 100
Ki = 50 Ki = 200
Introduction to Robotics 74
Kp = 100
unstable &
oscillation
Introduction to Robotics 75
Control Performance, PID-type
Kp = 100
Kd = 2 Kd = 5 Ki = 200
Kd = 10 Kd = 20
Introduction to Robotics 76
PID final control
Introduction to Robotics 77
Summary
• Classifications of field/service robots
• Object location and motion in space
• Coordinate transformations
• Direct and inverse kinematics
problems
• Jacobian and singularity
• Statics
• Dynamics
• Control