Kinematic Control of Continuum Manipulators Using a Fuzzy-Model-Based Approach

Continuum manipulators are a rapidly emerging class of robots. However, due to the complexity of their mathematical models and modeling inaccuracies, the development of effective control systems is a particularly challenging task. This paper presents the first attempt on kinematic control of continuum manipulators using a fuzzy-model-based approach. A fuzzy controller is proposed for autonomous execution of end-effector trajectory tracking tasks for a continuum manipulator. Particularly, membership functions are employed to combine the linearized state-space models, to achieve, overall, a fuzzy model. The fuzzy model can help design the fuzzy controller; in our approach, this process is supported by a thorough stability analysis. This control methodology enables a solution with low computational requirements to this motion control problem - there is no need to continuously update the Jacobian of the continuum manipulator. The superior performance of this controller is validated in MATLAB simulations and compared with those of classical controllers found in the literature. The experiments on a rapid-prototyped continuum manipulator further verify the feasibility and the advantages of this fuzzy controller in the presence of modeling discrepancies and hardware inaccuracies.


I. INTRODUCTION
C ONTINUUM manipulators are mainly characterised by their ability to continuously bend along the length of their structure; further, due to the inherent compliance, these manipulators demonstrate appealing flexibility and allow safe interactions in constrained environments.Although continuum robotics is still in its infancy, considerable current research is focusing on the development of both hardware and machine learning methods for such continuum robots, including design, modelling, control, and learning [1].Continuum robot manipulators have made inroads into a rapidly growing number of applications across different sectors, ranging from industrial operations [2] to health care and domestic environments [3].
Compared with conventional manipulators with segmented rigid-links, the architecture concept and actuation principles for continuum manipulators are fundamentally differentthey often mimic biological trunk or tentacle behaviours and manipulate objects in ways similar to how the biological role models do it.Particularly, continuum manipulators emphasise "whole arm manipulation" of a wide range of objects [4], which is even performed without prior knowledge of the shape of the object.Detailed surveys of the state-of-theart and continuum manipulator designs are given in [1], [5].Frequently applied continuum manipulator structures are tendon-driven flexible backbone designs [6], pneumatically actuated bellow-integrated designs [7], concentric tube designs [8], and soft body structures with locally actuated cells [9].Significant progress has not only been made in design but also in modelling, including both kinematics and dynamics.Chirikjian published their pilot research in the 1990s on continuum robot kinematics and dynamics [10].Hannan and Walker provided the general kinematic model for continuum manipulators using the well-established Denavit-Hartenberg (D-H) convention [11].This approach adopted the modelling methodology originally used for traditional rigid-link manipulators to establish the continuum kinematics via virtual rigidlink kinematics.Other approaches focusing on static modelling give insight into the mechanics of continuum manipulators based on the elastic beam theory [12].Among different kinematic models, the underlying methodology is the use of constant-curvature approximation [5].It provides closed-form position and velocity kinematics which is the basis for realtime control and further motion planning.
There are several different approaches for the robotic control of continuum manipulators.Penning et al. investigated closedloop control in both task space and joint space, resulting in improved end-point positioning accuracy of robot catheters [13].Due to the nonlinear behaviour and high flexibility of continuum manipulators, the system performance has shown to benefit from closed-loop control.Regarding the selection of task space or joint space control, generally, the task space controllers that employ a feedback loop to directly minimize task errors show some advantages [14].In terms of kinematic control versus dynamic control, it is noted that kinematic control embedding the velocity-level kinematics is commonly utilized [15]- [17]; dynamic control has also been studied [18], however, the lack of a well understood efficient dynamic model of continuum manipulators limits its implementation.In [19], considering the problems of steady state positioning errors and 0278-0046 (c) 2015 IEEE.Personal use is permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.undesirable dynamic behaviours of continuum manipulators, a combined control system incorporating a position feedback and a modal-space controller was proposed and shown to be effective.At the intelligent control level, a distributed fuzzy controller was introduced as part of a control law in [20] which avoids the difficulties determined by the complexity of nonlinear integral-differential equations.Recently, a fuzzy logic methodology was proposed in [21] to design a nonlinear controller to regulate the end-effector of a continuum manipulator to a constant desired position.Furthermore, a neural network-based tracking controller was presented for a wide range of continuum manipulators [22] and it does not require an accurate manipulator dynamic model.In [23], an adaptive neural network controller was implemented achieving the end-effector position tracking control in real time with high accuracy.Likewise, considering the situation in which continuum manipulators interact with unknown obstacles and environments, a task space closed-loop controller, only based on empirical estimates of the real-time Jacobian but without using a model, is used for overcoming these disturbances [24].
For the future, we foresee autonomous execution of command tracking tasks based on practical control strategies approaching more new applications in the presence of continuum manipulators.Recently, an impressive implementation of a motion controller for a catheter (realised as a type of a continuum manipulator) for beating heart intracardiac surgery has been reported in [25], [26].
In this paper, we present a fuzzy-model-based approach for controlling a continuum manipulator.The controller was designed based on stability analysis for general continuoustime nonlinear systems [27].We first derive the kinematic model and analyse its successive state-space model.Then, a fuzzy model is established to represent this state-space model by using a local approximation technique [28].We design the fuzzy controller based on the stability conditions proposed in [27].This controller enables the states of our continuum manipulator to track a desired reference model.The fuzzy-model-based approach can suppress the tracking error according to H ∞ performance based on the Lyapunov stability theory.Compared with open-loop feedforward control which is highly dependent on the accuracy of the model in real-time control, our closed-loop control is adequate to accommodate the online trajectory adjustments and has effective trajectory tracking capabilities.Although there commonly exists a certain modelling error between the established fuzzy model and the physical nonlinear model, the stability and performance of the specified tracking task can still be accomplished.Compared with other (pseudo-)inverse Jacobian based kinematic control systems, the proposed method does not require online updating of the Jacobian, nor rely on continuously updated estimations of the Jacobian.It responses to sensor inputs, thus also providing a closed-form low-computation solution of a motion control problem with respect to continuum manipulators.To the best of our knowledge, this is the first work of achieving task space closed-loop control proposed with respect to a continuum manipulator using a fuzzy-model-based approach.
The remainder of the paper is organized as follows: Section II presents a general continuum manipulator kinematics under Kinematic mapping and its decomposition of a continuum manipulator modelled using constant-curvature theory.
the constant-curvature approximation.Section III introduces the methodology of the fuzzy-model-based approach for kinematic control of the continuum manipulator.A fuzzy controller is developed.In Section IV, simulation examples are given to show the feasibility and merits of the proposed controller.Section V reports the demonstration of the controller in realtime tracking tasks employing a rapid-prototyped continuum manipulator [29].Two other traditional Jacobian-based control methods are implemented for comparison.Concluding remarks and a plan for future work are given in Section VI.

II. GENERAL CONTINUUM MANIPULATOR KINEMATICS
In this section, we give an overview of the constantcurvature based continuum manipulator kinematics.The derived models form the basis for robot controller development.
The constant-curvature arc approximation has been frequently applied to the kinematic modelling of many continuum manipulators [11].Different modelling approaches producing equivalent results of constant-curvature forward kinematics are reviewed and unified in [5].Due to its simplifications in modelling, it enables an analytical closed-form relationship between actuator inputs and arc parameters useful for realtime control.Extensions of fundamental concept of constantcurvature kinematics, piecewise constant-curvature and finitefragmentation curvature modelling are proposed to fit the physical model of manipulators with a multi-section backbone or a variable section curvature [15].The latter considers the backbone shape comprised of a finite number of small curved units and it is equivalent to modelling a single section with piecewise constant-curvature approximation.Unlike conventional rigid-link discrete manipulators [30] the use of joint variables and link parameters does not directly yield continuum kinematics.The elastic bending feature of a continuum manipulator leads kinematics to be decomposed into two submappings that link together with configuration variables (please refer to Fig. 1).In order to lighten the notation, we drop all time-varying variable notations in this paper.
The two decomposed submapping portions are respectively described by a manipulator-specific kinematics g : R n → R n , u → q, and a manipulator-independent kinematics h : R n → R n , q → η.The former varies with different actuation manners (although sometimes there exists certain correlation among common actuation strategies), while the latter is totally general and applies to all the individual sections of a continuum manipulator under the assumption of constant-curvature.Hence, the complete kinematics mapping that computes the end-effector's pose η depending on the actuator state u is given by f = h(g(•)).The function f defines a chaining process where the output of the function g becomes the input of the function h.
Without limiting generality, the actuator space variables are chosen as the most direct actuation -tendon-driven design, where an arc is shaped by tendons.Herein, the three tendon lengths are written in vector form u = [τ 1 , τ 2 , τ 3 ] T .
The arc parameters are represented by the curvature (k), rotational angle (φ), and arc length (l).(please refer to Fig. 2).The configuration space triplets above are all functions of the actuator variables, i.e. q = [k(u), φ(u), l(u)] T .
Furthermore, the arc geometry provides the relationships θ = k • l and r = 1/k which enables the calculation of the arc bending angle θ and radius r.Regarding the pose representation, we only specify the position of the end-effector for the purpose of motion control, which in three-dimensional Euclidean space is defined by the vector η = [x, y, z] T .

A. Coordinate systems
With different coordinate frame choices, the derived kinematic mapping would be diverse in form.In order to describe the position of the end-effector in the universe, the reference coordinate system must be first established.Likewise, additional moving frames attached to the continuum manipulator are introduced.All the coordinate systems with respect to a single-section continuum manipulator (please refer to Fig. 2) are described below.
• Reference Coordinate System {xyz}, for convenience, is fixed to the proximal end of the continuum manipulator with its z axis tangent to the backbone curve of the bending manipulator and pointing toward the distal end.The x-y plane is perpendicular to the bending plane.

B. Manipulator-independent submapping
Once the aforementioned coordinate systems are established, the problem of deriving the manipulator-independent submapping is transformed into solving the mathematics to describe the end-effector coordinate system {x e y e z e } relative to the reference coordinate system {xyz}.Thus, a parameterised homogenous transformation can be used as where the 4×4 homogeneous transformation matrix o T e (q) constitutes the standard representation of the special Euclidean group SE(3) with the effect of transforming the coordinate frame {x e y e z e } to the reference coordinate frame {xyz}; the matrix o T e (q) is constructed by a 3×3 rotation matrix o R e (q) and a 3×1 position vector o p e (q); o R e (q) is an element of the special orthogonal group SO(3) and denotes the orientation of the coordinate frame {x e y e z e } relative to the reference coordinate frame {xyz}; the 3-vector o p e (q) is an element of the translation group T(3) and denotes the position of the origin O e relative to the reference coordinate frame {xyz}.
Each components of the homogeneous transformation matrix are derived as follows.The columns of the rotation matrix o R e (q) can be obtained by writing the unit vectors that define directions of the principle axes of end-effector coordinate system {x e y e z e } in reference coordinate frame {xyz}.o p e (q) is a pure position vector translating the point in space.The operations of SE(3) can be performed through the matrix multiplication, with the transformation composition implemented.Therefore, o T e (q) = o T b (q) b T e (q).Note here that the operations of SE(3) is non-commutative, hence the order for composition is important.Composition of the homogeneous transformation matrix o T e (q) is accomplished as where one homogeneous transformation matrix describing the frame 1 , and another one describing the frame {x e y e z e } relative to the frame . Referring to Fig. 2(a), in 2D bending model of a continuum manipulator, the position vector b p e (k, l) can be written as And both the rotation matrix b R e (k • l) representing a rotation of θ(= k • l) about y b axis and the rotation matrix o R b (φ) representing the bending plane rotation of φ about z axis can be written in the form of the corresponding rotation matrices.Therefore, the complete homogeneous transformation matrix o T e (q) can be calculated.When in the case of only considering the end-effector position representation, the manipulator-independent submapping h only takes the first three elements of the last column of o T e (q), i.e. h = o p e (q).
So far, we complete the derivation of the manipulatorindependent submapping based on a homogeneous transformation.Furthermore, using the derived 4×4 homogeneous transformation matrix o T e (q), any vectors e s expressed relative to the end-effector coordinate system {x e y e z e } can be expressed relative to the reference coordinate system {xyz}.Thus, Equation ( 5) can be used to solve for the pose representation including end-effector positions and orientations.

C. Manipulator-specific submapping
Now to find the manipulator-specific submapping, we decide to adopt the three-tendon-driven actuation strategy.First, we assume that all the three tendons are in tension during the manipulator articulation and there is no slack.Referring to the references [5], [15], all the defined configuration variables can be expressed with respect to tendon actuation variables as written by ( 17)-( 19) in [5].
This mathematic model is most frequently applied to tendon-driven continuum manipulators and also to any continuously bending actuator, for example, the bellow-like actuators in Festo's Bionic Handling Assistant (BHA) [7], [15].Hereby, we complete the manipulator-specific submapping g and end the forward kinematics.Upon the analytical kinematic modelling, the inverse mapping can be further derived and in case of the current simplified model, both the submappings g −1 and h −1 can be produced analytically by solving the nonlinear equations defined by forward mappings g and h.

D. Jacobian
The Jacobian is a multidimensional form of partial derivatives with respect to time of the forward kinematics.It reveals the velocity-level forward kinematics that the actuator velocities to the spatial velocity of the end-effector.Given the forward kinematics of the form then, the velocity kinematics is derived as This yields the Jacobian matrix equals where J(u) is a time-varying 3×3 matrix, whose elements are nonlinear functions of instant actuator states expressed by u.In ( 8), the left component of the Jacobian represents the Jacobian J h (q) of the manipulator-independent portion of kinematics and the right component of the Jacobian represents the Jacobian J g (u) of the manipulator-independent portion of kinematics.We get both explicit Jacobian matrices as where d is the radius of the cross-section of continuum manipulator;

III. KINEMATIC CONTROL USING FUZZY-MODEL-BASED APPROACH
The objective of the kinematic control task is to find a solution with respect to the actuation space variables to enable the end-effector of the continuum manipulator to track a desired trajectory.Fig. 3 illustrates the control architecture using fuzzy-model-based approach.Afterwards, we first introduce the design procedures step-by-step according to the literature.Then the state-space model with respect to the continuum manipulator is proposed, based on which the fuzzy model can be developed.We specify two different trajectory tracking tasks and accordingly design two sets of feedback gains in the fuzzy controllers.Details about control synthesis are shown in the following subsections.The methodology of the fuzzy-model-based control is summarised in this subsection based on [27].
1) Polynomial fuzzy model: In order to apply the fuzzymodel-based stability analysis, the polynomial fuzzy model is employed to represent the system state model of the continuum manipulator.The polynomial fuzzy model is constructed by using membership functions to blend the local polynomial models.The p-rule polynomial fuzzy model describing the behaviour of a general nonlinear model can be defined as [31] where x denotes the system state vector; y denotes the output vector; w i (y) is the normalised grade of membership; A i (x) and B i (x) are the known polynomial system and input matrices, respectively; x(x) is a vector of monomials in x; v is the input vector; C is a constant output matrix.It is assumed that x(x) = 0 iff x = 0.
2) Reference model: The reference model mathematically describes the desired trajectory.It is specified by users and later is utilised in the fuzzy-model-based stability analysis for the tracking control of a continuum manipulator.The reference model is defined as follows [27]: where x r denotes the state vector of the reference model; A r and B r are the constant system and input matrices, respectively; xr (x r ) is a vector with monomials in x r as the entries; r denotes the reference input vector; y r denotes the output vector of the reference model.
3) Output-feedback polynomial fuzzy controller: The basic idea of trajectory tracking is to continuously reduce the discrepancies between the desired position and the actual position.A polynomial fuzzy controller is employed here to track the trajectory without the online computation of a (pseudo-)inverse Jacobian matrix.This fuzzy controller is designed based on the concept of the parallel distributed compensation (PDC) [32].In other words, the membership functions integrated in the fuzzy controller are the same as those in (11).The output-feedback polynomial fuzzy controller is defined as follows [27]: where we define h = y T y T r T ; F j (h) and G j (h) are the polynomial feedback gains to be determined; the tracking error is defined by ê = x(x) − xr (x r ).
4) H ∞ performance of tracking control: The tracking performance can be governed by an H ∞ performance index which can be adjusted by the user to minimise the tracking error ê in (15).It origins from the Lyapunov-based stability analysis.The H ∞ performance of tracking control is defined as follows [27]: where t f is the termination time of tracking control; σ 1 and σ 2 are the pre-defined scalars; is termed as a symmetric decision variable which can be obtained in MATLAB; Γ = C T (CC T ) −1 ortc(C T ) and ortc(.)denotes the orthogonal complement; T , the subscripts j 1 , j 2 , ..., j q are the row indices that the entries of the entire row of B i (x) for all i are all zeros, the subscripts k 1 , k 2 , ..., k s are the row indices that the entries of the entire row of B r are all zeros.

5) Stability conditions of the polynomial fuzzy-model-based control systems:
The defining feature and also the superiority of the fuzzy-model-based approach is that various control problems such as trajectory tracking and H ∞ performance can be systematically analysed whilst ensuring the system stability.This gives the theoretical support to physically implement the designed controller.It is derived based on the Lyapunov stability theory.
Before proceeding further, we first describe the following notations which will be employed in the theorem.A polynomial p(x) is a sum of squares (SOS) if it can be written as p(x) = m j=1 q j (x) 2 where q j (x) is polynomial and m is a nonzero integer.Thus, if the condition "p(x) is an SOS" holds, then we have p(x) ≥ 0. SOSTOOLS is a third-party MATLAB toolbox to numerically find solutions to SOS conditions [33].
Theorem 1 ( [27]): The designed polynomial fuzzy controller in ( 15) is guaranteed to enable the states of the polynomial fuzzy model in (11) representing the physical nonlinear system to track a desired reference model in (13) subject to an H ∞ performance of ( 16) if there exists decision variables X(x) referring to (16), M j (h) and N j (h), (j = 1, 2, ..., p), such that the following SOS conditions are satisfied.
, ..., p; i < j; where ν 1 and ν 2 are arbitrary vectors independent of x and x r ; 1 (x) and 2 (x, x r ) are pre-defined positive polynomials; the technical details of Ξ ij (x, x r ) can be found from (29) in [27].The feedback gains can be obtained by .

B. State-space representation
The derived Jacobian in (8) reveals the velocity-level kinematics and fully describes the continuous-time dynamic system.From the control aspect, the mathematical description of the system is expressed as where the equation is known as the state-space model and u = g −1 (h −1 (η)) can be obtained analytically by solving their respective parts of forward kinematics.With the substitution of the above state-space model in the time domain, the state-space controller design techniques such as [27], [28], are enabled towards a dynamic system for the continuum manipulator.

C. Fuzzy model construction via the local approximation
In order to represent the continuum manipulator statespace model embodied in ( 17) by a fuzzy model, a local approximation technique is utilized.In our case, the task space in Cartesian coordinate system for a continuum manipulator with 0.01m diameter is specified as Based on this range of interest, we approximate the statespace model at six different local sets of system states, i.e. η 1 = [0.015,−0.075, 0.075] T , η 2 = [0.015,0, 0.075] T , η 3 = [0.015,0.075, 0.075] T , η 4 = [0.075,−0.075, 0.075] T , η 5 = [0.075,0, 0.075] T , η 6 = [0.075,0.075, 0.075] T .Note that more local sets of system states can be used to establish a more accurate fuzzy model.However, it will lead to higher computational demand.Other advanced fuzzy modelling techniques can be employed to find a better trade-off between the accuracy and computational burden.In this paper, the system state z is only approximated at one point to lower the computational demand.Then, the local state-space models with respect to each set of system states can be obtained like: where the derived input matrices are After deriving the six local state-space models of (19), we then define six fuzzy rules to smoothly combine them to form the overall fuzzy model.Six fuzzy rules are described as Rule i: "around 0.015", M 4 1 = M 5 1 = M 6 1 = "around 0.075"; M i 2 , i = 1, 2, ..., 6, is another fuzzy term of rule i corresponding to the premise variable y, M 1 2 = M 4 2 = "around −0.075", M 2 2 = M 5 2 = "around 0", M 3 2 = M 6 2 = "around 0.075".Since z is approximated at only one point, the transition between local models does not depend on z.Consequently, the premise variables are only x and y.
In order to enable the transitions among the six separate fuzzy rules, we propose the following membership functions.µ M i 1 (x) and µ M i 2 (x), i = 1, 2, ..., 6, are grades of membership corresponding to the fuzzy terms M i 1 and M i 2 , respectively (please refer to Fig. 4).They are defined as The membership functions for the local state-space models are then derived by where w i (η), i = 1, 2, ..., 6, are the employed membership functions and they possess the following property Here we consider the full state-feedback control instead of output-feedback control, thus, C = I which leads to Γ = I.So far, the fuzzy model is established by substituting the derived A i , B i , C, and w i (η) into ( 11) and ( 12) as The difference of each entry between the original state-space model in (17) and the fuzzy model in (26) is measured by the mean absolute error (MAE) for all system states in the range of interest described in (18), which is defined by where N is the number of a series of dense system states in the range of interest; m and n define the (m, n)-th entry of the corresponding matrix; η j is the sampled system state; The calculated MAEs are β 11 = 0.4149, β 12 = 2.4850, β 13 = 2.6373, β 21 = 2.6893, β 22 = 1.2943, β 23 = 1.4764, β 31 = 1.4137, β 32 = 1.2130, β 33 = 0.7695.It can be seen that the fuzzy modelling error exists due to the high nonlinearity of the original state-space model and the limited number of fuzzy rules, which can be reduced in the future.

D. Fuzzy controller design
We first define two trajectory tracking cases to specify the reference model: one is to track a straight line in task space; another one is to follow an ellipse.
The straight line reference model in the form of ( 13) is given by ηr = B r r, where B r = −0.0005−0.002 0.0018 Given the above task, the corresponding fuzzy controller is designed by applying Theorem 1. Choosing the decision variables X, M j , N j as constant matrices; 1 = 2 = 0.001; σ 1 = σ 2 = 0.1 in ( 16); the feedback gains are obtained as follows: Here G i ≈ 0, i = 1, 2, ..., 6, (the magnitude of the entries of the matrix G i is less than 10 −14 ).
The designed fuzzy controller in the form of ( 15) can be acquired to comply with the fuzzy model in (26) as The ellipse reference model in the form of ( 13) is given by where Given this task, the corresponding fuzzy controller is designed similarly by applying Theorem 1. Choosing the decision variables X, M j , N j as constant matrices; 1 = 2 = 0.001; σ 1 = σ 2 = 1 (different from the straight line tracking case) in (16); the feedback gains are then correspondingly obtained as follows: The fuzzy controller in the form of ( 29) can be acquired but with feedback gains F j , G j , j = 1, 2, ..., 6, designed for this ellipse trajectory.

IV. SIMULATION EXAMPLES AND ANALYSIS
We implement the proposed fuzzy controller in MATLAB simulation to investigate its performance.The simulation environment contains the aforementioned task space (see (18)) with respect to a continuum manipulator.The manipulator's mathematical model described in ( 8) is utilized and ode23 function command in MATLAB is executed to generate the continuous navigation path.In order to include the modelling inaccuracies and other real-time errors in simulation and validate the robust performance of the designed fuzzy controller, we introduce an additive term ∆J to the analytically derived Jacobian matrix, i.e. η = (J(u) + ∆J) u. (31) Two different types of reference models respectively describing the straight line and ellipse tracking trajectories are utilized in the simulation.To compare with other controllers, we implement all the controllers in the same situation, where the same additive term in the disturbed model is considered.

A. Straight line trajectory tracking task
In the simulation, the initial states of the disturbed model in (31) and the specified straight tracking trajectory in (28) are defined as η(0) = η r (0) = 0.06 0.06 0.03   inverse Jacobian method.Control input includes both the desired timevarying trajectory and the pre-planned task space velocity with respect to the desired task (trajectory) [15], [34].K is a diagonal matrix and if K = 0, then this control architecture becomes an open-loop control.
To design a fuzzy controller with different H ∞ performances, we choose σ 1 = σ 2 = 100 in ( 16) while other controller design parameters remain the same in Theorem 1.Therefore, the feedback gains can be similarly obtained.
The closed-loop Jacobian-based controller is designed based on (40) in [15] with W = I, K = 0.1I resulting u = J(u) −1 ( ηr + 0.1(η r − η)).The open-loop Jacobian-based controller is simply given by u = J(u) −1 ηr .The performance among the total four controllers are illustrated in Fig. 5(b) and Fig. 7.The proposed fuzzy controller demonstrates the best performance with the minimum tracking errors.Compared with the additional fuzzy controller with different H ∞ performance, the results imply that the smaller the values of σ 1 and σ 2 , the better the H ∞ tracking performance governed by (16).Both implemented fuzzy controllers exhibit a spiral phenomenon and this converged spiral decreases the tracking error around the target.The open-loop and closedloop Jacobian-based controllers suffer from the modelling    inaccuracies.Although the closed-loop controller can reduce the tracking error based on the real-time feedback information, large modelling error results in poor performances.Both Jacobian-based controllers need online updates of the Jacobian which causes a computational burden, which could be particularly problematic in a real-time system; on the other hand, our fuzzy controllers are very efficient and have a low computational load.
The performance indices are calculated by using the Integral Absolute Error (IAE) h1 = where t f = 100 seconds and τ1 , τ2 , τ3 are control inputs representing the controlled tendon speeds of three respective tendons.The results are shown in Table I and they further illustrate the superiority of the proposed fuzzy controller.

B. Ellipse trajectory tracking task
In this simulation, the initial states of the disturbed model in (31) and the ellipse tracking trajectory in (30)  The same drawing convention applies here as used for Fig. 5.In this case, the initial position is [0.065, 0, 0.1] T .The blue, black, cyan, and pink trajectories indicate the trajectories based on the controllers "II-A", "II-B", "II-C", "II-D", respectively.
η r (0) = [0.065,0, 0.1] T .The additive disturbance term, 3×3 matrix ∆J(t), is chosen by assigning each of all 9 entries as 0.1 sin( πt 30 ) .Implementing the designed fuzzy controller in (29) with the feedback gains derived in subsection III-D for the ellipse trajectory case, the simulation results are shown in 8(a).The ellipse tracking task is accomplished perfectly by the designed fuzzy controller.
Here we also compare our designed fuzzy controller (labeled by "II-A") with three other types of controllers: closedloop Jacobian-based controller (labeled by "II-C") and openloop Jacobian-based controller (labeled by "II-D") are same as those used for straight line trajectory tracking task; another linear controller (labeled by "II-B") is designed with the same methodology as to design the fuzzy controller but choosing only one operating point η = [0.04,0, 0.075] T (a special case of the fuzzy model).The linear controller is described as where F = −0.850.02 0.27 −0.85 −0.02 0.28 −0.85 −0.02 0.26 , G = −0.08 −0.12 0.04 −0.08 −0.12 0.04 −0.07 −0.12 0.03 .The comparisons of the four controllers are illustrated in Fig. 8(b) and Fig. 9. Similar results with those for straight line tracking case can be obtained.We can see that although the actual trajectories from both the open-loop and closed-loop Jacobian-based controllers are ellipse-like, they quickly run away from the defined the ellipse after the starting position.The performance of the linear controller obtained from one operating point is worse than the fuzzy controller obtained from six operating points.One operating point is not enough to represent the original nonlinear model.The numerical comparison results using performance indices (i.e.IAE, ITAE, IAV) are given in Table II.As indicated by IAE and ITAE, the proposed fuzzy contoller with the lowest cost provides the best performance.The larger value of the IAV index for the proposed fuzzy controller indicates that there is a cost of control effort to achieve the smaller error.In both Table I

V. EXPERIMENTS
The proposed fuzzy controller is implemented on a tendondriven 3D-printed continuum manipulator, whose design was presented in [29].This continuum manipulator demonstrates an effectively decoupled bending with contraction via three tendons at the periphery, thus, in line with the previously presented kinematic model for a general continuum manipulator.The contraction capability enables the length of the manipulator to vary from the original full length to contract to a length of about 70%.In order to measure the manipulator's tip position, a commercial electromagnetic (EM) tracking system NDI Aurora is used.One 0.8 mm diameter × 11 mm length sensor coil is integrated in the head of the continuum manipulator to track real-time tip positions and orientations.Each tendon is actuated via a DC motor (Maxon Motor ).For comparative purposes, both the traditional Jacobian-based open-loop and closed-loop controllers are implemented under the same condition; Fig. 10 illustrates the experimental setup.

A. System Description
All the three controllers and the reference trajectory generator are implemented in Robot Operating System (ROS) Environment on an Intel Core i3 @2.40GHz and 1.5GB RAM based platform running Linux Mint 13 Operating System.The  The control programs are first tested off-line using simulated tracking sensor feedback.These tests validate the advantage of the fuzzy controller in terms of its reduced amount of necessary calculations.When executed on our computer system, the proposed fuzzy controller operates at an execution rate of 168.79Hz (0.0059 seconds execution time per iteration) as opposed to 40.90Hz (0.0244 seconds execution time per iteration) for the Jacobian-based methods.This big difference in execution time is caused by the fact that the fuzzy controller's feedback gains do not need to be updated.However, the Jacobian-based controllers need to execute numerical integrations to estimate the current length of each tendon and update the Jacobian matrix in every control iteration.Besides, the matrix inversion operation -a complex mathematical process -to inverse the derived Jacobians is needed in Jacobian-based controllers and slows down the computations.Based on the analyzed execution rate above, the system is thus determined to be executed with a sampling rate of 40 Hz.

B. Experimental results and analysis
To implement the fuzzy-model-based control for experimental studies, six different local operating points [7, −31.5, 122], [7, 0, 122], [7, 31.5, 122], [31.5, −31.5, 122], [31.5, 0, 122], [31.5, 31.5, 122] (Unit: mm), with respect to the specified workspace range, are chosen to approximate the state-space model.Accordingly, membership functions are then derived and utilised for both fuzzy model construction and fuzzy controller design.The experimental results are illustrated in Fig. 12.Despite the fact that model discrepancies and hardware tolerances exist, the proposed fuzzy-model-based approach still accomplishes the tracking task.As shown in Fig. 12(a), the final stage of the experimental recorded trajectory presents a converged spiral, which indicates the feasibility of the controller.For comparison purposes, we also implemented two other traditional Jacobian-based controllers and tested in an experimental study.Figs.12(c) and 12(d) show tracking performance with an open-loop Jacobian-based controller; Figs.12(e) and 12(f) show tracking performance with a closed-loop Jacobian-based controller (K = 0.1I), whose control architecture is shown in Fig. 6.From Fig. 12, we can see that both traditional controllers achieve the tracking tasks but there exist a significant distance between the end-point to the target.Based on Figs.12(c) and 12(e), the performance with the closed-loop controller is better than the performance with the open-loop controller.The open-loop control execution leads to an accumulation of the tracking errors, and it can be seen that the experimental recorded trajectory gradually moves away from the reference without any trend to decrease the error.The closed-loop Jacobian-based controller keeps to a trajectory that is almost parallel with respect to the reference.After 40 seconds when the reference model terminates at the target point, the closed-loop control will drive the tip of the   Besides, the (fuzzy-model-based) PI control can be achieved by adding an integral term.The analysis will remain more or less the same but the integral term will increase the dimensions of the (augmented) system and input matrices.Given that the current performance is acceptable in simulations and experiments, and, in order to avoid complicating the controller, the integral action is not considered in this work.

VI. CONCLUSIONS AND FUTURE WORK
A fuzzy controller has been proposed for autonomous execution of end-effector trajectory tracking tasks of a continuum manipulator, overcoming model complexities and uncertainty issues that plague other types of controllers.In MATLAB simulations, the proposed controller was implemented and compared with three other controllers.The results showed that the designed fuzzy controller had the best performance with regards to the minimum tracking errors and accomplished both tracking tasks efficiently.The other Jacobian-based controllers suffered from model inaccuracies.Experiments were conducted employing a rapid-prototyped continuum manipulator.The results verified the feasibility of the controller in presence of modelling discrepancies and hardware tolerances.Some limitations are discussed here.The proposed fuzzy approach has a high computational complexity when deriving the controller gains, especially when we choose more linearization points; this could be solved by using highperformance computers.Besides, we did not use the exact original nonlinear model (we linearized it) when deriving the controller, and more rules are required to achieve a more accurate model.Therefore, it is critical to find a balance between the better performance and more rules.Future work will include refining the controller design and testing the controller with practical continuum manipulator systems.A future work on both dynamic model and elastic material's hysteresis issue will help further understand and control such continuum manipulators.Multi-section continuum manipulators with more degrees-of-freedom are to be analysed and controlled with the fuzzy-model-based approach.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited.Content may change prior to final publication.Citation information: DOI 10.1109/TIE.2016.2554078,IEEE Transactions on Industrial Electronics IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS

Fig. 1 .
Fig. 1.Kinematic mapping and its decomposition of a continuum manipulator modelled using constant-curvature theory.

Fig. 2 .
Fig. 2. Diagram of a continuum manipulator bending in (a) 2D space and in (b) 3D space.The configuration variables and different coordinate systems are illustrated.

•
Bending Plane Coordinate System {x b y b z b } is defined such that continuum manipulator always bends in the x b -z b plane.The origin O b coincides with the origin O and the z b axis is collinear with the z axis.• End-effector Coordinate System {x e y e z e } is attached to the tip of the continuum manipulator.The origin O e is at the centre of the tip cross section and the z e axis tangent to the backbone curve, or equivalently normal to the tip cross section.For convenience, the x e -z e plane is coplanar with the bending plane x b -z b .

Fig. 3 .
Fig.3.Overview of a task space closed-loop tracking control system using the fuzzy-model-based approach for continuum manipulators.η r represents the desired end-effector trajectory in task space.G j and F j , (j = 1, 2, ..., 6), are feedback gains.(˙) is a time derivative and u denotes the end-effector motion velocity.The feedback information is acquired with position sensors.

Fig. 5 .
Fig. 5. (a) Performance of the designed fuzzy controller used to track a straight line trajectory (Unit: m).The trajectory of the continuum manipulator tip in 3D task space are captured and illustrated in blue line and the central backbone shape of the continuum manipulator is illustrated in pink; The green dot indicates the initial position [0.06, 0.06, 0.03] T and the red dot indicates termination position [0.03, −0.06, 0.135] T ; the green dotted line shows the specified reference trajectory.(b) Performance comparisons of the four controllers shown via the x-y plane view of 3D task space.The blue, black, cyan, and pink trajectories indicate the trajectories based on the controllers "I-A", "I-B", "I-C", "I-D", respectively.A "zoom-in" view around the target is presented, which shows the spiral phenomenon associated to our fuzzy controllers.

Fig.
Fig. Overview of a closed-loop control that is based on the (pseudo)inverse Jacobian method.Control input includes both the desired timevarying trajectory and the pre-planned task space velocity with respect to the desired task (trajectory)[15],[34].K is a diagonal matrix and if K = 0, then this control architecture becomes an open-loop control.

Fig. 7 .
Fig. 7. Illustrations of time responses with respect to each of the four controllers: (a) I-A, (b) I-B, (c) I-C, and (d) I-D, respectively.

Fig. 8 .
Fig.8.Simulated performances for the ellipse trajectory tracking task.The same drawing convention applies here as used for Fig.5.In this case, the initial position is [0.065, 0, 0.1] T .The blue, black, cyan, and pink trajectories indicate the trajectories based on the controllers "II-A", "II-B", "II-C", "II-D", respectively.

Fig. 9 .
Fig. 9. Illustrations of time responses with respect to each of four controllers: (a) II-A, (b) II-B, (c) II-C, and (d) II-D, respectively.

Fig. 10 .
Fig. 10.Experimental setup.The controllers are implemented on a tendon-driven continuum manipulator with validated constant-curvature bending performance.The NDI Aurora EM position sensor is used for the purpose of tracking the manipulator tip.
control signal is fed to the EPOS2 Module motor controller to control the velocities of three Maxon DC Motors, each equipped with encoders to ensure precise velocity control.The motors are connected to the tendons via a gearbox with a reduction ratio of 128:1.The rotation of the motors moves each tendon with the desired velocity.A change in tendon length will move the tip of the continuum manipulator; the motor control is based on the kinematic model.An Aurora sensor coil, embedded in the tip of the manipulator, will give the position of the tip with respect to another sensor coil embedded in the base of the manipulator.This information is fed to the computer via the NDI Aurora tracking system and used as a feedback to the fuzzy controller.A standard Jacobian-based closed-loop controller receives Aurora signals in the same way during the comparative experiments.The reference trajectory in this experiment is chosen to be a straight line measured with respect to the base of the robot.The reference trajectory position, as well as the manipulator tip's position and the tendon velocity as control signal are also recorded via ROS to enable further analysis and documentation.The block diagram of the experimental system integration is shown in Fig. 11.The parameters of the experiment are as follows: the length of manipulator l = 143 mm; cross-section radius d = 13.4 mm; the specified workspace range x : [7, 31.5],y : [−31.5, 31.5],z : [110, 134], where the coordinate system is in accordance with the global coordinate system as shown in Fig. 2(b) (unit: mm); velocity B r = [0.250,0.750, 0.267]; 70 seconds duration.

Fig. 11 .
Fig. 11.Block diagram of the experimental system integration.
IV-A: the proposed fuzzy controller; IV-B: closed-loop Jacobian-based; IV-C: open-loop Jacobian-based.manipulator to gradually approach the steady target, while the open-loop control terminates at exactly 40 seconds.Due to the delay on the ROS Node initialization, the controller does not start to produce control signals immediately, rather it lags by a small duration of time at the beginning of the experiments.The numerical comparisons regarding the performances with these three different controllers are given in TableIII.It can be seen that, with regards to the targeting precision and these performance indices of the proposed fuzzymodel-based controller shows advantages.It is also to be noted that the performance of implementing the open-loop controller reflects the accuracy of our kinematic model and the hardware shortcomings.Both the closed-loop Jacobian based controller and the proposed fuzzy-model-based controller still have space to be further improved so that a better tracking performance can be expected.These experiments in this paper validate the feasibility of the fuzzy-model-based controller to be implemented for continuum manipulators with some appealing advantages.This is the first work of achieving task space closed-loop control with a fuzzy-model-based approach.

Fig. 12 .
Fig. 12. Experimental results of a trajectory tracking execution via fuzzymodel-based approach (shown by (a) and (b)), open-loop Jacobian based approach (shown by (c) and (d)), and closed-loop Jacobian based approach (shown by (e) and (f)).The figures in left column show the experimental recorded trajectory in 3D space and the zoomin view around the target.The green dot indicates the initial position and red dots indicate the termination positions.The green line shows the specified reference trajectory.The magenta trajectory indicates the trajectory based on the applied controller.The figures in right column show the tendon speed control signals.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited.Content may change prior to final publication.Citation information: DOI 10.1109/TIE.2016.2554078,IEEE Transactions on Industrial Electronics 0278-0046 (c) 2015 IEEE.Personal use is permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICSA.Polynomial fuzzy-model-based stability conditions This article has been accepted for publication in a future issue of this journal, but has not been fully edited.Content may change prior to final publication.Citation information: DOI 10.1109/TIE.2016.2554078,IEEE Transactions on Industrial Electronics ) 0278-0046 (c) 2015 IEEE.Personal use is permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS Transactions on Industrial Electronics (29)he additive disturbance term is chosen as ∆J =   in the case.This value is chosen based on expert knowledge and it is approximately the mean value to simulate disturbance in our experimental setup.Implementing the designed fuzzy controller in(29), the simulation results are shown in Fig.5(a).We can see that the trajectory tracking task is effectively achieved by the proposed fuzzy controller.

TABLE I NUMERICAL
COMPARISONS OF DIFFERENT CONTROLLERS' STRAIGHT LINE TRACKING PERFORMANCES VIA PERFORMANCE INDICES.
and Table II, the execution rates of all implemented controllers are listed for comparison, which indicates that the fuzzy controller operates faster and has the superiority of a low computational cost compared to conventional Jacobian-based methods.

TABLE II NUMERICAL
COMPARISONS OF DIFFERENT CONTROLLERS' ELLIPSE TRAJECTORY TRACKING PERFORMANCES VIA PERFORMANCE INDICES.
0278-0046 (c) 2015 IEEE.Personal use is permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.This article has been accepted for publication in a future issue of this journal, but has not been fully edited.Content may change prior to final publication.Citation information: DOI 10.1109/TIE.2016.2554078,IEEE Transactions on Industrial Electronics IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS

TABLE III NUMERICAL
COMPARISON OF DIFFERENT CONTROLLERS TACKING PERFORMANCES IN EXPERIMENTS.