Stiffness Control of Surgical Continuum Manipulators.
ABSTRACT This paper introduces the first stiffness controller for continuum robots. The control law is based on an accurate approx- imation of a continuum robot's coupled kinematic and static force model. To implement a desired tip stiffness, the controller drives the actuators to positions corresponding to a deflected robot con- figuration that produces the required tip force for the measured tip position. This approach provides several important advantages. First, it enables the use of robot deflection sensing as a means to both sense and control tip forces. Second, it enables stiffness con- trol to be implemented by modification of existing continuum robot position controllers. The proposed controller is demonstrated ex- perimentally in the context of a concentric tube robot. Results show that the stiffness controller achieves the desired stiffness in steady state, provides good dynamic performance, and exhibits stability during contact transitions.
- [show abstract] [hide abstract]
ABSTRACT: Unlike traditional rigid linked robots, soft robotic manipulators can bend into a wide variety of complex shapes due to control inputs and gravitational loading. This paper presents a new approach for modeling soft robotic manipulators that incorporates the effect of material nonlinearities and distributed weight and payload. The model is geometrically exact for the large curvature, shear, torsion, and extension that often occur in these manipulators. The model is based on the geometrically exact Cosserat rod theory and a fiber reinforced model of the air muscle actuators. The model is validated experimentally on the OctArm V manipulator, showing less than 5% average error for a wide range of actuation pressures and base orientations as compared to almost 50% average error for the constant-curvature model previously used by researchers. Workspace plots generated from the model show the significant effects of self-weight on OctArm V.IEEE Transactions on Robotics 09/2008; · 2.57 Impact Factor
- [show abstract] [hide abstract]
ABSTRACT: In this paper, a novel type of impedance controllers for flexible joint robots is proposed. As a target impedance, a desired stiffness and damping are considered without inertia shaping. For this problem, two controllers of different complexity are proposed. Both have a cascaded structure with an inner torque feedback loop and an outer impedance controller. For the torque feedback, a physical interpretation as a scaling of the motor inertia is given, which allows to incorporate the torque feedback into a passivity-based analysis. The outer impedance control law is then designed differently for the two controllers. In the first approach, the stiffness and damping terms and the gravity compensation term are designed separately. This outer control loop uses only the motor position and velocity, but no noncollocated feedback of the joint torques or link side positions. In combination with the physical interpretation of torque feedback, this allows us to give a proof of the asymptotic stability of the closed-loop system based on the passivity properties of the system. The second control law is a refinement of this approach, in which the gravity compensation and the stiffness implementation are designed in a combined way. Thereby, a desired static stiffness relationship is obtained exactly. Additionally, some extensions of the controller to viscoelastic joints and to Cartesian impedance control are given. Finally, some experiments with the German Aerospace Center (DLR) lightweight robots verify the developed controllers and show the efficiency of the proposed control approach.IEEE Transactions on Robotics 05/2008; · 2.57 Impact Factor
- [show abstract] [hide abstract]
ABSTRACT: This article presents a model-based compensator for canceling friction in the tendon-driven joints of a haptic-feedback teleoperator. Unlike position-tracking systems, a teleoperator involves an unknown environment force that prevents the use of tracking position error as a feedback to the compensator. Thus, we use a model-based feedforward friction compensator to cancel the friction forces. We provide conditions for selecting compensator parameters to ensure passivity of the teleoperator and demonstrate performance experimentally.IEEE Transactions on Robotics 12/2007; 23(6):1240-1246. · 2.57 Impact Factor
334IEEE TRANSACTIONS ON ROBOTICS, VOL. 27, NO. 2, APRIL 2011
Stiffness Control of Surgical
Mohsen Mahvash, Member, IEEE, and Pierre E. Dupont, Fellow, IEEE
Abstract—This paper introduces the first stiffness controller for
imation of a continuum robot’s coupled kinematic and static force
model. To implement a desired tip stiffness, the controller drives
the actuators to positions corresponding to a deflected robot con-
figuration that produces the required tip force for the measured
First, it enables the use of robot deflection sensing as a means to
both sense and control tip forces. Second, it enables stiffness con-
position controllers. The proposed controller is demonstrated ex-
that the stiffness controller achieves the desired stiffness in steady
state, provides good dynamic performance, and exhibits stability
during contact transitions.
rod, kinematics, stiffness control.
the internal deformation of mechanically coupled elastic com-
ponents of the body . Continuum robots include steerable
catheters , multibackbone snake-like robots , , and con-
centric tube robots , . Two examples are shown in Fig. 1.
Continuum manipulators are particularly useful for applications
that require reaching inside confined spaces, such as is required
in minimally invasive surgery. Thus, they have been proposed
Prior work on the control of continuum manipulators has
been limited to position control , , . For robotic tasks
its generalized form, i.e., impedance control, should be superior
to position control. In impedance control, a robust dynamical
relation between the environment force and the manipulator tip
movement is established , .
CONTINUUM manipulator has the shape of a smooth
curve, whose curvature can be controlled by adjusting
Manuscript received February 26, 2010; revised August 28, 2010; accepted
January 4, 2011. Date of publication February 17, 2011; date of current ver-
sion April 7, 2011. This paper was recommended for publication by Associate
Editor S. Hirai and Editor K. Lynch upon evaluation of the reviewers’ com-
ments. This work was supported by the National Institutes of Health under
Grant R01HL073647 and Grant R01HL087797.
M. Mahvash is with Harvard Medical School, Brigham and Women’s Hos-
pital and the Cardiac Surgery Department, Veterans Affairs Boston Healthcare
System, West Roxbury, MA 02132 USA (e-mail: email@example.com).
P. Dupont is with the Department of Cardiac Surgery, Children’s Hos-
pital Boston, Harvard Medical School, Boston, MA 02115 USA (e-mail:
Color versions of one or more of the figures in this paper are available online
Digital Object Identifier 10.1109/TRO.2011.2105410
diameter multi-backbone robot .
Examples of continuum manipulators. (a) Twenty-centimeter-long
Furthermore, it can be useful to vary the stiffness of a con-
tinuum robot during minimally invasive surgery. For example,
reduction of the stiffness of the robot’s tip (or any other points
on the robot) can enable safe navigation inside delicate con-
fined spaces, e.g., to avoid wall puncture. In contrast, a high tip
stiffness may be advantageous during tissue manipulation.
Stiffness control can also be used to provide haptic feedback
during teleoperation of a continuum manipulator. In this sce-
nario, master and slave controllers implement the same stiffness
on the continuum manipulator and on the master arm held by
the user , .
In general, the inputs of a stiffness controller are a tip-
configuration set point and a desired stiffness. The desired tip
force (or wrench) is calculated based on the difference between
the set-point configuration and the actual configuration of the
robot tip. For rigid robots, tip forces can be directly mapped
to joint forces and torques using the transpose of the Jacobian
joint positions to tip configuration. Thus, a rigid robot, by vary-
ing its joint torques, can theoretically vary its tip force with
no displacement of its joints or tip. In practice, small joint dis-
placements and link deflections do occur, but these are small
enough to be negligible. Consequently, actual tip position can
be calculated directly from joint positions.
In contrast, continuum robots are flexible by design, since
robot shape is controlled by the storage and release of elas-
tic energy in the robot’s component parts. Thus, the kinematic
mapping and the quasi-static force mapping are coupled. Con-
figuration or force sensing at the robot’s tip is needed to either
directly measure tip configuration or to compute it. Further-
more, the mapping between actuator torques and tip forces in a
continuum robot must include an additional term to account for
the rate of elastic energy change .
The contribution of this paper is a stiffness controller that
is easily applied to all types of continuum robots and does
not require using force or torque sensors. The control law is
developed in the context of a kinematic and static force map
1552-3098/$26.00 © 2011 IEEE
MAHVASH AND DUPONT: STIFFNESS CONTROL OF SURGICAL CONTINUUM MANIPULATORS 335
that is approximated by the product of two transformations:
The first transformation calculates the unloaded kinematics of
the robot, while the second calculates robot deformation due to
applied loading. This approach has several advantages. First, it
facilitates the use of robot deflection to both sense and apply tip
forces. It also permits the use of efficient, noncontact kinematic
models that are readily available for various types of continuum
robots , , , .
The controller described here can be applied to any con-
tinuum robot that can be accurately approximated by a sin-
gle Cosserat rod (of varying mechanical properties along its
length) for the purpose of computing deformation due to ex-
ternal loading , . This single-rod assumption applies
when the relative motion between the elastic components of the
robot in response to the application of external loads can be
neglected. The rod model also neglects any shear of the robot’s
cross section or longitudinal extension due to applied loads and
assumes linear constitutive behavior. These latter assumptions
are accurate for long, thin continuum robots and are typical of
those used in existing continuum robot kinematic models ,
, , , .
culation of robot deflection due to external forces by solving an
initial value problem in which six state variables are integrated
time implementation is straightforward, and furthermore, it has
been shown that the error introduced by the rod approximation
for concentric tube robots is small .
Gravity loading of the robot is not considered here, since
the associated tip deflection is negligible (< 0.1 mm) for the
experimental robot considered here. If robot deflection due to
gravity is important, it can be implemented with the controller
by either of two means. The first approach is to incorporate
it in the unloaded kinematic model of the robot. The second
approach is to include it as a distributed load when computing
the deflection using the rod model.
the following section. Section III presents the general kinematic
and force mappings of continuum robots. The deflection model
using the special Cosserat rod model is presented in Section IV.
In Section V, the stiffness controller is implemented using an it-
desired tip force. Efficacy of the proposed controller is demon-
strated experimentally for a 3-degree-of-freedom (DOF) con-
centric tube robot in Section VI. Haptic feedback with matched
stiffness controllers is also demonstrated. Conclusions appear
in the final section.
II. RELATED WORK
Unloaded kinematic models have been developed for a vari-
ety of continuum robots. Schematics of the two types appearing
in Fig. 1 are shown in Fig. 2. Fig. 2(a) shows a concentric tube
robot, which is constructed by telescopically extending con-
centrically combined precurved superelastic tubes. The robot’s
shape and tip location are controlled via the kinematic inputs
robot. (b) Tendon-driven robot with flexible backbone.
Schematics of two types of continuum robots. (a) Concentric tube
their proximal ends (q1,...,q8). The unloaded kinematic mod-
els for this type of robot depend on the modeling assumptions.
When the tubes are considered torsionally rigid, the kinemat-
ics are described by algebraic equations . For long or highly
curved tubes, torsional compliance can be important and the
kinematics take the form of differential equations in arc length
with split boundary conditions .
Fig. 2(b) depicts a tendon-driven continuum robot of the type
often used in steerable catheters and for distal dexterity en-
hancement in minimally invasive surgery. These robots possess
a central flexible backbone that is deflected by symmetrically
arranged wires ,  or tubes , . As shown in the
schematic, spacer disks are attached to the central backbone.
The wires or tubes slide through holes in all disks except for
the most distal one to which they are attached. Unloaded kine-
matic models are developed by relating central backbone shape
totendon length q1,q2, and q3,.While wiretendons are
limited to tensile forces, tubes can also be used in compression
and their bending stiffness must be accounted for in the kine-
matics , . For this type of continuum robot, the mapping
between forces in the actuating tubes and tip forces has also
been derived . Using this model, tube forces were used to
infer tip forces.
Stability and vibration are of considerable concern when a
flexible robot is in contact with its environment. This topic has
been studied extensively in the literature in the context of both
a stability analysis of the proposed controller are beyond the
scope of this paper.
III. KINEMATIC AND FORCE MAPPINGS OF
All continuum robots can be modeled by a space curve
r(q,s) ∈ ?3that is a function of the n kinematic input vari-
ables q ∈ ?nand the arc length s, together with coordinate
frames defined at the robot’s base (frame B) and tip (framesˆT
and T). These are shown in Fig. 3. Referring back to Fig. 2,
336 IEEE TRANSACTIONS ON ROBOTICS, VOL. 27, NO. 2, APRIL 2011
coordinate frame, while B, P,ˆT, and T are robot body frames.ˆT and T
are tip frames without and with the application of tip wrench F, respectively.
Coordinate transformations are denoted by gbt, gbˆt, and gˆtt.
Continuum robot represented as a space curve (solid line). W is world
the space curve corresponds to the common tube centerline of
(a) and the curve of the central backbone in (b). In contrast to
rigid robots, two tip framesˆT and T are defined. The former
corresponds to the tip configuration when no external loads are
applied, while the latter includes the deformation arising from a
wrenchF ∈ ?6appliedexternallyatthetip.Thefirstthreecom-
ponents of F correspond to the tip force, while the latter three
used in the remainder of the paper are defined in Table I.
The configuration of frame C relative to frame B is a rigid
body transformation that can be written in homogeneous coor-
dinates as follows:
where Rbc∈ SO(3) is the rotation matrix, and pbc∈ ?3is the
translationvectorbetweenframesB andC .Thisexpression
also represents a mapping from kinematic input space q ∈ Q to
the special Euclidean group SE(3).
For the continuum robot of Fig. 3, the configuration of the
of two transformations
gbt(q,F) = gbˆt(q) gˆtt(q,F)
where gbˆtis the configuration of frameˆT relative to B, and gˆtt
is the configuration of T relative toˆT. The first transformation
the applied loading. Thus, the overall kinematic map gbt(q,F)
is a function of both the kinematic variables and the external
The force mapping equation for continuum robots can be
derived from the principle of virtual work as was done in 
τ = JT
Here, τ ∈ ?nis the vector of actuator forces and torques,
E(q,F) ∈ ? is the elastic energy of the manipulator, and
Jbt(q,F) is the Jacobian matrix mapping actuator velocities
to tip velocity . Of course, for rigid robots, the elastic en-
ergy term drops out and this equation reduces to the standard
form τ = JT
To implement stiffness control in a rigid robot, the force
mapping equation must be used to relate desired tip wrenches to
also possible to implement stiffness control using the kinematic
mapping (2). In this approach, (2) is solved for the actuator
positions corresponding to the desired tip wrench Fdand the
actual measured tip configuration gm
Comparing the two approaches, stiffness control based on
the force mapping becomes an actuator force/torque control
MAHVASH AND DUPONT: STIFFNESS CONTROL OF SURGICAL CONTINUUM MANIPULATORS 337
problem, while stiffness control using the kinematic map is an
actuator position control problem. Use of the force mapping
requires the use of joint force/torque sensors  or actuator
currents . In contrast, actuator position control can be per-
formed accurately using the existing actuator encoders.
efficiently. To explore this question, assume that it is desired to
six independent joint variables, while its tip is held rigidly fixed
inputs, measured tip configuration gm
Fd, and its output can be written in terms of its desired actuator
bt, and desired tip wrench
bt= gbˆt(qd) gˆtt(qd,Fd).
Driving the actuator displacements to qdproduces deforma-
tionsofthecontinuum robotthatproduce thedesiredtipwrench
Fdat the measured tip configuration of the robot. Note that for
the general case of contact with a soft environment, producing
a desired tip wrench will also cause the tip configuration to
The root finding problem of solving (4) for qdcan be per-
The term gbˆt(·) is the unloaded forward kinematic model for
which numerically efficient formulations are available , ,
, . The second term, gˆtt(·,·) is the tip displacement
produced by application of tip wrench on the unloaded robot.
As described in the following, given gbˆt(qd), an ef-
ficiently computed estimate of the product gbt(qd,Fd) =
gbˆt(qd) gˆtt(qd,Fd) can be obtained using the special Cosserat
IV. DEFLECTION MODEL
To obtain gbt(q,F) = gbˆt(q) gˆtt(q,F), we approximate any
continuum manipulator as a single elastic rod, whose curvature
q andtipwrenchF = 0.Thus,thecurvatureisselectedtomatch
the robot’s backbone curve r(q,s), and its stiffness is selected
to match the composite stiffness of all elastic components that
comprise the robot.
Deflection of the robot is computed as deflection of the rod in
response to tip wrench F. This model is approximate in that it
does not account for relative motions of the robot’s elastic com-
ponents in response to the tip wrench. As demonstrated in our
negligible. For more general cases, when the tip wrench causes
significant relative motion between the elastic components of a
case is, however, beyond the scope of the paper.
The special Cosserat rod model is well known in the mechan-
ics literature  and has also been employed in the robotics
overview of the model and its numerical solution are presented.
A. Strain and Curvature of a Rod
As shown in Fig. 3, coordinate frames can be defined along
the backbone curve r(q,s). In the following, actuator values q
are assumed constant and are omitted as arguments. Since these
frames are intended to track material deformations of the rod’s
a base frame B with one axis (i.e., the z-axis) aligned with the
curve’s tangent and then to slide this frame without rotation
about the local z-axis along r(s) .
The resulting Bishop frame P at arc length s can be written
as gbp(s), s ∈ [0,l], where l is the length of the robot. Its origin
lies on r(s) and experiences a body-frame rate of change with
respect to arc length v(s) ∈ ?3given by
v(s) = R−1
where Rbp(s) is the rotation matrix of gbp(s). The rate of
change of frame P’s coordinate axis unit vectors Rbp(s) =
[ex(s),ey(s),ez(s)] with respect to arc length satisfy the body-
in which u(s) ∈ ?3and the square bracket on the vector u
indicates the skew-symmetric matrix form
The vectors u(s) and v(s) are the angular and linear strains,
respectively, experienced by the cross section. Thus, u(s) has
the units of curvature, and its x- and y-components correspond
to the bending of the rod, while its z-component corresponds to
the twisting of the rod. Similarly, the x- and y-components of v
component is vz= 1 + εzin which εzis the longitudinal strain.
v(s) = [00 1]T, s ∈ [0,l].
Angular and linear strains u and v provide body-frame de-
scriptions of the curved shape of the rod. It can be helpful to
velocities if time is substituted for arc length. Thus, coordinate
frames gbp(s) are obtained as the solution to the differential
ds(gbp(s)) = gbp(s)
This differential equation can be integrated numerically from
base to tip or tip to base using a method that preserves the group
structure of SE(3). A variety of numerical integration methods
are available for this purpose , .
The initial curvature of the robot prior to the application of
external loads is denoted by ˆ u(s). Given an unloaded kinematic
model that computes gbp(s), the unloaded shape of the rod used
338 IEEE TRANSACTIONS ON ROBOTICS, VOL. 27, NO. 2, APRIL 2011
to model robot deflection can be computed as follows:
[ˆ u(s)] = R−1
B. Rod Deformation Due to Applied Loads
To compute rod deformations, two equations are needed. The
first is a constitutive model that relates cross-section strains u
and v to the bending moment m ∈ ?3and force n ∈ ?3acting
on the cross section. Since shear of the cross section and rod
extension are neglected, only the relationship between u and m
is needed. The second equation relates cross-section bending
moment and force to the external loads. Both are described in
When a rod with initial curvature ˆ u(s) is deformed to a new
linear elastic behavior, the bending moment at any point s along
the rod is given by
m(s) = K(s)(u(s) − ˆ u(s))
where K(s) is the frame-invariant stiffness tensor. For a large
class of rods, K(s) is given by
Ex(s) and Ey(s) are moduli of elasticity, Ix(s) and Iy(s) are
area moments of inertia, Jp(s) is the polar moment of inertia,
and G(s) is the shear modulus. These values should be selected
so that the rod stiffness matches the overall continuum robot
stiffness as a function of arc length.
To relate cross-section bending moment and force to the ex-
ternal loads, we employ the equilibrium equation of the special
Cosserat rod model . Written in the body-frame coordinates
of Fig. 3, the differential equation governing bending moment
m and force n as a function of arc length s is given by
where φ(s) and η(s) are the applied force and torque per unit
length of the rod and the bracket notation is as defined in (7).
For simplicity of exposition, it is assumed that only tip loads
areappliedtotherobot,andtherefore,η(s) = φ(s) = 0,ands ∈
u and force n
+ [v]n(s) +dK(s)
= η(s) − [u(s)]m(s) − [v(s)]n(s)
= φ(s) − [u(s)]n(s)
[u(s)]K(s)?u(s) − ˆ u(s)?
?u(s) − ˆ u(s)??
The boundary conditions for these equations u(l), n(l) can be
specified from the body-frame wrench Fbapplied at the robot’s
?nT(l) mT(l)?T= Fb
u(l) = K−1m(l) + ˆ u(l)
and (14) can be solved numerically by integrating backward in
arc length from s = l → 0 . Since (13) is written in body
coordinates, the body-frame twist velocity [vT,uT]Tmust be
simultaneously integrated such that the equations evolve on
SE(3). As detailed in , a first-order Crouch–Grossman
method  provides computational efficiency. The result of
this integration is the desired estimate of the transformation
between the base and tip of the robot gbt= gbˆtgˆtt.
Note that in the case of a multisection continuum robot, there
are often discontinuities in K(s) and ˆ u(s) at the section bound-
aries. In these cases, integration of (14) is performed section
by section from the tip to the base. While (15) provides the
initial value for u(s) at the tip of the robot, the initial value for
each subsequent section is obtained by equating bending mo-
ments across section boundaries and using (11) to solve for the
corresponding initial value of u(s) to use in (14).
In stiffness control, the desired tip wrench Fd
lated in a local frame at the tip of the robot, whose axes always
remain parallel to the axes of the world frame.
shape of the rod. Specifically, if the base of the rod is positioned
at the origin of the world frame, then gwbin Fig. 3 is the identity
matrix and the desired body-frame tip wrench Fd
(15) is related to the desired world frame tip wrench by
where Rbtis the rotation matrix of gbt(qd,Fd
gral must now be solved iteratively, convergence is rapid when
the tip wrench varies smoothly and the solution is seeded using
the desired rod shape from the previous time step.
wis often calcu-
bto be used in
b). While the inte-
V. STIFFNESS CONTROLLER
The task of the controller is to create a user-defined stiffness
at the tip of the continuum manipulator. If the stiffness is speci-
fied for all DOF of the robot tip, a pure stiffness controller can
be implemented. In many medical applications, however, it is
desirable to control the stiffness in certain directions, e.g., tip
position, and to control the motion in other directions, e.g., tip
orientation. Because of its practical importance, this latter case
work described in the following can be easily adapted to other
combinations of stiffness- and motion-controlled coordinates.
The desired tip force fd∈ ?3is computed using the user-
defined diagonal stiffness matrix Kd∈ ?3×3, based on the dif-
ference between measured robot tip position pm
reference tip position pr
bt∈ ?3, and a
bt∈ ?3as follows: