# Using a Cable-Driven Parallel Robot with Applications in 3D Concrete Printing
## 4 Dual Simplex Algorithm for the Optimization of Cable Tension, Taking into Account Cable Sagging
### Cable Length Computation with Cable Sagging  
The cable sagging model will assume that the cable is only deflected by its own weight, neglecting the wind and uneven weight distribution. Consider a cable suspended between two points B and M, as in Figure 4, where B is the base cable attachment point, M is the end-effector attachment point, \(L_{S}\) is the straight-line (Euclidean norm) distance between A and B, \(L\) is the catenary (actual) length between B and M, \(g\) is the acceleration due to gravity, \(\boldsymbol{\tau}\) is the cable tension with the \(X\) and \(Z\) components \(\boldsymbol{\tau}_{\rm x}\) and \(\boldsymbol{\tau}_{\rm z}\) at the end effector side, \(\boldsymbol{\tau}_{\rm Bx}\) and \(\boldsymbol{\tau}_{\rm Bz}\) are the \(X\) and \(Z\) components of the cable tension at the base cable attachment point B, and (\(x_{m}\), \(z_{m}\)) are the coordinates of the cable at the end-effect attachment point. For the cable in Figure 6, the static catenary displacement equations for the inextensible case after simplification are as follows [13; 15; 18]. \[x_{m} =\frac{|\tau_{x}|}{\rho_{L}g}\bigg{[}\sinh^{-1}\bigg{(}\frac{\tau _{z}}{\tau_{x}}\bigg{)}-\sinh^{-1}\bigg{(}\frac{\tau_{z}-\rho_{L}gL}{\tau_{x}} \bigg{)}\bigg{]} \tag{18}\] \[z_{m} =\frac{1}{\rho_{L}g}\bigg{[}\sqrt{\tau_{x}^{2}+\tau_{z}^{2}}- \sqrt{\tau_{x}^{2}+\left(\tau_{z}-\rho_{L}gL\right)^{2}}\bigg{]}\] (19) \[\tau =\sqrt{\tau_{x}^{2}+\tau_{z}^{2}} \tag{20}\]  
where \(\rho_{L}\) is the linear density of the cable material, and \(g\) is gravity acceleration. When finding the active cable lengths for a given pose, considering the effects of cable sag (i.e., the mass of the cables), cable tension is involved in finding the cable length. Hence, the kinematics and statics (or quasi-statics when ignoring the dynamic problem of slow-motion control for printing concrete) problems are coupled and have to be solved simultaneously. The results of the kinematics and statics problems considers the cable lengths and cable tensions used as the input of the cable sag model (16-18). This system (16-18) is a nonlinear implicit equation and there are no analytical methods that can be applied to solve it. The numerical methods can be used to find suitable solutions. The Trust-Region-Dogleg algorithm [19] is used to solve the cable sag model (18-20). Equation-solving definition: Given a set of \(n\) nonlinear functions \(Fi(x)\), where \(n\) is the number of elements in vector \(\mathbf{x}\), the goal of this algorithm is to find a vector \(\mathbf{x}\) that makes all \(Fi(x)=0\). In this case, the cable sag model (18-20) is rewritten as  
\[F_{i}=\left\{ \begin{array}{l}\frac{|\tau_{x}|}{\rho_{L}g}\bigg{[}\sinh^{-1} \bigg{(}\frac{\tau_{z}}{\tau_{x}}\bigg{)}-\sinh^{-1}\bigg{(}\frac{\tau_{z}- \rho_{L}gL}{\tau_{z}}\bigg{)}\bigg{]}-x_{m}\\ \frac{1}{\rho_{L}g}\bigg{[}\sqrt{\tau_{x}^{2}+\tau_{z}^{2}}-\sqrt{\tau_{x}^{2 }+\left(\tau_{z}-\rho_{L}gL\right)^{2}}\bigg{]}-z_{m}\\ \sqrt{\tau_{x}^{2}+\tau_{z}^{2}}-\tau\end{array} \right. \tag{21}\]  
where \(n=3\), \(x=\big{[} \begin{array}{ccc}\tau_{x}&\tau_{z}&L\end{array} \big{]}\). Figure 6: The sag of the cable between two points. This algorithm will give a set of solutions for each input condition (\(\boldsymbol{\tau}\), \(X_{m}\), \(Z_{m}\)). Figure 7 show the structure of the robot in this study, with a circle trajectory of \(r=0.8\) (m); the circle is on the plan \(XY\) with \(z=1000\) mm, and is divided into multiple knot points. An algorithm performs whether these points are in the workspace of the robot or not (satisfying the equilibrium Equation (11)). If the trajectory is possible, this coordinate data will be inserted into the algorithm to find the corresponding cable tension, with slow motion designed for concrete printing.