# Optimization based Trajectory Planning of Mobile Cable-Driven Parallel Robots

Tahir Rasheed, Philip Long, Adolfo Suarez Roos, Stéphane Caro

► To cite this version:

Tahir Rasheed, Philip Long, Adolfo Suarez Roos, Stéphane Caro. Optimization based Trajectory Planning of Mobile Cable-Driven Parallel Robots. 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2019), Nov 2019, Macau, China. pp.6788-6793, 10.1109/IROS40897.2019.8968133. hal-02404236

HAL Id: hal-02404236

https://hal.science/hal-02404236

Submitted on 11 Dec 2019

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>
# Optimization based Trajectory Planning of Mobile Cable-Driven Parallel Robots

Tahir Rasheed<fnref n="1" />, Philip Long<fnref n="2" />, Adolfo Suarez Roos<fnref n="3" /> and Stéphane Caro<fnref n="4" />

**Abstract**— A Mobile Cable-Driven Parallel Robot (MCDPR) is composed of a classical Cable-Driven Parallel Robot (CDPR) carried by multiple mobile bases. The additional mobilities due the motion of the mobile bases allow such systems to autonomously modify their geometric architecture, and thus make them suitable for multiple manipulation tasks in constrained environments. Moreover, these additional mobilities mean MCDPRs are kinematically redundant and may use this redundancy to optimize secondary task criteria. However, the high dimensional state space and closed chain constraints add complexity to the motion planning problem. To overcome this, we propose a method for trajectory planning for MCDPRs performing pick and place operations in cluttered environments by using direct transcription optimization. Two different scenarios have been considered and their results are validated using a dynamic simulation software (V-REP) and experimentally.

## I. INTRODUCTION

Cable-Driven Parallel Robots (CDPRs) are a particular type of parallel robots, where the moving platform (end-effector) is connected to a fixed base frame by cables. The moving platform is displaced by appropriately controlling the cable lengths. CDPRs have been used in several applications such as large payload handling [1], fast pick-and-place operations [2] and rehabilitation [3] exercises. In spite of various successful applications of CDPRs, several challenges remain unresolved. For example, CDPRs impose a strong requirement on the collision free circulation of the cables with respect to the environment. Furthermore, typical CDPRs, have a fixed cable layout, i.e. fixed pulleys and platform attachment points, which leads to a workspace perhaps unsuitable to changing task requirements. Therefore, it makes sense to modify the geometric architecture as a function of the required task and the surrounding environment. CDPRs that can alter their cable layout are known as Reconfigurable Cable-Driven Parallel Robots (RCDPRs). Recent studies on RCDPRs [4] have proposed different design strategies that change the cable layout to increase the platform stiffness and/or maximize the robot workspace. However, for most existing RCDPRs, reconfigurability is performed manually, a discrete and time consuming task.

<figure><img src="image_2.png" /><figcaption>Fig. 1. MoPICK a MCDPR prototype. MoPICK is capable of performing multiple manipulation tasks in a constrained environment, for example, a workshop.</figcaption></figure>

To perform an autonomous reconfiguration of RCDPRs, a novel concept of Mobile Cable-Driven Parallel Robots (MCDPRs) has been introduced in [5]. A MCDPR is composed of a classical CDPR with *m* cables, an *n* degree-of-freedom (DoF) moving platform and a set of *p* mobile robots that can displace the system [6]. The first MCDPR prototype, FASTKIT, constructed in the framework of ECHORD++ project<fnref n="1" />, can adopt its geometry depending on the desired task. Recent work [7], [8] on the kinematic performance of MCDPRs have shown such systems to be kinematically redundant due to the added mobility of the mobile bases. Hence, there exists infinitely many solutions for the MCDPR to perform a desired task. The optimal path planing of FASTKIT having one degree of redundancy is presented in [8] by using a gradient based optimization approach. In contrast, each mobile robot in Fig. 1 provides two supplementary DoF, thus allowing the system to optimize several performance criteria simultaneously.

The main advantage of a MCDPR over conventional robots is the ability to deploy a fast pick-and-place manipulator as needed throughout a factory or warehouse. To do so, the system must be able to generate safe trajectories through potentially cluttered environments. Global search methods such A* and Dijkstra, find optimal trajectories in a discretized workspace, but perform poorly in high

<footnote n="1">¹ École Centrale de Nantes, Laboratoire des Sciences du Numérique de Nantes, UMR CNRS 6004, 1, rue de la Noë, 44321 Nantes, France, Tahir.Rasheed@ls2n.fr</footnote>

<footnote n="2">² RIveR Lab, Department of electrical and computing engineering, Northeastern University, USA p.long@northeastern.edu</footnote>

<footnote n="3">³ IRT Jules Verne, Chemin du Chaffault, 44340, Bouguenais, France adolfo.suarez-roos@irt-jules-verne.fr</footnote>

<footnote n="4">⁴ CNRS, Laboratoire des Sciences du Numérique de Nantes, UMR CNRS 6004, 1, rue de la Noë, 44321 Nantes, France stephane.caro@ls2n.fr</footnote>

<footnote n="1">¹FASTKIT Videos: https://www.youtube.com/channel/UCJ8QRs818MBc8YSbn-bZVjA</footnote>
dimensions [9]. Sampling based motion planning algorithms improve planning times by randomly sampling the state space. Indeed RRT* PRM* are provably asymptotically optimal [10]. However, convergence in complex environments requires a large computational time and their finite time solutions are often of poor quality. Additionally, it is difficult to embed kinodynamic constraints, crucial for CDPRs, in such algorithms. Hence, a popular technique is to initialize a trajectory optimization algorithm using sampling based methods [11]. Trajectory optimization methods can take into account complex state and environmental constraints. The simplest trajectory optimization approach, known as shooting, selects control inputs and simulates the resulting motion [12]. The inputs are tuned using the error between the final state and a desired final state. Single shooting methods require a very good initial guess or have trouble finding solutions. This problem may be alleviated by breaking the trajectory into segments and solving a shooting problem at each segment, known as multi-shooting [13]. In contrast, direct transcription method [14], discretize the trajectory into node points. The states and control variables at each node form the decision variables, while the system evolution is defined in the constraints. While this increases the overall dimension, direct transcription methods are sparse and the smoothness of the resulting equations increases computational efficiency [15].

In this paper, we propose trajectory planning for MCDPR by using direct transcription optimization method. The optimization based approach allows us to embed the numerous constraints associated with CDPRs into the planning problem, while the direct transcription eases the reliance on the initial guess. The results are simulated on the dynamic model of MoPICK developed using the V-REP environment [16] on two different scenarios. Additionally, the second scenario is experimentally validated using the MoPICK prototype. The paper is organized as follows. Section II presents the description and parameterization of the manipulator and the desired task. Section III proposes a two-stages trajectory planning approach for redundant MCDPRs. Section IV presents the MoPICK simulator developed in V-REP and discusses the results obtained from the trajectory planning. Finally, conclusions are drawn and future work is presented in Section IV-C.

## II. SYSTEM MODELING

In this section, the parameterization and modeling of a MCDPR system is recalled.

### A. Robot Parameterization

MoPICK comprises four mobile bases ($p = 4$) carrying a fully suspended CDPR consisting of four cables ($q = 4$) and a three DoF point mass end-effector ($n = 3$), as shown in Fig. 1. The $j$th mobile base, denoted as $M_j$, $j = 1, \dots, 4$ carries cable $C_j$. Let $u_j$ be the directional vector of $C_j$ pointing from the point-mass $P$ to the cable exit point $A_j$. Let $t_j$ be the $C_j$'s cable tension vector expressed as,

$$ \mathbf{t}_j = t_j \mathbf{u}_j, \qquad (1) $$

<figure><img src="image_3.png" /><figcaption>Fig. 2. Test scenario and illustrated environment for the MCDPR.</figcaption></figure>

where $t_j$ denotes the tension in the cable $C_j$.

MoPICK uses four Turtlebots [17], each with two motorized wheels and two supporting wheels at the front and rear, as its mobile bases. A cylindrical shaped structure of radius 0.25 m is added to support the aluminum frame which holds the CDPR's pulleys mounted at the height of 1.2 m from the ground. To increase the mobile bases stability four caster wheels are added (Fig. 1). Thus, each mobile base has eight wheels in total and the design ensures that at least five are always in contact with the ground. Indeed, by construction, either the three rear passive wheels or the three front passive wheels are in contact. The motorized wheels have individual spring suspensions, which permit ground contact and thus the ability to drive the base at all times.

Let $\mathcal{F}_0$ denotes the base frame with origin $^0O$ and axes $^0x, ^0y$ and $^0z$ while $\mathcal{F}_{bj}$ denotes the frame attached to $M_j$ with origin $^{bj}O$ and axes $^{bj}x, ^bjy$ and $^{bj}z$, illustrated in Fig. 2. The mobile bases displace via a non-holonomic differential drive mechanism [18] meaning that $M_j$ can generate a rotational motion about $^{bj}z$ and a translational motion along $^{bj}x$. The CDPR carried by MoPICK is designed such that its exit points $A_j$ lie on the axis of $^{bj}z$, preventing changes in the directional vector $u_j$ of the cable $C_j$ due to rotational motion of $M_j$. Thus, for a given pose of the moving platform, $u_j$ is determined by obtaining the reference point $O_{bj}$ of $M_j$ in $^0x^0y$ plane. The mobile bases are displaced by sending velocity commands to the motorized wheels while the CDPR is controlled either by defining its cable lengths or cable velocities.

### B. Wrench Feasibility

Wrench feasible workspace (WFW) for a MCDPR is defined as the set of platform poses for which the required set of wrenches can be balanced with wrenches generated by the cables while maintaining the MCDPR's static equilibrium [6].

1) *Static Equilibrium of MCDPRs:* The static equilibrium of the MCDPR's moving platform is expressed as

$$ \mathbf{Wt} = \mathbf{f}, \qquad (2) $$

where $\mathbf{W}$ is a ($n \times m$) wrench matrix mapping the $m$-dimensional cable tension vector $\mathbf{t}$ onto the moving platform's wrenches, denoted as $\mathbf{f} \in \mathbb{R}^n$.

$$ \mathbf{W} = [\mathbf{u}_1 \ \mathbf{u}_2 \ \mathbf{u}_3 \ \mathbf{u}_4], \quad \mathbf{f} = \begin{bmatrix} f^x \\ f^y \\ f^z \end{bmatrix}, \quad \mathbf{t} = \begin{bmatrix} t_1 \\ t_2 \\ t_3 \\ t_4 \end{bmatrix}. \quad (3) $$
C_j's tension is bounded between a minimum tension $t_j$ and a maximum tension $\bar{t}_j$,

$$t_j \le t_j \le \bar{t}_j, \quad j = \{1, \dots, 4\}. \quad (4)$$

$t_j$ is supposed to be null. The maximum cable tension depends on the actuation system used to actuate the cables of the MCDPR, i.e., motors, winches etc. In MoPICK prototype, Dynamixel MX-64AT actuators and winches whose drum diameter is equal to 0.2 m, are used, to pull the cables. Based on the hardware specification and safety issues, $\bar{t}_j$ is set to 15 N.

The static equilibrium of a wheeled mobile base depends on the moments generated at the boundaries of its footprint referred to as the tipping conditions. The footprint of $M_j$ is constructed by connecting the wheel contact points, denoted as $C_{oj}$, $o = 1, \dots, 4$ in counter clockwise direction. The directional vector of the footprint boundary between the two consecutive contact points ($C_{oj}, C_{o+1j}$) is denoted as $\mathbf{e}_{C_{oj}}$ as shown in Fig. 2. Let $m_{C_{oj}}$ be the moment generated at the instant when $M_j$ loses contact with the ground about $C_{oj}$ and $C_{o+1j}$, expressed as

$$m_{C_{oj}} = \mathbf{e}_{C_{oj}}^T ((\mathbf{g}_j - \mathbf{c}_{oj}) \times \mathbf{w}_{gj}) + \mathbf{e}_{C_{oj}}^T ((\mathbf{c}_{oj} - \mathbf{p}) \times \mathbf{u}_{j}) t_j, \quad (5)$$

where $\mathbf{g}_j = [g_j^x \ g_j^y \ g_j^z]^T$ and $\mathbf{c}_{oj} = [c_{oj}^x \ c_{oj}^y \ c_{oj}^z]^T$ denote the Cartesian coordinate vector of the center of gravity and the wheel contact point $C_{oj}$, respectively. $\mathbf{w}_{gj}$ represents the weight vector of $M_j$. $\mathbf{p}$ represents the Cartesian coordinate vector of the point-mass P. For $M_j$ to be in static equilibrium, $m_{C_{oj}}, o = \{1, \dots, 4\}$ should be negative, namely,

$$m_{C_{oj}} \le 0, \quad o = \{1, \dots, 4\}. \quad (6)$$

2) Available Wrench Set: The Available Wrench Set (AWS) of a MCDPR is defined as the set of wrenches the system can generate while respecting the cable tension limits and the static equilibrium conditions [6], i.e.,

$$\mathcal{A} = \left\{ \begin{array}{l} \mathbf{f} \in \mathbb{R}^3 \mid \mathbf{f} = \mathbf{W}\mathbf{t}, \quad t_j \le t_j \le \bar{t}_j, \\ m_{C_{oj}} \le 0, \quad o = \{1, \dots, 4\}, \quad j = \{1, \dots, 4\} \end{array} \right\}. \quad (7)$$

The MCDPR AWS defined in (7) forms a n-dimensional convex polytope whose facets depend on cable tension limits, the static equilibrium conditions of the mobile bases and the MCDPR pose. The recent work in [6], [8] proposes mapping (4) and (5) into the wrench space of the moving platform using (2) to determine $\mathcal{A}$. An index called Capacity Margin [19] is used to determine whether a given pose is wrench feasible or not using the facets of $\mathcal{A}$ and the vertices of the Required Wrench Set (RWS). It is a measure of the robustness of the equilibrium of the robot, denoted as $\mu$, expressed as,

$$\mu = \min(\min s_{d,l}), \quad (8)$$

where $s_{d,l}$ is the signed distance from the dth vertex of the RWS to the lth facet of the AWS. $\mu$ is positive if and only if all the vertices of RWS are inscribed by $\mathcal{A}$, i.e. the moving

platform has the ability to generate RWS while respecting all the equilibrium conditions of a MCDPR.

### C. Task Description

Figure 2 shows the test scenario for MoPICK, where the goal is to displace the moving platform from an initial position to a desired position $\bar{P}_3$ while passing through defined waypoints denoted as $\bar{P}_1$ and $\bar{P}_2$. The task is performed in a cluttered environment having static tables and obstacles. The waypoints are positioned on the tables and require a task action, for example grasping and/or releasing an object.

To avoid collision between the obstacles and a mobile base, a common practice is to inflate the obstacles by at least the radius of mobile bases in $0 \times 0 \times y$ plane, denoted as safe region around obstacles, as illustrated in Fig. 2. As a consequence, the mobile bases may be treated as single points, reducing the complexity of the planning problem. In order to perform the desired task, a feasible, continuous and collision free trajectory for the mobile bases is required.

## III. TRAJECTORY PLANNING

In this section, we propose a two-step trajectory planning method for MCDPRs. First, direct transcription method is used for the path planning of the robot, which searches for an optimal geometric path from an initial to a final point. The output of the direct transcription method is in the form of a discrete set of poses achieved by minimizing the given criterion while respecting the set of constraints. The second step is the trajectory planning which aims at using this set of poses to generate a continuous motion profile of the robot.

### A. Path Planning using Direct Transcription Optimization

In general, the dynamics of a system can be defined by the set of differential equations,

$$\dot{x} = f(x, u). \quad (9)$$

where $x$ and $u$ represent the states of the system and the control input. $f(\cdot)$ denotes the evolution of the system dynamics in time $t$. Trajectory optimization aims at finding a control trajectory that minimizes a given criterion subject to the dynamics constraints in (9). In direct transcription methods, this continuous optimal control problem is transcribed into a finite-dimensional optimization problem by discretizing the trajectories over $N$ time steps and solved for states and controls simultaneously.

1) State transition between time-steps: The MCDPR is characterized by the position of its mobile bases and its moving platform. Let $\mathbf{p}_i$ be a three dimensional vector containing the Cartesian coordinates of the point-mass moving platform P in $\mathcal{F}_0$ at the ith step of the trajectory, $i=2, \dots, N$. Accordingly, let the two-dimensional Cartesian coordinate vector of $M_j$ in $0 \times 0 \times y$ plane be denoted as $\mathbf{m}_{j,i}$ at the ith time step. It should be noted that the $i=1$ represents the given initial configuration of MoPICK. The state of the MoPICK at the ith time step, is denoted by eleven-dimensional vector $\mathbf{x}_i$, expressed as,

$$\mathbf{x}_i = [\mathbf{p}_i^T \quad \mathbf{m}_{1,i}^T \quad \mathbf{m}_{2,i}^T \quad \mathbf{m}_{3,i}^T \quad \mathbf{m}_{4,i}^T]^T, \quad (10)$$
In the direct method rather than simulating the continuous evolution of the system the states at all waypoints are optimized simultaneously. To do so, $\mathbf{x}_{i+1}$ is obtained from the previous states by forward integration of the velocities. In this paper, we use a simple Euler integration of the form

$$ \mathbf{x}_{i+1} = \mathbf{x}_i + \dot{\mathbf{x}}_{i+1} \Delta t. \quad (11) $$

The product of $\Delta t$ and $\dot{\mathbf{x}}_{i+1}$ defines the maximum change in the state variables for a given timestep. Typically in cluttered environments, this should be relatively small to prevent the optimizer finding solutions that jump over objects. Thus, the state variables for the optimization problem are defined as $\mathbf{x}$ and $\dot{\mathbf{x}}$ both $11(N-1)$-dimensional vectors containing the position and velocity of the platform and the mobile bases at each time step, namely,

$$ \mathbf{x} = [\mathbf{x}_2^T \ \mathbf{x}_3^T \ \dots \ \mathbf{x}_N^T]^T, \quad \dot{\mathbf{x}} = [\dot{\mathbf{x}}_2^T \ \dot{\mathbf{x}}_3^T \ \dots \ \dot{\mathbf{x}}_N^T]^T. $$

For an initial state value denoted $\mathbf{x}_{init}$ and assuming an initial static condition (11) can be extended to

$$ \mathbf{x}_2 = \mathbf{x}_{init} + \dot{\mathbf{x}}_2 \Delta t $$

$$ \mathbf{x}_3 = \mathbf{x}_2 + \dot{\mathbf{x}}_3 \Delta t $$

$$ \mathbf{x}_N = \mathbf{x}_{N-1} + \dot{\mathbf{x}}_N \Delta t. $$

By re-arranging the above expression into matrix form and gathering all the state variables to one side a system of linear equality constraints governing the transition of the system from one time step to the next can be written in terms of the state variables as follows:

$$ \mathbf{A} \begin{bmatrix} \mathbf{x} \\ \dot{\mathbf{x}} \end{bmatrix} = \mathbf{b}. \quad (12) $$

A is a $22(N-1)$-dimensional sparse square matrix and b is a $22(N-1)$-dimensional sparse vector containing the system initial conditions.

2) Optimization Procedure: At each step, the MCDPR pose must be wrench feasible with respect to the RWS (the weight of the moving platform). Additionally, we are interested in finding a shortest collision free path for the moving platform. Hence, the objective function of the problem is formulated as follows,

$$ \underset{\mathbf{x}_2, \dots, \mathbf{x}_N}{\text{minimize}} \quad -k_1 \sum_{i=2}^{N} \mu_k + k_2 \sum_{i=2}^{N} \sum_{j=1}^{4} \|\mathbf{m}_{j,i} - \mathbf{m}_{j,i-1}\|^2. \quad (13) $$

The first cost term in (13), aims to maximize the capacity margin of the RWS at each time step while the second term attempts to minimize the total path length of the mobile bases. The cost weights are tuned as $k_1 = 0.4$, $k_2 = 0.6$.

The system is subject to a set of global equality constraints defined as follows

$$ \mathbf{p}_{N_1} = \bar{\mathbf{p}}_1, \quad \mathbf{p}_{N_2} = \bar{\mathbf{p}}_2, \quad \mathbf{p}_{N} = \bar{\mathbf{p}}_3, \quad (14) $$

$$ \mathbf{A} \begin{bmatrix} \mathbf{x} \\ \dot{\mathbf{x}} \end{bmatrix} = \mathbf{b}, \quad (15) $$

where $N_1$ and $N_2$ represent the time steps at the waypoints of the moving platform $\bar{\mathbf{P}}_1$ and $\bar{\mathbf{P}}_2$, respectively. The desired poses and waypoints are imposed using equality constraints (14), while as explained above the system velocities are constrained by the state transition matrix (15). Furthermore at any time-step $i = 1, \dots, N$ the following inequality constraints are imposed for $j^{th}$, $j = 1, \dots, 4$, mobile base

$$ l_{min} \le \| [\mathbf{m}_{j,i}^T \quad 1.2]^T - \mathbf{p}_i \| \le l_{max}, \quad (16) $$

