Optimization and Control of a Planar Three Degrees of Freedom Manipulator with Cable Actuation

: The paper analyzes a planar three degrees of freedom manipulator with cable actuation. Such a system can be understood as a special type of hybrid parallel kinematic mechanism com ‐ posed of the rigid serial chain and the additional auxiliary cable system. The advantage of the aux ‐ iliary cable mechanism is the ability to reconfigure the whole system. The fulfillment of sufficient prestressing is the constraint of the optimization process. Computed Torque Control with a cable force distribution algorithm is implemented. The control algorithm performance is examined on different trajectories, including non ‐ smooth motion requests, and its robustness is tested by ran ‐ domly generated errors of the model parameters in regulators. The results demonstrate that the optimized structure is capable of controlling the manipulator motion and keeping the cable pre ‐ stressing within the given limits.


Introduction
Robots and manipulators with serial kinematics totally dominate in all industrial applications and have many advantages (e.g., large workspace [1]), and an end-effector represents the variety of possibilities (gripper, active component or tool [2]). However, the disadvantage is undoubtedly the worse dynamics (e.g., the low effective stiffness and damping [3]). New improvements in vibration suppression and motion control of the robot/manipulator end-effector are still highly in demand. Parallel kinematics, which theoretically represents some alternative, typically has better dynamic properties but usually has a high number of expensive, precise components on the other hand (such as joints and arms) and typically more limited workspace.
The combination of a robot/manipulator with a serial chain with an auxiliary cable mechanism is some trade-off between these two possibilities. Such a system could be understood as a special type of the hybrid parallel kinematic mechanism composed of the rigid serial chain and the additional auxiliary cable system. The advantage of the auxiliary cable mechanism is the ability to reconfigure a manipulator-cable system ( Figure 1).
Considering weight reduction and cable systems, one could mention tensegrity structures (consisting of members under tension that are contiguous and members under compression that are not), which bring, on the one hand, the effective ratio of mass to stiffness [4] and are very popular in many areas: spatial robot [5], stacked tensegrity manipulator [6], tensegrity bridge, tensegrity "mobot" [7], etc. However, on the other hand, their dynamic properties are generally worse than the manipulators/robots with joints.
Generally, cable-controlled mechanisms [8] could be a combination of a pure serial structure and a tensegrity of the higher-order, e.g., the spherical mechanisms HexaSphere [9] and QuadroSphere [10]. Another special structure is a plant-inspired cable-driven manipulator [11]. However, parallel structures consisting of cables with negligible flexural stiffness [12] have to deal with the problem of complex vibrations, and the redundancy brings problems to a control algorithm [13]. Many approaches are focused on eliminating problems in the form of advanced methods of control and trajectory planning [14,15]. On the other hand, the redundancy of actuators could eliminate workspace singular positions and improve other parameters of a mechanism [16] (e.g., a hyper-redundant manipulator [17]). Figure 1. Basic concept of a serial manipulator with an auxiliary cable mechanism above its workspace. Legend: src-serial robot chain, wp-work piece, bf-base frame, cmd-cable mechanism drive, c-cable, ee-end effector, cp-cable pulley, rd-robot drive, optionally: alds-additional link deformation sensors, ajas-additional joint angular sensors.
The above-mentioned structures are all demonstrated in Figure 2. Firstly, the serial three-arm manipulator (Figure 2a) is extended to a parallel cable-driven mechanism (Figure 2b). In Figure 2c, there is an extension shown to a potential tensegrity manipulator derived from Figure 2b. This work is aimed at the interphase structure, which potentially represents the step forward to the tensegrity structure. The chosen parallel kinematic mechanism is cable-driven only.
The paper deals with the combination of a serial structure and cables, which closes the kinematic loops and increases stiffness, which we consider as an interesting way of improving dynamic properties. Cables contrary to rigid components of parallel mechanisms allow easy reconfiguration (disconnect/connect), are simple and light. The paper, therefore, analyzes the issue of controllability of a serial chain using cables in a certain section of the workspace. Moreover, there is the idea of reconfigurability of the cable connection for different sets of operations. This is the reason why we consider analyses and optimization of serial chains controlled by cables essential for this research.
The chosen design, number of cables and cable tension, are described in Section 2. The dynamic model with extensible cables is assembled in Section 3. Once the mechanism and its dynamic model are defined, the structure optimization follows. Local and global optimization methods are used (Section 4). To control the mechanism, the Computed Torque method is implemented with two different regulators. The distribution of cable force is described in Section 5. Finally, the simulation results are shown.

