# Decomposition frameworks for cooperative manipulation of a planar rigid body with multiple unilateral thrusters

- 695 Downloads
- 5 Citations

## Abstract

In this paper, we consider cooperative manipulation of a planar rigid body using multiple actuator agents—*unilateral* thrusters, each attached to the body and each able to apply an unilateral force to the body. Generally, the dynamics of the body manipulated with uncoordinated forces of thrusters is nonlinear. The problem we consider is *how to design the unilateral force* each agent applies to ensure the decoupling and linearity of the linear and angular (i.e., translational and rotational) accelerations of the body and thus allow a controller to be designed in a simpler manner, instead of developing sophisticated nonlinear control techniques. Here consider two types of unilateral thrusters with (i) all fixed directions, and (ii) all non-fixed directions, respectively. To address the problem, we design two decomposition frameworks, each with its advantages, on the structure of the forces and control policy such that (i) the linear and angular accelerations of the body are decoupled and controlled independently, and (ii) the control that ensures the forces to be unilateral (only for thrusters with non-fixed directions) is independent from the linear and angular accelerations. As a result, the closed-loop dynamics of the body is linear with respect to both the linear and angular accelerations; thus the control of the body becomes trivial, which may provide a convenient and alternative methodology for design of a physical system with a quick estimation and reference of the manipulated forces required.

### Keywords

Cooperative control Cooperative manipulation Cooperative transportation Decomposition framework Unilateral manipulation Unilateral thruster## 1 Introduction

Cooperative manipulation or transportation of multiple agents is often seen in natural world [1, 2] and artificial world [3, 4, 5, 6]. In this paper, we consider the problem of controlling a planar rigid body through the interaction forces applied by multiple attached actuators or thrusters. The manipulation of a rigid body using multiple thrusters or mobile robotic agents is a challenging problem with a number of applications. For example, tethered towing [7, 8, 9], grasping [10, 11, 12], pushing and caging [13, 14], satellite control with thrusters [15], object transportation [14], and other problems all can be made to fit within the paradigm of cooperative manipulation.

Manipulation and/or transportation of a rigid body has been investigated by many researchers. Lynch and Mason investigated the non-prehensile manipulation in [16]. Lynch investigated controllability of a rigid body with the minimal number of unilateral thrusters [15]. Spong [17] and Partridge and Spong [18] investigated control of a rigid body with impacts, i.e., impulsive manipulation. Forni, etc., considered tracking and state-estimation of a bouncing ball with impacts [19]. In [13, 15, 16, 17, 18, 19], the rigid body is controlled by applying unilateral forces. The object transportation by the “object closure” of multiple ground robots was investigated in [14], and transportation of a payload by multiple aerial robots was considered in [7, 8]. Esposito [20] considered control of a rigid body with lateral forces of attached robots for velocity tracking and followed by an “approach” (i.e., agents approach to the perimeter of the body) investigated in [21].

Generally, the type of the forces of agents applied to the manipulated rigid body can be (i) all *bilateral*, or (ii) all *unilateral* or (iii) the mixed (i.e., some forces applied are bilateral while others are unilateral). To be specific, a *bilateral* force on the body can be pull or push, but at different time in the manipulation process, while a *unilateral* force, applied through unilateral contact, can be either pull or push, at all the time, without switch between pull or push. The zero force is trivial and can be regarded as either a bilateral force or an unilateral pull or push force. Additionally, the *unilateral* forces of multiple thrusters can be divided into three categories: (1) The forces are all pull at all the time, for example, when tethered towing or using the unilateral thrusters directed to the outer of the body; (2) the forces are all push at all the time, for example, when grasping or pushing or using the unilateral thrusters directed to the inner of the body; (3) the mixed, i.e., some forces are pull and others are push. Following the scenarios of multi-actuator or multi-thruster manipulation, we consider the cooperative manipulation of a planar rigid body with multiple unilateral thrusters that are attached to the body. The directions of the thrusters (i.e., the directions of the applied forces) can be all fixed or swing, and the forces generated by the thrusters are unilateral, either all pull or all push, on the body.

Generally, a rigid body has nonlinear translation and rotation dynamics when manipulated with uncoordinated forces and thus is not easily made *small-time locally controllable* (STLC) [15], and the design of the forces for certain tasks (e.g., trajectory tracking of the rigid body) may be complex.

In contrast to previous work on the manipulation and transportation methodologies mentioned above, the main contributions of this paper are summarized as follows: (1) We consider two types of the attached *unilateral* thrusters to the body for the manipulation, i.e., the thrusters with (i) all fixed directions and (ii) all non-fixed (i.e., swing) directions, respectively. (2) In this context of the *unilateral-thruster-control*, we aim to control the body that is easily STLC, and as a result, the rigid body can easily achieve the desired trajectory of the configuration (i.e., position and orientation states) of the rigid body, not merely to transport it to a target location, as compared with the object transportation mentioned above. (3) Moreover, we aim to *develop two decomposition frameworks, each of which allows the controllers for translational control and rotational control that can be designed separately and trivially, with a unified control policy of the forces for either all pull or all push*, which may provide a convenient and alternative methodology for design of a physical system with a quick estimation of the manipulated forces required.

To achieve these results, we emphasize (i) how to design the forces applied to the body to be all unilateral in the manipulation? and (ii) how to ensure the linear and angular (i.e., translational and rotational) accelerations of the body to be decoupled and linear? Item (i) is for the physical constraint of unilateral thrusters. For Item (ii), if it can be achieved, then the rigid body is STLC and thus can be easily controlled which provides much convenience for designing control laws.

This paper considers two decomposition frameworks that are denoted as Frameworks I and II, each with its advantages, on the structure of the forces and control policy.

In Framework I: for attached thrusters with all fixed directions, we arrange the thrusters into two categories with heterogeneous roles: One category is for pure translational control and has no influence on the rotational dynamics of the body; another is for pure rotational control and has no influence on the translational dynamics of the body. As an example, we design the control policy of the thrusters for rotational control *in an alternative working manner* to ensure the desired trajectory tracking of the body. In this case, the framework is efficient in the sense that, for a large number of thrusters, there is less portion of force canceling effect, but the workload for individual thrusters may be not balanced depending on what type of trajectory tracking.

In Framework II: for the attached thrusters with all non-fixed directions, based on the proper attached locations of the thrusters, we design the applied force of every thruster with threefold decomposition terms, each with a different role, to control (i) rotation and (ii) translation and (iii) the overall applied force to be unilateral, respectively, and without coupling. To be specific, for the threefold decomposition terms of all forces: (1) the components of the forces that control rotation of the body are balanced, i.e., the composition of these forces’ components is zero, and consequently, they have no influence on translation of the body; (2) the components of the forces that control translation of the body have balanced moments, i.e., the composition of the moments of the forces is zero so that they have no influence on rotation of the body; (3) the components of the third structure are used to make the forces to be all unilateral (pull or push), which are balanced with balanced moments, and thus have no influence on the rotation and translation of the body. Moreover, under this framework, the control policy for pull or push is *unified*, i.e., it has the same mathematical form for pull or push and can be easily switched, and the closed-loop dynamics of the body is linear with respect to both rotation and translation. Examples are given to illustrate the notions. In this framework, the workload for individual thrusters is generally roughly balanced, but it is less efficient in the sense that there may be a larger portion of force canceling effect than the case in Framework I.

Although in Framework II, the perfect placement of the thrusters is required, this framework nevertheless provides many useful insights for controlling a rigid body in a simple and linear formulation such that the rigid body is easily STLC and easily implemented, as opposed to developing possibly sophisticated nonlinear control techniques which are not easy to satisfy both the unilateral restriction and the STLC requirement together with easy implementation. The possible non-perfect placement of thrusters in physical applications is not unsolvable, either by a careful calibration of the placement or compensation (possibly by an additional thruster that will be investigated). Some future considerations (e.g., the compensation of non-perfect placement, as well as inaccurate measurements, fuel consumption of thrusters, etc.) are listed in Conclusion.

Notations used in this paper

Notations | Frame | Meaning |
---|---|---|

\(n\) | Number of thrusters | |

\(x(t)\in \mathbb {R}^2\) | \(\mathcal {I}\) | Position of rigid body |

\(\psi (t)\in \mathbb {R}\) | \(\mathcal {I}\) | Orientation of rigid body |

\(m\) | Mass | |

\(I\) | Moment of inertia | |

\(f_k(t)\in \mathbb {R}^2\) | \(\mathcal {I}\) | Applied force of agent \(k\) |

\(\tilde{f}_k(t)\in \mathbb {R}^2\) | \(\mathcal {F}\) | Applied force of agent \(k\) |

\(M_k(t)\in \mathbb {R}\) | Applied moment of agent \(k\) | |

\(\times \) | Cross product | |

\(|\cdot |\) | Absolute value of a scalar | |

\(||\cdot ||\) | Norm of a vector | |

\(f_e(t)\in \mathbb {R}^2\) | \(\mathcal {I}\) | External force |

\(M_e(t)\in \mathbb {R}\) | External moment | |

\(f_0\) | \(\max (||f_e(t)||)\) | |

\(M_0\) | \(\max (|M_e(t)|)\) | |

\(f(t)\in \mathbb {R}^2\) | \(\mathcal {I}\) | Overall force of agents |

\(M(t)\in \mathbb {R}\) | Overall moment of agents | |

\(\hbox {sgn}(\cdot )\) | The sign function | |

\(\cdot \) | dot product | |

\(\tilde{r}_k\) | \(\mathcal {F}\) | Location vector of agent \(k\) |

\(\tilde{n}_k\) | \(\mathcal {F}\) | Refer to Sect. 2.3 |

\(\vartheta _k\) | \(\mathcal {F}\) | Refer to Sect. 3.1 |

\(\tilde{\theta }_k\) | \(\mathcal {F}\) | Attached angle of agent \(k\) |

\(\text {i}\) | The imaginary unit | |

\(R(\cdot )\) | Rotation matrix | |

\(n_t,n_r\) | Refer to (9) | |

\(f_r(t)\in \mathbb {R}^2,\alpha (t)\in \mathbb {R}\) | \(\mathcal {I}\) | Refer to Sect. 4 |

\(c(t)\in \mathbb {R}\) | Magnitude of \(f_r(t)\) | |

\(\theta (t)\in \mathbb {R}\) | \(\mathcal {I}\) | Orientation of \(f_r(t)\) |

\(c_k(t)\in \mathbb {R}\) | Magnitude of \(f_k(t)\) | |

\(\vartheta (t)\in \mathbb {R}\) | Refer to (13) | |

\(d_k\) | Refer to Sect. 4.2 | |

\(x_d(t)\) | \(\mathcal {I}\) | Desired position of the body |

\(\psi _d(t)\) | \(\mathcal {I}\) | Desired orientation of the body |

\(\ell _k\) | \(||\tilde{r}_k||\) | |

\(\varepsilon \) | Refer to (19) | |

\(f^r_k(t), f^t_k(t), f^u_k(t)\) | Refer to (20) | |

\(M^r_k(t), M^t_k(t), M^u_k(t)\) | Refer to Sect. 5.1 | |

\(g(t)\in \mathbb {R}^2, a(t)\in \mathbb {R}\) | \(\mathcal {I}\) | Refer to Sect. 6 |

\(b_k\) | \(1 / \ell _k\) |

## 2 Problem description

### 2.1 Manipulation of rigid body

^{1}and \(I\) is the moment of inertia about the mass center of the body; \(f_k(t)\in \mathbb {R}^2\) and \(M_k(t)\in \mathbb {R}\) are the force and moment of thruster \(k\) applied to the body, respectively, and since the body is on the plane, here for simplicity, we denote the moment \(M_k(t)\) as a scalar and denote \(M_k(t)>0\) when it generates angular acceleration on the body counterclockwise, with its magnitude defined as

The dynamics Eqs. (1) and (2) of the rigid body is generally nonlinear with uncoordinated control forces, with its linear and angular (i.e., translational and rotational) accelerations coupled, which make the rigid body not STLC and the control not easy.

### 2.2 Notations in the body-fixed and inertial frames

There are two reference frames, i.e., the body-fixed frame and the inertial frame. In this paper, express a variable with a tilde when in the body-fixed frame, and express the corresponding variable without a tilde in the inertial frame. For example, \(\tilde{f}_k(t)\) is the applied force \(f_k(t)\) of thruster \(k\) when expressed in the body-fixed frame; the constant location vector \(\tilde{r}_k\), when viewed in the initial frame, is a variable, denoted as \(r_k(\psi (t))\), where \(r_k(\psi (t))= R(\psi )\tilde{r}_k\).

### 2.3 Definitions of unilateral forces

**Definition 1**

*perimeter*of the body applies a pull force to the body if

### 2.4 Main Considerations

- (1)
the forces are unilateral and the rigid body is STLC with \(n\ge 2\) (note that it is not STLC with only one thruster),

^{2}moreover - (2)
the linear and angular accelerations of the body are decoupled and controlled independently,

- (3)
the control that ensures the forces to be unilateral is independent from the linear and angular accelerations, and

- (4)
the closed-loop dynamics of the body is linear with respect to both the linear and angular accelerations (which implies that the body is STLC).

*trivial*.

## 3 Assumptions and definitions

### 3.1 Assumptions

*the shape of the body is diffeomorphic to a circle*(although for simplicity, in the following figures, the shape of the body is illustrated as a circle). Denote \(\vartheta _k\) as the angle between the norm vector \(\tilde{n}_k\) and the location vector \(\tilde{r}_k\), then

*Remark 1*

For a special case, when the body’s shape is a regular circle with the mass center at the center of the body, then \(\vartheta _k=0\) for all agents \(k\).

### 3.2 Definitions

Denote \(0\le \tilde{\theta }_k<2\pi \) as the attached angle of thruster \(k\) in the body-fixed frame.

**Definition 2**

*(Placement of the thrusters that positively span the plane):*For the placement of the \(n\) thrusters that positively span the plane, we mean that the angles \(\tilde{\theta }_k, k=1,2,\ldots ,n\), are distributed more or less uniformly, with

**Definition 3**

*Remark 2*

Note that when \(n>3\), the perfect placement of the thrusters does not necessarily mean their angles \(\tilde{\theta }_k\), \(k=1,2,\ldots ,n\), are uniformly distributed on the circle. For example, when \(n=4, \tilde{\theta }_1=0\), \(\tilde{\theta }_2=2\pi /3, \tilde{\theta }_3=\pi \), \(\tilde{\theta }_4=5\pi /3\).

*Remark 3*

*Remark 4*

To derive one instance of each of the \(n\) values for two placements defined above, one may use, for example, the protocol of Proposition 6 in [22] which convergence is asymptotic. Then one instance of the \(n\) values of the angles in Definition 3 (or Definition 2) is then derived, if the protocol in Proposition 6 in [22] is allowed to converge sufficiently (or the evolution of the protocol is just interrupted before sufficient convergence).

*Remark 5*

The positively-spanning-placement allows the thrusters located in a more general configuration and is thus a mild assumption. The constraint of the perfect placement (e.g., condition (8) can be achieved by simply assigning \(\tilde{\theta }_k=\phi _0+\frac{(k-1)2\pi }{n_k}, k=1,2,\ldots ,n\), \(\phi _0\in \mathbb {R}\)) is rigorous and will provide much convenience in the design of the controller; however, this is likely not possible to do perfectly in physical systems, but through careful calibration, the error can be made neglected in application.

## 4 Decomposition framework and control design of unilateral thrusters with fixed directions

Considering the \(n\ge 5\) unilateral thrusters attached to the rigid body with all fixed directions, this section designs the attached directions and the magnitudes of the applied forces of the thrusters. Without loss of generality, here assume the thrusters apply only pull forces on the body. (Note that, for the \(n\le 3\) unilateral thrusters with all *fixed* directions, the body cannot be STLC, which is implied in [15]. For \(n=4\), it is less likely feasible in this framework.)

the \(n_t\) thrusters are used for translational control, with the placement of the thrusters on the perimeter of the body that positively span the plane, \(n_t\ge 3\), the directions of the thrusters point out of the body and pass through the mass center, thus with no influence on the rotation of the body, and

the \(n_r\) thrusters are used for rotational control and form \(\frac{n_r}{2}\) couples with zero net force which have no influence on the translation of the body, where \(n_r\ge 2\) is an even number.

### 4.1 Thrusters for translational control

**Proposition 1**

*Remark 6*

*Proof of Proposition 1*

*Remark 7*

The \(n_t\) thrusters are designed to work in an alternative manner, refer to Fig. 7.

*Remark 8*

The larger number \(n_t\) of the thrusters used for translation means that the difference of \(\tilde{\theta }_{k+1}-\tilde{\theta }_k\) generally decreases, and thus the more efficiency of the forces of the working thrusters (since the canceling effect of the working thrusters decreases).

### 4.2 Thrusters for rotational control

### 4.3 Dynamics of rigid body

## 5 Examples for thrusters with fixed directions

Assume the desired trajectories of the body are given by \(x_d(t)\) and \(\psi _d(t)\) (in this section, for clarity, \(x_d(t), x(t)\), \(\psi _d(t)\) and \(\psi (t)\) are abbreviated as \(x_d, x, \psi _d\) and \(\psi \), respectively).

### 5.1 Pure translational control

### 5.2 Both translational and rotational control

The magnitudes of the applied forces (the control inputs) are illustrated in Fig. 9, where \(\alpha (t)\) converges to zero, and \(c_3(t),c_4(t)\) converge to nonzero values, \(c_1(t)\) converges to zero, and \(c_2(t)\) is always zero.

## 6 Decomposition framework and control design of unilateral thrusters with non-fixed directions

In this section, we consider a decomposition framework and the unified control policy of unilateral thrusters with non-fixed directions. All the \(n\) thrusters are used to control both rotation and translation of the body, and in the meanwhile, to ensure the unilateral forces (all pull or all push) of all the thrusters.

### 6.1 Decomposition structure of applied forces

Denote the moments generated by the components of \(f^r_k(t)\), \(f^t_k(t), f^u_k(t)\) as \(M^r_k(t), M^t_k(t), M^u_k(t)\), respectively.

### 6.2 Control policy of applied forces

- (1)Based on the locations of agents, simply specify \(\tilde{f}_k^r(t)\):where \(a(t)\in \mathbb {R}, 0<\theta _0<\pi \). \(\tilde{f}_k^r(t)\) generates positive moment (\(M_k(t)>0\)) on the body when \(a(t)>0\). For \(\theta _0=\frac{\pi }{2}, \tilde{f}_k^r(t)\) is most efficient for generating the moment since \(M^r_k(t) = a(t)\ell _k\sin (\theta _0)=a(t)\ell _k\), so in the following, we take \(\theta _0=\frac{\pi }{2}\), i.e.,$$\begin{aligned} \tilde{f}_k^r(t)=a(t) R(\theta _0) \left( \begin{array}{c} \cos \tilde{\theta }_k \\ \sin \tilde{\theta }_k \\ \end{array} \right) , \end{aligned}$$In this case,$$\begin{aligned} \tilde{f}_k^r(t)&= a(t)\left( \begin{array}{cc} 0 &{} -1 \\ 1 &{} 0 \\ \end{array} \right) \left( \begin{array}{c} \cos \tilde{\theta }_k \\ \sin \tilde{\theta }_k \\ \end{array} \right) ,\nonumber \\&k=1,2,\ldots ,n. \end{aligned}$$(21)$$\begin{aligned} \sum _{k=1}^n \tilde{f}_k^r(t)&= a(t) \left( \begin{array}{cc} 0 &{} -1 \\ 1 &{} 0 \\ \end{array} \right) \varepsilon ,\\ \sum _{k=1}^n M^r_k(t)&= a(t) \sum _{k=1}^n \ell _k. \end{aligned}$$
- (2)Next choose the structure of the second force \(f_k^t(t)\)in the inertial frame, where \(b_k\in \mathbb {R}\), and \(g(t)\in \mathbb {R}^2\) is an arbitrary reference force. The forces \(f_k^t(t), k=1,2,\ldots ,n\), are parallel. For the coefficient \(b_k\), considering the attached locations of the thrusters, simply select \(b_k\) to satisfy$$\begin{aligned} f_k^t(t)=b_k g(t), ~ k=1,2,\ldots ,n \end{aligned}$$(22)in which case,$$\begin{aligned} b_k = 1 / \ell _k, \ k=1,2,\ldots ,n \end{aligned}$$(23)$$\begin{aligned} \sum _{k=1}^n f_k^t(t)&= g(t) \sum _{k=1}^n \frac{1}{\ell _k},\\ \sum _{k=1}^n M^t_k(t)&= \sum _{k=1}^n f_k^t(t)\times R(\psi (t))\tilde{r}_k \\&= \sum _{k=1}^n g(t)\times R(\psi (t))\frac{\tilde{r}_k}{\ell _k} \\&= g(t)\times R(\psi (t)) \varepsilon . \end{aligned}$$
- (3)Design the structure of the force \(\tilde{f}^u_k(t)\) as follows:where \(u(t)\in \mathbb {R}\) is the unilateral control input, then \(\tilde{f}^u_k(t), k=1,2,\ldots ,n\), are almost balanced and have zero moments:$$\begin{aligned} \tilde{f}^u_k(t)= u(t) \left( \begin{array}{c} \cos \tilde{\theta }_k \\ \sin \tilde{\theta }_k \\ \end{array} \right) , \ k=1,2,\ldots ,n \end{aligned}$$(24)$$\begin{aligned} \sum _{k=1}^n \tilde{f}^u_k(t)&= u(t) \varepsilon ,\\ \sum _{k=1}^n M^u_k(t)&= \sum _{k=1}^n \tilde{f}^u_k(t) \times \tilde{r}_k = \mathbf {0}. \end{aligned}$$

- (1)the forces \(f_k^r(t), k=1,2,\ldots ,n\), are balanced, i.e.,(these forces are used to control the rotation of the body),$$\begin{aligned} \sum _{k=1}^n f_k^r(t) = \mathbf {0} \end{aligned}$$(25)
- (2)\(f_k^t(t), k=1,2,\ldots ,n\), have balanced moments, i.e.,(these forces are used to control translation of the body),$$\begin{aligned} \sum _{k=1}^n f_k^t(t) \times R(\psi (t))\tilde{r}_k =\mathbf {0} \end{aligned}$$(26)
- (3)\(f^u_k(t), k=1,2,\ldots ,n\), are balanced with balanced moments (thus for any control \(u(t)\), the dynamics of the body is unaffected), i.e.,(\(f^u_k(t)\) is to make overall force \(f_k(t)\) to be unilateral),$$\begin{aligned} \sum _{k=1}^n f_k^u(t) = \mathbf {0}, \ \sum _{k=1}^n f_k^u(t) \times R(\psi (t))\tilde{r}_k =\mathbf {0} \end{aligned}$$(27)

### 6.3 Control policy for unilateral forces

In (24), \(\tilde{f}^u_k(t)\) is pull when \(u(t)>0\) and push when \(u(t)<0\). Then, using the control input \(u(t)\), the overall forces \(\tilde{f}_k(t), k=1,2,\ldots ,n\), can be easily made to be pull or push, for the simplest, make \(u(t)\) large (positive) or small (negative) enough. Proposition 2 is just one example.

**Proposition 2**

*Remark 9*

If the shape of the rigid body is a circle with its mass center at the center of the circle, then \(\vartheta _k\) reduces to be \(\vartheta _k=0\), and if \(\theta _0=\frac{\pi }{2}\), then \(\tilde{f}^r_k(t)\cdot \tilde{n}_k=0, k=1,2,\ldots ,n\). Then, in this case, \(u_1(t)\) and \(u_2(t)\) reduce to be: \(u_1(t) = \min _{k\in \{1,2,\ldots ,n\}} \tilde{f}^t_k(t) \cdot \tilde{n}_k\), and \(u_2(t) = \max _{k\in \{1,2,\ldots ,n\}} \tilde{f}^t_k(t) \cdot \tilde{n}_k\).

### 6.4 Dynamics of rigid body

**Proposition 3**

The discussion on external forces is given in “Appendix B.”

## 7 Examples for thrusters with non-fixed directions

### 7.1 Example of trajectory tracking

*Remark 10*

The closed-loop error \(x_e(t) := x_d(t)-x(t)\) satisfies \(\ddot{x}_e(t)+k_d \dot{x}_e(t) + k_p x_e(t)=\mathbf {0}\), and consequently \(x(t)\rightarrow x_d(t), \dot{x}(t)\rightarrow \dot{x}_d(t)\). Similarly, \(\psi _e(t):=\psi _d(t)-\psi (t)\) satisfies \(\ddot{\psi }_e(t)+\kappa _d \dot{\psi }_e(t)+ \kappa _p \psi _e(t)=0\), \(\psi (t)\rightarrow \psi _d(t), \dot{\psi }(t)\rightarrow \dot{\psi }_d(t)\).

### 7.2 Illustration of applied forces

- (1)
\(n=2\) thrusters, \(\ell _1=\ell _2=0.3, \tilde{\theta }_1=\frac{\pi }{2}, \tilde{\theta }_2=\frac{3\pi }{2}\). Then \(m_0=\frac{3}{20}, I_0=\frac{5}{3}\).

- (2)
\(n=6\) thrusters, and for simplicity, just select \(\ell _k=0.3, \tilde{\theta }_k=\frac{(k-1)\pi }{3}\), \(k=1,2,\ldots ,6\). Then \(m_0=\frac{1}{20}, I_0=\frac{5}{9}\).

Figure 8 illustrates the dynamics of the configuration of the body that are same for both \(n=2\) and \(n=6\). The trajectory of the configuration converges to the desired circular motion described by \(x_d(t)\) and \(\psi _d(t)\).

- (1)when \(u(t)=0\), the type of the forces is mixed;
- (2)
when \(u(t)=0.6\), the forces are all pull; and

- (3)
when \(u(t)=-0.6\), the forces are all push.

## 8 Conclusion

In this paper, we consider the cooperative manipulation of a rigid body by the forces of the attached unilateral thrusters for two cases: (i) the directions of the thrusters are all fixed, and (ii) the directions of the thrusters can swing (i.e., non-fixed directions). For the two cases, we design two decomposition frameworks respectively, on the structure of the applied forces and the control policy such that the linear and angular accelerations of the body are decoupled and controlled independently, and the control that ensures the forces to be unilateral is independent from the linear and angular accelerations (Framework II). As a result, the body is easily controlled, and the design of the control laws in these cases are trivial, as illustrated in the examples of trajectory tracking with friction, and thus, the frameworks will provide convenience on a quick estimation of maximum forces of thrusters needed that is useful in design of physical systems.

The control paradigm in this paper is centralized with global information sharing of the thrusters. The decentralized unilateral control is feasible for manipulation and transportation of the rigid body, but may have difficulties to ensure the requirements that the rigid body is STLC and the controls for rotation/translation dynamics decoupled and linear. If without the assumption of the perfect placement of the thrusters, then manipulation and transportation are of course possible, but probably without the properties expected in Sect. 2.4, provided that no additional compensation added.

There are some questions remain to be investigated, for example, (i) how to design the arrangement of the thrusters and the control laws when some thrusters apply only push forces while others apply only pull forces? (ii) what about when some thrusters have fixed directions while others can have swing directions? (iii) what about when the magnitude of the force of every thruster is limited? (iv) what is even more energy-efficiency solutions for such unilateral manipulations? and (v) the robust analysis without perfect placement of the thrusters, inaccurate measurements, fuel consumption of the thrusters and thus the drifting of the center of mass, possibly with another thruster compensation, needs to be further considered.

When using mobile robots for manipulation instead of attached thrusters, the cooperative manipulation of the rigid body is not a pure manipulation or pure motion coordination problem (such as flocking [23, 24, 25, 26, 27], formation [28, 29, 30, 31]) of the robots, it requires regulation of both motion (between mobile robots) and interaction forces (between the body and the robots), and this question is challenging and needs to be further investigated; the robustness to individual thruster/robot failure, as well as physical implementations (with communication issues between robots), also needs to be considered in future.

## Footnotes

### References

- 1.Krause, J., Ruxton, G.D.: Living in Groups. Oxford University Press, Oxford (2002)Google Scholar
- 2.Krieger, M., Billeter, J., Keller, L.: Ant-like task allocation and recruitment in cooperative robots. Nature
**406**, 992–995 (2000)CrossRefGoogle Scholar - 3.Cretu, A.-M., Payeur, P., Petriu, E.M.: Soft object deformation monitoring and learning for model-based robotic hand manipulation. IEEE Trans. Syst. Man Cybern. B Cybern.
**42**, 740–753 (2012)CrossRefGoogle Scholar - 4.Foresti, G.L., Pellegrino, F.A.: Automatic visual recognition of deformable objects for grasping and manipulation. IEEE Trans. Syst. Man Cybern. C Appl. Rev.
**34**, 325–333 (2004)CrossRefGoogle Scholar - 5.Lionis, G., Kyriakopoulos, K.J.: Centralized motion planning for a group of micro agents manipulating a rigid object. In: Proceedings of the 13th Mediterranean Conference on Control and Automation, pp. 662–667 (2005)Google Scholar
- 6.Allais, A.A., McInroy, J.E., OBrien, J.F.: Locally decoupled micromanipulation using an even number of parallel force actuators. IEEE Trans. Robot.
**28**, 1323–1334 (2012)CrossRefGoogle Scholar - 7.Michael, N., Fink, J., Kumar, V.: Cooperative manipulation and transportation with aerial robots. Auton. Robots.
**30**, 73–86 (2011)CrossRefGoogle Scholar - 8.Fink, J., Michael, N., Kim, S., Kumar, V.: Planning and control for cooperative manipulation and transportation with aerial robots. Int. J. Robot. Res.
**30**, 324–334 (2011)CrossRefGoogle Scholar - 9.Feemster, M.G., Esposito, J.M.: Comprehensive framework for tracking control and thrust allocation for a highly overactuated autonomous surface vessel. J. Field Robot.
**28**, 80–100 (2011)CrossRefMATHGoogle Scholar - 10.Rodriguez, A., Mason, M.T., Ferry, S.: From caging to grasping. Int. J. Robot. Res.
**31**, 886–900 (2012)CrossRefGoogle Scholar - 11.Rodriguez, A., Mason, M.T.: Grasp invariance. Int. J. Robot. Res.
**31**, 236–248 (2012)CrossRefGoogle Scholar - 12.Caccavale, F., Muscio, G., Pierri, F.: Grasp force and object impedance control for arm/hand systems. In:16th International Conference on Advanced Robotics (ICAR), pp. 1–6 (2013)Google Scholar
- 13.Mesquita, A., Rempel, E.L., Kienitz, K.H.: Bifurcation analysis of attitude control systems with switching-constrained actuators. Nonlinear Dyn.
**51**, 207–216 (2008)CrossRefMATHGoogle Scholar - 14.Pereira, G.A.S., Campos, M.F.M., Kumar, V.: Decentralized algorithms for multi-robot manipulation via caging. Int. J. Robot. Res.
**23**, 783–795 (2004) Google Scholar - 15.Lynch, K.M.: Controllability of a planar body with unilateral thrusters. IEEE Trans. Autom. Control
**44**, 1206–1211 (1999)CrossRefMATHMathSciNetGoogle Scholar - 16.Lynch, K.M., Mason, M.T.: Dynamic nonprehensile manipulation: controllability, planning, and experiments. Int. J. Robot. Res.
**18**, 64–92 (1999)CrossRefGoogle Scholar - 17.Spong, M.W.: Impact controllability of an air hockey puck. Syst. Control Lett.
**42**, 333–345 (2001)CrossRefMATHMathSciNetGoogle Scholar - 18.Partridge, C.B., Spong, M.W.: Control of planar rigid body sliding with impacts and friction. Int. J. Robot. Res.
**19**, 336–348 (2000)CrossRefGoogle Scholar - 19.Forni, F., Teel, A.R., Zaccarian, L.: Follow the bouncing ball: global results on tracking and state estimation with impacts. IEEE Trans. Autom. Control
**58**, 1470–1485 (2013)CrossRefMathSciNetGoogle Scholar - 20.Esposito, J.M.: Decentralized cooperative manipulation with a swarm of mobile robots. In: Proceedings of the IEEE/RSJ International Conference on Intelligence Robots Systems, pp. 5333–5338 (2009)Google Scholar
- 21.Esposito, J.M.: Decentralized cooperative manipulation with a swarm of mobile robots: the approach problem. In: Proceedings of the American Control Conference, pp. 4762–4767 (2010)Google Scholar
- 22.Li, W., Spong, M.W.: Unified cooperative control of multiple agents on a sphere for different spherical patterns. IEEE Trans. Autom. Control
**59**, 1283–1289 (2014)CrossRefMathSciNetGoogle Scholar - 23.Dong, W.: Flocking of multiple mobile robots based on backstepping. IEEE Trans. Syst. Man Cybern. B Cybern.
**41**, 414–424 (2011)CrossRefGoogle Scholar - 24.Li, W., Spong, M.W.: Stability of general coupled inertial agents. IEEE Trans. Autom. Control
**55**, 1411–1416 (2010)CrossRefMathSciNetGoogle Scholar - 25.Li, W., Spong, M.W.: Analysis of flocking of cooperative multiple inertial agents via a geometric decomposition technique. IEEE Trans. Syst. Man Cybern. Syst. doi:10.1109/TSMC.2014.2318013
- 26.Zavlanos, M.M., Tanner, H.G., Jadbabaie, A., Pappas, G.J.: Hybrid control for connectivity preserving flocking. IEEE Trans. Autom. Control
**54**, 2869–2875 (2009)CrossRefMathSciNetGoogle Scholar - 27.Moshtagh, N., Jadbabaie, A.: Distributed geodesic control laws for flocking of nonholonomic agents. IEEE Trans. Autom. Control
**52**, 681–686 (2007)CrossRefMathSciNetGoogle Scholar - 28.Zavlanos, M.M., Egerstedt, M.B., Pappas, G.J.: Graph-theoretic connectivity control of mobile robot networks. Proc. IEEE.
**99**, 1525–1540 (2011)CrossRefGoogle Scholar - 29.Kan, Z., Dani, A.P., Shea, J.M., Dixon, W.E.: Network connectivity preserving formation stabilization and obstacle avoidance via a decentralized controller. IEEE Trans. Autom. Control.
**57**, 1827–1832 (2012)Google Scholar - 30.Mas, I., Kitts, C.: Obstacle avoidance policies for cluster space control of nonholonomic multirobot systems. IEEE/ASME Trans. Mechatron.
**17**, 1068–1079 (2012)CrossRefGoogle Scholar - 31.Kitts, C.A., Mas, I.: Cluster space specification and control of mobile multirobot systems. IEEE/ASME Trans. Mechatron.
**14**, 207–218 (2009)CrossRefGoogle Scholar