Proportionnel, intégral et dérivé (PID)
Ces informations s’appliquent aux automates
CompactLogix
5370, ControlLogix
5570, Compact GuardLogix
5370, GuardLogix
5570, Compact GuardLogix
5380, CompactLogix
5380, ControlLogix
5580, GuardLogix
5580 et ControlLogix 5590.L'instruction PID contrôle une variable de procédé comme un débit, une pression, une température ou un niveau.
L’instruction PID reçoit généralement la variable de procédé (PV) d’un module d’entrée analogique et module une sortie de variable de contrôle (CV) sur un module de sortie analogique pour maintenir la variable de procédé au point de consigne voulu.
Le bit .EN indique l’état de l’exécution. Le bit .EN est défini lorsque EnableIn passe de faux à vrai. Le bit .EN est mis à zéro lorsque EnableIn devient faux. L’instruction PID n’utilise pas de bit .DN. L’instruction PID est exécutée à chaque scrutation tant EnableIn est vrai.

Langues disponibles
Diagramme à relais

Texte structuré
PID(PID,ProcessVariable,Tieback,ControlVariable,PIDMasterLoop,InHoldBit,InHoldValue);
Opérandes
Il existe des règles de conversion de données pour les types de données mixtes dans une instruction. Reportez-vous à la section Conversions de données.
Diagramme à relais
Opérande | Type | Format | Description |
|---|---|---|---|
PID | PID | structure | Structure PID |
Process variable | SINT | balise | Valeur que vous voulez contrôler |
INT | |||
DINT | |||
REAL | |||
Tieback | SINT | immédiat | (facultatif) |
INT | balise | ||
DINT | Sortie d’une station matérielle portable/auto qui contourne la sortie de l’automate. Entrez 0 si vous ne voulez pas utiliser ce paramètre | ||
REAL | |||
Control variable | SINT | balise | Valeur qui est envoyée au dispositif final de commande (vanne, amortisseur, etc.) |
INT | |||
DINT | Si vous utilisez la plage morte, la Control variable doit être du type REAL, sinon elle sera forcée à 0 lorsque l’erreur se trouve à l’intérieur de la plage morte. | ||
REAL | |||
PID master loop | PID | Structure | Facultatif |
PID tag for the master PID | |||
If you are performing cascade control and this PID is a slave loop, enter the name of the master PID | |||
Enter 0 if you do not want to use this parameter | |||
Inhold bit | BOOL | balise | Facultatif |
État courant du bit de maintien d’un canal de sortie analogique 1756 | |||
pour prendre en charge un redémarrage sans à-coups | |||
Inhold value | SINT | balise | Facultatif |
INT | Valeur de retour de données à partir d’un sortie analogique 1756 | ||
DINT | Canal pour prendre en charge le redémarrage sans à-coups | ||
REAL | Entrez 0 si vous ne voulez pas utiliser ce paramètre | ||
Setpoint | Affichage seulement | ||
Current value of the setpoint | |||
Process variable | Affichage seulement | ||
Current value of the scaled Process_Variable | |||
Output % | Affichage seulement | ||
Current output percentage value |
Structure PID
Spécifier une structure PID unique pour chaque instruction PID.
Mnémonique | Type de données | Description |
|---|---|---|
.CTL | DINT | Le membre .CTL fournit un accès aux membres d'état (bits) dans un mot unique de 32 bits. L’instruction PID définit les bits 07 à 15. Voir le membre .CTL. |
.SP | REAL | point de consigne |
.KP | REAL | Indépendant – gain proportionnel (sans unité) |
Dependent - controller gain (unitless) | ||
.KI | REAL | Indépendant – gain intégral (1/sec) |
Dependent - reset time (minutes per repeat) | ||
.KD | REAL | Indépendant – gain dérivé (en secondes) |
Dependent - rate time (minutes) | ||
.BIAS | REAL | % d'anticipation ou décalage |
.MAXS | REAL | valeur de mise à l’échelle d’unités de procédé maximale |
.MINS | REAL | valeur de mise à l’échelle d’unités de procédé minimale |
.DB | REAL | plage morte en unités de procédé |
.SO | REAL | définir % de sortie |
.MAXO | REAL | limite de sortie maximale (% de sortie) |
.MINO | REAL | limite de sortie minimale (% de sortie) |
.UPD | REAL | heure de mise à jour de la boucle (en secondes) |
.PV | REAL | valeur PV mise à l'échelle |
.ERR | REAL | valeur d'erreur mise à l'échelle |
.OUT | REAL | % de sortie |
.PVH | REAL | limite d’alarme haute de variable de procédé |
.PVL | REAL | limite d’alarme basse de variable de procédé |
.DVP | REAL | limite d’alarme de déviation positive |
.DVN | REAL | limite d’alarme de déviation négative |
.PVDB | REAL | plage morte d'alarme de variable de procédé |
.DVDB | REAL | plage morte d’alarme de déviation |
.MAXI | REAL | valeur PV maximale (entrée non mise à l’échelle) |
.MINI | REAL | valeur PV minimale (entrée non mise à l’échelle) |
.TIE | REAL | valeur de rétro-liaison pour contrôle manuel |
.MAXCV | REAL | valeur CV maximale (correspondant à 100 %) |
.MINCV | REAL | valeur CV minimale (correspondant à 0 %) |
.MINITIE | REAL | valeur de rétro-liaison minimum (correspondant à 100 %) |
.MAXTIE | REAL | valeur de rétro-liaison maximale (correspondant à 0 %) |
.DATA[17] | REAL | Le membre .DATA mémorise :
|
Le membre .CTL
Bit | Numéro | Description |
.EN | 31 | |
.CT | 30 | type de cascade (0=esclave ; 1=maître) |
.CL | 29 | boucle en cascade (0=non ; 1=oui) |
.PVT | 28 | suivi de la variable de procédé (0=non ; 1=oui) |
.DOE | 27 | dérivé de (0=PV ; 1=erreur) |
.SWM | 26 | mode logiciel (0=non-auto ; 1=oui-manuel logiciel) |
.CA | 25 | action de contrôle (0=inversé (SP-PV) ; 1=direct (PV-SP)) |
.MO | 24 | mode de station (0=automatique ; 1=manuel) |
.PE | 23 | équation PID (0=indépendant ; 1=dépendant) |
.NDF | 22 | lissage des dérivées (0=non ; 1=oui) |
.NOBC | 21 | calcul de décalage (0=non ; 1=oui) |
.NOZC | 20 | passage par zéro (0=non ; 1=plage morte) |
.INI | 15 | PID initialisé (0=non ; 1=oui) |
.SPOR | 14 | point de consigne hors limites (0=non ; 1=oui) |
.OLL | 13 | CV est au-dessous de la valeur minimale de sortie (0=non ; 1=oui) |
.OLH | 12 | CV est au-dessus de la valeur maximale de sortie (0=non ; 1=oui) |
.EWD | 11 | l'erreur est à l'intérieur de la plage morte (0=non ; 1=oui) |
.DVNA | 10 | erreur avec alarme basse (0=non ; 1=oui) |
.DVPA | 9 | erreur avec alarme haute (0=non ; 1=oui) |
.PVLA | 8 | PV avec alarme basse (0=non ; 1=oui) |
.PVHA | 7 | PV avec alarme haute (0=non ; 1=oui) |
Affecte les indicateurs d'état mathématique
Non
Défauts majeurs/mineurs
Un défaut mineur surviendra si : | Type de défaut | Code de défaut |
|---|---|---|
UPD ≥ 0 | 4 | 35 |
point de consigne hors limites | 4 | 36 |
Reportez-vous à la section Attributs courants pour plus d’informations sur les défauts liés aux opérandes.
Exécution
Diagramme à relais
Condition/état | Action entreprise | Opérandes avec vérification des limites |
|---|---|---|
Préscrutation | Définir .EN sur faux Initialiser la structure pid | PID |
Tag.EnableIn est faux | Définir .EN sur faux | PID |
Tag.EnableIn est vrai | Définir .EN sur vrai L’instruction exécute la boucle PID. | Tous les opérandes |
Post-scrutation | Définir .EN sur faux | PID |
Fournir une réponse