K = acker(A, B, P)
| Paramètre | Description |
|---|---|
| A | Matrice d'état : matrice Nx-par-Nx |
| B | Matrice entrée-état : matrice Nx-par-Nu |
| P | Vecteur de localisation des pôles en boucle fermée souhaité. |
| Paramètre | Description |
|---|---|
| K | matrice de gain de rétroaction. |
La fonction acker calcule la matrice de gain de rétroaction K pour un système à entrée unique décrit par les matrices d'espace d'état A et B.
Les pôles en boucle fermée du système sous la loi de rétroaction u = -Kx sont déterminés par le vecteur spécifié P, où P représente les localisations des pôles souhaitées.
Les pôles en boucle fermée sont essentiellement les valeurs propres de la matrice A - B*K, calculées comme P = eig(A - B*K).
Cet algorithme utilise la formule d'Ackermann.
Cependant, les utilisateurs doivent être conscients que cette méthode peut ne pas être numériquement fiable, particulièrement pour les systèmes d'ordre supérieur à 10 ou pour les systèmes faiblement contrôlables.
Si l'algorithme rencontre une instabilité numérique ou si les pôles en boucle fermée dévient significativement (plus de 10%) des localisations souhaitées spécifiées dans P, un message d'avertissement est émis pour alerter l'utilisateur sur les problèmes potentiels.
Les utilisateurs sont invités à faire preuve de prudence et à envisager des méthodes alternatives pour les systèmes d'ordre supérieur ou faiblement contrôlables.
A = [0 1 0; 0 0 1;-1 -5 -6];
B = [ 0; 0; 1];
P = [-10 -2-4i -2+4i];
K = acker(A, B, P)
| Version | Description |
|---|---|
| 1.0.0 | version initiale |