Three Degrees of Freedom Planar Manipulator
The chosen planar cable-driven three-links manipulator is schematically shown in Figure 3.

Number of Cables of the Manipulator
The number of cables should be greater than the number of degrees of freedom (DoF) to reach the desired controllability of the manipulator [18]. This often leads to a redundant cable system. On the one hand, this idea can be easily supported since a cable is not able to transfer a compressive force but only a tensile force. On the other hand, the compressive force can be replaced by the gravitational force when the material body tightens the cables by its own weight. However, the gravitational force has limitations. For a spatial body with six DoF, there are approaches considering seven cables if all the cable outlets of the pulleys are located above the body, and gravitational force is considered in the control strategy. In the case of an intangible body, it is necessary to have a proper cable configuration, which enables all cables to tension each other and keep this pretension within certain limits (e.g., configuration with eight cables above and below the body in [19]). It is also necessary to mention the concept of static stability [20]. The configuration with seven cables above the body and gravitational force is significantly less stable against any external force than the configuration with eight cables above and under the body.
The number of cables for the planar three degrees of freedom manipulator is investigated in [18] and given by the formula The main effort of this work is to comprehensively investigate configuration where the workspace is, on the one side, the serial mechanism, and auxiliary cable system on the other side. Our work is aimed to reach the complex controllability using cables only, without any other actuation, even though the joint actuation is considered in the final application ( Figure 1) (dynamic model is assembled considering joint actuation as well). Considering the gravitational forces, one can prestress the cables. However, the investigated control method should be independent of them. Therefore, the following discussion of the issue will be specified for the planar manipulator with three degrees of freedom controlled by four cables only where four cables are chosen from (1).

Cable Placement/Connection with Serial Structure
The schematic representation of cables placed on the planar manipulator is shown. The locations are based on the following consideration: the end-effector must be able to move in the sense of rotation. For this reason, it is necessary to connect the last link with at least two cables and the previous link with the third cable. The remaining fourth cable is then placed on the remaining first link.

Cables Tension and Force Distribution
A very important role in a control algorithm of the cable-driven manipulator is the force distribution into the individual cables. The investigated manipulator, whose structure is considered serial, is controlled by cables attached in parallel. The whole structure, thus, represents a serial-parallel arrangement, which has a redundant number of cables (four cables vs. three DoF manipulators). Therefore, the required action cannot be directly assigned to each motor. The topic of cable-driven manipulators is also discussed in [21], where it specifically investigates the case of a parallel spatial manipulator with n DoF ( ), which is controlled by ( 2) cables. Such an algorithm is processed for six DoF and eight cables in [22]. A centralized control model is chosen to control the above series-parallel structure of the manipulator. All actuators are controlled at once by transforming the required force effects on the individual links of the manipulator.
Note 1: The decentralized model is a control structure where each cable is controlled by its own regulator. However, there may be situations where the regulators of two or more cables increase the action on each other-they "stretch". In this case, it is not an attempt to pretension the cable because the regulators do not know about each other. Note 2: If the regulators are not properly tuned, the action can grow above all limits, and there is a risk of rope breakage or motor overload. This is true for both centralized control and decentralized control.
The required moments acting on the manipulator links are obtained by the "Computed Torque" method, which uses inverse dynamics to convert the action intervention (the acceleration of the independent coordinates) into the moments that act on the individual links of the manipulator (using inverse dynamics). The required force effects in a serial structure without cables are provided by motors in the joints. These moments are transformed in the next step using the transposed Jacobi matrix . Furthermore, is introduced, where is the "Wrench" matrix. In this case, the Jacobi matrix represents the matrix of the transfer between the cables and the independent coordinates, and one has (2) where is the vector of required moments and is the vector of the required cable forces. One has more unknowns than equations, and thus, the solution is not unique (redundant number of cables). One way to find the solution is to use the Moore-Penrose pseudoinversion (3) The force vector can now be expressed as . (4) It should be noted that pseudoinversion has the following properties when solving a system of linear equations [3]:  For any dimension of the vector of unknown the pseudoinversion of the matrix of the solution is calculated in the sense of minimizing the Euclidean norm ‖ ‖.


If the matrix has dependent columns (more unknowns than equations), then the pseudoinversion determines the solution in the sense of minimizing the Euclidean norm ‖ ‖.
It follows from the above two properties that Equation (4) determines the energetically minimum required force effect for motors . However, such a solution contains both tensile and compressive forces, which is unacceptable for cable control.
The vector is a vector that represents the minimum energy solution of Equation (2). However, this solution is not unique, and any solution in the form can be added to it, where is a parameter and is generated from null space of matrix and meets the orthonormality condition . All solutions of Equation (2) are in the form (5) It is now possible to vary the resulting . This strategy could be used if it is necessary to keep the forces in the motors that control the cables within certain limits. The problem can be written as a double inequality with the parameter (6) The force vectors in the cables are introduced in the dynamic model to calculate the matrix so that the positive sign represents the tensile force and the negative sign, the compressive force. It follows that the interval, which defines the possible motor load, is 〈0, 〉. By introducing this restriction, Equation (6) can be rewritten into (7) Let us assume that the interval 〈0, 〉 is fixed, where determines the maximum force in the cable. Then it is possible to determine and is subsequently kept in the middle of the interval 〈 , 〉 during control, which changes over time (note that Section 5.4 discusses an approach that does not use pseudoinversion of the matrix but the determination of the parameter is given by SVD decomposition. Such an approach is equivalent and gives the same results).

Dynamic Model of the Manipulator
The independent coordinates , and are chosen to assemble a dynamic model (DM). The DM is built in three steps:  Vector method (constraints between dependent and independent coordinates)  Newton-Euler dynamics Equations  Accelerations of mass centers of each link Vector method (step N.1) The vector method determines the relationship between dependent and independent coordinates. The number of independent vector loops is one 23 and is selected by the following points . The vector Equation is (9) and can be written in direction as 0 ∑ and in direction as 0 ∑ . Overview of parameters and are shown in Table 1.

3/2
In the next step, the vector of Equation (9) is derived, and one can write , where the , , and are shown in Equation (10), respectively.
The velocities of dependent coordinates are . The second derivation of the vector of Equation (9) is written in the form (11) where and are known, and is Newton-Euler equations (step N.2) Newton-Euler (NE) equations for each manipulator's arm are constructed. The freebody diagrams are shown in Figure 4. Equations are shown in Equation (14) for the first arm to illustrate the NE equations. The other two arms are given analogously. Constants and are introduced so that . The points are the centers of gravity (CoG).
are the gravitational forces. Finally, the NE equations are written in the matrix form (13) where , , , , , , , , is diagonal mass matrix, , , , , , , , , is the vector of acceleration ( and are CoG coordinates), matrix is defined in Equation (15), , , , , , is the vector of reaction forces and is vector of external forces (Equation (16)).
: : :  Acceleration of the CoG of each arm (step N. 3) The positions of the CoG of each arm are written in the global coordinate system. Equation (17) illustrates the equations for the second arm in and in , respectively, (17) and the second derivation in and , respectively, in Equations (18) and (19) Equations for the remaining arms are assembled in the same way. Equations are then written in the matrix form as , where and are given in Equation (21) and in Equation (22).
Assembly of the Dynamic Model To assemble the DM Equations (11), (13) and (20) are written together The form is obviously . The solution is . The input to DM is cable force vector , , , . Moments , , are used only as auxiliary inputs for the transformation to cable forces. Finally, the output is integrated twice ( and ) and used as an input to DM.

Geometrical Extension for a Pulley
The following model simulates a moving point on a pulley, where points are replaced by the moving points , 1,2,3,4 (the fixed points are used for the purpose of optimization). and are the centers and the radiuses of the pulleys, respectively. The distance is defined as . One can write for .
The angle ∈ 0, /2 is given by sin and let denote . Now, is expressed as (the triangle → the sum of the interior angles of triangle is ) Finally, the position of the point is , .

Extensible Cable Model with Pulley
Cables are considered inextensible for the purpose of optimization (| |). In the dynamic model, the extensible model of the cable and dynamic model of the pulley is implemented. The flexibility of a cable is modeled by a spring and a parallel damper ( Figure  5b). The relationship for each cable is defined as where is the force acting on the manipulator link, is the force generated by the spring, is the force generated by the damper, is the cable stiffness, (the cable stiffness and damping are supposed to be the same for all cables) is the cable damping, ∆ is the total cable elongation and ∆ is the corresponding time derivative. The total elongation is determined by where is the initial cable length determined by the initial manipulator configuration, is given by the actual manipulator configuration and represents a pulley motion (the initial condition is set as 0). The dynamic pulley model is given as , where is moment of inertia of a pully, is an input moment from a regulator and is a pulley damping moment.

Optimization Parameters
The fixed points are chosen for the optimization purpose (the cable length is | |). The points represent the cable connections with the manipulator link and the lengths determine the position of the cable connection ( Figure 3). A parameter ∈ 〈0,1〉 is introduced to normalize the distances as follows: / , 1,2,3,4. The are MANIPULATOR LINK PULLEY chosen in the interval ∈ 〈0.05,0.95〉 to avoid the joints areas. The overview is in Table  2.

