Lois de contrôle

Auteur: Gary Quinsac

Introduction à la théorie du contrôle

La théorie du contrôle s'intéresse au comportement de systèmes dynamiques en fonction de leurs paramètres. Elle peut être vue comme une stratégie permettant de sélectionner la bonne entrée d'un système pour que le sortie soit celle désirée. Cela fait partie du domaine de l'automatique.

Boucles ouvertes et fermées

Un système de contrôle est un mécanisme altérant l'état futur d'un système. En l'absence de retour d'information concernant la sortie du système, on se trouve dans le cas d'une boucle ouverte. Prenons l'exemple d'un lave-vaisselle. Celui-ci est programmé pour tourner un certain temps, à une certaine température et avec une certaine quantité d'eau. Ces paramètres ne dépendent pas de l'état de la vaisselle qu'il contient.

Une boucle de rétroaction peut être ajoutée afin de modifier intelligemment la durée du cycle. On obtient alors ce que l'on appelle une boucle fermée, puisqu'une information sur l'état de sortie de notre système, obtenue à l'aide de capteurs, va être comparée à un signal de référence afin de nourir un contrôleur qui a la charge de choisir la bonne entrée. On peut ici parler d'asservissement.

Les boucles de contrôle d'attitude ont pour but d'assurer un contrôle stable de l'orientation du satellite, en prenant en compte les contraintes opérationnelles (temps de réponse aux commandes par exemple) et les perturbations externes et internes. On met en place un asservissement dans le but d'atteindre une valeur de consigne et de la maintenir. Pour ce faire, l'asservissement, ou correcteur, mesure en permanence l'écart entre la valeur réelle de la grandeur à asservir et la valeur de consigne. Il en déduit la commande appropriée que les actionneurs devront ensuite appliquer afin de réduire cet écart.

Systèmes linéaires

Un système linéaire est un objet qui peut être décrit par des équations linéaires. De tels systèmes sont essentiels car nous pouvons les résoudre. Pourtant, presque aucun système réel n'est un système linéaire. L'objectif est donc de simplifier l'objet étudié (actionneur, capteur, système dynamique...) afin de pouvoir l'approximer par un système linéaire. On parle alors de son domaine linéarité.

La réponse d'un système linéaire peut être obtenue en sommant ses réponses impulsionnelles. Cette sommation dans le domaine temporel est appelée convolution. Soit un signal d'entrée u(t) et une réponse impulsionnelle g(t), la sortie y(t) s'exprime :

y(t) = u(t) \ast g(t) = \int_0^t{u(\tau) \ g(t- \tau) \ d \tau}

Fonction de transfert

Afin de simplifier cette opération, on introduit la fonction de transfert. Une fonction de transfert est la transformée de Laplace de la réponse impulsionnelle d'un système linéaire lorsque ses conditions initiales (ou aux limites) sont nulles. Elle permet de transformer le produit de convolution en simple produit :

Y(p) = U(p) \cdot G(p)

definitionTransformée de Laplace

Soit f(t) une fonction du temps. Sa transformée de Laplace unilatérale F(p) est définie par L \left( f(t) \right) = F(p) = \int_{0}^{\infty}{f(t) \ exp(-p \ t) \ dt}p est la variable complexe.

Transformées de Laplace usuelles
f(t)F(p)
\delta (t) (Dirac)1
t\frac{1}{p^2}
x(t)X(p)
\dot x(t)p \cdot X(p) - X(0)
\ddot x(t)p^2 \cdot X(p) - p \cdot X(p) - \dot X(0)

Soit l'équation a x^n D \left( \frac{d}{dt} y \right) = N \left( \frac{d}{dt} u \right)u et y sont respectivement l'entrée et la sortie et D et N sont des polynômes à coefficients réels en (d/dt). Si l'on considère que les conditions initiales sont nulles, on peut réécrire l'équation différentielle précédente pour obtenir la fonction de transfert H :

D(p) \ Y(p) = N(p) \ U(p) \ \leftrightarrow \  \frac{Y(p)}{U(p)} = \frac{N(p)}{D(p)} = H(p)

Les pôles d'une fonction de transfert sont les valeurs pour lesquelles le dénominateur D, aussi appelé équation caractéristique, s'annule. Attention, tout ceci est vrai à condition que la fonction de transfert soit sous forme irréductible. Pour que le système soit stable, il faut que tous les pôles soient strictement à l'intérieur du cercle unité (\|p|<1).

Représentation de la boucle de contrôle d'attitude

On représente la boucle du SCA comme un contrôle en boucle fermée, avec le terme de rétroaction. On note R(p) le signal de référence, Y(p) le signal de sortie, D(p) la perturbation, U(p) le signal de contrôle, Gc(p) le contrôleur, E(p) l'erreur, Gp(p) le matériel à contrôler et C(p) la dynamique des capteurs. Si l'on considère que les perturbations sont nulles, la fonction de transfert s'écrit :

\frac{Y(p)}{R(p)} = \frac{G_c(p) \ G_p(p)}{1+G_c(p) \ G_p(p) \ C(p)}

Le dénominateur de cette équation est un polynome dont les racines déterminent le type de réponse. Le contrôleur peut être utilisé pour stabiliser le système ou lui donner des caractéristiques particulières.

