Robotics & Control Systems

Chapter 9
Robot Dynamics and Motion Control

Bachelors Program in Mechnical Engineering
Robotics & Control Systems   •   Bachelor

Robot Dynamics and Motion Control

Introduction

Robot kinematics describes where a manipulator is and how its joints move; robot dynamics explains why it moves as it does. Dynamics relates joint motion to actuator torque, gravity, inertia, Coriolis effects, friction, and external forces. This relationship is essential for selecting motors and gearboxes, predicting loads, designing feedback controllers, and achieving accurate motion under changing payloads.

For an n-joint serial manipulator, the standard joint-space dynamic model is

M(q)q̈ + C(q, q̇)q̇ + g(q) + τf(q̇) = τ + J(q)T Fext

Here, q is the vector of joint positions, q̇ and q̈ are joint velocity and acceleration, M(q) is the symmetric positive-definite inertia matrix, C(q,q̇)q̇ represents Coriolis and centrifugal effects, g(q) is the gravity vector, τ_f is friction torque, τ is actuator torque, J is the geometric Jacobian, and F_ext is an external wrench expressed consistently with the Jacobian. Joint angles are measured in radians and joint torques in N·m; prismatic joint variables and forces require corresponding SI units. The equation assumes a rigid-link model unless flexibility is explicitly added.

Learning Objectives

By the end of this chapter, a student should be able to:

  1. Explain the physical meaning of the terms in a manipulator dynamic equation.
  2. Derive robot dynamics using the Lagrangian and Newton–Euler methods.
  3. Distinguish joint, trajectory, computed-torque, impedance, force, and hybrid motion–force control.
  4. Select sensors, feedback signals, and control structures for practical robotic systems.
  5. Analyze modeling assumptions, safety constraints, and performance limitations.

1. Foundations of Manipulator Dynamics

A robot configuration is represented by q = [q₁, …, q_n]ᵀ. Revolute coordinates are angles; prismatic coordinates are displacements. The forward kinematic map is x = f(q), where x may contain position and orientation. Differentiating gives

ẋ = J(q)q̇

The Jacobian J maps joint velocities to Cartesian velocity. By virtual work, an external wrench F_ext produces joint torque

τext = J(q)T Fext

This equation is valid when F_ext and the Jacobian use compatible coordinate frames and wrench conventions. It also shows why a robot can experience very large joint loads near a singular configuration.

The dynamic model has four major physical contributions:

TermMeaningTypical source
M(q)q̈Inertial torqueLink and payload acceleration
C(q,q̇)q̇Velocity-dependent torqueCoriolis and centrifugal effects
g(q)Gravitational torqueLink and payload weight
τ_f(q̇)Resistive torqueBearings, seals, transmissions

The inertia matrix depends on configuration because link masses change their moment arms relative to the joint axes. A correctly formulated rigid-body model has M(q) = M(q)ᵀ and is positive definite for physically valid configurations. A useful energy property is that Ṁ − 2C is skew-symmetric under standard definitions of C. This property supports stability analysis and passivity-based control.

2. Lagrangian Derivation

The Lagrangian method is systematic and particularly convenient for deriving symbolic equations for small and medium-sized manipulators. Define

L(q, q̇) = T(q, q̇) − V(q)

where T is total kinetic energy and V is gravitational potential energy. For each generalized coordinate q_i, the Euler–Lagrange equation is

d/dt(∂L/∂q̇i) − ∂L/∂qi = τi − τf,i + τext,i

This equation assumes holonomic coordinates and ideal constraint handling. Nonconservative generalized forces, such as actuator torque, friction, and external loads, appear on the right-hand side.

For rigid links,

T = 1/2 ∑ᵢ [mᵢ vcᵢᵀvcᵢ + ωᵢᵀ Iᵢ ωᵢ]

where m_i is link mass, v_ci is the center-of-mass velocity, ω_i is angular velocity, and I_i is the center-of-mass inertia tensor expressed in a consistent frame. Gravitational potential is

V = ∑ᵢ mᵢ g₀ hᵢ

where g₀ is gravitational acceleration, conventionally 9.81 m/s², and h_i is center-of-mass height relative to a selected zero level.

Worked example: a single revolute link

Consider a rigid link of length l and mass m, rotating in a vertical plane. Its center of mass is at l_c from the joint and its moment of inertia about the center of mass is I_c. Let q be measured from the upward vertical, so the center-of-mass height is h = l_c cos q. The kinetic energy is

T = 1/2 (Ic + mlc²)q̇²

and the potential energy is V = m g₀ l_c cos q. Applying the Euler–Lagrange equation gives

(Ic + mlc²)q̈ − mg₀lc sin q = τ

Thus the required torque is

τ = (Ic + mlc²)q̈ − mg₀lc sin q

The sign of the gravity term depends on the selected zero angle and positive rotation direction. If q is measured from the downward vertical instead, the gravity term changes sign. This example illustrates the importance of defining coordinates before interpreting signs.

For an n-link robot, collecting terms produces

M(q)q̈ + C(q,q̇)q̇ + g(q) = τ

Friction, motor dynamics, cable elasticity, and external contact forces may then be added. The Lagrangian method provides compact equations but may become algebraically cumbersome as the number of links increases.

3. Newton–Euler Derivation

The Newton–Euler method applies force and moment balance to each link. It is computationally efficient because it uses a forward recursion for velocities and accelerations followed by a backward recursion for forces and torques.

For a rigid body with mass m, center-of-mass acceleration a_c, angular velocity ω, angular acceleration α, and inertia tensor I about the center of mass,

F = mac
Nc = Iα + ω × (Iω)

F is the resultant force and N_c is the resultant moment about the center of mass. The cross product term is the gyroscopic contribution. These equations are expressed in an inertial or consistently rotating frame.

A typical recursive procedure is:

  1. Assign coordinate frames and joint axes.
  2. Perform a forward recursion to calculate each link’s angular velocity, angular acceleration, and center-of-mass acceleration.
  3. Include gravity as base acceleration or as an explicit force.
  4. Perform a backward recursion to calculate link forces and moments.
  5. Project the resulting joint moment or force onto the joint axis to obtain τ_i.

For a revolute joint, the actuator torque is the component of the transmitted moment along the joint axis. For a prismatic joint, it is the component of transmitted force along the joint axis.

Newton–Euler recursion is preferred in real-time inverse dynamics because its computational cost grows approximately linearly with the number of links. The Lagrangian method is often preferred for derivation, energy analysis, and obtaining compact symbolic expressions. Both methods should produce physically equivalent results when frames, inertias, and signs are consistent.

4. From Dynamics to Control

A feedback controller compares a desired state with a measured state. Define position and velocity errors as

e = qd − q
ė = q̇d − q̇

where q_d is the desired joint position trajectory. Sensors commonly include encoders for position, tachometers or differentiated encoders for velocity, motor-current measurements for torque estimation, and force–torque sensors for interaction control.

Joint-space control

The simplest controller is proportional–derivative (PD) control with gravity compensation:

τ = Kp e + Kd ė + ĝ(q)

K_p and K_d are positive gain matrices, usually diagonal for independent joint tuning, and ĝ is an estimated gravity vector. The proportional term creates restoring torque; the derivative term dissipates motion. Without gravity compensation, steady-state position error may occur when a constant gravity torque is present.

Adding integral action gives

τ = Kp e + Kd ė + Ki ∫e dt + ĝ(q)

Integral action can remove constant disturbances and model errors, but it can cause windup when torque saturates. Anti-windup logic and careful filtering are therefore required. Derivative action amplifies measurement noise, so measured velocity or filtered differentiation is normally used.

Trajectory control

A point-to-point command specifies only initial and final states. A trajectory command specifies q_d(t), q̇_d(t), and often q̈_d(t). A fifth-order polynomial is frequently used when position, velocity, and acceleration are required to be continuous:

qd(t) = a₀ + a₁t + a₂t² + a₃t³ + a₄t⁴ + a₅t⁵

The six coefficients are determined by six boundary conditions, commonly q(0), q̇(0), q̈(0), q(T), q̇(T), and q̈(T). For a rest-to-rest move from q₀ to q_f over duration T, let Δq = q_f − q₀ and s = t/T. Then

qd(t) = q₀ + Δq(10s³ − 15s⁴ + 6s⁵)

This polynomial has zero velocity and acceleration at both endpoints. It does not by itself guarantee actuator feasibility; velocity, acceleration, jerk, torque, and collision constraints must still be checked.

5. Computed-Torque Control

Computed-torque control uses the dynamic model to cancel nonlinear robot dynamics. A standard command is

τ = M(q)v + C(q,q̇)q̇ + g(q)

with auxiliary command

v = q̈d + Kd(q̇d − q̇) + Kp(qd − q)

Substitution into the ideal model gives

ë + Kd ė + Kp e = 0

when e = q_d − q and the model is exact, friction is negligible, and no unmodeled external torque acts. If K_p and K_d are positive diagonal matrices, each decoupled error mode is asymptotically stable. For a scalar mode, the characteristic equation is s² + k_d s + k_p = 0; positive gains place both roots in the open left half-plane.

In practice, computed torque is model-based rather than model-perfect. Payload changes, friction, backlash, flexible transmissions, sensor delay, saturation, and contact forces cause residual errors. Robust or adaptive terms may be added, but aggressive gains can excite structural resonances. Torque limits must be enforced explicitly.

6. Impedance and Admittance Control

Impedance control specifies a desired dynamic relationship between motion error and interaction force. A Cartesian impedance model is

Md ẍe + Dd ẋe + Kd xe = Fext − Fd

where x_e = x − x_d, M_d is desired inertia, D_d desired damping, K_d desired stiffness, F_ext is measured or estimated external wrench, and F_d is a desired wrench. The controller does not necessarily force position or force to be exact; instead, it determines how the robot yields under contact.

A stiff impedance is appropriate for accurate free-space positioning but can generate large contact forces. A compliant impedance is useful for assembly, polishing, grasping, and safe human interaction. Damping must be sufficient to prevent oscillation, while excessive damping can slow response.

Admittance control is conceptually dual: it measures force and commands motion according to a virtual mass–damper–spring model. It is often suitable for position-controlled industrial robots that provide an external force measurement but do not expose high-bandwidth torque control.

The distinction is practical:

StrategyMain commandTypical hardware requirement
ImpedanceTorque or acceleration producing compliant behaviorTorque/current control is advantageous
AdmittancePosition or velocity generated from forceAccurate force sensing and position interface

7. Force and Hybrid Motion–Force Control

Pure position control is insufficient when a robot must maintain contact with a surface. Force control regulates a measured contact force, commonly using a force–torque sensor or an observer. A basic force loop is

uF = KpF(Fd − F) + KiF∫(Fd − F)dt

where F_d is desired force, F is measured force, and u_F is a motion or torque correction. Force-loop bandwidth must be lower than the mechanical contact dynamics when necessary to avoid instability.

Hybrid control separates task directions into motion-controlled and force-controlled subspaces. Let S be a selection matrix whose diagonal entries are 1 for force-controlled directions and 0 for motion-controlled directions. Then, conceptually,

τ = (I − JᵀSJ−T)τmotion + JᵀS Fcommand

This compact expression is not universally valid because it assumes a square, nonsingular Jacobian and compatible coordinate mappings. In practical implementations, selection is performed in a task frame using dynamically consistent projectors or operational-space formulations. The central principle is simpler: regulate position along directions where motion is prescribed and regulate force along independent contact directions.

For example, during a planar insertion task, horizontal motion may be position-controlled while vertical motion is force-controlled. A poorly chosen task frame or a singular Jacobian can mix these objectives and produce unwanted force or motion.

8. Operational-Space Dynamics

When tasks are naturally described in Cartesian coordinates, dynamics can be transformed using the Jacobian. Away from singularities, q̇ = J⁻¹ẋ for a square nonsingular Jacobian. The operational-space inertia is commonly written

Λ(q) = [J(q)M(q)⁻¹J(q)ᵀ]⁻¹

where Λ is the apparent Cartesian inertia. This expression requires the inverse to exist; near singularities, a pseudoinverse or damped inverse is required. Operational-space control can directly shape Cartesian acceleration and force, but it requires accurate Jacobians, dynamics, and frame transformations.

9. Practical Implementation Architecture

A typical controller contains the following layers:

  1. Planning layer: generates collision-free position, velocity, and acceleration references.
  2. Task layer: converts Cartesian objectives into joint references or force–motion commands.
  3. Model-based layer: computes gravity, inverse dynamics, Jacobians, and feedforward torque.
  4. Feedback layer: applies PD, force, impedance, or hybrid corrections.
  5. Actuator layer: handles current control, torque limits, friction compensation, and safety interlocks.
  6. Supervisory layer: monitors faults, workspace limits, contact conditions, and emergency stops.

Sampling time, computational delay, quantization, and sensor noise affect stability. The controller should be tested first in simulation, then with reduced speed and torque, and finally under controlled physical conditions. Saturation, rate limits, and watchdog timers are not optional additions; they are part of a safe control design.

10. Illustrative Case Study: Force-Controlled Robotic Polishing

Background. Consider a six-axis robot polishing a curved aluminium panel. Surface geometry varies, and a fixed position trajectory would either remove insufficient material or apply excessive force.

Problem. The robot must follow the tangential surface path while maintaining a normal contact force of 25 N. The tool has compliance, and the panel location has a small calibration error.

Analysis. Tangential directions are selected for motion control. The surface-normal direction is selected for force control. A force sensor measures the tool–panel wrench, while the robot controller uses the surface estimate to define a local task frame. Gravity and tool weight are compensated before the force loop is closed.

Approach. A trajectory generator supplies tangential position and velocity. A Cartesian impedance controller regulates tangential tracking and permits small compliance. A PI force controller modifies normal approach velocity according to the error 25 N − F_n. Force and motion commands are filtered, and normal velocity is limited. The robot stops if force exceeds a safety threshold or if the measured wrench changes abruptly.

Outcome. The hybrid strategy maintains contact while following the panel. Compared with rigid position control, it reduces force peaks and produces more uniform polishing. Performance depends on force-sensor calibration, surface-frame accuracy, contact stiffness, controller bandwidth, and tool compliance.

Learning points. Force and motion objectives should be assigned in physically meaningful directions. Model-based gravity compensation improves force regulation, but it cannot replace sensing. Safety limits must address both commanded force and unexpected contact.

11. Limitations, Safety, and Contemporary Practice

Rigid-link dynamics may be inaccurate for lightweight arms, harmonic drives, belts, and flexible tools. Joint friction is often nonlinear and may include Coulomb friction, viscous friction, stiction, and hysteresis. Payload identification and online parameter estimation can improve accuracy, but poorly excited data may make parameters unidentifiable.

Contact control is especially sensitive to delay and unmodeled stiffness. Stability should be assessed using appropriate sampling, passivity, gain, and environment models rather than by trial and error alone. Torque and power limits, workspace restrictions, protective stops, and risk assessment should follow applicable robot-safety requirements, such as relevant ISO 10218 and ISO/TS 15066 provisions where applicable to the installation and collaborative operation.

Machine learning can assist dynamics identification, friction compensation, collision detection, and trajectory optimization. However, learned models should be bounded and validated over the intended operating envelope. A black-box predictor should not be allowed to bypass torque limits, emergency stops, or verified safety functions. Explainability, data quality, cybersecurity, and fail-safe behavior are important engineering responsibilities.

Best practices include:

  • define frames, signs, units, and joint conventions before deriving equations;
  • validate gravity and inverse-dynamics predictions against measured current or torque;
  • identify payload and friction under safe, informative motions;
  • use feedforward only together with stabilizing feedback;
  • account for actuator saturation and integral windup;
  • filter noisy velocity and force signals without introducing unacceptable delay;
  • test near, but not initially at, expected limits;
  • document assumptions, calibration, software versions, and safety responses.

Chapter Summary

Manipulator dynamics connects joint torque, motion, gravity, inertia, velocity-dependent effects, friction, and external wrench. The Lagrangian method derives equations from kinetic and potential energy, while Newton–Euler recursion uses force and moment balances and is efficient for real-time inverse dynamics. The standard model is M(q)q̈ + C(q,q̇)q̇ + g(q) = τ, with friction and external forces added when required.

PD and PID controllers provide practical feedback regulation; gravity compensation improves static accuracy. Trajectory control supplies smooth time histories, while computed-torque control uses a model to cancel nonlinear dynamics and obtain approximately linear error behavior. Impedance and admittance control shape interaction behavior. Force control regulates contact force, and hybrid control assigns selected task directions to motion or force regulation. Real systems require attention to modeling errors, sensing, delay, saturation, contact stability, safety, and validation.

Key Terms

Manipulator dynamics: Relationship between robot motion and forces or torques.

Lagrangian: Difference between kinetic and potential energy.

Newton–Euler method: Recursive force and moment balance method for rigid bodies.

Inertia matrix M(q): Configuration-dependent matrix relating acceleration to inertial torque.

Coriolis effect: Velocity-dependent coupling associated with motion of multiple coordinates.

Centrifugal effect: Velocity-dependent term produced by motion about rotating axes.

Gravity vector g(q): Joint torques required to balance gravitational loads.

Jacobian J(q): Matrix mapping joint velocity to task-space velocity.

Wrench: Combined force and moment vector.

Computed torque: Model-based control that compensates robot nonlinear dynamics.

Gravity compensation: Feedforward torque opposing estimated gravitational torque.

Impedance control: Control of the dynamic relationship between motion and interaction force.

Admittance control: Conversion of measured force into a commanded motion.

Hybrid control: Simultaneous but directionally separated motion and force control.

Operational space: Task-space representation such as Cartesian position and orientation.

Payload: Object carried by the robot.

Passivity: Property that prevents a system from generating net energy under specified conditions.

Singularity: Configuration in which the Jacobian loses rank and certain motions or forces become poorly conditioned.

Review Questions

Short Answer Questions

  1. What physical quantities are represented by M(q), C(q,q̇)q̇, and g(q)?
  2. State the Euler–Lagrange equation for a generalized coordinate.
  3. Why is gravity compensation useful in joint-space control?
  4. Distinguish impedance control from admittance control.
  5. What is the purpose of a selection matrix in hybrid control?

Long Answer Questions

  1. Derive the dynamics of a single revolute link using kinetic and potential energy, clearly stating the coordinate convention.
  2. Compare the Lagrangian and Newton–Euler methods in terms of derivation, computational efficiency, and implementation.
  3. Explain computed-torque control and derive the ideal closed-loop error equation.
  4. Discuss the design of a smooth fifth-order point-to-point trajectory and its limitations.
  5. Explain how sensing, delay, saturation, and contact stiffness influence force-control stability.

Analytical / Application Questions

  1. Design a controller for a robot that inserts a peg into a hole. Specify which directions should be position-controlled and which should be force- or impedance-controlled, and justify the choice.
  2. A robot exhibits increasing steady-state error when lifting different payloads. Diagnose possible dynamic-model and controller causes, and propose a validation procedure.
  3. For a polishing task requiring constant normal force and tangential path tracking, propose a complete sensing, coordinate-frame, control, and safety architecture.

Multiple Choice Questions with Answers

Question 1

Which term in the standard manipulator equation represents configuration-dependent inertial effects?

A. M(q)q̈

B. g(q)

C. τ_f(q̇)

D. J(q)^T F_ext

Correct Answer: A. M(q)q̈

Question 2

The Lagrangian of a mechanical system is defined as:

A. T + V

B. T − V

C. V − T

D. T/V

Correct Answer: B. T − V

Question 3

For a revolute joint, the Newton–Euler actuator variable is obtained by projecting transmitted moment onto the:

A. Center-of-mass velocity

B. Gravity vector

C. Joint axis

D. Cartesian position vector

Correct Answer: C. Joint axis

Question 4

With exact dynamics and computed-torque control, the ideal tracking error equation is:

A. ë − K_d ė − K_p e = 0

B. ë + K_d ė + K_p e = 0

C. ė + K_p e = 0 only

D. M ë = 0 for all gains

Correct Answer: B. ë + K_d ė + K_p e = 0

Question 5

What is a principal danger of excessive integral action in a torque-limited robot?

A. Jacobian rank increase

B. Integral windup

C. Gravity cancellation

D. Removal of all sensor noise

Correct Answer: B. Integral windup

Question 6

A fifth-order rest-to-rest trajectory is useful because it can provide zero:

A. Position at both endpoints

B. Mass and inertia

C. Velocity and acceleration at both endpoints

D. Torque throughout the motion

Correct Answer: C. Velocity and acceleration at both endpoints

Question 7

Impedance control primarily specifies a relationship between:

A. Voltage and resistance

B. Motion error and interaction force

C. Mass and temperature

D. Sampling time and encoder count

Correct Answer: B. Motion error and interaction force

Question 8

In a polishing task, the surface-normal direction is commonly assigned to:

A. Force regulation

B. Uncontrolled motion

C. Motor identification only

D. Collision-map generation only

Correct Answer: A. Force regulation

Question 9

The Jacobian-transpose relation for an external wrench is:

A. τ_ext = J F_ext

B. τ_ext = J(q)^T F_ext

C. τ_ext = M(q)F_ext

D. τ_ext = C(q,q̇)F_ext

Correct Answer: B. τ_ext = J(q)^T F_ext

Question 10

Near a Jacobian singularity, which problem is most likely?

A. Perfectly conditioned force transformation

B. Loss of mass

C. Poorly conditioned motion and force mapping

D. Automatic friction elimination

Correct Answer: C. Poorly conditioned motion and force mapping

Robotics & Control Systems
Chapter 9 of 15