Implémente un régulateur PID en utilisant un algorithme PID ayant des fonctionnalités optionnelles avancées. L'algorithme PID avancé inclut les fonctionnalités de l'algorithme utilisé par le VI PID, ainsi qu'un contrôle manuel avec des transitions sans à-coup du mode manuel au mode automatique, une action intégrale non linéaire, un contrôle à deux degrés de liberté et un contrôle d'erreur quadratique. 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.


icon

Entrées/Sorties

  • cdbl.png alpha

    alpha spécifie la constante de temps du filtre dérivée. Si vous augmentez cette valeur, l'amortissement de l'action dérivée augmente.

    alpha peut être une valeur comprise entre 0 et 1, ou NaN si aucun filtre dérivé n'est appliqué.

  • cdbl.png gamma

    gamma spécifie une valeur par laquelle pondérer l'erreur appliquée à l'action dérivée. La valeur par défaut est 0, et évite l'à-coup de dérivation, ou variation soudaine de la sortie du régulateur, qui se produit lorsque la consigne change.

    Dans certaines opérations de contrôle en cascade où l'à-coup de dérivation n'a pas d'importance, augmenter gamma peut améliorer la vitesse du premier régulateur PID.

  • cdbl.png contrôle manuel

    contrôle manuel spécifie la valeur du signal de commande quand auto ? est FAUX.

  • cbool.png auto ? (V)

    auto ? spécifie s'il faut utiliser le contrôle automatique ou manuel. Dans certains cas, vous serez peut-être amené à arrêter le régulateur PID et à exécuter le système en mode manuel ou en boucle ouverte. La valeur par défaut est VRAI.

    Si auto ? est Vrai, ce VI utilise le contrôle automatique. Si auto ? est Faux, ce VI utilise le contrôle manuel. Ce VI utilise un transfert sans à-coup pour passer du contrôle manuel au contrôle automatique.

  • cnclst.png gamme de la sortie

    gamme de la sortie spécifie la gamme dans laquelle contraindre la sortie du régulateur. 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.

  • cdbl.png sortie max

    max de la sortie spécifie la valeur maximale du signal de commande. La valeur par défaut est 100.

  • cdbl.png sortie min

    min de la sortie spécifie la valeur minimale du signal de commande. La valeur par défaut est –100.

  • cdbl.png consigne

    consigne spécifie la valeur de la consigne, ou valeur désirée, de la variable de processus contrôlée.

  • cdbl.png 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.

  • cnclst.png gamme de la consigne

    gamme de la consigne spécifiie les valeurs maximale et minimale de la gamme de la consigne ou de la variable du processus. Ce VI utilise la gamme de la consigne pour calculer une action intégrale non linéaire. Par défaut, la gamme est [0, 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 utilise la plage de consigne dans le calcul de l'action intégrale non linéaire et dans le calcul de l'erreur non linéaire.

  • cdbl.png consigne max

    consigne max spécifie la valeur maximale de la gamme de la consigne ou de la variable du processus.

  • cdbl.png consigne min

    consigne min spécifie la valeur minimale de la gamme de la consigne ou de la variable du processus.

  • cnclst.png gains du PID

    Gains du PID spécifie les paramètres de gain proportionnel, de temps intégral et de temps dérivé du régulateur.

  • cdbl.png gain proportionnel (Kc)

    gain proportionnel (Kc) spécifie le gain proportionnel du régulateur. La valeur par défaut est 1.

    Dans l'équation qui définit le régulateur PID, KC représente le gain proportionnel.

  • cdbl.png temps intégral (Ti, min)

    temps intégral (Ti, min) spécifie le temps intégral en minutes. La valeur par défaut est 0,01.

  • cdbl.png temps dérivé (Td, min)

    temps dérivé (Td, min) spécifie le temps dérivé en minutes. La valeur par défaut est 0.

  • cdbl.png dt (s)

    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.

  • cbool.png réinitialiser ? (F)

    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 l'application entière. La valeur par défaut est FAUX.

  • cdbl.png bêta

    bêta spécifie la priorité accordée au suivi de la consigne par rapport au rejet des perturbations. La valeur par défaut, 1, convient à la plupart des applications. Vous pouvez utiliser une valeur plus petite, entre 0 et 1, pour donner priorité au rejet des perturbations (les changements de charge du processus, par exemple).

    Le VI utilise cette valeur dans l'algorithme à deux degrés de liberté.

  • cdbl.png linéarité

    linéarité spécifie la linéarité de la réponse d'erreur. La gamme de linéarité valide va de 0 à 1. La valeur 1 produit une réponse linéaire normale, alors que la valeur 0,1 produit une réponse parabolique approximative.

    Le VI utilise cette valeur pour le calcul d'erreur non linéaire et le calcul du facteur de gain non linéaire.

  • idbl.png sortie

    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.

  • idbl.png dt en sortie (s)

    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.

  • 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.

    Transfert sans à-coup du mode manuel au mode automatique

    Ce VI supporte le transfert sans à-coup du mode manuel au mode automatique, qui garantit un signal de commande sans à-coup lors de la transition du mode de contrôle manuel au mode automatique.

    Transfert sans à-coup du mode automatique au mode manuel

    Ce VI ne peut pas implémenter le transfert sans à-coup du mode automatique au mode manuel. Pour garantir une transition sans à-coup du mode de contrôle automatique au mode manuel, vous devez concevoir votre application de façon à ce que la valeur de sortie manuelle corresponde à la valeur du signal de commande au moment où le mode de contrôle change d'automatique à manuel. Pour cela, vous pouvez utiliser une variable locale pour contrôle manuel, comme l'indique le diagramme suivant :

    Exemples

    Reportez-vous aux exemples de fichiers inclus avec LabVIEW suivants.

    • labview\examples\control\PID\Manual-Automatic Control.vi