Keywords

1 Introduction

Robust control design for robotic systems is central to the validation of control systems such as nonlinear robotic systems with disturbance [1,2,3]. One popular line for studying robust control schemes is by utilizing back-stepping technique. This method is usually established after decoupling mobile robots based on the property of non-holonomic systems. However, due to the consideration of multi-purposes as well as constraint problem, optimality based control schemes have been addressed [4,5,6,7,8,9,10,11,12]. Along with the development of optimal control designs, the applications of the model predictive controller, which the controller is established after each computation period of optimization problem, are remarkably considered. The difficulties of applying MPC are disturbance attenuation and tracking problem. The fact is that the external disturbances lead to the deviation in predictive model. Therefore, the constraint set of initial point in optimization problem needs to be generated [4, 7,8,9,10,11,12]. Furthermore, the tracking problem in RMPC is usually investigated by comparing the Lyapunov functions in two sequential time based on intermediate function. It is worth noting that the Lyapunov function is chosen as optimal function in each sampling period. To obtain the convenient comparison, the tube region is given to find the intermediate function. This paper presents two robust control laws, including robust MPC and traditional robust control, for WMRs under cascade systems consideration. The RMPC approach is developed for multi-WMRs using a novel optimization based distributed RMPC.

2 Robust Control Systems of WMRs

2.1 Robust MPC for a group of WMRs

For each WMRs, according to traditional Euler Lagrange theory, the dynamic model can be represented by [1,2,3]:

