0% found this document useful (0 votes)
74 views55 pages

RC Session3 Inverse Kinematics

Uploaded by

Fahad Khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
74 views55 pages

RC Session3 Inverse Kinematics

Uploaded by

Fahad Khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 55

Inverse Kinematics

Dr Seemal Asif

20/10/2020

www.cranfield.ac.uk

1 © Cranfield University 2017


Content

• Inverse Kinematics of Manipulators


• Existence and Multiplicity of Solutions
• Inverse Kinematics Techniques
• Algebraic solution
• Geometric solution
• Numerical solution
• Pieper’s solution

2 © Cranfield University 2017


Forward and Inverse Kinematics

• The Forward kinematics is about finding


an end effector pose given a set of joint
variables

• The Inverse Kinematics is the opposite


problem, which is to find a set of joint
variables that give rise to a particular end
effector pose

Link for UR software download: https://www.universal-


robots.com/download/?option=45440#section16597

3 © Cranfield University 2017


Inverse Manipulator Kinematics

• Consider a robotic manipulator with joint variables (ϴ1, ϴ2, …,ϴn)

• The relative position of the tool frame {T} with respect to the station
frame is
𝑆
𝑇 𝑇(ϴ1, ϴ2, …,ϴn) = 𝐵𝑆𝑇 01𝑇(𝑎0,𝛼0,𝑑1) (ϴ1) 12𝑇(𝑎1,𝛼1,𝑑2) (ϴ2) …
… 𝑁−1 𝑊
𝑁𝑇 𝑎𝑁−1,𝛼𝑁−1,𝑑𝑁 (𝜃𝑁 ) 𝑇 𝑇

• The above construction is a function


(ϴ1, …,ϴn) ↦ 𝑇𝑆𝑇(ϴ1, ϴ2, …,ϴN)
• The forward kinematics are the mapping
(ϴ1, …,ϴn) ↦ 𝑊0𝑇(ϴ1, …,ϴN)
• FK comprises the transformation associated with the robotic
manipulator

4 © Cranfield University 2017


Inverse Manipulator Kinematics

• The inverse kinematics of manipulator is the inverse of the forward


kinematics
𝜃1 ( 𝑊0𝑇)
0
𝑊𝑇 ↦ ⋮
𝜃𝑁 ( 𝑊0𝑇)
• The inverse kinematics are the key to practical programming of robotic
manipulators, because:
• They enable joint variables to be calculated for achieving the desired
wrist frame position in relation to the base frame
• The joint values can be sent to individual joint controllers to drive the
robot to the desired position

5 © Cranfield University 2017


Inverse Manipulator Kinematics

Standard frames:
• The base frame, the station frame, tool frame and goal frame.

1. The user specifies the station frame relative to the base frame 𝐵𝑆𝑇
based on the physical arrangement of the workspace.
2. The user specifies the tool frame relative to the wrist frame 𝑊𝑇𝑇. This
depends on the particular tool gripped by the robot and how it is
gripped.
3. The user specifies the goal frame, usually specified for the goal of the
tool. The goal frame {G} is specified with respect to the station frame
𝐺
𝑆𝑇

6 © Cranfield University 2017


Inverse Manipulator Kinematics

• The goal wrist frame is calculated based on setting the tool frame equal
to the goal frame {T} = {G}. Thus,

0 0 𝐵 𝑆 𝑇
𝑊𝑇 = 𝐵 𝑇 𝑆𝑇 𝑇 𝑇 𝑊𝑇
= 0𝑆𝑇 𝐺𝑆𝑇 𝑊𝐺𝑇

• The desired wrist specification 𝑊0𝑇 is passed as data to the inverse


kinematics algorithm and the joint variables are calculated
𝜃1 ( 𝑊0𝑇)
• 𝑊0𝑇 ↦ ⋮
𝜃𝑁 ( 𝑊0𝑇)
• The joint variable set points are passed to the joint controllers

7 © Cranfield University 2017


Solvability

• Existence of solutions
• Multiple solutions
• Non-Uniqueness of Inverse Kinematics
• Methods of solutions

Sometimes
there is no
solution!

8 © Cranfield University 2017


