Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2013 May 16.
Published in final edited form as: IEEE Int Conf Robot Autom. 2007:1887–1892. doi: 10.1109/robot.2007.363597

Inverse Kinematics of Concentric Tube Steerable Needles

Patrick Sears 1, Pierre E Dupont 2
PMCID: PMC3655419  NIHMSID: NIHMS462483  PMID: 23685532

Abstract

Prior papers have introduced steerable needles composed of precurved concentric tubes. The curvature and extent of these needles can be controlled by the relative rotation and translation of the individual tubes. Under certain assumptions on the geometry and design of these needles, the forward kinematics problem can be solved in closed form by means of algebraic equations. The inverse kinematics problem, however, is not as straightforward owing to the nonlinear map between relative tube displacements and needle tip configuration as well as to the multiplicity of solutions as the number of tubes increases. This paper presents a general approach to solving the inverse kinematics problem using a pseudoinverse solution together with gradients of nullspace potential functions to enforce geometric and mechanical constraints.

I. Introduction

Needles are used to deliver drugs, implants and surgical tools to locations throughout the body. A fundamental limitation on the variety and complexity of procedures for which needles can be used is the extent to which a needle can be steered around delicate or bony structures during insertion as well as the capability to articulate the needle tip at the target site.

Recently, needles composed of precurved concentric tubes have been proposed as a technology which is capable of substantially increasing steerability and tip control in comparison to existing needles [10],[12],[13]. In this approach, the initial curvatures of the tubes interact to produce the mutual curvature along the length of the needle. Needle curvature can be controlled by rotating and translating the tubes with respect to each other. Fig. 1 depicts an example comprised of four tubes.

Figure 1.

Figure 1

Four-tube steerable needle with forceps grasping a suture needle.

While closed-form inverse kinematic equations have been derived for several simple needle designs [10], a general approach to inverse kinematics is needed which can be employed for both closed-loop control and surgical planning. The method must be computationally efficient to be useful for control and should also, in the case of kinematic redundancy, enable exploration of the self motion manifold to compare alternative paths to surgical targets.

This is a difficult problem since computation of concentric-tube needle curvature is a 3D beam bending problem. Solving problems of this type typically requires numerical integration along the length of the beam to solve a two-point boundary value problem [1]. Such a model is cumbersome to implement in a surgical planning system let alone for real-time control. Alternatively, as introduced in [10], an approximate algebraic model for beam curvature can be adopted. While this model makes certain assumptions, such as negligibility of external forces on the shape of the needle and torsional rigidity of the individual tubes, it substantially reduces the computational complexity of the kinematics. Using this model, tubes of initial piecewise constant curvature combine to form steerable needles of piecewise constant curvature [10].

This paper presents a generalized inverse Jacobian approach for efficiently solving the inverse kinematics problem for concentric tube needles. This approach also facilitates mapping of the self-motion manifold as well as the inclusion of constraints on tube length and curvature. While the algebraic curvature model of [10] is used here, the approach applies to any algebraic curvature model which results in a needle of piecewise constant curvature. Such a shape is advantageous for a concentric tube needle, since it can be inserted into tissue in a telescoping fashion while applying minimum off-axis forces to the tissue.

Generalized inverse Jacobian solutions to the kinematics problem are widely reported in the literature for robots comprised of links and joints [3],[5],[6]. Steerable needles, however, belong to the class of continuum robots which lack discrete links and joints [9]. The kinematics of these systems have been addressed in [2],[4],[11].

In contrast to hyper-redundant manipulators, the number of kinematic variables of a steerable needle (relative tube rotations and translations) is modest. Thus, while the coordinate frames employed here have some similarity to the backbone reference frames of [2], the kinematic map is most easily expressed in terms of shape functions specific to the component tubes (i.e., piecewise constant curvature) rather than a more general modal mapping. In approach, this paper is closest to [4] which derives the kinematic map for a multi-section continuum robot in which the curvature and length of each section is determined by the length of three cables equally spaced around the trunk. The present work differs from [4] in several respects. First, the kinematic inputs are the relative rotations and translations of the tubes. Second, the curvature of each needle section depends on all tubes within that section and the number of sections can vary as tubes are extended and retracted. Third, constraints on tube length and curvature exist which can be directly incorporated in the inverse solution.

In the next section, the forward kinematic map between the tube variables and needle tip frame is derived as the product of three mappings. Section III develops the inverse solution to these three maps. The subsequent sections provide examples inverse kinematic solutions for several needle designs as well as conclusions.

II. Forward Kinematic Modeling

Using the methodology proposed in [10], needles can be designed and described according to the relative bending stiffness between sets of tubes. Limiting cases correspond to when the bending stiffness ratio of a pair of tubes is either close to one (balanced stiffness) or very large (dominating stiffness). In this approach, a needle design can be described in terms of the stiffness ratios of its tubes starting from the outermost tube and proceeding to the innermost. For example, the design of Fig. 1 can be described as (1) balanced stiffness I1/I2 ≈ 1, (2) dominating stiffness (I1 + I2) ≫ (I3 + I4) and (3) dominating stiffness, I3I4. Note that tube 4 has zero initial curvature. When the tubes are extended in telescoping fashion, this ordering also describes the ordering of controllable sections from the proximal to the distal end.

When balanced stiffness tubes are rotated with respect to each other, their combined curvature varies. This is the case for the outer pair of tubes in Fig. 1. As the relative rotation angle between these tubes is changed, their curvature varies from zero (straight) to a maximum value. If, as shown in Fig. 1, additional tubes are contained inside this pair, which are very flexible in comparison to the outer pair, the shape of the inner tubes conforms to that of the outer pair. If these inner tubes are extended beyond the end of the outer tubes, however, they relax to their own curvature.

The kinematic input variables (θ, l) for each tube consist of its rotation angle, θ, and extension length, l. It is assumed here that any balanced stiffness tube pairs in a design are included for curvature control over their mutual length and so their extension lengths are constrained to be equal. For a needle comprised of n tubes with p balanced pairs, the kinematic input variables can arranged in m = np groups of either (θ, l)i or (θ1, θ2, l)i. The latter applies for balanced stiffness pairs.

The kinematic mapping from tube variables to needle tip frame is diagrammed in Figure 2 as a product of three mappings. The first mapping converts the tube kinematic variables to m corresponding input curves of curvature κ̂i(s) = [κ̂x(s) κ̂y(s)]i and extension length, li. These m curves are of piecewise constant curvature. The second mapping converts the input curves to the actual arcs of the needle, (κx, κy, s)j, j = 1, …, n, where the number of arcs, n, is the total number of constant curvature segments for all the tubes combined. These two mappings are considered separately because the designs of the individual tubes are most easily described in the input curve space. This proves useful when computing the inverse kinematics.

Figure 2.

Figure 2

Kinematic mappings.

The third mapping determines the needle tip coordinate frame, WW (0)(l m), with respect to the needle base frame from the sequence of needle arcs as previously described in [10].

A. Mapping Tube Parameters to Input Curves

Balanced stiffness tube pairs require use of a curvature model in this step. The model from [10] will be used here. For a set of p tubes, the resultant curvature is

κf=(i=1pKi)-1i=1pKiκ¯i, (1)

where κf=[κfxκfy]T is the resultant curvature of the combined tubes, κ¯i=[κ¯xiκ¯yi]T is the initial curvature of tube i prior to assembly, and Ki=EiIi[1001] is the stiffness matrix for tube i, with Ii being the tube cross section moment of inertia [10]. To apply (1), all of the κ̄i must be expressed in the same coordinate frame. This is done, as shown in Fig. 1, by assigning a frame Fi(0) to the base of tube i, such that the z-axis of Fi(0) is tangent to the tube and the y-axis is aligned with the tube’s initial curvature vector. When the tubes are assembled, the frames Fi(0) are initially coincident with each other and with a stationary world frame W(0) (not shown). As each tube is rotated by an angle θi about the common z-axis, the frames Fi(0) are related to the world frame by Fi(0) = R(z, θi)W(0). Since the frames Fi(0) are chosen such that the initial curvature is entirely in the direction of the y-axis, the curvature of tube i in frame W(0) can be written as

κ¯iW(0)=[-κ¯iFi(0)sin(θi)κ¯iFi(0)cos(θi)]T (2)

The application of mapping #1 for each type of fundamental element follows.

  1. Individual Tubes: When a tube’s bending stiffness is greatly exceeded by that of its outer neighbor, it is treated individually and the curvature model (1) does not need to be applied. Its curvature is given by
    κ^iW(0)=[-κ¯iFi(0)sin(θi)κ¯iFi(0)cos(θi)]T. (3)
  2. Balanced Stiffness Tube Pair: The composite curvature for these tubes is computed using (1). The resulting map for this type of element is
    [κ^xiκ^yi]W(0)=1K1i+K2i[-K1iκ¯1iFisin(θ1i)-K2iκ¯2iFisin(θ2i)K1iκ¯1iFicos(θ1i)+K2iκ¯2iFicos(θ2i)], (4)

    and its composite stiffness is i = K1i + K2i.

B. Mapping Input Curves to Needle Arcs

The maximum number of needle arcs corresponds to the sum of piecewise constant curvature segments of all the tubes, n. As the extensions of the tubes vary, however, the actual number of arcs and the sequence of arcs from base to tip varies as well. This is treated here by assuming that there are always n arcs, but that some may be of zero arc length. For any given needle design, there will be a finite number of sequences of these n arcs. As will be demonstrated in the example section of the paper, this mapping must encode each extension-length dependent sequence of needle arcs. The curvature of each is computed using (1) applied to all input curves within the arc length.

C. Mapping Needle Arcs to Tip Frame

From [10], the transformation for a single arc is

T(κx,κy,s)=[κx2+κy2cos(sκ)κ2κxκy(1-cos(sκ))κ2sin(sκ)κyκκy(1-cos(sκ))κ2κxκy(1-cos(sκ))κ2κy2+κx2cos(sκ)κ2-sin(sκ)κxκ-κx(1-cos(sκ))κ2-sin(sκ)κyκsin(sκ)κxκcos(sκ)sin(sκ)κ0001] (5)

The needle tip frame can then be written as a concatenation of all of the arc transformations,

WW(0)(lm)=T(κx1,κy1,s1)T(κxn,κyn,sn). (6)

III. Inverse Kinematics

Solving the inverse kinematics relies on inverting the sequence of mappings described by Figure 2. While the first mapping between tube parameters and input curves is nonlinear, it can always be explicitly inverted. The second mapping from tube input curves to needle arcs is linear, but is not square since the number of needle arcs can exceed the number of input curves. Furthermore, the tube input curves are constrained by the curvatures and stiffnesses of the individual tubes. It is therefore advantageous to employ a generalized inverse Jacobian method to invert the second and third mappings since tube property constraints can be enforced via projection on the self motion manifold.

A. Inverting the Tube Parameters to Input Curves Map

The inverse can be performed explicitly for individual tubes and balanced stiffness pairs. Each is treated below.

  1. Individual Tubes: The inverse is trivially obtained from (3) to be
    θi=atan2(-κ^xi,κ^yi). (7)
  2. Balanced Stiffness Tube Pair: The resulting curvature of the tube pair is in a direction obtained by rotating the y-axis of W(0) by an angle αi about the z-axis.

This angle is defined as

αi=atan2(-κ^xi,κ^yi). (8)

Equation (4) can be inverted to yield two solutions since equal clockwise and counterclockwise relative rotations of the tube pair produce the same curvature,

θ2i=±cos-1(-(K1iκ¯1i)2+(K2iκ¯2i)2+κ^i2(K1i+K2i)22κ^iκ¯2i(K1i+K2i)K2i)+αi,θ1i=θ2i-atan2(±1-c2,c) (9)

where c = cos(θ2iθ1i) and is given by

c=κ^i2(K1i+K2i)2-(K1iκ¯1i)2-(K2iκ¯2i)22K1iK2iκ¯1iκ¯2i. (10)

B. Jacobian of Input Curve to Needle Arc Mapping

The m tube input curves (κ̂x(s), κ̂y (s), l)i are mapped to the nm needle arcs (κx, κy, s)j using the linear map of (1). Its derivative is denoted by J2 which satisfies

[(κ.x,κ.y,s.)1T(κ.x,κ.y,s.)nT]=J2[(κ^.x(s),κ^.y(s),i)1T(κ^.x(s),κ^.y(s),i)mT]. (11)

C. Jacobian of Needle Arc to Tip Frame Mapping

Given the transformation for a single arc in (5), the instantaneous spatial velocity at the arc tip is given by the twist, Vs=[vsωs]T [8]. The matrix form s is given by

V^s=T.T-1. (12)

Expressing (12) in vector form defines the spatial Jacobian Ja for a single arc,

Vs=Ja[κ.x,κ.y,s.]T, (13)

where the Jacobian is given by

Ja=[(TκxT-1)(TκyT-1)(TsT-1)]=[0-κ(1-cos(sκ))0κ(1-cos(sκ))00κx(sκ-sin(sκ))κy(sκ-sin(sκ))κ3sκx2κ+κy2sin(sκ)κxκy(sκ-sin(sκ))κxκ3κxκy(sκ-sin(sκ))sκy2κ+κx2sin(sκ)κyκ3-κyκ(1-cos(sκ))κxκ(1-cos(sκ))0]1κ3. (14)

For a needle consisting of n arcs, the Jacobian of the mapping is

J3=[Ja1,Ad1Ja2,,Adn-1Jan], (15)

in which Adj is the adjoint transformation for arcs 1…j,

Adj=[R1jp1jR1j0R1j]1,j. (16)

D. Pseudo Inverse Solution

The Jacobians of mappings #2 and #3 are combined to yield the following

Vs=J32[(κ^.x(s),κ^.y(s),i)1T(κ^.x(s),κ^.y(s),i)mT], (17)

in which J32 = J3J2. This relation is inverted using the generalized inverse,

[(κ^.x(s),κ^.y(s),i)1T(κ^.x(s),κ^.y(s),i)mT]=J32+Vs+(J32+J32-I)h, (18)

where J32+=J32T(J32J32T)-1 and ∇h is the gradient of a smooth positive definite function encoding constraints on tube input curve curvatures and extension lengths,

h=h((κ^x(s),κ^y(s),l)1,,(κ^x(s),κ^y(s),l)m). (19)

This is illustrated in the example section.

E. Specifying Spatial Tip Velocity

To use (18) to compute the tube input curves, and subsequently the tube parameters, associated with a desired tip coordinate frame as given by (6), an expression for spatial velocity, Vs, is needed which relates the current and desired coordinate frames. For simplicity, the velocity profile is taken to be a constant velocity twist corresponding to the screw motion between the two frames Ta and Tb.

From [7], the direction of the screw axis, b, is given in matrix form by

[b]=(Rab-I)(Rab+I)-1, (20)

where Rab is the rotation from the initial frame, Ra, to the final frame, Rb, given by

Rab=RbRaT. (21)

The unit magnitude angular velocity from Ta to Tb is then

ωs=b/||b||, (22)

and the rotation angle between the frames about ωs is

θab=2tan-1(||b||). (23)

The translation between the two frames, d, is given by

d=pb-pa. (24)

The vector, d*, the projection of d onto a plane perpendicular to ωs, is

d=ωs×(d×ωs). (25)

Also from [7], a point on the screw axis is given by

q=b×d||b||2+d. (26)

and the screw pitch is given by

h=sgn((d-d)·ωs)||d-d||θab. (27)

This corresponds to a twist for use in (18) given by

[vsωs]=[-(b/||b||)×q+h(b/||b||)b/||b||] (28)

which can be numerically integrated from t = 0 to t = θab. When the initial and desired tip frames are related by a pure translation, the spatial velocity is given by

[vsωs]=[d0] (29)

and integration in this case is from t = 0 to t = 1.

IV. Examples

Two examples are presented in this section. The first example is of a needle comprised of three tubes arranged as a balanced stiffness, dominating stiffness design similar to the design of Figure 1. The second example is comprised of six tubes arranged as a sequence of three balanced stiffness tube pairs.

A. Example #1

The balanced stiffness, dominating stiffness design indicates that m = 2. The innermost tube has two sections of constant curvature – zero curvature over the proximal portion and a finite nonzero curvature, ||κ̂|| = κ̂0, over the distal portion of length l21. As a result, the needle will consist of n = 3 arcs. The mapping between tube input curves and needle arcs is given by

s1=max(0,l2-l21)s2=l1-max(0,l2-l21)s3=l2-l1 (30)
[κ1κ2κ3]=[c10c1c201][κ^1κ^2], (31)

where ci = i/(1 + 2). The Jacobian J2 is obtained by differentiating these expressions resulting in

J2=[c1000000c1000000000U(l2-l21)c100c2000c100c2000100-U(l2-l21)00010000001000-1001], (32)

where U is the unit step function. The Jacobian J3 is computed using (14) and (15).

To enforce the tube constraints on curvature, the following positive definite function is used for (19).

h=(κ^x12+κ^y12-κ^1,des2)2+(κ^x22+κ^y22-κ^2,act2)2, (33)

In the first term, κ̂1,des is selected as a value of curvature that the balanced stiffness pair can achieve for some relative rotation angle. In the second term, κ̂2,act is the actual value of curvature of the distal portion of the inner tube. After integrating (18) to the goal configuration, if the curvatures have not converged sufficiently to the desired values, Vs is set to zero and integration continues until the convergence criteria is satisfied.

Figure 3 depicts the inverse kinematic solutions for the example needle tracing a portion of a sphere’s surface. The convergence criteria for κ̂2,act was ±.005cm−1. The colors indicate the three arcs of the needle. The red section corresponds to the overlap between the balanced stiffness pair and the nonzero curvature portion of the inner tube.

Figure 3.

Figure 3

Needle of example 1 tracing the surface of a sphere.

B. Example #2

This design is comprised of three balanced stiffness tube pairs. The two inner balanced stiffness pairs are constructed similarly to the dominating stiffness element in the previous example with sections of zero curvature at their proximal ends and variable curvature at their distal ends. As a result, the needle consists of n = 5 arcs. These arcs can be arranged in three different overlap configurations as shown in Figure 4 where changes in curvature along a tube are indicated by changes in shading.

Figure 4.

Figure 4

Three possible arrangements of needle arcs for example 2.

The needle is in configuration (a) when l3l31 > l1, in configuration (b) when l1 > l3l31 > l2l21, and in configuration (c) when l2l21 > l3l31. It should be noted that configuration (c) is only possible if l31 > l21.

The second mapping for each configuration is as follows:

(a)[κ1κ2κ3κ4κ5]=[a100a1a200b200b2b3001][κ^1κ^2κ^3] (34)
s1=max(0,l2-l21)s4=l2-l1-max(0,l3-l31-l1)s2=l1-max(0,l2-l21)s5=l3-l2s3=max(0,l3-l31-l1) (35)
(b)[κ1κ2κ3κ4κ5]=[a100a1a20a1a3a30b2b3001][κ^1κ^2κ^3] (36)
s1=max(0,l2-l21)s2=max(0,l3-l31-max(0,l2-l21))s3=l1-max(0,l3-l31-max(0,l2-l21))-max(0,l2-l21)s4=l2-l1s5=l3-l2, (37)
(c)[κ1κ2κ3κ4κ5]=[a100a10a3a1a3a30b2b3001][κ^1κ^2κ^3] (38)
s1=max(0,l3-l31)s4=l2-l1s2=max(0,l2-l21)-max(0,l3-l31)s5=l3-l2s3=l1-max(0,l2-l21), (39)

where ai = i/(1 + 2 + 3) and bi = i/(2 + 3).

The Jacobian J2 is straightforward to compute, but is not given here due to space limitations.

The positive definite function used in integrating (18) is given by

h=i=13(κ^xi2+κ^yi2-κ^i,des2)2+(l2-l1-λ1)2+(l3-l2-λ2)2, (40)

where λ1 and λ2 are positive constants. The latter terms enforce the assumption of telescoping extension, l1l2l3.

The figure below shows the results for this needle design tracing the same path on the surface of a sphere as in the first example. As before, sections of overlapping curvature between balanced pairs are shown in red.

V. Conclusion

Concentric tube needles represent a novel and exciting approach to enhancing the steerability of needles for percutaneous procedures. This paper presents a methodology for efficient computation of the individual tube rotations and extensions needed to advance a concentric tube needle along a desired insertion path. These techniques can be adapted for intervention planning and for closed-loop control.

Figure 5.

Figure 5

Needle of example 2 tracing the surface of a sphere.

Figure 6.

Figure 6

Fig. 1. Tube coordinate frames and initial curvatures.

Acknowledgments

This work was supported in part by the National Institutes of Health under Grant #R01 EB003052.

Contributor Information

Patrick Sears, Email: patsears@bu.edu, Aerospace and Mechanical Engineering, Boston University, Boston, MA 02215 USA. He is now with Alliance Spacesystems, Pasadena, CA, USA.

Pierre E. Dupont, Email: pierre@bu.edu, Aerospace and Mechanical Engineering, Boston University, Boston, MA 02215 USA.

References

  • 1.Antman SS. Nonlinear problems of elasticity. Springer Verlag; New York: 1995. [Google Scholar]
  • 2.Chirikjian GS. A Modal Approach to Hyper-redundant Manipulator Kinematics. IEEE Trans On Robotics and Automation. 1994;10(3):343–354. [Google Scholar]
  • 3.Huang MZ, Varma H. Optimal Rate Allocation in Kinematically Redundant Manipulators – The Dual Projection Method. Proc. IEEE Intl. Conf. on Robotics and Automation; 1993. [Google Scholar]
  • 4.Jones B, Walker ID. Kinematics for Multi-Section Continuum Robots. IEEE Transactions on Robotics. 2006;22(1):45–53. [Google Scholar]
  • 5.Klein CA, Huang CH. Review of Pseudoinverse Control for Use with Kinematically Redundant Manipulators. IEEE Transactions of Systems, Man, and Cybernetics. 1983;13(3):245–250. [Google Scholar]
  • 6.Liégeois A. Automatic Supervisory Control of the Configuration and Behavior of Multibody Mechanisms. IEEE Transactions on Systems, Man, and Cybernetics. 1977;7(12):868–871. [Google Scholar]
  • 7.McCarthy JM. An Introduction to Theoretical Kinematics. The MIT Press; Cambridge, Massachusetts: 1990. [Google Scholar]
  • 8.Murray R, Li Z, Sastry S. A Mathematical Introduction to Robotic Manipulation. CRC Press; Boca Raton, Florida: 1994. [Google Scholar]
  • 9.Robinson G, Davies JBC. Continuum Robots – A State of the Art. Proc. IEEE Intl. Conf. on Robotics and Automation; Detroit. May 1999; pp. 2849–2854. [Google Scholar]
  • 10.Sears P, Dupont P. A Steerable Needle Technology Using Curved Concentric Tubes. IEEE/RSJ Int. Conference on Intelligent Robots and Systems; Beijing. 2006. pp. 2850–2856. [Google Scholar]
  • 11.Simaan N, Taylor R, Flint P. A dexterous system for laryngeal surgery. Proc. IEEE Intl. Conf. on Robotics and Automation; New Orleans. April 2004; pp. 351–357. [Google Scholar]
  • 12.Webster RJ, Okamura AM, Cowan NJ. Toward Active Cannulas: Miniature Snake-Like Surgical Robots. IEEE/RSJ Int. Conference on Intelligent Robots and Systems; Beijing. 2006. pp. 2857–2863. [Google Scholar]
  • 13.Loser M. Dr Ing Dissertation. Microsystems Technology, Univ. of Freiburg; Germany: 2005. A New Robotic System for Visually Controlled Percutaneous Interventions under X-ray Fluoroscopy or CT-imaging. [Google Scholar]

RESOURCES