$$ \|\mathbf{m}_{h,i} - \mathbf{m}_{j,i}\| \ge d_{min}, \quad \text{for } h = 1, \dots, 4, \ h \ne j, \quad (17) $$

$$ \|\mathbf{m}_{j,i} - \mathbf{o}_q\|^2 - r_q \ge 0, \quad \text{for } q = 1, \dots, s. \quad (18) $$

Equation (16) bounds the length of the cables between a minimum and maximum length denoted as $l_{min}$ and $l_{max}$, where 1.2 m is the constant height of the exit points expressed in $\mathcal{F}_0$. Equation (17) ensures the mobile bases do not collide with each other by defining $d_{min}$ as a minimum acceptable distance. Equation (18) ensures that the distance between the $q^{th}$ augmented obstacle, whose position is defined by $\mathbf{o}_q$ and radius is $r_q$, and the mobile base is always greater than 0.

Finally, (19) enforces bounds on the state variables, i.e.,

$$ \mathbf{x}_L \le \mathbf{x}_i \le \mathbf{x}_U, \quad \dot{\mathbf{x}}_L \le \dot{\mathbf{x}}_i \le \dot{\mathbf{x}}_U. \quad (19) $$

where $\mathbf{x}_L$, $\mathbf{x}_U$, $\dot{\mathbf{x}}_L$ and $\dot{\mathbf{x}}_U$ represents the lower and upper bounds on $\mathbf{x}_i$ and $\dot{\mathbf{x}}_i$, $i = 2, \dots, N$, respectively.

## B. Generation of Motion Profiles

The approach of cubic splines [20] is adopted to acquire a continuous trajectory profile for the robot, whose geometric path passes through the $N$ discrete points obtained from the direct transcription method. For this purpose, a single cubic spline is defined for each independent state of the system as a function of time $t$ and is composed of $N-1$ cubic polynomials connecting $N$ supporting points, while imposing the continuity conditions at first and second derivative with respect to $t$ at each supporting point. Additionally, the boundary conditions are also imposed, i.e., the velocities and accelerations at initial and final supporting points are null.

## IV. RESULTS AND EXPERIMENTS

For controlling the mobile bases, their output trajectories obtained from the cubic splines are transformed into the wheels rotational velocity using the latter's kinematic model [18]. Evidently, wheels rotational velocities are also continuous. These aforementioned continuous trajectories does not include any sharp turns and edges, thus, gives an exemption for including the non-holonomic constraints into the planning problem.

### A. Comparison with greedy algorithm

The optimization problem defined by Eqs. (13) to (19) is solved using the cMATLAB function `fmincon`. It took 36 minutes and 14 seconds of CPU² time to compute the solution of the aforementioned optimization problem with the following parameters:

$$ N_1 = 8, \ N_2 = 32, \ N = 47, \ \Delta t = 0.75 \text{ s.} \quad (20) $$
<figure><img src="image_4.png" /><figcaption>Fig. 3. MoPICK path from direct transcription method.</figcaption></figure>

<figure><img src="image_5.png" /><figcaption>Fig. 4. MoPICK velocity profiles</figcaption></figure>

<figure><img src="image_6.png" /><figcaption>Fig. 5. Comparison of the path length between direct transcription and iterative algorithm.</figcaption></figure>

The total trajectory time is 85 seconds. Figure 3 illustrates the *N* number of path points generated using the Direct Transcription method. It should be noted that a single cubic spline is required for each independent state of the manipulator defined in Eq. (10). Therefore 11 cubic splines are used to generate a continuous path depicted in Fig. 3. Accordingly, the velocity profiles of the moving-platform and the mobile bases are shown in Fig. 4. A simulation video showing the

<figure><img src="image_7.png" /><figcaption>Fig. 6. Error between the actual and the desired moving platform position</figcaption></figure>

<figure><img src="image_8.png" /><figcaption>Fig. 7. Simulation and experimental validation on the second scenario</figcaption></figure>

output of the proposed method can be seen at<fnref n="3" />.

The resulting path from the direct transcription method is compared with a path planning algorithm for MCDPRs presented in [21], which iteratively searches for a feasible and collision free path by making a locally optimal choice at each step. One of the potential drawbacks of this algorithm is that it requires good initial solution in the form of moving platform waypoints. Moreover, the path quality is poor containing loops and edges which increase the distance travelled. However, the iterative algorithm is more useful if a user wants to guide the system to pass through a difficult region. The comparison between the lengths of the MCDPR path acquired from the direct transcription and iterative algorithm is shown in Fig. 5. The proposed approach of direct transcription generates a more continuous path with better performance in terms of total distance traveled.

In spite of the better quality in resulting trajectories, the direct transcription method has several limitations. First the number of decision variables may become computationally more expensive with high DoF MCDPRs, however this is somewhat mitigated by the sparsity of the state transition matrix. Second, the weights of the costs need to be tuned, a time consuming task, to acquire a feasible trajectory of the system. Finally, as the path is obtained in terms of discrete points, the approximation between the two consecutive nodes performed by the cubic splines might not respect all constraints, e.g., collisions with obstacles. This problem may be resolved by either increasing the safety distance to obstacles or increasing *N*, albeit with added computational cost.

## B. MoPICK Simulation in V-REP

A dynamic model of the MoPick is developed using the simulation environment V-REP [16], to facilitate testing and

<footnote n="3">³https://youtu.be/kK714kDWUaA, from 0:29 to 0:47</footnote>
debugging before hardware deployment. The model of the
mobile bases is based on an existing TurtleBot model in
[22] while the CDPR dynamic model is adopted from [23].

The V-REP simulation of the resulting trajectory, obtained
from the proposed method, can be seen in this video<fnref n="4" />. The
results may be evaluated by analyzing the moving platform's
path. Figure 6 shows the error between the desired and actual
position of the moving platform in V-REP. It should be
noted that the proposed trajectory is feasible and the moving
platform achieves the desired path within an acceptable range
of errors.

C. *Experimental Validation*

The proposed approach is validated experimentally on MoPICK, using a second scenario with two waypoints as shown in Fig. 7. The parameters of the direct transcription method are selected as $N = 2 N_1 = 26$, $\Delta t = 0.5$ s. The solution to the optimization problem is obtained in 10 minutes and 36 seconds of CPU time by *fmincon*. The total trajectory time is equal to 40 s. The simulation showing the complete process of searching for a discrete path and generation of the continuous motion profile along with the simulation and experimental validation can be seen in this video<fnref n="5" />.

V. CONCLUSION AND DISCUSSION

This paper studies the trajectory planning of Mobile Cable
Driven Parallel Robots (MCDPRs) using the approach of
direct transcription. The continuous path planning problem
is transcribed into a discrete optimization problem of N
steps. The goal of the optimization problem is to maxi-
mize the wrench capability of the robot at each step while
minimizing the total path length. The desired pose and
intermediate waypoints are enforced using a set of equality
constraints. Finally, the resulting path is transformed into a
continuous motion profile using cubic splines. The proposed
approach is validated through simulation and experimentally
on MoPICK, a MCDPR composed of four mobile bases,
four cables and a three degree-of-freedom point mass mov-
ing platform. Additionally, the proposed approach produces
better quality path in comparison to iterative path planning
algorithm.

It is noteworthy that direct transcription is generally used
to compute dynamically-feasible trajectories. For this pur-
pose, the aforementioned technique of trajectory design is
investigated for MCDPRs; however, the work presented in
this paper is a first step to develop and validate the approach
by considering only the kinematic constraints. Future work
will focus on the extension of the proposed method for online
trajectory planning of MCDPRs by considering a dynamic
environment. Consequently, the system dynamic parameters
will be considered in the state transition equations.

REFERENCES

[1] J. Albus, R. Bostelman, and N. Dagalakis, “The nist spider, a robot crane,” *Journal of research of the National Institute of Standards and Technology*, vol. 97, no. 3, pp. 373–385, 1992.

[2] S. Kawamura, H. Kino, and C. Won, “High-speed manipulation by using parallel wire-driven robots,” *Robotica*, vol. 18, no. 1, pp. 13–21, 2000.

[3] G. Rosati, M. Andreolli, A. Biondi, and P. Gallina, “Performance of cable suspended robots for upper limb rehabilitation,” in *2007 IEEE 10th International Conference on Rehabilitation Robotics*, pp. 385–392, IEEE, 2007.

[4] L. Gagliardini, S. Caro, M. Gouttefarde, and A. Girin, “Discrete reconfiguration planning for cable-driven parallel robots,” *Mechanism and Machine Theory*, vol. 100, pp. 313–337, 2016.

[5] T. Rasheed, P. Long, D. Marquez-Gamez, and S. Caro, “Tension distribution algorithm for planar mobile cable-driven parallel robots,” in *Cable-Driven Parallel Robots*, pp. 268–279, Springer, 2018.

[6] T. Rasheed, P. Long, D. Marquez-Gamez, and S. Caro, “Available wrench set for planar mobile cable-driven parallel robots,” in *2018 IEEE International Conference on Robotics and Automation (ICRA)*, pp. 962–967, IEEE, 2018.

[7] T. Rasheed, P. Long, D. Marquez-Gamez, and S. Caro, “Kinematic modeling and twist feasibility of mobile cable-driven parallel robots,” in *International Symposium on Advances in Robot Kinematics*, pp. 410–418, Springer, 2018.

[8] T. Rasheed, P. Long, D. Marquez-Gamez, and S. Caro, “Optimal kinematic redundancy planning for planar mobile cable-driven parallel robots,” in *The ASME 2018 International Design Engineering Technical Conferences & Computers and Information in Engineering Conference IDETC/CIE 2018*, 2018.

[9] S. M. LaValle, *Planning algorithms*. Cambridge university press, 2006.

[10] S. Karaman and E. Frazzoli, “Sampling-based algorithms for optimal motion planning,” *The international journal of robotics research*, vol. 30, no. 7, pp. 846–894, 2011.

[11] A. Kuntz, C. Bowen, and R. Alterovitz, “Fast anytime motion planning in point clouds by interleaving sampling and interior point optimization,” *ISRR*, 2017, 2017.

[12] J. T. Betts, “Survey of numerical methods for trajectory optimization,” *Journal of guidance, control, and dynamics*, vol. 21, no. 2, pp. 193–207, 1998.

[13] M. Kelly, “An introduction to trajectory optimization: how to do your own direct collocation,” *SIAM Review*, vol. 59, no. 4, pp. 849–904, 2017.

[14] D. Pardo, L. Möller, M. Neunert, A. W. Winkler, and J. Buchli, “Evaluating direct transcription and nonlinear optimization methods for robot motion planning,” *IEEE Robotics and Automation Letters*, vol. 1, no. 2, pp. 946–953, 2016.

[15] C. M. Hubicki, *From running birds to walking robots: optimization as a unifying framework for dynamic bipedal locomotion*. PhD thesis, Oregon State University, 2014.

[16] E. Rohmer, S. P. Singh, and M. Freese, “V-rep: A versatile and scalable robot simulation framework,” in *2013 IEEE/RSJ International Conference on Intelligent Robots and Systems*, pp. 1321–1326, 2013.

[17] A. Koubāa, M.-F. Sriti, Y. Javed, M. Alajlan, B. Qureshi, F. Ellouze, and A. Mahmoud, “Turtlebot at office: A service-oriented software architecture for personal assistant robots using ros,” in *2016 International Conference on Autonomous Robot Systems and Competitions (ICARSC)*, pp. 270–276, IEEE, 2016.

[18] S. K. Malu and J. Majumdar, “Kinematics, localization and control of differential drive mobile robots,” *Global Journal of Research In Engineering*, 2014.

[19] F. Guay, P. Cardou, A. L. Cruz-Ruiz, and S. Caro, “Measuring how well a structure supports varying external wrenches,” in *New Advances in Mechanisms, Transmissions and Applications*, pp. 385–392, Springer, 2014.

[20] J. Angeles, *Fundamentals of robotic mechanical systems*, vol. 2. Springer, 2002.

[21] T. Rasheed, P. Long, D. Marquez-Gamez, and S. Caro, “Path planning of a mobile cable-driven parallel robot in a constrained environment,” in *International Conference on Cable-Driven Parallel Robots*, pp. 257–268, Springer, 2019.

[22] I. F. Vega, “Development of a programming environment for a simulated turtlebot-2 robot with a widowx manipulator arm through the connection of v-rep and matlab,” *Universidad de Málaga*, June 2016.

[23] Z. Zake, S. Caro, A. S. Roos, F. Chaumette, and N. Pedemonte, “Stability analysis of pose-based visual servoing control of cable-driven parallel robots,” in *International Conference on Cable-Driven Parallel Robots*, pp. 73–84, Springer, 2019.

<footnote n="4">⁴https://youtu.be/kK714kDWUaA, from 0:47 to 0:57</footnote>

<footnote n="5">⁵https://youtu.be/kK714kDWUaA, from 0:03 to 0:29</footnote>