Robot Kinematics
Kinematics is the study of motion without reference to the forces that cause it. It describes the geometric and time-based properties of robot motion.
Joint Space vs. Cartesian (Task) Space:
- Joint space (configuration space, C-space): Described by the vector of joint variables q = [q₁, q₂, ..., qₙ]ᵀ
- Cartesian space (operational space): Described by end-effector position and orientation x = [px, py, pz, φ, θ, ψ]ᵀ
The fundamental challenge of robot kinematics is mapping between these two spaces.
Forward Kinematics (FK)
Forward Kinematics: Given joint angles, find end-effector pose.
x = f(q)
• Input: joint configuration q = [θ₁, θ₂, ..., θₙ] • Output: end-effector position and orientation T₀ₙ = T₁(θ₁) × T₂(θ₂) × ... × Tₙ(θₙ) • Always has a unique solution — straightforward matrix multiplication • Example (2-DOF planar arm): px = l₁cos(θ₁) + l₂cos(θ₁+θ₂) py = l₁sin(θ₁) + l₂sin(θ₁+θ₂) φ = θ₁ + θ₂
FK is always solvable and has a unique answer — it is the easier direction
Inverse Kinematics (IK)
Inverse Kinematics: Given end-effector pose, find joint angles.
q = f⁻¹(x)
• Input: desired end-effector position/orientation • Output: joint configuration(s) q that achieve this pose • Challenges: - Multiple solutions (redundancy): 6-DOF arm reaching a point can have up to 16 configurations - No solution: target outside workspace - Singularities: ill-conditioned near singular configurations • Solution methods: - Closed-form (analytical): Fast, exact, works for specific geometries (e.g., 6-DOF with spherical wrist) - Numerical (iterative): General, uses Jacobian inverse — Newton-Raphson, gradient descent - Learning-based: Neural networks learn IK mapping — fast inference but approximate
IK is the harder direction — multiple or no solutions possible
Jacobian Matrix and Velocity Kinematics
The Jacobian relates joint velocities to end-effector velocities:
ẋ = J(q) · q̇
• J(q) is the 6×n Jacobian matrix (n = number of joints) • Top 3 rows: linear velocity Jacobian (Jv) • Bottom 3 rows: angular velocity Jacobian (Jω) • ẋ = [vx, vy, vz, ωx, ωy, ωz]ᵀ — end-effector velocity twist • q̇ = [θ̇₁, θ̇₂, ..., θ̇ₙ]ᵀ — joint velocity vector • Inverse velocity: q̇ = J⁺(q) · ẋ (J⁺ = Moore-Penrose pseudoinverse) • At singularities: det(J) = 0 → J not invertible → infinite joint velocities needed
The Jacobian is fundamental for velocity control, force control, and motion planning
Robot Kinetics (Dynamics)
Kinetics (robot dynamics) studies the relationship between motion and the forces/torques that cause it. This is essential for:
- Computing motor torques required for a desired motion (Inverse Dynamics)
- Predicting how the robot will move under applied forces (Forward Dynamics)
- Designing controllers that account for gravity, inertia, and Coriolis effects
The Robot Equation of Motion: The general dynamic equation for an n-DOF robot manipulator is:
M(q)q̈ + C(q,q̇)q̇ + G(q) = τ
Where:
- M(q): n×n symmetric positive-definite inertia matrix (configuration-dependent)
- C(q,q̇)q̇: Centripetal and Coriolis torques (velocity-dependent)
- G(q): Gravity torque vector
- τ: Joint torque/force vector (from actuators)
Lagrangian Dynamics: Derives equations of motion from kinetic energy (T) and potential energy (V): L = T - V d/dt(∂L/∂q̇) - ∂L/∂q = τ
Newton-Euler Formulation: More computationally efficient — propagates velocities/accelerations outward, then forces/torques inward (backward recursion). O(n) complexity vs O(n³) for Lagrangian.
Kinematics vs. Kinetics Comparison
| Aspect | Kinematics | Kinetics (Dynamics) |
|---|---|---|
| Definition | Geometry of motion — no forces | Forces and torques causing motion |
| Variables | q, q̇, q̈ (position, velocity, acceleration) | τ (torques), F (forces), mass, inertia |
| Forward Problem | FK: joints → end-effector pose | FD: torques → accelerations |
| Inverse Problem | IK: end-effector pose → joints | ID: desired motion → required torques |
| Key Tools | DH matrices, Jacobian | Lagrangian, Newton-Euler, screw theory |
| Applications | Path planning, visualization | Motor sizing, control, simulation |
| Complexity | O(n) for FK, harder for IK | O(n) Newton-Euler, O(n³) Lagrangian |
Practical Implications
- 01
Motor Sizing: Inverse dynamics gives required joint torques — used to select actuators that can handle worst-case accelerations with full payload
- 02
Computed Torque Control: Uses full dynamic model to cancel nonlinear effects (gravity, Coriolis) — enables precise trajectory tracking
- 03
Gravity Compensation: Robots holding loads must counteract gravity at all configurations — energy-hungry and requires accurate mass models
- 04
Trajectory Smoothness: Position-only control ignores dynamics; including velocity and acceleration feedforward dramatically improves trajectory following
- 05
Payload Sensitivity: Robot dynamics change significantly with payload — many industrial robots recalibrate dynamic models for different tools/loads
- 06
Vibration & Compliance: Flexible links and gearbox compliance introduce resonant modes — advanced controllers include vibration damping terms
- 07
Calibration: Real robot parameters (mass, inertia, joint offsets) differ from nominal — identification experiments improve model accuracy