DOC PREVIEW
OSU CS 419 - Inverse Kinematics

This preview shows page 1-2 out of 5 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 5 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 5 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 5 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

1Inverse KinematicsMike [email protected] State Universitymjb – October 16, 2014Oregon State UniversityComputer Graphicsinversekinematics.pptxInverse KinematicsForward Kinematics solves the problem “if I know the link transformation parameters, where are the links?”.Inverse Kinematics (IK) solves the problem “If I know where I want the links to be (X*,Y*), what link transformation parameters will put them there?” (X*,Y*)mjb – October 16, 2014Oregon State UniversityComputer Graphics123Ground112233Inverse Kinematics (IK):Things Need to Move – What Parameters Will Make Them Do That?mjb – October 16, 2014Oregon State UniversityComputer GraphicsRemember the Idea Behind Newton’s Method?“Pick an initial guess of the input parameter and keep refining it until the answer it produces is close enough”dyyxdx haveyxd1.2.mjb – October 16, 2014Oregon State UniversityComputer GraphicsNow we just need to do it with more than one input parameterdydxxxx3.Jacobian MethodOur input parameters (in this case) are the three rotation angles. If (X*, Y*) are where we want the end of the third link to end up, then:If you have a good guess for , which currently produce an (X*, Y*) that is not quite what you want, then you can refine your values for and try again. The fundamental equations for this are:*123(, , )Xf*123(, , )Ygand123(, , )123(, , )mjb – October 16, 2014Oregon State UniversityComputer Graphics33*22*11***XXXXXXapprox33*22*11***YYYYYYapproxOr, in matrix form:YXYYYXXX3213*2*1*3*2*1*The matrix:2 x 33 x 12 x 1The Jacobian Matrixmjb – October 16, 2014Oregon State UniversityComputer Graphics3*2*1*3*2*1*YYYXXXis called the Jacobian, and is abbreviated as [ J ]:The matrix:YXJ3212Note that [J] is not a square matrix, so this system of equations cannot be solved for directly. But, if we pre-multiply by the transpose of [ J ], we get:YXJJJTT][][321Solving the Equationsmjb – October 16, 2014Oregon State UniversityComputer Graphicswhich is solvable because it is 3-equations-3-unknowns.3 x 1 2 x 1 )2 x 3 )( 3 x 2 ( 3 x 23 x 13 x 3 3 x 1It is not obvious, but this is the Least Squaresformulation. It will give an optimum (ΔΘ1, ΔΘ2,ΔΘ3) to make (X*,Y*) move closer to the desired values.Differentiate the equations andPick a starting Θ1, Θ2, and Θ31. Compute X*approxand Y*approxfrom2. Compute ∆X=X*-X*approxand ∆Y=Y*-Y*approx3. If |∆X| and |∆Y| are “small enough”, we’re done 4C t******YYYXXXIterating to get a Solution (note similarity to Newton’s Method)123(, , )*123(, ,)Xf*123(, , )Ygmjb – October 16, 2014Oregon State UniversityComputer Graphics4. Compute: 5. Form the Jacobian [ J ]6. Solve the system of equations:7. Refine:321321,,,,,YXJJJTT][][32111 12 2 233 3;;    The Calculus Product Rule Tells us How toDifferentiate Scalar Variables that have been Multiplied()cabdc d ab da dbbaddd d mjb – October 16, 2014Oregon State UniversityComputer Graphics[][][]([ ][ ]) [ ][] [][][]MTRdTR dRdM dTRTddd d 0The Calculus Product Rule Tells us How toDifferentiate Matrices that have been Multipliedmjb – October 16, 2014Oregon State UniversityComputer Graphicscos sin 0 0 sin cos 0 0sin cos 00 cos sin 00[]0010 0 0000001 0 000dRddd         Numerical Differentiation()()XX XRather then explicitly differentiating an equation, it is often easier to calculate the derivative numerically. This is known as the Central Difference method, where you look both forward and backwards to see how the dependent variable is changing with respect to the independent variable:mjb – October 16, 2014Oregon State UniversityComputer Graphics2Pick a delta that is small, but not so small that floating point accuracy becomes an issueNumerical Differentiation1 123 1 12311(,,)(,,)2XXX  If there are other independent variables, hold them constant:mjb – October 16, 2014Oregon State UniversityComputer Graphics113Numerical Differentiation222()2()()XX X XIn case you ever need it, here is how to compute the second derivativemjb – October 16, 2014Oregon State UniversityComputer GraphicsAs before, if there are other independent variables, hold them constant:Another IK Approach:Cyclic Coordinate Descent (CCD) Method3The idea is to change Θ1 so that (X,Y) are as close to (X*,Y*) as possible.Then change Θ2.Then change Θ3.Then change Θ1.Then change Θ2.Then change Θ3.Then change Θ1.. . .mjb – October 16, 2014Oregon State UniversityComputer Graphics12Ground(X*,Y*)(X,Y)Changing Θ13Holding Θ2 and Θ3 constant, rotate Θ1 so that the blue lines line up.mjb – October 16, 2014Oregon State UniversityComputer Graphics12Ground(X*,Y*)(X,Y)Changing Θ1mjb – October 16, 2014Oregon State UniversityComputer GraphicsGround(X,Y)(X*,Y*)Changing Θ2Holding Θ1 and Θ3 constant, rotate Θ2 so that the blue lines line up.mjb – October 16, 2014Oregon State UniversityComputer GraphicsGround(X,Y)(X*,Y*)Changing Θ2mjb – October 16, 2014Oregon State UniversityComputer GraphicsGround(X,Y)(X*,Y*)4Changing Θ3Holding Θ1 and Θ2 constant, rotate Θ3 so that the blue lines line up.mjb – October 16, 2014Oregon State UniversityComputer GraphicsGround(X,Y)(X*,Y*)Changing Θ3mjb – October 16, 2014Oregon State UniversityComputer


View Full Document

OSU CS 419 - Inverse Kinematics

Download Inverse Kinematics
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Inverse Kinematics and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Inverse Kinematics 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?