Inverse Kinematics How do I put my hand here? IK: Choose these angles!

Slides:



Advertisements
Similar presentations
Configuration Space. Recap Represent environments as graphs –Paths are connected vertices –Make assumption that robot is a point Need to be able to use.
Advertisements

ROBOT VISION Lesson 9: Robot Kinematics Matthias Rüther
Inverse Kinematics Professor Nicola Ferrier ME 2246,
Outline: Introduction Link Description Link-Connection Description
Links and Joints.
Inverse Kinematics Course site:
Outline: Introduction Solvability Manipulator subspace when n<6
Manipulator’s Inverse kinematics
Review: Homogeneous Transformations
Denavit-Hartenberg Convention
Kinematics & Grasping Need to know: Representing mechanism geometry Standard configurations Degrees of freedom Grippers and graspability conditions Goal.
Forward and Inverse Kinematics CSE 3541 Matt Boggus.
Intuitive Kinematics – Converting Between Forward and Reverse Definitions of Space Lecture Series 2 ME 4135 R. R. Lindeke.
Trajectory Generation
Inverse Kinematics Set goal configuration of end effector
Forward Kinematics. Focus on links chains May be combined in a tree structure Degrees of Freedom Number of independent position variables (i.e. joints.
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
Introduction to Robotics
Inverse Kinematics Problem:
Time to Derive Kinematics Model of the Robotic Arm
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
Ch. 3: Forward and Inverse Kinematics
CPSC 452 Inverse Kinematics Prof. Oussama Khatib, Stanford University Prof. Dezhen Song, Texas A&M University.
IK: Choose these angles!
Kinematics. ILE5030 Computer Animation and Special Effects2 Kinematics The branch of mechanics concerned with the motions of objects without regard to.
Introduction to Robotics Tutorial III Alfred Bruckstein Yaniv Altshuler.
Inverse Kinematics Problem: Input: the desired position and orientation of the tool Output: the set of joints parameters.
Introduction to ROBOTICS
CSCE 689: Forward Kinematics and Inverse Kinematics
Serial and Parallel Manipulators
Introduction to ROBOTICS
Inverse Kinematics Jacobian Matrix Trajectory Planning
An Introduction to Robot Kinematics
Advanced Graphics (and Animation) Spring 2002
Definition of an Industrial Robot
KINEMATICS ANALYSIS OF ROBOTS (Part 3). This lecture continues the discussion on the analysis of the forward and inverse kinematics of robots. After this.
Inverse Kinematics Kris Hauser
Lecture 2: Introduction to Concepts in Robotics
CSCE 452 Intro to Robotics Inverse Kinematics 1. CSCE 452 Intro to Robotics.
Manipulator’s Forward kinematics
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
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.
ROBOT VISION LABORATORY 김 형 석 Robot Applications-B
Outline: Introduction Solvability Manipulator subspace when n<6
The Forward Kinematics of Manipulators Sebastian van Delden USC Upstate
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Kinematics Given: The values of the joint variables.
Manipulator Kinematics Treatment of motion without regard to the forces that cause it. Contents of lecture: vResume vDirect kinematics vDenavit-Hartenberg.
Robotics Chapter 3 – Forward Kinematics
Denavit-Hartenberg Convention
CSCE 441: Computer Graphics Forward/Inverse kinematics
IK: Choose these angles!
IK: Choose these angles!
Character Animation Forward and Inverse Kinematics
Inverse Manipulator Kinematics
INVERSE MANIPULATOR KINEMATICS
Denavit-Hartenberg Convention
F o r w a r d K i n e m a t i c s.
Introduction to manipulator kinematics
Direct Kinematic Model
Inverse Kinematics (Reza N. Jazar, Ch. 6)
From Position to Angles
Inverse Kinematics, Jacobians
CSCE 441: Computer Graphics Forward/Inverse kinematics
2-DOF Manipulator Now, given the joint angles Ө1, Ө2 we can determine the end effecter coordinates x and y.
Chap 11 – Case Studies.
Inverse Kinematics Problem:
Outline: Introduction Solvability Manipulator subspace when n<6
Special English for Industrial Robot
Chapter 4 . Trajectory planning and Inverse kinematics
Presentation transcript:

Inverse Kinematics How do I put my hand here? IK: Choose these angles!

What is the reachable space? Take l 1, l 2 fixed and vary  3 Example: Planar 3-link robot l2l2 l3l3 l1l1 Now vary  1 Finally, vary  2

The Workspace Workspace Workspace: volume of space which can be reached by the end effector Dextrous workspace: volume of space where the end effector can be arbitrarily oriented Reachable workspace: volume of space which the robot can reach in at least one orientation

Example (continued) What is the dextrous workspace in the example?

The IK Problem Kinematic ProblemKinematic Problem: given joint angles and/or displacement, compute location and orientation of End Effector. Inverse Kinematic ProblemInverse Kinematic Problem: given location and orientation of EE, find joint variables. Why is IK hard?Why is IK hard? –May have more than one solution or none at all –Amounts to solving nonlinear trascendental equations (can be hard)

Existence of Solutions A solution to the IKP exists if the target belongs to the workspace Workspace computation may be hard. In practice is made easy by special design of the robot The IKP may have more than one solution. How to choose the appropriate one? 2 solutions!

Methods of Solutions A manipulator is solvable if the joint variables can be determined by an algorithm. The algorithm should find all possible solutions. closed form solutions numerical solutions Solutions We are interested in closed-form solutions 1. Algebraic Methods 2. Geometric Methods

Method of Solution (cont.) Major result: all systems with revolute and prismatic joints having a total of six degrees of freedom in a single series chain are solvable In general, solution is numerical Robots with analytic solution: several intersecting joint axes and/or many  i = 0, 90 o. One major application (and driving force) of IK: animation.

Manipulator Subspace when n<6 If n<6, then the workspace will be a portion of an n dimensional subspace To describe the WS: compute direct kinematics, and then vary joint variables On the previous example, the WS has the form:

Manipulator SS when n<6 (cont) Usual goal for manipulator with n DoF: use n parameters to specify the goal If 6 DoF are used, n<6 will in general not suffice Possible compromise: reach the goal as “near” as possible to original goal: –1) Given the goal frame compute modified goal in manipulator SS as near as possible to –2) Compute IK. A solution may still not be possible if goal is not in the manipulator workspace For example, place tool frame origin at desired location, then select a feasible orientation

Algebraic Solution The kinematics of the example seen before are: Assume goal point is specified by 3 numbers:

Algebraic Solution (cont.) By comparison, we get the four equations: Summing the square of the last 2 equations: From here we get an expression for c 2

Algebraic Solution (III) When does a solution exist? What is the physical meaning if no solution exists? Two solutions for  2 are possible. Why? Using c 12 =c 1 c 2 -s 1 s 2 and s 12 = c 1 s 2 -c 2 s 1 : where k 1 =l 1 +l 2 c 2 and k 2 =l 2 s 2. To solve these eq s, set r=+  k 1 2 +k 2 2 and  =Atan2(k 2,k 1 ).

Algebraic Solution (IV) k1k1 k2k2 22 l1l1 l2l2  Then: k 1 =r cos , k 1 =r sin , and we can write: x/r= cos  cos  1 - sin  sin  1 y/r= cos  cos  1 - sin  sin  1 or: cos(  +  1 ) = x/r, sin(  +  1 ) =y/r

Algebraic Solution (IV) Therefore:  +  1 = Atan2(y/r,x/r) = Atan2(y,x) and so:  1 = Atan2(y,x) - Atan2(k 2,k 1 ) Finally,  3 can be solved from:  1 +  2 +  3 = 

Geometric Solution IDEA: Decompose spatial geometry into several plane geometry problems x y L1L1 L2L2 Applying the “ law of cosines ” : x 2 +y 2 =l 1 2 +l 2 2  2l 1 l 2 cos(180  2 ) 22

Geometric Solution (II) Then: x y   The LoC gives: l 2 2 = x 2 +y 2 +l l 1  (x 2 +y 2 ) cos  So that cos  = (x 2 +y 2 +l l 2 2 )/2l 1  (x 2 +y 2 ) We can solve for 0    180, and then  1 = 

Reduction to Polynomial Trascendental equations are difficult to solve since one variable  usually appears as cos  and sin . Can reduce to polynomial in variable u = tan  /2 by using: cos  = (1-u 2 )/(1+u 2 ) sin  =2u /(1+u 2 )