Robotics and Kinematics

Chapter 6
Differential Kinematics, Jacobians, and Singularities

Bachelor Program in Mechatronics Engineering
Robotics and Kinematics   •   Bachelor

Differential Kinematics, Jacobians, and Singularities

Introduction

Forward kinematics determines a robot’s pose from its joint coordinates. Differential kinematics addresses the corresponding local question: how do infinitesimal joint motions and joint rates produce Cartesian velocity? This relationship is fundamental to velocity control, trajectory tracking, force control, collision avoidance, calibration, dexterity analysis, and inverse kinematics.

The central object is the Jacobian matrix. It maps joint-rate vectors to a spatial velocity, or twist, of the end effector. The Jacobian also maps end-effector forces and moments into joint torques through virtual work. Its rank and singular values reveal whether a robot can move, or transmit force, in particular directions.

Learning Objectives

After studying this chapter, a student should be able to:

  1. Derive geometric and analytical Jacobians for serial manipulators.
  2. Relate joint rates to end-effector linear and angular velocity.
  3. Compute inverse, least-squares, and pseudoinverse joint-rate solutions.
  4. Identify and interpret singular configurations.
  5. Explain manipulability, force transmission, and redundancy.
  6. Apply Jacobian methods to a practical robotic system while recognizing their assumptions and limitations.

1. Differential Kinematics and Twists

Let a manipulator have n joints, joint coordinates q = [q₁, …, qₙ]ᵀ, and joint-rate vector q̇. The end-effector pose consists of position p ∈ ℝ³ and orientation R ∈ SO(3). A small change in configuration produces a small change in pose.

The translational velocity is ṗ. Angular velocity is represented by ω. Together they form a six-dimensional spatial velocity, or twist:

v = [ ṗ ; ω ]

The joint-rate-to-twist relation is

v = J(q) q̇

where J(q) ∈ ℝ⁶ˣⁿ is the geometric Jacobian. The upper three rows generally describe linear velocity and the lower three rows angular velocity. Units are mixed: linear-velocity rows have units m/s per joint-rate unit, while angular-velocity rows have units rad/s per joint-rate unit. Since radians are dimensionless in SI, careful interpretation is still required.

For a revolute joint, qᵢ is an angle and q̇ᵢ has units rad/s. For a prismatic joint, qᵢ is a displacement and q̇ᵢ has units m/s. The Jacobian must be constructed consistently with these joint types.

The velocity equation is local: J is evaluated at the current configuration and is valid for instantaneous motion or sufficiently small time intervals. It does not by itself provide a finite displacement unless integrated along a trajectory.

2. Geometric Jacobian by Joint-Axis Construction

Consider a serial chain described in a common reference frame. Let zᵢ₋₁ be the unit axis of joint i, expressed in that frame, oᵢ₋₁ the origin on that axis, and oₙ the end-effector origin. Define rᵢ = oₙ − oᵢ₋₁.

For a revolute joint, a unit-rate rotation produces angular velocity zᵢ₋₁ and linear velocity zᵢ₋₁ × rᵢ. Therefore its Jacobian column is

Jᵢ = [ zᵢ₋₁ × (oₙ − oᵢ₋₁) ; zᵢ₋₁ ]

For a prismatic joint, the joint produces translation along its axis and no direct angular velocity:

Jᵢ = [ zᵢ₋₁ ; 0 ]

Thus, for a mixture of revolute and prismatic joints,

J(q) = [ J₁ J₂ … Jₙ ]

This construction assumes that all origins and axes are expressed in the same frame. A frequent implementation error is to mix local Denavit–Hartenberg quantities with world-frame quantities.

Derivation for a Revolute Joint

A point fixed at vector r from a rotating axis has instantaneous velocity

ṗ = ω × r

For unit joint rate, ω = zᵢ₋₁. Hence ṗ = zᵢ₋₁ × (oₙ − oᵢ₋₁). The joint also contributes angular velocity zᵢ₋₁. This proves the revolute column formula.

Planar Two-Link Example

For a planar two-revolute-joint arm with link lengths l₁ and l₂ and joint angles q₁ and q₂, the end-effector position is

