Chapter 3: Robot Taxonomy and Classification
Lesson 3: Rigid, Flexible, and Continuum Robots (high-level only)
This lesson classifies robots by how their bodies deform during motion: (i) rigid-link robots, (ii) flexible (compliant) robots, and (iii) continuum robots. We emphasize the modeling assumptions behind each class, formal stiffness/compliance measures, and why these categories matter for control and design. Only high-level modeling is used; detailed kinematics and Jacobians are deferred to later courses.
1. Conceptual Overview
Let the robot body occupy a reference domain \( \Omega \subset \mathbb{R}^3 \). A motion is a mapping \( \boldsymbol{\varphi}:\Omega \times [0,T] \to \mathbb{R}^3 \). The taxonomy in this lesson is based on the regularity and dimensionality of deformation in \( \boldsymbol{\varphi} \).
- Rigid robots: the body decomposes into links that are (approximately) undeformable. Each link is described by a rigid transformation in \( SE(3) \); deformation is neglected.
- Flexible robots: links deform slightly under load. Deformation is modeled as small elastic strain about a rigid backbone.
- Continuum robots: deformation is large and distributed; there is no natural link–joint separation. The configuration is a space curve (and possibly a cross-section frame) with effectively infinite DOF.
flowchart TD
A["Robot body deformation model"] --> B["Negligible deformation"]
A --> C["Small elastic deformation"]
A --> D["Large distributed deformation"]
B --> R["Rigid-link robots"]
C --> F["Flexible-link robots"]
D --> K["Continuum robots"]
R --> R1["Finite DOF; joint coordinates"]
F --> F1["Finite + elastic DOF; modes"]
K --> K1["Infinite DOF; curve/rod models"]
A unifying idea is the relationship between applied generalized forces \( \mathbf{f} \) and generalized displacements \( \mathbf{q} \). When deformation is linear-elastic,
\[ \mathbf{f} = \mathbf{K}\mathbf{q}, \qquad \mathbf{q} = \mathbf{C}\mathbf{f}, \quad \mathbf{C}=\mathbf{K}^{-1}, \]
where \( \mathbf{K} \) is a stiffness matrix and \( \mathbf{C} \) the compliance matrix. Rigid robots assume \( \|\mathbf{C}\| \approx 0 \); continuum robots require distributed counterparts of these operators.
2. Rigid Robots
A rigid robot is modeled as piecewise rigid bodies connected by ideal joints. Each link \( i \) has a pose \( \mathbf{T}_i \in SE(3) \). The key assumption is that internal strains are negligible in operating conditions:
\[ \boldsymbol{\varepsilon}(\mathbf{x},t) \approx \mathbf{0} \quad \forall \mathbf{x}\in\Omega_i, \]
and any displacement is explained by joint coordinates \( \mathbf{q} \in \mathbb{R}^n \). High-level dynamics (without deriving full rigid-body equations) are typically represented as:
\[ \mathbf{M}(\mathbf{q})\ddot{\mathbf{q}} +\mathbf{B}(\mathbf{q},\dot{\mathbf{q}}) +\mathbf{g}(\mathbf{q}) =\mathbf{u}, \]
where \( \mathbf{u} \) are joint control inputs. In rigid taxonomy, we treat \( \mathbf{M},\mathbf{B},\mathbf{g} \) as coming from rigid-body mechanics. This class dominates industrial manipulators because high stiffness yields accurate positioning.
Stiffness idealization: If the end-effector small displacement is \( \delta\mathbf{x} \) under an external wrench \( \mathbf{w} \), then rigid robots assume:
\[ \|\delta\mathbf{x}\| \le \epsilon \|\mathbf{w}\|, \quad \epsilon \to 0. \]
This is an approximation: effectively, the operational compliance is small enough to ignore in planning and control.
3. Flexible Robots
Flexible robots allow small but non-negligible deformation of links. A common abstraction is a rigid skeleton plus elastic deflection \( \mathbf{u}(\mathbf{x},t) \):
\[ \boldsymbol{\varphi}(\mathbf{x},t) = \boldsymbol{\varphi}_{\text{rigid}}(\mathbf{x},\mathbf{q}(t)) + \mathbf{u}(\mathbf{x},t), \qquad \|\nabla \mathbf{u}\| \ll 1. \]
For a slender link modeled as an Euler–Bernoulli beam of length \( L \), transverse deflection \( y(s,t) \), arc-length coordinate \( s\in[0,L] \), Young’s modulus \( E \), and area moment \( I \), the static equation under load distribution \( p(s) \) is:
\[ E I \frac{d^4 y}{ds^4} = p(s). \]
Energy proof of positive stiffness: The strain energy stored in bending is
\[ U[y] = \frac{1}{2}\int_{0}^{L} E I \left(\frac{d^2 y}{ds^2}\right)^2 ds. \]
Since \( E>0 \) and \( I>0 \), the integrand is nonnegative. Hence \( U[y]\ge 0 \) with equality iff \( d^2y/ds^2 = 0 \) a.e., i.e., \( y \) is at most linear (pure rigid translation/rotation). Therefore the bending stiffness operator is positive semidefinite and becomes positive definite once boundary conditions remove rigid modes. This is why compliant links still “restore” to shape.
Modal finite-DOF reduction (high-level): Choose basis functions \( \phi_k(s) \) and write \( y(s,t)=\sum_{k=1}^{m} \eta_k(t)\phi_k(s) \). Substituting into the beam model and projecting yields:
\[ \mathbf{M}_\eta \ddot{\boldsymbol{\eta}} + \mathbf{D}_\eta \dot{\boldsymbol{\eta}} + \mathbf{K}_\eta \boldsymbol{\eta} = \mathbf{r}(t), \]
where the reduced stiffness usually has entries
\[ (\mathbf{K}_\eta)_{ij} = \int_{0}^{L} E I \, \phi_i''(s)\phi_j''(s)\, ds. \]
Flexible robots appear in lightweight arms, space robots, and soft grippers, where stiffness–mass tradeoffs dominate.
4. Continuum Robots
Continuum robots are effectively elastic bodies without discrete joints. Their configuration is a curve \( \mathbf{r}(s,t)\in\mathbb{R}^3 \) and possibly a rotation \( \mathbf{R}(s,t)\in SO(3) \) along the backbone. The ideal model has infinite DOF, similar to rods in mechanics.
Cosserat rod form (high-level): Let internal force \( \mathbf{n}(s) \) and moment \( \mathbf{m}(s) \). Static balance is:
\[ \frac{d\mathbf{n}}{ds} + \mathbf{f}_{\text{ext}}(s) = \mathbf{0}, \qquad \frac{d\mathbf{m}}{ds} + \mathbf{r}'(s)\times \mathbf{n}(s) + \mathbf{l}_{\text{ext}}(s)=\mathbf{0}. \]
Constitutive laws relate curvature and twist to moments. For isotropic bending,
\[ \mathbf{m}(s) = \mathbf{K}_b \boldsymbol{\kappa}(s), \quad \mathbf{K}_b = \operatorname{diag}(E I_1, E I_2, G J). \]
Here \( \boldsymbol{\kappa}(s) \) is curvature–twist vector and \( GJ \) torsional stiffness. Unlike flexible robots, deformation is not assumed small; \( \boldsymbol{\kappa} \) may vary strongly.
Constant-curvature approximation: Many continuum arms are modeled with piecewise constant curvature to obtain a finite parameterization. For a single section: curvature magnitude \( \kappa \), bending plane angle \( \phi \), and length \( L \). The tip position relative to base is
\[ \mathbf{p}(\kappa,\phi) = \begin{bmatrix} \frac{1}{\kappa}(1-\cos(\kappa L))\cos\phi \\ \frac{1}{\kappa}(1-\cos(\kappa L))\sin\phi \\ \frac{1}{\kappa}\sin(\kappa L) \end{bmatrix}, \quad \kappa \ne 0, \]
and the limit \( \kappa \to 0 \) gives straight extension:
\[ \lim_{\kappa\to 0}\mathbf{p}(\kappa,\phi)= \begin{bmatrix}0\\0\\L\end{bmatrix}. \]
Proof of the limit: using Taylor series \( \sin x = x + O(x^3) \) and \( 1-\cos x = x^2/2 + O(x^4) \) for \( x=\kappa L \):
\[ \frac{1}{\kappa}(1-\cos(\kappa L)) = \frac{1}{\kappa}\left(\frac{\kappa^2 L^2}{2}+O(\kappa^4)\right) = \frac{\kappa L^2}{2}+O(\kappa^3)\to 0, \]
\[ \frac{1}{\kappa}\sin(\kappa L) = \frac{1}{\kappa}\left(\kappa L + O(\kappa^3)\right) = L + O(\kappa^2)\to L. \]
Continuum robots include tendon-driven “snake” robots, pneumatic soft arms, and concentric-tube robots. They excel in safe interaction and maneuvering in confined spaces.
5. Comparison Metrics and Design Trade-offs
Even at a high level, we can formalize distinctions using stiffness, DOF, and energy storage.
Effective DOF: rigid robots have finite DOF \( n \); flexible robots have \( n+m \) after modal truncation; continuum robots are idealized as \( n=\infty \) and approximated by piecewise parameters.
Stiffness-to-mass ratio: For a beam-like link of mass density \( \rho \) and area \( A \), bending stiffness per mass scales as:
\[ \frac{E I}{\rho A L^2}. \]
Larger values indicate near-rigid behavior; smaller values indicate significant compliance under load.
Tip deflection sensitivity: For a cantilever under tip force \( F \), Euler–Bernoulli gives:
\[ \delta_{\text{tip}} = \frac{F L^3}{3 E I}. \]
Rigid taxonomy corresponds to \( \delta_{\text{tip}}/L \ll 1 \), flexible taxonomy to \( \delta_{\text{tip}}/L \lesssim 10^{-2}\text{–}10^{-1} \), and continuum behavior when deformation is intentionally large.
6. Minimal Multi-language Demonstrations
These snippets compute (i) cantilever tip deflection for a flexible link, and (ii) constant-curvature tip position for a continuum section. They are small, self-contained examples aligned with the high-level nature of this lesson.
6.1 Python (NumPy)
import numpy as np
def cantilever_tip_deflection(F, L, E, I):
# delta = F L^3 / (3 E I)
return F * L**3 / (3.0 * E * I)
def continuum_tip_position(kappa, phi, L):
# constant-curvature section
if abs(kappa) < 1e-9:
return np.array([0.0, 0.0, L])
x = (1.0/kappa) * (1 - np.cos(kappa*L)) * np.cos(phi)
y = (1.0/kappa) * (1 - np.cos(kappa*L)) * np.sin(phi)
z = (1.0/kappa) * np.sin(kappa*L)
return np.array([x, y, z])
F, L, E, I = 10.0, 0.5, 70e9, 2.0e-10 # SI units
print("Flexible-link tip deflection (m):", cantilever_tip_deflection(F, L, E, I))
kappa, phi = 4.0, np.pi/6
print("Continuum tip position (m):", continuum_tip_position(kappa, phi, L))
6.2 C++ (Eigen)
#include <iostream>
#include <cmath>
#include <Eigen/Dense>
double cantileverTipDeflection(double F, double L, double E, double I){
return F * std::pow(L,3) / (3.0 * E * I);
}
Eigen::Vector3d continuumTipPosition(double kappa, double phi, double L){
if (std::abs(kappa) < 1e-9){
return Eigen::Vector3d(0,0,L);
}
double x = (1.0/kappa) * (1 - std::cos(kappa*L)) * std::cos(phi);
double y = (1.0/kappa) * (1 - std::cos(kappa*L)) * std::sin(phi);
double z = (1.0/kappa) * std::sin(kappa*L);
return Eigen::Vector3d(x,y,z);
}
int main(){
double F=10.0, L=0.5, E=70e9, I=2e-10;
std::cout << "Deflection: " << cantileverTipDeflection(F,L,E,I) << std::endl;
double kappa=4.0, phi=M_PI/6;
Eigen::Vector3d p = continuumTipPosition(kappa,phi,L);
std::cout << "Continuum tip: " << p.transpose() << std::endl;
return 0;
}
6.3 Java
public class HighLevelDeformationDemo {
static double cantileverTipDeflection(double F, double L, double E, double I){
return F * Math.pow(L,3) / (3.0 * E * I);
}
static double[] continuumTipPosition(double kappa, double phi, double L){
if (Math.abs(kappa) < 1e-9){
return new double[]{0.0, 0.0, L};
}
double x = (1.0/kappa) * (1 - Math.cos(kappa*L)) * Math.cos(phi);
double y = (1.0/kappa) * (1 - Math.cos(kappa*L)) * Math.sin(phi);
double z = (1.0/kappa) * Math.sin(kappa*L);
return new double[]{x, y, z};
}
public static void main(String[] args){
double F=10.0, L=0.5, E=70e9, I=2e-10;
System.out.println("Deflection: " + cantileverTipDeflection(F,L,E,I));
double kappa=4.0, phi=Math.PI/6;
double[] p = continuumTipPosition(kappa,phi,L);
System.out.printf("Continuum tip: [%.5f, %.5f, %.5f]%n", p[0], p[1], p[2]);
}
}
6.4 Matlab / Simulink-ready functions
function delta = cantilever_tip_deflection(F,L,E,I)
% delta = F L^3 / (3 E I)
delta = F * L^3 / (3*E*I);
end
function p = continuum_tip_position(kappa,phi,L)
% constant curvature tip position
if abs(kappa) < 1e-9
p = [0;0;L];
else
p = (1/kappa) * [ (1-cos(kappa*L))*cos(phi);
(1-cos(kappa*L))*sin(phi);
sin(kappa*L) ];
end
end
In later courses, these ideas become building blocks for elastic dynamics, control of soft robots, and simulation.
7. Problems and Solutions
Problem 1 (Rigid vs. Flexible Criterion): A robot link of length \( L \) behaves as a cantilever with tip force \( F \). Using \( \delta_{\text{tip}} = \frac{F L^3}{3 E I} \), derive a condition (in terms of a small tolerance \( \alpha \)) under which the link can be treated as rigid.
Solution:
Treat the link as rigid if relative deflection is tiny: \( \delta_{\text{tip}}/L \le \alpha \) with \( \alpha \ll 1 \). Substituting,
\[ \frac{F L^3}{3 E I}\cdot\frac{1}{L} \le \alpha \quad \Longleftrightarrow \quad \frac{F L^2}{3 E I} \le \alpha. \]
Thus high stiffness \( EI \) or small loads \( F \) justify rigid modeling.
Problem 2 (Energy Positivity): For the beam strain energy \( U[y] = \frac{1}{2}\int_0^L E I (y''(s))^2 ds \), show that the associated stiffness operator is positive semidefinite.
Solution:
Since \( E>0 \), \( I>0 \), and squaring yields \( (y'')^2 \ge 0 \), the integrand is nonnegative for all admissible \( y \). Therefore \( U[y]\ge 0 \). Equality implies \( y''(s)=0 \) a.e., i.e., rigid modes only. Hence the operator is positive semidefinite and becomes positive definite with boundary constraints that remove rigid modes.
Problem 3 (Continuum Straight-Limit): Using the constant-curvature tip model, prove that \( \mathbf{p}(\kappa,\phi)\to [0,0,L]^T \) as \( \kappa\to 0 \).
Solution:
Use Taylor expansions near zero: \( \sin x = x + O(x^3) \), \( 1-\cos x = x^2/2 + O(x^4) \). With \( x=\kappa L \), the transverse terms scale as \( (1/\kappa)(x^2/2)=\kappa L^2/2 \to 0 \), while the axial term is \( (1/\kappa)x = L + O(\kappa^2)\to L \). Hence the limit is a straight section.
Problem 4 (Mode Truncation Idea): Suppose a flexible link is expanded as \( y(s,t)=\sum_{k=1}^{m}\eta_k(t)\phi_k(s) \). Explain why increasing \( m \) moves the model toward continuum behavior.
Solution:
Each mode adds an independent deformation DOF. As \( m \) increases, the span of the basis \( \{\phi_k\} \) can represent finer spatial variations, approximating a fully distributed field. In the limit \( m\to\infty \), the discrete model converges to the continuum PDE.
8. Summary
We classified robots by deformation: rigid-link robots assume negligible strain and finite DOF; flexible robots incorporate small elastic deflections and are often reduced by modal methods; continuum robots model large distributed deformation through rod/curve frameworks and are approximated by constant-curvature segments. These categories shape design and control choices even before detailed kinematics are introduced.
9. References
- Truesdell, C., & Noll, W. (1965). The Non-Linear Field Theories of Mechanics. Springer. (Foundational continuum/rod mechanics for robots.)
- Antman, S.S. (1995). Nonlinear Problems of Elasticity. Springer. (Rod and beam theory underpinning flexible/continuum modeling.)
- Siciliano, B., & Book, W.J. (1988). A singular perturbation approach to control of lightweight flexible manipulators. International Journal of Robotics Research, 7(4), 79–90.
- Picken, J., & Bayo, E. (1990). Dynamics of flexible manipulators using assumed modes. IEEE Transactions on Robotics and Automation, 6(2), 186–195.
- Chirikjian, G.S. (1994). Kinematics of hyper-redundant robotic locomotion with applications to grasping. Journal of Robotic Systems, 11(8), 747–760.
- Webster, R.J., & Jones, B.A. (2010). Design and kinematic modeling of constant curvature continuum robots. International Journal of Robotics Research, 29(13), 1661–1683.
- Renda, F., et al. (2018). A unified approach for continuum robots modeling based on Cosserat theory. IEEE Robotics and Automation Letters, 3(4), 3273–3280.