Explication du contrôleur PID

9

Je n'ai pas trouvé de texte expliquant le contrôleur PID en termes simples. Je connais la théorie: qu'il calcule la dérivée et le gain proportionnel et l'intégrale etc., mais j'ai besoin de savoir en réalité quelle est la sortie de chaque fonction et de chaque combinaison de fonctions.

Par exemple, en commençant par le proportionnel: il envoie une entrée proportionnelle à l'erreur enregistrée. Donc, si l'erreur est de 5 V, faut-il faire pour la diminuer? ou ? ou ou quoi? Je ne comprends pas.1125 V-1155 V155 V

Quant au dérivé, il surveille le dérivé sur une période spécifique? Et puis quoi? De plus, que se passe-t-il s'il y a un bruit / une perturbation au début, de sorte que le contrôleur PID n'aura pas de taux de changement d'utilisation normale à comparer? Idem avec intégrale. Pouvez-vous m'indiquer une bonne ressource ou m'expliquer s'il vous plaît?

ergon
la source

Réponses:

11

Une fonction PID que la plupart des gens utilisent quotidiennement est la coordination œil-main pour diriger une voiture ou un vélo. Vos yeux sont l'entrée, l'angle du volant / guidon est la sortie. Le point de consigne est généralement le centre de votre voie (jusqu'à ce qu'un cerf saute ou qu'un chien vous poursuive).


Votre esprit doit constamment considérer 3 facteurs différents lors de l'exécution de cette tâche. L'importance qu'il accorde à chaque facteur est basée sur l'expérience passée, qui est appelée "réglage" dans le monde PID.

Proportionnelle: "Je suis très loin du centre de la voie, je devrais retourner dans cette direction."
Naturellement, si je suis plus loin, je veux devenir plus net que si je suis très proche. Cela me permettra de revenir au centre de ma voie en temps opportun.

Dérivé: "Je ferais mieux de ne pas simplement tirer les barres de roue / poignée dans cette direction ou je corrigerais trop, roulerais et planterais."
Vous êtes peut-être dans le caniveau, mais votre expérience de conduite vous enseigne que si vous tournez brusquement, les choses changeront très rapidement et vous devez réduire la netteté de votre virage pour éviter de dépasser le point de consigne et d'entrer dans la circulation à venir.

Intégral: "Le vent continue de me pousser jusqu'au bord de la route, et je dois y tourner pour rester grossier"
Vous êtes assez près du centre de votre voie, mais pas tout à fait où vous voulez être. La proportionnelle est petite parce que vous êtes très proche et la dérivée est petite parce que vous ne changez pas très vite. Intégral est le terme qui intervient et dit "Hé maintenant, je sais que nous ne sommes pas loin de beaucoup mais nous sommes partis depuis assez longtemps; que diriez-vous de nous transformer en vent pour que nous puissions maintenir notre point de consigne."

Les PID ne sont pas parfaits, et vos capacités de pilotage sont en fait un peu meilleures qu'un PID standard. Vous êtes assez intelligent pour réaliser que lorsque le vent disparaît (pour une raison inconnue), vous éliminez votre terme intégral et ne vous aventurez pas dans le trafic opposé en attendant que le vent revienne. Les humains s'auto-règlent également pendant le fonctionnement en considérant d'autres entrées comme les accélérations et la physique, alors que la plupart des machines / ordinateurs ne sont actuellement pas capables de cela.

ericnutsch
la source
Merci belle explication. Donc pour résumer, la correction proportionnelle serait idéale mais elle a ces inconvénients: elle ne peut pas faire face à l'inertie, elle ne peut pas faire face aux bruits extérieurs. C'est pourquoi nous avons besoin de D pour faire face à l'inertie et de moi pour faire face aux bruits. Est-ce un bon résumé? Dois-je manquer quelque chose?
ergon
La proportionnelle fonctionne très bien lorsque vous avez beaucoup de temps pour vous y rendre. Accordez-le simplement sur amorti et cela fonctionnera bien. Integral s'assure que nous atteignons notre véritable point de consigne lorsque nous sommes proches mais pas tout à fait là. Le dérivé est le plus important lorsque nous voulons arriver rapidement à notre point de consigne. La proportionnelle est définie de manière plus agressive que la dérivée est utilisée pour réduire le dépassement; non seulement pour contrer l'inertie mais aussi pour contrer la sortie (angle du volant).
ericnutsch
Le PID ne connaît pas le système @ergon. C'est la beauté du PID, mais aussi son plus gros échec. Il n'est pas capable d'anticiper, il ne peut que réagir. Derivate est en pratique un peu difficile car il est souvent bruyant en raison de la façon dont il est mesuré. Il contrebalance principalement les grandes valeurs de P.
joojaa
9

En termes intuitifs, j'ai trouvé l'explication suivante utile.

Par souci d'argument, disons que notre système remplit un seau avec un trou dans l'eau d'un robinet. Nous mesurons la profondeur de l'eau dans le seau et contrôlons le débit d'eau via un robinet. Nous voulons remplir le seau le plus rapidement possible, mais nous ne voulons pas qu'il déborde.

L' élément proportionnel est une mesure linéaire, dans ce cas, la hauteur de l'eau dans le seau, c'est une mesure utile de la façon dont le buck est plein à un moment donné, mais il ne nous dit rien sur la vitesse à laquelle il se remplit donc au moment où nous remarquez qu'il est plein, il peut être trop tard pour fermer le robinet ou si nous le remplissons trop lentement, l'eau s'écoulera par le trou plus vite qu'il ne se remplit et il ne se remplit jamais complètement.

Sur le papier, cela semble suffisant à lui seul et dans certains cas, il se décompose quand le système lui-même est intrinsèquement instable (comme un pendule inversé ou un avion de chasse) et le décalage entre la mesure de l'erreur et la la prise d'effet des entrées est lente par rapport à la vitesse à laquelle les perturbations externes induites par le bruit.

L' élément dérivé est le taux de variation du niveau d'eau. Ceci est particulièrement utile lorsque nous voulons remplir le seau le plus rapidement possible, par exemple, nous pouvons ouvrir le robinet aussi loin que possible au début pour le remplir rapidement, mais le fermer un peu une fois que le niveau se rapproche du haut, donc nous peut être un peu plus précis et ne pas trop le remplir.

L' élément intégral est le volume total d'eau ajouté au seau. Si le seau a des côtés droits, cela n'a pas beaucoup d'importance car il se remplit à un taux proportionnel au débit d'eau MAIS si le seau a des côtés effilés ou incurvés, le volume d'eau qu'il contient commence à avoir un effet sur le taux auquel le niveau d'eau change. Plus généralement, car il s'agit d'une intégrale qui s'accumule au fil du temps, applique donc une réponse plus importante si les éléments P et D ne corrigent pas suffisamment, par exemple en maintenant le godet à moitié plein.

Une autre façon de voir les choses est que l'intégrale est une mesure de l'erreur cumulative dans le temps et est effectivement un contrôle de l'efficacité de la stratégie de contrôle pour atteindre le résultat souhaité et est capable de modifier l'entrée en fonction de la façon dont le système se comporte réellement sur une période de temps.

Donc en résumé:

l'élément P (proportionnel) est proportionnel à la variable que vous souhaitez contrôler (comme un simple thermostat)

l'élément D (dérivé) est proportionnel au taux de variation de cette variable

l'élément (intégral) est peut-être le plus difficile à comprendre, mais se rapporte à la quantité que votre paramètre P mesure généralement, ce sera une quantité cumulative comme le volume, la masse, la charge, l'énergie, etc.

Chris Johns
la source
Réponse incroyable, meilleure explication que j'ai trouvée n'importe où. Mais 2 autres questions: 1. Comment les paramètres sont-ils réglés? Automatiquement ou autrement? S'il ne s'agissait que d'un paramètre, je vois vaguement comment il pourrait être poussé vers le haut ou vers le bas, par exemple algorithmiquement, pour arriver finalement à une valeur stable. 2. D'une certaine manière, cette valeur elle-même conduit à la nécessité d'un système PID si la nature de l'environnement devait changer. Par exemple, si le godet ou le robinet devaient être modifiés, comment les paramètres pourraient-ils être ajustés le plus efficacement? J'espère que cela ne demande pas trop, peut-être que cela mérite une ou deux questions distinctes?
CL22
Le réglage des paramètres se résume vraiment à la façon dont vous modélisez le système en premier lieu. Vous pouvez le faire mathématiquement avec les transformées de Laplace qui modélisent la réponse du système en termes de fréquence, c'est-à-dire que vous la traitez comme un système masse / ressort / amortisseur. Ou vous pouvez simplement avoir un système physique où vous n'avez qu'à modifier les cadrans et boutons réels. Dans la pratique, cela pourrait bien être un peu des deux, le modèle mathématique vous donne un point de départ raisonnable que vous affinez en réponse au comportement du monde réel.
Chris Johns
@Jodes dans la pratique, les systèmes réels ont beaucoup de comportements qui ne peuvent pas être connus à l'avance avec la modélisation.
joojaa
4

Les contrôleurs PID utilisent des paramètres de réglage pour ajuster la réponse.

De l'équation pour le contrôle PID:

entrez la description de l'image ici

Les trois termes en indice K sont les paramètres de réglage, et il y en a un pour chaque terme de la sortie du contrôleur PID: proportionnel, intégral et différentiel.

Ainsi, par exemple, avec une erreur de + 5V et un Kp de 0,3, la sortie serait de 1,5V. De même pour les termes intégraux et différentiels.

En pratique, ces paramètres sont déterminés expérimentalement. La méthode de réglage Ziegler-Nichols (pdf) est une méthode heuristique simple qui était très populaire dans l'industrie.

De nos jours, la plupart des contrôleurs PID et des fonctions PLC standard sont dotés d'un réglage intégré.

J'espère que cela pourra aider!

Jim Hargreaves
la source