Boucle ouverte ou fermée
images/boucles-ouverte-fermee.png
Dans la boucle ouverte, la durée du cycle de lavage ne dépend pas de la propreté de la vaisselle qu'il contient. Afin d'adapter cette durée à l'état des assiettes et verres, il faut qu'un capteur de propreté fournisse une information à comparer à la propretée désirée et qu'un contrôleur en déduise une nouvelle durée. C'est ce que l'on appelle une boucle fermée.
Crédit : Gary Quinsac
Fonction de transfert
images/fonction-transfert.png
Crédit : Gary Quinsac
Diagramme en bloc de la boucle de contrôle
images/boucle-SCA-fonction-transfert.png
Chaque élément de la boucle de contrôle d'attitude est représenté par sa fonction de transfert.
Crédit : "Fundamentals of Spacecraft Attitude Determination and Control", F. Landis Markley et John L. Crassidis.

Contrôleur

Le contrôleur a pour objectif de convertir l'erreur, c'est-à-dire l'écart entre la mesure de la sortie de la boucle et le signal de référence, en un signal de contrôle qui va finir par ramener l'erreur à 0.

Les performances du contrôleur et a fortiori de l'asservissement sont décrites par plusieurs paramètres :

L'asservissement doit ainsi assurer un compromis entre performance et stabilité. La performance est proportionnelle à la valeur du gain du correcteur, mais à partir d'une certaine valeur celui-ci a tendance à déstabiliser le système.

Contrôleur PID

Le contrôleur "Proportionnel-Intégral-Dérivé" est la logique de contrôle la plus utilisée pour les régulateurs avec boucle de rétroaction. Ce contrôleur agit de trois manières :

La fonction de transfert d'un régulateur PID s'exprime :

C(p) = K_p + \frac{1}{K_i} \ \frac{1}{p} +K_d \ p

Considérons un système de contrôle d'attitude mono-axe simple. L'équation d'Euler s'exprime :

[I] \ \ddot \theta (t) = u(t) + w(t)

[I] est la matrice d'inertie, \theta est l'angle, u est le couple de contrôle et w est le couple perturbateur extérieur.

Contrôleur PD

Un simple contrôle proportionnel ne pourrait pas atteindre une réponse asymptotiquement stable, nous introduisons donc un régulateur PD (proportionnel-dérivé) :

u(t) = -K_p \ \theta(t) - K_d \ \dot \theta (t)

K_p et K_d sont des gains qu'il faut déterminer. Le système en boucle fermée et son équation caractéristique s'écrivent alors :

[I] \ \ddot \theta (t) + [K_d] \ \dot \theta (t) + [K_p] \ \theta(t) = w(t) \ \leftrightarrow \ I \ p^2 + [K_d] \ p + [K_p] = 0

Dans le but d'identifier les valeurs des deux gains, nous introduisons \omega_n et \zeta, respectivement la fréquence propre (fréquence de la réponse sinusoïdale du système non amorti) et le facteur d'amortissement. L'équation caractéristique est réécrite en introduisant ces deux nouvelles grandeurs :

p^2 + 2 \ \zeta \ \omega_n \ p + {\omega_n}^2 = 0

Les gains du contrôleur s'expriment alors : [K_p] = [I] \ {\omega_n}^2 et [K_d] = 2 \ [I] \ \zeta \ \omega_n. On choisit généralement le facteur d'amortissement de tel sorte que 0,5 \leq \zeta \leq 0,707. Il est important de noter que l'information sur la dérivée provient de gyroscopes ou de différences finies de l'attitude.

Contrôleur PID

Pour une perturbation constante de valeur unitaire, le système asservi par le contrôleur PD produit une attitude en régime permanent non-nulle : \theta(\infty) = 1/K_p. Idéalement nous souhaitons que l'attitude en régime permanent soit nulle, c'est la raison pour laquelle nous introduisons le contrôleur PID (proportionnel-intégral-dérivé) :

u(t) = -K_p \ \theta(t) - K_i \int{\theta(t) \ dt} \ - K_d \ \dot \theta(t)

L'équation caractéristique s'écrit cette fois :

[I] \ p^3 + [K_d] \ p^2 + [K_p] \ p + [K_i] = 0 \ \leftrightarrow \ \left( p^2 + 2 \ \zeta \ \omega_n \ p + {\omega_n}^2 \right) \left( p + \frac{1}{T} \right) = 0

\omega_n et \zeta sont toujours la fréquence propre et le facteur d'amortissement, et T est la constante temporelle associée au contrôle intégral. Les gains du contrôleur PID s'expriment : [K_p] = [I] \left( {\omega_n}^2 + \frac{2 \ \zeta \ \omega_n}{T} \right), [K_i] = [I] \ \frac{{\omega_n}^2}{T} et [K_d] = [I] \left( 2 \ \zeta \ \omega_n + \frac{1}{T}\right). On choisit souvent la constante T telle que : T \approx \frac{10}{\zeta \ \omega_n}.

Facteur d'amortissement
images/facteur_amortissement.png
Réponse pour différents facteurs d'amortissement.
Crédit : "Fundamentals of Spacecraft Attitude Determination and Control", F. Landis Markley et John L. Crassidis.