Robotics ppt downloaded.ppt

92
INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS

description

Robotics ppt downloaded

Transcript of Robotics ppt downloaded.ppt

Page 1: Robotics ppt downloaded.ppt

INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS

robot (noun) hellip

What is a robot

Jacques de VaucansonJacques de Vaucanson(1709-1782)(1709-1782)

bull Master toy maker who won the heart of Europe

bull Flair for inventing the mechanical revealed itself early in life

bull He was impressed by the uniform motion of the pendulum of the clock in his parents hall

bull Soon he was making his own clock movements

The Origins of Robots

Mechanical horse

Pre-History of Real-World Pre-History of Real-World RobotsRobots

bull The earliest remote control vehicles were built by Nikola Tesla in the 1890s

bull Tesla is best known as the inventor of AC power induction motors Tesla coils and other electrical devices

Robots Robots of the of the mediamedia

History of RoboticsHistory of Robotics

RUR Metropolis(1927) Forbidden planet(1956) 2001 A Space Odyssey(1968) Logans Run(1976) Aliens(1986)

Popular culture influenced by these ideas

The US military contracted the walking truck to be built by the

General Electric Company for the US

Army in 1969

Walking robotsWalking robots

Unmanned Ground Vehiclesbull Three categories

ndash Mobilendash Humanoidanimalndash Motes

bull Famous examplesndash DARPA Grand Challengendash NASA MERndash Roombandash Honda P3 Sony Asimondash Sony Aibo

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 2: Robotics ppt downloaded.ppt

robot (noun) hellip

What is a robot

Jacques de VaucansonJacques de Vaucanson(1709-1782)(1709-1782)

bull Master toy maker who won the heart of Europe

bull Flair for inventing the mechanical revealed itself early in life

bull He was impressed by the uniform motion of the pendulum of the clock in his parents hall

bull Soon he was making his own clock movements

The Origins of Robots

Mechanical horse

Pre-History of Real-World Pre-History of Real-World RobotsRobots

bull The earliest remote control vehicles were built by Nikola Tesla in the 1890s

bull Tesla is best known as the inventor of AC power induction motors Tesla coils and other electrical devices

Robots Robots of the of the mediamedia

History of RoboticsHistory of Robotics

RUR Metropolis(1927) Forbidden planet(1956) 2001 A Space Odyssey(1968) Logans Run(1976) Aliens(1986)

Popular culture influenced by these ideas

The US military contracted the walking truck to be built by the

General Electric Company for the US

Army in 1969

Walking robotsWalking robots

Unmanned Ground Vehiclesbull Three categories

ndash Mobilendash Humanoidanimalndash Motes

bull Famous examplesndash DARPA Grand Challengendash NASA MERndash Roombandash Honda P3 Sony Asimondash Sony Aibo

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 3: Robotics ppt downloaded.ppt

Jacques de VaucansonJacques de Vaucanson(1709-1782)(1709-1782)

bull Master toy maker who won the heart of Europe

bull Flair for inventing the mechanical revealed itself early in life

bull He was impressed by the uniform motion of the pendulum of the clock in his parents hall

bull Soon he was making his own clock movements

The Origins of Robots

Mechanical horse

Pre-History of Real-World Pre-History of Real-World RobotsRobots

bull The earliest remote control vehicles were built by Nikola Tesla in the 1890s

bull Tesla is best known as the inventor of AC power induction motors Tesla coils and other electrical devices

Robots Robots of the of the mediamedia

History of RoboticsHistory of Robotics

RUR Metropolis(1927) Forbidden planet(1956) 2001 A Space Odyssey(1968) Logans Run(1976) Aliens(1986)

Popular culture influenced by these ideas

The US military contracted the walking truck to be built by the

General Electric Company for the US

Army in 1969

Walking robotsWalking robots

Unmanned Ground Vehiclesbull Three categories

ndash Mobilendash Humanoidanimalndash Motes

bull Famous examplesndash DARPA Grand Challengendash NASA MERndash Roombandash Honda P3 Sony Asimondash Sony Aibo

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 4: Robotics ppt downloaded.ppt

The Origins of Robots

Mechanical horse

Pre-History of Real-World Pre-History of Real-World RobotsRobots

bull The earliest remote control vehicles were built by Nikola Tesla in the 1890s

bull Tesla is best known as the inventor of AC power induction motors Tesla coils and other electrical devices

Robots Robots of the of the mediamedia

History of RoboticsHistory of Robotics

RUR Metropolis(1927) Forbidden planet(1956) 2001 A Space Odyssey(1968) Logans Run(1976) Aliens(1986)

Popular culture influenced by these ideas

The US military contracted the walking truck to be built by the

General Electric Company for the US

Army in 1969

Walking robotsWalking robots

Unmanned Ground Vehiclesbull Three categories

ndash Mobilendash Humanoidanimalndash Motes

bull Famous examplesndash DARPA Grand Challengendash NASA MERndash Roombandash Honda P3 Sony Asimondash Sony Aibo

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 5: Robotics ppt downloaded.ppt

Mechanical horse

Pre-History of Real-World Pre-History of Real-World RobotsRobots

bull The earliest remote control vehicles were built by Nikola Tesla in the 1890s

bull Tesla is best known as the inventor of AC power induction motors Tesla coils and other electrical devices

Robots Robots of the of the mediamedia

History of RoboticsHistory of Robotics

RUR Metropolis(1927) Forbidden planet(1956) 2001 A Space Odyssey(1968) Logans Run(1976) Aliens(1986)

Popular culture influenced by these ideas

The US military contracted the walking truck to be built by the

General Electric Company for the US

Army in 1969

Walking robotsWalking robots

Unmanned Ground Vehiclesbull Three categories

ndash Mobilendash Humanoidanimalndash Motes

bull Famous examplesndash DARPA Grand Challengendash NASA MERndash Roombandash Honda P3 Sony Asimondash Sony Aibo

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 6: Robotics ppt downloaded.ppt

Pre-History of Real-World Pre-History of Real-World RobotsRobots

bull The earliest remote control vehicles were built by Nikola Tesla in the 1890s

bull Tesla is best known as the inventor of AC power induction motors Tesla coils and other electrical devices

Robots Robots of the of the mediamedia

History of RoboticsHistory of Robotics

RUR Metropolis(1927) Forbidden planet(1956) 2001 A Space Odyssey(1968) Logans Run(1976) Aliens(1986)

Popular culture influenced by these ideas

The US military contracted the walking truck to be built by the

General Electric Company for the US

Army in 1969

Walking robotsWalking robots

Unmanned Ground Vehiclesbull Three categories

ndash Mobilendash Humanoidanimalndash Motes

bull Famous examplesndash DARPA Grand Challengendash NASA MERndash Roombandash Honda P3 Sony Asimondash Sony Aibo

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 7: Robotics ppt downloaded.ppt

Robots Robots of the of the mediamedia

History of RoboticsHistory of Robotics

RUR Metropolis(1927) Forbidden planet(1956) 2001 A Space Odyssey(1968) Logans Run(1976) Aliens(1986)

Popular culture influenced by these ideas

The US military contracted the walking truck to be built by the

General Electric Company for the US

Army in 1969

Walking robotsWalking robots

Unmanned Ground Vehiclesbull Three categories

ndash Mobilendash Humanoidanimalndash Motes

bull Famous examplesndash DARPA Grand Challengendash NASA MERndash Roombandash Honda P3 Sony Asimondash Sony Aibo

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 8: Robotics ppt downloaded.ppt

History of RoboticsHistory of Robotics

RUR Metropolis(1927) Forbidden planet(1956) 2001 A Space Odyssey(1968) Logans Run(1976) Aliens(1986)

Popular culture influenced by these ideas

The US military contracted the walking truck to be built by the

General Electric Company for the US

Army in 1969

Walking robotsWalking robots

Unmanned Ground Vehiclesbull Three categories

ndash Mobilendash Humanoidanimalndash Motes

bull Famous examplesndash DARPA Grand Challengendash NASA MERndash Roombandash Honda P3 Sony Asimondash Sony Aibo

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 9: Robotics ppt downloaded.ppt

The US military contracted the walking truck to be built by the

General Electric Company for the US

Army in 1969

Walking robotsWalking robots

Unmanned Ground Vehiclesbull Three categories

ndash Mobilendash Humanoidanimalndash Motes

bull Famous examplesndash DARPA Grand Challengendash NASA MERndash Roombandash Honda P3 Sony Asimondash Sony Aibo

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 10: Robotics ppt downloaded.ppt

Unmanned Ground Vehiclesbull Three categories

ndash Mobilendash Humanoidanimalndash Motes

bull Famous examplesndash DARPA Grand Challengendash NASA MERndash Roombandash Honda P3 Sony Asimondash Sony Aibo

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 11: Robotics ppt downloaded.ppt

Unmanned Aerial Vehicles

bull Three categoriesndash Fixed wingndash VTOLndash Micro aerial vehicle (MAV)

which can be either fixed wing or VTOL

bull Famous examplesndash Global Hawkndash Predatorndash UCAV

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 12: Robotics ppt downloaded.ppt

Autonomous Underwater Vehiclesbull Categories

ndash Remotely operated vehicles (ROVs) which are tethered

ndash Autonomous underwater vehicles which are free swimming

bull Examplesndash Persephonendash Jason (Titanic)ndash Hugin

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 13: Robotics ppt downloaded.ppt

Discussion of Ethics and Philosophy in Robotics

bull Can robots become consciousbull Is there a problem with using robots in military

applicationsbull How can we ensure that robots do not harm

peoplebull Isaac Asimovrsquos Three Laws of Robotics

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 14: Robotics ppt downloaded.ppt

Isaac Asimov and Joe Isaac Asimov and Joe EnglebergerEngleberger

bull Two fathers of robotics

bull Engleberger built first robotic arms

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 15: Robotics ppt downloaded.ppt

Asimovrsquos Laws of RoboticsFirst law (Human safety)A robot may not injure a human being or through inaction allowa human being to come to harm

Second law (Robots are slaves)A robot must obey orders given it by human beings except wheresuch orders would conflict with the First Law

Third law (Robot survival)A robot must protect its own existence as long as such protectiondoes not conflict with the First or Second Law

These laws are simple and straightforward and they embrace the essential guiding principles of a good many of the worldrsquos ethical systems

ndash But They are extremely difficult to implement

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 16: Robotics ppt downloaded.ppt

The Advent of Industrial Robots -

Robot ArmsRobot Arms

bull There is a lot of motivation to use robots to perform task which would otherwise be performed by humansndash Safety

ndash Efficiency

ndash Reliability

ndash Worker Redeployment

ndash Cheaper

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 17: Robotics ppt downloaded.ppt

Industrial Robot DefinedA general-purpose programmable machine possessing

certain anthropomorphic characteristicsbull Hazardous work environmentsbull Repetitive work cyclebull Consistency and accuracybull Difficult handling task for humansbull Multishift operationsbull Reprogrammable flexiblebull Interfaced to other computer systems

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 18: Robotics ppt downloaded.ppt

What are robots made of

bullEffectors Manipulation

Degrees of Freedom

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 19: Robotics ppt downloaded.ppt

Robot Anatomybull Manipulator consists of joints and links

ndash Joints provide relative motionndash Links are rigid members between jointsndash Various joint types linear and rotaryndash Each joint provides a ldquodegree-of-freedomrdquondash Most robots possess five or six degrees-of-

freedombull Robot manipulator consists of two sections

ndash Body-and-arm ndash for positioning of objects in the robots work volume

ndash Wrist assembly ndash for orientation of objects

BaseLink0

Joint1

Link2

Link3Joint3

End of Arm

Link1

Joint2

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 20: Robotics ppt downloaded.ppt

Manipulator Joints

bull Translational motionndash Linear joint (type L)ndash Orthogonal joint (type O)

bull Rotary motionndash Rotational joint (type R) ndash Twisting joint (type T)ndash Revolving joint (type V)

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 21: Robotics ppt downloaded.ppt

Polar Coordinate Body-and-Arm Assembly

bull Notation TRL

bull Consists of a sliding arm (L joint) actuated relative to the body which can rotate about both a vertical axis (T joint) and horizontal axis (R joint)

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 22: Robotics ppt downloaded.ppt

Cylindrical Body-and-Arm Assembly

bull Notation TLO

bull Consists of a vertical column relative to which an arm assembly is moved up or down

bull The arm can be moved in or out relative to the column

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 23: Robotics ppt downloaded.ppt

Cartesian Coordinate Body-and-Arm Assembly

bull Notation LOO

bull Consists of three sliding joints two of which are orthogonal

bull Other names include rectilinear robot and x-y-z robot

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 24: Robotics ppt downloaded.ppt

Jointed-Arm Robot

bull Notation TRR

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 25: Robotics ppt downloaded.ppt

SCARA Robotbull Notation VRObull SCARA stands for

Selectively Compliant Assembly Robot Arm

bull Similar to jointed-arm robot except that vertical axes are used for shoulder and elbow joints to be compliant in horizontal direction for vertical insertion tasks

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 26: Robotics ppt downloaded.ppt

Wrist Configurationsbull Wrist assembly is attached to end-of-arm

bull End effector is attached to wrist assembly

bull Function of wrist assembly is to orient end effector ndash Body-and-arm determines global position of end effector

bull Two or three degrees of freedomndash Roll

ndash Pitch

ndash Yaw

bull Notation RRT

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 27: Robotics ppt downloaded.ppt

An Introduction to Robot Kinematics

Renata Melamud

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 28: Robotics ppt downloaded.ppt

Kinematics studies the motion of bodies

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 29: Robotics ppt downloaded.ppt

An Example - The PUMA 560

The PUMA 560 has SIX revolute jointsA revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle

1

23

4

There are two more joints on the end effector (the gripper)

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 30: Robotics ppt downloaded.ppt

Other basic joints

Spherical Joint3 DOF ( Variables - 1 2 3)

Revolute Joint1 DOF ( Variable - )

Prismatic Joint1 DOF (linear) (Variables - d)

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 31: Robotics ppt downloaded.ppt

