General Forward Kinematics for Tendon-Driven Continuum Robots

Unlike the inverse kinematics problem of n -tendon continuum robots, the forward kinematics problem lacks a closed-form analytical solution. In this paper, a novel forward kinematics algorithm for n -tendon single-segment ﬂexible continuum robots is developed that can determine the resulting beam conﬁguration for any given set of actuator displacements. The algorithm determines key parameters of all possible n - to 1-tendon combinations and examines them against evaluation criteria to ﬁnd the ﬁnal beam conﬁguration as well as the active/slack status of the tendons at this conﬁguration. The algorithm employs a previously developed analytical loading model for n -tendon continuum robots with general tendon positioning to evaluate the tension loads in tendons for each combination. Potential energy of the beam is also calculated for all combinations and utilized to choose among multiple potential solutions. The model is derived to account for the bending and axial compliance of the manipulator as well as tendon compliance. A multi-tendon continuum robot system is employed to experimentally evaluate the proposed forward kinematics solution. Multiple experiments are carried out for the exhaustive list of all possible combinations of different sets of tendon displacements and the results are reported. The proposed forward kinematics algorithm may be used to understand the implication of control errors and their nonlinear effects for optimal selection of hardware and control algorithm for safety and reliability purposes.


I. INTRODUCTION
Continuum robots are continuously bending manipulators with theoretically an infinite number of degrees of freedom (DOF) [1]. They are inspired by natural continuum structures like elephant trunks [2], octopus arms [3], squid tentacles [4], and snakes [5], [6]. Their continuous structure and inherent compliance enable them to exhibit elastic deformation along their entire length and offer an opportunity to overcome the limitations of rigid-link robots [1]. This makes them well-suited for a variety of applications from industrial inspection to minimally invasive surgery (MIS), where there is a requirement for navigating through complex and constrained environments [7]- [16]. In the medical field, catheters and catheter-like instruments are well-known examples of continuum structures that have gained attention in minimally invasive treatments [17], [18]. Instead of being defined by a finite set of joint parameters [19], [20], they The associate editor coordinating the review of this manuscript and approving it for publication was Derek Abbott . are more accurately defined with spatial curves [21]. This introduces more complexity in kinematics and control of these systems as opposed to rigid link structures [22]- [24].
Tendon-driven mechanisms are well-known actuation systems for continuum robots and catheters that are inspired by biomechanical systems [25]. In tendon-driven continuum robots, inverse kinematics analysis is used to determine the tendon displacements for a given beam configuration in the workspace [14], [15], [24], [26], [27]. There is always a solution for the inverse kinematics of continuum robots as there is always a set of tendon displacements associated with a given beam configuration [10]. This leads to the development of straightforward geometric models to solve the inverse kinematics problem [15], [25], [28], [29]. However, there may or may not exist an inverse kinematics solution with all positive tensions in tendons. This means that some of the tendons would have to push like a solid rod in order to reach to a given configuration. But tendons can only support tension and in compression they buckle (go slack) because of their low bending stiffness [18], [26]. This produces a coupled mechanical and kinematics problem that requires the tendon tensions to be included in the kinematics analysis in order to solve the inverse kinematics and obtain the required actuator displacements to reach the configuration [10], [24].
In tendon-driven flexible continuum robots regardless of slack in tendons, a configuration will be always reached by arbitrarily displacing the tendons providing that the resulting beam configuration is within the workspace of the robot. This means that there is always a solution for the forward kinematics of continuum robots for a given set of arbitrary actuator displacements even if these displacements cause slack in one or some of the tendons. Unless the given tendon displacements are an inverse kinematics solution for a beam configuration in workspace, they will produce slack in one or some of the tendons. Therefore, slack should be studied in the forward kinematics solution algorithm to determine active and slack tendons as well as the resulting beam configuration. Forward kinematics solutions for 2-and 3-tendon flexible continuum robots without considering slack were proposed based on the geometric model of the continuum structure [15], [25], [28]- [31]. Kinematics models of n-tendon continuum robots were also studied and mathematical formulations were developed [10], [24], [32]. A general forward kinematics solution was not determined in this prior work and the model may be used to only determine if a beam configuration can be reached for a given set of tendon displacements without slack in tendons.
The main contribution of this study is the development of an algorithm that, for any given set of arbitrary actuator displacements, determines the resulting beam configuration and the active/slack status of the tendons at this configuration. The algorithm accounts for bending and axial deformation of the continuum structure as well as the axial deformation of the tendons. Experimental validations based on a 6-tendon configuration are conducted to evaluate the proposed algorithm. To the best knowledge of the authors, the general forward kinematics problem has not been studied before in the literature. This algorithm may be useful in the design process to characterize the sensitivity of the manipulator in the presence of actuator errors for different number of tendons. It helps identify the required number of tendons as well as accuracy of controller and actuators for any specific applications given the acceptable error at the tip.
In the following section, the forward kinematics problem is described. The proposed algorithm to solve the forward kinematics problem is explained in Section III. Section IV provides details about experimental setup, procedure and results followed by discussion and concluding remarks in Section V. Figure 1 shows the schematic description of the articulating beam of a single segment cable-driven continuum robot with three DOFs and n generally positioned tendons (n = 6 in this case) in an arbitrary configuration defined with bending angle (θ), pending plane angle (φ), and beam length FIGURE 1. Schematic description of the articulating beam of a tendon-driven catheter with n generally positioned tendons (n=6 in this description) for a beam configuration (θ, φ, and L c ) [33]. along its centerline (L c ). The forward kinematics problem of continuum robots is to determine the beam configuration ([θ, φ, L c ]) for a given set of arbitrary actuator displacements ( L a i ). The given displacements may cause slack in one or some of the tendons. Therefore, in order to solve this problem, it is required to find the active set of tendons contributing toward the resulting beam configuration. As opposed to the inverse kinematics of continuum robots that is relatively straightforward, solving the forward kinematics problem requires study of all possible tendon combinations in terms of tendon displacements and tensions as well as beam potential energy.

