Le bloc fonction calcule la réponse PI pour le point de consigne i_rSp et la valeur réelle de la boucle extérieure i_rActValPI. Cette réponse PI est ajoutée à la valeur de précommande i_rPreCtrlVal et limitée par les entrées de seuil maximale et minimale, et sert de point de consigne pour la boucle PID interne.
La boucle interne calcule une réponse PID avec i_rActValPID comme valeur réelle de boucle interne.
Cette équation présente la fonction de transfert de l'élément PI :
Avec :
Kp = Gain proportionnel
Tn = Temps d'intégrale
Cette équation présente la fonction de transfert de l'élément PID :
Avec
Kp = Gain proportionnel
Tn = Temps d'intégrale
Mode automatique :
Td = Temps de dérivée
Tv = Temps de filtrage
La boucle PI et la boucle PID peuvent être configurées individuellement en mode manuel par les broches d'entrée i_xManModePI et i_xManModePID respectivement. En mode manuel, la sortie de la boucle PI et les sorties de boucle PID sont remplacées par des valeurs sur les broches d'entrée i_rManValPI et i_rManValPID respectivement.
Cette figure présente la fonction de transfert pour le bloc fonction FB_PI_PID :
Cette figure présente le diagramme de temps pour le bloc fonction FB_PI_PID :
Un paramètre non valable aux entrées du bloc fonction conduit à une d'erreur détectée et à la génération d'un ID d'erreur détectée correspondant.
Pendant l'état d'erreur détectée, les valeurs de sortie sont mises à zéro.
L'erreur détectée ne peut être réinitialisée que par un front montant de l'entrée i_xErrRst.
La sortie q_xBusy a la valeur TRUE chaque fois que le bloc fonction est activé et qu'il n'y a pas d'erreur détectée.