Représentation d'état

Un article de Wikipédia, l'encyclopédie libre.
(Redirigé depuis Espace d'état)
Aller à : navigation, rechercher

En automatique, une représentation d'état permet de modéliser un système dynamique sous forme matricielle en utilisant des variables d'état. Cette représentation, qui peut être linéaire ou non, continue ou discrète, permet de déterminer l'état du système à n'importe quel instant futur si l'on connaît l'état à l'instant initial et le comportement des variables exogènes qui influent sur le système. Pour un bref historique de la représentation d'état, voir Histoire de l'automatique.

Variables d'état[modifier | modifier le code]

Un système peut être entièrement décrit à l'aide d'un ensemble de variables. Les variables d'état sont des grandeurs, qui le plus souvent ont une signification physique, et qui sont rassemblées dans un vecteur x. La connaissance de toutes les variables d'état à un instant t quelconque ainsi que de l'entrée sur un intervalle \left[ t,t+T\right], où T est arbitraire, permet de connaître la valeur de toutes les variables du système à l'instant t+T. Le nombre de variables d'état, désigné par la lettre n, est l'ordre du système.

Systèmes linéaires[modifier | modifier le code]

Représentations[modifier | modifier le code]

Représentation d'état matricielle

Dans la première partie de cet article nous ne considèrerons que des systèmes linéaires invariants (ou stationnaires).

La représentation d'état de ces systèmes, quand ils sont à temps continu, s'écrit de la manière suivante[1] :

\left\{ 
\begin{array}{c}
\dot{x}=A~x+B~u \\ 
y=C~x+D~u
\end{array}
\right.

 x\left( t\right) \in \mathbb{R}^{n} : colonne qui représente les n variables d'état
 u\left( t\right) \in \mathbb{R}^{m} : colonne qui représente les m commandes
 y\left( t\right) \in \mathbb{R}^{p} : colonne qui représente les p sorties


 A \in \mathbb{R}^{n\times n}  : Matrice d'état
 B \in \mathbb{R}^{n\times m}  : Matrice de commande
 C \in \mathbb{R}^{p\times n}  : Matrice d'observation
 D \in \mathbb{R}^{p\times m}  : Matrice d'action directe

Les colonnes  x, u et  y représentent des vecteurs \mathbf{x}\in \mathcal{X}, \mathbf{u}\in \mathcal{U} et \mathbf{y}\in \mathcal{Y} dans des bases des espaces vectoriels \mathcal{X}, \mathcal{U} et  \mathcal{Y}, appelés espace d'état, espace des commandes et espace des sorties, et isomorphes à \mathbb{R}^{n}, \mathbb{R}^{m} et \mathbb{R}^{p} respectivement.

De même les matrices A, B, C et D représentent des applications linéaires \mathbf{A}\in \mathcal{L}\left(\mathcal{X},\mathcal{X}\right), \mathbf{B}\in \mathcal{L}\left(\mathcal{U},\mathcal{X}\right), \mathbf{C}\in \mathcal{L}\left(\mathcal{X},\mathcal{Y}\right) et \mathbf{D}\in \mathcal{L}\left(\mathcal{U},\mathcal{Y}\right), respectivement, dans les bases considérées.

Les vecteurs \mathbf{x}, \mathbf{u} et \mathbf{y} vérifient les équations

\left\{ 
\begin{array}{c}
\mathbf{\dot{x}}=\mathbf{A~x+B~u} \\ 
\mathbf{y}=\mathbf{C}~\mathbf{x}+\mathbf{D}~\mathbf{u}
\end{array}
\right.

Dans certains cas, la représentation d'état matricielle introduite en premier lieu sera la plus commode; dans d'autres, celle mettant en jeu des vecteurs et des applications linéaires, et que nous appellerons représentation d'état intrinsèque (elle est également dite géométrique[2]) sera plus appropriée.

Intégration de l'équation d'état[modifier | modifier le code]

L'état du système est un résumé exhaustif du passé du système. En effet, connaissant l'état x(t_i), et la commande u(t) sur l'intervalle fini [ t_i ,~ t_f ], on peut exprimer l'état x(t_f), grâce aux calculs sur l'exponentielle d'une matrice :

 x(t_f) = x(t_i)e^{A(t_f-t_i)} + \int_{t_i}^{t_f}e^{A(t_f-\tau)}B u(\tau)d\tau

Changement de base[modifier | modifier le code]

Considérons le changement de variable z=Px, avec P \in \mathbb R^{n \times n} et inversible. Ce changement de variable correspond à un changement de base dans l'espace d'état. Le système se récrit donc comme suit :

\begin{cases} \dot z = PAx + PBu & = PAP^{-1}z + PBu \\ y = Cx + Du & = CP^{-1}z + Du\end{cases}

On voit donc qu'il existe une infinité de représentations matricielles d'un système d'état. En revanche, la représentation intrinsèque est unique.

Pôles et stabilité[modifier | modifier le code]

Pôles[modifier | modifier le code]

Les valeurs propres de la matrice d'état A (ou, de manière équivalente, de l'endomorphisme \mathbf{A} représenté par cette matrice) sont les pôles du système. Soit p un pôle ; son ordre q est défini comme étant le degré maximal des diviseurs élémentaires de la matrice polynômiale sI_{n}-A multiples du polynôme s-p\in \mathbb{C}\left[ s\right], ou encore l'ordre de multiplicité de p en tant que racine du polynôme minimal de A, soit encore l'ordre maximal des blocs de Jordan de A ayant pour valeur propre p.

Cette dernière caractérisation et l'application de la réduction de Jordan à la théorie de systèmes différentiels montre que les conditions suivantes sont équivalentes :

(i) le système a un pôle p d'ordre supérieur ou égal à q;
(ii) avec u=0, il existe un état initial x_{0} \neq 0 tel que l'équation d'état a une solution de la forme x\left( t\right) =t^{q-1}e^{pt}x_{0}.

Stabilité[modifier | modifier le code]

De ce qui précède, il résulte les propositions suivantes:

  • Le système est asymptotiquement stable si, et seulement si ses pôles sont tous situés dans le demi-plan gauche ouvert (c'est-à-dire ont tous une partie réelle strictement négative). Il s'agit également de la condition nécessaire et suffisante pour que le système soit exponentiellement stable.
  • Le système est stable (au sens de Lyapunov) si, et seulement si ses pôles sont tous dans le demi-plan gauche fermé (c'est-à-dire ont tous une partie réelle négative ou nulle), ceux situés sur l'axe imaginaire (s'il en existe) étant simples (c'est-à-dire d'ordre 1).

Propriétés structurelles[modifier | modifier le code]

La commandabilité et l'observabilité sont des propriétés structurelles du système qui n'apparaissent pas dans la représentation par fonction de transfert.

Commandabilité et stabilisabilité[modifier | modifier le code]

Un système est dit commandable si pour tout intervalle de temps [ t_i ,~t_f ], et tous points \mathbf{x}_{i},\mathbf{x}_{f}\in \mathcal{X}, avec \mathbf{x}\left( t_{i}\right) =\mathbf{x}_{i}, il existe une commande \mathbf{u} appliquée sur [ t_i ,~t_f ], telle que \mathbf{x}\left( t_{f}\right) =\mathbf{x}_{f}.

La condition nécessaire et suffisante de commandabilité ci-après est appelée le Critère de Kalman pour la commandabilité[1]. Le système considéré est commandable si et seulement si :

\textrm{rang}\begin{bmatrix}B& AB& ...& A^{n-1}B\end{bmatrix} = n

La matrice ci-dessus, notée \Gamma, est communément appelée matrice de commandabilité, et ses colonnes se calculent de façon itérative : A^{k+1}B=A\left( A^{k}B\right) . En termes intrinsèques on définit le sous-espace commandable \mathcal{X}_{c} de l'espace d'état \mathcal{X} suivant[2]

\mathcal{X}_{c}=\sum_{k=1}^{b}\mathbf{A}^{k-1}\mathcal{B}

\mathcal{B} est l'image de \mathbf{B}, et le système est donc commandable si, et seulement si \mathcal{X}_{c}=\mathcal{X}. On dit alors, par abus de langage, que \left( \mathbf{A},\mathbf{B}\right) (ou, de manière équivalente, \left( A,B\right)) est commandable. Quand ce n'est pas le cas, soit \rho _{c} le rang de la matrice \Gamma, c'est-à-dire la dimension de l'espace commandable \mathcal{X}_{c}, \left\{ \varepsilon _{1},...,\varepsilon _{\rho _{c}}\right\} une base de \mathcal{X}_{c} et \left\{ \varepsilon _{\rho _{c}+1},...,\varepsilon _{n}\right\} une base d'un sous-espace supplémentaire de \mathcal{X}_{c} dans \mathcal{X}. En choisissant dans \mathcal{X} la base \left\{ \varepsilon _{1},...,\varepsilon _{n}\right\}, quelle que soit la base choisie dans \mathcal{U}, les applications linéaires \mathbf{A} et \mathbf{B} sont représentées par des matrices de la forme

\left( 
\begin{array}{cc}
A_{c} & \ast  \\ 
0 & A_{\bar{c}}
\end{array}
\right) ,\left( 
\begin{array}{c}
B_{c} \\ 
0
\end{array}
\right)

\left( A_{c},B_{c}\right) est commandable et où l'astérisque est une sous-matrice dont les éléments sont quelconques. Les valeurs propres de A_{\bar{c}} sont les pôles (ou modes) non commandables du système, également appelés ses zéros de découplage en entrée (z.d.e.). L'ordre de la matrice A_{c} est \rho _{c} et celui de la matrice A_{\bar{c}}) est n-\rho _{c}.

Le système est dit stabilisable si ses pôles non commandables appartiennent tous au demi-plan gauche ouvert. Un système commandable est donc stabilisable.

Un critère commode pour étudier la commandabilité et la stabilisabilité d'un système est le test de Popov-Belevich-Hautus (PBH)[3]: le système est commandable (resp. stabilisable) si, et seulement si le rang de la matrice \left( 
\begin{array}{cc}sI_{n}-A & B\end{array}\right) est égal à n pour tout s\in\mathbb{C} (resp. pour tout s dans le demi-plan droit fermé).

Les pôles non commandables sont également les valeurs de s\in\mathbb{C} pour lesquelles le rang de la matrice \left( \begin{array}{cc}sI_{n}-A & B\end{array}\right) est <n, autrement dit ce sont les racines des facteurs invariants de cette matrice. Soit p un pôle non commandable. Son ordre q est par définition le degré maximal des diviseurs élémentaires de \left( \begin{array}{cc}sI_{n}-A & B\end{array}\right) multiples du polynôme s-p \in \mathbb{C} (c'est aussi l'ordre de multiplicité de p en tant que racine du polynôme minimal de A_{\bar{c}}, soit encore l'ordre maximal des blocs de Jordan de A_{\bar{c}} ayant pour valeur propre p.).

Cette dernière caractérisation montre (comme, plus haut, à propos des pôles du système) que les conditions suivantes sont équivalentes :

(i) le nombre complexe p est un pôle non commandable d'ordre supérieur ou égal à q ;
(ii) il existe un état initial x_{0} \neq 0 tel que pour toute commande indéfiniment dérivable u, l'équation d'état a une solution de la forme x\left( t\right) =t^{q-1}e^{pt}x_{0}.

Observabilité et détectabilité[modifier | modifier le code]

Un système est dit observable si l'observation de ses entrées et sorties pendant un intervalle de temps fini [ t_i ,~ t_f ] permet de déterminer l'état initial x(t_i), et donc, par intégration de l'équation d'état, de connaître x(t) à tout instant appartenant à l'intervalle [ t_i ,~ t_f ]. La condition nécessaire et suffisante d'observabilité ci-après est appelé le Critère de Kalman pour l'observabilité[1]. Le système considéré est observable si et seulement si :

\textrm{rang}\begin{bmatrix}C\\ CA\\ ...\\ CA^{n-1}\end{bmatrix} = n

Cette matrice notée \Omega est communément appelée matrice d'observabilité et ses lignes se calculent de façon itérative : CA^{k+1} = (CA^{k}) A. En termes intrinsèques, on définit le sous-espace non observable \mathcal{X}_{\bar{o}} suivant[2]

\mathcal{X}_{\bar{o}}=\cap _{k=1}^{n}\ker \left( \mathbf{CA}^{k}\right)

et le système (ou, par abus de langage, \left( \mathbf{C},\mathbf{A}\right), ou \left( C,A\right)
) est donc observable si, et seulement si \mathcal{X}_{\bar{o}}=0 (où 0 désigne le sous-espace vectoriel de \mathcal{X} réduit au seul élément 0). Quand ce n'est pas le cas, soit \mathcal{\rho }_{\bar{o}} la dimension de \mathcal{X}_{\bar{o}} (n-\mathcal{\rho }_{\bar{o}} étant donc le rang de \Omega), \left\{ \eta _{1},...,\eta _{n-\rho _{\bar{o}}}\right\} une base d'un sous-espace supplémentaire de \mathcal{X}_{\bar{o}}, et \left\{ \eta _{n-\rho _{\bar{0}}+1},...,\eta _{n}\right\} une base de \mathcal{X}_{\bar{o}}. En choisissant dans \mathcal{X} la base \left\{ \eta _{1},...,\eta _{n}\right\}, quelle que soit la base choisie dans \mathcal{Y}, les applications linéaires \mathbf{C} et \mathbf{A} sont représentées par des matrices de la forme

\left( \begin{array}{cc}
C_{o} & 0\end{array}
\right) ,\left( \begin{array}{cc}
A_{o} & 0 \\ 
\ast  & A_{\bar{o}}
\end{array}\right)

\left( \begin{array}{cc}
C_{o} & A_{o}
\end{array}
\right) est observable.

Les valeurs propres de A_{\bar{o}} sont les pôles (ou modes) non observables du système, également appelés des zéros de découplage en sortie (z.d.s.). L'ordre de la matrice A_{o} est n-\rho _{o} et celui de la matrice A_{\bar{o}}) est \rho _{o}.

Le système est dit détectable si ses pôles non observables appartiennent tous au demi-plan gauche ouvert. Un système observable est donc détectable.

Il existe également test de Popov-Belevich-Hautus (PBH) pour caractériser l'observabilité et la détectabilité[3]: le système est observable (resp. détectable) si, et seulement si le rang de la matrice

\left( \begin{array}{c}sI_{n}-A \\ C\end{array}\right)

est égal à n pour tout s\in\mathbb{C} (resp. pour tout s dans le demi-plan droit fermé).

Les pôles non observables sont également les valeurs de s\in\mathbb{C} pour lesquelles le rang de la matrice ci-dessus est <n, autrement dit ce sont les racines des facteurs invariants de cette matrice. L'ordre d'un pôle non observable se définit comme celui d'un pôle non commandable, mutatis mutandis.

Les conditions suivantes sont équivalentes :

(i) le nombre complexe p est un pôle non observable d'ordre supérieur ou égal à q ;
(ii) avec u=0, il existe un état initial x_{0} \neq 0 tel que x\left( t\right) =t^{q-1}e^{pt}x_{0} est une solution de l'équation d'état, tandis que la sortie y est identiquement nulle.

Décomposition de Kalman[modifier | modifier le code]

Écrivons maintenant \mathcal{X}=\mathcal{X}_{c\bar{o}}\oplus \mathcal{X}_{co}\oplus \mathcal{X}
_{\bar{c}\bar{o}}\oplus \mathcal{X}_{\bar{c}o}\mathcal{X}_{c\bar{o}}=\mathcal{X}_{c}\cap \mathcal{X}_{\bar{o}}, \mathcal{X}_{co} est un supplémentaire de \mathcal{X}_{c\bar{o}} dans \mathcal{X}_{c}, \mathcal{X}
_{\bar{c}\bar{o}} est un supplémentaire de \mathcal{X}_{c\bar{o}} dans \mathcal{X}_{\bar{o}} et \mathcal{X}_{\bar{c}o} est un supplémentaire de \mathcal{X}_{\bar{o}}\oplus \mathcal{X}_{c} dans \mathcal{X}. En choisissant dans \mathcal{X} une base formée de la concaténation de bases des sous-espaces ci-dessous, les applications linéaires \mathbf{A}, \mathbf{B} et \mathbf{C} sont représentées (quelles que soient les bases choisies dans \mathcal{U} et \mathcal{Y}) par des matrices de la forme[1],[2],

\tilde{A}=\left( 
\begin{array}{cccc}
A_{c\bar{o}}\quad  & \ast  & \ast  & \ast  \\ 
0\quad  & A_{co}\quad  & 0 & \ast  \\ 
0\quad  & 0 & A_{\bar{c}\bar{o}}\quad  & \ast  \\ 
0\quad  & 0 & 0 & A_{\bar{c}o}
\end{array}
\right) ,\quad \tilde{B}=\left( 
\begin{array}{c}
B_{c\bar{o}} \\ 
B_{co} \\ 
0 \\ 
0
\end{array}
\right),
 \tilde{C}=\left( 
\begin{array}{cccc}
\ \ 0\quad  & \ \ C_{co}\quad  & \quad 0\quad \  & C_{\bar{c}o}
\end{array}
\right)

\left( \left( 
\begin{array}{cc}
A_{c\bar{o}}\quad  & \ast  \\ 
0\quad  & A_{co}\quad 
\end{array}
\right) ,\quad \left( 
\begin{array}{c}
B_{c\bar{o}} \\ 
B_{co}
\end{array}
\right) \right)

est commandable et

\left( \left( 
\begin{array}{cc}
C_{co} & C_{\bar{c}o}
\end{array}
\right) ,\quad \left( 
\begin{array}{cc}
A_{co}\quad  & \ast  \\ 
0 & A_{\bar{c}o}
\end{array}
\right) \right)

est observable. On vérifie sans difficulté que la matrice de transfert du système est

G\left( s\right) =\tilde{C}\left( sI_{n}-\tilde{A}\right) ^{-1}\tilde{B}
+D=C_{co}\left( sI_{n_{co}}-A_{co}\right) ^{-1}B_{co}+D

n_{co} est la dimension de l'espace vectoriel \mathcal{X}_{co}. Par conséquent, la matrice de transfert ne dépend que de la partie commandable et observable du système.

Modes cachés[modifier | modifier le code]

Considérons de nouveau le système linéaire donné par la représentation d'état ci-dessus. Les propriétés suivantes sont équivalentes:

(i) Le système est à la fois observable et commandable.

(ii) Les pôles du système (autrement dit, les valeurs propres de \mathbf{A}) coïncident avec ses pôles de transmission (autrement dit, les pôles de sa matrice de transfert), en prenant en compte les multiplicités.

Le système est dit minimal quand ces propriétés équivalentes sont satisfaites.

Considérons la décomposition de Kalman de ce système. On a, puisque les valeurs propres d'une matrices restent inchangées par changement de base,

\sigma \left( A\right) =\sigma \left( A_{co}\right) \dot{\cup}
\sigma \left( A_{c\bar{o}}\right) \dot{\cup}\sigma \left( A_{\bar{c}
o}\right) \dot{\cup}\sigma \left( A_{\bar{c}\bar{o}}\right)

\sigma \left( . \right) désigne le spectre de la matrice entre parenthèses, c'est-à-dire l'ensemble de ses valeurs propres (répétées un nombre de fois égal à leur multiplicité) et où \dot{\cup} est la réunion disjointe. D'autre part, avec les notations qui précèdent,

\sigma \left( A_{\bar{c}}\right) =\sigma \left( A_{\bar{c}o}\right) \dot{
\cup}\sigma \left( A_{\bar{c}\bar{o}}\right) , \ \sigma \left( A_{\bar{o}
}\right) =\sigma \left( A_{c\bar{o}}\right) \dot{\cup}\sigma \left( A_{\bar{c}\bar{o}}\right)

par conséquent, \sigma \left( A\right) =\sigma \left( A_{co}\right) \dot{\cup}\left\{
m.c.\right\}\left\{ m.c.\right\} =\sigma \left( A_{\bar{c}}\right) \dot{\cup}\sigma
\left( A_{\bar{o}}\right) \backslash \sigma \left( A_{\bar{c}\bar{o}}\right) (E\backslash F désignant le complémentaire de F dans E lorsque F\subset E).

Les éléments de \left\{ m.c.\right\} (resp. \sigma \left( A_{\bar{c}\bar{o}}\right)) s'appellent les modes cachés (resp. les zéros de découplage en entrée-sortie (z.d.e.s.))[4]. La dernière égalité s'écrit
\left\{ m.c.\right\} =\left\{ z.d.e.\right\} \dot{\cup}\left\{
z.d.s.\right\} \backslash \left\{ z.d.e.s.\right\} ,

tandis que la précédente s'écrit, en désignant par \left\{ p.s.\right\} (resp. \left\{ p.t.\right\}) les pôles du système (resp. ses pôles de transmission)

\left\{ p.s.\right\} =\left\{ p.t.\right\} \dot{\cup}\left\{ m.c.\right\} .

On peut montrer que ces deux dernières relations sont intrinsèques[5],[3].

Zéros[modifier | modifier le code]

Zéros invariants[modifier | modifier le code]

Considérons la matrice R\left( s\right) , appelée matrice de Rosenbrock ou matrice-système[4]

R\left( s\right) =\left( \begin{array}{cc}
sI_{n}-A & -B \\ C & D\end{array}\right).

Les racines dans le plan complexe des facteurs invariants de R\left( s\right) (multiplicités prises en compte) sont appelés les zéros invariants (z.i.) du système. Ce sont des objets intrinsèques qui sont invariants par retour d'état, d'où leur nom.

Soit z un zéro invariant. Son ordre q se définit comme étant le degré maximal des diviseurs élémentaires de R\left( s\right) multiples du polynôme s-z\in \mathbb{C}\left[ s\right].

Les conditions suivantes sont équivalentes[6] :

(i) le nombre complexe z est un zéro invariant du système, d'ordre supérieur ou égal à q ;
(ii) il existe un état initial x_{0} et une commande u\left( t\right) =u_{0}t^{q-1}e^{zt}, u_{0} \neq 0, pour lesquels la sortie y est identiquement nulle.
Zéros du système[modifier | modifier le code]

Les zéros du système (z.s.) sont définis par la relation[4]

\left\{ z.s.\right\} =\left\{ z.t.\right\} \dot{\cup}\left\{ m.c.\right\}

\left\{ z.t.\right\} est l'ensemble des zéros de transmission (contrairement aux zéros invariants, ces derniers ne sont pas invariants par retour d'état). On montre que[5],[3],

\left\{ z.t.\right\} \dot{\cup}\left\{ z.d.e.s.\right\} \subset \left\{
z.i.\right\} \subset \left\{ z.s.\right\}

la première (resp. la seconde) inclusion devenant une égalité dans le cas d'un système minimal (resp. ayant une matrice de transfert carrée et régulière).

Dualité[modifier | modifier le code]

Les propriétés de commandabilité et d'observabilité sont duales, de même que les propriétés de stabilisabilité et de détectabilité, dans le sens suivant: \left( \mathbf{C},\mathbf{A}\right) est observable (resp. détectable) si, et seulement si \left( ^{t}\mathbf{A},^{t}\mathbf{C}\right) est commandable (resp. stabilisable).

Passage à la fonction de transfert: exemple[modifier | modifier le code]

Comme il est dit ci-dessus, les parties non commandables et/ou non observables disparaissent dans les représentations par fonction de transfert (c'est en cela que les pôles et zéros correspondants sont des modes cachés). Voici un exemple illustratif.

Considérons les systèmes S_1 et S_2 correspondants aux équations différentielles suivantes :

S_1 : \dot y + y = u
S_2 : \ddot y - y = \dot u - u

Le système S_1 possède la forme d'état suivante :

 S_1 : \begin{cases} \dot x = - x + u \\ y = x \end{cases}

Ce système est minimal.

Le système S_2 peut se mettre sous forme d'état comme suit :


	S_2 : 
	\begin{cases} 
		\begin{bmatrix} \dot x \\ \ddot x - \dot u \end{bmatrix}
		=  
		\begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix} 
		\begin{bmatrix} x \\ \dot x - u \end{bmatrix} 
		+ 
		\begin{bmatrix} 1 \\ -1 \end{bmatrix}
		u 
	\\ 
		y =  
		\begin{bmatrix} 1 & 0 \end{bmatrix} 
		\begin{bmatrix} x \\ \dot x - u \end{bmatrix} 
	\end{cases}

Le calcul de la matrice de commandabilité \Gamma conduit au résultat suivant:

\Gamma=\begin{bmatrix} B & AB \end{bmatrix} = \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix}

Le rang de cette matrice est égal à 1. Puisque le système est d'ordre 2, il n'est pas commandable.

Néanmoins, les deux systèmes, bien que différents, ont la même fonction de transfert (avec s la variable de Laplace):

S_1 : \xrightarrow{\mathcal{L}} : \frac{Y(s)}{U(s)} = \frac{1}{s+1}
S_2 : \xrightarrow{\mathcal{L}} : \frac{Y(s)}{U(s)} = \frac{s-1}{s^2 - 1} = \frac{s-1}{(s+1)(s-1)} = \frac{1}{s+1}

Ce sont les simplifications des pôles non commandables par des zéros (de découplage en entrée) qui fait que la représentation par fonction de transfert ne permet pas de refléter toutes les propriétés structurelles du système.

Discrétisation[modifier | modifier le code]

On peut discrétiser à une période d'échantillonnage T un système linéaire stationnaire à temps continu \Sigma tel que celui ci-dessus, de manière à former un système linéaire stationnaire à temps discret \Sigma _{d}. L'état x_{d}=\mathfrak{D}\left( x\right) et la sortie y_{d}=\mathfrak{D}\left( y\right) de \Sigma _{d} sont les suites définies par les relations x_{d}\left( k\right) =x\left( kT^{+}\right) , y_{d}\left( k\right)=y\left( kT^{+}\right). La commande discrète u _{d} de \Sigma _{d} est une suite de nombres calculés par un calculateur numérique fonctionnant en temps réel. Ces valeurs font l'objet d'un blocage \mathfrak{B} tel que \mathfrak{B}\left(u _{d}\right) est une commande à temps continu u vérifiant \mathfrak{D}\left( u\right)= u _{d}. La commande bloquée u _{d} est l'entrée de \Sigma. Le type de bloqueur le plus simple, et aussi le plus répandu, est le bloqueur d'ordre zéro: il consiste à définir u par u\left( t\right) =u_{d}\left( k\right) pour kT\leq t<\left( k+1\right) T. La commande u qui en résulte est donc une fonction en escalier. Pour obtenir l'équation d'état de \Sigma _{d}, il suffit d'intégrer celle de \Sigma entre kT et \left( k+1\right) T et on montre que[3]

\left\{ \begin{array}{c}
x_{d}\left( k+1\right) =A_{d}x_{d}\left( k\right) +B_{d}u_{d}\left( k\right) 
\\ 
y_{d}\left( k\right) =Cx_{d}\left( k\right) +Du_{d}\left( k\right) \end{array}\right.

avec

A_{d}=e^{AT},B_{d}=\int_{0}^{T}e^{At}B.dt

ou sous une forme plus compacte

\left( 
\begin{array}{cc}
A_{d} & B_{d} \\ 
0 & I_{m}
\end{array}
\right) =\exp \left\{ \left( 
\begin{array}{cc}
A & B \\ 
0 & 0
\end{array}
\right) T\right\} .

Pour que \Sigma _{d} soit commandable (resp. observable) il faut que \Sigma le soit, et si cette condition est satisfaite, il suffit que, de plus, la matrice d'état A de \Sigma n'ait pas de valeurs propres \lambda _1, \lambda _2 telles que \lambda _{1}-\lambda _{2}=\frac{2k\pi i}{T}, k \neq 0. On en déduit un théorème analogue au théorème de l'échantillonnage, mais s'appliquant aux systèmes[3].

Les valeurs propres de la matrices d'état A_{d} sont les pôles du système \Sigma _{d}. Une condition nécessaire et suffisante pour que ce système soit asymptotiquement stable (ou, de manière équivalente, exponentiellement stable) est que ces pôles aient tous un module strictement inférieur à 1. Cette condition est satisfaite si, et seulement si \Sigma est exponentiellement stable.

Les différentes sortes de pôles et de zéros d'un système linéaire stationnaire se définissent dans le cas du temps discret d'une manière analogue, mutatis mutandis, à ce qui a été indiqué plus haut pour les systèmes à temps continu.

Systèmes linéaires instationnaires[modifier | modifier le code]

Formalisme[modifier | modifier le code]

Nous ne traiterons, très brièvement, que le cas des systèmes linéaires instationnaires à temps continu. Un tel système a une équation d'état et une équation d'observation qui ont la même forme qu'un système linéaire stationnaire, mais avec des matrices A, B, C et D qui appartiennent cette fois à un anneau ou un corps différentiel \mathbf{K}. Un tel système admet également une fonction de transfert. Cet anneau (supposé intègre et commutatif) ou ce corps (supposé commutatif) est muni de la dérivation usuelle a\mapsto \dot{a} (deux exemples classiques sont ceux où \mathbf{K}=\mathbb{C}\left[ t\right] et \mathbf{K}=\mathbb{C}\left( t\right)). Soit \mathbf{D}=\mathbf{K}\left[ \partial \right], avec \mathbf{\partial =}\frac{d}{dt}, l'anneau des polynômes gauches en \partial à coefficients dans \mathbf{K}. Si f est une variable, on a d'après la règle de Leibniz \mathbf{\partial }\left( af\right) =\dot{a}f+a\partial f, et puisque ceci est vrai quelle que soit f on a sur \mathbf{D} la règle de commutation

\mathbf{\partial }a-a\partial =\dot{a}

L'anneau \mathbf{D}, muni de cette règle, est un d'un anneau d'Ore non commutatif, qui est simple et principal lorsque \mathbf{K} est un corps [7].

Commandabilité[modifier | modifier le code]

La commandabilité d'un tel système se définit comme dans le cas stationnaire. Un critère de commandabilité, analogue à celui de Kalman, a été donné par Silverman et Meadows[8] lorsque \mathbf{K}=\mathcal{O}\left( \mathcal{I}\right) , l'anneau des fonctions analytiques réelles sur un intervalle ouvert non vide \mathcal{I} de la droite réelle: soit

\Gamma =\left[ \begin{array}{cccc}
P_{0}\quad \vdots \  & P_{1}\quad \vdots \  & \cdots \quad \vdots  & P_{n-1}\end{array}\right]

avec

P_{0}=G,\quad P_{i+1}=\left( F-\frac{d}{dt}I_{n}\right) P_{i},\quad 1\leq i\leq n-2.

Une condition nécessaire et suffisante pour que le système soit commandable est qu'il existe un sous-ensemble discret S de \mathcal{I} tel que le rang sur \mathbb{R} de \Gamma soit égal à la dimension n de l'espace d'état pour tout t\in \mathcal{I}\backslash S.

Considérons par exemple le système dont les matrices d'état et de commande sont, respectivement,

A=\left( \begin{array}{cc}
0 & 1 \\ 
-1 & 0
\end{array}
\right) ,\quad B=\left( 
\begin{array}{c}
\cos \sigma  \\ 
\sin \sigma 
\end{array}
\right) .

Si \sigma est un paramètre constant quelconque, la matrice de commandabilité est

\Gamma =\left( 
\begin{array}{cc}
\cos \sigma  & -\sin \sigma  \\ 
-\sin \sigma  & -\cos \sigma 
\end{array}
\right),

son déterminant vaut -1 et le système (stationnaire) est donc commandable. En revanche, si \sigma=t, la matrice de commandabilité est

\Gamma =\left( \begin{array}{cc}
B & \vdots \quad \left( A-\frac{d}{dt}I_{2}\right) B\end{array}\right) =
\left( \begin{array}{cc}
\cos t & 0 \\ 
-\sin t & 0
\end{array}
\right)

et le système (instationnaire) est non commandable.

Observabilité et dualité[modifier | modifier le code]

L'observabilité se définit comme dans le cas stationnaire. On obtient une condition nécessaire et suffisante d'observabilité en passant au système dual. Il est défini par les équations[7]

\left\{ \begin{array}{c}-\dfrac{d\breve{x}}{dt}=F^{T}\breve{x}+H^{T}\breve{u} \\ 
\breve{y}=G^{T}\breve{x}+D^{T}\breve{u}\end{array}\right.

Un système linéaire coïncide donc avec son "bidual", et il est observable si, et seulement si son dual est commandable[8].

Stabilité[modifier | modifier le code]

La stabilité d'un système linéaire instationnaire peut s'étudier par des méthodes purement analytiques[9] qui fournissent des conditions suffisantes ou nécessaires de stabilité exponentielle. On peut aussi, par des méthodes issues de l’analyse algébrique (en) et de l'algèbre différentielle (en) (théorie de Picard-Vessiot (en)) définir les pôles d'un système instationnaire (sous certaines conditions portant sur le corps différentiel auquel appartiennent les coefficients des matrices de ce système) qui fournissent une condition nécessaire et suffisante de stabilité exponentielle analogue à celle indiquée plus haut pour les systèmes linéaires stationnaires[7].

Systèmes non linéaires[modifier | modifier le code]

Représentations des systèmes non linéaires[modifier | modifier le code]

Commençons par les représentations classiques. Une représentation d'état d'un système non linéaire est de la forme


\begin{cases}
\dot{x} &= f(x, u, t) \\ y &= h(x, u, t))
\end{cases}

où comme précédemment x est le vecteur d'état, y le vecteur de sortie et u le vecteur d'entrée. Ces variables sont définies sur un intervalle ouvert non vide \mathcal{I} de la droite réelle. Nous supposerons que x\left( t\right) \in \mathbf{X}^{\prime }, u\left( t\right) \in \mathbf{U} , y\left( t\right) \in \mathbf{Y}, \forall t\in \mathcal{I} \mathbf{X}^{\prime }, \mathbf{U} et \mathbf{Y} sont des ouverts non vides de  \mathbb{R}^{n}, \mathbb{R}^{m} et \mathbb{R}^{p}, respectivement.

La première équation représente l'équation d'évolution et la seconde l'équation d'observation. La représentation d'état linéaire décrite précédemment est un cas particulier de cette forme, obtenu lorsque les fonctions f et h sont linéaires par rapport à \left( x,u\right).

La représentation d'état ci-dessus n'est pas unique, car elle n'est pas intrinsèque. En effet, considérons le changement de variable z=\eta (x)\eta est un difféomorphisme de \mathbf{X}^{\prime } dans l'ouvert \mathbf{X}^{\prime \prime } de  \mathbb{R}^{n}

On obtient :

\dot{z} = \left( \frac{\partial\eta}{\partial x}\right)_{x=\eta^{-1}(z)} \dot{x}, que l'on note \frac{\partial\eta}{\partial x}\dot x par la suite. D'où :
 \dot{z} = \frac{\partial\eta}{\partial x}f(x, u, t)

On peut alors récrire notre système en tenant compte du changement de variable :

 
\begin{cases}
\dot{z} &= \frac{\partial\eta}{\partial x}f(\eta^{-1}(z), u, t) \\ y &= h(\eta^{-1}(z), u, t)
\end{cases}

Pour obtenir une représentation intrinsèque, nous supposerons que x=\varphi \left( \mathbf{x}\right) 
 \left( \mathbf{X},\varphi ,n\right) est une carte d'une variété différentielle connexe \mathcal{X}
 de dimension n (avec \mathbf{X}^{\prime }=\varphi \left( \mathbf{X}\right) ) et, pour simplifier les écritures, nous poserons u=\mathbf{u}, y=\mathbf{y} en considérant \mathbf{U} et \mathbf{Y} en tant que variétés différentielles. Alors les deux premières équations se mettent sous la forme[10]


\begin{cases}
\mathbf{\dot{x}}=\mathbf{f}\left( \mathbf{x},\mathbf{u},t\right)    \\ \mathbf{y}=\mathbf{h}\left( \mathbf{x},\mathbf{u},t\right) )
\end{cases}

Les deux équations obtenues après le changement de variable z=\eta (x) se mettent également sous cette forme, car celui-ci n'est rien d'autre qu'un changement de carte. On a donc bien obtenu l'unicité de la représentation.

Exemple du pendule[modifier | modifier le code]

L'exemple classique de système non linéaire est un pendule libre (il n'y a pas d'entrées, le pendule est livré à lui-même). L'équation différentielle régissant le pendule est la suivante :

ml\ddot\theta(t)= -mg\sin\theta(t) - kl\dot\theta(t)

où:

  • \theta(t) est l'angle du pendule
  • m est la masse du pendule (la masse de la tige est négligée)
  • g est l'accélération gravitationnelle
  • k est le coefficient de frottement au point de pivot
  • l est le rayon du pendule (jusqu'au centre de gravité de la masse m)

Les équations d'état sont:

\dot{x_1}(t) = x_2(t)
\dot{x_2}(t) = - \frac{g}{l}\sin{x_1}(t) - \frac{k}{m}{x_2}(t)

où:

  • x_1(t)=\theta(t) est l'angle du pendule
  • x_2(t) =\dot{x_1}(t) est la vitesse angulaire du pendule
  • \dot{x_2} =\ddot{x_1} est l'accélération angulaire du pendule

L'équation d'état peut être écrite ainsi:

\dot{x}(t) = \left( \begin{matrix} \dot{x_1}(t) \\ \dot{x_2}(t) \end{matrix} \right) = f(t, x(t)) = \left( \begin{matrix} x_2(t) \\ - \frac{g}{l}\sin{x_1}(t) - \frac{k}{m}{x_2}(t) \end{matrix} \right)

Les points d'équilibre stationnaires d'un système sont définis par les points où \dot{x} = 0. Dans ce cas, les points qui satisfont ce critère pour le pendule sont :

\left( \begin{matrix} x_1 \\ x_2 \end{matrix} \right) = \left( \begin{matrix} n\pi \\ 0 \end{matrix} \right)

pour tout n entier.

Commandabilité, observabilité[modifier | modifier le code]

La commandabilité et l'observabilité d'un système non linéaire se définissent de la manière habituelle, déjà explicitée ci-dessus. La commandabilité s'étudie, dans le cas de systèmes affines en la commande, c'est-à-dire régis par une équation d'état de la forme

\dot{x}=f\left( x\right) +g\left( x\right) u=f\left( x\right)
+\sum_{i=1}^{m}g_{i}\left( x\right) u_{i},
x\left( t\right) \in\mathbb{R}^{n},u\left( t\right) \in \mathbb{R}^{m}

(où f et g sont indéfiniment différentiables et f\left( 0\right)=0 ) grâce à outils mathématiques empruntés à la géométrie différentielle[11]. Soit  V_{1},V_{2} deux champs de vecteurs indéfiniment différentiables sur \mathbb{R}^{n}, \left[ V_{1},V_{2}\right] leur crochet de Lie, et définissons

ad_{V_{1}}^{0}\left( V_{2}\right) =V_{2},\quad ad_{V_{1}}^{k}\left(V_{2}\right) =\left[V_{1},ad_{V_{1}}^{k-1}\left( V_{2}\right) \right],\quad k\in \left\{ 1,2,...\right\}.

Soit les distributions[10]

G_{i}=span\left\{ ad_{f}^{k}\left( g_{j}\right) :k\in \left\{0,2,...,i\right\} ,j\in \left\{1,2,...,m\right\} \right\}

span\left\{ .\right\} désigne l'espace vectoriel engendré par les vecteurs entre accolades. Il existe un voisinage ouvert U de l'origine dans lequel le système est commandable si, et seulement si la distribution G_{n-1} est de dimension n[12]. Dans le cas où le système est linéaire, on retrouve le critère de Kalman. On peut du reste préciser que l'ensemble des états appartenant à U accessibles dans à partir de l'origine est \mathcal{X}_{c}=G_{n-1}\cap U[11].

D'autre part, il existe un bouclage linéarisant de la forme u=\alpha \left( x\right) +\beta \left( x\right) v (c'est-à-dire qu'il existe un difféomorphisme u=\eta tel que le système d'entrée v et d'état z=\eta \left( x\right) est linéaire) si, et seulement si (1) la condition ci-dessus est satisfaite et (2) la distribution G_{n-2} est involutive (i.e., pour tous champs de vecteurs V_{1},V_{2}\in G_{n-2}, le crochet de Lie \left[ V_{1},V_{2}\right] appartient à G_{n-2})[12]. Ce résultat est fondé, notamment, sur le théorème de Frobenius.

Il existe une condition nécessaire et suffisante d'observabilité locale pour le système ci-dessus lorsqu'il a une équation d'observation de la forme[11]

y=h\left( x\right).

Les systèmes plats (au sens de la platitude différentielle (en))[13],[14] sont des systèmes commandables, et observables vus de la sortie plate.

Stabilité[modifier | modifier le code]

La stabilité des systèmes non linéaires s'étudie grâce à des fonctions de Lyapunov. Des stabilités de différents types existent: au sens de Lyapunov, asymptotique, exponentielle; elles peuvent être locales ou globales, uniformes ou non, etc[15].

Notes et références[modifier | modifier le code]

Notes[modifier | modifier le code]

Références[modifier | modifier le code]

  • (en) Henri Bourlès, Linear Systems, John Wiley & Sons,‎ 2010, 544 p. (ISBN 1848211627, lire en ligne)
  • (en) Henri Bourlès et Michel Fliess, « Finite poles and zeros of linear systems: an intrinsic approach », Int. J. Control, vol. 68, no 4,‎ 1997, p. 897-922
  • (en) Henri Bourlès et Bogdan Marinescu, Linear Time-Varying Systems: Algebraic-Analytic Approach, Springer,‎ 2011, 638 p. (ISBN 3642197264)
  • (en) Michel Fliess, Jean Lévine et Pierre Rouchon, « Flatness and defect of nonlinear systems: Introductory theory and examples », Internat. J. Control, vol. 61,‎ 1995, p. 1327-1361
  • (en) Wolfgang Hahn, Stability of Motion, Springer,‎ 1967, 446 p. (ISBN 3540038299)
  • (en) Alberto Isidori, Nonlinear Control Systems (3rd ed.), Springer,‎ 1995, 564 p. (ISBN 3540199160)
  • (en) R.E. Kalman, « On the general theory of control systems », dans Proc. 1st IFAC Congress, Moscou,‎ 1960
  • (en) R. E. Kalman, « Mathematical description of linear dynamical systems », SIAM J. Control, vol. 1,‎ 1963, p. 152-192
  • (en) A.G.J. MacFarlane et N. Karkanias, « Poles and zeros of linear multivariable systems: a survey of the algebraic, geometric and complex-variable theory », Int. J. Control, vol. 24, no 1,‎ 1976, p. 33-74
  • (en) Howard Rosenbrock, State-Space and Multivariable Theory, Nelson,‎ 1970, 267 p. (ISBN 0177810025)
  • (en) Wilson Rugh, Linear System Theory (2nd ed.), Prentice Hall,‎ 1995, 581 p. (ISBN 0134412052)
  • (en) Jean-Jacques E. Slotine et Weiping Li, Applied Nonlinear Control, Prentice-Hall,‎ 1991, 461 p. (ISBN 0130400491)
  • (en) L. M. Silverman et H. E. Meadows, « Controllability and observability in time-variable linear systems », SIAM J. Control, vol. 5,‎ 1967, p. 64-73
  • (en) Hebertt J. Sira Ramírez et Sunil Kumar Agrawal, Differentially flat systems, Marcel Dekker,‎ 2004, 467 p. (ISBN 0824754700)
  • (en) Michael Spivak (de), (A Comprehensive Introduction to) Differential Geometry [détail des éditions], vol. 1, 1999
  • (en) W. Murray Wonham, Linear multivariable control: a geometric approach, Springer,‎ 1985, 334 p. (ISBN 0387960716)

Voir aussi[modifier | modifier le code]