16 views

Uploaded by danvic

Robotics basic

Robotics basic

© All Rights Reserved

- 10.1.1.48
- Method of Design Cantilever Erection
- Robotics Project
- Week 1.pptx
- 0759 (
- chapter 11 robotics in manufacturing processes p182-197
- Comparison- loader mechanism
- 22
- UCF_-_SOLIDWORKS_V
- Humanoid Robotics
- Development Of Industrial Automatic Multi Colour Sorting and Counting Machine Using Arduino Nano Microcontroller and TCS3200 Colour Sensor
- WP Evaluating Processes for Automation
- reading comprehension test
- wall suba
- 01_intro
- final term paper of dom
- Humanoids
- 142739.pdf
- Lecture04_5EL158.pdf
- Dynamic lecture

You are on page 1of 52

Purpose:

The purpose of this chapter is to introduce you to robot

kinematics, and the concepts related to both open and closed

kinematics chains. Forward kinematics is distinguished from

inverse kinematics.

ME 537 - Robotics

ME 537 - Robotics

1. Review the concept of a kinematics chain

2. Distinguish serial from parallel robots structures.

3. Relate a robots degrees-of-freedom (dof) to the joint

structure constraints.

4. Define robot redundancy.

5. Define serial robot types based on primary dof.

7. Examine forward and inverse kinematics for serial robots.

8. Examine forward and inverse kinematics for parallel robots.

ME 537 - Robotics

ME 537 - Robotics

Kinematics chain

Mechanisms can be configured as kinematics chains.

The chain is closed when the ground link begins and

ends the chain; otherwise, it is open.

joint 2

joint 1

link 2

linki

jointi

Fixed link 1

ME 537 - Robotics

ME 537 - Robotics

joint n - 1

link n

Assuming binary pair joints (joints supporting 2 links), the

degrees-of-freedom (F) of a mechanism is governed by the

equation

F = l (n - 1)

c

i 1

Define

F = mechanism degrees-of-freedom

n = number of mechanism links

j = number of mechanism joints

ci = number of constraints imposed by joint i

fi = degrees-of-freedom permitted by joint i

l = degrees-of-freedom in space in which mechanism functions

ME 537 - Robotics

ME 537 - Robotics

Grublers criterion

It is also true that

l = ci + f i

which leads to Grubler's Criterion:

j

F = l (n - j - 1) +

f

i 1

Referencing figure and using previous page equation :

F = 6 (7 - 1) - 6 (5) = 6

"as expected

or by Grublers equation:

F = 6(7 6 1) + 6 (1) = 6 "as expected

ME 537 - Robotics

ME 537 - Robotics

Redundant degreesof-freedom .

A redundant joint is one that is

unnecessary because other joints

provide the needed position

and/or orientation. Can you see

the redundancy among the last 3

joints on the IRB 4400?

ME 537 - Robotics

ME 537 - Robotics

Redundant degrees-of-freedom

Redundant joints can generate passive degrees-offreedom, which must be subtracted from Grubler's

equation to get

j

F = l (n - j - 1) + f i - fp

i 1

about an axis defined by the two joints. A passive dof

cannot transfer torque.

ME 537 - Robotics

ME 537 - Robotics

The number of independent

loops (L) is the total number of

loops excluding the external

loop. For multiple loop chains it

is true that j = n + L -1 which

gives Euler's equation:

L=j- n +1

The figure applies this equation

for a 2 loop mechanism.

ME 537 - Robotics

ME 537 - Robotics

j = 8; n = 7

L=8-7+1=2

Combining Eulers equation with Grubler's

Criterion, we get the Loop Mobility Criterion:

fi = F + l L

ME 537 - Robotics

ME 537 - Robotics

Parallel robots

A parallel robot is a closed loop chain, whereas a serial robot

is an open loop chain. A hybrid mechanism is one with both

closed and open chains.

S

The figure shows the Stewart-Gough

platform. Determine the dof. Each S-P-S

P

combination generates a passive degree-ofS

freedom. Thus, apply

j

F = l (n - j - 1) + f i

- fp

i 1

l = 6; n = 14; j1 = 6; j3 = 12; fp = 6

to get

ME 537 - Robotics

ME 537 - Robotics

S-P-S joint combination as shown:

S = spherical joint; P = prismatic

joint)

