ME 4135 Robotics & Control R. Lindeke, Ph. D.. FKS vs. IKS  In FKS we built a tool for finding end frame geometry from Given Joint data:  In IKS we.

Slides:



Advertisements
Similar presentations
Robot Modeling and the Forward Kinematic Solution
Advertisements

Robot Modeling and the Forward Kinematic Solution
Robot Modeling and the Forward Kinematic Solution
Inverse Kinematics Professor Nicola Ferrier ME 2246,
Outline: Introduction Link Description Link-Connection Description
ME 4135 Differential Motion and the Robot Jacobian Slide Series 6 Fall 2011 R. R. Lindeke, Ph.D.
3-D Homogeneous Transformations.  Coordinate transformation (translation+rotation) 3-D Homogeneous Transformations.
Links and Joints.
Inverse Kinematics Course site:
Manipulator’s Inverse kinematics
University of Bridgeport
Continuing with Jacobian and its uses ME 4135 – Slide Set 7 R. R. Lindeke, Ph. D.
Review: Homogeneous Transformations
Intuitive Kinematics – Converting Between Forward and Reverse Definitions of Space Lecture Series 2 ME 4135 R. R. Lindeke.
Robot Modeling and the Forward Kinematic Solution ME 4135 Lecture Series 4 Dr. R. Lindeke – Fall 2011.
ME 4135 Fall 2011 R. R. Lindeke, Ph. D. Robot Dynamics – The Action of a Manipulator When Forced.
Robot Dynamics – Newton- Euler Recursive Approach ME 4135 Robotics & Controls R. Lindeke, Ph. D.
Inverse Kinematics –IKS Solutions ME 4135 – Robotics and Controls R.R. Lindeke, Ph.D., Fall 2011.
The Concepts of Orientation/Rotation ‘Transformations’ ME Lecture Series 2 Fall 2011, Dr. R. Lindeke 1.
The L-E (Torque) Dynamical Model: Inertial Forces Coriolis & Centrifugal Forces Gravitational Forces Frictional Forces.
Ch. 3: Forward and Inverse Kinematics
IK: Choose these angles!
Ch. 3: Forward and Inverse Kinematics
Inverse Kinematics How do I put my hand here? IK: Choose these angles!
Introduction to Robotics Tutorial III Alfred Bruckstein Yaniv Altshuler.
Introduction to ROBOTICS
ME Robotics DIFFERENTIAL KINEMATICS Purpose: The purpose of this chapter is to introduce you to robot motion. Differential forms of the homogeneous.
Slide Set 3 – Review of Matrix Methods Applicable to Robot Control
Animation CS 551 / 651 Kinematics Lecture 09 Kinematics Sarcos Humanoid.
Serial and Parallel Manipulators
Matrix Revolutions: Solving Matrix Equations Matrix 3 MathScience Innovation Center Betsey Davis
Introduction to ROBOTICS
Inverse Kinematics Jacobian Matrix Trajectory Planning
Screw Rotation and Other Rotational Forms
ME 4135 Robotics & Control Slide Set 3 – Review of Matrix Methods Applicable to Robot Control.
An Introduction to Robot Kinematics
KINEMATICS ANALYSIS OF ROBOTS (Part 1) ENG4406 ROBOTICS AND MACHINE VISION PART 2 LECTURE 8.
More details and examples on robot arms and kinematics
ME 4135 Differential Motion and the Robot Jacobian
ME 4135 Differential Motion and the Robot Jacobian Fall 2012 R. R. Lindeke, Ph.D.
Advanced Graphics (and Animation) Spring 2002
KINEMATICS ANALYSIS OF ROBOTS (Part 3). This lecture continues the discussion on the analysis of the forward and inverse kinematics of robots. After this.
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Kinematic Linkages.
Inverse Kinematics Kris Hauser
Lecture 2: Introduction to Concepts in Robotics
Chapter 2 Robot Kinematics: Position Analysis
INVERSE KINEMATICS IN A ROBOTIC ARM AND METHODS TO AVOID SINGULARITIES Submitted By :-Course Instructor :- Avinash Kumar Prof. Bhaskar Dasgupta Roll No.-
Robot Dynamics – Slide Set 10 ME 4135 R. R. Lindeke, Ph. D.
KINEMATICS ANALYSIS OF ROBOTS (Part 4). This lecture continues the discussion on the analysis of the forward and inverse kinematics of robots. After this.
The L-E (Torque) Dynamical Model: Inertial Forces Coriolis & Centrifugal Forces Gravitational Forces Frictional Forces.
Manipulator’s Forward kinematics
Spatial Modeling – some fundamentals for Robot Kinematics ME 3230.
Review: Differential Kinematics
Kinematics. The function of a robot is to manipulate objects in its workspace. To manipulate objects means to cause them to move in a desired way (as.
ECE 450 Introduction to Robotics Section: Instructor: Linda A. Gee 10/07/99 Lecture 11.
Outline: Introduction Solvability Manipulator subspace when n<6
ME 4135 Robotics & Control R. Lindeke, Ph. D.. FKS vs. IKS  In FKS we built a tool for finding end frame geometry from Given Joint data:  In IKS we.
Inverse Manipulator Kinematics
INVERSE MANIPULATOR KINEMATICS
Ch. 3: Forward and Inverse Kinematics
Direct Manipulator Kinematics
Analytical Modeling of Kinematic Linkages
Direct Kinematic Model
Robotic Kinematics – the Inverse Kinematic Solution
CSE4421/5324: Introduction to Robotics
Matrix Methods in Kinematics
Homogeneous Transformation Matrices
Robot Kinematics We know that a set of “joint angles” can be used to locate and orientate the hand in 3-D space We know that the joint angles can be combined.
Chapter 4 . Trajectory planning and Inverse kinematics
Screw Rotation and Other Rotational Forms
Presentation transcript:

ME 4135 Robotics & Control R. Lindeke, Ph. D.

FKS vs. IKS  In FKS we built a tool for finding end frame geometry from Given Joint data:  In IKS we need Joint models from given End Point Geometry: Joint Space Cartesian Space Joint Space Cartesian Space

So this IKS is Nasty (as we know!)  It a more difficult problem because:  The Equation set is “Over-Specified”  12 equations in 6 unknowns  Space is “Under-Specified”  Planer devices with more joints than 2  The Solution set can contain Redundancies  Multiple solutions  The Solution Sets may be un-defined  Unreachable in 1 or many joints

Uses of IKS  Builds Workspace  Allows “Off-Line Programming” solutions  Thus, compares Workspace capabilities with Programming realities to assure that execution is feasible  Aids in Workplace design and operation simulations

Performing IKS For (mostly) Industrial Robots:  First lets consider the previously defined Spherical Wrist simplification  All Wrist joint Z’s intersect at a point  The nth Frame is offset from this intersection by a distance d n along the a vector of the desired solution (3 rd column of desired orientation sub- matrix)  This result is as expected by following the DH Algorithm!

Performing IKS  We can now separate the effects of the ARM joints  Joints 1 to 3 in a full function manipulator (without redundant joints)  They function to position the spherical wrist at a target POSITION related to the desired target POSE  … From the WRIST Joints  Joints 4 to 6 in a full functioning spherical wrist  Wrist Joints function as the primary tool to ORIENT the end frame as required by the desired target POSE

Performing IKS: Focus on Positioning  We will define a point (the WRIST CENTER) as:  P c = [P x, P y, P z ]  Here we define P c = d target - d n *a  P x = d target,x - d n *a x  P y = d target,y - d n *a y  P z = d target,z - d n *a z

 R Manipulator – a simple and special case which can be found by doing a ‘Pure IKS’ solution  R Frame Skeleton

LP Table and A i ’sFramesLinkVarda SSSS CCCC S  C  0 → 1 1R  C1-S1 1 → 2 2P0 d2 + cl

FKS is A1*A2:

Forming The IKS:

 Examining these two equation (n, o, a and d are ‘givens’ in an inverse sense!!!):  Term (1, 4) & (2,4) both side allow us to find an equation for  as a positioning joint in the arm:  (1,4): C1*(d 2 +cl 2 ) = d x  (2,4): S1*(d 2 +cl 2 ) = d y  Form a ratio to build Tan(  ):  S1/C1 = d y / d x  Tan  = d y /d x   = Atan2(d x, d y )

Forming The IKS:  After  is found, back substitute and solve for d 2 :  (1,4): C1*(d 2 +cl 2 ) = d x  Isolating d 2 : d 2 = [d x /C1] - cl 2

Alternative Method – doing a pure inverse approach  Form A 1 -1 then pre-multiply both side by this ‘inverse’  Leads to: A 2 = A 1 -1 *T 0 n given

Simplify RHS means:

Solving:  Selecting and Equating (1,4)  0 = -S1*d x + C1*d y  Solving: S1*d x = C1*d y  Tan(  ) = (S1/C1) = (d y /d x )   = Atan2(d x, d y )  Selecting and Equating (3,4) -- after back substituting  solution  d 2 + cl 2 = C1*d x + S1*d y  d 2 = C1*d x + S1*d y - cl 2

Performing IKS For Industrial Robots:  What we saw with the  -R IKS solutions will always work for a robot – with or without a spherical wrist  These methods are often tedious – and require some form of “intelligent application” to find a good IKS solution  Hence that is why we like the spherical wrist simplification (for industrial robots) introduced earlier – separating ARM and Wrist Effects and joints

Focusing on the ARM Manipulators in terms of P c :  Prismatic:  q 1 = P z (its along Z 0 !) – cl1  q 2 = P x or P y - cl2  q 3 = P y or P x - cl3  Cylindrical:   1 = Atan2(P x, P y )  d 2 = P z – cl2  d 3 = P x *C1 – cl3 or +(P x 2 + P y 2 ).5 – cl3

Focusing on the ARM Manipulators in terms of P c :  Spherical:   1 = Atan2(Px, Py)   2 = Atan2( (P x 2 + P y 2 ).5, P z )  D3 = (P x 2 + P y 2 + P z 2 ).5 – cl3

Focusing on the ARM Manipulators in terms of P c :  Articulating:   1 = Atan2(Px, Py)   3 = Atan2(D,  (1 – D 2 ).5 )  Where D =   2 =  -    is: Atan2((Px 2 + Py 2 ).5, P z )   is:

One Further Complication:  This can be considered the d 2 offset problem  A d 2 offset is a design issue that states that the nth frame has a non-zero offset along the Y 0 axis as observed in the solution of the T 0 n with all joints at home  This leads to two solutions for  1  the So-Called Shoulder Left and Shoulder Right solutions

Defining the d 2 Offset issue Here: ‘The ARM’ might be a revolute/prismatic device as in the Stanford Arm or it might be a 2 & a 3 links in an Articulating Arm and rotates out of plane A d2 offset means that there are two places where  1 can be placed to touch a given point (and note, when  1 is at Home, the wrist center is not on the X0 axis!)

Lets look at this Device “From the Top” a Q 11 F1F1

Solving For  1  We will have a Choice (of two) poses for  :

In this so-called “Hard Arm”  We have two  1 ’s  These lead to two  2 ’s (Spherical)  Or to four  2 ’s and  3 ’s in the Articulating Arm  Shoulder Right Elbow Up & Down  Shoulder Left Elbow Up & Down

The Orientation Model  Evolves from:  Separates Arm Joint and Wrist Joint Contribution to the desiredTarget (given) orientation

Focusing on Orientation Issues  Lets begin by considering Euler Angles (they are a model that is almost identical to a full functioning Spherical Wrist):  Form Product:  R z1 *R y2 *R z3  This becomes R 3 6

Euler Wrist Simplified: And this matrix is equal to a U matrix prepared by multiplying the inverse of the ARM joint orientation matrices inverse and the Desired (given) target orientation NOTE: R 0 3 is Manipulator Arm dependent!

Simplifying the RHS: (our so- called U Matrix)

Continuing:

Finally:

Solving for Individual Orientation Angles (1 st ):  Selecting (3,3) → C  = U 33  With C  we “know” S  =  (1-C 2  ).5  Hence:  = Atan2(U 33,  (1-U 33 2 ).5  NOTE: 2 solutions for  !

Re-examining the Matrices:  To solve for  : Select terms: (1,3) & (2,3)  C  S  = U 13  S  S  = U 23  Dividing the 2 nd by the 1 st : S  /C  = U 23 /U 13  Tan(  ) = U 23 /U 13   = Atan2(U 13, U 23 )

Continuing our Solution:  To solve for  : Select terms: (3,1) & (3,2)  -S  C  = U 31  S  S  = U 32  Tan(  ) = U 32 /-U 31   = Atan2(-U 31, U 32 )

Summarizing:   = Atan2(U 33,  (1-U 33 2 ).5   = Atan2(U 13, U 23 )   = Atan2(-U 31, U 32 )

Let do a (true) Spherical Wrist:

IKSing the Spherical Wrist FramesLinkVarda 3 → 4 4R 444 → 5 5R 555 → 6 6R 6666 d6d6d6d600

Writing The Solution:

Lets See By Pure Inverse Technique:

Simplifying

Solving:  Examination here lets select (3,3) both sides:  0 = C4U 23 – S4U 13  S4U 13 = C4U 23  Tan(  4 ) = S4/C4 = U 23 /U 13   4 = Atan2(U 13, U 23 )  With the given desired orientation and values (from the arm joints) we have a value for  4 the RHS is completely known

Solving for  5 &  6  For  5 : Select (1,3) & (2,3) terms  S5 = C4U 13 + S4U 23  C5 = U 33  Tan(  5 ) = S5/C5 = (C4U 13 + S4U 23 )/U 33   5 = Atan2(U 33, C4U 13 + S4U 23 )  For  6 : Select (3,1) & (3, 2)  S6 = C4U 21 – S4U 11  C6 = C4U 22 – S4U 12  Tan(  6 ) = S6/C6 = ([C4U 21 – S4U 11 ],[C4U 22 – S4U 12 ])   6 = Atan2 ([C4U 21 – S4U 11 ], [C4U 22 – S4U 12 ])

Summarizing:   4 = Atan2(U 13, U 23 )   5 = Atan2(U 33, C4U 13 + S4U 23 )   6 = Atan2 ([C4U 21 – S4U 11 ], [C4U 22 – S4U 12 ])

Lets Try One:  Cylindrical Robot w/ Spherical Wrist  Given a Target matrix (it’s an IKS after all!)  The d 3 “constant” is 400mm; the d 6 offset (call it the ‘Hand Span’) is 150 mm.   1 = Atan2((d x – a x *150),(d y -a y *150))  d2 = (dz – a z *150)  d3 = [(d x – a x *150) 2,(d y -a y *150) 2 ]

The Frame Skeleton: Note “Dummy” Frame to account for Orientation problem with Spherical Wrist modeled earlier

Solving for U: NOTE: We needed a “Dummy Frame” to account for the Orientation issue at the end of the Arm

Simplifying:

Subbing U ij ’s Into Spherical Wrist Joint Models:   4 = Atan2(U 13, U 23 ) = Atan2((C1a x + S1a z ), (S1a x -C1a z ))   5 = Atan2(U 33, C4U 13 + S4U 23 ) = Atan2{a y, [C4(C1a x +S1a z ) + S4 (S1a x -C1a z )]}   6 = Atan2 ([C4U 21 - S4U 11 ], [C4U 22 - S4U 12 ]) = Atan2{[C4(S1n x -C1n z ) - S4(C1n x +S1n z )], [C4(S1o x -C1o z ) - S4(C1o x +S1o z )]}