Download - UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics
![Page 1: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/1.jpg)
UNC Chapel Hill M. C. Lin
COMP790-072Robotics: An Introduction
Kinematics & Inverse Kinematics
![Page 2: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/2.jpg)
UNC Chapel Hill M. C. Lin
Forward Kinematics
![Page 3: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/3.jpg)
UNC Chapel Hill M. C. Lin
What is f ?
![Page 4: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/4.jpg)
UNC Chapel Hill M. C. Lin
What is f ?
![Page 5: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/5.jpg)
UNC Chapel Hill M. C. Lin
Other Representations
Separate Rotation + Translation:
T(x) = R(x) + d– Rotation as a 3x3 matrix– Rotation as quaternion– Rotation as Euler Angles
Homogeneous TXF: T=H(R,d)
![Page 6: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/6.jpg)
UNC Chapel Hill M. C. Lin
Forward Kinematics
As DoF increases, there are more transformation to control and thus become more complicated to control the motion.
Motion capture can simplify the process for well-defined motions and pre-determined tasks.
![Page 7: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/7.jpg)
UNC Chapel Hill M. C. Lin
Forward vs. Inverse Kinematics
![Page 8: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/8.jpg)
UNC Chapel Hill M. C. Lin
Inverse Kinematics (IK)
As DoF increases, the solution to the problem may become undefined and the system is said to be redundant. By adding more constraints reduces the dimensions of the solution.
It’s simple to use, when it works. But, it gives less control.
Some common problems:– Existence of solutions– Multiple solutions– Methods used
![Page 9: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/9.jpg)
UNC Chapel Hill M. C. Lin
Numerical Methods for IK
Analytical solutions not usually possible– Large solution space (redundancy)– Empty solution space (unreachable goal)
f is nonlinear due to sin’s and cos’s in the rotations.– Find linear approximation to f -1
Numerical solutions necessary– Fast– Reasonably accurate– Yet Robust
![Page 10: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/10.jpg)
UNC Chapel Hill M. C. Lin
The Jacobian
![Page 11: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/11.jpg)
UNC Chapel Hill M. C. Lin
The Jacobian
![Page 12: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/12.jpg)
UNC Chapel Hill M. C. Lin
The Jacobian
![Page 13: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/13.jpg)
UNC Chapel Hill M. C. Lin
Computing the Jacobian
To compute the Jacobian, we must compute the derivatives of the forward kinematics equation
The forward kinematics is composed of some matrices or quaternions
![Page 14: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/14.jpg)
UNC Chapel Hill M. C. Lin
Matrix Derivatives
![Page 15: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/15.jpg)
UNC Chapel Hill M. C. Lin
Rotation Matrix Derivatives
![Page 16: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/16.jpg)
UNC Chapel Hill M. C. Lin
Angular Velocity Matrix
![Page 17: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/17.jpg)
UNC Chapel Hill M. C. Lin
![Page 18: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/18.jpg)
UNC Chapel Hill M. C. Lin
![Page 19: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/19.jpg)
UNC Chapel Hill M. C. Lin
Computing J+
Fairly slow to compute– Breville’s method: J+(JJT)-1
• Complexity: O(m2n) • ~ 57 multiply per DOF with m = 6
Instability around singularities– Jacobian loses rank in certain configur.
![Page 20: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/20.jpg)
UNC Chapel Hill M. C. Lin
Jacobian Transpose
Use JT rather than J+
– Avoid excessive inversion– Avoid singularity problem
![Page 21: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/21.jpg)
UNC Chapel Hill M. C. Lin
Principles of Virtual Work
Work = force x distance Work = torque x angle
![Page 22: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/22.jpg)
UNC Chapel Hill M. C. Lin
Jacobian Transpose
Essentially we’re taking the distance to the goal to be a force pulling the end-effector.
With J-1, the solution was exact to the linearized problem, but this is no longer so.
![Page 23: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/23.jpg)
UNC Chapel Hill M. C. Lin
Jacobian Transpose
![Page 24: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/24.jpg)
UNC Chapel Hill M. C. Lin
Jacobian Transpose
In effect this JT method solves the IK problem by setting up a dynamical system that obeys the Aristotilean laws of physics: F = m v ; = I and the steepest descent method.
The J+ method is equivalent to solving by Newtonian method
![Page 25: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/25.jpg)
UNC Chapel Hill M. C. Lin
Pros & Cons of Using JT
+ Cheaper evaluation+ No singularities- Scaling Problems- J+ has minimal norm at every step and JT doesn’t
have this property. Thus joint far from end-effector experience larger torque, thereby taking disproportionately large time steps
- Use a constant matrix to counteract
- Slower Convergence than J+
- Roughly 2x slower [Das, Slotine & Sheridan]
![Page 26: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/26.jpg)
UNC Chapel Hill M. C. Lin
Cyclic Coordinate Descend (CCD)
Just solve 1-DOF IK-problem repeatedly up the chain
1-DOF problems are simple & have analytical solutions
![Page 27: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/27.jpg)
UNC Chapel Hill M. C. Lin
CCD Math - Prismatic
![Page 28: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/28.jpg)
UNC Chapel Hill M. C. Lin
CCD Math - Revolute
![Page 29: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/29.jpg)
UNC Chapel Hill M. C. Lin
CCD Math - Revolute
You can optimize orientation too, but need to derive orientation error and minimize the combination of two
You can derive expression to minimize other goals too.
Shown here is for point goals, but you can define the goal to be a line or plane.
![Page 30: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/30.jpg)
UNC Chapel Hill M. C. Lin
Pros and Cons of CCD
+ Simple to implement
+ Often effective
+ Stable around singular configuration
+ Computationally cheap
+ Can combine with other more accurate optimizations
- Can lead to odd solutions if per step not limited, making method slower
- Doesn’t necessarily lead to smooth motion
![Page 31: UNC Chapel Hill M. C. Lin COMP790-072 Robotics: An Introduction Kinematics & Inverse Kinematics](https://reader030.vdocuments.us/reader030/viewer/2022032701/56649c735503460f94924bed/html5/thumbnails/31.jpg)
UNC Chapel Hill M. C. Lin
References