Self-Calibration for the General Cable-Driven Serial Manipulator with Multi-Segment Cables

: This paper focuses on the kinematic calibration problem for the general cable-driven serial manipulator (CDSM) with multi-segment cables to improve its motion control accuracy. Firstly, to fully describe the calibration parameters of cables, links, joint positions, and the transmission system, this paper proposes a new cable routing description method named cable-routing configuration struct (CRCS), which provides a complete set of parameters to be calibrated for the proposed self-calibration algorithm. Then, a self-calibration algorithm for CDSM with motor incremental encoders is proposed, which can calibrate the robot at one time only using sufficient measured motor and joint positions. Its premise, the initial cable length, needs to be calibrated. Finally, the parameters of a three-DOF (degree of freedom) six-cable CDSM were described using the CRCS description method, and a comparative experiment was carried out on the same motion controller using the parameters before and after calibration. The experiment results of trajectory tracking error showed that the calibration parameters obtained by the proposed calibration algorithm can significantly improve the motion control accuracy of the three-DOF six-cable CDSM. This verified the correctness and effectiveness of the proposed calibration algorithm.


Introduction
Cable-driven robots have been applied in many fields, for example, medical rehabilitation [1], assembly in a complex narrow cavity [2,3], automatic charging in electric vehicles [4], nuclear reactors [5], etc. High positioning and trajectory tracking accuracies is the basis of performing complex tasks. To reduce the inaccuracy resulting from manufacturing defects, assembly misalignments, compliance, and wear of connecting mechanisms [6], the calibration for key kinematic parameters is critical.
Currently, researchers are designing calibrations algorithm for cable-driven robots [6][7][8][9][10][11][12][13][14][15][16]. In ref. [6], the attachment points' locations of cables were calibrated by using the robot's internal sensors, i.e., motor encoders, instead of external measurement devices. Besides, the closed-form forward kinematics of the three-DOF and one-DOF cable-driven parallel manipulators (CDPMs) are formulated and then applied in the proposed calibration algorithm. This constrains the adaptability of the algorithm for complex systems. In ref. [7], the link parameters were firstly calibrated using joint encoders and then the attachment points' locations and constant coefficients from motor positions to cable lengths were calibrated by using motor encoders. Compared with [6], no forward kinematic model is used in the calibration algorithm. Nevertheless, there are implicit assumptions in this algorithm, that is, absolutely accurate measurements of the joint encoders and known initial cable lengths. In ref. [8], a generic calibration method for the initial cable lengths of CDPMs with relative encoders was proposed based on forward kinematics. However, this algorithm requires the knowledge of attachment points' locations beforehand. The calibration algorithm proposed by [9] uses cable lengths and tensions to directly determine end-effector's pose, and does not calibrate parameters, for example, link lengths. This algorithm is completely different from the method of indirect calibration of parameters to improve the pose accuracy of the end-effector. However, it is suitable for cable-driven manipulators (CDMs) with a low number of cables (for example, CDPMs). For CDMs with a large number of cables (for example, CDSMs), the measurement experiment that this method relies on is more complicated. In ref. [10], a kinematic calibration algorithm based on rope length residuals was proposed. The realization of this algorithm requires the use of an external motion capture system to measure cable length, so it is not a self-calibration algorithm. The methods in [11] and [15] are also not a self-calibration algorithm, because they need to install laser distance sensors and API (Automated Precision Instrument Inc.) laser device, respectively. In ref. [12], a method of how to select the robot configuration for calibration to obtain the maximum calibration accuracy was proposed. It is out of the scope of this paper. Nevertheless, the platform for verifying this method is still a 6-DOF CDPM. Similar to ref. [6], the algorithm in [13] also relies on the forward kinematics model of CDPM. This algorithm is not applicable to complex CDSM, because the forward kinematics solution of CDSM is complicated. In ref. [14], the calibration and self-calibration methods for CDPMs were only conceptually described. In ref. [16], a calibration method based on parameter sensitivity analysis was proposed, but there are many types of sensors used.
In view of the above shortcomings, this paper proposes a novel calibration model for CDSMs with motor incremental encoder and joint encoder that does not depend on the forward kinematics model, and the cable initial length is one of its parameters to be calibrated. The parameters to be calibrated in the proposed algorithm also include the attachment points' locations of the actuation cables, the link parameters, the joint encoder measurements, and the coefficients from motor positions to cable lengths. These parameters can be integrated together to complete their calibration in a single calibration test. Compared with the separate calibration processes for attachment points' locations and link parameters in [7], using the same sensor measurement data to calibrate the integrated parameters in a single time has better compatibility of each parameter. Compared to the above calibration solutions for CDPMs, the proposed algorithm has three advantages, including its independence on forward kinematics, the calibration for integrated parameters in a single time, and used sensors only including internal motor and joint encoders. Besides, the initial cable length can be calibrated using this algorithm.
Most of the existing research for cable-driven manipulator calibration is focused on CDPMs [9][10][11][12][13][14][15][16]. Literature [6] and [7] are the rare research work that takes CDSM as the research object. Unlike CDSMs, each of the CDPM's cables consists of only one segment. Although [6] studied the 7-DOF cable-driven serial manipulators (CDSMs), the final simulation studies focused on two separate sub-modules of the CDSMs, i.e., the six-cable three-DOF shoulder and two-cable one-DOF elbow. The simulation study in [7] also focused on only the shoulder sub-module of the seven-DOF CDSM. That is to say, although the research objects in [6] and [7] are CDSMs, the calibration method proposed is still the existing algorithm for CDPMs. In summary, the calibration for CDSMs with multi-segment cables has not been studied thus far. In the proposed algo-rithm, the data required for calibration includes the measured motor and joint posi-tions, which can be selected from certain motion trajectory of CDSMs. The motion tra-jectory should meet the following conditions: all cables have retracting or releasing motion and are tensioned, and all joints have clockwise or counterclockwise motion. The resulting motor encoders' relative changes and the joint encoders' measurements are captured and then used to calibrate for the integrated parameters.
To systematically build a framework for the modeling and control of multilink cabledriven manipulators (CDMs) with complex cables' arrangement, it is necessary to find a method that can orderly store and clearly express the complicated cable-routing information. In ref. [17], a generalized model named cable-routing matrix (CRM), which can encapsulate all possible combinations in cable routing, was proposed. However, the segment whose ends are on the same link, which is defined as constant segment because of its fixed length, is not considered in CRM, which can be derived from Property 2 in [17]. From the perspective of inverse dynamics modeling, for intermediate members, i.e., = 1, 2, ⋯ , − 1, the resultant force and moment of the above-mentioned constant segment's cable tension on the link are zero, which will not affect the inverse dynamics modeling. But for the end links, i.e., = 0, , the resultant force and moment are not zero, which makes the generalized dynamic model proposed by [17] limited. This paper does not focus on inverse dynamic modeling. Nevertheless, it is clear that the cable-routing expression described by CRM is not suitable for the cable attachment point calibration work in this paper. Therefore, this paper proposes a novel general cable-routing description method for various CDMs which can support the calibration work by providing integrated parameters and simultaneously remedy the present drawbacks. Therefore, this paper proposes a generic method called cable-routing configuration struct (CRCS), which can fully describe various CDMs (including CDPMs and CDSMs) and intends to make up for the shortcomings of the existing method in [17]. Based on this, the proposed calibration model can work for both CDPMs and CDSMs.
Clarifying the relationship among CDM, CDSM, and CDPM (see Figure 1) helps explain why the proposed algorithm is practical for both CDSMs and CDPMs. As shown in Figure 1, their relationship is expressed from the perspective of the cable's segment number. Generally, the segment number of CDPM's all cables is one. The segment number of CDPM's cables is diverse, but there are always cables with more than one segment. It is noted that the above-mentioned cable segment refers to the segment defined in Section 2.2 whose length changes with the joint angle (for CDSM) or the end-effector's pose (for CDPM). The essence of the proposed CRCS method is to describe the cable segment information. Therefore, the CDSM and CDPM that meet different cable segment conditions in Figure 1 can be described by this method. Further, the integrated parameters provided by CRCS can be calibrated using the proposed calibration algorithm. The contributions of this paper are presented as follows: • A novel self-calibration model is proposed, which realizes the calibration of integrated parameters in a single time, and only depends on the motors' incremental encoders. Besides, the calibration object includes the cable initial length. • A more general cable-routing description method for various CDSMs than existing methods is presented, which integrates the complete parameters to be calibrated.

