Kinematic Redundancy Robert Platt Northeastern University
Kinematic Redundancy • A manipulator may have more DOFs than are necessary to control a desired variable • What do you do w/ the extra DOFs? • However, even if the manipulator has “enough” DOFs, it may still be unable to control some variables in some configurations…
Jacobian Range Space Before we think about redundancy, let’s look at the range space of the Jacobian transform: The velocity Jacobian maps joint velocities onto end q effector velocities: v J q v J v q : Q V Space of joint velocities Space of end effector velocities • This is the domain of D J • J : This is the range v R J space of J : v
Jacobian Range Space J v q : Q V In some configurations, the range space of the Jacobian may not span the entire space of the variable to be controlled: R v V , v J q v R R J v q v V , v J q spans if V v a Example: a and b span this two dimensional space: b
Jacobian Range Space This is the case in the manipulator to the right: • In this configuration, the Jacobian does not span the y direction (or the z direction) , R y V y J q v y x z
Jacobian Range Space Let’s calculate the velocity Jacobian: J v ( q ) = [ 0 ] − l 1 s 1 − l 2 s 12 − l 3 s 123 − l 2 s 12 − l 3 s 123 − l 3 s 123 l 1 c 1 + l 2 c 12 + l 3 c 123 l 2 c 12 + l 3 c 123 l 3 c 123 0 0 q = ( π ) π 2 Joint configuration of manipulator: 0 y x J v ( q ) = [ 0 ] − l 1 − l 2 + l 3 − l 2 + l 3 z l 3 0 0 0 0 0 q q y J q There is no joint velocity, , that will produce a y velocity, v Therefore, you’re in a singularity.
Jacobian Singularities In singular configurations: J v ( q ) • does not span the space of Cartesian velocities J v ( q ) • loses rank y Test for kinematic singularity: x T det J ( q ) J ( q ) • If is zero, then manipulator is in z a singular configuration Example: 0 ] [ 0 ] − l 1 − l 2 + l 3 0 det [ J ( q ) J ( q ) T ] = det [ = det [ 0 ] − l 1 − l 2 + l 3 − l 2 + l 3 l 3 something 0 − l 2 + l 3 0 0 0 0 l 3 0
Jacobian Singularities: Example The four singularities of the three-link planar arm:
Think-pair-share y x 2 2 y 3 q 3 l z y 3 2 1 z l 2 3 x q x 3 2 1 z l 1 1 z 0 x q 0 1 y 0 What are the singularities for this arm? – which dimensions of the range space go to zero in which configurations?
Jacobian Singularities and Cartesian Control Cartesian control involves calculating the inverse or pseudoinverse: T JJ 1 # T J J However, in singular configurations, the pseudoinverse (or inverse) does not exist 1 T JJ because is undefined. y As you approach a singular configuration, joint x velocities in the singular direction calculated by z the pseudoinverse get very large: 1 # T T q J x J JJ x big s s In Jacobian transpose control, joint velocities in the singular direction ( i.e. the gradient) go to zero: T x x q J 0 Where is a singular direction. s s
Questions In Jacobian pseudoinverse control, what is the maximum velocity of a joint as a function of the y singular values of J? x z What is the maximum joint velocity in Jacobian transpose control?
Jacobian Singularities and Cartesian Control One way to get the “best of both worlds” is to use the “dampled least squares inverse” – aka the singularity robust (SR) inverse: 1 * T T 2 J J JJ k I • Because of the additional term inside the inversion, the SR inverse does not blow up. y • In regions near a singularity, the SR inverse trades x off exact trajectory following for minimal joint z velocities. BTW, another way to handle singularities is simply to avoid them – this method is preferred by many • More on this in a bit…
Question One way to get the “best of both worlds” is to use the “dampled least squares inverse” – aka the singularity robust (SR) inverse: 1 * T T 2 J J JJ k I • Because of the additional term inside the inversion, the SR inverse does not blow up. y • In regions near a singularity, the SR inverse trades x off exact trajectory following for minimal joint z velocities. Prove that this formulation adds an amount k^2 to each eigenvalue of JJ^T
Manipulability Ellipsoid Can we characterize how close we are to a singularity? Yes – imagine the possible instantaneous motions are described by an ellipsoid in Cartesian space. Can’t move much this way Can move a lot this way
Manipulability Ellipsoid The manipulability ellipsoid is an ellipse in Cartesian space corresponding to the twists that unit joint velocities can generate: q T q 1 A unit sphere in joint velocity space T # # J x J x 1 Project the sphere into Cartesian space T 1 1 T T T T T x J JJ J JJ x 1 T 1 T T T T x JJ JJ JJ x 1 − 1 ˙ x T ( JJ T ) x = 1 ˙ The space of feasible Cartesian velocities Forms an ellipsoid – manipulability ellipsoid
Manipulability Ellipsoid − 1 ˙ x T ( JJ T ) x = 1 ˙ What are the dimensions of manipulability ellipsoid? v 1 v 2
Manipulability Ellipsoid − 1 ˙ x T ( JJ T ) x = 1 ˙ What are the dimensions of manipulability ellipsoid? v 1 v 2 Length of side i is sqrt of eigenvalue of JJ^T – i.e. reciprocal of sqrt of (JJ^T)^-1
Manipulability Ellipsoid − 1 ˙ x T ( JJ T ) x = 1 ˙ What are the dimensions of manipulability ellipsoid? v 1 v 2 Length of side i is sqrt of eigenvalue of JJ^T – i.e. reciprocal of sqrt of (JJ^T)^-1 Fun fact: Eigenvalue of JJ^T equals the singular value for J: Therefore: of matrix J.
Manipulability Ellipsoid − 1 ˙ x T ( JJ T ) x = 1 ˙ What are the dimensions of manipulability ellipsoid? v 1 v 2 Length of side i is sqrt of eigenvalue of JJ^T – i.e. reciprocal of sqrt of (JJ^T)^-1 Fun fact: Eigenvalue of JJ^T equals the singular value for J: Therefore: of matrix J. Manipulability measure: proportional to volume of manipulability ellipsoid
Manipulability Ellipsoid − 1 ˙ x T ( JJ T ) x = 1 ˙ What are the dimensions of manipulability ellipsoid? v 1 v 2 Length of side i is sqrt of eigenvalue of JJ^T – i.e. reciprocal of sqrt of (JJ^T)^-1 Fun fact: Eigenvalue of JJ^T equals the singular value for J: Therefore: of matrix J. Manipulability measure: proportional to volume of manipulability ellipsoid Why is this proportional to volume?
Manipulability Ellipsoid − 1 ˙ x T ( JJ T ) x = 1 ˙ What are the dimensions of manipulability ellipsoid? v 1 v 2 Length of side i is sqrt of eigenvalue of JJ^T – i.e. reciprocal of sqrt of (JJ^T)^-1 Fun fact: Eigenvalue of JJ^T equals the singular value for J: Therefore: of matrix J. Condition number: eccentricity of manipulability ellipsoid Condition number close to one indicates an isotropic ellipsoid
Manipulability Ellipsoid Isotropic manipulability NOT isotropic ellipsoid manipulability ellipsoid In what configuration of the planar two-link arm is this the manipulability ellipsoid isotropic?
Force Manipulability Ellipsoid You can also calculate a manipulability ellipsoid for force: T 1 A unit sphere in the space of joint torques J T F T T T J F J F 1 F T JJ T F = 1 The space of feasible Cartesian wrenches
Velocity and force manipulability are orthogonal! Force ellipsoid Velocity ellipsoid This is known as force/velocity duality • You can apply the largest forces in the same directions that your max velocity is smallest • Your max velocity is greatest in the directions where you can only apply the smallest forces
Think-pair-share Force ellipsoid Velocity ellipsoid x 1 T T Velocity ellipsoid: x JJ 1 T T F JJ F 1 Force ellipsoid: Prove that the force and velocity ellipsoids are orthogonal
Manipulability Ellipsoid: Example Solve for the principle axes of the manipulability 2 v ellipsoid for the planar two link manipulator with unit 2 q = ( 4 ) length links at 0 1 v π 1 J ( q ) = [ l 2 c 12 ] − l 1 s 1 − l 2 s 12 − l 2 s 12 l 1 c 1 + l 2 c 12 J ( q ) = [ √ 2 ] − 1 − 1 √ 2 √ 2 1 + 1 1 √ 2 J ( q ) J ( q ) T = [ 2 + √ 2 − λ ] − 1 + 1 1 − λ √ 2 − 1 + 1 √ 2 √ λ 1 v 1 = ( -0.1568 ) -0.3029 Principle axes: √ λ 2 v 2 = ( 1.8411 ) -0.9530
Recommend
More recommend