![MathJax Logo](/templates/jsp/_style2/_tandf/pb2/images/math-jax.gif)
Abstract
The paper addresses the exact linearisation of flat nonlinear discrete-time systems by generalised static or dynamic feedbacks which may also depend on forward-shifts of the new input. We first investigate the question which forward-shifts of a given flat output can be chosen in principle as a new input, and subsequently how to actually introduce the new input by a suitable feedback. With respect to the choice of a feasible input, easily verifiable conditions are derived. Introducing such a new input requires a feedback which may in general depend not only on this new input itself but also on its forward-shifts. This is similar to the continuous-time case, where feedbacks which depend on time derivatives of the closed-loop input – and in particular quasi-static ones – have already been used successfully for the exact linearisation of flat systems since the nineties of the last century. For systems with a flat output that does not depend on forward-shifts of the input, it is shown how to systematically construct a new input such that the total number of the corresponding forward-shifts of the flat output is minimal. Furthermore, it is shown that in this case the calculation of a linearising feedback is particularly simple, and the subsequent design of a discrete-time flatness-based tracking control is discussed. The presented theory is illustrated by the discretised models of a wheeled mobile robot and a 3DOF helicopter.
1. Introduction
The concept of flatness has been introduced in the 1990s by Fliess, Lévine, Martin and Rouchon for nonlinear continuous-time systems (see e.g. Fliess et al. (Citation1995, Citation1999)). Roughly speaking, a continuous-time system is flat if all system variables can be parameterised by a flat output and its time derivatives, which in turn depends on the system variables and their time derivatives. In other words, there exists a one-to-one correspondence between the trajectories of a flat system and the trajectories of a trivial system. Since these properties allow an elegant solution to motion planning problems and a systematic design of tracking controllers, flatness belongs doubtlessly to the most popular nonlinear control concepts.
For the practical implementation of a flatness-based control, it is important to evaluate the continuous-time control law at a sufficiently high sampling rate. If this is not possible, it can be advantageous to design the controller directly for a suitable discretisation of the continuous-time system, see e.g. Diwold et al. (Citation2022a). Thus, transferring the flatness concept to discrete-time systems is both interesting from a theoretical and an application point of view. In fact, there are two equally obvious possibilities: The first one is to replace the time derivatives of the continuous-time definition by forward-shifts. This point of view has been adopted e.g. in Kaldmäe and Kotta (Citation2013), Sira-Ramirez and Agrawal (Citation2004), or Kolar et al. (Citation2016), and is consistent with the linearisability by a discrete-time endogenous dynamic feedback as it is defined in Aranda-Bricaire and Moog (Citation2008). The second approach is based on the one-to-one correspondence of the system trajectories to the trajectories of a trivial system. In contrast to the first approach, in this case the flat output may also depend on backward-shifts of the system variables, see Diwold et al. (Citation2022b) or Guillot and Millérioux (Citation2020). Since it is more general, within the present paper we consider the second approach, and refer to the first one, which is included as a special case, as forward-flatness.
For flat continuous-time systems, the problem of exact linearisation by different types of feedback as well as a subsequent tracking control design have already been studied extensively since the nineties of the last century. The simplest approach is to perform an exact linearisation such that the new input corresponds to the highest time derivatives of the flat output that appear in the parameterisation of the system variables. This can always be achieved by a classical (endogenous) dynamic feedback, see e.g. Fliess et al. (Citation1999). However, it is well-known that it can be advantageous to choose appropriate lower-order time derivatives of the flat output as a new input. In this case, the required feedback depends also on time derivatives of the new input, and is hence not a dynamic feedback in the classical sense – see Delaleau and Rudolph (Citation1998), Rudolph (Citation2021), or Gstöttner et al. (Citation2021a). An important advantage of such an exact linearisation is that it allows e.g. to achieve a lower-order error dynamics for a subsequently designed tracking control.
For flat discrete-time systems, it has been shown in Diwold et al. (Citation2022b) that – similar to the continuous-time case – they can be exactly linearised by a dynamic feedback such that the new input of the closed-loop system corresponds to the highest forward-shifts of the flat output that appear in the parameterisation of the system variables. Furthermore, it has been demonstrated in Diwold et al. (Citation2022a) for the practical example of a gantry crane that also an exact linearisation which introduces lower-order forward-shifts of the flat output as a new input is in principle applicable. This allows to achieve a lower-order tracking error dynamics, but requires a feedback which depends also on forward-shifts of the new input. Since in the particular case of the gantry crane the required feedback does not have a dynamic part, it is a discrete-time quasi-static feedback – see e.g. Aranda-Bricaire and Kotta (Citation2001), where such a type of feedback is used in a different context. However, according to the authors' best knowledge, a thorough theoretical analysis of the problem of exact linearisation and tracking control design for flat discrete-time systems does not yet exist in the literature. Thus, the aim of the present paper is to close this gap: We investigate which (lower-order) forward-shifts of a flat output can be used in principle as a new input, and how to actually introduce such a new input by a suitable feedback. After discussing the general case, we consider systems with a flat output that does not depend on future values of the control input. We show how to systematically construct a new input such that the sum of the orders of the corresponding forward-shifts of the components of the flat output is minimal, and that deriving a linearising feedback is particularly simple in this case. Furthermore, we show how such an exact linearisation can be used as a basis for the systematic design of a flatness-based tracking control, and demonstrate our results by two examples.
The employed mathematical methods are similar as in Gstöttner et al. (Citation2021a), where we have proven that every flat continuous-time system with a flat output that is independent of time derivatives of the input can be exactly linearised by a quasi-static feedback of its classical state. Hence, it is particularly important to emphasise that like in Gstöttner et al. (Citation2021a) we restrict ourselves to feedbacks of the classical system state, and do not consider feedbacks of generalised states as e.g. in Delaleau and Rudolph (Citation1998) or Rudolph (Citation2021). However, it should be noted that the considered feedbacks are more general than a usual static or dynamic feedback in the sense that they may also depend on forward-shifts of the closed-loop input.
The paper is organised as follows: In Sections 2 and 3 we introduce some notation and recapitulate the concept of flatness for discrete-time systems. In Section 4 we investigate the exact linearisation of flat discrete-time systems in general, and derive further results for systems with a flat output that does not depend on future values of the control input. The design of a flatness-based tracking control is discussed in Section 5, and in Section 6 the developed theory is finally applied to the discretised models of a wheeled mobile robot and a 3DOF helicopter.
2. Notation
Throughout the paper we make use of some basic differential-geometric concepts. Let be an n-dimensional smooth manifold equipped with local coordinates
,
, and
some smooth function. Then we denote by
the
Jacobian matrix of
with respect to
. The partial derivative of a single component
with respect to a coordinate
is denoted by
. Furthermore,
denotes the differential (exterior derivative) of the function
, where
,
are the differentials corresponding to the local coordinates. We frequently use
as an abbreviation for the set
, and with e.g.
we mean the span over the ring
of smooth functions. The symbols ⊂ and
are used in the sense that they also include equality.
To denote forward- and backward-shifts of the system variables, we use subscripts in brackets. For instance, the αth forward- or backward-shift of a component of a flat output y with
is denoted by
, and
. To keep expressions which depend on different numbers of shifts of different components of a flat output readable, we use multi-indices. If
and
are two multi-indices with
, i.e.
for
, then
and
with
. In the case
we define
as empty. The addition and subtraction of multi-indices is performed componentwise, and for an integer c we define
. Furthermore,
denotes the sum over all components of a multi-index. As an example consider the tuple
, an integer c = 2, and multi-indices
,
. We then have
,
,
, and
as well as
and
.
Frequently, it is also convenient to decompose the components of a flat output y or the input u into several blocks like e.g.
Since such blocks are also denoted by a subscript, in this case the first subscript always refers to the block, and shifts are denoted by a second subscript in brackets. For instance,
with some integer
, or
with some multi-index
.
3. Discrete-time systems and flatness
In this contribution, we consider time-invariant discrete-time nonlinear systems
(1)
(1) with
,
and smooth functions
. In addition, we assume that system (Equation1
(1)
(1) ) meets the submersivity condition
(2)
(2) which is common in the discrete-time literature and necessary for accessibility.
Like in Diwold et al. (Citation2022b), we call a discrete-time system (Equation1(1)
(1) ) flat if there exists a one-to-one correspondence between its solutions
and solutions
of a trivial system (arbitrary trajectories that need not satisfy any difference equation) with the same number of inputs. Before we state a more rigorous definition of discrete-time flatness, let us consider the coupling of the trajectories
and
by the system equations (Equation1
(1)
(1) ). By a repeated application of (Equation1
(1)
(1) ), all forward-shifts
,
of the state variables are obviously determined by
and the input trajectory
for
. A similar argument holds for the backward-direction: Because of the submersivity condition (Equation2
(2)
(2) ), there always exist m functions
such that the
Jacobian matrix
is regular and the map
(3)
(3) hence locally invertible. By a repeated application of its inverse
(4)
(4) all backward-shifts
,
of the state- and input variables for
are determined by
and backward-shifts
,
of the system variables ζ defined by (Equation3
(3)
(3) ). Hence, if only a finite time-interval is considered, the system trajectories
can be identified with points of a manifold
with coordinates
and suitably chosen integers
,
. If
is a function defined on this manifold, then its future values can be determined by a repeated application
of the forward-shift operator
(5)
(5) Likewise, its past values can be determined by a repeated application
of the backward-shift operator
(6)
(6) where
and
are the corresponding components of (Equation4
(4)
(4) ). Since we work in a finite-dimensional framework, it is important to emphasise that δ only yields the correct forward-shift if the integer
is chosen large enough such that the considered function h does not already depend on
. Likewise,
only yields the correct backward-shift if
is chosen large enough such that the function h does not already depend on
. Thus, throughout this contribution we assume that
and
are chosen large enough such that (Equation5
(5)
(5) ) and (Equation6
(6)
(6) ) act as correct forward- and backward-shifts on all considered functions.
Like the discrete-time static feedback linearisation problem, discrete-time flatness is considered in a suitable neighbourhood of an equilibrium of the system (Equation1
(1)
(1) ). On the manifold
, an equilibrium corresponds to a point with coordinates
with
according to (Equation3
(3)
(3) ). Hence, evaluated at an equilibrium point (or, in other words, at an equilibrium trajectory), the functions
and
have the same value as the function h itself.
Definition 3.1
(Diwold et al. (Citation2022b)) The system (Equation1(1)
(1) ) is said to be flat around an equilibrium
, if the n + m coordinate functions x and u can be expressed locally by an m-tuple of functions
(7)
(7) and their forward-shifts
(8)
(8) up to some finite order. The m-tuple (Equation7
(7)
(7) ) is called a flat output.
The representation of x and u by a flat output (Equation7(7)
(7) ) is unique and has the form
(9)
(9) The multi-index
consists of the number of forward-shifts of each component of the flat output (Equation7
(7)
(7) ) that are needed to express x and u. After substituting (Equation8
(8)
(8) ) into (Equation9
(9)
(9) ), the equations are satisfied identically. Because of Lemma A.1 (see the Appendix), this is equivalent to the condition
which we shall use later. The uniqueness of the map (Equation9
(9)
(9) ) is a consequence of the fact that all forward- and backward-shifts of a flat output are functionally independent, see Diwold et al. (Citation2022b). Furthermore, the rows of the Jacobian matrix of the right-hand side of (Equation9
(9)
(9) ) with respect to
are linearly independent, i.e. the map (Equation9
(9)
(9) ) is a submersion. With a restriction to flat outputs that are independent of backward-shifts of the system variables, Definition 3.1 leads to the concept of forward-flatness considered e.g. in Sira-Ramirez and Agrawal (Citation2004), Kaldmäe and Kotta (Citation2013), or Kolar et al. (Citation2016).
Definition 3.2
(Diwold et al. (Citation2022b)) The system (Equation1(1)
(1) ) is said to be forward-flat, if it meets the conditions of Definition 3.1 with a flat output of the form
.
For continuous-time systems, the computation of flat outputs is known to be a challenging problem. Recent research in this field can be found e.g. in Nicolau and Respondek (Citation2017), Nicolau and Respondek (Citation2019), or Gstöttner et al. (Citation2021b). For discrete-time systems, in contrast, we have shown in Kolar et al. (Citation2021) that every forward-flat system can be decomposed by coordinate transformations into a smaller-dimensional forward-flat subsystem and an endogenous dynamic feedback. Because of this property, it is possible to check the forward-flatness of a system (Equation1(1)
(1) ) similar to the well-known static feedback linearisation test by computing a certain sequence of distributions, see Kolar et al. (Citation2022). However, even though ideas for an extension of this approach to the general case of Definition 3.1 can be found in Kaldmäe (Citation2021), a computationally efficient test does not yet exist. Hence, within the present paper, we assume that a flat output is given and do not address its computation.
4. Exact linearisation
In Diwold et al. (Citation2022b), it has been shown that every flat discrete-time system (Equation1(1)
(1) ) can be exactly linearised by a dynamic feedback which leads to an input-output behaviour of the form
,
between the new input
and the considered flat output (Equation7
(7)
(7) ). In the following, we address the question whether also lower-order forward-shifts
of the flat output with a suitable multi-index
can be chosen as new input. This is particularly interesting for the subsequent design of a tracking control, since with an input-output behaviour
the order of the tracking error dynamics is given by
instead of
.
Example 4.1
Consider the system
(10)
(10) with the flat output
(11)
(11) The corresponding parameterisation (Equation9
(9)
(9) ) of the system variables by the flat output is given by
i.e. there occur forward-shifts of the flat output up to the order
. Thus, as shown in Diwold et al. (Citation2022b), by applying a dynamic feedback it is definitely possible to introduce a new input
and hence achieve an input-output behaviour
However, it is actually also possible to introduce lower-order forward-shifts of the flat output (Equation11
(11)
(11) ) as a new input: Let us define
(12)
(12) (i.e.
) and complement these equations by the forward-shift
If we solve the resulting set of equations for
and
as well as
, the original inputs are given by
(13)
(13) With the feedbackFootnote1 (Equation13
(13)
(13) ), it is possible to introduce the input (Equation12
(12)
(12) ) and achieve an input-output behaviour
However, as already mentioned in the introduction, this requires a feedback which also depends on forward-shifts of the new input.
In this introductory example, we have chosen the new input without a prior theoretical justification. The criterion for the feasibility of an m-tuple of forward-shifts
of a flat output (Equation7
(7)
(7) ) as a new input v is the possibility to realise arbitrary trajectories
,
independently of the previous trajectory of the system. More precisely, like for the original input u, at every time step k the system (Equation1
(1)
(1) ) must permit arbitrary trajectories
,
independently of its current state
and past values
,
. That is, for every possible state
and past values
,
there must exist a trajectory
,
of the original control input such that the desired trajectory
,
can be realised. The practical importance of this criterion is obvious, since otherwise there would be no guarantee that a trajectory
,
requested e.g. by a controller for the exactly linearised system can actually be achieved. Similar considerations for flat continuous-time systems can be found in Gstöttner et al. (Citation2021a), where it has to be ensured that arbitrary trajectories
can be realised.
Theorem 4.2
Let denote a multi-index with
,
. The system (Equation1
(1)
(1) ) permits arbitrary trajectories
,
for the forward-shifts
of a flat output (Equation7
(7)
(7) ) regardless of its current state
and past values
,
if and only if the differentials
(14)
(14) are linearly independent.
Proof.
The system permits arbitrary trajectories ,
if and only if there does not exist any non-trivial relation of the form
(15)
(15) Otherwise, (Equation15
(15)
(15) ) could be solved by the implicit function theorem for at least one component of some
,
, which would thus be uniquely determined by the other quantities appearing in (Equation15
(15)
(15) ). In our differential-geometric framework with the manifold
, this corresponds to the non-existence of any non-trivial relation
Because of Lemma A.1, this condition is equivalent to the linear independence of the differentials
(16)
(16) However, it is not necessary to check the linear independence of all these differentials. Since the flat output (Equation7
(7)
(7) ) is independent of the variables
, its forward-shift
is independent of
. Thus, we do not need to consider the corresponding differentials. Furthermore, since the differentials of a flat output and all its forward- and backward-shifts are linearly independent and the fact that
as well asFootnote2
there is also no need to consider the differentials
. Consequently, the linear independence of the differentials (Equation14
(14)
(14) ) implies the linear independence of the differentials (Equation16
(16)
(16) ), which completes the proof.
An immediate consequence of Theorem 4.2 is that the choice of an input with
is always possible.
Example 4.3
Consider again the system (Equation10(10)
(10) ) with the flat output (Equation11
(11)
(11) ) of Example 4.1. For the chosen new input (Equation12
(12)
(12) ) with
and
, the differentials (Equation14
(14)
(14) ) of Theorem 4.2 are given by
and obviously linearly independent. Thus, the system permits indeed arbitrary trajectories
,
for the new input (Equation12
(12)
(12) ) independently of its current state
and past values of the system trajectory. The latter play no role in this case, since the flat output (Equation11
(11)
(11) ) is a forward-flat output. If, however, we would try to use the flat output (Equation11
(11)
(11) ) itself as a new input
then it is obvious that the possible trajectories
,
are restricted by the current state
. Accordingly, it can be observed that the differentials
of condition (Equation14
(14)
(14) ) with
are not linearly independent.
4.1. Construction of the linearising feedback in the general case
Theorem 4.2 ensures that every trajectory ,
of the new input
can be realised independently of the previous trajectory of the system up to the time instant k by applying a suitable trajectory of the control input
,
. In the following, we show how the required trajectory
can be determined by a suitable state feedback. In other words, we derive a feedback which actually introduces
as new input. For simplicity we assume
, since the choice A = R is possible anyway. The basic idea for the construction of the linearising feedback is similar as in the continuous-time case in Gstöttner et al. (Citation2021a). However, due to the different transformation laws of continuous-time and discrete-time systems, the proof is adapted accordingly.
Because of the linear independence of the differentials (Equation14(14)
(14) ) and
, there exists a selection
of
differentials from the set
such that
As a consequence of Lemma A.1, there exists a diffeomorphism
such that locally
(17)
(17) holds identically. Its inverse is given by
where
is the parameterisation of the state variables according to (Equation9
(9)
(9) ). Based on the diffeomorphism (Equation17
(17)
(17) ), the quantities
can be introduced as new input of the system (Equation1
(1)
(1) ) by a dynamic feedback with the controller state
. Since the functions
belong to the set
, their forward-shifts
belong to the set
and can hence be expressed as functions of x,
, and
. The corresponding components of (Equation17
(17)
(17) ) are denoted in the following as
.
Theorem 4.4
Consider a system (Equation1(1)
(1) ) with a flat output (Equation7
(7)
(7) ) and a multi-index
which satisfies the condition of Theorem 4.2. With a feedback
(18)
(18) with
, the closed-loop system
(19)
(19) has the input-output behaviour
.
Proof.
First, let us extend the feedback (Equation18(18)
(18) ) by the trivial equations
, such that the extended closed-loop system
(20)
(20) has the form of a classical state representation with the input
. In the following, we show that with the transformation
(21)
(21) derived from (Equation17
(17)
(17) ) the system is equivalent to the discrete-time Brunovsky normal form
(22)
(22) From the inverse
(23)
(23) of (Equation21
(21)
(21) ) and
, it is clear that the transformation is actually a state transformation for the extended closed-loop system (Equation20
(20)
(20) ). The input is only renamed according to
. Because of the transformation law for discrete-time systems, applying the transformation (Equation23
(23)
(23) ) to the Brunovsky normal form (Equation22
(22)
(22) ) yields
Using the identityFootnote3
as well as
and
, the system representation (Equation20
(20)
(20) ) follows. Thus, the extended closed-loop system (Equation20
(20)
(20) ) is equivalent to the Brunovsky normal form (Equation22
(22)
(22) ) via a state transformation and a renaming of the input. Consequently, it has the linear input-output behaviour
. Since the closed-loop system (Equation19
(19)
(19) ) has the input v instead of
, it has the input-output behaviour
.
In contrast to a classical static or dynamic feedback, the feedback (Equation18(18)
(18) ) depends besides the new input v also on its forward-shifts up to the order R−A. This is similar to the continuous-time case, where feedbacks which depend also on time derivatives of the new input have been used successfully for the exact linearisation of flat systems since the nineties of the last century, see e.g. Delaleau and Rudolph (Citation1998) or Rudolph (Citation2021). For a practical application, this means that at every time step not only the value of v itself needs to be specified but also its future values. Hence, if a control law for the exactly linearised system
is designed, also expressions for the forward-shifts of v occuring in (Equation18
(18)
(18) ) have to be derived. If the system
shall be controlled by a pure feedforward control, this is of course straightforward as long as the desired reference trajectory
is known a sufficient number of time steps ahead (note that with such a feedforward control already a dead-beat behaviour can be achieved). In Section 5, it is shown how the required forward-shifts of v can be determined also for a more general type of tracking control.
Remark 4.1
For , the controller state z is empty and the feedback (Equation18
(18)
(18) ) degenerates to a feedback of the form
. Since there is no controller state but the feedback depends on forward-shifts of the closed-loop input v, such a feedback is a discrete-time quasi-static feedback as it is defined in Aranda-Bricaire and Kotta (Citation2001). For continuous-time systems, a quasi-static feedback depends on time derivatives instead of forward-shifts of the closed-loop input, see Delaleau and Rudolph (Citation1998) or Rudolph (Citation2021).
4.2. Flat outputs that are independent of future values of the input
In the remainder of the paper, we consider flat outputs of the form
(24)
(24) that are independent of future values of the input u. With this restriction, it is possible to derive further results in a similar way as in Gstöttner et al. (Citation2021a) for flat outputs of continuous-time systems which are independent of time derivatives of u. In the following, we show how to systematically construct a ‘minimal’ multi-index
such that with
the condition of Theorem 4.2 is met and
for all other feasible multi-indices A. The basic idea is to replace the coordinates
of the manifold
step by step by forward-shifts
of the flat output (Equation24
(24)
(24) ) with
,
, such that finally we have coordinates
.Footnote4 For this purpose, we forward-shift every component of the flat output (Equation24
(24)
(24) ) until it depends explicitly on the input u, and introduce as many of these functions as possible as new coordinates. Subsequently, the other components of the flat output are further shifted until they depend explicitly on the remaining components of u, and again as many of these functions as possible are introduced as new coordinates. Continuing this procedure until all m components of the original input u have been replaced by forward-shifts of the flat output (Equation24
(24)
(24) ) yields a minimal multi-index
such that with
the condition of Theorem 4.2 is satisfied. In the following, we explain the procedure in detail.
In the first step, determine the multi-index such that
and define
. Then reorder the components of the flat output (Equation24
(24)
(24) ) and the input u such that
, where
,
, and
consist of the first
components of φ, u, and
, respectively. Now apply the coordinate transformation
(25)
(25) which replaces the inputs
and their forward-shifts by
and its forward-shifts. The remaining inputs
and their forward-shifts are left unchanged.
Remark 4.2
The coordinate transformation (Equation25(25)
(25) ) is indeed regular, since in a sufficiently small neighbourhood of an equilibrium point the condition
implies
for
. In the new coordinates, the forward-shift operator (Equation5
(5)
(5) ) has the form
with
denoting the inverse of the transformation (Equation25
(25)
(25) ).
After the coordinate transformation (Equation25(25)
(25) ) we have
with
,
,
, and
. The functions
are independent of
, since otherwise
would have been larger than
.
In the second step, determine the multi-index such that
and let
. Then reorder the components of the flat output belonging to
and the components of the input belonging to
such that
, where
,
, and
consist of the first
components of
,
, and
, respectively. Now apply the coordinate transformationFootnote5
(26)
(26) which replaces the inputs
and their forward-shifts by
and its forward-shifts. The remaining inputs
and their forward-shifts are left unchanged. After the coordinate transformation (Equation26
(26)
(26) ) we have
where
,
,
, and
with the inverse
of the transformation (Equation26
(26)
(26) ). The functions
are again independent of
, since otherwise
would have been larger than
.
This procedure is now continued until in some step s we obtain a multi-index with
such that
. Thus, with
and
we can apply the coordinate transformation
which replaces the remaining inputs
by
. With the constructed coordinates, the flat output and its forward-shifts up to the orders
are finally given by
(27)
(27) with
and
.
Theorem 4.5
For every flat output (Equation24(24)
(24) ) of the system (Equation1
(1)
(1) ), the above procedure terminates after
steps. The multi-index
formed by the constructed multi-indices
has the following properties:
, and
if and only if the flat output (Equation24
(24)
(24) ) is independent of the variables
.
With
the condition of Theorem 4.2 is met, and
for all other multi-indices A that satisfy this condition.
Furthermore, (Equation27(27)
(27) ) is actually of the form
(28)
(28) where
denotes the components of the multi-index R corresponding to the components
of the flat output.
Proof.
In every step of the procedure, it is possible to forward-shift the remaining components
of the flat output until every component depends explicitly on one of the remaining inputs
(
and
for i = 1). Otherwise, the property that all forward-shifts of a flat output up to arbitrary order are functionally independent could not hold. Since in every step we have
, at least one of the original inputs u can be eliminated, and the procedure terminates after at most
steps.
Now let us prove that . If the parameterisation of x and
by the flat output is substituted into (Equation27
(27)
(27) ) and
,
renamed according to
, then the equations
(29)
(29) must be satisfied identically. Since both x and
depend only on forward-shifts of the flat output up to the order R−1, and the forward-shifts
of
on the left-hand side of (Equation29
(29)
(29) ) are not contained in the quantities
on the right-hand side, this can only hold in the case
. By the same argument, it is clear that (Equation27
(27)
(27) ) is actually of the form (Equation28
(28)
(28) ).
To prove , recall that there exist exactly n independent linear combinations of the differentials of a flat output and its forward-shifts which are contained in
. In the coordinates constructed during the above procedure, the forward-shifts of the flat output up to the order κ are given by the expressions in (Equation27
(27)
(27) ), and the higher forward-shifts are forward-shifts of v. Thus, there can exist at most
independent linear combinations which are contained in
, and hence
. If the flat output (Equation24
(24)
(24) ) is independent of
, then all expressions in (Equation27
(27)
(27) ) are independent of these variables. Consequently, there exist exactly
independent linear combinations of the differentials of the flat output and its forward-shifts which are contained in
, and hence
.
To prove the relation with Theorem 4.2, we use again the representation (Equation27(27)
(27) ). In these coordinates, it can be immediately observed that with
the differentials (Equation14
(14)
(14) ) are linearly independent. Moreover, it can also be seen that there exist exactly
independent linear combinations of the differentials of the flat output and its forward-shifts which are contained in
. If there exists a multi-index A such that the differentials (Equation14
(14)
(14) ) are linearly independent, then there can exist at most
independent linear combinations of the differentials of the flat output and its forward-shifts which are contained in
. Thus, the existence of such a multi-index with
would be a contradiction.
Since the condition of Theorem 4.2 is met, the forward-shifts of the flat output (Equation24
(24)
(24) ) can be introduced as a new input v by a (dynamic) feedback according to Theorem 4.4, where the controller state z corresponds to suitable forward-shifts of the flat output that are contained in
. However, the representation (Equation28
(28)
(28) ) of
offers a convenient alternative. With the map
defined by
we can formulate the following corollary.
Corollary 4.6
A flat system (Equation1(1)
(1) ) with a flat output of the form (Equation24
(24)
(24) ) can be exactly linearised with respect to this flat output by a feedback of the form
(30)
(30) such that the input-output behaviour of the closed-loop system is given by
. If the flat output (Equation24
(24)
(24) ) is independent of the variables
, then the feedback has the form
(31)
(31) and
.
In contrast to a dynamic feedback (Equation18(18)
(18) ) with the controller state z, the feedback (Equation30
(30)
(30) ) depends only on the state x and past values
of the system trajectory. Since the values of
are available anyway from past measurements and/or past control inputs (depending on the choice of ζ, cf. (Equation3
(3)
(3) )), the implementation of a feedback (Equation30
(30)
(30) ) is straightforward. However, even though there is no dedicated controller dynamics as in (Equation18
(18)
(18) ), the required past values
have to be stored. Thus, the feedback (Equation30
(30)
(30) ) can be considered either as a special case of a dynamic feedback or a generalisation of the class of discrete-time quasi-static feedbacks (as they are defined in Aranda-Bricaire and Kotta (Citation2001)) to backward-shifts
of the system variables. A feedback of the special form (Equation31
(31)
(31) ) has been used in Diwold et al. (Citation2022a) for the exact linearisation of the discrete-time model of a gantry crane.
Remark 4.3
If the flat output (Equation24(24)
(24) ) is of the form
– i.e. independent of the input u as well as past values
of the system trajectory – then the proposed procedure for the construction of a minimal multi-index κ is from a technical point of view similar to the inversion algorithm stated e.g. in Kotta (Citation1995), see also Kotta and Nijmeijer (Citation1991) or Kotta (Citation1990). In the inversion algorithm, which deals with the forward right-invertibility of a system (Equation1
(1)
(1) ) with a (not necessarily flat) output
and possibly also
, the components of the output are also shifted until the Jacobian matrices with respect to the input variables meet certain rank conditions. However, it should be noted that in every step of the inversion algorithm only one-fold shifts of the components of the output are performed. Furthermore, it should also be noted that the so-called invertibility indices computed by the inversion algorithm are related to but not the same as the components of the constructed minimal multi-index κ.
5. Tracking control design
Like in the continuous-time case, the exact linearisation can be used as a first step in the design of a flatness-based tracking control. For an exact linearisation according to Theorem 4.4 with the choice A = R, which is always possible, the closed-loop system has the form of a classical state representation. Thus, the design of a tracking control is straightforward. For , however, the closed-loop system depends also on forward-shifts
of the new input v. Thus, when designing a control law for v, also the corresponding expressions for these forward-shifts have to be derived. For a discussion of this problem in the continuous-time case see e.g. Delaleau and Rudolph (Citation1998), Rudolph (Citation2021), or Gstöttner et al. (Citation2021a).
In the following, we demonstrate the design of a tracking control for flat outputs of the form (Equation24(24)
(24) ) and an exact linearisation by a feedback (Equation30
(30)
(30) ) according to Corollary 4.6. We assume that the multi-index κ which determines the new input v has been constructed in accordance with the procedure of Section 4.2, and make use of the corresponding notation. With the control law
(32)
(32) for the exactly linearised system
, the tracking error
with respect to an arbitrary reference trajectory
is subject to the tracking error dynamics
(33)
(33) The eigenvalues of the
decoupled tracking error systems (Equation33
(33)
(33) ) can be placed arbitrarily by a suitable choice of the coefficients
. The forward-shifts
that are needed in the linearising feedback (Equation30
(30)
(30) ) can be determined by shifting (Equation32
(32)
(32) ) and using
,
, which leads to equations of the form
(34)
(34) Since the future values
of the flat output which appear in (Equation32
(32)
(32) ) and (Equation34
(34)
(34) ) are in general not available as measurements, we use again the expressions (Equation28
(28)
(28) ) and finally obtain the system of equations
(35)
(35) Because of the triangular dependence of the functions
of (Equation28
(28)
(28) ) on the variables
,
, …, Equations (Equation35
(35)
(35) ) have a triangular structure and can be solved systematically from top to bottom for all elements of
as a function of
, x, and the reference trajectory
, i.e.
(36)
(36) Substituting (Equation36
(36)
(36) ) into the linearising feedback (Equation30
(30)
(30) ) yields a tracking control law of the form
Besides the known reference trajectory
, this tracking control law depends like the linearising feedback (Equation30
(30)
(30) ) only on the state x and past values
of the system trajectory. Thus, if the state x of system (Equation1
(1)
(1) ) can be measured, an implementation is again straightforward.
Remark 5.1
If all coefficients in the control law (Equation32
(32)
(32) ) are set to zero, all eigenvalues of the tracking error dynamics (Equation33
(33)
(33) ) are located at the origin of the complex plane and a dead-beat control is obtained. In this case, the system of equations (Equation35
(35)
(35) ) drastically simplifies. Because of
, the forward-shifts of v required in the linearising feedback (Equation30
(30)
(30) ) are simply higher-order forward-shifts of the reference trajectory
.
6. Examples
As already mentioned in the introduction, an important application for the concept of discrete-time flatness are discretised continuous-time systems. In the following, we illustrate our results by the discretised models of a wheeled mobile robot and a 3DOF helicopter.
6.1. Wheeled mobile robot
As first example let us consider a wheeled mobile robot, which has already been studied in the context of discrete-time dynamic feedback linearisation in Orosco-Guerrero et al. (Citation2004) and Aranda-Bricaire and Moog (Citation2008). The continuous-time system is given by
(37)
(37) and is also known as kinematic car model, see e.g. Nijmeijer and van der Schaft (Citation1990). The state variables
and
describe the position and
the angle of the mobile robot. The control inputs
and
represent the translatory and the angular velocity. An exact discretisation of system (Equation37
(37)
(37) ) with the sampling time T>0 yields the discrete-time system
(38)
(38) cf. Orosco-Guerrero et al. (Citation2004) or Sira-Ramirez and Rouchon (Citation2003). With the input transformation
(39)
(39) this system can be simplified to
(40)
(40) As shown in Kolar et al. (Citation2021), system (Equation40
(40)
(40) ) is not forward-flat. However, it is flat in the more general sense of Definition 3.1. With the choice
for the variables ζ according to (Equation3
(3)
(3) ), a flat output is given by
(41)
(41) The corresponding parameterisation (Equation9
(9)
(9) ) of the system variables has the form
(42)
(42) Thus, the orders of the highest forward-shifts of the flat output that appear in (Equation9
(9)
(9) ) are given by
, and an exact linearisation by a dynamic feedback which leads to an input-output behaviour
(43)
(43) is possible with the standard approach discussed in Diwold et al. (Citation2022b).
In the following, we investigate whether also lower-order forward-shifts of the flat output (Equation41(41)
(41) ) can be chosen as a new input. Since the flat output is of the form (Equation24
(24)
(24) ), we can apply the procedure of Section 4.2 and use the corresponding notation. In the first step, both components of the flat output have to be shifted until they depend explicitly on the input
. Because of
and
this is the case for the second and the first forward-shift, respectively. Hence, we obtain
, and since
is independent of
we clearly have
.Footnote6 At this point, we can choose whether we introduce
or
as new input
.Footnote7 In the following, we proceed with
and
. Consequently, we get
and
. After the coordinate transformation
which replaces
and its forward-shifts by
and its forward-shifts, we have
In the second step, we have to shift the remaining component
of the flat output until it depends explicitly on the remaining input
. This is the case for its second forward-shift
(44)
(44) Because of
, the procedure terminates with
and
. After introducing (Equation44
(44)
(44) ) as new input
, the forward-shifts of the flat output (Equation41
(41)
(41) ) up to the orders
are given by
(45)
(45) Substituting (Equation45
(45)
(45) ) as well as
into the parameterisation (Equation42
(42)
(42) ) of the control input
yields a feedback of the form
(46)
(46) such that the input-output behaviour of the closed-loop system is given by
(47)
(47) cf. Corollary 4.6. Thus, in contrast to (Equation43
(43)
(43) ), we can actually use the second instead of the third forward-shift of the first component of the flat output as a new input.
For the exactly linearised system (Equation47(47)
(47) ), the design of a tracking control is now straightforward. The control law
results in the linear tracking error dynamics
with a total order of
instead of
with the standard approach. Since the linearising feedback (Equation46
(46)
(46) ) depends also on
, the system of equations (Equation35
(35)
(35) ) is given by
with the functions
according to (Equation45
(45)
(45) ). This system of equations can be solved from top to bottom for
, and
as a function of
, x, and the reference trajectory
. Substituting the solution into the linearising feedback (Equation46
(46)
(46) ) yields a control law of the form
With the inverse of the input transformation (Equation39
(39)
(39) ), the corresponding control law for the system (Equation38
(38)
(38) ) or (Equation37
(37)
(37) ) with the original inputs
and
follows. The presence of the variable
is no obstacle for a practical implementation, since it simply represents a past value of
.
6.2. 3DOF helicopter
As a second example, let us consider the three-degrees-of-freedom helicopter laboratory experiment of Kiefer et al. (Citation2004). The continuous-time system is given by
(48)
(48) with the travel angle
, the elevation angle
, and the pitch angle
as well as the corresponding angular velocities
,
, and
. The control inputs
and
are the sum and the difference of the thrusts of the two propellers. The constant coefficients
,
,
and
depend on the masses and the geometric parameters. As shown in Kiefer et al. (Citation2004), the system (Equation48
(48)
(48) ) is flat and a flat output is given byFootnote8
(49)
(49) Since the system equations are significantly more complex than those of the wheeled mobile robot of Section 6.1, instead of an exact discretisation we perform an approximate discretisation with the Euler-method. The resulting system
(50)
(50) is forward-flat, and the flat output (Equation49
(49)
(49) ) is preserved.Footnote9 This can be checked either with the systematic tests proposed in Kolar et al. (Citation2021) and Kolar et al. (Citation2022), or by simply verifying that all state- and input variables of (Equation50
(50)
(50) ) can indeed be expressed by (Equation49
(49)
(49) ) and its forward-shifts. The corresponding parameterisation (Equation9
(9)
(9) ) is of the form
(51)
(51) with the orders of the highest required forward-shifts given by
. Thus, an exact linearisation with a dynamic feedback according to the standard approach discussed in Diwold et al. (Citation2022b) would lead to an input-output behaviour
(52)
(52) Since the flat output (Equation49
(49)
(49) ) is of the form (Equation24
(24)
(24) ), we can again apply the procedure of Section 4.2 in order to determine whether also lower-order forward-shifts can be used as new input. In the first step, both components of the flat output have to be shifted until they depend explicitly on the input u. Because of
and
this is the case for the second forward-shifts. Hence, we obtain
, and since
is independent of
we obviously have
. Again, we can choose whether we introduce
or
as new input
. In the following we proceed with
and
, and get
as well as
. The other choice would lead to a feedback with a singularity for
, which is not suitable for a practical application since the pitch angle
is zero in an equilibrium position. After the coordinate transformation
which replaces
and its forward-shifts by
and its forward-shifts, we have
In the second step, we have to shift the remaining component
of the flat output until it depends explicitly on the remaining input
. This is the case for its fourth forward-shift
(53)
(53) Because of
, the procedure terminates with
and
. After introducing (Equation53
(53)
(53) ) as new input
, the forward-shifts of the flat output (Equation49
(49)
(49) ) up to the orders
are given by
(54)
(54) Substituting (Equation54
(54)
(54) ) as well as
and
into the parameterisation (Equation51
(51)
(51) ) of the control input u yields a feedback of the form
(55)
(55) such that the input-output behaviour of the closed-loop system is given by
(56)
(56) Thus, in contrast to (Equation52
(52)
(52) ), we can actually use the second instead of the fourth forward-shift of the first component of the flat output as a new input. Since the linearising feedback (Equation55
(55)
(55) ) does not depend on backward-shifts of the system variables, it is a discrete-time quasi-static feedback in the sense of Aranda-Bricaire and Kotta (Citation2001) – see the discussion after Corollary 4.6.
For the exactly linearised system (Equation56(56)
(56) ), the design of a tracking control is again straightforward. The control law
results in the linear tracking error dynamics
with a total order of
instead of
. The system of equations (Equation35
(35)
(35) ) is given by
with the functions
according to (Equation54
(54)
(54) ), and can be solved from top to bottom for
, and
as a function of
and the reference trajectory
. Substituting the solution into the linearising feedback (Equation55
(55)
(55) ) finally yields a control law of the form
7. Conclusion
In this contribution we have investigated the exact linearisation of flat discrete-time systems. Since an exact linearisation can always be achieved by choosing the highest forward-shifts of the flat output in (Equation9(9)
(9) ) as new input
, the point of departure of our considerations was the question whether also lower-order forward-shifts
with
can be used. Similar to the continuous-time case, this allows e.g. to achieve a lower-order error dynamics for a subsequently designed tracking control. Concerning the choice of a feasible new input
, we have derived conditions which are formulated in terms of the linear independence of certain differentials and can be checked in a straightforward way. Furthermore, we have shown how the new input v can be introduced by a suitable dynamic feedback. For the practically quite important case of flat outputs (Equation24
(24)
(24) ) which do not depend on future values of the control input, we have shown how to construct a minimal multi-index κ such that
is a feasible input and
for all other feasible inputs
. Such an input
can be introduced by a feedback (Equation30
(30)
(30) ) which depends only on the state x as well as past values of the system variables. This is particularly convenient for an implementation, since past values of the system variables are available anyway from past measurements or past inputs, which only need to be stored. Moreover, we have shown that such an exact linearisation can be used as a basis for the design of a tracking control law which again only depends on x as well as past values of the system variables and the reference trajectory. To illustrate our results, we have computed tracking control laws for the discretised models of a wheeled mobile robot and a 3DOF helicopter.
Disclosure statement
No potential conflict of interest was reported by the author(s).
Additional information
Funding
Notes
1 The feedback (Equation13(13)
(13) ) is actually a discrete-time quasi-static feedback, see e.g. Aranda-Bricaire and Kotta (Citation2001).
2 Note that because of (Equation3(3)
(3) ) the quantities ζ are functions of x and u. Hence, their parameterisation by the flat output (Equation7
(7)
(7) ) can be obtained immediately from (Equation9
(9)
(9) ).
3 If the parameterisation (Equation9(9)
(9) ) of the system variables is substituted into (Equation1
(1)
(1) ), then the equations are satisfied identically.
4 Since the manifold is finite-dimensional, in fact some of the higher-order forward-shifts of u cannot be replaced by forward-shifts of the flat output and must be kept as coordinates (unless the system (Equation1
(1)
(1) ) is static feedback linearisable and (Equation24
(24)
(24) ) a linearising output).
5 The functions depend on forward-shifts of
, and since we work on a finite-dimensional manifold
these forward-shifts are only available up to the order
. Thus, some higher-order forward-shifts of
must be kept as coordinates on
and cannot be replaced by forward-shifts of
. However, as long as
is chosen sufficiently large, this does not affect our considerations.
6 In contrast to Section 4.2, for the sake of simplicity we do not renumber the components and
of the input.
7 To emphasise that could in general consist of more than one component we write
.
8 The components of the flat output are already sorted in such a way that we do not need a renumbering during our calculations.
9 Neither an exact nor an approximate discretisation necessarily preserve the flatness or the static feedback linearisability of a continuous-time system, see e.g. Diwold et al. (Citation2022b), Diwold et al. (Citation2022a), or Grizzle (Citation1986) for a further discussion.
References
- Aranda-Bricaire, E., & Kotta, Ü. (2001). Generalized controlled invariance for discrete-time nonlinear systems with an application to the dynamic disturbance decoupling problem. IEEE Transactions on Automatic Control, 46(1), 165–171. https://doi.org/10.1109/9.898712
- Aranda-Bricaire, E., & Moog, C. (2008). Linearization of discrete-time systems by exogenous dynamic feedback. Automatica, 44(7), 1707–1717. https://doi.org/10.1016/j.automatica.2007.10.030
- Delaleau, E., & Rudolph, J. (1998). Control of flat systems by quasi-static feedback of generalized states. International Journal of Control, 71(5), 745–765. https://doi.org/10.1080/002071798221551
- Diwold, J., Kolar, B., & Schöberl, M. (2022a). Discrete-time flatness-based control of a gantry crane. Control Engineering Practice, 119, Article ID 104980. https://doi.org/10.1016/j.conengprac.2021.104980
- Diwold, J., Kolar, B., & Schöberl, M. (2022b). A trajectory-based approach to discrete-time flatness. IEEE Control Systems Letters, 6, 289–294. https://doi.org/10.1109/LCSYS.2021.3071177
- Fliess, M., Lévine, J., Martin, P., & Rouchon, P. (1995). Flatness and defect of non-linear systems: Introductory theory and examples. International Journal of Control, 61(6), 1327–1361. https://doi.org/10.1080/00207179508921959
- Fliess, M., Lévine, J., Martin, P., & Rouchon, P. (1999). A Lie–Bäcklund approach to equivalence and flatness of nonlinear systems. IEEE Transactions on Automatic Control, 44(5), 922–937. https://doi.org/10.1109/9.763209
- Grizzle, J. (1986). Feedback linearization of discrete-time systems. In A. Bensoussan & J. Lions (Eds.), Analysis and optimization of systems (Vol. 83, pp. 273–281). Springer.
- Gstöttner, C., Kolar, B., & Schöberl, M. (2021a). Control of (x,u)-flat systems by quasi-static feedback of classical states. arXiv e-prints. arXiv:2110.12995 [math.OC].
- Gstöttner, C., Kolar, B., & Schöberl, M. (2021b). Necessary and sufficient conditions for the linearisability of two-input systems by a two-dimensional endogenous dynamic feedback. International Journal of Control. https://doi.org/10.1080/00207179.2021.2015542
- Guillot, P., & Millérioux, G. (2020). Flatness and submersivity of discrete-time dynamical systems. IEEE Control Systems Letters, 4(2), 337–342. https://doi.org/10.1109/LCSYS.7782633
- Kaldmäe, A. (2021). Algebraic necessary and sufficient condition for difference flatness. International Journal of Control. https://doi.org/10.1080/00207179.2021.1908598
- Kaldmäe, A., & Kotta, Ü. (2013). On flatness of discrete-time nonlinear systems. In Proceedings 9th IFAC symposium on nonlinear control systems (pp. 588–593).
- Kiefer, T., Kugi, A., & Kemmetmüller, W. (2004). Modeling and flatness-based control of a 3 DOF helicopter laboratory experiment. In Proceedings 6th IFAC symposium on nonlinear control systems (pp. 207–212).
- Kolar, B., Diwold, J., & Schöberl, M. (2022). Necessary and sufficient conditions for difference flatness. IEEE Transactions on Automatic Control, https://doi.org/10.1109/TAC.2022.3151615
- Kolar, B., Kaldmäe, A., Schöberl, M., Kotta, Ü., & Schlacher, K. (2016). Construction of flat outputs of nonlinear discrete-time systems in a geometric and an algebraic framework. IFAC-PapersOnLine, 49(18), 796–801. https://doi.org/10.1016/j.ifacol.2016.10.263
- Kolar, B., Schöberl, M., & Diwold, J. (2021). Differential-geometric decomposition of flat nonlinear discrete-time systems. Automatica, 132, Article ID 109828. https://doi.org/10.1016/j.automatica.2021.109828
- Kotta, Ü. (1990). Right inverse of a discrete time non-linear system. International Journal of Control, 51(1), 1–9. https://doi.org/10.1080/00207179008934047
- Kotta, Ü. (1995). Inversion method in the discrete-time nonlinear control systems synthesis problems (Vol. 205). Springer.
- Kotta, Ü., & Nijmeijer, H. (1991). Dynamic disturbance decoupling for nonlinear discrete-time systems (in Russian). Proceedings of the Academy of Sciences of USSR Technical Cybernetics, 52–59.
- Nicolau, F., & Respondek, W. (2017). Flatness of multi-input control-affine systems linearizable via one-fold prolongation. SIAM Journal on Control and Optimization, 55(5), 3171–3203. https://doi.org/10.1137/140999463
- Nicolau, F., & Respondek, W. (2019). Normal forms for multi-input flat systems of minimal differential weight. International Journal of Robust and Nonlinear Control, 29(10), 3139–3162. https://doi.org/10.1002/rnc.v29.10
- Nijmeijer, H., & van der Schaft, A. (1990). Nonlinear dynamical control systems. Springer.
- Orosco-Guerrero, R., Velasco-Villa, M., & Aranda-Bricaire, E. (2004). Discrete-time controller for a wheeled mobile robot. In Proceedings XI congreso latinoamericano de control automatico.
- Rudolph, J. (2021). Flatness-based control: An introduction. Shaker Verlag.
- Sira-Ramirez, H., & Agrawal, S. (2004). Differentially flat systems. Marcel Dekker.
- Sira-Ramirez, H., & Rouchon, P. (2003). Exact delayed reconstructors in nonlinear discrete-time systems control. In A. Zinober & D. Owens (Eds), Nonlinear and adaptive control (Vol. 281, pp. 351–360). Springer.
Appendix. Supplements
The following lemma addresses the relation between the functional independence of functions and the linear independence of their differentials.
Lemma A.1
Consider a set of smooth functions as well as another smooth function h which are all defined on the same manifold. Then
(A1)
(A1) is equivalent to the existence of a smooth function
such that locally
(A2)
(A2) holds identically. If the differentials
are linearly independent, then the function ψ is unique.
Proof.
Let denote the maximal number of linearly independent differentials from the set
, and assume that these differentials are given by
(which is always possible by a renumbering). Then the functions
can be introduced as (a part of the) coordinates
on the considered manifold. Moreover, by construction, also the functions
can depend only on the coordinates z. With such coordinates, (EquationA1
(A1)
(A1) ) is equivalent to
(A3)
(A3) Thus, the function h can only depend on
, and hence be written in original coordinates as
Conversely, it is clear that
implies (EquationA3
(A3)
(A3) ) and hence (EquationA1
(A1)
(A1) ). In the case l = k, all functions
can be introduced as new coordinates, and no choice of l independent ones is necessary. Thus, the representation (EquationA2
(A2)
(A2) ) is then unique.