II. PROBLEM DESCRIPTION
As shown in the figure, O xyz is the reference Cartesian coordinates origin positioned at the base of the beam. The length of the tendons from the termination point at the end of the beam to the base section of the beam is denoted by L i (i = 1, . . . , n). The tendons are embedded in the beam parallel to the centerline at radius of R i (i = 1, . . . , n) from the center of the beam and at angle of α i from the reference plane. For ease of illustration, the tendons are presented as infinitesimally thin tension elements.
The assumptions involved in this study include (a) the friction between the tendons and the lumens is zero [10], [34], (b) the tendons always run parallel to the centroidal axis of the beam [10], [27], (c) compared to the elastic deformation energy, gravity and inertial effects are negligible [24], [35], and (d) the robot is under quasi-static equilibrium [36]. In the absence of external loading and disturbance, a set of material assumptions leading to linear elastic bending, linear axial deflections and constant curvature are also exploited in the model. [26], [37], [38].  Compute the beam potential energy using Equation (6); -220 Record status parameters of S 1 , S 2 , and S 3 , as well as the potential energy of this combination; Proceed with the next list of (j − 1)-tendon combinations;

III. FORWARD KINEMATICS
Algorithm 1 presents the proposed algorithm for solving the forward kinematics problem of n-tendon continuum robots and finding the resulting beam configuration and the active and slack tendons for a given arbitrary actuator displacement.
The given actuator displacements are comprised of tendon displacements and stretches due to the tension loads in the tendons. Therefore, the algorithm accounts for the bending and axial compliance of the beam structure as well as tendon compliance. The algorithm investigates all possible cases of n-to 1-tendon combinations exhaustively in three different phases. Commanding an arbitrary actuator displacement set to a continuum robot moves the beam structure to a configuration. At this resulting configuration, only a subset of tendons may be active and under tension, while the rest of the tendons are slack with zero tension load. Therefore, to solve the forward kinematics problem, the algorithm must study all possible tendon combinations and examine the resulting beam configuration, tendon tensions and beam potential energy for each combination. The algorithm, as shown in Figure 2, begins with generating the exhaustive list of tendon combinations from maximum number of tendons n to single tendon cases (Line 4). For instance, in case of a robot with 6 tendons, the algorithm examines 63 tendon combinations including 1, 6, 15, 20, 15, and 6 combinations of 6 to 1 tendon(s), respectively. By nature, the beam structure distributes the loading caused by the beam potential energy (internal) and contact with outside environment (external) among as many tendons as possible based on their locations, displacements, and properties. Therefore, the algorithm commences the examination from the largest number of possible tendons (n tendons) and narrows the investigation to lower number of tendons until it reaches the single tendon combinations (Line 5). Once the computation steps (Phase 1 -Line 11) of all of the j-tendon (j = n, . . . , 1) combinations are completed (Line 6), the evaluation criteria are calculated (Phase 2 -Lines 12 to 19) for possible solution(s) (Phase 3 -Lines 21 to 29). These phases will be explained in the following sections.

A. PHASE 1 -CONFIGURATION CALCULATION
One of the key steps in the proposed algorithm is to determine the resulting beam configuration ([θ, φ, L c ]) for a j-tendon combination ( Figure 2) based on the given actuator displacements for the combination which is listed as procedure FindBeamConfig in the Algorithm 1 (Line 31). The resulting beam configuration for each tendon combination will be used in the following steps to determine the required tendon tensions and actuator displacements to be compared against the given actuator displacements. For example, in case of a 4-tendon combination consisting of tendon numbers 1, 2, 4, and 6, expressed as combination 1246, the algorithm needs to determine the resulting beam configuration by considering the given actuator displacements for the four active tendons of 1, 2, 4, and 6 and two slack (inactive) tendons of 3 and 5. Accounting for elasticity in tendons, the actuator displacements in continuum robots [39] is expressed as where L i and δ i are tendon displacements and stretches, respectively. The tendon displacements can be determined using the geometry-based inverse kinematics solution [39] as To determine the tendon stretches, the tension loads of the active tendons need to be determined. The previously developed analytical loading model for n-tendon continuum robots with general tendon positioning is employed in order to determine the tension in tendons of a combination [39]. This model, for a given beam configuration within the workspace, determines the unique tensions in generally positioned tendons. These tensions correspond to the actuator displacements based on the inverse kinematics and tendon extensions. The tension in i-th tendon of a n-tendon continuum robot developed in this model is expressed as a function of beam configuration ([θ, φ, L c ]), number of tendons (n), beam geometry (radius R and cross section area A), beam mechanical properties (Young's modulus E and area moment of inertia I ), beam initial length at rest (L 0 ), tendons radial locations (R 1 , . . . , R n ), and tendons angular locations (α 1 , . . . , α n ) as Based on Hook's law and the tendon tension of Equation (3), the axial extension in i-th tendon is where E t , A t , and L 0 t are the Young's modulus, cross section area, and initial length of the tendon at rest, respectively. Using equations (1), (2), and (4), the actuator displacements L a i are derived as It is worth noting that, as presented in Equations (3) and (5), tension loads and actuator displacements of the tendons are VOLUME 10, 2022 both dependent on the number of tendons. In other words, each of Equations (3) and (5) produces a set of n equations, one equation per tendon. This means that, for example, the 2-th tendon in a 3-tendon continuum robot has different tension load and actuator displacement that those of the 2-th tendon in a 4-tendon continuum robot.
Given the fact that in the forward kinematics problem the actuator displacements are given, this set of equations can be used to determine the beam configuration. Based on the nonlinear nature of this set of equations, a numerical method is chosen to calculate the beam configuration of the continuum robot for the given actuator displacements. Considering the three variables of beam configuration (θ, φ, and L c ), Equation 5 results in an over-determined system for 4 or more tendons, three variables and four or more equations. However, as previously concluded [33], the tendon displacements and stretches of Equation (1) correspond the unique set of tendon tensions of Equation (3). Therefore, for 4 or more tendon combinations, any set of three equations produced by Equation (5) may be used to determine the beam configuration variables θ, φ, and L c . It is worth noting that the proposed forward kinematics solution has no issues handling the well known singularity at home configuration in vertical position [22], [40]. The reason is that the proposed solution involves inverse kinematics solution which results in zero bending angle for zero tendon displacements at home position.

B. PHASE 2 -CRITERIA STATUS DETERMINATION
The objective of this phase is to calculate different criteria including inactive and active tendon displacements and tensions for evaluating the potential solutions in the next phase. There are multiple criteria that need to be satisfied for a continuum robot to be in equilibrium at a beam configuration. Active and passive tendon displacements and tensions as well as the beam potential energy are engaged in these criteria. So, based on the given actuator displacements, tendon combinations, resulting beam configuration and tendon tensions, the algorithm determines binary criteria statuses (true/false) for all combinations to be evaluated later in Phase III-C. These criteria will be described in the following sections.

1) CRITERION 1 -INACTIVE TENDON DISPLACEMENTS
For a tendon combination to result in a physically feasible beam configuration, the actuator displacements of the active tendons must cause zero tension in the inactive tendons when the beam is at the resulting configuration. In other words, the resulting beam configuration of a tendon combination should produce tendon displacements not larger than the given actuator displacements for the inactive tendons in the combination. For example, for the tendon combination 1246 when the beam is at the resulting configuration, the displacements of the inactive tendons 3 and 5 (determined in phase III-A) should be smaller or equal to the given actuator displacements of these two tendons. This will guarantee slack or zero tension in tendons 3 and 5 confirming that they are inactive tendons.
In order to determine this criterion, the beam configuration determined in Phase III-A serves as input for the Equation (2) to calculate the tendon displacements at the resulting beam configuration Figure 2. The algorithm compares these tendon displacements with the given actuator displacements and determines the status of this criterion noted as S 1 in the Algorithm 1 (Line 13). It should be noted that, although the given actuator displacements contain the tendon extensions as well as the tendon displacements, they are compared with the tendon displacements obtained directly from Equation (2) which does not contain tendon extensions. This is because this comparison is performed only for inactive tendons which are supposed to have zero tension and consequently zero tendon stretch. This produces displacements in inactive tendons equivalent to those commanded to the actuators of these tendons.

2) CRITERION 2 -TENDON TENSIONS
A potential tendon combination physically exists only if it produces tension in active tendons and zero tension in passive tendons. Based on the calculated beam configuration for a tendon combination and using the loading model expressed in Equation (3), the tensions in active tendons are determined. For example, for the tendon combination 1246, the radial and angular locations of the tendons 1, 2, 4, and 6 are used in Equation (3) to derive four equations for the four tendons and determine the tension loads using the previously developed method [33]. The proposed forward kinematics algorithm ( Figure 2) examines these tension loads for any potential slack in active tendons and determines the second criterion noted as S 2 in the Algorithm 1 (Line 15).

3) CRITERION 3 -ACTIVE TENDON DISPLACEMENTS
The third evaluation criterion is related to the active tendons in the combinations. The actuator displacements of the active tendons required to reach the beam configuration obtained in phase III-A should be identical to the given actuator displacements for the active tendons of the combination. Two methods may be used to evaluate this criterion. The first method is to compare the resulting beam configurations of a tendon combination based on all possible 3-tendon combinations. As mentioned in Section III-A, any set of three equations produced by Equation (5) may be used to determine the beam configuration variables θ, φ, and L c . A physically possible tendon combination should result in similar beam configuration regardless of the three equations chosen in Phase 1. Therefore, this criterion is satisfied if the beam configuration calculated based on all possible 3-tendon combinations of the active tendons are identical.
The second approach is to use the beam configuration calculated based on any set of three tendons in Phase 1 and determine the required actuator displacements for this particular beam configuration. By comparing the given and required actuator displacements, this criterion is evaluated. A numerical method in Phase 1 determines the beam configuration based on the actuator displacements. This makes the first method computationally expensive especially for higher numbers of tendons. Therefore, the second method is chosen to determine the status of this criterion. The resulting beam configuration, obtained from the procedure FindBeamConfig in the Algorithm 1 (Line 31), is utilized in Equations (1) to (4) to determine the required actuator displacements. The algorithm (Figure 2), compares these displacements with the given actuator displacements for the active tendons of a combination and determines the status of this criterion noted as S 3 in the Algorithm 1 (Line 18).

C. PHASE 3 -COMBINATION EVALUATION
In this phase, the algorithm evaluates the status parameters to find physically feasible tendon combination(s) based on the calculation steps for all j-tendon (j = n, . . . , 0) combinations and the criteria status parameters. The algorithms begins the evaluation process with the j-tendon combinations with highest number of tendons (j = n) to lowest number of tendons (j = 0). The tendon combination with largest number of active tendons that satisfies all criteria would be a potential solution for the forward kinematics problem. There may be some cases with more than one potential solutions from j-tendon combinations satisfying all of the criteria. Based on the theorem of Minimum Potential Energy (MPE), among the multiple potential solutions, the one causing minimum potential energy in the beam structure would result in a stable situation and it would be the solution to the forward kinematics of continuum robots (Figure 2). The potential energy of the beam due to the bending and axial compression at the resulting beam configuration for all combinations are determined in the Algorithm 1 (Line 19) as ( [39]) If there are potential solution(s) among j-tendon combinations, the algorithms stops the evaluations process and proceeds to find the final solution based on the number of potential solution(s). However, if none of the j-tendon combinations satisfies all criteria, the algorithm proceeds to examine combinations with j − 1 tendons. This process continues until potential solution(s) are found. As discussed before, the forward kinematics problem of continuum robots always has a feasible solution providing that the arbitrary actuator displacements causes a physically reachable beam configuration ( Figure 2). However, if the algorithm does not find any potential solution, it means that applying the given arbitrary actuator displacements does not generate tension in any of the tendons and there is no active tendon. An example of this case is when negative displacements are commanded to all actuators. This causes slack in all tendons and no movement in the continuum structure (θ = 0, φ = 0, and L c = L 0 ).

A. EXPERIMENTAL SETUP
In order to evaluate the proposed forward kinematics algorithm described in Algorithm 1, a 6-tendon robotic catheter system is commanded to a series of arbitrary actuator displacements in open-loop control architecture. The resulting beam configurations in the robotic system as well as the active and slack tendons are compared with those obtained from the algorithm for the given actuator displacements. Before commanding a displacement set, the catheter was commanded to its home configuration (at rest in vertical position with zero tension in tendons) as shown in Figure 3. The robotic catheter system, presented in Figure 3, is integrated with a real-time vision-based 3D reconstruction system to obtain shape and pose of the catheter tube [21]. DC geared motors (Model EC-max 22, Maxon Motors Inc., 6072 Sachseln, Switzerland) are utilized for the actuation of the tendons (Figure 3). Loadcells (Model FC22, Phidgets Inc., Calgary, Canada) are incorporated into the actuation modules using a flexure mechanism to measure the tension loads in tendons.
Tendons used in this setup are Spectra microfilament braided lines (Spectra, PowerPro Inc., Irvine, CA, United States). To decrease the friction between the tendon and pulleys, low-friction pulleys with ball bearing are employed VOLUME 10, 2022 in the system. The multi lumen catheter was molded out of urethane rubber compounds (PMC 780, Smooth-On Inc., Macungie, PA, United States). The catheter is 160 mm in length and 6 mm in radius with 6-lumens located at the radius of 3.5 mm from the centroid axis. The Young's modulus of the tubes and tendons are measured using an Instron 5566 universal testing machine to be 5.9 MPa and 48.9 GPa, respectively. Tendons are passed through the lumens and knotted to the actuator spools from one end and to a cap from the other end at the distal end of the catheter. The system was operated by a PC with Intel Core i7 processors running at 3.00 GHz with 16 Gb of memory.

B. EXPERIMENT PROCEDURE
Arbitrary tendon displacements from a range of −2 to 8 mm are chosen for the experiments. Maximum displacement of 8 mm, causing maximum bending angle of around 67 deg, is chosen to avoid excessive loads on the catheter and tendons. Negative displacement of −2 mm is chosen to cause slack in tendons and make sure that only tendons with positive displacements are under tension. Negative displacement is chosen because of the fact that, depending on the displacements, geometry and mechanical properties of the beam and tendons, there may be some cases where applying positive displacement to, for example, only one of the tendons activates other tendons and causes positive tensions in other tendons as well. For example in a 6-tendon catheter, if the actuator displacements of [8, 0, 0, 0, 0, 0, 0] mm are commanded to the robot to cause slack in all tendons except tendon 1, although only the tendon 1 is actuated with positive displacement, once the beam reaches the resulting configuration, tendon 4 is also active and under tension. This is because the neutral surface of the beam is located inside the beam causing opposite displacements of the tendons located in both sides of the neutral surface. For this extreme example and based on the geometry and mechanical properties chosen in the experiments, applying the displacement of 8 mm to the actuator of the tendon 1 causes negative extension of −1.08 mm at the location of tendon 4. To guarantee that the tendon 4 is slack and is not contributing toward the final configuration of the beam in case of this example, it should be actuated with a negative displacement with magnitude of more than 1.08 mm. Therefore, −2 mm displacement is chosen to guarantee slack and zero tension in inactive tendons.
The exhaustive list of 6-tendon displacement sets from seven groups of two-variant displacements of [2, −2] to [8, −2] mm are generated and commanded to the robot one after another in separate experiments. The exhaustive list for the case of the displacement group of, for example, [3, −2] mm, contains the 64 possible displacement sets including those listed in Table 1. As discussed before, commanding the first displacement set listed in the table to the robot causes slack in all tendons and no changes to the beam configuration.
In each experiment, all actuator displacements sets from a group were commanded to the robot one by one.   Figure 4, respectively from top to bottom. Other two-and three-variant displacement groups produce distributions with different sizes but with similar shapes to Figures 4a and 4b, respectively. As shown in the figures for the both cases of two-and three-variant groups, the reached tip positions distributed around the entire workspace of the robot, but with more condensed points in case of the three-variant group.

C. SLACK CONSISTENCY RESULTS
For each actuator displacement set commended to the robot, the tension loads produced in tendons at the reached beam configuration are measured. These tendon tensions loads are studied to determine the status of the tendons whether they are active or slack. The status of the tendons are compared with those obtained from the proposed algorithm for the same actuator displacement set. Initial guesses of [0, 0, L 0 ] are used in the algorithm to numerically solve for the beam configuration parameters, [θ, φ, and L c ], respectively. Figure 5 presents the percentage consistency of the results from the experiment with those from the algorithm in calculating the correct tension loads in the tendons for two-and three-variant groups of actuator displacements, respectively from top to bottom. The percentage consistency is calculated based on the number of tendons with similar status (active or slack) obtained from the algorithm compared to those obtained from the experiments.
As shown in Figure 5a, the consistency of the results increases as the magnitude of the displacement increases. Bigger actuator displacement causes more tensions in tendons which results in more significant and distinguishable differences between active and slack tendons. Smaller tendon displacement (first two sets of [2, −2] and [3, −2] mm in Figure 5a) causes less tendon tension and bending. This, combined with effects of viscoelasticity and memory in the continuum structure around its home position [39], leads to more measurement errors and more discrepancy between the results. The results from the experiments and the proposed algorithm have complete consistency for the two-variant displacement sets of [4, −2] mm and more.
As shown in Figure 5b, the consistency of experimental results and those obtained from the algorithm increases as the magnitude and differences between the three-variant displacements increases. This is due to the larger magnitude of the tension loads and bigger differences among them for the displacements sets of the three-variant groups with higher magnitude and differences between the actuator displacements. Results shows less consistency for the three-variant displacements (Figure 5b) compared to that of two-variant displacements (Figure 5a). As it is clear in Figure 4, the three-variant displacements result in many variants of beam configurations distributed around the workspace that are very close to each other. The closer the configurations, the higher chance of discrepancy due to slight inaccuracy in experiments. It is worth noting, that the lower inconsistency exists only for very close configurations.
Examples of the cases with inconsistency between the results from experiments and algorithm for the cases of two-variant displacement sets are presented in Figure 6. Tendons at which there is an inconsistency between the results from the experiments and the algorithm are illustrated with dashed circles. Under each example the results from both experiments and algorithm are listed. As proposed in previous work [33], [39], there is a unique set of tendon tensions corresponding to the actuator displacements based on the inverse kinematics and tendon elasticity for a given beam configuration. This means that if, based on the inverse kinematics solution for a given configuration in a continuum robot with elastic tendons, a set of actuator displacements is commanded to the robot, the resulting tendon tensions are unique. The beam structure distributes the loads among all the tendons based on their locations if the actuator displacements correspond to the given configuration. This means that, for example, when all tendons are actuated with similar displacements, they all should have similar tensions as the beam distributes the loads evenly among them. As shown in example 1 (Figure 6a), based on the results from the algorithm, all tendons are determined to be active under this displacement set. However, tendon 4 is slack based on the experimental results. There are even a few cases where there VOLUME 10, 2022 are two differences between the results from the experiment and algorithm (Figure 6c).
To have better understanding of the range of potential experimental errors causing slack in one to three of the tendons, the magnitude of the more negative displacements required to cause slack for equal displacements of 2 to 8 mm on all tendons are calculated and plotted in Figure 7. These values can be calculated, for example, for 5 mm displacements by applying equal 5 mm displacements to all actuators and then gradually increasing the negative displacement in one of the actuators. This value would be equal to the increased displacement at which the corresponding tendon goes slack. As implied, for the cases of 2 and 3 mm even displacements applied to all tendon actuators, a tendon goes slack if it is negatively actuated only for more than 0.18 and 0.27 mm, respectively. This slack-causing error increases as the displacement increases and reaches as high as 0.73 mm for 8 mm even displacements among tendons. Two nearby tendons can go slack if, in cases of 2 and 3 mm displacements, there are negative displacement errors of more 0.44 and 0.67 mm, respectively. This error needs to be more than 1.77 mm in magnitude to cause slack in two nearby tendons in case of 8 mm displacement.

D. FORWARD KINEMATICS ACCURACY
Mean absolute and maximum absolute errors in bending angle, bending plane angle, and length of the continuum structure between experimental results for groups of twoand three-variant actuator displacements and those calculated using the proposed algorithm for similar sets of displacements are presented in Figures 8 and 9. As shown in these figures, errors in calculation of bending angle and length of the continuum structure increases as the magnitude of the actuator displacement increases which makes sense as the bigger actuator displacements cause bigger changes in bending angle and length of the continuum structure and consequently larger errors. The errors in bending plane angle have more consistent behavior across all groups of two-and three-variant displacements. This constant error behavior demonstrates the independency of the bending plane angle to the magnitude and range of the errors in actuator displacements. Since there are multiple tendons available, it is more likely that the errors in some of the tendons be compensated by other tendons. This causes similar error in bending plane angle for different range and magnitude of the actuator displacements Therefore, it can be predicted to have bigger magnitudes of bending plane angle errors in continuum robots with lower number of tendons. Experimental results presented mean errors of less than 1.3 deg for bending angles and bending plane angles and 0.8 mm for length of the continuum structure in all cases. The errors are small and in fact they are approaching the measurement system errors of of ±0.5 deg and ±0.6 mm for the angular and linear parameters, respectively [21].

E. EXPERIMENTAL RESULTS DISCUSSION
There are different source of errors in the experimental setup including 3D reconstruction algorithm [21], tendon tension measurement, actuation, initial location of tendons as well as effects of gravity, friction, viscoelasticity, and nonlinearity in materials and mechanical system. The slack-causing errors (Figure 7) may be due to the actuation errors directly caused by the errors in the actuator controllers or in the initial location of the tendons. These slack-causing errors alone may well be the reason of the inconsistency between the results from experiments and the algorithm shown in Figure 5a for the displacement groups of [2, −2] and [3, −2] mm. The complete consistency between the results from the experiments and those of the proposed algorithm for the two-variant displacement sets of [4, −2] and more demonstrates the true accuracy of the proposed algorithm in the presence of small errors in the experiments. Given the fact that effects of gravity, friction, viscoelasticity, and nonlinearity in materials and mechanical system are neglected in the proposed model, the experimental results present reasonable consistency with the results from the algorithm (average 99.2% and 96.1% across all 448 and 2187 displacement sets for two-and three-variant groups, respectively) for the forward kinematics solution. The results also demonstrate good accuracy for forward kinematics. They are, in fact, pretty close to the limit of the experimental system [21], so they strongly support the accuracy of the algorithm.

V. CONCLUSION
In this work a numerical algorithm was developed to solve the forward kinematics problem of n-tendon continuum robots for a given arbitrary actuator displacement set. The algorithm accounts for the bending and axial compliance of the manipulator as well as the tendon compliance. The model was experimentally verified for different tendon combinations in a 6-tendon catheter robot for different sets of displacements in open-loop control architecture. The experimental results demonstrated average consistency of 99.2% and 96.1% for two-and three-variant displacement sets across all 448 and 2187 cases, respectively. Potential sources of the consistency between the results were discussed and it was demonstrated that, in cases of 2 and 3 mm even actuator displacements in all tendons, the small errors of 0.18 and 0.27 mm in actuation of a tendon may cause slack in the tendon and inconsistency between the results from the experiments and those from the algorithm. Future works may involve utilizing optimization techniques and deep learning concepts to decrease calculation and processing times and speed up the forward kinematics solution.