Voici quelques éléments pour expliquer la régulation PID.
Je vais partir d'un premier exemple: la conduite d'une voiture. Comment peut-on faire pour atteindre une vitesse souhaitée ?
Dison qu'au début la voiture est à l'arrêt et qu'on voudrait atteindre 50 km/h, en ligne droite. L'écart entre la vitesse souhaitée et la vitesse effective de la voiture est grand : on peut appuyer fort sur l'accélérateur [je néglige à ce stade la question de l'à-coup initial]. Plus on se rapproche de la vitesse souhaitée, et moins on va avoir besoin d'appuyer sur l'accélérateur. Si on relâche trop tard l'accélérateur on va dépasser la vitesse souhaitée, et il faudra ralentir - typiquement on risque d'osciller autour de la vitesse souhaitée, en la dépassant et en repassant en dessous. Enfin il arrive que la route présente des irrégularités (changement de pente, virage) qu'on doit anticiper au mieux, pour limiter des perturbations de la vitesse.
La régulation PID est une méthode automatique qui s'appuie sur ces 3 enjeux : accélérer pour se rapproche d'une vitesse souhaitée, éviter le dépassement, anticiper les perturbations à venir.
On souhaite atteindre une vitesse objectif qu'on va appeler la "consigne".
La différence entre la vitesse effective et la vitesse consigne est appelée "erreur".
On veut minimiser l'erreur, de manière à ce que la vitesse de la voiture soit le plus possible égale à la vitesse consigne.
Au départ, on va agir proportionnellement à l'erreur : plus l'erreur est grande, et plus on appuie fort sur l'accélérateur. Quand on se rapproche de la vitesse consigne, l'erreur diminue et on devrait appuyer moins fort sur l'accélérateur. C'est une action "Proportionnelle", le P dans "PID". On choisit un coefficient de proportionnalité que nous appelerons Kp (ou K dans le graphique ci-dessous).
Cette action proportionnelle présente une limitation : ça marche bien quand l'erreur est grande, mais quand on se rapproche de la vitesse consigne, il faudrait accélérer moins fort - mais ce coefficient Kp est fixe. Si Kp est trop petit, on ne va pas réussir à atteindre la consigne, et on roulera à une vitesse constante très basse. Si Kp est trop grand, on va osciller autour d'une valeur de vitesse. Dans le meilleur des cas, on va atteindre une vitesse constante sans osciller, et la moins basse possible mais cette vitesse sera quand même inférieure à la consigne : donc l'erreur restera non nulle.
Pour se rapprocher encore mieux de la vitesse consigne, on voudrait que l'action proportionnelle soit fortement prise en compte quand on a besoin d'accélérer, puis que l'action proportionnelle soit tempérée par une autre action, quand on se rapproche de la vitesse consigne. Dans ce but on rajoute une action additionnelle appelée "action Intégrale" (I). Cette action intégrale tient compte de l'évolution de l'erreur dans le temps passé, sur une certaine durée de temps. Plus la somme des erreurs passées est grande, et plus l'action intégrale est grande. Quand la somme des erreurs passées devient faible, l'action intégrale devient faible. Cette correction intègre les erreurs accumulées - "intègre" au sens mathématique : on fait la somme des erreurs passées sur une certaine durée. Cela permet d'ajuster le temps
Cette régulation PI peut-être déjà assez efficace, mais il arrive que des causes externes amènent des petites perturbations qui risquent d'amplifier à nouveau des oscillations (pour notre voiture : changement de pente de la route, virage, etc...). Pour prendre en compte ces modifications, on rajoute une action additionnelle appelée action Dérivée (D), qui va tempérer la régulation PI en fonction de la rapidité d'évolution de la vitesse de la voiture: si tout à coup la voiture change brusquement de vitesse, l'action Dérivée est forte; si la voiture change lentement de vitesse, l'action Dérivée est faible.
Mais alors comment choisir les valeurs des coefficients des actions P, I et D ?
Il y a plusieurs méthodes, dont je ferais un résumé plus tard, disons que de manière générale ça prend
un-certain-temps.
Quelques sources :
https://www.fujielectric.fr/blog/regula ... ez-savoir/
https://www.eurotherm.com/fr/temperatur ... made-easy/
C'est un type qui rentre dans un bar et qui dit "salut c'est moi !"; et en fait c'était pas lui.