•
This paper takes the lead in the calibration research for CDSMs with multi-segment cables. The experiment results expressing the influence of the calibrated parameters on robot's motion accuracy are published, and the validity and correctness of the proposed calibration model are verified.
This paper is organized as follows. In Section 2, the cable-routing configuration struct is defined. In Section 3, the self-calibration model is proposed. Experiments are conducted and results are analyzed in Section 4. Finally, this paper is concluded in Section 5.

Notations Description
The key mathematical notations and their meanings used in the design of the description method and the self-calibration algorithm for CDSMs are shown in Table 1. The vector from the origin of frame to the one of

System Description
The cable arrangement system of the entire CDSM system consists of the arrangement of each cable in the system. Further, the arrangement of a single cable is composed of all the segments of the cable, where the section of a cable between two adjacent attachment points is defined as the cable segment. Finally, the arrangement of a single segment is determined by the attachment points at its ends. Taking a three-DOF three-cable CDSM as an example, the relationship among the arrangements of the entire CDSM system, single cable in the system, and single segment is illustrated in Figure 2.
In fact, to fully describe the routing arrangement of a single cable, the required information includes the cable number and all segments of all cables, where denotes the -th segment of cable , = 1, 2, ⋯ , denotes the cable number, = 1, 2, ⋯ , − 1 denotes the number of the segment of the -th cable, represents the total number of the CDSM's cables, and ( − 1) represent the total number of attachment points and segments of cable , respectively. In Figure 2, there are = 3, = 7, = 4, = 5. To fully describe the routing arrangement of a single segment, the required information includes the two attachment points and , , , at its two ends, i.e., the coordinates of the two cable attachment points The segment vector with respect to frame can be given by: which is a function of the parameters of links from , to , and the positions of joints from , to , . If = , , i.e., the two adjacent cable attachment points are on the same link, the homogeneous matrix becomes an (4 × 4) identity matrix. According to Equation (1), the segment length of can be given by: and further the total length of cable can be given by:

