Inverse Kinematics Kris Hauser

Slides:



Advertisements
Similar presentations
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.
Advertisements

Configuration Space. Recap Represent environments as graphs –Paths are connected vertices –Make assumption that robot is a point Need to be able to use.
Robot Modeling and the Forward Kinematic Solution
Robot Modeling and the Forward Kinematic Solution
Inverse Kinematics Professor Nicola Ferrier ME 2246,
Links and Joints.
Outline: Introduction Solvability Manipulator subspace when n<6
Manipulator’s Inverse kinematics
Continuing with Jacobian and its uses ME 4135 – Slide Set 7 R. R. Lindeke, Ph. D.
CS B659: Principles of Intelligent Robot Motion Rigid Transformations.
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.
INTRODUCTION TO DYNAMICS ANALYSIS OF ROBOTS (Part 6)
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
1Notes  Handing assignment 0 back (at the front of the room)  Read the newsgroup!  Planning to put 16mm films on the web soon (possibly tomorrow)
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
IK: Choose these angles!
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 20: Inverse Kinematics Ravi Ramamoorthi Most slides courtesy.
Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 25: Inverse Kinematics Many slides courtesy James O’Brien.
Forward Kinematics.
Kinematics. ILE5030 Computer Animation and Special Effects2 Kinematics The branch of mechanics concerned with the motions of objects without regard to.
Inverse Kinematics How do I put my hand here? IK: Choose these angles!
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.
CSCE 689: Forward Kinematics and Inverse Kinematics
Animation CS 551 / 651 Kinematics Lecture 09 Kinematics Sarcos Humanoid.
Inverse Kinematics (part 1) CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
Introduction to ROBOTICS
Inverse Kinematics Jacobian Matrix Trajectory Planning
역운동학의 구현과 응용 Implementation of Inverse Kinematics and Application 서울대학교 전기공학부 휴먼애니메이션연구단 최광진
Forward Kinematics and Jacobians Kris Hauser CS B659: Principles of Intelligent Robot Motion Spring 2013.
ME/ECE Professor N. J. Ferrier Forward Kinematics Professor Nicola Ferrier ME Room 2246,
Advanced Graphics (and Animation) Spring 2002
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Kinematic Linkages.
Chap 5 Kinematic Linkages
Inverse Kinematics.
Lecture 2: Introduction to Concepts in Robotics
Inverse Kinematics.
Simulation and Animation
Manipulator’s Forward kinematics
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Inverting the Jacobian and Manipulability
Review: Differential Kinematics
CS-378: Game Technology Lecture #13: Animation Prof. Okan Arikan University of Texas, Austin Thanks to James O’Brien, Steve Chenney, Zoran Popovic, Jessica.
1cs426-winter-2008 Notes  Will add references to splines on web page.
Inverse Kinematics for Robotics using Neural Networks. Authors: Sreenivas Tejomurtula., Subhash Kak
Outline: Introduction Solvability Manipulator subspace when n<6
Forward Kinematics and Configurations
1cs426-winter-2008 Notes. 2 Kinematics  The study of how things move  Usually boils down to describing the motion of articulated rigid figures Things.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Manipulator Kinematics Treatment of motion without regard to the forces that cause it. Contents of lecture: vResume vDirect kinematics vDenavit-Hartenberg.
Numerical Methods for Inverse Kinematics Kris Hauser ECE 383 / ME 442.
Fundamentals of Computer Animation
Robotics Chapter 3 – Forward Kinematics
CSCE 441: Computer Graphics Forward/Inverse kinematics
IK: Choose these angles!
IK: Choose these angles!
Character Animation Forward and Inverse Kinematics
Mitsubishi robot arm.
Inverse Manipulator Kinematics
INVERSE MANIPULATOR KINEMATICS
Basilio Bona DAUIN – Politecnico di Torino
Zaid H. Rashid Supervisor Dr. Hassan M. Alwan
Mobile Robot Kinematics
ECE 383/ME 442: Intro to Robotics and Automation
Inverse Kinematics, Jacobians
CSCE 441: Computer Graphics Forward/Inverse kinematics
Inverse Kinematics 12/30/2018.
Outline: Introduction Solvability Manipulator subspace when n<6
Chapter 4 . Trajectory planning and Inverse kinematics
Presentation transcript:

Inverse Kinematics Kris Hauser CS B659: Principles of Intelligent Robot Motion Spring 2013 1

Articulated Robot Robot: usually a rigid articulated structure Geometric CAD models, relative to reference frames A configuration specifies the placement of those frames (forward kinematics) q1 q2

Inverse Kinematics Problem: given desired position of point on robot (end effector), what joint angles reach it?

Inverse Kinematics Problem: given desired position of point on robot (end effector), what joint angles reach it? q4 q2 q3 q1

Inverse Kinematics Bring point xn on link n to target xT Find q s.t. xT = Tn(q)xn q4 q2 q3 q1

Solving a general equation Solve f(q) = 0 (vector valued nonlinear function) Can include rotation constraints, multiple IK targets q4 q2 q3 q1

Two Approaches for IK Analytical. Write out the equation in terms of q and “invert” it Sometimes there are simple solutions for certain kinematic structures (e.g., industrial robots). If so, computation is fast. Numerical. Iteratively move q to a solution point f(q)=0 General purpose Can incorporate joint limits easily May fall into local minima