Workspace
The workspace of the manipulator is chosen as a square area with given dimensions, which also normalizes the optimization parameters (determines the scale) and is based on the idea of the local manipulator stiffness improvement. The rotation of the end-effector is described by angle with the range bounded by and (this continuous range is replaced by a set of discrete points for the purpose of optimization). The chosen setup for the optimization is a set of 468 positions of the manipulator (36 positions and 13 rotations in every position).

Cost Function (CF)
Three partial cost functions are used for a mechanism with more DoF than one [24]. They are the dexterity ( ), the uniform distribution of dexterity ( ) and the ratio of the built-up manipulator space to its workspace ( ).

-Dexterity
The dexterity is based on the Jacobi matrix, which determines the relationship between velocities-manipulator links (input) and end effector (output) (Equation (30). The relationship between and is given as the conditionality of (Equation (31)).
The goal is to maximize the dexterity (minimize ). 1

-Uniform Distribution of Dexterity
The standard deviation of is chosen to describe the uniform distribution of dexterity. The goal is to minimize .

-The Ratio of the Workspace to the Built-Up Manipulator Space
The last is the ratio of the workspace to the built-up manipulator space. The size of the workspace is given by the fixed square area ( ). Points , , , , , , and are considered to determine the built-up manipulator space ( ) so that the maximum and minimum values in the and directions are always selected from these points. Finally, the ratio to minimize is defined as / .

, and Normalization and Scaling
The normalization is used to get identical starting values of each . The process takes the initial values of the optimization parameters and computes the values, 1,2,3. Then the parameters are chosen once so that 100 are at the same levels: (32) Once one has the identical starting values of each , the scale parameters could be used additionally to vary the importance of each partial and one can rewrite Equation (32) as The optimization process firstly uses Equation (32) to find the best optimization results with the normalized parameters. In the second step, Equation (33) is used to vary the importance of each . The parameter is chosen from the set {1;3;10}.

Optimization Results
Two optimization methods are used: the local optimization algorithm (Simplex) [25] and the global constrained optimization algorithm (Genetic algorithm) (GA) [26,27]. The best optimization result is chosen in the control algorithm and is reached by the GA method. All three partial are improved (Table 3) and the optimized values are shown in Table 4. The optimized structure is shown in Figure 6 (the scale parameters are 1, 1, 10 and its dexterity through the workspace is shown in Figure 7.

Control Algorithm
The "Computed Torque control" (CTC) is chosen for the manipulator control strategy. The dynamic model is linearized by inverse dynamics, and two different regulators are chosen. The cable force distribution and the determination of the Wrench matrix follow. Finally, the trajectory generation is shown.

Computed Torque Control
The selected model contains three independent coordinates , and , which are also flat outputs, and thus, , and . Evidence of this is given in [28]. Furthermore, lets introduce variables , and followed by , and . The vector has dimension 3 and its components are , and (vector is generally described in Equation (37)). The regulator action is then converted by the transformation to the vector , which also has dimension 3 and its form is , , for the chosen planar structure. The last step is to transform , , to , , , . The mentioned transformation between and is, in this case, the inverse dynamics of the manipulator. The model can be written now in Brunovsky's (canonical) form as follows [29]

Inverse Dynamics
The dynamic model with control inputs can be written in the universal form [30] , , , where is the matrix representing the inertia forces, vector represents generalized coordinates, are the control inputs, , is the vector of Coriolis and centrifugal terms, vector represents the gravitational forces and , is the matrix characterizing the actuating forces. To express the vector one has Since and , , are known, the vector can be written in the form In the next step, two DM of the manipulator are considered: (1) where The , and are given separately

Wrenchian
The determination of (Equation (47)) by expressing the right side of Equation (38) from the DM of the manipulator with cables is given below: The first link

Cable Force Distribution
The equivalent approach based on SVD decomposition is shown to determine the parameter and force vector .

SVD Decomposition
Firstly, the matrix is decomposed as , where , and arise from the decomposition. Matrix and are orthonormal with property and is the diagonal matrix of singular values. In the next step, Equation (48) is multiplied by (left side) .
By substitution and in Equation (49) Now, the parameter can be chosen. The forces in the cables are then (53) where is the m-th column and is the fourth column of the orthonormal matrix and is identical to the orthonormal vector from Equation (5). Considering the lower limit as , , , (cables are able to transfer the tensile force only) and the upper limit as , , , , where , , , is the vector of the maximal permissible motor force (which is defined by the chosen motor), one has (54) The parameter is chosen with respect to the application. For this case, the vector is chosen identically for every cable, the value is 25 . The vector is also chosen to be identic for each cable, the value is 700 . Finally, the parameter is computed dynamically so that the pretension on the cables is in the required limits just in the middle of this interval during the motion and at the steady-state.

Two Different Regulators
Two different regulators are implemented for the centralized control. The PI and PID regulators in cascade with feed-forward are used, and the flatness-based regulator follows [31].

PI and PID Cascade with Feed-Forward (FF)
The scheme is shown in Figure 8 ( , , ). The tuning method is divided into two steps: (1) velocity loop tuning and (2) position loop tuning. For both cases, the Ziegler-Nichols method is used as the first approach. The FF is added extra and is tuned experimentally.  Figure 8. PI and PID with feed-forward.

Flatness Based Regulator
The control scheme is shown in Figure 9. The relation between and regulator inputs and (tracking error) is given as where is the ideal dynamic model input (generated from the desired trajectory) and the rest of the right side of the equation corrects the tracking error. Coefficients are chosen such that the tracking error polynomial is the Hurwitz one. The Routh-Hurwitz Criterion is used to determine the coefficients. Necessary, but not sufficient, conditions for stability for a system are shown in the following equation

Trajectory Generation
The trajectory generation is always performed in the manipulator workspace, where it is verified that the manipulator with the selected parameters for a simulation always has the form of matrix W, such that it allows the cables to be prestressed (singular positions are outside the workspace).
Three different trajectories are considered: Point-to-point S-line, circle and rectangle. S-line is generated as a Bezier curve fifth order. Circular and rectangular trajectories are generated purposely with velocity and acceleration step changes to verify the stability of the control algorithm.

Simulation Testing
The dynamic model used in the control section is changed in parameters (about 10-20% randomly) to verify the control algorithm. The constants and are chosen as 5 10 N/m and 0.002, respectively. The constant is given by these steps: the mass of arms ( ) is divided by the number of cables, then 4 / and 0.5 (note that this is only an approximation for the purpose of simulation). The moments of inertia are, for simplicity, chosen as , 1,2,3 (the CoG is in /2). The overview of the chosen parameters is shown in Table 5. The simulation results are shown for the three considered trajectories. The figures are coupled for each trajectory: (1) Parameter and its boundaries and (2) end-effector tracking error. Time to prestress the cables is chosen as one s (two s for S-line trajectory). Then the interval eight s (six s for S-line trajectory) is set to execute the desired trajectory.
The S-line trajectory with a flatness-based regulator is shown in Figures 10 and 11. The trajectory is smooth enough and is kept in the middle of boundaries with no oscillations.  The next trajectory is the circle one. The Figures 12 and 13 show the simulation results using the PI and PID cascade with FF. The step changes are evident at the beginning and at the end of the executed trajectory (stability test). The parameter is kept in the middle of the boundaries. However, and are very close in the middle of the trajectory, and thus, the control algorithm is close to the limit of prestressing.  The rectangle trajectory is the last tested one. Results with the PI and PID cascade with the FF regulator are shown in Figures 14-16. The regulator reaction to the step change of velocity direction is shown in Figure 16. Again, the step changes are evident in the beginning, in the end of executed trajectory and in the three middle points (corners). This shows that the regulator can stabilize the dramatic changes, which can be reduced by smooth trajectory planning.

Conclusions
The planar three degrees of freedom cable-driven manipulator, which is a combination of a serial kinematic chain with cable elements, is investigated and represents an intermediate stage of a targeted tensegrity structure. The dynamic model is assembled, and the optimization process, which is focused on the whole structure of the manipulator, follows. Both the local simplex and the global genetic algorithm optimization methods are chosen for the optimization, and both methods showed an improvement in the partial cost functions. Once the structure is optimized, the best result is used in a control algorithm, where two types of controllers are compared. Both controllers show very good simulation results even with significantly different model parameters used in the control algorithm. The cable elements are considered extensible, and two methods to solve the force distribution into the cables using Wrenchian are introduced and their incorporation into the dynamic model and the control algorithm are shown. The cable prestressing control follows. In the trajectory generation section, the Bezier curves' fifth order is used as the first step. Subsequently, the circle and rectangle trajectories are purposely constructed with step changes of velocity profiles so that the stability of the whole model is tested. Finally, the model sufficiently follows the desired trajectories and cable tension is held sufficiently in the desired interval.