Cable-Routing Configuration Struct (CRCS)
The cable segment can be divided into constant and variable segments. The segments of and in Figure 2b are constant segments. The variable segment refers to the cable segment whose segment length or vector changes with joint positions, for example, and in Figure 2b. According to the joint distribution of joint positions that affect the length or vector of the segment, the variable segment can be divided into single-joint (for example, in Figure 2b) and multi-joint (for example, in Figure 2(b)) variable segments.
For a segment, the following segment routing struct (SRS) is constructed: which includes the cable number of the segment, the segment number, two link numbers where the two attachment points are located, the coordinates of the two attachment points, the joint positions from joint to joint , , and the link parameters from link to link , , where = ℓ , ℓ , ⋯ , ℓ ∈ ℝ × denotes the parameters of link , which is essentially the forward kinematics between the above two link frames, can be computed using these joint variables , ⋯ , , and link parameters , ⋯ , , . The segment vector and length can be computed via Equations (1) and (2) using these quantifies, respectively.
Based on SRS, the following cable-routing configuration struct (CRCS) can be construct: where ∈ ℝ ∑ × denotes the vector of cable number, whose detailed form is given by: and , which are extracted from the -th sub-matrix of the matrix , respectively. So far, the illustration of the meaning of the quantities stored in CRCS is complete. Then, the extraction of the attachment points' coordinates and the homogeneous transformation matrix, computation and storage operations of segment vector, segment and cable lengths are explained.

Basic Model used for Calibration
The cable length model in Equation (3) can be rewritten by emphasizing the dependence of the cable length vector on the fixed attachment points' locations, link parameters, and the joint positions: In addition, if the motor encoders are incremental, the cable length is composed of the initial cable length and the cable length increment, which results in another form of cable length model: where ∈ ℝ × denotes the cable length (0) at the initial (zero) moment, which is a constant, denotes the increment vector of cable length, there is (0) = , = ( , , ⋯ , ) ∈ ℝ × denotes the vector of motor positions, = (ℎ , ℎ , ⋯ , ℎ ) ∈ ℝ × denotes the vector of the coefficients from motor positions to cable lengths, diag( ) ∈ ℝ × denotes the diagonal matrix satisfying the -th diagonal element is equal to the -th element of . Moreover, ℎ ( = 1, ⋯ , ) can be computed using ⁄ , where , , and denotes the -th motor's counts number corresponding to per mm movement of ball-screw, the reduction ration of the -th motor, the lead of the -th ballscrew, respectively.
For the initial cable length , there is the following analysis: Since the motor encoders are incremental, the measurement of determines whether the cable length can be measured without external measuring equipment. If cannot be measured in real time, the calibration cannot be completed only using Equation (9). However, the motor positions can be measured in real time using motor encoders. Therefore, the calibration can be completed by combining Equation (10). The premise is that the initial cable length is regarded as one of the parameters to be calibrated. Let , , , , , and denote the nominal values of the vectors of motor positions , the coefficients from motor positions to cable lengths , the initial cable length , the attachment points' locations , the link parameters , and the joint positions , respectively, represents the measured value of the motor position vector , where the detailed form of can be computed by: the nominal values of the fixed parameters of , , and are set equal to the design data of the mechanical structure, the detailed form of can be computed by: which is equal to the cable length calculated using the joint angle measurement (0) at zero moment, and is set equal to the data provided by the joint encoders.
According to the known , , and the multiple sets of the measurements of , the parameter variations ∆ can be computed. Since Equation (15) constitutes a system of equations into unknowns with < , a sufficient number of motor position measurements should be performed to obtain a system of at least equations. Hence, assuming that the motor position is measured times at different manipulator poses, the corresponding equations of Equation (15) are combined to form: For the nominal values of the parameters required to compute , it should be noted that the mechanical geometric parameters are constant, and the joint variable depends on the manipulator configuration at pose , where = 1,2, ⋯ , . To avoid ill-conditioning of , there is ≫ . Therefore, the least square solution of Equation (16) can be given by: where ( ) denotes the left pseudo-inverse matrix of . The computation of in Equation (17) uses the nominal values of the parameters . Based on the computed ∆ , the first parameter estimate is given by: The above estimate procedure should be iterated until ∆ converges within the set threshold , which is shown in Figure 3.  (11) and (12) with the values of the parameters at the previous iteration. As a result of the kinematic calibration procedure for a generic CDSM, more accurate estimates of the real link geometric parameters, coordinates of the attachment points, initial cable lengths, and the transmission coefficients, as well as possible corrections to make on the joint encoders' measurements are obtained.

Experimental Setup
Taking a plane three-DOF six-cable CDM as an example, as shown in Figure 4, the above-mentioned generalized cable arrangement description method is used to describe the robot.
× , respectively, and the matrix formed by horizontally connecting the homogeneous transformation matrices between the link and link , can be given by: Hence, the total number of parameters to be calibrated is = 2 + 3 ∑ + + = 2 × 6 + 3 × 36 + 15 + 3 = 138. The number of the groups of measured motor and joint positions should satisfy ≫ ⁄ = 138 6 ⁄ = 23. In this experiment, thirty, forty, fifty, sixty, seventy, eighty, ninety, and one hundred are selected as the number of the measured postures to explore the relationship between it and the convergent accuracy. The measured joint and motor positions for calibration are given in Figures 5 and 6, respectively. The motor positions are expressed as ℎ ⁄ ( = 1, ⋯ ,6), which is more intuitive. These positions are extracted from the same motion trajectory of CDSM at specific time intervals. This is because the encoder is incremental. Thus, the position points intercepted from the motion trajectories of different time bases do not have the same initial zero position of the motor position, which makes the calibration meaningless. At these time points, the corresponding cable tensions must be positive and approximately equal, which can avoid the influence of cable elasticity. The nominal values of motor positions computed using Equation (11) and initial cable lengths computed using Equation (12) are given in Figure 6 and Table 2, respectively. Appendix B gives the calculation steps of the calibration matrix.
It is noted that, compared with other motor positions in Figure 6, the nominal positions of motor 3 and 4 are obvious not in accordance with the measured ones. This is because the movements of motors 3 and 4 corresponding to the joint position in Figure 5 are small, which are significantly smaller than the other four motors' movements. Therefore, the influence of the return error of the backlash hysteresis is more obvious. On the other hand, the reason for the small movement of these two motors is that the clockwise movement of joint 1 and the counterclockwise movement of joint 2 make the variable segments' lengths ( ) and ( ) of cable 3 (cable 4) retract (release) and release (retract), respectively (see Figure 4), which makes the change of the entire cable length of cable 3 small and directly leads to a small amount of motor movement.   Figure 7 shows the relationship between convergence accuracy and different numbers of the measured positions. The calibration positions with a total of thirty, forty, fifty,

Measured Nominal
Measured Nominal sixty, seventy, eighty, ninety, and one hundred used in Figure 7 are actually the positions labeled one to thirty, to forty, to fifty, to sixty, to seventy, to eighty, to ninety, to one hundred in Figures 5 and 6. When the total number of calibration data exceeds 90, the convergence accuracy is as low as 0.0812. The calibration results when the number of calibration positions is 90 is shown below: Table 2 gives the calibrated values of initial cable lengths. The nominal and calibrated values of coefficients from motor positions to cable lengths, these attachment points' coordinates, and link parameters are given in Tables 3-5, respectively. Figure 8 gives the difference between nominal and calibrated values of joint positions.

Comparison of Repetitive Motion Accuracy Before and After Calibration
To verify the validity of the calibration results on the actual trajectory tracking accuracy of the robot, a motion tracking experiment on a certain trajectory with the same motion controller using the nominal and calibrated parameters was carried out. The desired motion is a single reciprocating motion between two joint positions (−15°, −35°, 10°) and (−10°, −10°, 0°). Trajectory planning uses the cubic spline method. The time of a single reciprocating movement is 5 s. The trajectory tracking error after repeated twenty times is shown in Figure 9. According to Figure 9, the following results can be drawn: First, the trajectory tracking error using the calibration parameters is significantly lower than that using the nominal parameters. Especially the high tracking accuracy of first and second joint angles will greatly improve the pose accuracy of the end-effector. Second, there are obvious jumps in the trajectory tracking error when nominal parameters are used, such as about 74s and 94s of second joint angle. When the calibration parameters are used, this phenomenon is improved. These results show the calibration parameters obtained by the proposed calibration algorithm can significantly improve the accuracy of CDSM's motion control.
Judging from the experiments in this paper, the calibration results have indeed improved the trajectory tracking accuracy of the CDSM, which indicates that the inconsistency between the nominal and measured values of motors 3 and 4 in Figure 6 does not

Before calibration
After calibration

Before calibration After calibration
Before calibration After calibration affect the calibration accuracy, and conversely the calibrated parameters can deal with errors such as backlash hysteresis of the transmission system. For the small motor movement that causes the above obvious inconsistency, on the one hand, it makes the backlash hysteresis of the transmission system more obvious, which helps to achieve the harmony between the calibrated parameters and these inherent errors through carrying out calibration, thereby improving the trajectory tracking accuracy of the CDSM. On the other hand, in the case of small motor movement, the error of the motor positions measured by encoders is relatively large, which is not conducive to accurate calibration. Hence, how to choose the CDSM's configurations to balance the two aspects is a valuable issue. It is similar to the research work of [12] and is beyond the scope of this paper. Its research result's possibilities include that the inconsistency has no or little effect on the calibration accuracy (the experiment in this paper is an example), or the calibration accuracy will be further improved after the inconsistency is eliminated. If the latter is true, it is a feasible solution to plan the manipulator's trajectory that can avoid releasing and retracting two segments of the same cable.
It should be noted that although the calibration result has improved the trajectory tracking accuracy of the robotic arm, how does the small motor movement affect the calibration result? Does it have no effect or little impact, or the calibration accuracy will be affected after the small motor movement is eliminated It should be noted that although the calibration result has improved the trajectory tracking accuracy of the robotic arm, how does the small motor movement affect the calibration result? Does it have no effect or little impact, or the calibration accuracy will be affected after the small motor movement is eliminated It should be noted that, although the calibration results to enhance the accuracy of tracking problem, but how it affects the amount of exercise on a small motor calibration results, is little or no effect, or is there after calibration accuracy to eliminate a small amount of exercise machine It should be noted that, although the calibration results to enhance the accuracy of tracking problem, but how it affects the amount of exercise on a small motor calibration results, is little or no effect, or is there after calibration accuracy to eliminate a small amount of exercise machine

Conclusions
This paper proposes a self-calibration algorithm for general CDSM. First, to fully describe the waiting calibration parameters of cables, links, joint positions, and the transmission system of CDSM, a new cable path description method called cable-routing configuration struct (CRCS) was proposed. This method has the advantages of convenient storage and retrieval of known system parameters, and it makes up for the shortcomings of some cable attachment points missing in the existing methods, and provides a complete set of parameters to be calibrated for the proposed self-calibration algorithm. Next, this paper proposes a self-calibration method for CDSM with incremental motor encoders and joint encoders, which can calibrate the robot integrated parameters at one time only based on a sufficient number of measured motor positions, and does not depend on the forward kinematics model. This algorithm is better than the existing method of separately calibrating the link and cable parameters in terms of compatibility between parameters. In addition, the cable initial length is also used as a parameter to be calibrated. Finally, a comparative experiment of the trajectory tracking error obtained by the same controller using the nominal and calibration parameters was carried out in a three-DOF six-cable CDSM. The results verified the correctness and effectiveness of the proposed calibration method. Simultaneously, the CRCS description method proved to be meaningful.
Further research focuses on the relationship between convergence accuracy of the self-calibration algorithm in this paper and different position combinations (or CDSM's configurations) used in calibration. In particular, the CDSM's trajectory planning algorithm that can achieve large motor movement will be analyzed, to further clarify the impact of small motor movement on the calibration accuracy.
Author Contributions: Y.L. and H.L. developed the methodology; Y.L. and P.Q. conceived and designed the experiments; Y.L. and P.Q. wrote the original draft of the paper; S.D. and D.W. reviewed and edited the paper. All authors have read and agreed to the published version of the manuscript.

Appendix B.6 Partial Derivatives with Respect to Motor Positions
The partial derivative of Equation (13) with respect to coefficients of transmission system can be given as: In summary, the calibration matrix can be obtained by combining Equations (A7) to (A14).