Analytical endpoint positioning for a 2R robot arm Without loss of generality, let joint 2 and E.E. position lie on x axis at the reference frame, joint 1 at origin x(q)-xD = 0 L2 L1 xD q2 q1

Analytical endpoint positioning for a 2R robot arm Without loss of generality (why?), let joint 2 and E.E. position lie on x axis at the reference frame, joint 1 at origin x(q)-xD = 0 L2 ||x(q)||2 = ||xD||2 (lhs depends only on q2) ||x(q)||2 = (L1 + c2L2)2 + (s2L2)2 = L12 + 2c2L2L1 + c22L22 + s22L22 = L12 + L22 + 2c2L2L1 L1 xD q2 q1

Analytical endpoint positioning for a 2R robot arm Without loss of generality, let joint 2 and E.E. position lie on x axis at the reference frame, joint 1 at origin x(q)-xD = 0 L2 ||x(q)||2 = ||xD||2 (lhs depends only on q2) ||x(q)||2 = (L1 + c2L2)2 + (s2L2)2 = L12 + 2c2L2L1 + c22L22 + s22L22 = L12 + L22 + 2c2L2L1 c2 = (||xD||2 - L12 - L22)/(2L2L1) If rhs > 1, xD is out of reach If rhs < -1, xD is inside “inner circle” L1 xD q2 q1 c2(q2) Elbow up Elbow down

Analytical endpoint positioning for a 2R robot arm Without loss of generality, let joint 2 and E.E. position lie on x axis at the reference frame, joint 1 at origin x(q)-xD = 0 q2up ||x(q)||2 = ||xD||2 (lhs depends only on q2) ||x(q)||2 = (L1 + c2L2)2 + (s2L2)2 = L12 + 2c2L2L1 + c22L22 + s22L22 = L12 + L22 + 2c2L2L1 c2 = (||xD||2 - L12 - L22)/(2L2L1) If rhs > 1, xD is out of reach If rhs < -1, xD is inside “inner circle” L1 xD q2down q1 c2(q2) Elbow up Elbow down

Analytical endpoint positioning for a 2R robot arm Without loss of generality, let joint 2 and E.E. position lie on x axis at the reference frame, joint 1 at origin x(q)-xD = 0 q2 Once q2 is found, consider angle θD of xD w.r.t origin L1 xD q1

Analytical endpoint positioning for a 2R robot arm Without loss of generality, let joint 2 and E.E. position lie on x axis at the reference frame, joint 1 at origin x(q)-xD = 0 q2 Once q2 is found, consider angle θD of xD w.r.t origin Compute angle θ of E.E. at q=(0,q2) L1 xD q1

Analytical endpoint positioning for a 2R robot arm Without loss of generality, let joint 2 and E.E. position lie on x axis at the reference frame, joint 1 at origin x(q)-xD = 0 Once q2 is found, consider angle θD of xD w.r.t origin Compute angle θ of E.E. at q=(0,q2) Let q1 = θD-θ Done! L1 xD q1 q2

Analytical positioning and orienting for a 3R robot arm Left as an exercise Hint: consider solution in prior slides for choosing the first two joint angles so that the third joint is located at the correct location. Then pick the third.

Drawbacks to Analytical IK Most 6DOF robots encountered in practice are designed to have convenient analytical IK solutions (e.g., 3 intersecting orthogonal axes) General methods for 6DOF robots require solving a high-degree (16) polynomial, which is computationally expensive and suffers from numerical difficulties What about a redundant manipulator (> 6 DOF)?

Papers

Multiplicity issue Let n = # of DOFs, m = # of constraints Roughly, in common cases If n < m, there will be 0 IK solutions If n = m, there may be 1 or more solution If n > m, there will either be 0 or infinite number of solutions Singularities: the uncommon case

Null Space A motion from q->q’ that maintains f(q)=0 is known as a motion in the null space.

Null Space Null space velocity dq must satisfy J(q)dq = 0 => dq lies in the null space of J(q) For any vector y, (I-J+J)y lies in the null space Recall J+ is the pseudoinverse of J A basis of the null space can be found by SVD J = UWVT Let the last k diagonal entries of W be 0, first n-k nonzero WVTdq = 0 First n-k entries of VTdq must be zero Last k entries of VTdq may be non zero => Last k columns of V are a basis for null space

Reminder: Project Proposals 2-3 paragraphs, due 2/1 Include: Title, group members Motivation, significance, and expected demonstration. List of 3-4 milestones Milestone 1 must be completed, or else you will feel like a total failure. Usually complete this before spring break. Milestone 2 should be completed, or else you will feel bad and will deserve a less than stellar grade. Completing milestone 3 will make you (and me) feel pleased with your project. Milestone 4 will make you (and me) very excited, yet is still possible. (Don‘t promise to cure cancer.) Any other details, e.g., implementation, that may be relevant

Recap Two general ways of solving inverse kinematics: analytical and numerical With nonredundant manipulators, there are a finite number of solutions (usually > 1, without joint limits) With redundant manipulators, there are an infinite number of solutions Null space motions