....as expected!

Serial robots can be

classified as revolute,

spherical, cylindrical, or

rectangular (translational,

prismatic, or Cartesian).

These classifications describe

the primary DOF (degreesof-freedom) which

accomplish the global motion

as opposed to the distal

(final) joints that accomplish

the local orientation.

ME 537 - Robotics

ME 537 - Robotics

According to Denavit-Hartenberg (D-H) notation (Denavit, J. and

Hartenberg, "A Kinematic Notation for Lower-Pair Mechanisms Based on

Matrices," J. of Applied Mechanics, June, 1955, pp. 215-221.), only four

parameters (a, d, q,a) are necessary to define a frame in space (or joint

axis) relative to a reference frame:

z

axis of next frame) and z axis (mutually

orthogonal line between line L and z axis)

d

minimum distance intersection point

q = angle between x-z plane and plane

containing z axis and minimum distance

line

aangle between z axis and L .

ME 537 - Robotics

ME 537 - Robotics

q

x

d

y

links/joints

ME 537 - Robotics

ME 537 - Robotics

ME 537 - Robotics

ME 537 - Robotics

Joint

ai

qi

di

ai

Range

90

-90

-150 to 150

432

149.5

-225 to 45

90

90

-45 to 225

432

-90

-110 to 170

90

-100 to 100

55.5

-265 to 265

ME 537 - Robotics

ME 537 - Robotics

Given a revolute joint a point located on the ith link can be

located in i - 1 axes by the following transformation set which

consist of four homogeneous transformations (2 rotations

and 2 translations). The set that will accomplish this is

Ai = H(d,zi-1) H(q,z i-1) H(a ,xi) H(a,x i)

xi

Ai =

cq i

sq

i

0

- ca i s q i

cq i ca i

sa i sq i

- s a i cq i

sa i

0

ca i

0

ME 537 - Robotics

ME 537 - Robotics

a i cq i

a i sq i

di

(i = 1, ...n)

Why are the D-H

parameters applied as

shown to generate the

Ai transformation?

zi

Joint i

xi

z i-1

Joint i-1

zi+1

yi

ai

di

xi

ai

qi

ME 537 - Robotics

ME 537 - Robotics

Link i

Joint i+1

Four parameters must be specified:

ai = minimum distance between joint i axis (zi) and joint i-1 axis (zi1)

di = distance from minimum distance line (xi-1 axis) to origin of ith

joint frame measured along zi axis.

ai = angle between zi and zi-1 measured about previous joint frame

xi-1 axis.

qi = angle about zi joint axis which rotates xi-1 to xi axis in right hand

sense.

The xi axis is the minimum distance line defined from zi to zi+1; zi is

defined as the joint rotation or translation axis axis and yi by the right

hand rule (zi x xi). The origin of each joint frame is defined by the

minimum distance line intersection on the joint axis.

ME 537 - Robotics

ME 537 - Robotics

The transformation for this set of D-H parameters is

Ai =

- sq i

0

ai

cqi

sqi ca i cqi ca i - sa i - sa i d i

sq sa cq sa ca ca d

i

i

i

i i

i i

0

0

1

0

and CODE D-H?

ME 537 - Robotics

ME 537 - Robotics

for the Puma robot being considered.

Joint

ai

qi

di

ai

Range

-150 to 150

-225 to 45

-45 to 225

-110 to 170

-100 to 100

-265 to 265

ME 537 - Robotics

ME 537 - Robotics

Given the A transformation matrices of one joint frame relative to

the preceding joint frame using conventional D-H notation, we can

relate any point in the ith link to the global reference frame by the

following transformation. Let vi be a point fixed to the ith link. Its

coordinates ui in the global frame are (n = # dof)

ui = A1 A2....Ai vi

( i = 1, 2, ... n)

matrix called the T matrix

Ti = A1 A2....Ai

If i = n, then Tn locates the tool (or gripper) frame. We usually drop

the n subscript and simply use T.

ME 537 - Robotics

ME 537 - Robotics

The pose of a tool frame at the end of the robot can be

determined by the equation

T = A1A2A3...AnG

where T locates the tool relative to the robot base frame

and G locates the tool relative to the last joint frame.

Question: Why is G required in the CODE D-H notation,

but not in the conventional D-H notation?

ME 537 - Robotics

ME 537 - Robotics

Inverse kinematics raises the question:

Given that I know the desired pose of the tool, what

are the joint values required to move the tool to the

desired pose?

Forward kin:

T = A1A2A3...AnG

unknown

Inverse kin:

known

A1A2A3...An= T G-1

unknown

ME 537 - Robotics

ME 537 - Robotics

known

The solution, calculated in two stages, first uses a position

vector from the robot base (place at waist) to the wrist.

This vector allows for the solution of the first three

primary DOF that accomplish the global motion. The

last 3 DOF (secondary DOF) are found using the

calculated values of the first 3 DOF and the orientation

joint frames T4, T5, and T6 .

ME 537 - Robotics

ME 537 - Robotics

z0

y0

x0

sliding

y6

x6

Gripper

ME 537 - Robotics

ME 537 - Robotics

z6

approach

Let the gripper frame be defined by the unit vector triad n,

s, and a , unit vectors directed along the tools x, y, and z

axes respectively. These are specified by the known pose of

the tool frame, i.e., the target frame. The origin of the 4th

joint frame is determined by q and the known offset of the

tool frame, d6.

Zo

q = p - d6a

Xo

Yo

q

p

z4

y4

d6

x4

ME 537 - Robotics

ME 537 - Robotics

s

a

Applying T = A1 A2....A6 and using conventional D-H

notation, we multiply Ai together to get one matrix with 6

unknowns: q1, q2,..., q6. Setting the unknown terms equal to

the terms of the known target frame we generate 12

equations with 6 unknown joint angles. The course notes

have a full description of these equations, but the (1,1) term

looks like:

nx = C1 C23 C4 C5 C6 - S4 S 6 - S23 S 5 C6

-S 1 S 4 C5 C6 + C4 S 6

where C23 = cos(q2 + q3), etc.

ME 537 - Robotics

ME 537 - Robotics

Since the last three joint axes intersect at a common point

(concurrent axes), which is the origin of the 4th joint frame,

we let q4 = q5 = q6 = 0 and also let d6 = 0 to reduce the

invkin (short for inverse kinematics) equations to those of

the 4th joint frame. At this point:

q = p]q

= q = q = d =0

5

6

6

4

ME 537 - Robotics

ME 537 - Robotics

This gives the equations:

qy = S1 (d4 S23 + a2 C2) + d2 C1

qz = d4 C23 - a2 S2

Remember that qx, qy, and qz are known. Is there any way

that we can solve these equations for the primary joint

angles q1, q2 and q3. ?

ME 537 - Robotics

ME 537 - Robotics

Let l = d4 S23 + a2 C2; thus,

qx = C1l - d2 S1 ;

qy = S1l + d2 C1

2

2

2

d

l=

x

y

2

tan -1

l qy - d2 qx

l qx + d2 qy

We actually apply the atan2 function using the numerator

(sine) and denominator (cos) from the solution equation.

ME 537 - Robotics

ME 537 - Robotics

How many solutions exist for q1? Explain. Can you relate

these solutions to the physical configuration of the Puma

robot?

The solution for q3 can be found by squaring the q

components adding to get

q3 = tan-1

q 2x q 2y q 2z d 24 a 22 d 22

4d 24 a 22 q 2x q 2y q 2z d 24 a 22 d 22 2

The + soln is for the elbow above hand whereas the - soln is

for the elbow below hand.

ME 537 - Robotics

ME 537 - Robotics

Now, given q3, we can expand and finally arrive at (use

atan2)

q 2 = tan -1

qz d4 C3 - a2 + d4 S 3

soln corresponds to right arm configuration.

ME 537 - Robotics

ME 537 - Robotics

Obviously knowing permits definition of 0T3. To determine q4,

q5, and q6 we assume that an approach direction is known (a

known) and that hand orientation is specified (n, s). For the

PUMA robot we can arrange the joint axes such that

(z 3 x a)

z4 =

|| z 3 x a ||

z5 = a

y6 = s

ME 537 - Robotics

ME 537 - Robotics

Now given the above criteria, we can

solve for q4 from

C4 = y 3 z4

S4 = -x 3 z4

(= y 3 T z4)

y3

z3

y3

(= -x 3 T z4)

columns of 0T3 to get (use atan2)

q 4 = tan

-1

C1 ay - S1 ax

C1 C 23 a x + S1 C 23 a y - S23 az

ME 537 - Robotics

ME 537 - Robotics

q4

x3

z4

q4

x4

x3

Refer to the course notes to get similar solutions for q5 and

q 6.

How many total invkin solutions are feasible for the Puma

robot?

What limits the number of invkin solutions that can be

applied?

ME 537 - Robotics

ME 537 - Robotics

q1

q2

q3 (x,y,z,q)

q3 is used to complete the tool orientation

ME 537 - Robotics

ME 537 - Robotics

Forward & inverse kinematics are important to robotics.

Robot teach-pendant uses direct joint control to place the

robot tool at desired poses in space.

Target for an end-effector requires invkin solutions to

generate the necessary joint values.

D-H parameters provide a simple way of relating joint

frames to each other, although more than one D-H form

proliferate the application methods.

Invkin solutions can be complex depending on the robot

structure . Both analytical and geometric methods can be

applied.

ME 537 - Robotics

ME 537 - Robotics

A parallel mechanism is symmetrical if the

number of limbs is equal to the number of

degrees-of-freedom of the moving platform

joint type and joint sequence in each limb

are the same

Otherwise, the mechanism is asymmetrical. We will examine

the kinematics for symmetrical mechanisms.

ME 537 - Robotics

ME 537 - Robotics

limb = a serial combination links

and joints between ground and

the moving rigid platform

connectivity of a limb (Ck) =

degrees-of-freedom associated

with all joints in a limb

ME 537 - Robotics

ME 537 - Robotics

Connectivity equation

Observation of symmetrical mechanisms will establish that

j

C

k 1

f

i 1

m is the number of limbs.

What is the connectivity of a limb of the picker robot?

Answer 7!

Note that Grublers Criterion does not readily apply to parallel

robots because of joint redundancies.

ME 537 - Robotics

ME 537 - Robotics

The course notes present the forward

kinematics solution for the Maryland

(or ABB picker) robot. This solution is

also found in Tsais text. It is complex

and will not be discussed here, but you

should review the solution to see how it

is done.

The reason for not examining this

solution is found in the question:

pendant to program this robot?

ME 537 - Robotics

ME 537 - Robotics

In reality you would probably

not command the joints directly,

but most likely command

translations in the u, v, and w

directions. Thus, you would not

likely drive this robot using

forward kinematics but only

apply inverse kinematics.

ME 537 - Robotics

ME 537 - Robotics

Assume that a desired position vector p

given. Find the joint angles to place point

P at p.

In reality, the gripper would not be

located at P, but be attached to the

moving platform. This is determined by

gripper frame G relative to the platform

coordinate axes. A target frame is

specified as T. The frame for point P is

determined from the fourth column of Tp

= TG-1. We designate this vector as p.

ME 537 - Robotics

ME 537 - Robotics

Given p we determine the location of point Ci. This is simple

because the moving platform cannot rotate and thus the line

between P and Ci translates only. Thus, given P (as

determined by p) and the distance h, we can determine Ci as

displaced from P by a vector of length h that is parallel to xi.

P

p

parallel to xi

Ci

zero state

xi

O

ME 537 - Robotics

ME 537 - Robotics

We can write a loop closure equation:

AiBi + BiCi = OP + PCi OAi

and express this equation in the limb i coordinate frame (xi, yi, zi).

ME 537 - Robotics

ME 537 - Robotics

Expressing the previous limb vector loop equation in the limb i

coordinate frame, we get the matrix equations: in terms of the

limb vector c shown by the green vector in the figure:

a cq1i b sq 3i c(q1i q 2i ) c xi

c yi

b cq 3i

a

s

q

b

s

q

s(

q

q

)

c zi

1i

3i

1i

2i

ci

c xi c i s i 0 p x h - r

c - s c 0 p 0

yi 0 i 0 i 1 y 0

p z

c zi

ME 537 - Robotics

ME 537 - Robotics

The locus of motion of link BiCi is a

sphere with center at Ci and radius b.

From the previous matrix equation we

can determine a solution for q3i as

P

h

b

Bi'

q3i = cos-1(cyi/b)

Ci

Bi

zi

a

r

Ai

ci

ME 537 - Robotics

ME 537 - Robotics

xi

Given q3i we can determine an equation for q2i by summing the

squares of the matrix equation to get

2ab sq3i cq2i + a2 + b2 = cxi2 + cyi2 + czi2

which leads to a solution for q2i as

q2i = cos-1(k)

where k = (cxi2 + cyi2 + czi2 - a2 - b2)/(2ab sq3i). Physically, we can

determine two solutions for q2i ("+" angle and "-" angle similar

to elbow up/down case).

ME 537 - Robotics

ME 537 - Robotics

The two solutions for q1i can be determined from the matrix

equation by expanding the double angle formulas, solving for

the sine and cosine of q1i and then using the atan2 function to

get q1i.

a cq1i b sq 3i c(q1i q 2i ) c xi

c yi

b cq 3i

a sq b sq s( q q )

1i

3i

1i

2i

c zi

ME 537 - Robotics

ME 537 - Robotics

An alternative solution is to sum the squares of the 1st and 3rd

equations after rearranging them to this form (q3i now known):

a cq1i cxi = b sq3i c(q1i + q21)

a sq1i czi = b sq3i s(q1i + q21)

leading to:

cxi cq1i + czi sq1i = (a2 + cxi2 + czi2 - b2 s2q3i)/(2 a)

can be arranged to a double angle sine formula to solve for q1i ,

the actuation joint for each limb. This approach does not

require a solution for q2i .

ME 537 - Robotics

ME 537 - Robotics

It is possible that the target frame may fall outside the robot's

reach; thus, we must examine the special cases:

Generic solution - circle of link AB intersects the BC

sphere at two points, giving two solutions.

Singular solution - circle tangent to sphere resulting in one

solution.

Singular solution - circle lies on sphere -- physically

unrealistic case!

ME 537 - Robotics

ME 537 - Robotics

Parallel robots use invkin to program configurations

Commercial parallel robots are symmetrical.

Grubler's Criterion does not readily apply to this class of

complex mechanisms, because of designed redundancies

and special constraints.

thus, they can move much faster.

ME 537 - Robotics

ME 537 - Robotics

- 10.1.1.48Uploaded byRuchit Pathak
- Method of Design Cantilever ErectionUploaded byzieq72
- Robotics ProjectUploaded byMohammed Abu Sufian
- Week 1.pptxUploaded byMohan
- 0759 (Uploaded byEhtasham Ul Hassan
- chapter 11 robotics in manufacturing processes p182-197Uploaded byapi-152132438
- Comparison- loader mechanismUploaded byVyankatesh Ashtekar
- 22Uploaded byapi-3833671
- UCF_-_SOLIDWORKS_VUploaded byphruiz1890
- Humanoid RoboticsUploaded bySubhadeep Ghosh
- Development Of Industrial Automatic Multi Colour Sorting and Counting Machine Using Arduino Nano Microcontroller and TCS3200 Colour SensorUploaded bytheijes
- WP Evaluating Processes for AutomationUploaded byKim Norris
- reading comprehension testUploaded byapi-441462150
- wall subaUploaded bySubramanyam Avvaru
- 01_introUploaded byamartyashankha
- final term paper of domUploaded byAvinash Rajput
- HumanoidsUploaded byNagendra Singh
- 142739.pdfUploaded byAnkur Bhargava
- Lecture04_5EL158.pdfUploaded byselvam
- Dynamic lectureUploaded byPob Parat
- Kinematic and Dynamic AnalysesUploaded byAbhimanyu Yadav
- Flash e Hogan (1985).pdfUploaded byDunga Pessoa
- ME371 SyllabusUploaded byKevin Robert
- mechanicsUploaded byHarold Jhay Acoba
- 2 dofUploaded byinventor_bk
- 11Uploaded byMokhtar Arvanagi
- The Material DerivativeUploaded byBenni Wewok
- NS540_online1Uploaded byMikai Trillanes Collo
- 520153 June 2017 Examiner ReportUploaded byMohd Zawawi
- RegisterUploaded byAnis Ahmad

- Overview-Gear ManufUploaded bydanvic
- Seizing Competitive Edge With the Industrial Internet by Jost GreenbaumUploaded bydanvic
- OM-VIB-101Uploaded bydanvic
- 2012-1813. DH Representation - ExamplesUploaded bysoorajsivan
- GearUploaded byAditya Tanwar
- Metal RollingUploaded bysamurai7_77
- Sheet Metal Forming PSUploaded bydanvic
- Drawing ProcesssUploaded bydanvic
- 3DOFUploaded bydanvic
- Gorge LsUploaded bydanvic
- The EngineerUploaded bydanvic
- Prediction of Solidification TimeUploaded byRaghu Bhat
- a13v26n1Uploaded byKonstantin Kravchenko
- Laplace TableUploaded byhyd arnes

- Discriminant Analysis (Retail Outlet)Uploaded byJigar Priydarshi
- Lab 1 Addressing ModesUploaded byNami Zaini
- 9709_s13_qp_32Uploaded bySheba Dan de Wise
- 55-06 - CCTV Operational Re2Uploaded byLogesh Kumar
- Cost of Sales AccountingUploaded byClaudio Cafarelli
- Problem Solving and C Programming_-_Handout_v2[1].1Uploaded byMarsha Wong
- Doctrine ORM for PHPUploaded bysuccessnetworks
- Wintel Interview Questions and AnswersUploaded bynagaraj
- 06082008161513@Fault_Finder_PCIUploaded byleontindemeter
- How to Install Any App as a System App on AndroidUploaded byCharles Smith
- b01 Crm704 Bb Configguide en XxUploaded byJohn Peter
- Tackling Russian Propaganda through Investigating Russian Influence in the Media Sector - by Todor Galev, PhD, Chisinau, Dec 4, 2018Uploaded byLyubomir Sirkov
- 2G Interview SlideUploaded byvishalkavi18
- FA3 Date Sheet - Formative Assessment I to IXUploaded bykumudha
- StartupUploaded byFania Valentina
- AccountantUploaded bystevepan18
- 0606_m15_qp_12.pdfUploaded byRayYong
- 04-Random-Variate Generation.pptUploaded byJesse Sanders
- UOP SignalsUploaded byObed Bardales
- ansys progamming, upfUploaded byshirbhatenj
- A starUploaded bytoncuvasile
- 21 Free Tools & Utilities for Translators - Alessandra MartelliUploaded byqazqazw
- math quizUploaded bymahabalu123456789
- An Optimization Model for the Design of Network Arch BridgesUploaded byAshutoshAparaj
- Ado.net in a NutshellUploaded byDinar C. Raote
- 3bse081418 en b Foundation Fieldbus Linking Device Ld 800hse ExUploaded bytimsar1357
- The SELinux Notebook the Foundations 3rd EditionUploaded byAnonymous pcdyTAlh
- 1.3.7 High- And Low-level Languages and Their TranslatorsUploaded byRana Hassan Tariq
- Tesis Acoso Escolar en Lima 2017Uploaded byAngel Rojas Marcelo
- dsPicFJ16-32GP-MC10xUploaded bySamir Chadli