We are interested in two kinematics topics

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 (ie itrsquos (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

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 32: Robotics ppt downloaded.ppt

Quick Math ReviewDot Product Geometric Representation

A

cosθBABA

Unit VectorVector in the direction of a chosen vector but whose magnitude is 1

B

BuB

y

x

a

a

y

x

b

b

Matrix Representation

yyxxy

x

y

xbaba

b

b

a

aBA

B

Bu

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 33: Robotics ppt downloaded.ppt

Quick Matrix Review

Matrix Multiplication

An (m x n) matrix A and an (n x p) matrix B can be multiplied since the number of columns of A is equal to the number of rows of B

Non-Commutative MultiplicationAB is NOT equal to BA

dhcfdgce

bhafbgae

hg

fe

dc

ba

Matrix Addition

hdgc

fbea

hg

fe

dc

ba

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 34: Robotics ppt downloaded.ppt

Basic TransformationsMoving Between Coordinate Frames

Translation Along the X-Axis

N

O

X

Y

VNO

VXY

Px

VN

VO

Px = distance between the XY and NO coordinate planes

Y

XXY

V

VV

O

NNO

V

VV

0

PP x

P

(VNVO)

Notation

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 35: Robotics ppt downloaded.ppt

NX

VNO

VXY

PVN

VO

Y O

NO

O

NXXY VPV

VPV

Writing in terms of XYV NOV

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 36: Robotics ppt downloaded.ppt

X

VXY

PXY

N

VNO

VN

VO

O

Y

Translation along the X-Axis and Y-Axis

O

Y

NXNOXY

VP

VPVPV

Y

xXY

P

PP

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 37: Robotics ppt downloaded.ppt

oV

nV

θ)cos(90V

cosθV

sinθV

cosθV

V

VV

NO

NO

NO

NO

NO

NO

O

NNO

NOV

o

n Unit vector along the N-Axis

Unit vector along the N-Axis

Magnitude of the VNO vector

Using Basis VectorsBasis vectors are unit vectors that point along a coordinate axis

N

VNO

VN

VO

O

n

o

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 38: Robotics ppt downloaded.ppt

Rotation (around the Z-Axis)X

Y

Z

X

Y

N

VN

VO

O

V

VX

VY

Y

XXY

V

VV

O

NNO

V

VV

= Angle of rotation between the XY and NO coordinate axis

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 39: Robotics ppt downloaded.ppt

X

Y

N

VN

VO

O

V

VX

VY

Unit vector along X-Axis

x

xVcosαVcosαVV NONOXYX

NOXY VV

Can be considered with respect to the XY coordinates or NO coordinates

V

x)oVn(VV ONX (Substituting for VNO using the N and O components of the vector)

)oxVnxVV ONX ()(

))

)

(sinθV(cosθV

90))(cos(θV(cosθVON

ON

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 40: Robotics ppt downloaded.ppt

Similarlyhellip

yVα)cos(90VsinαVV NONONOY

y)oVn(VV ONY

)oy(V)ny(VV ONY

))

)

(cosθV(sinθV

(cosθVθ))(cos(90VON

ON

Sohellip

)) (cosθV(sinθVV ONY )) (sinθV(cosθVV ONX

Y

XXY

V

VV

Written in Matrix Form

O

N

Y

XXY

V

V

cosθsinθ

sinθcosθ

V

VV

Rotation Matrix about the z-axis

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 41: Robotics ppt downloaded.ppt

X1

Y1

N

O

VXY

X0

Y0

VNO

P

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

(VNVO)

In other words knowing the coordinates of a point (VNVO) in some coordinate frame (NO) you can find the position of that point relative to your original coordinate frame (X0Y0)

(Note Px Py are relative to the original coordinate frame Translation followed by rotation is different than rotation followed by translation)

Translation along P followed by rotation by

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 42: Robotics ppt downloaded.ppt

O

N

y

x

Y

XXY

V

V

cosθsinθ

sinθcosθ

P

P

V

VV

HOMOGENEOUS REPRESENTATIONPutting it all into a Matrix

1

V

V

100

0cosθsinθ

0sinθcosθ

1

P

P

1

V

VO

N

y

xY

X

1

V

V

100

Pcosθsinθ

Psinθcosθ

1

V

VO

N

y

xY

X

What we found by doing a translation and a rotation

Padding with 0rsquos and 1rsquos

Simplifying into a matrix form

100

Pcosθsinθ

Psinθcosθ

H y

x

Homogenous Matrix for a Translation in XY plane followed by a Rotation around the z-axis

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 43: Robotics ppt downloaded.ppt

Rotation Matrices in 3D ndash OKlets return from homogenous repn

100

0cosθsinθ

0sinθcosθ

R z

cosθ0sinθ

010

sinθ0cosθ

Ry

cosθsinθ0

sinθcosθ0

001

R z

Rotation around the Z-Axis

Rotation around the Y-Axis

Rotation around the X-Axis

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 44: Robotics ppt downloaded.ppt

1000

0aon

0aon

0aon

Hzzz

yyy

xxx

Homogeneous Matrices in 3D

H is a 4x4 matrix that can describe a translation rotation or both in one matrix

Translation without rotation

1000

P100

P010

P001

Hz

y

x

P

Y

X

Z

Y

X

Z

O

N

A

O

N

ARotation without translation

Rotation part Could be rotation around z-axis x-axis y-axis or a combination of the three

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 45: Robotics ppt downloaded.ppt

1

A

O

N

XY

V

V

V

HV

1

A

O

N

zzzz

yyyy

xxxx

XY

V

V

V

1000

Paon

Paon

Paon

V

Homogeneous Continuedhellip

The (noa) position of a point relative to the current coordinate frame you are in

The rotation and translation part can be combined into a single homogeneous matrix IF and ONLY IF both are relative to the same coordinate frame

xA

xO

xN

xX PVaVoVnV

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 46: Robotics ppt downloaded.ppt

Finding the Homogeneous MatrixEX

Y

X

Z

J

I

K

N

OA

T

P

A

O

N

W

W

W

A

O

N

W

W

W

K

J

I

W

W

W

Z

Y

X

W

W

W Point relative to theN-O-A frame

Point relative to theX-Y-Z frame

Point relative to theI-J-K frame

A

O

N

kkk

jjj

iii

k

j

i

K

J

I

W

W

W

aon

aon

aon

P

P

P

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1

W

W

W

A

O

N

kkkk

jjjj

iiii

K

J

I

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 47: Robotics ppt downloaded.ppt

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

k

J

I

zzz

yyy

xxx

z

y

x

Z

Y

X

W

W

W

kji

kji

kji

T

T

T

W

W

W

1

W

W

W

1000

Tkji

Tkji

Tkji

1

W

W

W

K

J

I

zzzz

yyyy

xxxx

Z

Y

X

Substituting for

K

J

I

W

W

W

1

W

W

W

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

1

W

W

W

A

O

N

kkkk

jjjj

iiii

zzzz

yyyy

xxxx

Z

Y

X

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 48: Robotics ppt downloaded.ppt

1

W

W

W

H

1

W

W

W

A

O

N

Z

Y

X

1000

Paon

Paon

Paon

1000

Tkji

Tkji

Tkji

Hkkkk

jjjj

iiii

zzzz

yyyy

xxxx

Product of the two matrices

Notice that H can also be written as

1000

0aon

0aon

0aon

1000

P100

P010

P001

1000

0kji

0kji

0kji

1000

T100

T010

T001

Hkkk

jjj

iii

k

j

i

zzz

yyy

xxx

z

y

x

H = (Translation relative to the XYZ frame) (Rotation relative to the XYZ frame) (Translation relative to the IJK frame) (Rotation relative to the IJK frame)

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 49: Robotics ppt downloaded.ppt

The Homogeneous Matrix is a concatenation of numerous translations and rotations

Y

X

Z

J

I

K

N

OA

TP

A

O

N

W

W

W

One more variation on finding H

H = (Rotate so that the X-axis is aligned with T)

( Translate along the new t-axis by || T || (magnitude of T))

( Rotate so that the t-axis is aligned with P)

( Translate along the p-axis by || P || )

( Rotate so that the p-axis is aligned with the O-axis)

This method might seem a bit confusing but itrsquos actually an easier way to solve our problem given the information we have Here is an examplehellip

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 50: Robotics ppt downloaded.ppt

F o r w a r d K i n e m a t i c s

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 51: Robotics ppt downloaded.ppt

The SituationYou have a robotic arm that

starts out aligned with the xo-axisYou tell the first link to move by 1 and the second link to move by 2

The QuestWhat is the position of the

end of the robotic arm

Solution1 Geometric Approach

This might be the easiest solution for the simple situation However notice that the angles are measured relative to the direction of the previous link (The first link is the exception The angle is measured relative to itrsquos initial position) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious

2 Algebraic Approach Involves coordinate transformations

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 52: Robotics ppt downloaded.ppt

X2

X3Y2

Y3

1

2

3

1

2 3

Example Problem You are have a three link arm that starts out aligned in the x-axis

Each link has lengths l1 l2 l3 respectively You tell the first one to move by 1

and so on as the diagram suggests Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 )

ie Rotating by 1 will put you in the X1Y1 frame Translate in the along the X1 axis by l1 Rotating by 2 will put you in the X2Y2 frame and so on until you are in the X3Y3 frame

The position of the yellow dot relative to the X3Y3 frame is(l1 0) Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X0Y0 frame

X1

Y1

X0

Y0

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 53: Robotics ppt downloaded.ppt

Slight variation on the last solutionMake the yellow dot the origin of a new coordinate X4Y4 frame

X2

X3Y2

Y3

1

2

3

1

2 3

X1

Y1

X0

Y0

X4

Y4

H = Rz(1 ) Tx1(l1) Rz(2 ) Tx2(l2) Rz(3 ) Tx3(l3)

This takes you from the X0Y0 frame to the X4Y4 frame

The position of the yellow dot relative to the X4Y4 frame is (00)

1

0

0

0

H

1

Z

Y

X

Notice that multiplying by the (0001) vector will equal the last column of the H matrix

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 54: Robotics ppt downloaded.ppt

More on Forward Kinematicshellip

Denavit - Hartenberg Parameters

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 55: Robotics ppt downloaded.ppt

Denavit-Hartenberg Notation

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i

d i

i

IDEA Each joint is assigned a coordinate frame Using the Denavit-Hartenberg notation you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 )

THE PARAMETERSVARIABLES a d

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 56: Robotics ppt downloaded.ppt

The Parameters

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

You can align the two axis just using the 4 parameters

1) a(i-1)

Technical Definition a(i-1) is the length of the perpendicular between the joint axes The joint axes is the axes around which revolution takes place which are the Z(i-1) and Z(i) axes These two axes can be viewed as lines in space The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 57: Robotics ppt downloaded.ppt

a(i-1) cont

Visual Approach - ldquoA way to visualize the link parameter a(i-1) is to imagine an expanding cylinder whose axis is the Z(i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a(i-1)rdquo (Manipulator Kinematics)

Itrsquos Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames then the common perpendicular is usually the X(i-1) axis So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to the i frame

If the link is prismatic then a(i-1) is a variable not a parameter Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 58: Robotics ppt downloaded.ppt

2) (i-1)

Technical Definition Amount of rotation around the common perpendicular so that the joint axes are parallel

ie How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing in

the same direction as the Zi axis Positive rotation follows the right hand rule

3) d(i-1)

Technical Definition The displacement along the Zi axis needed to align the a(i-1) common perpendicular to the ai common perpendicular

In other words displacement along the

Zi to align the X(i-1) and Xi axes

4) i

Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi

axis

Z(i - 1)

X(i -1)

Y(i -1)

( i - 1)

a(i - 1 )

Z i Y i

X i a i d i

i

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 59: Robotics ppt downloaded.ppt

The Denavit-Hartenberg Matrix

1000

cosαcosαsinαcosθsinαsinθ

sinαsinαcosαcosθcosαsinθ

0sinθcosθ

i1)(i1)(i1)(ii1)(ii

i1)(i1)(i1)(ii1)(ii

1)(iii

d

d

a

Just like the Homogeneous Matrix the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next Using a series of D-H Matrix multiplications and the D-H Parameter table the final result is a transformation matrix from some frame to your initial frame

Z(i -

1)

X(i -1)

Y(i -1)

( i -

1)

a(i -

1 )

Z i Y

i X

i

a

i

d

i

i

Put the transformation here

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 60: Robotics ppt downloaded.ppt

3 Revolute Joints

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

Denavit-Hartenberg Link Parameter Table

Notice that the table has two uses

1) To describe the robot with its variables and parameters

2) To describe some state of the robot by having a numerical values for the variables

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 61: Robotics ppt downloaded.ppt

Z0

X0

Y0

Z1

X2

Y1

Z2

X1

Y2

d2

a0 a1

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

1

V

V

V

TV2

2

2

000

Z

Y

X

ZYX T)T)(T)((T 12

010

Note T is the D-H matrix with (i-1) = 0 and i = 1

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 62: Robotics ppt downloaded.ppt

1000

0100

00cosθsinθ

00sinθcosθ

T 00

00

0

i (i-1) a(i-1) di

i

0 0 0 0 0

1 0 a0 0 1

2 -90 a1 d2 2

This is just a rotation around the Z0 axis

1000

0000

00cosθsinθ

a0sinθcosθ

T 11

011

01

1000

00cosθsinθ

d100

a0sinθcosθ

T22

2

122

12

This is a translation by a0 followed by a rotation around the Z1 axis

This is a translation by a1 and then d2 followed by a rotation around the X2 and Z2 axis

T)T)(T)((T 12

010

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 63: Robotics ppt downloaded.ppt

I n v e r s e K i n e m a t i c s

From Position to Angles

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 64: Robotics ppt downloaded.ppt

A Simple Example

1

X

Y

S

Revolute and Prismatic Joints Combined

(x y)

Finding

)x

yarctan(θ

More Specifically

)x

y(2arctanθ arctan2() specifies that itrsquos in the

first quadrant

Finding S

)y(xS 22

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 65: Robotics ppt downloaded.ppt

2

1

(x y)

l2

l1

Inverse Kinematics of a Two Link Manipulator

Given l1 l2 x y

Find 1 2

RedundancyA unique solution to this problem

does not exist Notice that using the ldquogivensrdquo two solutions are possible Sometimes no solution is possible

(x y)l2

l1

l2

l1

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 66: Robotics ppt downloaded.ppt

The Geometric Solution

l1

l22

1

(x y) Using the Law of Cosines

21

22

21

22

21

22

21

22

212

22

122

222

2arccosθ

2)cos(θ

)cos(θ)θ180cos(

)θ180cos(2)(

cos2

ll

llyx

ll

llyx

llllyx

Cabbac

2

2

22

2

Using the Law of Cosines

x

y2arctanα

αθθ

yx

)sin(θ

yx

)θsin(180θsin

sinsin

11

22

2

22

2

2

1

l

c

C

b

B

x

y2arctan

yx

)sin(θarcsinθ

22

221

l

Redundant since 2 could be in the first or fourth quadrant

Redundancy caused since 2 has two possible values

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 67: Robotics ppt downloaded.ppt

21

22

21

22

2

2212

22

1

211211212

22

1

211212

212

22

12

1211212

212

22

12

1

2222

2

yxarccosθ

c2

)(sins)(cc2

)(sins2)(sins)(cc2)(cc

yx)2((1)

ll

ll

llll

llll

llllllll

The Algebraic Solution

l1

l22

1

(x y)

21

21211

21211

1221

11

θθθ(3)

sinsy(2)

ccx(1)

)θcos(θc

cosθc

ll

ll

Only Unknown

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 68: Robotics ppt downloaded.ppt

))(sin(cos))(sin(cos)sin(

))(sin(sin))(cos(cos)cos(

abbaba

bababa

Note

)c(s)s(c

cscss

sinsy

)()c(c

ccc

ccx

2211221

12221211

21211

2212211

21221211

21211

lll

lll

ll

slsll

sslll

ll

We know what 2 is from the previous slide We need to solve for 1 Now we have two equations and two unknowns (sin 1 and cos 1 )

2222221

1

2212

22

1122221

221122221

221

221

2211

yx

x)c(ys

)c2(sx)c(

1

)c(s)s()c(

)(xy

)c(

)(xc

slll

llllslll

lllll

sls

ll

sls

Substituting for c1 and simplifying many times

Notice this is the law of cosines and can be replaced by x2+ y2

22

222211

yx

x)c(yarcsinθ

slll

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 69: Robotics ppt downloaded.ppt

Joint Drive Systemsbull Electric

ndash Uses electric motors to actuate individual jointsndash Preferred drive system in todays robots

bull Hydraulicndash Uses hydraulic pistons and rotary vane actuatorsndash Noted for their high power and lift capacity

bull Pneumaticndash Typically limited to smaller robots and simple material

transfer applications

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 70: Robotics ppt downloaded.ppt

Robot Control Systemsbull Limited sequence control ndash pick-and-place

operations using mechanical stops to set positionsbull Playback with point-to-point control ndash records

work cycle as a sequence of points then plays back the sequence during program execution

bull Playback with continuous path control ndash greater memory capacity andor interpolation capability to execute paths (in addition to points)

bull Intelligent control ndash exhibits behavior that makes it seem intelligent eg responds to sensor inputs makes decisions communicates with humans

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 71: Robotics ppt downloaded.ppt

End Effectorsbull The special tooling for a robot that enables it to perform a

specific task

bull Two types

ndash Grippers ndash to grasp and manipulate objects (eg parts) during work cycle

ndash Tools ndash to perform a process eg spot welding spray painting

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 72: Robotics ppt downloaded.ppt

Grippers and Tools

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 73: Robotics ppt downloaded.ppt

Industrial Robot Applications1 Material handling applications

ndash Material transfer ndash pick-and-place palletizingndash Machine loading andor unloading

2 Processing operationsndash Weldingndash Spray coatingndash Cutting and grinding

3 Assembly and inspection

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 74: Robotics ppt downloaded.ppt

Robotic Arc-Welding Cellbull Robot performs

flux-cored arc welding (FCAW) operation at one workstation while fitter changes parts at the other workstation

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 75: Robotics ppt downloaded.ppt

Servo RobotsServo Robots

bull A more sophisticated level of control can be achieved by adding servomechanisms that can command the position of each joint

bull The measured positions are compared with commanded positions and any differences are corrected by signals sent to the appropriate joint actuators

bull This can be quite complicated

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 76: Robotics ppt downloaded.ppt

Teach and Play-back RobotsTeach and Play-back Robots

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 77: Robotics ppt downloaded.ppt

Robotic Vision system

The most powerful sensor which can equip a robot with largevariety of sensory information is ROBOTIC VISION1048708 Vision systems are among the most complex sensory system inuse1048708 Robotic vision may be defined as the process of acquiringand extracting information from images of 3-d world1048708 Robotic vision is mainly targeted at manipulation andinterpretation of image and use of this information in robotoperation control1048708 Robotic vision requires two aspects to be addressed1 Provision for visual input2 Processing required to utilize it in a computer basedsystems

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 78: Robotics ppt downloaded.ppt

Why UVs Need AI

bull Sensor interpretationndash Bush or Big Rock Symbol-ground problem Terrain interpretation

bull Situation awareness Big Picture

bull Human-robot interaction

bull ldquoOpen worldrdquo and multiple fault diagnosis and recovery

bull Localization in sparse areas when GPS goes out

bull Handling uncertainty

bull Manipulators

bull Learning

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 79: Robotics ppt downloaded.ppt

Artificial Intelligent RobotsAll Have 5 Common Components bull Mobility legs arms neck wrists

ndash Platform also called ldquoeffectorsrdquo

bull Perception eyes ears nose smell touchndash Sensors and sensing

bull Control central nervous systemndash Inner loop and outer loop layers of the brain

bull Power food and digestive systembull Communications voice gestures hearing

ndash How does it communicate (IO wireless expressions)ndash What does it say

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 80: Robotics ppt downloaded.ppt

7 Major Areas of AI1 Knowledge representation

bull how should the robot represent itself its task and the world

2 Understanding natural language

3 Learning

4 Planning and problem solvingbull Mission task path planning

5 Inferencebull Generating an answer when there isnrsquot complete information

6 Searchbull Finding answers in a knowledge base finding objects in the world

7 Vision

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 81: Robotics ppt downloaded.ppt

ldquoUpper brainrdquo or cortexReasoning over information about goals

ldquoMiddle brainrdquoConverting sensor data into information

Spinal Cord and ldquolower brainrdquoSkills and responses

Intelligence and the CNS

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 82: Robotics ppt downloaded.ppt

AI Focuses on Autonomybull Automation

ndash Execution of precise repetitious actions or sequence in controlled or well-understood environment

ndash Pre-programmed

Autonomyndash Generation and execution of actions to meet a goal or

carry out a mission execution may be confounded by the occurrence of unmodeled events or environments requiring the system to dynamically adapt and replan

ndash Adaptive

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 83: Robotics ppt downloaded.ppt

So How Does Autonomy Work

bull In two layersndash Reactivendash Deliberative

bull 3 paradigms which specify what goes in what layerndash Paradigms are based on 3 robot primitives

sense plan act

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 84: Robotics ppt downloaded.ppt

AI Primitives within an Agent

SENSE PLAN ACT

LEARN

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 85: Robotics ppt downloaded.ppt

Reactive

ACTSENSE

ACTSENSE

ACTSENSE

PLAN

Users loved it because it worked

AI people loved it but wanted to put PLAN back in

Control people hated it because couldnrsquot rigorously prove it worked

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92
Page 86: Robotics ppt downloaded.ppt

Thank you all

  • INDUSTRIAL ROBOTICS AND EXPERT SYSTEMS
  • robot (noun) hellip
  • Jacques de Vaucanson (1709-1782)
  • The Origins of Robots
  • Mechanical horse
  • Pre-History of Real-World Robots
  • Slide 7
  • History of Robotics
  • The US military contracted the walking truck to be built by the General Electric Company for the US Army in 1969
  • Unmanned Ground Vehicles
  • Slide 11
  • Unmanned Aerial Vehicles
  • Autonomous Underwater Vehicles
  • Slide 14
  • Discussion of Ethics and Philosophy in Robotics
  • Isaac Asimov and Joe Engleberger
  • Asimovrsquos Laws of Robotics
  • The Advent of Industrial Robots - Robot Arms
  • Industrial Robot Defined
  • What are robots made of
  • Robot Anatomy
  • Manipulator Joints
  • Polar Coordinate Body-and-Arm Assembly
  • Cylindrical Body-and-Arm Assembly
  • Cartesian Coordinate Body-and-Arm Assembly
  • Jointed-Arm Robot
  • SCARA Robot
  • Wrist Configurations
  • An Introduction to Robot Kinematics
  • Slide 30
  • An Example - The PUMA 560
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
  • Slide 38
  • Slide 39
  • Slide 40
  • Slide 41
  • Slide 42
  • Slide 43
  • Slide 44
  • Slide 45
  • Slide 46
  • Slide 47
  • Slide 48
  • Slide 49
  • Slide 50
  • Slide 51
  • Slide 52
  • Slide 53
  • Slide 54
  • Slide 55
  • Slide 56
  • Slide 57
  • Slide 58
  • Slide 59
  • Slide 60
  • Slide 61
  • Slide 62
  • Slide 63
  • Slide 64
  • Slide 65
  • Slide 66
  • Slide 67
  • Slide 68
  • Slide 69
  • Slide 70
  • Joint Drive Systems
  • Robot Control Systems
  • End Effectors
  • Grippers and Tools
  • Industrial Robot Applications
  • Robotic Arc-Welding Cell
  • Servo Robots
  • Slide 78
  • Robotic Vision system
  • Slide 80
  • Why UVs Need AI
  • Artificial Intelligent Robots
  • Slide 83
  • 7 Major Areas of AI
  • Intelligence and the CNS
  • AI Focuses on Autonomy
  • So How Does Autonomy Work
  • AI Primitives within an Agent
  • Reactive
  • Slide 90
  • Slide 91
  • Slide 92