PID (VI)
- Mise à jour2023-02-21
- Temps de lecture : 11 minute(s)
PID (VI)
Palette propriétaire : VIs de PID
Requiert : Système de développement complet
Implémente un régulateur PID en utilisant un algorithme PID pour des applications PID simples ou des applications de contrôle haute vitesse qui nécessitent un algorithme efficace. L'algorithme PID offre une fonctionnalité de limitation de la gamme du signal de commande et d'anti-saturation de l'intégrateur, et un signal de commande sans à-coups en cas de variations de gain du PID. Utilisez l'instance DBL de ce VI pour implémenter une boucle de contrôle unique. Utilisez l'instance Tableau DBL pour implémenter un contrôle à plusieurs boucles parallèles.
PID (DBL)

![]() |
gamme de la sortie spécifie la gamme dans laquelle contraindre le signal de commande. Par défaut, la gamme est comprise entre -100 et 100, ce qui correspond aux valeurs spécifiées en pourcentage de la pleine échelle. Vous pouvez changer cette gamme en valeurs appropriées pour votre système de régulation. Par exemple, vous pouvez associer des unités ingénieur à des unités ingénieur plutôt que des pourcentages à des pourcentages. Ce VI implémente l'anti-saturation de l'intégrateur quand le signal de commande est saturé aux valeurs minimale et maximale spécifiées.
| ||||||
![]() |
consigne spécifie la valeur de la consigne, ou valeur désirée, de la variable de processus contrôlée. | ||||||
![]() |
variable du processus spécifie la valeur mesurée de la variable de processus contrôlée. Cette valeur est égale à la valeur de rétroaction de la boucle de régulation. | ||||||
![]() |
gains du PID spécifie les paramètres de gain proportionnel, de temps intégral et de temps dérivé du régulateur.
| ||||||
![]() |
dt (s) spécifie la durée du cycle de boucle, ou intervalle en secondes, à laquelle ce VI est appelé. Si dt (s) est inférieur ou égal à zéro, ce VI calcule la durée depuis qu'il a été appelé pour la dernière fois, en utilisant un timer interne ayant une résolution de 1 ms. Si dt (s) doit être inférieur à 1 ms, spécifiez la valeur explicitement. La valeur par défaut est -1. | ||||||
![]() |
réinitialiser ? spécifie s'il faut réinitialiser les paramètres internes, tels que l'erreur intégrée, du régulateur. Définissez réinitialiser ? à VRAI si votre application doit arrêter et redémarrer la boucle de contrôle sans redémarrer toute l'application. La valeur par défaut est FAUX. | ||||||
![]() |
sortie renvoie le signal de commande de l'algorithme du PID appliqué au processus contrôlé. Si ce VI reçoit une entrée non valide, sortie renvoie NaN. | ||||||
![]() |
dt en sortie (s) renvoie l'intervalle de temps réel en secondes. dt en sortie (s) renvoie soit la valeur de dt (s), soit l'intervalle calculé si vous définissez dt (s) à -1. |
PID (tableau DBL)

![]() |
gamme de la sortie spécifie la gamme dans laquelle contraindre le signal de commande. Par défaut, la gamme est comprise entre -100 et 100, ce qui correspond aux valeurs spécifiées en pourcentage de la pleine échelle. Vous pouvez changer cette gamme en valeurs appropriées pour votre système de contrôle. Par exemple, vous pouvez associer des unités ingénieur à unités ingénieur plutôt que des pourcentages à des pourcentages. Ce VI implémente l'anti-saturation de l'intégrateur quand le signal de commande est saturé aux valeurs minimale et maximale spécifiées. gamme de sortie est un tableau de clusters des éléments suivants.
| ||||||
![]() |
consigne spécifie la valeur de la consigne, ou valeur désirée, de la variable de processus contrôlée. Ce VI redimensionne le tableau en entrée consigne pour qu'il corresponde à la taille du tableau en entrée variable du processus. | ||||||
![]() |
variable du processus spécifie la valeur mesurée de la variable de processus contrôlée. Cette valeur est égale à la valeur de rétroaction de la boucle de régulation. | ||||||
![]() |
gains du PID est un tableau de clusters des éléments suivants.
| ||||||
![]() |
dt (s) spécifie la durée du cycle de boucle, ou intervalle en secondes, à laquelle ce VI est appelé. Si dt (s) est inférieur ou égal à zéro, ce VI calcule la durée depuis qu'il a été appelé pour la dernière fois, en utilisant un timer interne ayant une résolution de 1 ms. Si dt (s) doit être inférieur à 1 ms, spécifiez la valeur explicitement. La valeur par défaut est -1. | ||||||
![]() |
réinitialiser ? spécifie s'il faut réinitialiser les paramètres internes, tels que l'erreur intégrée, du régulateur. Définissez réinitialiser ? à VRAI si votre application doit arrêter et redémarrer la boucle de contrôle sans redémarrer toute l'application. La valeur par défaut est FAUX. | ||||||
![]() |
sortie renvoie le signal de commande de l'algorithme du PID appliqué au processus contrôlé. Ce VI détermine la longueur du tableau en sortie à partir de la taille du tableau en entrée variable du processus. | ||||||
![]() |
dt en sortie (s) renvoie l'intervalle de temps réel en secondes. dt en sortie (s) renvoie soit la valeur de dt (s), soit l'intervalle calculé si vous définissez dt (s) à -1. |
Compatibilité

![]() |
consigne spécifie la valeur de la consigne, ou valeur désirée, de la variable de processus contrôlée. | ||||||||||||||||||||||
![]() |
variable du processus spécifie la valeur mesurée de la variable de processus contrôlée. Cette valeur est égale à la valeur de rétroaction de la boucle de régulation. | ||||||||||||||||||||||
![]() |
paramètres du PID est un cluster qui contient les paramètres de gains du PID mis à jour pour chaque régulateur. Vous pouvez utiliser les valeurs mises à jour avec d'autres VIs PID.
| ||||||||||||||||||||||
![]() |
contrôle manuel spécifie la valeur du signal de commande quand auto ? est FAUX. | ||||||||||||||||||||||
![]() |
options spécifie les paramètres de régulation PID.
| ||||||||||||||||||||||
![]() |
itération est l'itération actuelle de la boucle. Câblez ce paramètre au terminal d'itération de la boucle While. | ||||||||||||||||||||||
![]() |
sortie renvoie le signal de commande de l'algorithme du PID appliqué au processus contrôlé. Si ce VI reçoit une entrée non valide, sortie renvoie NaN. |
Détails sur PID
Vous pouvez utiliser l'instance Tableau DBL de ce VI polymorphe dans des applications de régulation PID à plusieurs boucles. Dans ce cas, la longueur de l'entrée variable du processus détermine la longueur du tableau en sortie. Les autres tableaux en entrée ne doivent pas nécessairement être de la même longueur que l'entrée variable du processus. Ce VI redimensionne les autres tableaux en entrée à la même longueur que l'entrée variable du processus comme suit :
- Si le tableau en entrée est plus long que l'entrée variable du processus, le tableau en entrée est tronqué à la taille de l'entrée variable du processus. Les valeurs supplémentaires du tableau ne sont pas utilisées.
- Si le tableau en entrée est plus court que l'entrée variable du processus, la dernière valeur du tableau en entrée se répète jusqu'à ce que la taille corresponde à celle de l'entrée variable du processus.
De cette manière, une valeur en entrée qui doit être utilisée pour chaque calcul de sortie ne doit pas être spécifiée plusieurs fois dans le tableau transmis à ce VI. Au lieu de cela, le tableau peut consister en une valeur unique utilisée pour chaque calcul de sortie.
Exemple
Reportez-vous au VI General PID Simulator.vi, dans le répertoire labview\examples\control\PID, pour obtenir un exemple d'utilisation de "PID".









