Nothing Special   »   [go: up one dir, main page]

Next Article in Journal
GRI: General Reinforced Imitation and Its Application to Vision-Based Autonomous Driving
Previous Article in Journal
The Archimede Rover: A Comparison between Simulations and Experiments
You seem to have javascript disabled. Please note that many of the page functionalities won't work as expected without javascript enabled.
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Dual-Loop Control of Cable-Driven Snake-like Robots

1
State Key Lab of Fluid Power & Mechatronic Systems, Zhejiang University, Hangzhou 310027, China
2
China Railway Engineering Equipment Group Co., Zhengzhou 450016, China
*
Author to whom correspondence should be addressed.
Robotics 2023, 12(5), 126; https://doi.org/10.3390/robotics12050126
Submission received: 8 August 2023 / Revised: 29 August 2023 / Accepted: 31 August 2023 / Published: 4 September 2023
(This article belongs to the Topic Industrial Robotics: 2nd Volume)
Figure 1
<p>Overview of CSR.</p> ">
Figure 2
<p>Base box: (<b>a</b>) Structure of base box; (<b>b</b>) setup of force transducer.</p> ">
Figure 3
<p>Robot arm: (<b>a</b>) Structure of robot arm; (<b>b</b>) setup of angle sensor.</p> ">
Figure 4
<p>Analysis of cable force and interaction force.</p> ">
Figure 5
<p>First type of errors.</p> ">
Figure 6
<p>Second type of errors.</p> ">
Figure 7
<p>Pose-loop control strategy.</p> ">
Figure 8
<p>Closed-loop process of the driving of one cable in <math display="inline"><semantics> <mrow> <mi mathvariant="normal">J</mi> <mi mathvariant="normal">o</mi> <mi mathvariant="normal">i</mi> <mi mathvariant="normal">n</mi> <msub> <mrow> <mi mathvariant="normal">t</mi> </mrow> <mrow> <mi mathvariant="normal">i</mi> </mrow> </msub> </mrow> </semantics></math></p> ">
Figure 9
<p>Block diagram of the dual-loop control strategy.</p> ">
Figure 10
<p>Multiple joints motions: (<b>a</b>) Motion of multiple pitch joints; (<b>b</b>) motion of multiple yaw joints; (<b>c</b>) composite motion of multiple pitch and yaw joints.</p> ">
Figure 11
<p>Dynamic motion: (<b>a</b>) First step; (<b>b</b>) second step; (<b>c</b>) third step; (<b>d</b>) fourth step.</p> ">
Figure 12
<p>Variation of joint angles: (<b>a</b>) Open-loop; (<b>b</b>) dual-loop.</p> ">
Figure 13
<p>Relationships between the errors and time.</p> ">
Figure 13 Cont.
<p>Relationships between the errors and time.</p> ">
Review Reports Versions Notes

Abstract

:
Snake-like robots, which have high degrees of freedom and flexibility, can effectively perform an obstacle avoidance motion in a narrow and unstructured space to complete assignments efficiently. However, accurate closed-loop control is difficult to achieve. On the one hand, this is because adding too many sensors to the robot will significantly increase its mass, size, and cost. On the other hand, the more complex structure of the hyper-redundant robot also challenges the more elaborate closed-loop control strategy. For these reasons, a cable-driven snake-like robot, which is compact and low cost, with force transducers and angle sensors, is designed in this article. The simpler and more direct kinematic model is studied, which applies to a widely used kinematics algorithm. Based on the kinematic model, the inverse dynamics are resolved. Finally, this article analyzes the sources of the motion errors and achieves dual-loop control through force-feedback and pose-feedback. The experiment results show that the robot’s structure and dual-loop control strategy function with high accuracy and reliability, meeting the requirements of engineering applications and high-precision control.

1. Introduction

With the development of robotics, various types of robots have been widely used in the industrial field to achieve the working mode of “robots replacing labor”, greatly reducing labor intensity and improving the quality of working environments. In recent decades, hyper-redundant robots [1], with appearances similar to snakes, elephant trunks, and octopus tentacles [2,3,4,5], have been developed and researched extensively. Due to their slim and dexterous geometric shape, they can move efficiently in a confined and complex space. The cable-driven snake-like robot (CSR) in this paper is a special semi-rigid hyper-redundant robot. A wide range of the literature demonstrates that CSRs have very broad applications in many areas, such as minimally invasive surgery [6,7,8,9], nuclear waste manipulation [10], in-space inspection [11], and search and rescue [12,13].
To establish a reliable and accurate motion control strategy, precise and efficient kinematic and dynamic models are essential. In the kinematic field, methods for tracking the geometric curve have been widely used. Naccarato et al. [14] presented an inverse kinematic solution that forces the hyper-redundant robot to track the reference shape curve. Chirikjian et al. [15,16] extended the reference shape curve to the backbone reference curve set, including both the bending description and the torsion description. Furthermore, follow-up studies have placed more emphasis on these geometric methods, such as follow-the-leader [17], tractrix [18], and FABRIK [19]. Normally, the geometric method first generates a reference curve that the robot can track, and then it forces the robot to follow this reference curve. Since the reference curve is strongly correlated with the task space, the method can easily add requirements from its users, such as avoiding obstacles or passing through some special points. On the other hand, the resolution of the inverse kinematics can be obtained quickly and accurately by using the constraints of the reference curve. One feature of this geometric method is that it calculates the positions of link ends first rather than the joint parameters. Since the pose of all the links of the CSR can be fully described by the link eigen vectors which point from the proximal end to the distal end of each link, this article discards the joint space and local coordinate system, instead utilizing the link eigen vectors in the global coordinate system to construct the kinematic model.
In the dynamics field, various methods have unique benefits. Rodriguez [20] devised a method to solve the inverse and forward dynamic problems with O(N) solutions. The Euler–Lagrange formalism [21] involves a simple mathematical form and clear physical sense. Cosserat theory [22] is highly adaptable to the motion state. However, the efficiency of these dynamic methods, which is crucial to real-time control, is not as good as the Newton–Euler method [23,24]. Therefore, this article combines the Newton–Euler method with the reconstructed kinematic model above to solve the inverse dynamics and to achieve accurate real-time control.
After the kinematic and dynamic models are determined, a motion control strategy with high reliability and high precision can be further explored. However, the deployment of pose and force sensors is costly and difficult, which affects the closed-loop strategy for better utilizing the kinematics and dynamics. Tran et al. [25,26] calculated the feedforward of the cable length based on the kinematic model. However, these methods do not consider the pose feedback; therefore, they are open-loop strategies. Tang et al. [27] obtained the tracking motion of the end pose through the PID controller of the cable length. Although the trajectory tracking of the CSR is achieved by controlling the cable length, the tension forces of the cables are still uncontrollable. The fiber Bragg grating sensors [28,29] or the six-axis force/torque (F/T) sensor [30] can greatly enhance the force sensing ability for supporting the compliance control. Nevertheless, these sensors will greatly increase the cost, dimension, and mass of the CSR system. Moreover, these methods are not directly related to the driving forces of the cables, which would be calculated based on the inverse dynamics. Hence, in order to take full advantage of the kinematic and dynamic models, this paper has designed a CSR with both angle sensors and cable force transducers. Subsequently, using pose feedback from the angle sensors and force feedback from the transducers, the dual-loop control strategy can be implemented based on kinematic and inverse dynamics methods. This control strategy improves the precision of the robot and also ensures the correct cable force and stiffness of the CSR, thereby guaranteeing the stability and reliability of the motion.
The rest of the paper is organized into six sections. Section 2 introduces the mechanical structure of the CSR. Section 3 introduces the kinematics modelling, then derives the mapping relationships among the various variables of the CSR. Section 4 analyzes the mechanics of the CSR and obtains the solution of the inverse dynamics. Section 5 studies the errors and establishes the dual-loop control system with force-loops and pose-loops. Section 6 describes the experiment and provides a discussion which fully verifies the control strategy. Finally, the paper is concluded in the last section.

