Abstract
Although existing mechanics-based models of concentric tube robots have been experimentally demonstrated to approximate the actual kinematics, determining accurate estimates of model parameters remains difficult due to the complex relationship between the parameters and available measurements. Further, because the mechanics-based models neglect some phenomena like friction, nonlinear elasticity, and cross section deformation, it is also not clear if model error is due to model simplification or to parameter estimation errors. The parameters of the superelastic materials used in these robots can be slowly time-varying, necessitating periodic re-estimation. This paper proposes a method for estimating the mechanics-based model parameters using an extended Kalman filter as a step toward on-line parameter estimation. Our methodology is validated through both simulation and experiments.
I. INTRODUCTION
Concentric tube robots are a type of continuum robot composed of thin superelastic pre-curved tubes. They have been developed in the context of both steerable needles and minimally invasive surgical robots [1], [2], [3], [4]. Similar to traditional robot architectures, kinematic model calibration is a necessary condition for achieving high positioning accuracy. The kinematic models of traditional robots, comprised of relatively rigid links connected by revolute and prismatic joints, pose fewer challenges, however, in parameter calibration.
While traditional robot kinematics can be modeled by algebraic equations, concentric tube robot forward kinematics is modeled by a boundary value problem (BVP). In addition, phenomena such as friction, nonlinear elasticity, and cross section deformation are neglected in formulating this BVP. These phenomena can also be time varying. Consequently, initial calibration of a robot tube set is difficult; its accuracy can vary over the workspace and depend on the data set used for calibration; and the robot can require periodic recalibration to accommodate changes in tube properties, e.g., pre-curvature.
On-line parameter estimation provides a means to both monitor model accuracy as well as to tune the model during operation. Such real-time tuning can enhance the performance of position control by using accurate feedforward control which is usually combined with feedback control. Prior work on this topic has considered using an algebraic functional approximation [1] for the mechanics instead of the mechanics-based model [5]. The advantage of this approach is that the number of parameters can be easily varied to potentially account for neglected phenomena and on-line estimation can be implemented as recursive least squares [5].
These advantages have yet to be proven, however, and on-line estimation using a mechanics-based model may provide advantages of its own. For example, estimation of mechanics-based parameters can provide physical insights that a functional approximation would not. Furthermore, the comparatively small and fixed number of mechanics-based parameters guards against overfitting the data - tuning the parameters to fit data in a small neighborhood at the expense of global accuracy. In addition, despite its mathematical complexity, careful implementation may enable real-time mechanics-based model estimation. And as additional phenomena are added to the mechanics-based model, the approach developed here can be extended to include them.
The estimation problem considered here, as shown in Fig. 1, is defined by the relationship between sensor-measured tip configuration and that predicted by the kinematics model,
| (1) |
where pm ∈ ℝ3, Rm ∈ SO(3) are the measurements of tip position and orientation and the nonlinear functions and are derived from the forward kinematic model. denotes the model parameters to estimate, e.g., stiffness tensor Ki, pre-curvature ûi and Poission’s ratio, νi. The kinematic input variables, q ∈ ℝ2n, are the base rotation θi,b and base translation li of each tube. The estimation problem also includes solving for a constant offset displacement {Ro, po} relating the robot tip and sensor frames.
Fig. 1.

Estimation problem. Actual robot shown in solid and kinematic model prediction is shown dashed. Frame {W} is fixed world frame. Frame {Fi,b} (i = 1, …, n) is the tube-fixed base frame of the i-th tube. Constant displacement {Ro, po} relates robot tip and sensor location.
The contribution of the paper is to derive a recursive filtering technique for estimating the parameters of the mechanics-based model based on an Extended Kalman Filter (EKF). Implemented in Matlab, its capabilities for parameter estimation are evaluated off line using simulated and experimentally-collected data sets.
The remainder of the paper is arranged as follows. In Section II, we revisit the forward kinematics of concentric tube robots briefly, and derive the differential kinematics with respect to general parameters which include both physical parameters and control variables. Next, an Extended Kalman Filter (EKF) is formulated to estimate both the model parameters and the offset between tip frame and measurement frame. In Section IV, parameter estimation using measurement of tip position and orientation is demonstrated using simulation and experimental data. Conclusions appear in Section V.
II. KINEMATICS OF CONCENTRIC TUBE ROBOTS
The forward kinematic equations, i.e., solving for the entire shape of the robot given the input variables and parameters, are derived in [6] with the consideration of external forces and moments. Using the frame definitions and equations (1)–(22) of [6], we define the state variable for an n-tube robot as in which θi, uiz, m0, n0 are twist angle, torsional strain of the i-th tube, net bending moment, and net shear force respectively. The state equation is (refer to (16)–(19) in [6]), where Ns = 2n + 5 is the number of state variables [6], s ∈ [0, L] is the arc length parameter. In anticipation of deriving the differential kinematics with respect to input variables, model parameters and boundary conditions, we define Ω = [ϕT, qT, wT ]T in which w is any wrench applied at the tip. Throughout the paper, the upper dot is defined as the derivative with respect to s.
A. Differential Kinematics
The differential kinematics are needed for parameter estimation and can also be used for inverse kinematic control. While they can be calculated by finite difference, this approach is slower and less accurate than analytical calculations. Furthermore, it has been previously demonstrated that computation of Jacobian and compliance matrices can be formulated as an initial value problem(IVP) [7]. That approach is generalized here to derive the Jacobian with respect to arbitrary parameters.
Assume the tip of concentric tube robot is at the n-th tube. Then the column of body Jacobian matrix with respect to arbitrary parameter set is given as [8]:
| (2) |
where gn ∈ SE(3) is the frame of the n-th tube, and the ∨ operator changes an element in se(3) from its matrix form to vector form [8]. After some algebra similar to the one in [7], the differential equation for JΩ is given from differentiating (2) with respect to s near the solution y*(s):
| (3) |
where un (s), vn(s) ∈ℝ3 are the angular and linear strain (rate of change with respect to arc length) of the n-th tube, and the bracket [] makes a vector x ∈ ℝ3 to a skew symmetric matrix [8]. As the solution of (3) we obtain JΩ(s), JΩ as a function of arc length s:
| (4) |
where , [Adg] is the adjoint matrix of g ∈ SE(3). Jb(s) ∈ ℝ6×N, are the solutions of following IVPs ( , are also necessary):
| (5) |
| (6) |
| (7) |
| (8) |
with initial conditions Jb(0) = 0, cΩ(0) = 0, Φ(0, 0) = I, aΩ(0) = 0. The vector bΩ can be found from separated boundary conditions(BCs) at base (s = 0) and at tip (s = L). After solving IVPs in (7), (8), derivative of BC at tip is given as
| (9) |
As our BCs are known separately, this is only a linear equation, and one can find Ns unknowns with given Ns equations. If we solve this linear equations and gather , this will be our bΩ. Note that if Nk elements of are equal to zero, then corresponding columns of Φ(s, 0) and Jb(s) are not included in any of the calculations to get Jacobians, e.g., in (4), (9). Therefore we only need to integrate for Nu = Ns − Nk columns of Φ(s, 0) and Jb(s) (will denote them , ).
In conclusion, to get the Jacobian with respect to general parameters Ω, we need to solve a large ODE on {Φu, aΩ, Jb,u, cΩ}, i.e., ODEs in (5)–(8), given the solution of the forward kinematics. Finally, the number of dimension of this IVP is (Ns + 6) × (Np + Nu). Note that when and becomes zero or Dirac delta functions, it is not needed to solve IVP for aΩ and cΩ on that Ω. This occurs quite frequently, e.g., for control Jacobian or compliance matrices in constant stiffness and piecewise constant curvature case. The parameters (control variables or wrench) directly affect the state equation only at the boundary or only at some finite points along the robot.
III. ON-LINE PARAMETER ESTIMATION
Given the nonlinearity of the kinematic model, we employ the differential kinematics formulated above in an extended Kalman filter (EKF). Referring back to (1), we wish to estimate both the model parameters and the fixed offset displacement between the robot tip and sensor, {Ro, po}. Here, special concern is needed to handle the variable Ro as it is not a standard vector but in SO(3). Our approach follows [9], [10] in implementing EKF on SO(3) and is formulated using similar notation to [11].
Suppose the parameters are almost constant or vary slowly, which is a reasonable assumption for our model parameters, e.g. tube pre-curvature and stiffness. Our problem is to estimate these parameters based on measurement of tip position and orientation given the kinematic control inputs. Our discretized system equations for k = 1, 2, 3, … are given as follows.
Process equation:
| (10) |
| (11) |
| (12) |
Measurement equation:
| (13) |
| (14) |
where subscript k denotes the k-th time step, , wp,k ∈ ℝ3 ~ N(0, Wp,k), γk ∈ ℝ3 ~ N(0, Γk), vk ∈ ℝ3 ~ N(0, Vk), ξk ∈ ℝ3 ~ N(0, Ξk) are white Gaussian noise for process and measurement equations, which are assumed to be uncorrelated to each other. Here, process noise covariances control the variability of the parameters and are set to be proportional to the squared values of each of the parameters.
Note that in (12), (14), the operator e is the exponential mapping which maps r ∈ so(3) to R SO(3)[8]. Noise in SO(3) is assumed to be applied as an exponential map of white Gaussian noise as this can make the calculations far more tractable at the cost of little loss on mathematical rigorousness [9]. The inverse of the exponential map, log, is called the logarithm, which is locally defined near identity [8]. It maps R ∈ SO(3) to its exponential coordinates r ∈ so(3).
In our matrix calculations, such as linearization of state and measurement equations or covariance update of EKF, an SO(3) random variable R is treated as a vector random variable , which can be interpreted as a local coordinate of R ∈ SO(3) with as its origin. In this way we can maintain the algorithm in matrix form while handling SO(3) variables.
The overall EKF algorithm for the estimation of (ϕ, po, Ro) is given as follows:
Initialize:
where P is the covariance matrix of concatenation of ϕ, po, .
Process update (for each time step k = 1, 2, …):
| (15) |
| (16) |
where , denotes a priori state estimation and covariance, , is a posteriori state estimation and covariance, Lk = Diag{Wk, Wp,k, Γk}. This is the second order approximation of nonlinear covariance update for SO(3) [9].
Measurement update ( , ):
| (17) |
| (18) |
| (19) |
| (20) |
| (21) |
| (22) |
| (23) |
| (24) |
where is the linearization of the measurement equation with respect to estimation parameters ( ), are position and orientation part of the body Jacobian Jϕ (here, body frame is the forward kinematics frame) with respect to parameters, , , , are Kalman gain and its respective rows for each variables, Mk = Diag{Vk, Ξk} ∈ ℝ6×6, and is the Jacobian of a posteriori random variable with respect to a priori random variable, i.e.,
| (25) |
Unlike the vector space EKF, is needed as the origin of local coordinates of SO(3) changes from (before update) to (after update) [10]. From change of coordinate, (24) follows by defining , where is called the right Jacobian of SO(3) [9], [10]. For α ∈ so(3), is given as
where . This is quite a general formulation and one can subtract some variables or measurements such as po, Ro or hR(q, ϕ) appropriately according to the problem setting.
IV. EXPERIMENTS
Two types of offline estimation experiments are conducted using a Matlab implementation of the algorithms described above. The first set uses simulated data with the goals of verifying the correctness of our formulation and also investigating the sensitivity of the algorithm to registration errors in the transformation between the sensor coordinate frame and the robot base frame. Next, we evaluate the algorithm using data collected from actual hardware experiments. In these experiments, an electromagnetic sensor is used to track the robot tip and the sensor coordinate frame is defined with respect to the transmitter unit. Both sets of experiments employ the three-tube robot design defined by Fig. 2 and Table I.
Fig. 2.

Concentric tube robot model used in the experiments.
TABLE I.
Tube Parameters
| Tube1 | Tube2 | Tube3 | ||
|---|---|---|---|---|
| sec1 | sec1 | sec1 | sec2 | |
| length(mm) | 150 | 150 | 150 | 86.4 |
| kxy (relative value) | 1 | 1 | 0.286 | |
| û(1/mm) | 1/264 | 1/264 | 0 | 1/55 |
| ν | 0.3 | 0.3 | 0.3 | |
A. Estimation Using Simulated Data
In the experiments using simulated data, we assume the tip-sensor transformation is given as Ro = Ry(90°), and , where Ry(θ) is the rotation with respect to y-axis with angle θ. Since the model depends on relative tube stiffness, we set k1 = 1 and also assume that tube pre-curvature is constant and planar. Poisson’s ratio is assumed to be identical for all tubes. The resulting set of parameters to be estimated is given by (k2, k3, û1,y, û2,y, û3,y, ν, po, Ro).
Data are generated using as actual parameter values those in Table I for a trajectory derived by rotating tube2 and translating tube3 back and forth repeatedly to cover the workspace shown in Fig. 3. Initial parameter values are selected randomly and virtual measurement data are generated by adding noise to the model data. Measurement standard deviation are set to be 0.25mm for position measurement and 0.05rad for orientation measurement.
Fig. 3.

Workspace used to generate simulated data. Blue and green lines are robot; black and red lines are reference trajectory and biased trajectory, respectively.
The estimation result using this trajectory is given in Fig. 4 with all physical parameters normalized to their actual values. The results show that the parameters all converge to a neighborhood of the actual values. The corresponding tip position and orientation errors can be seen in Fig. 5 to converge rapidly with maximum position and orientation errors of about 2mm and 10deg. Here, the distance between estimated and measured rotation matrices is calculated from , where and Rm are the estimated and measured rotation matrices, respectively.
Fig. 4.

Normalized parameter estimation result using simulated data.
Fig. 5.

Position and orientation error between estimated model and sensor measurement (solid line) and error in po, Ro (dashed line) from simulated data.
The selection of process noise covariance Wk, Wp,k, Γk controls the speed of convergence: low values slow convergence, while high values reduce the position and orientation errors but cause large swings in parameter values as a result of overfitting.
To investigate the sensitivity of model parameter estimation to registration errors in the transformation between the sensor and robot coordinate frames, we next introduce errors in the simulated data set corresponding to rotations and translations of robot base with respect to the sensor system (base unit of EM tracker in subsequent hardware experiments). We employ the reference trajectories of Fig. 3 rotated by 1° with respect to each of x, y and z-axes or translated by 3mm along each axis of robot base frame.
The resulting parameter estimation errors given as root mean square values normalized with respect to nominal values are summarized in Table II. As a specific example, the path associated with a rotation with respect to the x-axis is given in Fig. 6. Only ûy,3 converges to the actual value and the convergence rate of the other parameters decreases compared to Fig. 4.
TABLE II.
Root mean squared error of parameters normalized with respect to nominal parameter.
| Estimated parameter set | {ûi,y} | {ki} | {ν} | |
|---|---|---|---|---|
| 1° rotation about | x-axis | 20.84% | 71.3% | 204.2% |
| y-axis | 14.47% | 56.55% | 55.31% | |
| z-axis | 6.06% | 9.37% | 42.15% | |
| 3mm translation along | x-axis | 22.08% | 60.00% | 34.62% |
| y-axis | 21.32% | 63.39% | 181.8% | |
| z-axis | 49.35% | 76.87% | 62.27% | |
Fig. 6.

Normalized parameter estimation assuming robot-sensor registration error.
This result suggests that parameter estimation may also need to consider sensor-robot registration. There will likely be a tradeoff, however, since this will increase the total number of parameters to be estimated. Since the errors in Table II are smallest for the curvature variables, we choose them as the parameters to estimate in following hardware experiments.
B. Estimation Using Experimental Data
The experimental platform of Fig. 7 is used to collect data for the depicted reference path. The control inputs for the path are obtained from the inverse kinematics using the parameters of Table I. Note that, due to model error, these serve as nominal parameter values and the actual path differs from the reference path. Given the sensitivity to registration error between the EM base unit and the robot base frame, only the three tube pre-curvatures are estimated with the remaining parameters (tube stiffnesses and Poisson’s ratio) set to their nominal values. Since sensor-robot translation can be accurately measured, only Ro is estimated. Generally measurement covariance is set to be the actual covariance of sensor uncertainty, but due to inherent inaccuracies in the model, fictitious covariances are determined based on the results in [1]. Owing to our Matlab implementation, estimation is performed offline.
Fig. 7.

Experimental set up. Robot path shown in white. EM tracker is used to measure tip position and orientation.
Estimation results for {ûi,y} and Ro are given in Figs. 8, 9, 10, 11. In Fig. 8, the estimated pre-curvatures approach the nominal values, but do not converge to a specific value. Fig. 9 shows that orientation error is substantially reduced by the algorithm and mean orientation error is 2.38°, despite some variation in the estimated Ro. It is observed that tracing a periodic path results in parameter value estimates tracing corresponding periodic paths. The mean position error reduces from 4.67mm based on nominal curvatures to 1.12mm with estimated values. This indicates that parameters locally adapt to minimize error between prediction and measurement as in Fig. 10 and 11.
Fig. 8.

Estimation of pre-curvature from experimental data.
Fig. 9.

Estimation of Ro from experimental data. Each value corresponds to the exponential coordinate of Ro.
Fig. 10.

Robot tip position error (top) and orientation error (bottom) using experimental data. In top figure, solid line is error based on estimated parameters while dashed line is error based on nominal parameters.
Fig. 11.

Workspace paths using estimated parameters (estimation) and nominal parameters (reference) versus measured path.
V. CONCLUSIONS
This paper proposes a filtering algorithm for estimating the kinematic parameters of the current mechanics-based model for concentric tube robots. Given prior successful real-time implementations of inverse kinematics based on differential kinematics [12] and noting that parameter estimation need not be performed at a high update rate, we anticipate that our method can also be implemented in real time. While not detailed here, it is also possible to adapt the algorithm to include external forces and torques, assuming that these can be sensed during operation. Future work will introduce methods to select process noise covariance to balance convergence rate versus overfitting and to address sensitivity to sensor-robot registration.
Acknowledgments
This work was supported by the NIH under grant R01HL124020. The work of C. Jang and F. C. Park was supported in part by the SNU BMRR Center(DAPA-UD130070ID), SNU-IAMD, BK21+, and MI Technology InnovationProgram (10048320).
References
- 1.Dupont PE, Lock J, Itkowitz B, Butler E. Design and control of concentric-tube robots. Robotics, IEEE Transactions on. 2010;26(2):209–225. doi: 10.1109/TRO.2009.2035740. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 2.Sears P, Dupont P. A steerable needle technology using curved concentric tubes. Intelligent Robots and Systems, 2006 IEEE/RSJ International Conference on IEEE. 2006:2850–2856. [Google Scholar]
- 3.Webster RJ, Kim JS, Cowan NJ, Chirikjian GS, Okamura AM. Nonholonomic modeling of needle steering. The International Journal of Robotics Research. 2006;25(5–6):509–525. [Google Scholar]
- 4.Rucker DC, Webster RJ, Chirikjian GS, Cowan NJ. Equilibrium conformations of concentric-tube continuum robots. The International journal of robotics research. 2010 doi: 10.1177/0278364910367543. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 5.Kim C, Ryu SC, Dupont PE. Real-time adaptive kinematic model estimation of concentric tube robots. Intelligent Robots and Systems (IROS), 2015 IEEE/RSJ International Conference on IEEE. 2015:3214–3219. doi: 10.1109/IROS.2015.7353823. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 6.Lock J, Laing G, Mahvash M, Dupont PE. Quasistatic modeling of concentric tube robots with external loads. Intelligent Robots and Systems (IROS), 2010 IEEE/RSJ International Conference on IEEE. 2010:2325–2332. doi: 10.1109/IROS.2010.5651240. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 7.Rucker DC, Webster RJ., III Computing jacobians and compliance matrices for externally loaded continuum robots. Robotics and Automation (ICRA), 2011 IEEE International Conference on IEEE. 2011:945–950. [Google Scholar]
- 8.Murray RM, Li Z, Sastry SS, Sastry SS. A mathematical introduction to robotic manipulation. CRC press; 1994. [Google Scholar]
- 9.Barfoot TD, Furgale PT. Associating uncertainty with three-dimensional poses for use in estimation problems. Robotics, IEEE Transactions on. 2014;30(3):679–693. [Google Scholar]
- 10.Bourmaud G, Mégret R, Arnaudon M, Giremus A. Continuous-discrete extended kalman filter on matrix lie groups using concentrated gaussian distributions. Journal of Mathematical Imaging and Vision. 2015;51(1):209–228. [Google Scholar]
- 11.Simon D. Optimal state estimation: Kalman, H infinity, and nonlinear approaches. John Wiley & Sons; 2006. [Google Scholar]
- 12.Burgner J, Rucker DC, Gilbert HB, Swaney PJ, Russell PT, Weaver KD, Webster RJ. A telerobotic system for transnasal surgery. Mechatronics, IEEE/ASME Transactions on. 2014;19(3):996–1006. doi: 10.1109/TMECH.2013.2265804. [DOI] [PMC free article] [PubMed] [Google Scholar]