Existence and Uniqueness of Solutions

• The forward kinematics = defined functional mapping, where


• For any value of the joint variables (within the physical limitations of
the mechanism) there exists a unique rigid body transformation 𝑇𝑆𝑇
• Inverse kinematics do not have the nice functional properties of the
forward kinematics
• Existence: there are certainly 𝑇𝑆𝑇 that can not be achieved by the robotic
manipulator. This is non-existence of a solution. Such orientations lie
outside of the manipulator’s “reach” and should not be considered.
• Uniqueness: certain rigid body transformations (often most of the
workspace) can be achieved using a number of different joint variable
settings. This is a non-uniqueness of the solutions.

9 © Cranfield University 2017


Workspace of a robotics manipulator

• Whether the manipulator’s kinematic equations have none, one or


multiple solutions will depend on its workspace and on the position/pose
of frame we wish the end effector to attain.
• Roughly speaking the workspace is the volume of space which the end
effector of the robot can reach.
More Specifically,
• Dextrous Workspace: This is the volume of space which the end-
effector of the manipulator can reach with all orientations.
• Reachable Workspace: This is the volume of space which the end-
effector of the manipulator can reach with at least one orientation.
• The dextrous workspace is obviously a subset of the reachable
workspace.
𝐷𝑊 ⊂ 𝑅𝑊

10 © Cranfield University 2017


Reachable workspace and dexterous workspace

• If l1 = l2 the reachable workspace is a disc of radius 2l1.

• The dexterous workspace consists of only a point namely the origin.

11 © Cranfield University 2017


Reachable workspace and dexterous workspace

• If l1 ≠ l2 then there is no dexterous


workspace and the reachable
workspace is a ring with outer radius
l1 + l2 and inner radius |l1 - l2|.
• Inside the reachable workspace there
are two possible orientations of the tip
and on the boundaries there is only one
possible orientation.

12 © Cranfield University 2017


Assumptions in IK

• All joints can rotate 360o


• Typically this is not true - real joints have real limits and this reduces
the extent of the workspace

• Note that if a manipulator has less than 6 DOF then it cannot attain
general positions and orientations in 3-space

13 © Cranfield University 2017


Existence of Solutions

• For a solution to exist, the desired position/pose


must be reachable by the manipulator

• If degree of freedom N ≥ 6 then the reachable


workspace is 6-dimensional except at singular
points.

• Most robotic manipulators are built with 6 joints


to
1. Provide full dextrous coverage of a volume of
space
2. To avoid over-parameterisation of the
dextrous workspace

14 © Cranfield University 2017


Non-Uniqueness of IK

• Typically there are multiple solutions – what solution is better ?

• For economy of time and energy its probably better to pick the solution
nearest to the current configuration

• Which configuration would be more suitable to position the TCP at B?

15 © Cranfield University 2017


Non-Uniqueness of IK

• Both configurations will position TCB at B but b1 intersects an obstacle


so b2 should be selected
• A manipulator that allows multiple solutions for the IK problem is known
as redundant

16 © Cranfield University 2017


Non-Uniqueness of IK of the PUMA robot

• For each solution pictured, there is


another solution in which the last three
joints ‘flip’ to an alternate configuration
according to the formulae:
• θ4′ = θ4 + 180◦
• θ5′ = −θ5
• θ6′ = θ6 + 180◦

17 © Cranfield University 2017


Non-Uniqueness of IK

• More non-zero link parameters = more possible solutions to the inverse


kinematics problem
• Non-uniqueness of the inverse kinematics is an important practical
problem
• A path planning algorithm must choose between different possible
orientations when positioning a manipulator
• The possibility of multiple solutions may be exploited to advantage in
situations where obstacles are present in the workspace
• In most manufacturing environments this often leads to a simple
choice between possible solutions
• Different configurations are usually far apart in joint space.
• Thus, the second most common constraint applied in choosing a goal
configuration is that of nearest neighbour

18 © Cranfield University 2017


IK methods of solution

• A manipulator is termed solvable if for any given position and orientation


there is a (computable) algorithm that determines all the possible joint
variable configurations that lead to that configuration

• We must know all possible solutions in order to provide the path


planning algorithm with the full information in order to best position the
manipulator

19 © Cranfield University 2017


IK methods of solutions

• IK solution is the set of joint variables associated with an end effector’s desired
position and orientation
• There are no good general algorithms that lead to the solution of inverse
kinematic equations
• There are two main categories of manipulator inverse kinematics solutions:
1. Closed form solutions: In which the forward kinematics may be rewritten in a
manner that leads to a set of highly structured non-linear equations that may
be solved explicitly for the joint variables
2. Numerical solutions: In which a numerical algorithm is applied that explicitly
generates all solutions in a computationally feasible manner

20 © Cranfield University 2017


Close form solutions

There are two approaches:


• Algebraic – Trigonometric equations
• The forward kinematic equations are treated as a system of non-linear
equations to be solved without regard to the geometric structure of the robot
from which the equations were derived
• Geometric – Reduces the larger problem to a series of plane geometry
problems
• The geometric structure of the robot from which the forward kinematic
equations were derived is used to guide the approach used to solve the
inverse variable mapping

• Both approaches involve the same computational complexity

21 © Cranfield University 2017


Numerical Solutions

• The numerical solutions are iterative methods that are computationally


expensive
• The basic idea with a numerical solution is to repeatedly apply the forward
kinematics to match a set of target joint angles.
• According to the Jacobian (derivatives) at the chosen point, iteratively finding
joint angles that are closer to achieve the target point, until the desired point is
reached
• There are numerical algorithms that can solve for any kinematic manipulator
consisting of a single series chain

22 © Cranfield University 2017


Numerical Solutions

• There are various numerical solutions, these include:


• The Jacobian Transpose Method
• The pseudo Inverse Method
• The Extended Jacobian Method
• Cyclic Coordinate Descent (CCD)
• Quaternion based methods
• Forward and Backward Reaching Inverse Kinematics (FABRIK)

• Homework: look up these numerical IK methods

Aristidou, A., & Lasenby, J. (2011). FABRIK: A fast, iterative solver for
the Inverse Kinematics problem. Graphical Models, 73(5), 243-260.

23 © Cranfield University 2017


Algebraic (Analytical) Solution
• Three-link planar manipulator example 𝑋෠3
• Kinematic equation of this arm

• Based on this transformation structure

• Four nonlinear equations

24 © Cranfield University 2017


Algebraic Solution

25 © Cranfield University 2017


Algebraic Solution
To compute the right-hand side of (4.14) must have a value between -1 and 1
Assuming the goal is in the workspace, we write an expression for s2:

Using A.6 Elbow-up or down

We then compute
Refers to C.5 in the
formula sheet
Having found the ϴ2 we can solve (4.10) and (4.11) for ϴ1. We write (4.10)
and (4.11) in the form

Where

26 © Cranfield University 2017


Algebraic Solution
We change the way we write k1 and K2
If

Refers to C.5 in the formula sheet

Equation (4.17) and (4.18) can now be written as

Using A.5 in the formula sheet we get

27 © Cranfield University 2017


Algebraic Solution
Formula C.5

(4.20)

28 © Cranfield University 2017


Geometric Solution

• The solution is the geometric parallel to the algebra we just did


• We try to decompose the spatial geometry of the arm into several plane-
geometry problems
• We will use a simple result from plane geometry (the law of cosines) to
derive the solution
𝑌෠0

y B
C
L2

L1
𝜓
𝛽
A
O x 𝑋෠0

29 © Cranfield University 2017


Geometric Solution
𝑌෠0

y B
C ϴ2
L2

L1
Pythagorean
𝜓
Theorem 𝛽
A
O
x 𝑋෠0

• Apply the law of cosines (A.7) to OCB to solve for ϴ2

• And since cos(180+ϴ2)=-cos(ϴ2) we have

30 © Cranfield University 2017


Geometric Solution
• As before for this to be a valid equation the RHS must be less or equal to 1 in
magnitude
• This equation is now solved for ϴ2 such that -180≤ ϴ2 ≤0 since the triangle OCB
does not exist for other values of ϴ2
• The other solution (indicated by the triangle OAB) is given by symmetry to be ϴ’2
= - ϴ2
• Now we solve for 𝛽 and 𝜓 , the TCP could be in any quadrant we write
𝛽=Atan2(y,x) and use the law of cosines applied to triangle OCB

𝐿2 2 = 𝐿1 2 + 𝑥 2 + 𝑦 2 − 2𝐿1 𝑥 2 + 𝑦 2 cos(𝜓)

𝑥 2 + 𝑦 2 + 𝐿1 2 − 𝐿2 2
cos(𝜓) =
2𝐿1 𝑥 2 + 𝑦 2

• Where the solution for 𝜓 satisfies 0 ≤ 𝜓 ≤180

31 © Cranfield University 2017


Geometric Solution
• Now we have

• Where the plus sign corresponds to ϴ2 <0


• Finally ϴ3 which is simple

32 © Cranfield University 2017


Reduction to Polynomial
• Transcendental equations are difficult to solve since one variable ϴ usually
appears in different trigonometric functions e.g. cosϴ and sinϴ.
• It can be reduced to polynomial in variable
u = tan(ϴ/2)
• by using:
cosϴ = (1-u2)/(1+u2)
sinϴ =2u /(1+u2)

• Use the fact that


sinϴ = 2[sin(ϴ/2)cos (ϴ/2)] and cos ϴ=[cos(ϴ/2)2- sin(ϴ/2)2]

33 © Cranfield University 2017


Close form solutions

• Manipulators that can be solved in closed-form are those with a simple


mechanical design.
• For example most of the joint twist angles must be 0 or ±90o . Most of
the joint displacements or fixed joint angles should be zero or ±90o (in
the case of an angle).
• Manipulators are often designed “simply” to make a closed form inverse
kinematic solution possible, so the study of finding closed form solutions
is still useful

34 © Cranfield University 2017


Pieper's approach

• Manipulators that are sufficiently simple that the forward kinematics can
be rewritten as a set of polynomial equations or order four or less are
termed closed-form solvable (Polynomials of order five do not have a
closed-form solution)
• One strategy for determining inverse kinematics is Pieper’s solution
• Although an arbitrary 6 DOF manipulator cannot be solved using a
closed form solution, the quite common class of manipulators, where
three axes intersect at a point, can be solved – using Pieper's solution

35 © Cranfield University 2017


Pieper's approach

The key idea in Pieper's approach is to split the calculation into two
separate problems - the first three, and the last three joints
1. Locate the intersection of the last 3 joint axes
2. Calculate the position of this intersection point, given we know the
desired position P and pose R of the end effector/tool
3. Solve inverse kinematics for first three joints
4. Compute 36𝑇, and determine 03𝑇 06𝑇
5. Solve inverse kinematics for last three joints

36 © Cranfield University 2017


Pieper's approach: ABB IRB140 Case Study

• J4-6 intersect at a common point


• So Pieper’s solution can be applied
• By separating the position solution for ϴ1-3
from the orientation solution to solve for ϴ4-6
• Geometrical approach is implemented to find
the joint variables ϴ1-3 that define the end
effector position in space
• An analytical solution is applied to calculate
angles ϴ4-6 for the end-effector orientation

Almaged, M. (2017). Forward and Inverse Kinematic Analysis and


Validation of the ABB IRB 140 Industrial Robot. Journal of Mechanical
Engineering and Technology (JMET), 9(2), 1-20.

37 © Cranfield University 2017


Geometric solution – finding θ1
• x and y components of frame {1} are the
same as frame {0} with a Z-directional offset
between the two frames
• ∵ both L2 and L3 are planar, the position
vector in y direction changes with respect to
θ1 only
• Two possible solutions for θ1 can be
achieved by:
• θ1 = atan2 (Py, Px) (4.1)
• θ11 = Π + θ1 (4.2)

Almaged, M. (2017). Forward and Inverse Kinematic Analysis and


Validation of the ABB IRB 140 Industrial Robot. Journal of Mechanical
Engineering and Technology (JMET), 9(2), 1-20.

38 © Cranfield University 2017


Geometric solution – finding θ3
The solutions of θ2 and θ3 are obtained by considering the plane formed by the L2
and L3 planar links with respect to the global reference frame

Apply Law of Cosines to solve for θ3

h2 = (L2)2 + (L3) 2 —2 x L2 x L3 cos (180 — ζ)

The position is given with respect to the TCP


L3 = d4 + d6
L2 = a2
h2 = s2 +r2
cos (180 - ζ) = - cos (ζ)

Almaged, M. (2017). Forward and Inverse Kinematic Analysis and


Validation of the ABB IRB 140 Industrial Robot. Journal of Mechanical
Engineering and Technology (JMET), 9(2), 1-20.

39 © Cranfield University 2017


Geometric solution – finding θ3
• s2 + r2 = (a2)2 + (d4 + d6)2 + 2 x a2 x (d4 + d6) cos (ζ)
s2 + r2 −(a2)2 − (d4 + d6)2
• 𝐶𝑜𝑠 𝜁 = (4.3)
2 x a2 x (d4 + d6)

• Find the value of s and r


• s = (Pztip - d1)

• r=± (Pxtip – a1 cos(θ1))2 +(PYtip – a1 sin(θ1))2

Almaged, M. (2017). Forward and Inverse Kinematic Analysis and


Validation of the ABB IRB 140 Industrial Robot. Journal of Mechanical
Engineering and Technology (JMET), 9(2), 1-20.

40 © Cranfield University 2017


Geometric solution – finding θ3

• Substitute s and r into 4.3 and we get


• 𝐶𝑜𝑠 𝜁 =
(Pztip − d1) 2 +(Pxtip – a1 cos(θ1))2+(PYtip – a1 sin(θ 1 ))2−(a2)2 − (d4 + d6)2
2 x a2 x (d4 + d6)
• Sin 𝜁 = ± 1 − 𝐶𝑜𝑠2 𝜁

• ζ = atan2 (Sin (ζ), Cos (ζ))

• Finally,
• θ3 = - (90 + ζ)

• The negative sign in θ3 indicates that the rotation occurred in the opposite
direction
Almaged, M. (2017). Forward and Inverse Kinematic Analysis and
Validation of the ABB IRB 140 Industrial Robot. Journal of Mechanical
Engineering and Technology (JMET), 9(2), 1-20.

41 © Cranfield University 2017


Geometric solution – finding θ2
• Use the same procedure as before to solve for θ2
• θ2 = Ω – λ
• Ω = atan2 (s, r)
• λ = atan2 ((d4+d6) sin (ζ), a2 + (d4+d6) cos (ζ))
• θ2 = atan2 (s, r) – atan2 [(d4+d6) sin (ζ), a2+ (d4+d6) cos (ζ)]

Almaged, M. (2017). Forward and Inverse Kinematic Analysis and


Validation of the ABB IRB 140 Industrial Robot. Journal of Mechanical
Engineering and Technology (JMET), 9(2), 1-20.

42 © Cranfield University 2017


Geometric solution – finding θ2

Substitute the values of (s) and (r) and we get


• 𝜃2 = atan2 [(𝑃𝑧𝑡𝑖𝑝 – 𝑑1), ± (Pxtip – a1 cos(𝜃1))2 +(PYtip – a1 sin(𝜃1))2 –
atan2 [(d4+d6) x sin (ζ), a2+ (d4+d6) cos (ζ)]

• The rotation occurred in the opposite direction of the z axis as well as


there are an initial rotation of 90o between axis 1 and axis 2
• ∴ 𝜃2 = – ((Ω – 𝜆) – 90)

• Any position within the robot workspace can be achieved with many
orientations
• ∴ multiple solutions exist for the variables Ɵ1, Ɵ2 and Ɵ3 due to the
nature of trigonometric functions
Almaged, M. (2017). Forward and Inverse Kinematic Analysis and
Validation of the ABB IRB 140 Industrial Robot. Journal of Mechanical
Engineering and Technology (JMET), 9(2), 1-20.

43 © Cranfield University 2017


Possible solution sets

Almaged, M. (2017). Forward and Inverse Kinematic Analysis


and Validation of the ABB IRB 140 Industrial Robot. Journal of
Mechanical Engineering and Technology (JMET), 9(2), 1-20.

44 © Cranfield University 2017


Analytical solution for Ɵ 4-6

• Z-Y-X Euler's formula is used for solving the orientation sub-problem to


find the joint angles Ɵ4-6
• The orientation of the tool frame with respect to the robot base frame is
described in term of Z-Y-X Euler's rotation
• Each rotation will take place about an axis whose location depends on
the previous rotation

Almaged, M. (2017). Forward and Inverse Kinematic Analysis


and Validation of the ABB IRB 140 Industrial Robot. Journal of
Mechanical Engineering and Technology (JMET), 9(2), 1-20.

45 © Cranfield University 2017


Analytical solution for Ɵ 4-6

• The final orientation matrix that results from these three consecutive
rotations will be as follow

See appendix A.1-3

46 © Cranfield University 2017


Analytical solution for Ɵ 4-6

• Remember the forward kinematic equation?

47 © Cranfield University 2017


Analytical solution for Ɵ 4-6

• The last three intersected joints form a set of ZYZ Euler angles with
respect to frame {3}

48 © Cranfield University 2017


Analytical solution for Ɵ 4-6

We can use the ZYZ Euler’s angles formula to obtain the solutions for Ɵ4-6
(2.73-2.74, P.45 John Craig’s textbook)

49 © Cranfield University 2017


Analytical solution for Ɵ 4-6
Alternative solutions

Singularity
if β = 0 or 180 will position the robot in a singular configuration where the
joint axes 4 and 6 are parallel

50 © Cranfield University 2017


Summary

• The forward kinematics is the problem of finding an end effector or tool


pose from a set of given joint angles
• The inverse kinematic problem is to determine a set of joint angles
given a known end effector pose
• It is the question: “What joint angles must I command to get the robot
end effector to my desired position and orientation in space”
• The inverse kinematic problem is very important in the practical use of
robotic manipulators, since we work with task objects in operational
space, but me must command the robot in joint space
• Finding inverse kinematic solution not as “straight forward” as finding
forward kinematic solution
• Problems with, no solutions, single solution (easy), multiple solutions

51 © Cranfield University 2017


Summary

• Saw the practical reality of what the maths in each of these cases is
telling us, ie. depends on the relationship between the robot's workspace
and the point we specify.
• Number of possibilities for solving the inverse kinematics: numerical,
closed form (algebraic and geometric).
• These days, with fast, modern computing hardware, numerical approach
most popular
• However, closed form solution methods still useful, since most robots
designed with “simple” form so closed form solution is possible.
• Strategies for finding closed form solution: Reduction to polynomial,
Pieper's method

52 © Cranfield University 2017


Summary

• A manipulator's repeatability a measure of errors in the encoders,


actuators and through joint and link deformation, ie. relevant to taught
points.
• A manipulator's accuracy a measure of errors relevant for repeatability,
but also including errors in Denavit Hartenberg parameters, ie. relevant
to computed points which depend on the inverse kinematics

53 © Cranfield University 2017


Homework – Private Study

Exercise

• Canvas (Robotics Control)


• Exercises

• Almaged, M. (2017). Forward and Inverse Kinematic Analysis and


Validation of the ABB IRB 140 Industrial Robot. Journal of Mechanical
Engineering and Technology (JMET), 9(2), 1-20.

54 © Cranfield University 2017


Reading

• Chapter 3 and 4 from Craig


• Craig, J. J. (2005). Introduction to robotics: mechanics and control (Vol.
3). Upper Saddle River, NJ, USA:: Pearson/Prentice Hall.
• Almaged, M. (2017). Forward and Inverse Kinematic Analysis and
Validation of the ABB IRB 140 Industrial Robot. Journal of Mechanical
Engineering and Technology (JMET), 9(2), 1-20.
• Hawkins, K. P. (2013). Analytic inverse kinematics for the universal
robots UR-5/UR-10 arms. Georgia Institute of Technology.
• Kucuk, S., & Bingul, Z. (2006). Robot kinematics: Forward and inverse
kinematics. In Industrial robotics: theory, modelling and control. InTech.

55 © Cranfield University 2017

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy