wikillm

Concept · 2 papers · updated 2026-10-25

Piecewise constant curvature (PCC)

Piecewise constant curvature models a soft robot segment as a circular arc with one curvature, and maps tendon lengths to its length, bending plane and curvature. Kinematic PCC is explicit and fast; mechanics-based PCC adds static balances; multisection designs add tendon decoupling. Trade-off: cheap and explicit, but valid only when each section bends into an arc, and it does not capture torsion.

soft-roboticsrobot-modelingkinematics

Markdown6 min read

AI-compiled overview, updated 2026-10-25, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.

Overview

A piecewise constant curvature (PCC) model describes each segment of a soft body as a circular arc with a single constant curvature κ. The segment is placed by three arc parameters: its length, the angle φ of its bending plane, and its curvature 2112.03645 §VI.B. The review classifies PCC as a geometrical model: the body is assumed to follow a chosen curve, here a sequence of arcs 2112.03645 §VI.

The kinematics trace back to Webster and Jones' constant-curvature work, which the review cites 2112.03645 §VI.B. The shared core is the arc transform, a homogeneous pose at arc length s along the segment. Variants differ in whether they stop at this kinematic map or add a mechanical balance on top of it.

Variants

Kinematic PCC (tendon lengths to arc)

The arc parameters follow from three tendon lengths and the routing distance d between the tendons and the backbone. The review gives an explicit conversion: the mean tendon length sets the arc length, and a bending-plane angle and a curvature are computed from the differences between tendon lengths 2112.03645 §VI.B. This is a closed-form map with no solver. The review gives the conversion without a derivation and cites Jones et al. for it 2112.03645 §VI.B. Card: Soft Robots Modeling.

Mechanics-based PCC

Mechanics-based PCC models add static balances to the arc model. The review writes the Camarillo-type tendon response in the form y = A† q, where A† is a pseudo-inverse 2112.03645 §VI.B. The review does not define the symbols further, so check the primary source before implementing it. It also gives no accuracy figure for this variant.

When to use which

The review's comparison is qualitative: it describes typical uses and main limitations per family 2112.03645 tab. 1, and its advice on choosing a model is in 2112.03645 §X.

SituationUseWhy
Kinematic control of an arc-like segment, with an explicit tendon-to-shape mapKinematic PCCClosed-form and fast; the review lists kinematic control as its typical use 2112.03645 tab. 1
Slender body where a consistent mechanical model matters for control or real-time simulationCosserat-rod methods, see Cosserat rod theoryThe review recommends GVS over the constant-curvature models it covers 2112.03645 §X
Several bending sections in series whose tendons pass through each otherMultisection PCC with a tendon-group rotation (see the variant above)The 2412.03508 design uses a 40° rotation to command sections separately 2412.03508 §III-C; its decoupling is shown only for steady postures 2412.03508 §V
Closed-loop control of tendon tension is needed on top of the shape mapKinematic PCC plus a PID tension termThe 2412.03508 design keeps tendons taut this way, but reports no gains and no tracking error 2412.03508 §III-D, §IV
Loads, friction or tendon hysteresis matter, or the posture is not steadyNot PCC alone; check a dynamic or continuum modelThe 2412.03508 model is steady-state only and assumes small external loads and friction 2412.03508 §III-A
Body that does not bend into a single arc, or where torsion mattersNot PCCThe review lists the assumed shape and torsion as main limitations of geometric models 2112.03645 tab. 1
Design of a new soft structure with complex 3D deformationContinuum FEM, see Finite element methodThe review describes FEM as costly but broad in the physics it covers 2112.03645 tab. 1
Fast, physics-agnostic model, and measured data exist for this exact designSurrogate model, see Cosserat rod theory for the physics-based alternativeThe review calls surrogates fast and physics-agnostic, but says they need large data per design 2112.03645 tab. 1

Multisection PCC with tendon decoupling

Several PCC sections stacked along one backbone share tendons: the tendons of a distal section run through the proximal sections and change their shape 2412.03508 §III-B. The 2412.03508 design applies the kinematic map to each of its three sections, with three tendons each. It sums the tendon contributions per tendon group, and it rotates the bending-plane angle of the inner groups by 40°. Arc length and curvature do not change under that rotation, so each section can be commanded separately [arxiv:2412.03508 §III-C]. The paper gives the decoupling as a sum over groups, not as a numerical matrix; the Jacobian is left symbolic 2412.03508 §III-C.

The same card adds a closed-loop term: the tendon command is the kinematic rate plus a PID term on tendon-tension error. Its gains, reference tension and update rules are not stated 2412.03508 §III-D. The forward map is derived for a posture with two tendons of equal length and then extended by rotation. The paper does not say how the solver handles other postures 2412.03508 §III-B. Card: Design and Control of an Ultra-Slender Push-Pull Multisection Continuum Manipulator.

Mechanics-based PCC has no comparative result in the review. Choose it only after checking the primary source for its equations.

Implementation sketch

Language-agnostic pseudocode of the kinematic core. The conversion and the arc transform follow the review's equations 2112.03645 §VI.B. The guards and the atan2 choice are ours, not the review's.

Pseudocode
# Arc parameters from three tendon lengths and routing distance d
# [arxiv:2112.03645 §VI.B]
def arc_from_tendons(l1, l2, l3, d):
    # Mean tendon length, used as the arc length of the segment
    l = (l1 + l2 + l3) / 3
    # Bending-plane angle; atan2 keeps the quadrant (our choice, the
    # review writes atan of the ratio)
    phi = atan2(sqrt(3) / 3 * (l2 + l3 - 2 * l1), l2 - l3)
    # Curvature from the spread of the tendon lengths over d
    # The square-root term is never negative, so sqrt is safe
    spread = l1**2 + l2**2 + l3**2 - l1*l2 - l1*l3 - l2*l3
    kappa = (2 / d) * sqrt(spread) / (l1 + l2 + l3)
    return l, phi, kappa

# Homogeneous transform at arc length s on the segment
# [arxiv:2112.03645 §VI.B], with the 1/k entries read as 1/kappa
# (the review is inconsistent here; our reading)
def arc_transform(kappa, phi, s):
    c, sn = cos(phi), sin(phi)
    ks = kappa * s
    return [
        [c * cos(ks), -sn, c * sin(ks), c * (1 - cos(ks)) / kappa],
        [sn * cos(ks), c, sn * sin(ks), sn * (1 - cos(ks)) / kappa],
        [-sin(ks), 0, cos(ks), sin(ks) / kappa],
        [0, 0, 0, 1],
    ]

# Our note: at kappa = 0 the 1/kappa terms diverge. Use the straight-line
# limit (translation s along the z-axis) instead of dividing by zero.

The multisection variant adds one step on top of the kinematic core. Each tendon group is the sum of the shares of the sections it passes through, and the inner sections' shares are rotated by 40° 2412.03508 §III-C. The sketch below shows only that structure; the inverse map and the Jacobian are not given in full on the card, and the PID terms are not specified.

Pseudocode
# Group shares for a three-section manipulator, after the 40 degree rotation
# [arxiv:2412.03508 §III-C]
def group_a(c_in, c_mid, c_out):
    # Outer tendons carry a rotated share of each inner section
    # g1 and g2 are the rotated maps; f_inv maps shape to tendon lengths
    return g1(c_in) + g2(c_mid) + f_inv(c_out)

def group_b(c_in, c_mid):
    return g2(c_in) + f_inv(c_mid)

def group_c(c_in):
    return f_inv(c_in)

Contradictions

  • Arc length is defined differently. The review takes the arc length as the mean tendon length 2112.03645 §VI.B. The 2412.03508 card's forward map uses l_c = l_1 + l_2 + l_3 − 3nh, where n is the number of segments between guide disks and h the disk height 2412.03508 §III-B. The two cards do not say how these relate, so do not mix them in one implementation.
  • Same square-root term, different curvature cards. Both cards write the same square-root term from the tendon lengths: l_m on the 2412.03508 card 2412.03508 §III-B, and the review's κ numerator [arxiv:2112.03645 §VI.B]. The 2412.03508 card does not give its κ formula, so we cannot say whether the two curvature maps agree.
  • The review flags an inconsistent use of 1/k and 1/κ in the PCC matrix and a tendon formula without derivation 2112.03645 §VI.B; see the sketch above for how we read them.

Papers

Source and license

Compiled from the papers listed on this page, all published under CC BY, CC BY-SA or CC0, with citations. See each paper's page for its authors and license.