2. Mechanical Structure

The research object in this paper is a universal joint cable-driven snake-like robot with a mechanical structure shown in Figure 1. The structure can be divided into three parts: the sliding table, base box, and robot arm. The robot arm is driven by the cables, and the driving forces of the cables come from the driving modules of the base box.
The sliding table offers translation freedom for the base box and robot arm, expanding the workspace of the robot.
The detailed structure of the base box is shown in Figure 2. The driving module translates the motor power into the cable’s driving force, to drive the movement of the robot arm. The absolute encoders in the encoder board are used to monitor the positions of the driver modules. Figure 2b shows the setup of the force transducer, which is the key to achieving the dual-loop control.
The detailed structure of the robot arm is shown in Figure 3, which is composed by connecting universal joints and links in series. The CSR in the paper is with six universal joints and seven links. One link is a fixed link, which is denoted as L i n k 0 and connected to the base box. The remaining links are denoted as L i n k 1 L i n k 6 and the universal joints are denoted as J o i n t 1 J o i n t 6 . Similarly, J o i n t 0 means the fixed joint at the proximal end of L i n k 0 . J o i n t i ’s key part H R i , i.e., the hollow ring, is used to connect two links. As shown in the figure, J o i n t i is driven by three yellow cables ( C i , C i + 6 , C i + 12 ) which are fixed on L i n k i . The three green cables ( C i + 1 , C i + 7 , C i + 7 ) which pass L i n k i are fixed on L i n k i + 1 and are to drive J o i n t i + 1 (though the figure shows only three cables passing through L i n k i , the cables driving J o i n t m   m > i all pass through L i n k i ). That means every universal joint is with two degrees of freedom and is driven by three cables. As shown in Figure 3b, each joint of the robot arm has been assembled with two angle sensors, which are also the key to achieving the dual-loop control.

3. Kinematics Modelling

As shown in Figure 1, the global coordinate system is constructed by: setting the proximal end of L i n k 0 as the origin; the vector from the proximal end to the distal end as the X0-axis; the vector vertically upward as the Z0-axis.
As shown in Figure 3, the center of J o i n t i is denoted as O m i , which is also the proximal end of L i n k i . Then, L i n k i ’s independent eigen vector can be defined as
u i x = O m i O m i + 1 / | O m i O m i + 1 |
According to the characteristics of the universal joint robot, the axes of the revolute pairs in the link can be set as the derived eigen vectors, which are denoted as u i y , u i z . That is to say, u i y coincides with the axis of the revolute pair between L i n k i and J o i n t i + 1 , u i z coincides with the axis of the revolute pair between L i n k i and J o i n t i . Then, the derived eigen vectors can be calculated by the following steps.
Let u d i r z = u i x × u ( i 1 ) y , then u d i r z is collinear with u i z .
Let u d i r y = u d i r z × u i x , then u d i r y is collinear with u i y .
Thus, u i y , u i z can be calculated by
u i z = u d i r z / | u d i r z | u i y = u d i r y / | u d i r y |
Therefore, the pose of L i n k i can be completely described by the eigen vectors, u i x , u i y , u i z . Compared to the traditional kinematic models [17,23,24], which need to calculate the joint parameters with cumbersome methods and describe the pose information in many local coordinate systems, the link eigen vectors are more direct and intuitive.
As shown in Figure 3a, each joint has two discs, i.e., D i s c 1 , i , D i s c 2 , i . The centers of the discs are denoted as O a i , O b i , respectively. On one disc, 18 cable holes are evenly circumferentially distributed, which are for cables passing through. The cable hole on D i s c 1 , i + 1 which is at u i y is denoted as D i + 1 , 1 , and the remaining holes are counterclockwise denoted as D i + 1 , 2 , D i + 1 , 3 D i + 1 , 18 . Similarly, the cable hole on D i s c 2 , i which is at u i y is denoted as P i , 1 , and the remaining holes are counterclockwise denoted as P i , 2 , P i , 3 P i , 18 . The cables passing through the corresponding cable holes are denoted as C 1 , C 2 C 18 . Let Ψ j refer to the included angle between O a i D i + 1 , j and u i y and also the included angle between O b i P i , j and u i y , then
Ψ j = ( j 1 ) × 2 π 3 × 6

3.1. Mapping between Link Eigen Vectors and Cable Lengths

The cable C j can be divided into two parts, i.e., the link part and the joint part. When a cable is tensioned and the cable between two points is straight, the cable length between the two points is equal to the distance between the two points. Moreover, since the cable length in the link part remains constant, only the cable length in the joint part needs to be considered. Therefore, the theory cable length of C j in J o i n t i can be treated as the distance between D i , j and P i , j ,
s i , j = P i , j D i , j
P i , j , D i , j can be obtained by the following equations,
D i , j = P i 1 , j + O a i O b ( i 1 ) P i , j = r d cos Ψ j u i y + r d sin Ψ j u i z + O b i
r d : radius of the distribution circle of the hole on the disc.
O a i , O b i can be obtained by the following equations,
O a i = O m i d u i 1 x O b i = O m i + d u i x ( i = 1 , 2 6 )
d : distance from O m i to adjacent disc’s center, i.e., d = O m i O a i = O m i O b i .
The initial values of (5) are: O b 0 = 0   0   0 T , P 0 , j = 0 r d cos Ψ j r d sin Ψ j T j = 1 , 2 , 18 .
Let C s j be the pseudo total cable length of C j , which is calculated by adding all corresponding s i , j , then
C s j = k = 1 k = n j 1 + 1 s k , j
n j : remainder of dividing j by 6.
If the cable is tensioned, C s j can be taken as the real total cable’s length. Thus, the forward mapping is solved.
The inverse mapping can be divided into two situations, i.e., pseudo total cables’ lengths to link eigen vectors and real total cables’ lengths to link eigen vectors. Since the joint and link have sufficient stiffness, the first mapping is definite.
The first mapping, i.e., C s 1 , C s 18 u i x , u i y , u i z , the values of s m , n m = 1 , 2 i 1 , n = i , i + 6 , i + 12 can be solved from (4). And from (7), we can obtain,
s i , i = C s i k = 1 k = n i 1 s k , i s i , i + 6 = C s ( i + 6 ) k = 1 k = n i + 5 s k , i + 6 s i , i + 12 = C s ( i + 12 ) k = 1 k = n i + 11 s k , i + 12
Since u i x is a unit vector, u i x can be set as c o s γ i , s i n γ i c o s φ i , s i n γ i s i n φ i T ( φ i [ 0 , 2 π ] , γ i [ 0 , π ) ) . Then, substituting the expression of u i x into (2), we can obtain,
u i z = u d i r z / | u d i r z | = ( u i x × u i 1 y ) / | u i x × u i 1 y | = ( f i z φ i , γ i , g i z φ i , γ i , h i z ( φ i , γ i ) )
f i z φ i , γ i , g i z φ i , γ i , h i z φ i , γ i : X, Y, Z coordinates of u i z , which are expressed by the variables φ i and γ i .
Similarly,
u i y = ( f i y φ i , γ i , g i y φ i , γ i , h i y φ i , γ i )
f i y φ i , γ i , g i y φ i , γ i , h i y φ i , γ i : X, Y, Z coordinates of u i y , which are also expressed by the variables φ i and γ i .
Thus, the expressions of u i y , u i z also have two variables. Substitute the above u i x , u i y , u i z into (4)–(6), we can obtain,
s i , i = F s i ( φ i , γ i ) s i , i + 6 = F s i + 6 ( φ i , γ i ) s i , i + 12 = F s i + 12 ( φ i , γ i )
Then, the expressions of s i , i ,   s i , i + 6 ,   s i , i + 12 also have two variables, φ i , γ i . Since the values of s i , i ,   s i , i + 6 ,   s i , i + 12 are already calculated through (8), the following equations with two unknown variables can be obtained,
F s i φ i , γ i = C s i k = 1 k = n i 1 s k , i F s i + 6 φ i , γ i = C s ( i + 6 ) k = 1 k = n i + 5 s k , i + 6 F s i + 12 φ i , γ i = C s ( i + 12 ) k = 1 k = n i + 11 s k , i + 12
As the stiffness of the joints is enough, the above equations have a consistent solution within the accuracy range. Therefore, it is reasonable to use any two of the above equations to calculate the values of φ i and γ i , to obtain the values of u i x , u i y , u i z . Since the equations are complex, the Newton–Raphson method could be used for the numerical solution.
When u i x = u ( i 1 ) x , the values of φ i , γ i could be set as initial values. Then, φ i , γ i can be solved by the iterative method. Additionally, the solved φ i , γ i can be substituted into the last equation of (12) for verification. And if the left and right sides of (12) are equal within the acceptable error range, u i x , u i y , u i z are solved successfully. On the contrary, there is no solution. Then, O m ( i + 1 ) can be solved as follows,
O m ( i + 1 ) = l i u i x + O m i
l i : length of L i n k i , l i = | O m i O m i + 1 | .
In the second mapping situation of calculating u i x , u i y , u i z , there are three more subcases:
(1)
Every cable is tensioned. Then, the cables’ lengths are approximately equal to the distances between corresponding holes, so the inverse mapping method is the same as the first mapping method.
(2)
Two of the cables that drive the joint are tensioned, but the other is slack. Then, the two cables’ lengths are approximately equal to the distances between the corresponding holes. Thus, compared to the first mapping situation’s method, just the verification equation is canceled.
(3)
More than one of the cables is slack. In this case, the inverse mapping cannot be performed.
It is worthy noting that the effects of J o i n t 1 , J o i n t i 1 to the lengths of the cables must be considered before the inverse mapping in J o i n t i .

3.2. Mapping between Link Eigen Vectors and Joint Angles

In the new kinematic model, the joint parameters are not necessary. However, as it is convenient to obtain the pose of CSR with the utilization of joint angle sensors, the mapping relation between the link eigen vectors and the joint angles is derived here. Set the joint angle of the revolute pair between L i n k i 1 and J o i n t i as α i and the joint angle of the revolute pair between J o i n t i and L i n k i as β i . When u i x = u i 1 x , set α i = β i = 0 . Then
(1)
Forward mapping, ( u i x , u i y , u i z ) ( α i , β i ) .
Let
P r o j x = u i x · u i 1 x P r o j y = u i x · u i 1 y P r o j z = u i x · u i 1 z
Thus, we can obtain,
α i = arctan P r o j z / P r o x α i ( 0.5 π , 0.5 π ) β i = arcsin P r o j y β i ( 0.5 π , 0.5 π )
(2)
Inverse mapping, α i , β i ( u i x , u i y , u i z ) .
Let
v i y = u i 1 y v i z = cos α i u i 1 z + sin ( α i ) u i 1 x v i x = v i y × v i z
Thus, we can obtain,
u i z = v i z u i x = cos β i v i x + sin ( β i ) v i y u i y = u i z × u i x
The key part of J o i n t i , H R i also has its eigen vectors, which are exactly v i x , v i y , v i z . All eigen vectors of the hollow ring can be calculated by link eigen vectors.

4. Inverse Dynamics

4.1. Mechanical Analysis

As shown in Figure 4, C i , C i + 6 , C i + 12 are fixed on L i n k i . They provide the driving forces for L i n k i ’s movement. At the same time, the cables passing through L i n k i also have forces acting on L i n k i (Figure 4 only shows three cables passing through L i n k i , i.e., C i + 1 , C i + 7 , C i + 13 ). These cables are fixed on L i n k m ( i < m 6 ) .
Suppose the turning angle of C i + 1 at P i , i + 1 is θ i , i + 1 , 2 and the turning angle of C i + 1 at D i + 1 , i + 1 is θ i + 1 , i + 1 , 1 , then
| T i + 1 , i + 1 , 1 / T i , i + 1 , 2 | = e μ θ i , i + 1 , 1 · e μ θ i , j , 2
μ : Coulomb friction coefficient.
T i + 1 , i + 1 , 1 : cable force of C i + 1 in J o i n t i + 1 , whose direction is shown in Figure 4.
T i , i + 1 , 2 : cable force of C i + 1 in J o i n t i , T i , i + 1 , 2 = T i , i + 1 , 1 .
Let
v i , j , 1 = ( D i , j P i , j ) / | D i , j P i , j | v i , j , 2 = ( P i , j D i + 1 , j ) / | P i , j D i + 1 , j |
Then
θ i , j , 1 = cos 1 ( v i , j , 1 · v i , j , 2 ) θ i , j , 2 = cos 1 ( v i , j , 2 · v i + 1 , j , 1 )
As a result, if the cable force of a cable in a joint is known, all cable forces of the cable in the other joints can be calculated. Since the mechanics analysis of the robot is an inward recursion, L i n k m ’s ( m > i ) force analysis is before L i n k i . Therefore, the cable forces of the cables passing through L i n k i are known, on the contrary, the cable forces of the cables fixed on L i n k i are the driving forces to be solved.
For H R i , O m i is the center of mass. The acting forces on H R i are:
(1)
The acting forces from distal L i n k i , F i , 1 , F i , 2 . They can be decomposed into six forces with known action lines and directions, F i , 1 x , F i , 1 y , F i , 1 z , F i , 2 x , F i , 2 y , F i , 2 z . The moment of them about O m i is denoted as M 1 , 2 .
(2)
The acting forces from L i n k i 1 , F i , 3 , F i , 4 . Similarly, they can also be decomposed into six forces with known action lines and directions, F i , 3 x , F i , 3 y , F i , 3 z , F i , 4 x , F i , 4 y , F i , 4 z . The moment of them about O m i is denoted as M 3 , 4 .
(3)
Gravity force, G H i .
(4)
Inertia force and moment, F I H , i , M I H , i .
Since F i , 1 z , F i , 2 z act on the same line, they can be merged as
F i , z c = F i , 1 z + F i , 2 z
Thus, F i , 1 , F i , 2 can be simplified as five forces with known action lines and directions.
Similarly, F i , 3 y , F i , 4 y can be merged as,
F i , y c = F i , 3 y + F i , 4 y
Thus, F i , 3 y , F i , 4 y can also be simplified as five forces with known action lines and directions.
According to the current values and historical values of O m i and H R i ’s eigen vectors v i x , v i y , v i z , the velocity v c H , i , acceleration a c c H , i , angular velocity ω H i and angular acceleration α H i of H R i at the centroid can be calculated. Thus, the values of F I H , i , M I H , i are
F I H , i = m H i · a c c H , i
M I H , i = I c H , i α H i ω H i × ( I c H , i ω H i )
m H i : mass of H R i .
I c H , i : inertia tensor of H R i relative to the center of mass in the global coordinate system.
The acting forces on L i n k i are:
(1)
The known cable forces S T 1 , i from the cables which are fixed on L i n k m ( m > i ) . The moment of them about O m i is denoted as S M T 1 , i .
(2)
The unknown cable forces S T 2 , i from the cables which are fixed on L i n k i . The moment of them about O m i is denoted as S M T 2 , i .
(3)
The acting forces from distal H R i + 1 , F i + 1 , 3 , F i + 1 , 4 (if L i n k i is the end link, the forces can be taken as environment forces). The moment of the forces about O m i is set as M 3 , 4 .
(4)
The acting forces from proximal H R i , F i , 1 , F i , 2 . The moment of the forces about O m i is denoted as M 1 , 2 .
(5)
Gravity force, G i . The moment of the force about O m i is denoted as M G i .
(6)
Inertia force and moment, F I , i , M I , i . The moment of F I , i about O m i is denoted as M F I , i .
The position of L i n k i ’s centroid relative to O m i is known. Then, according to the current values and historical values of O m i and L i n k i ’s eigen vectors u i x , u i y , u i z , the velocity v c , i , acceleration a c c , i , angular velocity ω i and angular acceleration α i of L i n k i at the centroid can be calculated [31]. Thus, the values of F I , i , M I , i are
F I , i = m i · a c c , i
M I , i = I c , i α i ω i × ( I c , i ω i )
m i : mass of L i n k i .
I c , i : inertia tensor of L i n k i relative to the center of mass in the global coordinate system.

4.2. Newton–Euler Method

According to the mechanical analysis, the Newton–Euler equations of H R i are
F i , 1 + F i , 2 + F i , 3 + F i , 4 + G H i + F I H , i = 0 M 1 , 2 + M 3 , 4 + M I H , i = 0
The Newton–Euler equations of L i n k i are
S T 1 , i + S T 2 , i F i , 1 F i , 2 F i + 1 , 3 F i + 1 , 4 + G i + F I , i = 0 S M T 1 , i + S M T 2 , i M 1 , 2 M 3 , 4 + M G i + M I , i + M F I , i = 0
In the above equations, the variables to be solved are F i , 1 , F i , 2 , F i , 3 , F i , 4 , S T 2 , i . F i , 1 , F i , 2 , F i , 3 , F i , 4 can be decomposed into 10 forces with known action lines and directions. S T 2 , i can be decomposed into 3 forces with known action lines and directions. Therefore, (27) and (28) are with 12 independent equations and 13 unknown variables. Let the smallest force of S T 2 , i be equal to the pre-tensioning force T p r e , then the needed driving forces of the cables can be solved. Thus, the inverse dynamics is resolved.

5. Dual-Loop Control Strategy

5.1. Errors Analysis

Cable zero length (CZL) refers to a cable length when the arm of CSR stays straight and horizontal. CZL is calculated without the model error. For convenience, the cable lengths discussed in this section are all relative to the cable zero lengths.
Cable real lengths, L R , refer to the differences in the real cable lengths relative to the CZLs after the joints rotate at certain angles.
Cable theory lengths, L T , refer to the differences in the theory cable lengths relative to the CZLs after the joints rotate at certain angles. Note that theory cable lengths are calculated by adding the distances between two groups of corresponding cable holes. It is called theory lengths due to the errors between L T and L R . There are four main errors:
The first errors E f i r : When a cable passes a link, it passes the cable holes. As the inner diameter of the cable hole is larger than the diameter of the cable, the cable has a radial movement relative to the cable hole. However, L T is calculated assuming that the cable is always at the center of the cable hole. Take cable C 1 in J o i n t 1 ’s part as an example (the other cables and joints have similar error relations). As shown in Figure 5, the left figure is the relation among L T , γ , and , and the right figure is the relation among E f i r , γ , and . The γ refers to the included angle between X 0 and u 1 x , i.e., the included angle between u 0 x and u 1 x . refers to the included angle between the projection of u 1 x in the plane X 0 Y 0 and Y 0 .
The second errors E s e c : The distance of J o i n t i ’s center to the adjacent discs’ center, which is denoted as d in the above section, will slightly vary due to the change in the tension of the cables. Therefore, only a theoretical approximation can be taken as this distance. Again, take the cable C 1 in J o i n t 1 ’s part as an example. As shown in Figure 6, the left figure is the relation among L R , γ and . The right figure is the relation among E s e c , γ and .
The third errors E t h i : When the cable is under tension, it will be stretched and deformed, and its length will change. However, the errors are minor and can be eliminated according to the feedback values of the force transducers.
The fourth errors E f o u : These errors are caused by the nonlinear coupling relations among the cables and the universal joints. The three cables driving a joint can not only determine the angle of this joint, but also affect all joints that these three cables pass through. On the contrary, the joints will also affect all cables passing through these joints. The smaller the errors of the joint angles, the less the influence of E f o u . And if the joint angle errors are limited within a tiny range, this nonlinear coupling relations can be ignored. Thus, these coupling relations have not been analyzed in detail in this paper.
The errors’ analysis can theoretically support the design of feedforward controllers, so as to accelerate the tracking speed of the closed-loop control and optimize the dynamic performance.

5.2. Practicability of Dual-Loop Control

For convenience, we only discuss the case with one single joint. Nevertheless, the cases with multiple joints can be analogized.
Hole zero distance (HZD) refers to the distance between the two corresponding cable holes when the arm of CSR stays straight and horizontal. HZD is obtained without considering the model error, especially the E s e c . For one single joint, zero distance is equal to 2 d .
Hole real distances, D R , refer to the differences in the real distances between the two groups of corresponding cable holes relative to the HZDs after the joints rotate to the certain angles. The real joint angles and model size determine D R . We can calculate the feedback hole real distances, D F , according to the feedback joint angles A F . D F , D R are positively correlated and the main errors of D F come from E s e c .
Hole desired distances, D D , refer to the differences in the desired distances between the two groups of corresponding cable holes relative to the HZDs when the joints rotate to the desired angles. D D , L T are positively correlated. The main errors of L T relative to D D also come from E s e c . When D D = D R , the real joint angles A R is equal to the expected joint angles A D .
The essence of the driving of the joints is by changing the distances of the corresponding cable holes, which is achieved by shifting the cables. After analysis, it can be concluded that the combined effects of the first three types of errors will not cause serious deviations of L T , L R , D D , D F , D R , and their varying trends are consistent. After further verification, we can know that L T , L R , D D , D F , D R are positively correlated, i.e., all increase when one increases and all decrease when one decreases. Therefore, the closed-loop control is practicable. As shown in Figure 7, the motors are driven by the expected L T . That means L T will be taken as L R . Then, L R will determine the real joint angles A R . Thus, according to the feedback joint angles A F , D F can be inversely solved. Because of the positive correlation of various variables, D R will gradually approach D D by the iteration setting of L R = L R + L T D F (the real process would be more complex, such as the setting of PID parameters). In this way, not only can the complex calculation of the driving displacements of the motors be simplified, but also the effective and reliable closed-loop control can be promised.
As shown in Figure 8, the process of the closed-loop is demonstrated by taking one cable’s driving for J o i n t i as an example. The relations between L T , D F and joint angle can be expressed by the same curve. The relation between L R and joint angle can be expressed by another curve. The steps in the figure have been numbered, which are explained as follows:
(1)
According to the expected joint angle, the expected cable theory length L T is calculated. L T will be taken as cable real length L R and input into the CSR’s driving system.
(2)
According to L R , the motor moves to drive the joint.
(3)
According to the feedback joint angle A F , the feedback hole real distance D F is calculated.
(4)
According to D F , L R is updated to L R .
(5)
According to the updated L R , the motor moves to drive the joint.
(6)
and (7) The steps from (3) to (5) are executed in an endless loop.
Moreover, the practicability of closed-loop control can be understood more simply from the driving mode of the universal joints. Obviously, if a joint angle sensor detects the angle error, the error could be reduced by shifting the cable to make the joint rotate reversely. And the way of how to rotate the joint in reverse is exactly let L R = L R + L T D F .
However, J o i n t i would be driven by the other two cables together and their closed-loop processes are the same (Figure 8). The specific error values of the three cables would not happen to be consistent, i.e., the three cable real lengths correspond to different joint angles. The collaborative action of the three cables would obtain another real joint angle. Hence, although the closed-loop can still be carried out, the errors would accumulate with the continuous movement. As a result, the excessive errors of the cable forces would make the cables too loose and result in certain errors in the joint angles. Because of that, the feedforward control based on the feedback of the cable forces has been added to the control strategy to keep the cables tensioned and ensure the working of the closed-loop. Thus, the reliability and the accuracy of the system are promised.

5.3. Dual-Loop Control Strategy

As shown in Figure 9, the dual-loop control strategy has two loops. The force-loop processes the feedback driving forces and is to ensure the proper forces of the cables during the motion of the CSR. That not only ensures the stiffness of the robot, but also the working of the pose-loop. The pose-loop processes the feedback joint angles and achieves the closed-loop control of the robot pose, to improve the motion accuracy of the robot.
The variables and the elements in the figure are explained as follows:
The variables related to joint angles are 12-dimensional vectors, such as A D , A R . The variables related to cables are 18-dimensional vectors, such as L T , D F , T F , e 1 , e 2 . T F refers to the feedback driving forces of the cables, e 1 refers to the errors calculated by the force controller, e 2 refers to the errors calculated by the position controller.
“Drivers” are responsible for the driving of the DC motors, which are embedded with the position and speed-current closed-loop control algorithms.
“Time delay” refers to the inevitable delay when sensors collect data.
The “force controller” and “position controller” are both PD controllers. Their derivative elements can weaken the effects of the time delay. Their proportional and derivative gains are K P F , K D F , K P P , K D P , respectively, whose value is shown in Table 1. Additionally, to avoid the excessive overshoot, both e 1 , e 2 have been set within borders.
Let T j = T F j T T j ( T T refer to the values of the driving forces of the cables, which are calculated through the inverse dynamics), then the value of j th component in e 1 is
e 1 j = 0.02 i f e 1 j > 0.02 0.02 i f e 1 j < 0.02 K P F T ( j ) + K D F [ T ( j ) T ( j ) ]
T : value of T at previous period.
Let L ( j ) = L T j D F ( j ) , then the value of j th component in e 2 is
e 2 j = 0.02 i f e 2 j > 0.02 0.02 i f e 2 j < 0.02 K P P L j + K D P [ L j L j ]
L : value of L at previous period.
The “PID” controller integrates the input variables e 1 , e 2 to obtain the integrated errors E . And then E are combined with the current L T to obtain the motor displacements, L s , which is required by the drivers. As the cables have various load characteristics and lengths, the PID parameters are different for each cable, as shown in Table 1. Moreover, because the regular integrator element would result in the instability of the system, i.e., causing too large or small cable forces, the weighting factor is added for the integrator element to weaken the influence of historical errors. Thus, the stability of the system can be improved. Let
e s = e 1 + e 2
Then, the elements of E can be calculated by the following two equations (take C j as an example again),
E ( j ) = K P A ( j ) e s ( j ) + K D A ( j ) e s + K I A ( j ) S E ( j )
S E = E + ρ S E
e s : difference between current e s and last e s .
S E : sum of historical weighted E .
S E : value of S E at previous period.
Then, the motor displacements L s are
L s = L T + E
Thus, the CSR’s dual-loop controller has been designed.

6. Experimental Results and Discussion

To substantiate the effectiveness and reliability of the proposed dual-loop control strategy, a series of experiments have been presented on a CSR prototype. To illustrate the superiority of the proposed method, the CSR prototype not only has run the dual-loop mode motion test, but also the comparison experiments, i.e., the open-loop and single-loop (pose-loop) modes tests. According to the material property, the coulomb friction coefficient has been set as μ = 0.14 . The experiments can be divided into three parts, single joint test, multiple joints test, and continuous motion test.

6.1. Single Joint Test

Single joint test refers to rotating a single joint of the CSR and then comparing the difference among the feedback joint angles. Table 2 shows the test data of α 6 . Because of the nonlinear coupling relations among the cables and the universal joints, the other joint angles would be influenced even if we changed only one joint angle. Thus, the recording data are not limited to α 6 , but also are with α 1 , α 2 , α 5 , β 1 ,   β 2 , β 6 . Moreover, the other joints have also been tested with various joint angles. However, since the results of different joints tests are similar, we have not listed them one by one.
The single joint test results show that the steady-state accuracy of the dual-loop control mode has been significantly improved. The accuracy of the single-loop mode is slightly improved compared to the open-loop. Furthermore, it can be found that the smaller the joint rotation angle, the higher the accuracy of the single-loop.

6.2. Multiple Joints Test

The multiple joints test refers to rotating multiple joints of the CSR and then comparing the difference among the feedback joint angles. Table 3 presents the data of the multiple pitch joints test, i.e., α 3 , α 4 , α 5 , α 6 . Table 4 presents the data of the multiple yaw joints test, i.e., β 3 ,   β 4 ,   β 5 ,   β 6 . Table 5 presents the data of the multiple pitch and yaw joints test, i.e., J o i n t 3 , J o i n t 4 , J o i n t 5 , J o i n t 6 .
The multiple joints test results further demonstrate the advantages of dual-loop control, i.e., the higher precision with faster response. Unlike the single joint test, the accuracy of the single-loop mode is not significantly improved compared to the open-loop. Especially when the joint angles are relatively large, sometimes the accuracy of the single-loop mode would be even lower. Figure 10 shows three groups of photos, which show the postures of the CSR when the joints are at different angles. Figure 10a shows the simultaneous motion of multiple pitch joints. Figure 10b shows the simultaneous motion of multiple yaw joints. Figure 10c shows the simultaneous composite motion of multiple pitch and yaw joints.

6.3. Continuous Motion Test

Continuous motion test refers to comparing the dynamic performance of each control strategy when the CSR moves along the planned path. Because of the instability of the single-loop, the paper has not conducted a continuous motion test of this motion mode. Figure 11 shows the photos of CSR during the motion. During the test, CSR performed the tip-following motion, i.e., the centers of all joints would follow the motion trajectory of the CSR’s end. The photos have been sorted alphabetically according to the motion sequence. Figure 12a shows the variation in the joint angles when the CSR executes the open-loop motion mode. Figure 12b shows the variation in the joint angles when the CSR executes the dual-loop motion mode. In the figures, α 4 , α 5 , α 6 correspond to the desired values, and α ( 4 ) , α ( 5 ) , α ( 6 ) correspond to the feedback joint angles.
If we take the joint angle errors as the research object, then the relationships between the errors and time can be shown in Figure 13. The figures show the errors are relatively smaller with the closed-loop control, especially when the joint angles are large. Furthermore, when the proximal joints keep still, their joint angle errors of the open-loop control are tiny. That is because the cables driving these proximal joints keep still, which can effectively promise the stillness of these proximal joints.
Furthermore, the CSR’s quantitative performance could be analyzed with the integral square error (ISE) criteria. The corresponding ISE values are,
I S E o p e n = I S E α 1 I S E β 1 I S E α 6 I S E β 6 = 0.069 0.294 0.328 8.600 63.949 24.320 0.001 0.096 0.452 0.389 3.778     1.341   T
I S E c l o s e d = 0.082 0.174 0.039 0.740 4.202 3.769 0.198 0.010 0.742 0.265 0.107 0.010 T
I S E α 1 ( i = 1 , 2 , 6 ) : ISE value of α 1 .
I S E β 1 ( i = 1 , 2 , 6 ) : ISE value of β 1 .
I S E o p e n : ISE value of all the joint angles corresponding to open-loop.
I S E c l o s e d : ISE value of all the joint angles corresponding to closed-loop.
The continuous motion test results show that CSR is unable to adjust its posture in the open-loop motion mode, resulting in poor motion accuracy. In particular, when the joint angle is relatively large, the errors will expand more severely. On the contrary, the dual-loop motion mode has a good tracking performance on the expected trajectory. That indicates its dynamic and steady-state accuracy are both relatively high.

6.4. Discussion

According to Section 5.1, there are multiple types of errors during CSR’s motion. All of these will affect CSR’s accuracy. Thus, the closed-loop control can significantly improve its motion effect. The three types of experiments show the dual-loop mode always has the best steady-state and dynamic performance. In particular, during the continuous motion test, the CSR in dual-loop motion mode not only has higher accuracy but also smoother motion. That successfully verifies the feasibility and superiority of the dual-loop control strategy.
According to Section 5.2, the instability may occur during the continuous execution of the single-loop mode, i.e., the single-loop mode is without a reliable steady-state. The tests of Section 6.1 and Section 6.2 show that the more rotating joints and the greater the rotation angles, the more pronounced the instability. In contrast, the dual-loop control strategy notably improves the accuracy of each joint and maintains the motion accuracy well. That verifies the importance of the force-loop.
In essence, the dual-loop control strategy not only solves the problem of low accuracy in the open-loop mode, but also solves the defect of low stability in the single-loop mode. After verification, the dual-loop mode can greatly improve the motion performance of CSR and meet the requirements of most engineering applications.

7. Conclusions

This article designs a type of cable-driven snake-like robot. The robot not only has joint angle sensors to detect the robot posture status, but also has force transducers to collect the driving force data of the cables. Moreover, these two sensors are installed on the CSR in a very compact way via the ingenious structural design. Afterwards, through studying the kinematic model based on the link eigen vectors and the corresponding inverse dynamics, the kinematic and dynamic variables needed for dual-loop control could be calculated. As a result of studying the sources of the errors during CSR’s motion and the practicability of closed-loop control, a reliable, stable, and high-precision dual-loop control strategy is proposed. Finally, the experiments have fully proved the effectiveness of the dual-loop control strategy.
In the future, we will study a more intelligent control strategy that can automatically adjust the PID parameters according to the environment load. Moreover, the sources of error will be subjected to more elaborate analysis. Thus, the more adaptable and accurate control strategy of CSR can be realized.

Author Contributions

Conceptualization, X.X. and H.X.; methodology, X.X. and C.W. (Chengzhen Wang); software, X.X.; validation, X.X. and C.W. (Cheng Wang); formal analysis, C.W. (Chengzhen Wang) and C.W. (Cheng Wang); investigation, X.X.; resources, H.X.; data curation, X.X.; writing—original draft preparation, X.X.; writing—review and editing, X.X., H.X., C.W. (Chengzhen Wang), and C.W. (Cheng Wang); visualization, X.X.; supervision, H.X. and H.Y.; project administration, H.X. and H.Y.; funding acquisition, H.X. and H.Y. All authors have read and agreed to the published version of the manuscript.

Funding

This work was funded by the Fundamental Research Funds for the Central Universities, grant number: 226-2022-00016, the State Key Laboratory of Fluid Power and Mechatronic Systems Independent Project, grant number: SKLoFP_ZZ_2106, and the National Key R&D Program of China, grant number: 2022YFC3802300. The APC was funded by the Fundamental Research Funds for the Central Universities.

Data Availability Statement

The data presented in this study are available on request to the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Chirikjian, G.S.; Burdick, J.W. An obstacle avoidance algorithm for hyper-redundant manipulators. In Proceedings of the IEEE International Conference on Robotics and Automation, Cincinnati, OH, USA, 13–18 May 1990; pp. 625–631. [Google Scholar]
  2. Liu, T.; Xu, W.; Yang, T.; Li, Y. A hybrid active and passive cable-driven segmented redundant manipulator: Design, kinematics, and planning. IEEE/ASME Trans. Mechatron. 2021, 26, 930–942. [Google Scholar] [CrossRef]
  3. Chikhaoui, M.T.; Lilge, S.; Kleinschmidt, S.; Burgner-Kahrs, J. Comparison of modeling approaches for a tendon actuated continuum robot with three extensible segments. IEEE Robot. Automat. Lett. 2019, 4, 989–996. [Google Scholar]
  4. Liao, B.; Zang, H.; Chen, M.; Wang, Y.; Lang, X.; Zhu, N.; Yang, Z.; Yi, Y. Soft rod-climbing robot inspired by winding locomotion of snake. Soft Robot. 2020, 7, 500–511. [Google Scholar] [CrossRef] [PubMed]
  5. Hannan, M.W.; Walker, I.D. Kinematics and the implementation of an elephant’s trunk manipulator and other continuum style robots. J. Robot. Syst. 2003, 20, 45–63. [Google Scholar] [CrossRef]
  6. Kim, J.; Kwon, S.; Moon, Y.; Kim, K. Cable-movable rolling joint to expand workspace under high external load in a hyper-redundant manipulator. IEEE/ASME Trans. Mechatron. 2022, 27, 501–512. [Google Scholar] [CrossRef]
  7. Burgner-Kahrs, J.; Rucker, D.C.; Choset, H. Continuum robots for medical applications: A survey. IEEE Trans. Robot. 2015, 31, 1261–1280. [Google Scholar] [CrossRef]
  8. Hong, W.; Xie, L.; Liu, J.; Sun, Y.; Li, K.; Wang, H. Development of a novel continuum robotic system for maxillary sinus surgery. IEEE/ASME Trans. Mechatron. 2018, 23, 1226–1237. [Google Scholar] [CrossRef]
  9. Xu, K.; Zhao, J.; Fu, M. Development of the SJTU unfoldable robotic system (SURS) for single port laparoscopy. IEEE/ASME Trans. Mechatron. 2015, 20, 2133–2145. [Google Scholar] [CrossRef]
  10. Buckingham, R.; Graham, A. Nuclear snake-arm robots. Ind. Rob. 2012, 39, 6–11. [Google Scholar] [CrossRef]
  11. Tonapi, M.M.; Godage, I.S.; Walker, I.D. Next generation rope-like robot for in-space inspection. In Proceedings of the 2014 IEEE Aerospace Conference, Big Sky, MT, USA, 1–8 March 2014; pp. 1–13. [Google Scholar]
  12. Chavan, P.; Murugan, M.; Unnikkannan, E.V.; Singh, A.; Phadatare, P. Modular snake robot with mapping and navigation: Urban search and rescue robot. In Proceedings of the 2015 International Conference on Computing Communication Control and Automation, Pune, India, 26–27 February 2015. [Google Scholar]
  13. Tsukagoshi, H.; Kitagawa, A.; Segawa, M. Active hose: An artificial elephant’s nose with maneuverability for rescue operation. In Proceedings of the IEEE International Conference on Robotics and Automation, Seoul, Republic of Korea, 21–26 May 2001; pp. 2454–2459. [Google Scholar]
  14. Naccarato, F.; Hughes, P.C. Inverse kinematics of variable-geometry truss manipulators. J. Robot. Syst. 1991, 8, 249–266. [Google Scholar] [CrossRef]
  15. Chirikjian, G.S.; Burdick, J.W. A geometric approach to hyper-redundant manipulator obstacle avoidance. J. Mech. Des. 1992, 114, 580–585. [Google Scholar] [CrossRef]
  16. Chirikjian, G.S.; Burdick, J.W. A modal approach to hyper-redundant manipulator kinematics. IEEE Trans. Robot. Autom. 1994, 10, 343–354. [Google Scholar] [CrossRef]
  17. Xie, H.; Wang, C.; Li, S.; Hu, L.; Yang, H. A geometric approach for follow-the-leader motion of serpentine manipulator. Int. J. Adv. Robot. Syst. 2019, 16, 172988141987463. [Google Scholar] [CrossRef]
  18. Sreenivasan, S.; Goel, P.; Ghosal, A. A real-time algorithm for simulation of flexible objects and hyper-redundant manipulators. Mech. Mach. Theory 2010, 45, 454–466. [Google Scholar] [CrossRef]
  19. Aristidou, A.; Lasenby, J. FABRIK: A fast, iterative solver for the Inverse Kinematics problem. J. Robot. Syst. 2011, 73, 243–260. [Google Scholar] [CrossRef]
  20. Rodriguez, G. Kalman filtering, smoothing, and recursive robot arm forward and inverse dynamics. IEEE J. Rob. Autom. 1987, 3, 624–639. [Google Scholar] [CrossRef]
  21. Falkenhahn, V.; Mahl, T.; Hildebrandt, A.; Neumann, R.; Sawodny, O. Dynamic modeling of bellows-actuated continuum robots using the Euler–Lagrange formalism. IEEE Trans. Robot. 2015, 31, 1483–1496. [Google Scholar] [CrossRef]
  22. Campisano, F.; Caló, S.; Remirez, A.; Chandler, J.; Obstein, K.; Webster, R.; Valdastri, P. Closed-loop control of soft continuum manipulators under tip follower actuation. Int. J. Robot. Res. 2021, 40, 923–938. [Google Scholar] [CrossRef]
  23. Xu, W.; Liu, T.; Li, Y. Kinematics, dynamics, and control of a cable-driven hyper-redundant manipulator. IEEE/ASME Trans. Mechatron. 2018, 23, 1693–1704. [Google Scholar] [CrossRef]
  24. Li, W.; Huang, X.; Yan, L.; Cheng, H.; Liang, B.; Xu, W. Force sensing and compliance control for a cable-driven redundant manipulator. IEEE/ASME Trans. Mechatron. 2023, 1–12. [Google Scholar] [CrossRef]
  25. Tran, L.D.; Zhang, Z.; Yeo, S.H.; Sun, Y.C.; Yang, G.L. Control of a cable-driven 2-DOF joint module with a flexible backbone. In Proceedings of the IEEE Conference on Sustainable Utilization and Development in Engineering and Technology (STUDENT), Semenyih, Malaysia, 20–21 October 2011; pp. 150–155. [Google Scholar]
  26. Sun, Z.; Wang, Z.; Phee, S.J. Modeling and motion compensation of a bidirectional tendon-sheath actuated system for robotic endoscopic surgery. Comput. Methods Programs Biomed. 2015, 119, 77–87. [Google Scholar] [CrossRef] [PubMed]
  27. Tang, J.; Zhang, Y.; Huang, F.; Li, J.; Chen, Z.; Song, W.; Zhu, S.; Gu, J. Design and kinematic control of the cable-driven hyper-redundant manipulator for potential underwater applications. Appl. Sci. 2019, 9, 1142. [Google Scholar] [CrossRef]
  28. Roesthuis, R.J.; Misra, S. Steering of multisegment continuum manipulators using rigid-link modeling and FBG-based shape sensing. IEEE Trans. Robot. 2016, 32, 372–382. [Google Scholar] [CrossRef]
  29. Park, Y.-L.; Ryu, S.C.; Black, R.J.; Chau, K.K.; Moslehi, B.; Cutkosky, M.R. Exoskeletal force-sensing end-effectors with embedded optical fiber-Bragg-grating sensors. IEEE Trans. Robot. 2009, 25, 1319–1331. [Google Scholar] [CrossRef]
  30. Bajo, A.; Simaan, N. Hybrid motion/force control of multi-backbone continuum robots. Int. J. Robot. Res. 2016, 35, 422–434. [Google Scholar] [CrossRef]
  31. Xu, X.; Xie, H.; Wang, C.; Yang, H. Kinematic and dynamic models of hyper -redundant manipulator based on link eigenvectors. IEEE/ASME Trans. Mechatron. 2023, 1–13. [Google Scholar] [CrossRef]
Figure 1. Overview of CSR.
Figure 1. Overview of CSR.
Robotics 12 00126 g001
Figure 2. Base box: (a) Structure of base box; (b) setup of force transducer.
Figure 2. Base box: (a) Structure of base box; (b) setup of force transducer.
Robotics 12 00126 g002
Figure 3. Robot arm: (a) Structure of robot arm; (b) setup of angle sensor.
Figure 3. Robot arm: (a) Structure of robot arm; (b) setup of angle sensor.
Robotics 12 00126 g003
Figure 4. Analysis of cable force and interaction force.
Figure 4. Analysis of cable force and interaction force.
Robotics 12 00126 g004
Figure 5. First type of errors.
Figure 5. First type of errors.
Robotics 12 00126 g005
Figure 6. Second type of errors.
Figure 6. Second type of errors.
Robotics 12 00126 g006
Figure 7. Pose-loop control strategy.
Figure 7. Pose-loop control strategy.
Robotics 12 00126 g007
Figure 8. Closed-loop process of the driving of one cable in J o i n t i
Figure 8. Closed-loop process of the driving of one cable in J o i n t i
Robotics 12 00126 g008
Figure 9. Block diagram of the dual-loop control strategy.
Figure 9. Block diagram of the dual-loop control strategy.
Robotics 12 00126 g009
Figure 10. Multiple joints motions: (a) Motion of multiple pitch joints; (b) motion of multiple yaw joints; (c) composite motion of multiple pitch and yaw joints.
Figure 10. Multiple joints motions: (a) Motion of multiple pitch joints; (b) motion of multiple yaw joints; (c) composite motion of multiple pitch and yaw joints.
Robotics 12 00126 g010
Figure 11. Dynamic motion: (a) First step; (b) second step; (c) third step; (d) fourth step.
Figure 11. Dynamic motion: (a) First step; (b) second step; (c) third step; (d) fourth step.
Robotics 12 00126 g011
Figure 12. Variation of joint angles: (a) Open-loop; (b) dual-loop.
Figure 12. Variation of joint angles: (a) Open-loop; (b) dual-loop.
Robotics 12 00126 g012
Figure 13. Relationships between the errors and time.
Figure 13. Relationships between the errors and time.
Robotics 12 00126 g013aRobotics 12 00126 g013b
Table 1. Parameters of all controllers.
Table 1. Parameters of all controllers.
Controller NamePropertyValue
Force controller K P F (mm/N)1.67 × 10−5
K D F (mm/N)0.5
| e 1 | (mm)Within 0.02
Position controller K P P 0.04
K D P 0.5
| e 2 | (mm)Within 0.02
PID controllerValue of K P A ’s element0.5–1.5
Value of K D A ’s element0.1–0.5
Value of K I A ’s element0.1–0.3
ρ 0.01
Table 2. Single joint test of J o i n t 6 .
Table 2. Single joint test of J o i n t 6 .
Reference AnglesFeedback Angles
Open-LoopSingle-LoopDual-Loop
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 10 ° 0 ° 0.101 ° 0.066 ° 0.051 ° 0.074 ° 0.000 ° 0.055 ° 0.021 ° 0.138 ° 0.006 ° 0.085 ° 10.261 ° 0.143 ° 0.261 ° 0.011 ° 0.377 ° 0.139 ° 0.055 ° 0.181 ° 0.221 ° 0.137 ° 0.094 ° 0.069 ° 9.921 ° 0.033 ° 0.011 ° 0.003 ° 0.016 ° 0.081 ° 0.014 ° 0.066 ° 0.006 ° 0.023 ° 0.003 ° 0.016 ° 10.009 ° 0.000 °
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 20 ° 0 ° 0.112 ° 0.077 ° 0.062 ° 0.096 ° 0.011 ° 0.066 ° 0.021 ° 0.138 ° 0.006 ° 0.096 ° 20.500 ° 0.198 ° 0.261 ° 0.000 ° 0.399 ° 0.128 ° 0.055 ° 0.181 ° 0.221 ° 0.126 ° 0.094 ° 0.080 ° 20.204 ° 0.022 ° 0.000 ° 0.008 ° 0.016 ° 0.081 ° 0.013 ° 0.088 ° 0.006 ° 0.001 ° 0.008 ° 0.006 ° 20.017 ° 0.011 °
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 0 ° 30 ° 0 ° 0.112 ° 0.055 ° 0.073 ° 0.074 ° 0.011 ° 0.055 ° 0.021 ° 0.127 ° 0.005 ° 0.096 ° 30.762 ° 0.231 ° 0.261 ° 0.000 ° 0.388 ° 0.128 ° 0.055 ° 0.170 ° 0.210 ° 0.126 ° 0.094 ° 0.080 ° 30.432 ° 0.011 ° 0.000 ° 0.003 ° 0.016 ° 0.081 ° 0.014 ° 0.088 ° 0.006 ° 0.001 ° 0.003 ° 0.016 ° 30.004 ° 0.000 °
Table 3. Multiple pitch joints test.
Table 3. Multiple pitch joints test.
Reference AnglesFeedback Angles
Open-LoopSingle-LoopDual-Loop
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 5 ° 0 ° 5 ° 0 ° 5 ° 0 ° 5 ° 0 ° 0.189 ° 0.022 ° 0.941 ° 0.014 ° 4.296 ° 0.016 ° 5.351 ° 0.050 ° 4.994 ° 0.041 ° 5.197 ° 0.033 ° 0.288 ° 0.011 ° 0.469 ° 0.003 ° 4.296 ° 0.115 ° 5.186 ° 0.104 ° 5.664 ° 0.118 ° 4.570 ° 0.154 ° 0.014 ° 0.000 ° 0.018 ° 0.003 ° 4.999 ° 0.006 ° 5.000 ° 0.006 ° 5.005 ° 0.008 ° 4.999 ° 0.000 °
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 10 ° 0 ° 10 ° 0 ° 10 ° 0 ° 10 ° 0 ° 0.200 ° 0.011 ° 0.941 ° 0.003 ° 9.503 ° 0.016 ° 10.427 ° 0.028 ° 10.157 ° 0.030 ° 10.162 ° 0.022 ° 0.277 ° 0.022 ° 0.469 ° 0.003 ° 10.349 ° 0.115 ° 9.702 ° 0.115 ° 10.883 ° 0.140 ° 9.470 ° 0.209 ° 0.003 ° 0.000 ° 0.007 ° 0.008 ° 9.987 ° 0.006 ° 9.988 ° 0.016 ° 10.004 ° 0.008 ° 9.998 ° 0.000 °
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 15 ° 0 ° 15 ° 0 ° 15 ° 0 ° 15 ° 0 ° 0.200 ° 0.022 ° 0.919 ° 0.003 ° 14.667 ° 0.005 ° 15.547 ° 0.017 ° 15.431 ° 0.041 ° 15.106 ° 0.033 ° 0.310 ° 0.011 ° 0.469 ° 0.003 ° 15.524 ° 0.115 ° 14.800 ° 0.093 ° 16.222 ° 0.250 ° 14.392 ° 0.319 ° 0.003 ° 0.011 ° 0.015 ° 0.003 ° 14.996 ° 0.005 ° 15.008 ° 0.006 ° 15.002 ° 0.003 ° 15.007 ° 0.011 °
Table 4. Multiple yaw joints test.
Table 4. Multiple yaw joints test.
Reference AnglesFeedback Angles
Open-LoopSingle-LoopDual-Loop
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 0 ° 5 ° 0 ° 5 ° 0 ° 5 ° 0 ° 5 ° 0.063 ° 0.011 ° 0.092 ° 0.003 ° 0.077 ° 5.103 ° 0.056 ° 4.686 ° 0.061 ° 5.441 ° 0.066 ° 4.790 ° 0.272 ° 0.044 ° 0.619 ° 0.102 ° 0.363 ° 4.916 ° 0.021 ° 4.807 ° 0.039 ° 5.496 ° 0.121 ° 4.636 ° 0.046 ° 0.033 ° 0.025 ° 0.025 ° 0.011 ° 5.004 ° 0.010 ° 5.005 ° 0.005 ° 4.991 ° 0.000 ° 4.999 °
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 0 ° 10 ° 0 ° 10 ° 0 ° 10 ° 0 ° 10 ° 0.140 ° 0.022 ° 0.081 ° 0.041 ° 0.088 ° 10.277 ° 0.045 ° 9.531 ° 0.039 ° 10.451 ° 0.077 ° 9.756 ° 0.294 ° 0.077 ° 0.608 ° 0.069 ° 0.385 ° 10.101 ° 0.131 ° 9.652 ° 0.028 ° 10.517 ° 0.088 ° 9.580 ° 0.046 ° 0.033 ° 0.040 ° 0.025 ° 0.000 ° 9.992 ° 0.001 ° 10.015 ° 0.005 ° 10.001 ° 0.000 ° 10.009 °
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 0 ° 15 ° 0 ° 15 ° 0 ° 15 ° 0 ° 15 ° 0.206 ° 0.044 ° 0.059 ° 0.074 ° 0.165 ° 15.408 ° 0.023 ° 14.442 ° 0.028 ° 15.417 ° 0.077 ° 14.733 ° 0.316 ° 0.099 ° 0.553 ° 0.036 ° 0.406 ° 15.265 ° 0.263 ° 14.508 ° 0.028 ° 15.527 ° 0.011 ° 14.491 ° 0.046 ° 0.022 ° 0.029 ° 0.014 ° 0.000 ° 15.001 ° 0.001 ° 15.024 ° 0.017 ° 14.966 ° 0.011 ° 15.007 °
Table 5. Multiple pitch and yaw joints test.
Table 5. Multiple pitch and yaw joints test.
Reference AnglesFeedback Angles
Open-LoopSingle-LoopDual-Loop
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 5 ° 5 ° 5 ° 5 ° 5 ° 5 ° 5 ° 5 ° 0.079 ° 0.011 ° 0.103 ° 0.030 ° 5.537 ° 5.010 ° 4.879 ° 5.565 ° 5.542 ° 4.782 ° 4.603 ° 5.306 ° 0.239 ° 0.044 ° 0.619 ° 0.392 ° 5.702 ° 4.307 ° 4.791 ° 4.807 ° 5.059 ° 5.112 ° 5.032 ° 5.240 ° 0.008 ° 0.000 ° 0.004 ° 0.008 ° 4.999 ° 4.999 ° 4.978 ° 4.994 ° 5.004 ° 5.002 ° 4.999 ° 5.010 °
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 5 ° 5 ° 5 ° 5 ° 5 ° 5 ° 5 ° 5 ° 0.079 ° 0.022 ° 0.103 ° 0.030 ° 10.613 ° 10.393 ° 10.054 ° 10.948 ° 10.739 ° 10.122 ° 9.382 ° 10.723 ° 0.327 ° 0.033 ° 0.773 ° 0.030 ° 10.833 ° 10.327 ° 9.988 ° 10.784 ° 10.574 ° 9.891 ° 9.404 ° 10.272 ° 0.003 ° 0.011 ° 0.004 ° 0.008 ° 9.998 ° 9.998 ° 9.988 ° 10.004 ° 10.002 ° 10.001 ° 9.998 ° 9.998 °
α 1 β 1 α 2 β 2 α 3 β 3 α 4 β 4 α 5 β 5 α 6 β 6 = 0 ° 0 ° 0 ° 0 ° 15 ° 15 ° 15 ° 15 ° 15 ° 15 ° 15 ° 15 ° 0.101 ° 0.011 ° 0.169 ° 0.008 ° 15.645 ° 15.634 ° 15.140 ° 16.090 ° 15.759 ° 15.615 ° 14.172 ° 16.029 ° 0.239 ° 0.033 ° 0.619 ° 0.008 ° 15.963 ° 15.546 ° 15.974 ° 15.914 ° 15.617 ° 15.340 ° 14.161 ° 15.601 ° 0.008 ° 0.011 ° 0.004 ° 0.008 ° 14.985 ° 15.029 ° 15.008 ° 15.024 ° 15.001 ° 15.043 ° 14.974 ° 15.040 °
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Xu, X.; Wang, C.; Xie, H.; Wang, C.; Yang, H. Dual-Loop Control of Cable-Driven Snake-like Robots. Robotics 2023, 12, 126. https://doi.org/10.3390/robotics12050126

AMA Style

Xu X, Wang C, Xie H, Wang C, Yang H. Dual-Loop Control of Cable-Driven Snake-like Robots. Robotics. 2023; 12(5):126. https://doi.org/10.3390/robotics12050126

Chicago/Turabian Style

Xu, Xiantong, Chengzhen Wang, Haibo Xie, Cheng Wang, and Huayong Yang. 2023. "Dual-Loop Control of Cable-Driven Snake-like Robots" Robotics 12, no. 5: 126. https://doi.org/10.3390/robotics12050126

APA Style

Xu, X., Wang, C., Xie, H., Wang, C., & Yang, H. (2023). Dual-Loop Control of Cable-Driven Snake-like Robots. Robotics, 12(5), 126. https://doi.org/10.3390/robotics12050126

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop