8  Multirotor (1D)

Multirotor 1D robot

8.1 Dynamics

  • Parameters
    • state space \(\mathcal{X}\)
    • action space \(\mathcal{U}\)
    • mass \(m\) [kg]
    • gravity \(g\) [\(m/s^2\)]
  • State: \(\mathbf{x}= \begin{pmatrix}z, \dot z\end{pmatrix}^\top \in \mathcal{X}\) [m, m/s] (height and vertical velocity of the robot in the world frame)
  • Action: \(\mathbf{u}= \begin{pmatrix} f_1 \end{pmatrix}^\top \in \mathcal{U}\) [N] (upward thrust)
  • Dynamics: \[ \begin{aligned} \mathbf{\dot x} = f(\mathbf x, \mathbf u) = \begin{pmatrix} \dot z\\ \frac{f_1}{m} - g \end{pmatrix} \end{aligned} \]

8.2 Differential Flatness

Pick flat outputs \(\mathbf{z}(t) = (z(t))^\top\), i.e., the position of the robot. Then we can compute all necessary variables if \(\mathbf{z}(t)\) is at least C2-continuous. \[ \begin{aligned} \mathbf{x}(t) &= g_x(\mathbf{z}, \dot{\mathbf{z}}) = \left(z, \dot z \right)\\ \mathbf{u}(t) &= g_u(\ddot{\mathbf{z}}) = \left( m ( \ddot z + g ) \right) \end{aligned} \]

Follows directly from the dynamics.

8.3 Invariance

8.4 Controllers

8.5 Useful Parameters