x = l₁ cos q₁ + l₂ cos(q₁ + q₂)
y = l₁ sin q₁ + l₂ sin(q₁ + q₂)

Differentiating gives

[ ẋ ; ẏ ] = [ −l₁ sin q₁ − l₂ sin(q₁+q₂) −l₂ sin(q₁+q₂) ; l₁ cos q₁ + l₂ cos(q₁+q₂) l₂ cos(q₁+q₂) ] [ q̇₁ ; q̇₂ ]

The planar Jacobian is therefore

Jₚ = [ −l₁ sin q₁ − l₂ sin(q₁+q₂) −l₂ sin(q₁+q₂) ; l₁ cos q₁ + l₂ cos(q₁+q₂) l₂ cos(q₁+q₂) ]

It maps two joint rates to planar x and y velocity. If planar orientation is also included, the third row is [1 1], because both revolute joints contribute to the end-effector angular velocity.

3. Analytical Jacobian

The geometric Jacobian maps q̇ to a twist. An analytical Jacobian is obtained by differentiating a selected vector of pose coordinates. Let

xₐ = [ p ; η ]

where η is a three-parameter orientation representation, such as roll–pitch–yaw angles. Then

ẋₐ = Jₐ(q) q̇

The translational part is usually identical to the geometric Jacobian’s translational part, but the orientation part is generally different. For roll–pitch–yaw coordinates, η̇ is not normally equal to ω. Instead,

ω = T(η) η̇

where T(η) depends on the chosen rotation convention. If T is nonsingular,

η̇ = T(η)⁻¹ ω

and therefore

Jₐ = [ I₃ 0 ; 0 T(η)⁻¹ ] Jg

where Jg is the geometric Jacobian and I₃ is the 3 × 3 identity matrix. This relationship applies only away from coordinate singularities, where T(η) is invertible.

The geometric Jacobian is usually preferable for physical velocity and force analysis because angular velocity is a coordinate-independent physical quantity. Analytical Jacobians are useful when a controller directly regulates pose-coordinate rates, but Euler-angle singularities must be distinguished from physical robot singularities.

4. Computing Jacobians from a Kinematic Model

A robust workflow is:

  1. Define the base and tool frames.
  2. Build homogeneous transformations using a consistent convention.
  3. Extract each joint axis zᵢ₋₁ and origin oᵢ₋₁ in the base frame.
  4. Extract the end-effector origin oₙ.
  5. Construct each column according to joint type.
  6. Verify the result numerically using finite differences or simulation.

For a homogeneous transformation

T = [ R p ; 0 1 ]

R is a 3 × 3 rotation matrix and p is a 3 × 1 position vector. The transformation must preserve RᵀR = I and det(R) = 1, within numerical tolerance.

Finite-difference verification approximates a column by perturbing one joint:

Jᵢ ≈ [ x(q + εeᵢ) − x(q) ] / ε

for position, with an appropriate orientation-difference operation for rotation. Here eᵢ is the ith unit vector and ε is small but not so small that round-off dominates. Direct subtraction of Euler angles is unreliable near angle wrapping and orientation singularities.

5. Inverse Differential Kinematics

Given a desired twist v_d, inverse differential kinematics seeks q̇ satisfying

J q̇ = vd

Square, Nonsingular Case

If J is square and det(J) ≠ 0,

q̇ = J⁻¹ vd

This solution is unique. It becomes numerically unsafe when the determinant is close to zero, even if a formal inverse exists.

Redundant Manipulators

If n > m, where m is the number of commanded task variables, infinitely many exact solutions may exist. The minimum-norm solution is

q̇ = J⁺ vd

where J⁺ is the Moore–Penrose pseudoinverse. For a full row-rank m × n matrix,

J⁺ = Jᵀ(JJᵀ)⁻¹

The pseudoinverse solution minimizes ||q̇||₂ among all exact solutions. The general solution is

q̇ = J⁺vd + (I − J⁺J)z

where z is arbitrary. The second term lies in the null space of J and therefore does not change the instantaneous task velocity. It can be used for joint-limit avoidance, posture optimization, or obstacle avoidance, provided the secondary motion does not conflict with the primary task.

Underdetermined or Infeasible Tasks

If the desired twist is not exactly achievable, the pseudoinverse gives a least-squares solution minimizing ||Jq̇ − v_d||₂. When J has full column rank, an alternative expression is

J⁺ = (JᵀJ)⁻¹Jᵀ

These formulas should not be computed by explicitly forming an inverse in numerical software. QR or singular-value decomposition is generally more stable.

Damped Least Squares

Near singularity, use the damped solution

q̇ = Jᵀ(JJᵀ + λ²I)⁻¹vd

where λ ≥ 0 is a damping factor. λ = 0 gives the full-row-rank pseudoinverse. Increasing λ reduces excessive joint rates but introduces tracking error. Adaptive damping is often preferable: increase λ as the smallest singular value approaches zero.

6. Singularities

A configuration is singular when the Jacobian loses rank. At such a configuration, one or more Cartesian velocity directions cannot be produced independently by joint motion. Equivalently, the columns of J become linearly dependent, or the rows become linearly dependent depending on the dimensions and interpretation.

For a square Jacobian, singularity occurs when

det(J) = 0

For a rectangular Jacobian, rank is the appropriate criterion. If J has m task dimensions, full task authority requires rank(J) = m.

Planar Two-Link Singularities

For the planar position Jacobian, the determinant is

det(Jₚ) = l₁l₂ sin q₂

assuming nonzero link lengths. Thus singularity occurs when q₂ = 0 or π modulo 2π: the links are collinear. At these configurations, the arm cannot instantaneously produce velocity in one Cartesian direction. A controller attempting that direction may demand very large joint rates.

Physical and Representation Singularities

A physical robot singularity results from loss of task rank in the robot’s actual motion capability. A representation singularity results from the chosen orientation coordinates, such as gimbal lock in Euler angles. The latter may occur even when the robot can physically move with full angular authority. Analysis should therefore use the geometric Jacobian when diagnosing physical dexterity.

Structural and Wrist Singularities

Industrial six-axis manipulators often exhibit shoulder, elbow, and wrist singularities. A wrist singularity commonly occurs when two wrist axes align, causing loss of independent rotational control. The exact conditions depend on the robot architecture and parameterization.

7. Manipulability and Conditioning

The velocity ellipsoid describes how unit joint-rate effort is transformed into Cartesian velocity. For a velocity Jacobian J, the set

vᵀ(JJᵀ)⁻¹v = 1

is the velocity ellipsoid when J has full row rank. Its principal directions are the left singular vectors of J, and its semiaxis lengths are the singular values σᵢ.

Yoshikawa’s manipulability measure is

w = √det(JJᵀ) = ∏ᵢ σᵢ

for a full-row-rank Jacobian. A value of zero indicates rank loss. However, this measure combines translational and rotational quantities with different physical units unless a characteristic length is introduced or the Jacobian is appropriately scaled.

The condition number is

κ(J) = σmax / σmin

where σmax and σmin are the largest and smallest nonzero singular values. A large condition number indicates poor isotropy and sensitivity: some task directions require much greater joint-rate effort than others. Singular-value analysis is generally more informative than determinant alone for rectangular or scaled Jacobians.

8. Force Transmission and Static Duality

The Jacobian’s velocity relationship has a dual statics relationship. Let F be the end-effector wrench, containing force f and moment μ, and let τ be the vector of joint torques or forces. Virtual work gives

τᵀq̇ = Fᵀv

Using v = Jq̇ for arbitrary q̇ yields

τ = JᵀF

This equation assumes ideal joints, consistent frames, and static or quasistatic conditions; dynamic effects, friction, compliance, and gravity must be added in a full model.

The transpose Jacobian is therefore useful for force control. Near a singularity, some wrench directions may require very large joint torques, while other directions may be poorly resisted. Velocity manipulability and force manipulability are dual but not identical descriptions. A direction that is easy for velocity generation is not automatically easy for force production under actuator limits.

Power consistency also checks units. Force times velocity has units of watts, and torque times angular velocity has units of watts. For a prismatic joint, joint effort is force; for a revolute joint, it is torque.

9. Redundancy and Null-Space Control

A manipulator is redundant for a task if it has more independent joints than task dimensions. Redundancy can improve obstacle avoidance, dexterity, singularity avoidance, and joint-limit management, but it introduces control choices.

A common velocity controller is

q̇ = J⁺vd + (I − J⁺J)q̇₀

where q̇₀ is a preferred secondary velocity. If a scalar posture objective h(q) is to be increased, one may choose q̇₀ = k∇h(q), with gain k selected consistently with the control cycle and units. The null-space projector must be appropriate to the selected pseudoinverse and task metric.

Weighted least squares can account for joint speeds, actuator costs, or safety priorities:

q̇ = W⁻¹Jᵀ(JW⁻¹Jᵀ)⁻¹vd

where W is symmetric positive definite. This expression applies when J has full row rank. The weighting changes the meaning of “minimum effort”; it is not merely a numerical adjustment.

10. Worked Example: Planar Arm Velocity and Singularity

Consider l₁ = 0.60 m, l₂ = 0.40 m, q₁ = 30°, q₂ = 60°. Then q₁ + q₂ = 90°. The position Jacobian is

Jₚ = [ −0.60 sin30° − 0.40 sin90° −0.40 sin90° ; 0.60 cos30° + 0.40 cos90° 0.40 cos90° ]

Using sin30° = 0.5, sin90° = 1, cos30° ≈ 0.866, and cos90° = 0,

Jₚ ≈ [ −0.700 −0.400 ; 0.520 0 ] m/rad

Suppose q̇₁ = 0.20 rad/s and q̇₂ = −0.10 rad/s. Then

[ ẋ ; ẏ ] ≈ [ −0.700 −0.400 ; 0.520 0 ] [ 0.20 ; −0.10 ]

Therefore,

ẋ ≈ −0.100 m/s, ẏ ≈ 0.104 m/s

The result is dimensionally consistent: m/rad multiplied by rad/s gives m/s.

For the same arm, det(Jₚ) = l₁l₂sin q₂ = 0.60 × 0.40 × sin60° ≈ 0.208 m²/rad², so the configuration is nonsingular. If q₂ approaches 0°, the determinant approaches zero and inverse velocity calculations become ill-conditioned.

11. Applied Case: Cartesian Control of a Redundant Inspection Robot

Background

Consider an illustrative six-joint robot inspecting welds on a vehicle body. The tool must follow a three-dimensional path while maintaining a prescribed tool-axis direction. The task has five independent variables: three positions and two orientation variables. The sixth joint provides redundancy.

Problem

A simple inverse solution may produce large joint rates near the edge of the robot’s workspace, or may place a joint close to its mechanical limit. Direct inversion is unsuitable because the task Jacobian is 5 × 6 and may become ill-conditioned.

Analysis

At each control cycle, the controller computes the geometric Jacobian J and a desired twist v_d from path error. Singular-value decomposition identifies the smallest singular value. If it is small, the controller increases damping. A null-space objective pushes the sixth joint away from limits while preserving the primary Cartesian motion.

Approach and Solution

The commanded joint rate is computed using damped least squares:

q̇ = Jᵀ(JJᵀ + λ²I)⁻¹vd + (I − J⁺J)q̇₀

In implementation, the primary damped solution and the null-space projector should be designed consistently; a dynamically consistent projector may be preferred when actuator inertia matters. Joint-rate and acceleration limits are enforced after scaling or through a constrained optimization layer. The orientation error is represented using a rotation-vector or quaternion-based error rather than subtracting Euler angles near a coordinate singularity.

Outcome

The robot follows the inspection path with bounded joint rates, avoids a wrist singularity, and uses the redundant joint to maintain a favorable posture. Tracking may slow slightly near singular regions because damping deliberately trades exact velocity tracking for safety and numerical robustness.

Learning Points

The case demonstrates that a Jacobian is not only an algebraic matrix. It is a configuration-dependent model used inside a feedback loop. Reliable operation requires frame consistency, singular-value monitoring, actuator limits, orientation-error care, and validation against the physical robot.

12. Limitations, Safety, and Best Practices

Jacobians are local models. They do not include inertia, Coriolis effects, gravity, friction, flexible links, backlash, actuator saturation, or sensing delay. A velocity command based on an accurate Jacobian can still produce poor motion if these effects are ignored.

Best practices include:

  • state every frame and transformation convention;
  • distinguish revolute and prismatic units;
  • use geometric Jacobians for physical twist analysis;
  • use SVD or QR methods rather than explicit matrix inversion;
  • monitor singular values, not only determinants;
  • scale mixed translational and rotational tasks using a meaningful characteristic length;
  • impose joint, velocity, acceleration, and torque limits;
  • verify analytical results with simulation and finite differences;
  • use collision monitoring and a safety-rated stop independently of the numerical controller;
  • validate all algorithms under sensor noise and communication delay.

In collaborative robotics, singularity avoidance must not override human safety. A controller that increases joint speeds to maintain Cartesian tracking can create a hazard. Safety functions, risk assessment, workspace restrictions, and applicable machinery and robot-safety standards must be addressed by the complete system engineering process.

Contemporary systems increasingly combine Jacobian control with constrained quadratic programming, model predictive control, online calibration, and learning-based residual models. Learning can compensate for unmodeled effects, but it should not replace analytical safety limits or provide unverified commands outside the training domain.

Chapter Summary

Differential kinematics maps joint rates to end-effector twist through the geometric Jacobian. Its columns follow directly from joint axes: a revolute joint contributes an axis-cross-position term to linear velocity and the axis itself to angular velocity; a prismatic joint contributes axis-aligned linear velocity and no angular velocity. Analytical Jacobians differentiate selected pose coordinates and must account for the transformation between coordinate rates and physical angular velocity.

Inverse differential kinematics uses matrix inversion for square nonsingular systems and pseudoinverses or damped least squares for redundant, rectangular, or ill-conditioned systems. The Jacobian’s rank and singular values characterize achievable motion. Manipulability measures dexterity, while the transpose Jacobian maps end-effector wrenches to joint efforts through virtual work. Redundant robots can exploit null-space motion for posture, joint-limit, and obstacle objectives. Because Jacobians are local and configuration dependent, reliable deployment requires numerical conditioning, unit consistency, constraints, safety supervision, and experimental verification.

Key Terms

Jacobian: Configuration-dependent matrix mapping joint rates to task-space velocity.

Geometric Jacobian: Jacobian mapping joint rates to physical linear and angular velocity.

Analytical Jacobian: Jacobian mapping joint rates to rates of selected pose coordinates.

Twist: Six-dimensional vector combining linear and angular velocity.

Revolute joint: Joint producing rotation about an axis.

Prismatic joint: Joint producing translation along an axis.

Rank: Number of linearly independent rows or columns of a matrix.

Singularity: Configuration in which the Jacobian loses required task rank.

Pseudoinverse: Moore–Penrose generalized inverse used for inverse or least-squares solutions.

Damped least squares: Regularized inverse method that limits excessive rates near singularities.

Null space: Joint-rate directions producing zero instantaneous task velocity.

Redundancy: Having more independent joints than task dimensions.

Manipulability: Measure of the robot’s ability to generate motion or transmit effort in task space.

Singular value: Nonnegative value describing Jacobian scaling along a principal direction.

Condition number: Ratio of largest to smallest relevant singular value.

Wrench: Combined force and moment applied at an end effector.

Virtual work: Equality of work or power between joint and task coordinates.

Velocity ellipsoid: Geometric representation of task velocities generated by bounded joint rates.

Frame: Coordinate system used to express position, orientation, axes, and vectors.

Review Questions

Short Answer Questions

  1. What physical quantities are represented by a six-dimensional twist?
  2. State the geometric Jacobian column for a revolute joint.
  3. Why can an analytical Jacobian become singular even when the robot is physically capable of the motion?
  4. What does the null-space term in a redundant solution accomplish?
  5. State the static relationship between an end-effector wrench and joint efforts.

Long Answer Questions

  1. Derive the geometric Jacobian of a planar two-revolute-joint manipulator using both differentiation and joint-axis reasoning.
  2. Explain the difference between geometric and analytical Jacobians, including the role of orientation parameterization.
  3. Discuss how singular values, manipulability, and condition number characterize dexterity.
  4. Derive the minimum-norm pseudoinverse solution and explain when damped least squares is preferable.
  5. Explain how virtual work leads to τ = JᵀF and discuss the assumptions behind this relationship.

Analytical / Application Questions

  1. For a two-link planar arm with l₁ = 0.5 m, l₂ = 0.3 m, q₁ = 45°, and q₂ = 90°, calculate the position Jacobian and the end-effector velocity for q̇ = [0.2, −0.1]ᵀ rad/s.
  2. A six-joint robot performs a five-variable task and approaches a configuration where its smallest singular value becomes nearly zero. Propose a control strategy and explain the trade-off introduced by damping.
  3. Design a null-space objective for a redundant manipulator that avoids joint limits. State how its gradient could be incorporated without changing the primary task velocity.

Multiple Choice Questions with Answers

Question 1

For a revolute joint, which expression gives the geometric Jacobian column?

A. [zᵢ₋₁; 0]

B. [zᵢ₋₁ × (oₙ − oᵢ₋₁); zᵢ₋₁]

C. [oₙ − oᵢ₋₁; zᵢ₋₁ × oᵢ₋₁]

D. [0; oₙ − oᵢ₋₁]

Correct Answer: B. [zᵢ₋₁ × (oₙ − oᵢ₋₁); zᵢ₋₁]

Question 2

What does the equation v = Jq̇ represent?

A. Force balance

B. Forward position kinematics

C. Differential kinematics

D. Energy conservation

Correct Answer: C. Differential kinematics

Question 3

For the planar two-link position Jacobian, singularity occurs when:

A. q₂ = 90° only

B. q₁ = 0° only

C. The link lengths are equal

D. sin q₂ = 0

Correct Answer: D. sin q₂ = 0

Question 4

Which solution minimizes the Euclidean norm of joint rates among exact solutions?

A. Jᵀv

B. J⁻¹v for every J

C. J⁺v

D. JJᵀv

Correct Answer: C. J⁺v

Question 5

What is the principal purpose of damping near a Jacobian singularity?

A. To increase tracking error without limiting rates

B. To reduce excessively large joint rates

C. To eliminate all null-space motion

D. To convert a revolute joint into a prismatic joint

Correct Answer: B. To reduce excessively large joint rates

Question 6

The static wrench relationship for an ideal manipulator is:

A. τ = JF

B. τ = JᵀF

C. F = Jᵀτ̇

D. τ = J⁻¹F

Correct Answer: B. τ = JᵀF

Question 7

A null-space velocity satisfies which condition?

A. Jq̇₀ = 0

B. Jq̇₀ = v_d

C. Jᵀq̇₀ = 1

D. det(J) = 1

Correct Answer: A. Jq̇₀ = 0

Question 8

What does a zero Yoshikawa manipulability measure indicate?

A. Maximum isotropy

B. Infinite workspace

C. Loss of Jacobian rank

D. Zero link length in every robot

Correct Answer: C. Loss of Jacobian rank

Question 9

For q₁ = 30°, q₂ = 60°, l₁ = 0.60 m, and l₂ = 0.40 m, the planar position Jacobian determinant is approximately:

A. 0 m²/rad²

B. 0.104 m²/rad²

C. 0.208 m²/rad²

D. 1.000 m²/rad²

Correct Answer: C. 0.208 m²/rad²

Question 10

Why must translational and rotational Jacobian components often be scaled in manipulability analysis?

A. They are always both measured in kilograms

B. They can have different physical units and characteristic magnitudes

C. Scaling changes a revolute joint into a prismatic joint

D. Scaling guarantees that singularities disappear

Correct Answer: B. They can have different physical units and characteristic magnitudes

Robotics and Kinematics
Chapter 6 of 15