$$ \left\{ \begin{gathered} M(\eta )\ddot{\eta } + C(\eta ,\dot{\eta })\dot{\eta } + B(\eta )\left( {F(\dot{\eta }) + \tau_{d} } \right) = B(\eta )\tau + J^{T} (\eta )\lambda \hfill \\ J(\eta )\dot{\eta } = 0 \hfill \\ \end{gathered} \right. $$
(1)

Based on [1,2,3, 6], the cascade control scheme can be developed after obtaining the model involving two subsystems, as follows:

$$ \begin{gathered} \dot{\eta } = S(\eta )\sigma \hfill \\ D(\eta )S(\eta )\dot{\sigma } + C_{1} (\eta ,\dot{\eta })\sigma = B(\eta )\tau \hfill \\ \end{gathered} $$
(2)

where \(S(\eta )\) is the solution after solving the equation \(S^{T} \left( \eta \right)J^{T} \left( \eta \right) = 0\).

Therefore, the tracking error model of kinematic model for each WMRs in a group of WMRs is given as:

$$ \begin{gathered} \dot{e}_{j} = \left[ {\begin{array}{*{20}c} {\dot{x}_{je} } \\ {\dot{y}_{je} } \\ {\dot{\theta }_{je} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {v_{i} \cos (\theta_{ij} ) + \omega_{j} y_{je} - v_{j} - L_{ij}^{d} \omega_{i} \sin (\psi_{ij}^{d} + \theta_{ij} )} \\ {v_{i} \sin (\theta_{ij} ) - \omega_{j} x_{je} - d\omega_{j} + L_{ij}^{d} \omega_{i} \cos (\psi_{ij}^{d} + \theta_{ij} )} \\ {\left( {v_{i} \sin (\theta_{ij} ) + L_{ij}^{d} \omega_{i} \sin (\psi_{ij}^{d} + \theta_{ij} ) + 2k_{2} y_{je} } \right)/d - \omega_{j} } \\ \end{array} } \right] \hfill \\ \,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\, = f\left( {x_{je} ,y_{je} ,u_{j} ,t} \right) \hfill \\ \end{gathered} $$
(3)

The optimal control problem is established at each sampling time \(t_{k}\) with the cost function to be defined:

$$ J\left( {e_{j} (t_{k} ),u_{e} (t_{k} ),t_{k} } \right) = \int\limits_{{t_{k} }}^{{t_{k} + T}} {L\left( {e_{j} (\tau |t_{k} ),u_{e} (\tau |t_{k} )} \right)} d\tau + g\left( {e_{j} (t_{k} + T|t_{k} )} \right) $$
(4)

where:

$$ \begin{gathered} L\left( {e_{j} (\tau |t_{k} ),u_{e} (\tau |t_{k} )} \right) = \left\| {e_{j} (\tau |t_{k} )} \right\|_{Q}^{2} + \left\| {u_{e} (\tau |t_{k} )} \right\|_{P}^{2} \hfill \\ P = diag\left\{ {p_{1} ,p_{2} } \right\} \hfill \\ Q = diag\left\{ {q_{1} ,q_{2} ,q_{2} } \right\} \hfill \\ g(\tilde{p}_{e} (\tau |t_{k} )) = \frac{1}{2}\left\| {x_{je} (\tau |t_{k} )} \right\|^{2} + \frac{1}{2}\left\| {y_{je} (\tau |t_{k} )} \right\|^{2} + \frac{{dk_{3} }}{{2k_{2} }}\left\| {\theta_{je} (\tau |t_{k} )} \right\|^{2} \hfill \\ T = n\delta ,n \in N \hfill \\ \end{gathered} $$
(5)
$$ \begin{gathered} u_{j} = \left[ {\begin{array}{*{20}c} {v_{j} } \\ {\omega_{j} } \\ \end{array} } \right] = \mathop {arc\min }\limits_{{u_{j} (\tau |t_{k} )}} J\left( {\overline{e}_{j} (t_{k} ),\overline{u}_{e} (t_{k} )} \right) \hfill \\ s.t:a.\,\,\dot{\overline{e}}_{j} = f\left( {\overline{x}_{je} ,\overline{y}_{je} ,u_{j} ,t} \right) \hfill \\ \,\,\,\,\,\,\,\,b.\,\,\overline{e}_{j} (t_{k} |t_{k} ) = e_{j} (t_{k} ) \hfill \\ \,\,\,\,\,\,\,\,c.\,\,u_{j} (\tau |t_{k} ) \in U \hfill \\ \,\,\,\,\,\,\,\,d.\,\,\overline{e}_{j} (t_{k} + T|t_{k} ) \in \Omega \hfill \\ \end{gathered} $$
(6)
Fig. 1.
figure 1

The tracking of Leader and Follower in a group of WMRs

Fig. 2.
figure 2

The kinematic control inputs of each WMRs

The MPC controller is obtained after solving this Optimization Problem 1:

$$ {\text{where}}:\quad \quad \quad \quad \quad \quad \quad U = \left\{ {\left\{ {v_{j} ,\omega_{j} } \right\}{:}\frac{{\left| {v_{j} } \right|}}{a} + \frac{{\left| {\omega_{j} } \right|}}{b} \le 1} \right\} $$
(7)
$$ \Omega = \left\{ {e_{j} :k_{1} \left| {\overline{x}_{je} } \right| + k_{2} \left| {\overline{y}_{je} } \right| + k_{3} \left| {\overline{\theta }_{je} } \right| < a(1 - \lambda_{r} )} \right\} $$
(8)

The solution \(u_{j}^{ * } (t_{k} ) = \left\{ {u_{j}^{ * } (\tau |t_{k} ):\tau \in \left[ {t_{k} ,t_{k} + T} \right)} \right\}\) at sampling time \(t_{k}\) is suitable for predictive signals \(\overline{e}_{j}^{ * } (t_{k} ) = \left\{ {\overline{e}_{j}^{ * } (\tau |t_{k} ):\tau \in \left[ {t_{k} ,t_{k} + T} \right)} \right\}\). The proposed MPC algorithm is described as follows:

  1. 1.

    At sampling time \(t_{k}\), finding the states of leader and follower:\(u_{j}\), \(u_{i}\), \(p_{j}\), \(p_{i}\).

  2. 2.

    Solving the optimization problem to get the solution \(u_{j}^{ * } (t_{k} )\).

  3. 3.

    Implementing \(u_{j}^{ * } (t_{k} )\) for the follower in the time interval \(\left[ {t_{k} ,t_{k + 1} } \right)\).

Set \(k \to k + 1\) then come back step 1.

2.2 Robust Output Feedback Control for WMRs

The proposed MPC is compared with the traditional robust control for WMRs to be discussed in [2] as follows:

$$ \begin{array}{*{20}l} {{\text{where}}\quad \quad \quad \quad \quad \quad } \hfill & {\begin{array}{*{20}l} {u = u^{*} + l} \hfill \\ {u^{*} = \left[ \begin{gathered} e_{1} \cos \theta_{c} + e_{2} \sin \theta_{c} - \dot{\upsilon }_{r} + \dot{\upsilon }_{d} - Q_{2} \tilde{\upsilon } \hfill \\ e_{3} - \dot{\omega }_{r} + \dot{\omega }_{d} - Q_{3} \tilde{\omega } \hfill \\ \end{gathered} \right]} \hfill \\ \end{array} } \hfill \\ \end{array} $$
(9)
$$ {\text{and}}\;\;\left\{ \begin{gathered} l = \frac{1}{\varepsilon }\left( {\hat{z} - z} \right) \hfill \\ \frac{d}{dt}\hat{z} = - \frac{1}{\varepsilon }\left( {\hat{z} - z} \right) + u + \dot{z}_{d} \hfill \\ \end{gathered} \right. $$
(10)

3 Simulation Studies

The simulations are implemented by Yalmip for finding the MPC controller. Let’s consider a group of WMRs with the initial positions of \(R_{i}\) and \(R_{j}\):

$$ p_{i} (0) = \left[ {\begin{array}{*{20}c} 0 & 0 & {\pi /2} \\ \end{array} } \right]^{T} ,p_{j} (0) = \left[ {\begin{array}{*{20}c} 1 & { - 1} & {\pi /2} \\ \end{array} } \right]^{T} $$

In case of moving on the straight line, the velocities of WMRs are given as:

$$ v_{i} = 0.15(m/s),\,\,\,\,\omega_{i} = 0(rad/s),\;\;\;a = 2(m/s) $$

with the References: \(L_{ij}^{d} = 0.5(m),\,\,\psi_{ij}^{d} = 3\pi /2\).

$$ {\text{The}}\;{\text{parameters}}\;{\text{are}}\;{\text{chosen}}:\;k_{1} = k_{3} = 1.2,\,\,k_{2} = 0.8 $$
$$ {\text{and:}}\;\;\Omega = \left\{ {e_{j} :k_{1} \left| {\overline{x}_{je} } \right| + k_{2} \left| {\overline{y}_{je} } \right| + k_{3} \left| {\overline{\theta }_{je} } \right| < a(1 - \lambda_{r} )} \right\},\,\,\lambda_{r} = 0.12 $$

The simulation results in Fig. 1, Fig. 2 validate the proposed MPC of a group of WMRs with the tracking effectiveness of Leader and Follower and the control input signal.

4 Conclusion

In this paper, we have extend the RMPC for a group of WMRs with optimization problem to be only handle in the case of fixed starting point. The fact is that the WMRs is considered as a cascade model with disturbance being inserted dynamic subsystem. Moreover, this method is also implemented without using predictive model to avoid optimal control problem. It is interesting to further consider how to extend RMPC for dynamic model of WMRs.