Proportionnel, intégral et dérivé (Process Proportional + Integral + Derivative, PPID)
Ces informations s’appliquent aux automates CompactLogix 5380P, ControlLogix 5580P et ControlLogix 5590.
Utilisez l’instruction de traitement proportionnel + Intégral + Dérivé (PPID) pour manipuler la variable de contrôle (CV) dans les boucles de contrôle du régulateur en réponse aux lectures de la variable de procédé (PV) et aux réglages du point de consigne (SP, PV cible).
La CV s’utilise généralement comme point de consigne en cascade pour une boucle de contrôle secondaire ou interne , ou est envoyée vers un canal de sortie analogique sur une carte d’E/S (I/O).
L’instruction PPID intègre les fonctions de PID, PIDE et P_PIDE existantes dans une instruction intégrée unique et ajoute des fonctionnalités supplémentaires.
L’instruction PPID :
- Calcule CV avec l’algorithme PID de vitesse. L’algorithme de vitesse est également appelé algorithme incrémentiel. L’algorithme de vitesse calcule la valeur CV en additionnantDPTerm,DITerm,DDTerm,DFF et CV à partir de l’exécution précédente de l’instruction. Lorsque Inp_UseCVPrev est défini, le CV précédent est égal à Inp_CVPrev. Lorsque Inp_UseFFPrev est défini, le FF précédent est égal à Inp_FFPrev. Cela vous permet de prédéfinir CV sur une valeur spécifiée avant que la valeur CV de sortie ne soit calculée, CV = CV précédente +DPTerm +DITerm +DDTerm +DFF. La forme de vitesse de l’algorithme PID prend en charge le transfert sans à-coup lors du changement de paramètre.
- Permet de supprimer un transfert sans à-coup lors d’une modification du gain. Lorsque cette option est sélectionnée, le calcul PID se comporte comme un algorithme PID de position où l’action de contrôle change avec l’erreur de boucle et non l’erreur de changement.
- Utilise une formule PID égale à deux degrés de liberté pour le calcul de CV avec une action PTerm proportionnelle dérivée de la différence pondérée SP et PV (b*SP-PV), de l’action ITerm intégrale dérivée de l’erreur de contrôle (SP-PV) et de l’action DTerm dérivée provenant de la modification des différences de SP et de PV pondérées (c*SP-PV). La modification du paramètre de poids lors de l’exécution n’a pas de à-coups.
- Utilise un algorithme de carré d’erreur (option) avec une CV plus agressive lors de la survenue d’une erreur. L’utilisation du carré d’erreur est limitée à PTerm.
- Fournit une action Direct/Inverse (option). L’action est Direct lorsque la CV augmente avec l’augmentation de la PV (Cfg_CtrlAction=1). L’action est Inverse si la CV diminue avec l’augmentation de la PV (Cfg_CtrlAction=0).
- Autorise la déviation de la zone morte. La CV n’est pas sensible à la variation d’erreur de boucle dans la zone autour de zéro erreur. Des niveaux de zone configurés permettent une hystérèse supplémentaire. Le niveau de zone morte pour PV qui s’approche de SP (Cfg_DevDBEnter) peut être inférieur au niveau de zone morte pour que PV s’écarte de SP (Cfg_DevDB). L’état de la zone morte active est défini pour PV dans la zone morte. Offre une option pour arrêter les mouvements CV ou simplement arrêter l’intégration tout en laissant en direct l’action proportionnelle et dérivée en zone morte (Cfg_UseIntegDevDB).
- Affiche les unités procédé sur l’interface de l’applicationLogix Designer. Les valeurs SP et PV sont affichées et saisies en unités procédé PV. Val_CVSet de la cible CV et de la Val_CVOut pour la sortie CV s’affichent et s’intègrent dans les unités de procédé CV. L’algorithme PID utilise toutes les variables mises à l’échelle en pourcentage de la plage en interne. Ces valeurs sont également disponibles en tant que sorties Val_PVPercent, Val_SPPercent, Val_EPercent et Val_CVPercent.
- Il est configurable pour des gains indépendants et dépendants. L’interprétation des valeurs stockées dans les tags PGain, IGain et DGain dépend de la configuration de l’instruction.
- Configuration des gains indépendants : PGain = Kp ... gain proportionnel, IGain = Ki ... gain intégral [1/minute], DGain = Kd ... gain dérivé [minutes].
- Configuration des gains dépendants : PGain = K ... gain de l’automate, IGain = Ti ... durée de réinitialisation [minutes], DGain = Td ... constante de temps [minutes].Utilisez des gains indépendants si vous souhaitez que les trois gains des termes proportionnel, intégral et dérivé fonctionnent indépendamment. Choisissez les gains dépendants si vous voulez un gain de l’automate global qui affecte les trois conditions (P, I et D).
- Fournit un lissage des dérivés facultatif (limite des dérivés en haute fréquence). Un dérivé pur donne une très grande amplification du bruit de mesure. Les algorithmes PID dépendants et indépendants peuvent être configurés pour limiter le gain du terme dérivé à haute fréquence.
- Garantit une saturation d’intégrale. L’algorithme PID est équipé de la prévention de saturation intégrale (réinitialisation) (réinitialisation du retour). Saturation intégrale interne lorsque CV sature automatiquement. La saturation intégrale externe de la boucle interne indiquée par Inp_WindupHi ou Inp_WindupLo est également traitée si les entrées sont utilisées.
- Autorise le suivi de la CV externe (option). Lorsque Cfg_UseCVTrack est défini ou que la boucle interne n’est pas disponible pour l’instruction PPID (Inp_InnerAvailable est faux), CV suit la valeur Inp_CVTrack. Cette option est utile lorsque la boucle interne (secondaire) en cascade n’est pas en mesure de suivre la valeur CV calculée par cette boucle PID (primaire) externe, et que Inp_WindupHi ou Inp_WindupLo n’est pas utilisée ou n’est pas vraie. Le suivi est autorisé avec une dynamique configurée spécifiée dans Cfg_CVTrackGain. CVTrackGain est considéré comme la constante de suivi du gain Kt (1/minute) pour une constante de temps indépendante ou de suivi Tt (minutes) pour des gains dépendants.
- Fournit un blocage et une rampe de SP configurés : blocage (en PVEU) et effet de rampe (en PVEU/seconde) du point de consigne aux limites spécifiées (augmentation distincte et diminution des limites de fréquence de changement).
- Fournit un blocage et une rampe de CV configurés : blocage (en CVEU) et effet de rampe (en CVEU/seconde) de CV aux limites spécifiées (augmentation et diminution séparées des limites de fréquence de changement).
- Active le retour Portable de CV.
- Prend en charge les opérations à partir de ces sources de commande : Contrôle Portable, Maintenance, Asservissement et de boucle complète (Cascade, Auto avec point de consigne, Manuel avec CV) à partir d’Externe, Programme et Opérateur.
- Prend en charge trois modes de boucle automatique (Auto, Cascade, Cascade/Rapport) et un mode de boucle manuel (Manuel).
- En mode Boucle automatique, le point de consigne (SP) en unités procédé (PVEU) est lu à partir de l’entrée Programme, Opérateur, Asservissement ou Externe. Vous pouvez également entrer une cible de point de consigne en unités procédé PV (PVEU) et temps de rampe (secondes) et utiliser une commande pour déclencher une rampe intégrée de point de consigne.
- En mode de boucle Manuel, la variable de contrôle (CV) en unités procédé est lue à partir de l’entrée Programme, Opérateur, Asservissement ou Externe.
- Surveille les conditions de verrouillage qui provoquent l’excitation de la sortie CV et SP. La mise hors tension de CV peut être configurée pour retenir la dernière valeur CV correcte ou pour utiliser la valeur de sécurité configurée. Le SP est mis hors tension vers la PV actuelle.
- Surveille les défauts de communication d’E/S (I/O).
- Prend en charge les opérations de mise sous tension et d’initialisation. Au cours de la mise sous tension, les modes SP, CV et Boucle sont définis sur des valeurs configurées.
- Surveille les conditions d’alarme pour le déclenchement du verrouillage, la panne de boucle, la déviation haute-haute, la déviation haute, la déviation basse et la déviation basse-basse à partir du point de consigne.
- L’état de déviation haute-haute se produit lorsque la différence entre le point de consigne et la variable de procédé calculée comme étant PV-SP dépasse les seuils configurés.
- L’état de déviation haute se produit lorsque la différence entre le point de consigne et la variable de procédé calculée comme étant PV-SP dépasse les seuils configurés.
- L’état de déviation basse se produit lorsque la différence entre le point de consigne et la variable de procédé calculée comme étant PV-SP dépasse les seuils configurés.
- L’état de déviation basse-basse se produit lorsque la différence entre le point de consigne et la variable de procédé calculée comme étant PV-SP dépasse les seuils configurés.
- L’état Échec de boucle se produit lorsque l’instruction PPID indique une erreur de configuration importante, par exemple des limites de blocage non valides, des limites de mise à l’échelle et des zones mortes. Cet état se produit également lorsque la qualité de PV n’est pas suffisamment bonne pour que la boucle PID fonctionne avec, et lorsque l’entrée/l’état du défaut d’E/S (I/O) est vrai. Cet état est également provoqué lorsque l’entrée du retour portable est signalée comme étant incorrecte en mode Portable.
- L’état de verrouillage se produit lorsqu’une condition de verrouillage pas OK provoque le changement de la CV de sortie sur la valeur CV de verrouillage configurée ou la maintient à sa dernière valeur. Si les verrouillages ne sont pas contournés, une condition de verrouillage contournable ou non contournable non-OK déclenche un déclenchement de verrouillage. Si les verrouillages sont contournés, seule une condition de verrouillage non contournable non-OK initie un déclenchement de verrouillage.
Langues disponibles
Diagramme à relais

Diagramme de bloc fonctionnel

Texte structuré
PPID(PPID tag, BusObj);
Opérandes
IMPORTANT:
Une opération inattendue peut se produire dans les cas suivants :
- Les opérandes de balise de sortie sont remplacés.
- Les membres d'un opérande de structure sont remplacés.
- Sauf lorsque cela est spécifié, les opérandes de structure sont partagés par plusieurs instructions.
Il existe des règles de conversion de données pour combiner des types de données numériques dans une instruction. Reportez-vous à la section
Conversion des données
.Opérandes de configuration
Opérande | Type | Format | Description |
|---|---|---|---|
PlantPAx Control | P_PID | balise | Structure des données requise pour obtenir une bonne exécution de l'instruction. |
BusObj | BUS_OBJ | balise | Composant du bus. Peut-être nul. |
Structure P_PID
Les membres publics sont des membres standard, de balises visibles accessibles par programmation. Privés ou masqués, les membres sont utilisés dans les façades HMI et ne sont pas accessibles par programmation. Les membres privés sont répertoriés dans des tableaux distincts après les membres publics.
Membre d’entrée public | Type de données | Valeur par défaut | Description |
|---|---|---|---|
EnableIn | BOOL | Vrai | Activez l'entrée. Diagramme à relais : Correspond à la condition d’échelon. La valeur par défaut est définie sur vrai. |
Inp_InitializeReq | BOOL | Vrai | 1 = Demande d'initialisation de l'instruction. L'instruction est généralement initialisée lors de sa première exécution. Utilisez cette demande pour la réinitialiser. Lorsque Inp_InitializeReq = 1, les valeurs de configuration de mise sous tension sont utilisées. L'instruction efface automatiquement cet opérande. La valeur par défaut est définie sur vrai. |
Inp_OwnerCmd | DINT | 0 | Commande Dispositif de propriétaire : 0 = Aucun, Inp_OwnerCmd,10 = Verrouillage Opérateur, Inp_OwnerCmd,11 = Déverrouillage Opérateur, Inp_OwnerCmd,12 = Verrouillage Programme, Inp_OwnerCmd,13 = Déverrouillage Programme, Inp_OwnerCmd,14 = Acquérir Maintenance, Inp_OwnerCmd,15 = Libérer Maintenance, Inp_OwnerCmd,16 = Acquérir Externe, Inp_OwnerCmd.17 = Libérer Externe, Inp_OwnerCmd,29 = Écho. La valeur par défaut est 0. |
Inp_PV | REAL | 0,0 | Variable de procédé (PVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
Inp_CascSP | REAL | 0,0 | SP en mode de boucle Cascade, PV indépendant en mode de boucle Rapport (PVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
Inp_FF | REAL | 0,0 | Terme d’anticipation (CVEU). Valide toute valeur flottante entre -(Cfg_CVEUMax-Cfg_CVEUMin) et (Cfg_CVEUMax-Cfg_CVEUMin). La valeur par défaut est 0,0. |
Inp_FFPrev | REAL | 0,0 | Anticipation de scrutation précédente (CVEU) lorsque Inp_UseFFPrev = 1. Valide toute valeur flottante entre -(Cfg_CVEUMax-Cfg_CVEUMin) et (Cfg_CVEUMax-Cfg_CVEUMin). La valeur par défaut est 0,0. |
Inp_CVTrack | REAL | 0,0 | CV à suivre si Cfg_UseCVTrack = 1 ou si Inp_InnerAvailable = 0 (CVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
Inp_CVInitialVal | REAL | 0,0 | Valeur à laquelle initialiser la CV par requête Inp_UseCVInitialVal=1 (CVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
Inp_CVPrev | REAL | 0,0 | CV de scrutation précédente, Val_CVOut (CVEU). Valide toute valeur flottante entre Cfg_CVEUMin et Cfg_CVEUMax. La valeur par défaut est 0,0. |
Inp_UseFFPrev | BOOL | Faux | 1 = Utiliser Inp_FFPrev comme valeur FF précédente, 0 = Utiliser la dernière valeur de Inp_FF de scrutation comme valeur FF précédente. La valeur par défaut est fausse. |
Inp_UseCVInitialVal | BOOL | Faux | 1 = Initialisez CV sur Inp_CVInitialVal. La valeur par défaut est fausse. |
Inp_UseCVPrev | BOOL | Faux | 1 = Utiliser Inp_CVPrev comme valeur CV précédente, 0 = Utiliser la dernière valeur de scrutation. La valeur par défaut est fausse. |
Inp_WindupHi | BOOL | Faux | Signal élevé de saturation. Lorsque ce paramètre est défini sur vrai, la CV ne peut pas effectuer l’intégration dans le sens positif. Le signal est généralement obtenu à partir de la sortie haute de la saturation intégrale d’une boucle interne. La valeur par défaut est fausse. |
Inp_WindupLo | BOOL | Faux | Signal bas de la saturation. Lorsque ce paramètre est défini sur vrai, la CV ne peut pas effectuer l’intégration dans le sens négatif. Le signal est généralement obtenu à partir de la sortie basse de la saturation intégrale d’une boucle interne. La valeur par défaut est fausse. |
Inp_InnerAvailable | BOOL | Vrai | 1 = La boucle interne est disponible. 0 = la boucle interne n’est pas disponible, PPID suit Inp_CVTrack, en général, la position de SP de la boucle interne ou de l’actionneur. La valeur par défaut est définie sur vrai. |
Inp_IntlkOK | BOOL | Vrai | 1 = Verrouillages contournables OK, CV peut être défini. La valeur par défaut est définie sur vrai. |
Inp_NBIntlkOK | BOOL | Vrai | 1 = Verrouillages non contournables OK, CV peut être défini. La valeur par défaut est définie sur vrai. |
Inp_IntlkAvailable | BOOL | Faux | 1 = Disponibilité du verrouillage OK. La valeur par défaut est fausse. |
Inp_IntlkTripInh | BOOL | Faux | 1 = Bloquer l'état du déclenchement du verrouillage. La valeur par défaut est fausse. |
Inp_RdyReset | BOOL | Faux | 1 = Objet associé, réinitialisé par cet objet, prêt pour la réinitialisation. Prêt pour ORdy_Reset, active le bouton HMI. La valeur par défaut est fausse. |
Inp_CVIOFault | BOOL | Faux | 1 = L’état des communications d’E/S (I/O) de CV est mauvais, 0 = OK. La valeur par défaut est fausse. |
Inp_PVBad | BOOL | Faux | 1 = La qualité de PV ou l’état des communications d’E/S (I/O) de PV est mauvaise, 0 = OK. La valeur par défaut est fausse. |
Inp_PVUncertain | BOOL | Faux | 1 = Valeur PV non fiable, 0 = OK. La valeur par défaut est fausse. |
Inp_PVSrcQ | SINT | 0 | État et qualité de la source Inp_PV : 0 = Bonne, directe, confirmée bonne, 1 = Bonne, directe, supposée bonne, 2 = Bonne, aucun retour, supposée bonne, 8 = Test, simulée, 9 = Test, bouclage, 10 = Test, saisie manuellement, 16 = Incertaine, directe, hors spécifications, 17 = Incertaine, substituée au dispositif, 18 = Incertaine, substituée à l’instruction, 19 = Incertaine, utilisation du dernier bien connu, 20 = Incertaine, utilisation d’une valeur de remplacement, 32 = Mauvaise, panne de signal, 33 = Mauvaise, défaut de canal, 34 = Mauvaise, défaut de module/communication, 35 = Mauvaise, configuration non valide. La valeur par défaut est 0. |
Inp_PVNotify | SINT | 0 | Priorité d’alarme et état d’accusé de réception associés de l’objet PV : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. La valeur par défaut est 0. |
Inp_CVNotify | SINT | 0 | Priorité d’alarme et état d’accusé de réception associés de l’objet CV : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. La valeur par défaut est 0. |
Inp_CascSPNotify | SINT | 0 | Priorité d’alarme et état de confirmation associés de l’objet Cascade SP : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. La valeur par défaut est 0. |
Inp_HiHiDevGate | BOOL | Vrai | L’entrée de porte utilisée pour la détection de l’état d’écart HiHi : 1 = La surveillance du seuil d'entrée analogique correspondant est activée. 0 = La détection est désactivée et la sortie d'état correspondante est désactivée (forcée). La valeur par défaut est définie sur vrai. |
Inp_HiDevGate | BOOL | Vrai | L’entrée de porte utilisée pour la détection de l’état de déviation Hi : 1 = La surveillance du seuil d'entrée analogique correspondant est activée. 0 = La détection est désactivée et la sortie d'état correspondante est désactivée (forcée). La valeur par défaut est définie sur vrai. |
Inp_LoDevGate | BOOL | Vrai | L’entrée de porte utilisée pour la détection de l’état de déviation Lo : 1 = La surveillance du seuil d'entrée analogique correspondant est activée. 0 = La détection est désactivée et la sortie d'état correspondante est désactivée (forcée). La valeur par défaut est définie sur vrai. |
Inp_LoLoDevGate | BOOL | Vrai | L’entrée de porte utilisée pour la détection de l’état de déviation LoLo : 1 = La surveillance du seuil d'entrée analogique correspondant est activée. 0 = La détection est désactivée et la sortie d'état correspondante est désactivée (forcée). La valeur par défaut est définie sur vrai. |
Inp_Hand | BOOL | Faux | 1 = Acquérir Portable, 0 = Libérer Portable. La valeur par défaut est fausse. |
Inp_HandFdbk | REAL | 0,0 | Retour de CV utilisé lorsque le propriétaire est Portable (CVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
Inp_HandFdbkBad | BOOL | Faux | 1 = Qualité du retour portable de CV ou état de communication d’E/S (I/O) du retour portable de CV mauvais, 0 = OK. La valeur par défaut est fausse. |
Inp_Ovrd | BOOL | Faux | 1 = Acquérir Asservissement (logique de programme de priorité supérieure) 0 = Libérer Asservissement. La valeur par défaut est fausse. |
Inp_OvrdCmd | SINT | 0 | Commande en mode boucle dans Asservissement : 0 = Aucun, 1 = Manuelle 2 = Auto, 3 = Cascade, 4 = Normale, 5 = Démarrer rampe SP, 6 = Arrêter rampe SP. La valeur par défaut est 0. |
Inp_OvrdSP | REAL | 0,0 | Boucle auto SP en mode Asservissement (PVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
Inp_OvrdSPTarget | REAL | 0,0 | Paramètre d’asservissement pour la cible SP dans l’assistant de rampe (PVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
Inp_OvrdSPRampTime | REAL | 0,0 | Paramètre d’asservissement du temps permettant d’atteindre la cible SP dans l’assistant de rampe (en secondes). Valide = de 0,0 à 28800,0 secondes. La valeur par défaut est 0,0. |
Inp_OvrdRatio | REAL | 1,0 | Rapport de boucle dans Asservissement (sans unité). Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 1,0. |
Inp_OvrdCV | REAL | 0,0 | Mode boucle Manuel CV dans Asservissement (CVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
Inp_ExtInh | BOOL | Faux | 1 = Bloquer acquisition Externe, 0 = Autoriser acquisition Externe. La valeur par défaut est fausse. |
Inp_Reset | BOOL | Faux | 1 = Réinitialisez les verrouillages et les alarmes verrouillées dont les conditions sont revenues à la normale. La valeur par défaut est fausse. |
Cfg_AllowDisable | BOOL | Vrai | 1 = Permettre à la Maintenance de désactiver les alarmes. La valeur par défaut est définie sur vrai. |
Cfg_AllowShelve | BOOL | Vrai | 1 = Permettre à l’Opérateur de désactiver les alarmes. |
Cfg_HasRatio | BOOL | Faux | 1 = Le mode de boucle en cascade est Rapport, 0 = Le mode de boucle en cascade est Cascade. La valeur par défaut est fausse. |
Cfg_HasCasc | BOOL | Faux | 1 = Permet de placer la boucle en mode Cascade/Rapport. La valeur par défaut est fausse. |
Cfg_HasAuto | BOOL | Vrai | 1 = Cela permet de placer la boucle en mode Auto. La valeur par défaut est définie sur vrai. |
Cfg_HasMan | BOOL | Vrai | 1 = Cela permet de placer la boucle en mode Manuel. La valeur par défaut est définie sur vrai. |
Cfg_HasSPRamp | BOOL | Faux | 1 = Activez la fonction de l’assistant de rampe SP. La valeur par défaut est fausse. |
Cfg_ExecTime | REAL | 0,0 | Période d’exécution de l’algorithme PID (seconde). La configuration de l’instruction pour une période d’exécution = 0,0 (par défaut) ou une période plus courte que le temps de scrutation de l’instruction n’a aucun effet et l’algorithme PID est exécuté à chaque scrutation. Pour vérifier la période d’exécution réelle, Val_ExecTime. Valide = de 0,0 à 2147483,0 secondes. La valeur par défaut est 0,0. |
Cfg_PGain | REAL | 0,0 | Gain proportionnel Kp pour des gains indépendants ou gain de boucle Kc pour des gains dépendants (sans unité). Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 0,0. |
Cfg_IGain | REAL | 0,0 | Gain intégral Ki (1/minute) pour un temps Ti indépendant ou réinitialisé (minutes/répétition) pour des gains dépendants. Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 0,0. |
Cfg_DGain | REAL | 0,0 | Gain dérivé Kd (minute) pour une durée Td indépendante ou nominale (minute) pour des gains dépendants. Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 0,0. |
Cfg_CVTrackGain | REAL | 0,0 | Gain de suivi Kt (1/minute) pour les gains indépendants ou constante de temps de suivi Tt (minutes) pour les gains dépendants, afin que la CV suive Inp_CVTrack si Cfg_UseCVTrack = 1. Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 0,0. |
Cfg_UseCVTrack | BOOL | Faux | 1 = Utilisez Inp_CVTrack réinitialiser le retour dans le suivi, par exemple si la sortie PPID est nettement plus rapide que l’actionneur ou la boucle interne ou pour contrôler la sélection d’asservissement. |
Cfg_PSPWeight | REAL | 1,0 | Poids sur SP dans le terme proportionnel 2DOF PID, gain bêta. Valide = de 0,0 à 1,5. La valeur par défaut est 1,0. |
Cfg_DSPWeight | REAL | 0,0 | Poids sur SP dans le terme dérivé 2DOF PID, gain gamma. Valide = de 0,0 à 1,5. La valeur par défaut est 0,0. |
Cfg_PVTrack | BOOL | Faux | 1 = SP suit PV en mode manuel, 0 = Aucun suivi de PV. La valeur par défaut est fausse. |
Cfg_GainBumpless | BOOL | Vrai | 1 = La réponse de CV à la modification de PGain et DGain est sans à-coup, 0 = La réponse de CV au changement de PGain et DGain n’est pas sans à-coup (tout comme dans l’algorithme de position). La valeur par défaut est définie sur vrai. |
Cfg_PositionBump | BOOL | Faux | 1 = Forme de position de l’algorithme PD sans transfert sans à-coup de Manuel à Auto ou Cascade. Activé uniquement lorsque Cfg_IGain = 0. La modification du gain proportionnel n’est pas sans à-coup. 0 = Forme de vitesse de l’algorithme PID avec transfert sans à-coup de Manuel à Auto ou Cascade. La valeur par défaut est fausse. |
Cfg_UseESquared | BOOL | Faux | 1 = Utilisez l’erreur au carré pour une action proportionnelle. La valeur par défaut est fausse. |
Cfg_CtrlAction | BOOL | Faux | 1 = Action de contrôle sur E = PV-SP, action directe 0 = Action de contrôle sur E = SP-PV, action inverse. La valeur par défaut est fausse. |
Cfg_Dependent | BOOL | Faux | 1 = Équation de gains dépendants, 0 = Équation de gains indépendants. La valeur par défaut est fausse. |
Cfg_UseDSmoothing | BOOL | Faux | 1 = Utilisez le lissage des dérivées. La valeur par défaut est fausse. |
Cfg_DevDB | REAL | 0,0 | Zone morte de la déviation PV pour PV qui s’éloigne de SP (PVEU). Valide = de 0,0 à la valeur flottante positive maximale. |
Cfg_DevDBEnter | REAL | 0,0 | Zone morte de la déviation PV qui s’approche de PV SP (PVEU). Valide = de 0,0 à Cfg_DevDB. |
Cfg_UseIntegDevDB | BOOL | Faux | 1 = Seul le terme intégral est suspendu lorsque l’état de zone morte de la déviation PV est actif, les termes proportionnel et dérivé restent opérationnels, 0 = Tous les termes PID sont suspendus et la CV ne se déplace pas lorsque l’état de zone morte de la déviation PV est actif. La valeur par défaut est fausse. |
Cfg_SkipCVManLim | BOOL | Vrai | 1 = Ignorez le blocage de CV en mode de boucle Manuel et pour la CV par mise hors tension, 0 = Toujours appliquer le blocage de CV. |
Cfg_SkipCVManRoC | BOOL | Vrai | 1 = Ignorez la limitation de la fréquence de changement de CV en mode de boucle Manuel et pour la CV par mise hors tension, 0 = Toujours appliquer la limitation de la fréquence de changement de CV. |
Cfg_InitializeToMan | BOOL | Faux | 1 = Passez en mode de boucle Manuel lorsque l’initialisation est requise (Inp_UseCVInitialVal=1). La valeur par défaut est fausse. |
Cfg_SetTrack | BOOL | Vrai | 1 = Suivi des paramètres Programme/Opérateur/Externe, 0 = Pas de suivi des paramètres. La valeur par défaut est définie sur vrai. |
Cfg_SetTrackOvrdHand | BOOL | Faux | 1 = Les paramètres Programme/Opérateur/Externe suivent les entrées Asservissement/Portable (CV, SP, Rapport). La valeur par défaut est fausse. |
Cfg_HasIntlkObj | BOOL | Faux | 1 = Indique à HMI qu’un objet de verrouillage (PINTLK) est connecté à Inp_IntlkOK, InpNBIntlkOK, Inp_IntlkAvailable, Inp_IntlkTripInh et Inp_RdyReset. La valeur par défaut est fausse. |
Cfg_HasMoreObj | BOOL | Faux | 1 = indique à HMI qu’un objet contenant plus d’informations est disponible. La valeur par défaut est fausse. |
Cfg_HasHistTrend | SINT | 0 | Possède une tendance historique. Cela permet de naviguer vers la façade de la Tendance historique du périphérique à partir de HMI. 0 = Pas de tendance historique externe, 1 = Tendance historique enregistrées, 2 = Tendance historique historienne. La valeur par défaut est 0. |
Cfg_HasCascSPNav | BOOL | Faux | 1 = Indique à HMI d’activer la navigation vers un objet SP en cascade connecté. La valeur par défaut est fausse. |
Cfg_HasPVNav | BOOL | Faux | 1 = Indique à HMI d’activer la navigation vers un objet PV connecté. La valeur par défaut est fausse. |
Cfg_HasCVNav | BOOL | Faux | 1 = Indique à HMI d'activer la navigation vers un objet CV connecté. La valeur par défaut est fausse. |
Cfg_HasOper | BOOL | Vrai | 1 = Opérateur (déverrouillé) existant, peut être sélectionné. La valeur par défaut est définie sur vrai. |
Cfg_HasOperLocked | BOOL | Vrai | 1 = Opérateur verrouillé existant, peut être sélectionné. La valeur par défaut est définie sur vrai. |
Cfg_HasProg | BOOL | Vrai | 1 = Programme (déverrouillé) existant, peut être sélectionné. La valeur par défaut est définie sur vrai. |
Cfg_HasProgLocked | BOOL | Vrai | 1 = Programme verrouillé existant, peut être sélectionné. La valeur par défaut est définie sur vrai. |
Cfg_HasExt | BOOL | Faux | 1 = Externe existant, peut être sélectionné. La valeur par défaut est fausse. |
Cfg_HasMaint | BOOL | Vrai | 1 = Maintenance existante, peut être sélectionnée. La valeur par défaut est définie sur vrai. |
Cfg_HasMaintOoS | BOOL | Vrai | 1 = Maintenance hors service existante, peut être sélectionnée. La valeur par défaut est définie sur vrai. |
Cfg_OvrdOverLock | BOOL | Vrai | 1 = Asservissement remplace Programme/Opérateur, 0 = Ne pas asservir le verrouillage. La valeur par défaut est définie sur vrai. |
Cfg_ExtOverLock | BOOL | Faux | 1 = Externe annule le verrouillage Programme/Opérateur, 0 = Ne pas asservir le verrouillage. La valeur par défaut est fausse. |
Cfg_eKeepLM | SINT | 0 | Propriété en mode boucle : 0 = Suit la source de commande, 1 = Opérateur, 2 = Programme, 3 = Externe. La valeur par défaut est 0. |
Cfg_eKeepCV | SINT | 0 | Propriété CV : 0 = Suit la source de commande, 1 = Opérateur, 2 = Programme, 3 = Externe. La valeur par défaut est 0. |
Cfg_eKeepSP | SINT | 0 | Propriété SP : 0 = Suit la source de commande, 1 = Opérateur, 2 = Programme, 3 = Externe. La valeur par défaut est 0. |
Cfg_eKeepRatio | SINT | 0 | Propriété du rapport : 0 = Suit la source de commande, 1 = Opérateur, 2 = Programme, 3 = Externe. La valeur par défaut est 0. |
Cfg_ProgPwrUp | BOOL | Faux | 1 = Mise sous tension à Programme, 0 = Mise sous tension à Opérateur. La valeur par défaut est fausse. |
Cfg_ProgNormal | BOOL | Faux | Source normale : 1 = Programme si aucune demande, 0 = Opérateur si aucune demande. La valeur par défaut est fausse. |
Cfg_PCmdPriority | BOOL | Faux | Priorité de la commande : 1 = Les commandes Programme l’emportent, 0 = Les commandes Opérateur l’emportent. La valeur par défaut est fausse. |
Cfg_PCmdProgAsLevel | BOOL | Faux | 1 = PCmd_Prog utilisé en tant que niveau (1 = Prog, 0 = Oper). La valeur par défaut est fausse. |
Cfg_PCmdLockAsLevel | BOOL | Faux | 1 = PCmd_Lock utilisé en tant que niveau (1 = Verrouiller, 0 = Déverrouiller). La valeur par défaut est fausse. |
Cfg_ExtAcqAsLevel | BOOL | Faux | 1 = XCmd_Acq utilisée en tant que niveau (XCmd_Acq = 1 acquérir une commande externe, XCmd_Acq = 0 libérer une commande externe). La valeur par défaut est fausse. |
Cfg_OvrdIntlk | BOOL | Faux | 1 = Asservissement contourne (ignore) les verrouillages contournables. 0 = Asservissement se soumet à toutes les conditions de verrouillage. La valeur par défaut est fausse. |
Cfg_SPFailLatch | BOOL | Faux | 1 = Verrouillage dans l’action de mise hors tension en cas d’échec de SP jusqu’à la réinitialisation, 0 = Retour lorsque SP est correcte. La valeur par défaut est fausse. |
Cfg_PVFailLatch | BOOL | Faux | 1 = Verrouillage dans l’action de mise hors tension en cas d’échec de PV jusqu’à la réinitialisation, 0 = Retour lorsque PV est correcte. La valeur par défaut est fausse. |
Cfg_CVFailLatch | BOOL | Faux | 1 = Verrouillage dans l’action de mise hors tension en cas d’échec de CV jusqu’à la réinitialisation, 0 = Retour lorsque CV est correcte. La valeur par défaut est fausse. |
Cfg_LockLM | BOOL | Faux | Verrouillage en mode de boucle : 1 = Verrouillé en mode de boucle configuré comme normal (voir Cfg_NormLM), 0 = Non verrouillé. La valeur par défaut est fausse. |
Cfg_NormLM | SINT | 1 | Mode de boucle défini sur Normal : 0 = Désactiver la sélection Normal, 1 = Manuelle 2 = Auto, 3 = Cascade. La valeur par défaut est 1. |
Cfg_PwrUpLM | SINT | 4 | Mode de boucle défini pour la mise sous tension : 0 = Aucun changement - mode de boucle, CV et SP sont initialisées à l’aide des dernières valeurs (dernière mise hors tension), 1 = Manuelle 2 = Auto, 3 = Cascade, 4 = Normal. La valeur par défaut est 4. |
Cfg_PVFailTrigger | SINT | 1 | Réponse d’état d’échec de la PV sur la qualité de PV : 0 = Réponse à un échec PV si Inp_PVBad OU Inp_PVSrcQ >= 32 (mauvaise PV), 1 = Réponse à un échec PV si Inp_PVBad OU Inp_PVSrcQ >= 17 ET Inp_PVSrcQ <> 18, 2 = Réponse à un échec PV si Inp_PVBad OU Inp_PVUncertain OU Inp_PVSrcQ >= 16 ET Inp_PVSrcQ <> 18. La valeur par défaut est 1. |
Cfg_IntlkTripSPAction | SINT | 0 | Action SP de déclenchement du verrouillage : 0 = Aucun, 1 = Conserver la dernière valeur correcte, 2 = Utiliser Cfg_SPIntlk, 3 = Définir SP sur la PV actuelle. La valeur par défaut est 0. |
Cfg_SPFailSPAction | SINT | 1 | Action SP d’échec de SP : 1 = Conserver la dernière valeur correcte, 2 = Utiliser Cfg_SPIntlk, 3 = Définir SP sur la PV actuelle. La valeur par défaut est 1. |
Cfg_PVFailSPAction | SINT | 0 | Action SP d’échec de PV : 0 = Aucun, 1 = Conserver la dernière valeur correcte, 2 = Utiliser Cfg_SPIntlk. La valeur par défaut est 0. |
Cfg_CVFailSPAction | SINT | 0 | Action SP d’échec de CV : 0 = Aucun, 1 = Conserver la dernière valeur correcte, 2 = Utiliser Cfg_SPIntlk, 3 = Définir SP sur la PV actuelle. La valeur par défaut est 0. |
Cfg_IntlkTripCVAction | SINT | 2 | Action CV de déclenchement de verrouillage : 0 = Aucun, 1 = Conserver la dernière valeur correcte, 2 = Utiliser Cfg_CVIntlk. La valeur par défaut est 2. |
Cfg_SPFailCVAction | SINT | 1 | Action CV d’échec de SP : 0 = Aucun, 1 = Conserver la dernière valeur correcte, 2 = Utiliser Cfg_CVIntlk. La valeur par défaut est 1. |
Cfg_PVFailCVAction | SINT | 1 | Action CV d’échec de PV : 1 = Maintenir la dernière CV, 2 = Utiliser Cfg_CVIntlk. La valeur par défaut est 1. |
Cfg_CVFailCVAction | SINT | 1 | Action CV d’échec de CV : 1 = Conserver la dernière valeur correcte, 2 = Utiliser Cfg_CVIntlk. La valeur par défaut est 1. |
Cfg_IntlkTripLMAction | SINT | 0 | Action du mode de boucle de déclenchement du verrouillage : 0 = Aucun, 1 = Manuel uniquement, 2 = Auto ou Manuel uniquement. La valeur par défaut est 0. |
Cfg_SPFailLMAction | SINT | 0 | Action de mode de boucle d’échec de SP : 0 = Aucun, 1 = Manuel uniquement, 2 = Auto ou Manuel uniquement. La valeur par défaut est 0. |
Cfg_PVFailLMAction | SINT | 0 | Action de mode de boucle d’échec de PV : 0 = aucun, 1 = Manuel uniquement, 2 = Auto ou Manuel uniquement. La valeur par défaut est 0. |
Cfg_CVFailLMAction | SINT | 0 | Action de mode de boucle d’échec de CV : 0 = Aucun, 1 = Manuel uniquement, 2 = Auto ou Manuel uniquement. La valeur par défaut est 0. |
Cfg_PVDecPlcs | SINT | 2 | Nombre de décimales pour l’affichage de PV / SP (jusqu’à six). La valeur par défaut est 2. |
Cfg_CVDecPlcs | SINT | 2 | Nombre de décimales pour l’affichage de CV (jusqu’à six). La valeur par défaut est 2. |
Cfg_RatioDecPlcs | SINT | 2 | Nombre de décimales pour l’affichage du rapport (jusqu’à six). La valeur par défaut est 2. |
Cfg_RatioLoLim | REAL | 0,0 | Valeur minimale de rapport autorisée (sans unité). Toute valeur flottante inférieure ou égale à Cfg_RatioHiLim. La valeur par défaut est 0,0. |
Cfg_RatioHiLim | REAL | 1,0 | Valeur maximale de rapport autorisée (sans unité). Toute valeur flottante supérieure ou égale à Cfg_RatioLoLim. La valeur par défaut est 1,0. |
Cfg_SPLoLim | REAL | 0,0 | Valeur minimale de SP autorisée (PVEU). Toute valeur flottante inférieure ou égale à Cfg_SPHiLim et supérieure ou égale à Cfg_PVEUMin. La valeur par défaut est 0,0. |
Cfg_SPHiLim | REAL | 100,0 | Valeur maximale de SP autorisée (PVEU). Toute valeur flottante supérieure ou égale à Cfg_SPLoLim et inférieure ou égale à Cfg_PVEUMax. La valeur par défaut est 100,0. |
Cfg_SPRoCIncrLim | REAL | 0,0 | Valeur d’augmentation de la vitesse de variation du SP maximale autorisée (PVEU/seconde). La fréquence de changement du SP est illimitée lorsqu’elle augmente si Cfg_SPRoCIncrLim = 0,0. Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 0,0. |
Cfg_SPRoCDecrLim | REAL | 0,0 | Valeur de diminution de la fréquence de changement de la SP maximale autorisée (PVEU/seconde). La fréquence de changement du SP est illimitée lorsqu’elle diminue si Cfg_SPRoCDecrLim = 0,0. Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 0,0. |
Cfg_SkipSPRoCLim | BOOL | Faux | 1 = Ignorer les limites RoC du point de consigne dans les modes Verrouillage, Maintenance et Asservissement. La valeur par défaut est fausse. |
Cfg_SPRampMaxDev | REAL | 100,0 | Si la valeur absolue de la déviation dépasse cette valeur, activer la pause de la rampe SP ; 0.0 = ne jamais activer la pause (PVEU). Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 100,0. |
Cfg_PVEUMin | REAL | 0,0 | Valeur minimale de PV pour la mise à l’échelle des unités de procédé en %, PV à 0 % (PVEU). Toute valeur flottante inférieure à Cfg_PVEUMax. La valeur par défaut est 0,0. |
Cfg_PVEUMax | REAL | 100,0 | Valeur minimale de PV pour la mise à l’échelle des unités de procédé en %, PV à 100 % (PVEU). Toute valeur flottante supérieure à Cfg_PVEUMin. La valeur par défaut est 100,0. |
Cfg_CVEUMin | REAL | 0,0 | Valeur minimale de CV pour la mise à l’échelle du % en unités de procédé (CVEU). Toute valeur flottante inférieure à Cfg_CVEUMax. La valeur par défaut est 0,0. |
Cfg_CVEUMax | REAL | 100,0 | Valeur maximale de CV pour la mise à l’échelle du % en unités de procédé (CVEU). Toute valeur flottante supérieure à Cfg_CVEUMin. |
Cfg_CVLoLim | REAL | 0,0 | Valeur minimale de CV autorisée (CVEU). Valide toute valeur flottante inférieure ou égale à Cfg_CVHiLim et supérieure ou égale à Cfg_CVEUMin. La valeur par défaut est 0,0. |
Cfg_CVHiLim | REAL | 100,0 | Valeur maximale de CV autorisée (CVEU). Valide, toute valeur flottante supérieure ou égale à Cfg_CVLoLim et inférieure ou égale à Cfg_CVEUMax. La valeur par défaut est 100,0. |
Cfg_CVRoCIncrLim | REAL | 0,0 | Valeur d'augmentation de la vitesse de variation du CV maximale autorisée (CVEU/seconde). La vitesse de variation de la CV est illimitée lors de l'augmentation si Cfg_CVRoCIncrLim = 0,0 Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 0,0. |
Cfg_CVRoCDecrLim | REAL | 0,0 | Valeur de diminution de la fréquence de changement de la CV maximale autorisée (CVEU/seconde). La vitesse de variation de la CV est illimitée en cas de diminution si Cfg_CVRoCDecrLim = 0.0. Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 0,0. |
Cfg_MaxInactiveCV | REAL | 0,0 | Lorsque Val_CVOut est supérieur à cette valeur, définir Sts_Active pour HMI (CVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
Cfg_SPIntlk | REAL | 0,0 | Valeur de SP à utiliser lors d’une action SP de verrouillage ou de valeur incorrecte (PVEU). Toute valeur flottante entre Cfg_PVEUMin et Cfg_PVEUMax. |
Cfg_CVIntlk | REAL | 0,0 | Valeur de CV à utiliser lors d’une action CV de verrouillage ou de valeur incorrecte (CVEU). Valide toute valeur flottante entre Cfg_CVEUMin et Cfg_CVEUMax. |
Cfg_SPPwrUp | REAL | 0,0 | SP de boucle à la mise sous tension (PVEU) utilisée lorsque Cfg_PwrUpLM n’est pas 0. La valeur est maintenue dans la plage SP (Cfg_SPLoLim, Cfg_SPHiLim). Toute valeur flottante entre Cfg_PVEUMin et Cfg_PVEUMax. |
Cfg_CVPwrUp | REAL | 0,0 | CV de boucle à la mise sous tension (CVEU) utilisée lorsque Cfg_PwrUpLM n’est pas 0. La valeur peut être maintenue dans les limites configurées (Cfg_CVLoLim, CfgHiLim) en mode cascade ou auto et en mode manuel si elle est configurée de la sorte. Valide toute valeur flottante entre Cfg_CVEUMin et Cfg_CVEUMax. |
Cfg_CVPwrUpSel | SINT | 0 | Sélection de la CV de mise sous tension (première exécution) en mode Auto ou Cascade. 0 = Ignorer Inp_InnerAvailable et toujours utiliser Cfg_CVPwrUp ou le dernier CV (du dernier arrêt) (si Cfg_PwrpUpLM = 0), 1 = Procédé Inp_InnerAvailable. La valeur par défaut est fausse. |
Cfg_HiHiDevLim | REAL | 1,5e+38 | Seuil d’état de déviation PV haute-haute (PVEU). Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 1,5e+38. |
Cfg_HiHiDevDB | REAL | 0,0 | Zone morte d’état de déviation PV haute-haute (PVEU). Valide = 0,0 à Cfg_HiHiDevLim. La valeur par défaut est 0,0. |
Cfg_HiHiDevGateDly | REAL | 0,0 | Délai de porte d’état de déviation PV haute-haute (en secondes). Valide = de 0,0 à 2147483,0 secondes. La valeur par défaut est 0,0. |
Cfg_HiDevLim | REAL | 1,5e+38 | Seuil d’état de déviation PV haute (PVEU). Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 1,5e+38. |
Cfg_HiDevDB | REAL | 0,0 | Zone morte d’état de déviation PV haute (PVEU). Valide = 0,0 à Cfg_HiDevLim. La valeur par défaut est 0,0. |
Cfg_HiDevGateDly | REAL | 0,0 | Délai de porte d’état de déviation PV haute (en secondes). Valide = de 0,0 à 2147483,0 secondes. La valeur par défaut est 0,0. |
Cfg_LoDevLim | REAL | -1.5e+38 | Seuil d’état de déviation PV basse (PVEU). Valide = de la valeur flottante positive maximale à 0,0. La valeur par défaut est -1,5e+38. |
Cfg_LoDevDB | REAL | 0,0 | Zone morte d’état de déviation PV basse (PVEU). Valide = 0,0 à abs(Cfg_LoDevLim). La valeur par défaut est 0,0. |
Cfg_LoDevGateDly | REAL | 0,0 | Délai de porte d’état de déviation PV basse (en secondes). Valide = de 0,0 à 2147483,0 secondes. La valeur par défaut est 0,0. |
Cfg_LoLoDevLim | REAL | -1.5e+38 | Seuil d’état de déviation PV basse-basse (PVEU). Valide = de la valeur flottante positive maximale à 0,0. La valeur par défaut est -1,5e+38. |
Cfg_LoLoDevDB | REAL | 0,0 | Zone morte d’état de déviation PV basse-basse (PVEU). Valide = 0,0 à abs(Cfg_LoLoDevLim). La valeur par défaut est 0,0. |
Cfg_LoLoDevGateDly | REAL | 0,0 | Délai de porte d’état de déviation PV basse-basse (en secondes). Valide = de 0,0 à 2147483,0 secondes. La valeur par défaut est 0,0. |
Cfg_CnfrmReqd | SINT | 0 | Confirmation de la commande Opérateur requise. Représente le type de confirmation de commande requise. 0 = Aucun, 1 = confirmation de la commande requise, 2 = Signature électronique requise de l'exécutant, 3 = Signature électronique requise de l'auteur et de l'approbateur. La valeur par défaut est 0. |
PSet_Ratio | REAL | 1,0 | Paramètre de programme pour le rapport, mode de boucle Cascade/Rapport et Rapport activés (sans unité). Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 1,0. |
PSet_SP | REAL | 0,0 | Paramètre de programme pour SP, mode de boucle Auto (PVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
PSet_SPTarget | REAL | 0,0 | Paramètre de programme pour cible SP dans l’assistant de rampe (PVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
PSet_SPRampTime | REAL | 0,0 | Paramètre de programme de la durée pour atteindre la cible SP dans l’assistant de rampe (en secondes). Valide = de 0,0 à 28800,0 secondes. La valeur par défaut est 0,0. |
PSet_CV | REAL | 0,0 | Paramètre de programme pour CV lorsque le mode de boucle est Manuel (CVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
PSet_Owner | DINT | 0 | ID de requête propriétaire du programme (différent de zéro) ou sans propriétaire (zéro). La valeur par défaut est 0. |
XSet_Ratio | REAL | 1,0 | Paramètre externe pour le rapport, mode de boucle Cascade/Rapport et Rapport activés (sans unité). Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 1,0. |
XSet_SP | REAL | 0,0 | Paramètre externe pour SP, mode de boucle Auto (PVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
XSet_SPTarget | REAL | 0,0 | Paramètre externe de cible SP dans l’assistant de rampe (PVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
XSet_SPRampTime | REAL | 0,0 | Paramètre externe de la durée pour atteindre la cible SP dans l’assistant de rampe (en secondes). Valide = de 0,0 à 28800,0 secondes. La valeur par défaut est 0,0. |
XSet_CV | REAL | 0,0 | Paramètre externe pour CV mode de boucle Manuel (CVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
PCmd_Casc | BOOL | Faux | Commande Programme pour sélectionner le mode de boucle Cascade/Rapport. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
PCmd_Auto | BOOL | Faux | Commande Programme pour sélectionner le mode de boucle Auto. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
PCmd_Man | BOOL | Faux | Commande Programme pour sélectionner le mode de boucle Manuel. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
PCmd_NormLM | BOOL | Faux | Commande Programme pour sélectionner le mode de boucle défini sur Normal, voir Cfg_NormLM. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
PCmd_SPRampStart | BOOL | Faux | Commande du programme pour lancer la rampe SP. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
PCmd_SPRampStop | BOOL | Faux | Commande du programme pour arrêter la rampe SP. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
PCmd_Oper | BOOL | Faux | Commande Programme pour sélectionner l’opérateur (Programme vers Opérateur). L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
PCmd_Prog | BOOL | Faux | Commande Programme pour sélectionner le programme (Opérateur vers Programme). L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
PCmd_Lock | BOOL | Faux | Commande Programme pour verrouiller le programme (interdire Opérateur). L’instruction efface cet opérande automatiquement si Cfg_PCmdLockAsLevel = 0. La valeur par défaut est fausse. |
PCmd_Unlock | BOOL | Faux | Commande Programme pour déverrouiller le programme (autoriser l'acquisition par l'opérateur). L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
PCmd_Normal | BOOL | Faux | Commande Programme pour sélectionner la source de commande normale (Opérateur ou Programme). L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
PCmd_Reset | BOOL | Faux | Commande de programme pour réinitialiser toutes les alarmes et les conditions de défaut verrouillées nécessitant une réinitialisation. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
XCmd_Casc | BOOL | Faux | Commande Externe pour sélectionner le mode de boucle Cascade/Rapport. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
XCmd_Auto | BOOL | Faux | Commande Externe pour sélectionner le mode de boucle Auto. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
XCmd_Man | BOOL | Faux | Commande Externe pour sélectionner le mode de boucle Manuel. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
XCmd_NormLM | BOOL | Faux | Commande Externe pour sélectionner le mode de boucle défini sur Normal, voir Cfg_NormLM. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
XCmd_SPRampStart | BOOL | Faux | Commande Externe pour lancer la rampe SP. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
XCmd_SPRampStop | BOOL | Faux | Commande Externe pour arrêter la rampe SP. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
XCmd_Acq | BOOL | Faux | Commande Externe pour acquérir la propriété (Opérateur/Programme/Asservissement/Maintenance vers Externe). L’instruction efface cet opérande automatiquement si Cfg_ExtAcqAsLevel = 0. La valeur par défaut est fausse. |
XCmd_Rel | BOOL | Faux | Commande Externe pour libérer la propriété si Cfg_ExtAcqAsLevel = 0 (Externe vers Opérateur/Programme/Asservissement/Maintenance). L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
XCmd_Reset | BOOL | Faux | Commande Externe pour réinitialiser toutes les alarmes et les conditions de défaut verrouillées. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
XCmd_ResetAckAll | BOOL | Faux | Commande Externe pour confirmer et réinitialiser toutes les alarmes et les conditions de défaut verrouillées. L'instruction efface automatiquement cet opérande. La valeur par défaut est fausse. |
Membre de sortie public | Type de données | Description |
|---|---|---|
EnableOut | BOOL | Activer la sortie. Cet état de sortie reflète toujours l'état de l'entrée EnableIn. |
Val_PV | REAL | Valeur de PV de boucle (PVEU). |
Val_Ratio | REAL | Valeur du rapport de boucle (sans unité). |
Val_SPSet | REAL | Valeur de SP sélectionné après blocage et avant la rampe (PVEU). |
Val_SP | REAL | Valeur de SP utilisée après blocage et rampe (PVEU). |
Val_SPTarget | REAL | Paramètre accepté pour cible de la rampe SP, point de terminaison pour l’assistant de rampe (PVEU). |
Val_SPRampTime | REAL | Paramètre accepté pour le temps de rampe SP, durée pour atteindre la cible pour l’assistant de rampe (seconde). |
Val_SPRampRoC | REAL | Valeur calculée de la vitesse de variation SP de la rampe, à partir de l’assistant de rampe (PVEU/seconde). |
Val_SPRoCIncr | REAL | Augmentation de la valeur actuelle de la limite de vitesse de variation de SP (PVEU/seconde). 0,0 = vitesse de variation non limitée. |
Val_SPRoCDecr | REAL | Diminution de la valeur actuelle de la limite de vitesse de variation de SP (PVEU/seconde). 0,0 = vitesse de variation non limitée. |
Val_E | REAL | Erreur de boucle, SP-PV pour l’action inverse Cfg_CtrlAction = 0, PV-SP pour l’action directe Cfg_CtrlAction = 1 (PVEU). |
Val_CVSet | REAL | CV de boucle après blocage et avant rampe (CVEU). |
Val_CVOut | REAL | CV de boucle après blocage et rampe (CVEU). |
Val_PVPercent | REAL | Boucle PV (pourcentage de la plage). |
Val_SPPercent | REAL | Boucle SP (pourcentage de la plage). |
Val_EPercent | REAL | Erreur de boucle, SP-PV pour l’action inverse Cfg_CtrlAction = 0, PV-SP pour l’action directe Cfg_CtrlAction = 1 (pourcentage de la plage). |
Val_CVOutPercent | REAL | CV de boucle après rampe et blocage (pourcentage de la plage). |
Val_ExecTime | REAL | Période d’exécution de l’algorithme PID (en secondes). |
Out_Reset | BOOL | 1 = La commande Réinitialiser a été reçue et acceptée. |
Out_OwnerSts | DINT | État de la source de commande, handshake de commande propriétaire et état Prêt : 0 = Aucun, .10 = Verrouillage Opérateur, .11 = Déverrouillage Opérateur, .12 = Verrouillage Programme, .13 = Déverrouillage Programme, .14 = Acquérir Maintenance, .15 = Libérer Maintenance, .16 = Acquérir Externe, .17 = Libérer Externe, .18 = Possède Maintenance, .19 = Verrouillage Asservissement externe, .20 = Possède Externe, .21 = Possède Opérateur, .22 = Possède Opérateur verrouillé, .23 = possède Programme, .24 = Possède Programme verrouillé, .29 = Écho, .30 = Pas prêt. |
Sts_Initialized | BOOL | 1 = L'instruction est initialisée. Utilisez Inp_InitializeReq pour réinitialiser. |
SrcQ_IO | SINT | Source et qualité d’E/S (I/O) primaire et qualité de PV (énumérée) : 0 = Bonne, directe, confirmée bonne, 1 = Bonne, directe, supposée bonne, 2 = Bonne, aucun retour, supposée bonne, 8 = Test, virtualisée, 9 = Test, bouclage, 10 = Test, saisie manuellement, 16 = Incertaine, directe, hors spécifications, 17=Incertaine, substituée au dispositif ou au bus, 18 = Incertaine, substituée à l’instruction, 19 = Incertaine, utilisation du dernier bien connu, 20 = Incertaine, utilisation d’une valeur de remplacement, 32 = Mauvaise, panne de signal, 33 = Mauvaise, défaut de canal, 34 = Mauvaise, défaut de module ou de communication, 35 = Mauvaise, configuration non valide. |
SrcQ | SINT | Source et qualité de PV primaire et valeur ou état de la CV (énumérée) : 0 = Bonne, directe, confirmée bonne 1 = Bonne, directe, supposée bonne 2 = Bonne, aucun retour, supposée bonne 8 = Test, virtualisée 9 = Test, bouclage 10 = Test, saisie manuellement 16 = Incertaine, directe, hors spécifications 17 = Incertaine, substituée au dispositif ou au bus 18 = Incertaine, substituée à l’instruction 19 = Incertaine, utilisation du dernier bien connu 20 = Incertain, utilisation d’une valeur de remplacement 32 = Mauvaise, panne de signal 33 = Mauvaise, défaut de canal 34 = Mauvaise, défaut de module ou de communication 35 = Mauvaise, configuration incorrecte |
Sts_eSts | SINT | Mode de boucle : 0 = Inconnu, 1 = Manuelle 2 = Auto, 3 = Cascade (sans rapport), 4 = Rapport. |
Sts_eFault | SINT | Défaut de boucle : 0 = aucun, 1 = PV incertaine, 2 = Déviation basse de PV, 3 = Déviation haute de PV, 4 = Déviation basse-basse de PV, 5 = Déviation haute-haute de PV, 6 = PV substituée, 7 = Déclenchement du verrouillage, 8 = Échec de SP, 9 = Échec de PV, 10 = Échec de CV, 11 = Erreur de configuration. |
Sts_eState | SINT | État de logique interne pour l’animation d’un diagramme d’état sur la façade. 0 = Manuel, 1 = Déviation PV en zone morte, 2 = Déviation PV pas en zone morte, 3 = Rampe SP, 4 = Rampe de CV, 5 = Rapport bloqué, 6 = SP bloquée, 7 = CV bloquée, 8 = Saturation d’intégrale basse, 9 = Saturation d’intégrale haute, 10 = SP maintenue, 11 = SP définie sur IntlkSP, 12 = CV maintenue, 13 = CV définie sur IntlkCV, 14 = Manuelle, 15 = Initialisation en cours. |
Sts_eNotify | SINT | État d’alarme de sévérité haute. Toutes les valeurs énumérées d'état de l'alarme : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. |
Sts_eNotifyAll | SINT | État d’alarme de sévérité haute. Toutes les valeurs énumérées d'état de l'alarme, y compris les objets associés pour CV, PV, SP, CascSP : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. |
Sts_eNotifyHiHiDev | SINT | Valeurs énumérées de l’état d’alarme de déviation PV haute-haute : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. |
Sts_eNotifyHiDev | SINT | Valeurs énumérées de l’état d’alarme de déviation PV haute : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. |
Sts_eNotifyLoDev | SINT | Valeurs énumérées de l’état d’alarme de déviation PV basse : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. |
Sts_eNotifyLoLoDev | SINT | Valeurs énumérées de l’état d’alarme de déviation PV basse-basse : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. |
Sts_eNotifyFail | SINT | Valeurs énumérées d'état de l'alarme de défaut : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. |
Sts_eNotifyIntlkTrip | SINT | Valeurs énumérées de l’état d’alarme de déclenchement du verrouillage : 0 = Non en alarme, confirmé, 1 = Non en alarme, non confirmé ou réinitialisation requise, 2 = Alarme de sévérité basse, confirmée, 3 = Alarme de sévérité basse, non confirmée, 4 = Alarme de sévérité moyenne, confirmée, 5 = Alarme de sévérité moyenne, non confirmée, 6 = Alarme de sévérité haute, confirmée, 7 = Alarme de sévérité haute, non confirmée, 8 = Alarme de sévérité urgente, confirmée, 9 = Alarme de sévérité urgente, non confirmée. |
Sts_UnackAlmCount | DINT | Nombre d'alarmes non confirmées. |
Sts_Casc | BOOL | 1 = La boucle est en mode Cascade/Rapport. |
Sts_Auto | BOOL | 1 = La boucle est en mode Auto. |
Sts_Man | BOOL | 1 = La boucle est en mode Manuel. |
Sts_NormLM | BOOL | 1 = La boucle est en mode de boucle normale configurée en Cfg_NormLM. |
Sts_Initializing | BOOL | 1 = La CV s’initialise en raison d’une requête Inp_UseCVInitialVal ou lorsque Inp_InnerAvailable=0. |
Sts_WindupHi | BOOL | 1 = Terminaison de cette boucle Haute, se connecte généralement au Inp_WindupHi de la boucle extérieure. |
Sts_WindupLo | BOOL | 1 = Terminaison de cette boucle Basse, se connecte généralement au Inp_WindupLo de la boucle extérieure. |
Sts_RatioClamped | BOOL | 1 = le rapport sélectionné est bloqué, utilisé dans l’animation de façade. |
Sts_IntlkSP | BOOL | 1 = la valeur SP est définie par la mise hors tension de la SP de verrouillage. |
Sts_SPHeld | BOOL | 1 = la valeur SP est définie par la mise hors tension pour maintenir la dernière valeur SP de verrouillage. |
Sts_SPShedPV | BOOL | 1 = La valeur SP est définie par mise hors tension de la valeur PV actuelle. |
Sts_SPShed | BOOL | 1 = valeur SP par Mise hors tension, 0 = SP par Programme, Opérateur, Asservissement (Auto), Entrée SP de casc (Cascade) ou Suivi de PV (Manuel). |
Sts_SPTrackPV | BOOL | 1 = La valeur SP est définie par le suivi de PV en mode de boucle Manuel. |
Sts_SPHiClamped | BOOL | 1 = Le SP sélectionné est bloqué à sa limite haute. |
Sts_SPLoClamped | BOOL | 1 = le SP sélectionné est bloqué à sa limite basse. |
Sts_SPClamped | BOOL | 1 = le SP sélectionné est bloqué pour animation de façade. |
Sts_SPRampingUp | BOOL | 1 = Le SP augmente jusqu’à Val_SPSet. |
Sts_SPRampingDown | BOOL | 1 = Le SP baisse jusqu’à Val_SPSet. |
Sts_SPRamping | BOOL | 1 = le SP progresse vers Val_SPSet, 0 = Rampe terminée. |
Sts_SPRampWizardInProgress | BOOL | 1 = le SP progresse vers la cible de SP définie par le propriétaire dans l’assistant de rampe, 0 = Rampe terminée. |
Sts_SkipSPRoCLim | BOOL | 1 = la limitation de vitesse SP est ignorée pour l’animation de la façade. |
Sts_DevDBAct | BOOL | 1 = Zone morte de déviation de la PV active. |
Sts_PVUncertain | BOOL | 1 = la qualité de la valeur d’entrée de la PV est incertaine. |
Sts_PVBad | BOOL | 1 = La valeur d’entrée de la PV, la communication, la qualité ou la limite de l’UP est incorrecte. |
Sts_SPBad | BOOL | 1 = la qualité de la valeur d’entrée du SP est incertaine. |
Sts_FFBad | BOOL | 1 = la valeur du terme d’anticipation Inp_FF n’est pas valide. |
Sts_FFPrevBad | BOOL | 1 = la valeur du terme d’anticipation Inp_FFPrev n’est pas valide. |
Sts_CVInfNaN | BOOL | 1 = Valeur CV égale à un infini négatif ou positif ou NaN détecté. |
Sts_CVBad | BOOL | 1 = La qualité de la valeur CV est mauvaise ou non valide ou défaut de communication de la CV. |
Sts_CVPrevBad | BOOL | 1 = La valeur Inp_CVPrev n’est pas valide. |
Sts_HandFdbkBad | BOOL | 1 = La qualité de la valeur du BF manuel (rattachement) est mauvaise ou non valide ou un défaut de communication. |
Sts_IntlkCV | BOOL | 1 = la valeur CV est définie par la mise hors tension de la CV de verrouillage. |
Sts_CVHeld | BOOL | 1 = la valeur CV est définie par la mise hors tension pour maintenir la dernière valeur CV de verrouillage. |
Sts_CVShed | BOOL | 1 = Valeur CV par mise hors tension, 0 = Valeur CV par Programme, Opérateur, Asservissement (Manuel) ou PID (Auto, Cascade). |
Sts_CVHiClamped | BOOL | 1 = la CV est bloquée à sa limite haute. |
Sts_CVLoClamped | BOOL | 1 = la CV est bloquée à sa limite basse. |
Sts_CVClamped | BOOL | 1 = la CV sélectionnée est bloquée, utilisée dans l’animation de façade. |
Sts_CVRampingUp | BOOL | 1 = la CV rampe vers le haut jusqu’à Val_CVSet. |
Sts_CVRampingDown | BOOL | 1 = la CV rampe vers le bas jusqu’à Val_CVSet. |
Sts_CVRamping | BOOL | 1 = la CV rampe vers Val_CVSet, 0 = Rampe terminée. |
Sts_Active | BOOL | 1 = la CV est supérieure à Cfg_MaxInactiveCV, afficher le symbole graphique comme actif. |
Sts_Available | BOOL | 1 = la boucle PID peut être acquise par le Programme et est disponible pour le contrôle. |
Sts_CascAvailable | BOOL | 1 = la boucle interne PID est disponible pour le contrôle en cascade avec une boucle externe. 0 = la boucle interne PID n’est pas disponible, initialiser la boucle externe pour Val_SP. |
Sts_ExtAvailable | BOOL | 1 = le PID est disponible pour le contrôle externe. 0 = le PID n’est pas disponible, initialiser la boucle externe pour Val_SP. |
Sts_IntlkAvailable | BOOL | 1 = Disponibilité du verrouillage OK. Le variateur peut être acquis par le Programme et est disponible pour le contrôle lorsque les verrouillages sont OK. |
Sts_Bypass | BOOL | 1 = Les verrouillages contournables sont contournés. |
Sts_BypActive | BOOL | 1 = Contournement de verrouillage actif (contourné ou maintenance). |
Sts_NotRdy | BOOL | 1 = le PPID n’est pas prêt, voir les bits de détails pour connaître la raison. |
Sts_NrdyCfgErr | BOOL | 1 = le PPID n’est pas prêt : Erreur de configuration. |
Sts_NrdyInit | BOOL | 1 = le PPID n’est pas prêt pendant l’initialisation de CV (Inp_UseCVInitVal = 1). |
Sts_NrdyIntlk | BOOL | 1 = le PPID n’est pas prêt : Verrouillage Pas OK (la mise hors tension nécessite une réinitialisation). |
Sts_NrdyFail | BOOL | 1 = le PPID n’est pas prêt : L’état Défaut est activé (la mise hors tension nécessite une réinitialisation). |
Sts_NrdyCVFail | BOOL | 1 = le PPID n’est pas prêt : Échec de CV (la mise hors tension nécessite une réinitialisation). |
Sts_NrdyPVFail | BOOL | 1 = le PPID n’est pas prêt : Échec de PV (la mise hors tension nécessite une réinitialisation). |
Sts_NrdySPFail | BOOL | 1 = le PPID n’est pas prêt : Échec de SP (la mise hors tension nécessite une réinitialisation). |
Sts_NrdyOoS | BOOL | 1 = le PPID n’est pas prêt : Hors service. |
Sts_MaintByp | BOOL | 1 = Le dispositif a une fonction de contournement de maintenance active. |
Sts_NrdyInner | BOOL | 1 = l’objet boucle interne n’est pas disponible (Inp_InnerAvailable = 0) pour ce PPID. |
Sts_Err | BOOL | 1 = Erreur dans la configuration PPID : voir les bits Err de détails pour connaître la raison. |
Sts_ErrRatioLim | BOOL | 1 = Erreur dans la configuration PPID : Limites de blocage de rapport non valides. Cfg_RatioLoLim > Cfg_RatioHiLim. |
Sts_ErrSPLim | BOOL | 1 = Erreur dans la configuration PPID : Limites de blocage SP non valides. Cfg_SPLoLim < Cfg_PVEUMin ou Cfg_SPHiLim > Cfg_PVEUMax ou Cfg_SPLoLim > Cfg_SPHiLim. |
Sts_ErrCVLim | BOOL | 1 = Erreur dans la configuration PPID : Limites de blocage CV non valides. Cfg_CVLoLim < Cfg_CVEUMin ou Cfg_CVHiLim > Cfg_CVEUMax ou Cfg_CVLoLim > Cfg_CVHiLim. |
Sts_ErrPVEU | BOOL | 1 = Erreur dans la configuration PPID : Limites de mise à l’échelle de PV non valides. Cfg_PVEUMin >= Cfg_PVEUMax ou Cfg_PVEUMin est +-Inf. |
Sts_ErrCVEU | BOOL | 1 = Erreur dans la configuration PPID : Limites de mise à l’échelle de CV non valides. Cfg_CVEUMin >= Cfg_CVEUMax ou Cfg_CVEUMin est +-Inf. |
Sts_ErrDevDB | BOOL | 1 = Erreur dans la configuration PPID : Zone morte de déviation de la PV active. Cfg_DevDBEnter > Cfg_DevDB, ou Cfg_DevDB < 0, ou Cfg_DevDBEnter < 0. |
Sts_ErrExecTime | BOOL | 1 = Erreur dans la configuration PPID : Temps d’exécution non valide, Cfg_ExecTime < 0,0 ou Cfg_ExecTime > 2 147 483 secondes. |
Sts_ErrPGain | BOOL | 1 = Erreur dans la configuration PPID : PGain non valide, Cfg_PGain < 0. |
Sts_ErrIGain | BOOL | 1 = Erreur dans la configuration PPID : IGain non valide, Cfg_IGain < 0. |
Sts_ErrDGain | BOOL | 1 = Erreur dans la configuration PPID : DGain non valide, Cfg_DGain < 0. |
Sts_ErrCVTrackGain | BOOL | 1 = Erreur dans la configuration PPID : TrackGain CV non valide, Cfg_CVTrackGain < 0. |
Sts_ErrPSPWeight | BOOL | 1 = Erreur dans la configuration PPID : Poids SP dans le terme proportionnel non valide, Cfg_PSPWeight < 0 ou Cfg_PSPWeight > 1,5. |
Sts_ErrDSPWeight | BOOL | 1 = Erreur dans la configuration PPID : Poids SP dans le terme dérivé non valide, Cfg_DSPWeight < 0 ou Cfg_DSPWeight > 1,5. |
Sts_ErrSPRoCIncrLim | BOOL | 1 = Erreur dans la configuration PPID : Valeur d’augmentation de la vitesse de variation du SP maximale autorisée, Cfg_SPRoCIncrLim < 0. |
Sts_ErrSPRoCDecrLim | BOOL | 1 = Erreur dans la configuration PPID : Valeur de diminution de la vitesse de variation du SP maximale autorisée, Cfg_SPRoCDecrLim < 0. |
Sts_ErrCVRoCIncrLim | BOOL | 1 = Erreur dans la configuration PPID : Valeur d’augmentation de la vitesse de variation de la CV maximale autorisée, Cfg_CVRoCIncrLim < 0. |
Sts_ErrCVRoCDecrLim | BOOL | 1 = Erreur dans la configuration PPID : Valeur de diminution de la vitesse de variation de la CV maximale autorisée, Cfg_CVRoCDecrLim < 0. |
Sts_ErrSPIntlk | BOOL | 1 = Erreur dans la configuration PPID : Valeur SP à utiliser lors d’une action SP de verrouillage ou de valeur incorrecte non valide, valeur hors limites, Cfg_SPIntlk > Cfg_PVEUMax ou < Cfg_PVEUMin. |
Sts_ErrCVIntlk | BOOL | 1 = Erreur dans la configuration PPID : Valeur CV à utiliser lors d’une action CV de verrouillage ou de valeur incorrecte non valide, valeur hors limites, Cfg_CVIntlk > Cfg_CVEUMax ou < Cfg_CVEUMin. |
Sts_ErrSPPwrUp | BOOL | 1 = Erreur dans la configuration PPID : Valeur SP à utiliser lors de la mise sous tension non valide, valeur hors limites, Cfg_SPPwrUp > Cfg_PVEUMax ou < Cfg_PVEUMin. |
Sts_ErrCVPwrUp | BOOL | 1 = Erreur dans la configuration PPID : Valeur CV à utiliser lors de la mise sous tension non valide, valeur hors limites, Cfg_CVIntlk > Cfg_CVEUMax ou < Cfg_CVEUMin. |
Sts_ErrAlm | BOOL | 1 = Erreur dans la configuration PPID : Au moins une alarme basée sur un Tag Logix possède des paramètres non valides. |
Sts_ErrHiHiDevLim | BOOL | 1 = Erreur dans la configuration PPID : Seuil de déviation PV haute-haute non valide, Cfg_HiHiDevLim < 0. |
Sts_ErrHiHiDevGateDly | BOOL | 1 = Erreur dans la configuration PPID : Présélection d’horloge du délai de porte de déviation PV haute-haute non valide (utilisez 0,0 à 2 147 483). |
Sts_ErrHiHiDevDB | BOOL | 1 = Erreur dans la configuration PPID : Zone morte de déviation PV haute-haute non valide, Cfg_HiHiDevDB < 0 ou Cfg_HiHiDevDB > Cfg_HiHiDevLim. |
Sts_ErrHiDevLim | BOOL | 1 = Erreur dans la configuration PPID : Seuil de déviation PV haute non valide, Cfg_HiDevLim < 0,0. |
Sts_ErrHiDevGateDly | BOOL | 1 = Erreur dans la configuration PPID : Présélection d’horloge du délai de porte de déviation PV haute non valide (utilisez 0,0 à 2 147 483). |
Sts_ErrHiDevDB | BOOL | 1 = Erreur dans la configuration PPID : Zone morte de déviation PV haute non valide, Cfg_HiDevDB < 0 ou Cfg_HiDevDB > Cfg_HiDevLim. |
Sts_ErrLoDevLim | BOOL | 1 = Erreur dans la configuration PPID : Seuil de déviation PV basse non valide, Cfg_LoDevLim > 0. |
Sts_ErrLoDevGateDly | BOOL | 1 = Erreur dans la configuration PPID : Présélection d’horloge du délai de porte de déviation PV basse non valide (utilisez 0,0 à 2 147 483). |
Sts_ErrLoDevDB | BOOL | 1 = Erreur dans la configuration PPID : Zone morte de déviation PV basse non valide, Cfg_LoDevDB < 0, ou > -Cfg_LoDevLim. |
Sts_ErrLoLoDevLim | BOOL | 1 = Erreur dans la configuration PPID : Seuil de déviation PV basse-basse non valide, Cfg_LoLoDevLim > 0,0. |
Sts_ErrLoLoDevGateDly | BOOL | 1 = Erreur dans la configuration PPID : Présélection d’horloge du délai de porte de déviation PV basse-basse non valide (utilisez 0,0 à 2 147 483). |
Sts_ErrLoLoDevDB | BOOL | 1 = Erreur dans la configuration PPID : Zone morte de déviation PV basse-basse non valide, Cfg_LoLoDevDB < 0, ou > -Cfg_LoLoDevLim. |
Sts_eSrc | INT | Valeurs énumérées de la source de commande actuelle : 0 = Logique non utilisée, 4 = Portable, 8 = Maintenance, 16 = Asservissement, 32 = Programme, 33 = Programme verrouillé, 34 = Programme par défaut (normal), 64 = Opérateur, 65 = Opérateur verrouillé, 66 = Opérateur par défaut (Normal), 128 = Maintenance hors service, 129 = Programmé hors service (échelon faux), 256 = Externe. |
Sts_bSrc | INT | Bitmap de sélection actif (pour un pôle de totem HMI avec une sélection de demande d'une source de commande) : Sts_bSrc.0 : Portable, Sts_bSrc.1 : Programmé hors service (échelon faux), Sts_bSrc.2 : Maintenance hors service, Sts_bSrc.3 : Maintenance, Sts_bSrc.4 : Asservissement, Sts_bSrc.5 : Externe, Sts_bSrc.6 : Programme verrouillé, Sts_bSrc.7 : Programme, Sts_bSrc.8 : Opérateur verrouillé, Sts_bSrc.9 : Opérateur. |
Sts_Hand | BOOL | 1 = Portable est sélectionné, remplace OoS, Maintenance, Asservissement, Externe, Programme, Opérateur. |
Sts_OoS | BOOL | 1 = Hors service est sélectionné, remplace Maintenance, Asservissement, Externe, Programme, Opérateur. |
Sts_Maint | BOOL | 1 = Maintenance est sélectionnée, remplace Asservissement, Externe, Programme, Opérateur. |
Sts_Ovrd | BOOL | 1 = Asservissement est sélectionnée, remplace Asservissement, Externe, Programme, Opérateur. |
Sts_Ext | BOOL | 1 = Externe est sélectionnée, remplace Programme, Opérateur. |
Sts_Prog | BOOL | 1 = Programme est sélectionné. |
Sts_ProgLocked | BOOL | 1 = Programme est sélectionné et verrouillé. |
Sts_Oper | BOOL | 1 = Opérateur est sélectionné. |
Sts_OperLocked | BOOL | 1 = Opérateur est sélectionné et verrouillé. |
Sts_ProgOperSel | BOOL | État (verrouillé) de la sélection Programme/Opérateur : 1 = Programme, 0 = Opérateur. |
Sts_ProgOperLock | BOOL | État de verrouillage (verrouillage) Programme/Opérateur : 1 = Verrouillé, 0 = Déverrouillé. |
Sts_Normal | BOOL | 1 = La sélection du propriétaire est égale à ce qui est configuré comme Normal (Programme ou Opérateur). |
Sts_ExtReqInh | BOOL | 1 = Demande externe bloquée. |
Sts_ProgReqInh | BOOL | 1 = Demande pour Programme bloquée, impossible de passer à Programme avec le propriétaire actuel. |
Sts_MAcqRcvd | BOOL | 1 = La commande Acquérir maintenance a reçu cette scrutation. |
Sts_Alm | BOOL | 1 = Une alarme est active. |
Sts_AlmInh | BOOL | 1 = Une alarme est réservée ou désactivée. |
Sts_HiHiDevCmp | BOOL | 1 = La déviation de PV est supérieure à la limite haute-haute, (Val_PV-Val_SP)>Cfg_HiHiDevLim. |
Sts_HiHiDevGate | BOOL | 1 = La porte haute-haute de la déviation PV est ouverte. |
Sts_HiHiDev | BOOL | 1 = La déviation de PV est supérieure à la limite haute-haute, (Val_PV-Val_SP)>Cfg_HiHiDevLim, pour l'ouverture de la porte. Il existe une alarme discrète par défaut prédéfinie basée sur des balises pour l’état. Définissez les membres de configuration standard de l’alarme discrète basée sur des balises. Accédez aux éléments d’alarme en utilisant ce format : PPIDTag.@Alarms.Alm_HiHiDev.AlarmElement |
Sts_HiDevCmp | BOOL | 1 = La déviation de PV est supérieure à la limite haute, (Val_PV-Val_SP)>Cfg_HiDevLim. |
Sts_HiDevGate | BOOL | 1 = La porte déviation de PV haute est ouverte. |
Sts_HiDev | BOOL | 1 = La déviation de PV est supérieure à la limite haute, (Val_PV-Val_SP)>Cfg_HiDevLim, pour l'ouverture de la porte. Il existe une alarme discrète par défaut prédéfinie basée sur des balises pour l’état. Définissez les membres de configuration standard de l’alarme discrète basée sur des balises. Accédez aux éléments d’alarme en utilisant ce format : PPIDTag.@Alarms.Alm_HiDev.AlarmElement |
Sts_LoDevCmp | BOOL | 1 = La déviation de PV est inférieure à la limite basse, (Val_PV-Val_SP)<Cfg_LoDevLim. |
Sts_LoDevGate | BOOL | 1 = La porte déviation PV basse est ouverte. |
Sts_LoDev | BOOL | 1 = La déviation de PV (erreur de boucle) est inférieure à la limite basse, (Val_PV-Val_SP)<Cfg_LoDevLim, pour l'ouverture de la porte. Il existe une alarme discrète par défaut prédéfinie basée sur des balises pour l’état. Définissez les membres de configuration standard de l’alarme discrète basée sur des balises. Accédez aux éléments d’alarme en utilisant ce format : PPIDTag.@Alarms.Alm_LoDev.AlarmElement |
Sts_LoLoDevCmp | BOOL | 1 = La déviation de PV est inférieure à la limite basse-basse, (Val_PV-Val_SP)<Cfg_LoLoDevLim. |
Sts_LoLoDevGate | BOOL | 1 = La porte déviation PV basse-basse est ouverte. |
Sts_LoLoDev | BOOL | 1 = La déviation de PV (erreur de boucle) est inférieure à la limite basse-basse, (Val_PV-Val_SP)<Cfg_LoLoDevLim, pour l'ouverture de la porte. Il existe une alarme discrète par défaut prédéfinie basée sur des balises pour l’état. Définissez les membres de configuration standard de l’alarme discrète basée sur des balises. Accédez aux éléments d’alarme en utilisant ce format : PPIDTag.@Alarms.Alm_LoLoDev.AlarmElement |
Sts_Fail | BOOL | 1 = Défaut de boucle : Les états PV mauvaise, SP mauvais, CV mauvaise ou de retour portable mauvais sont activés ou sont verrouillés sans réinitialisation. Il existe une alarme discrète par défaut prédéfinie basée sur des balises pour l’état. Définissez les membres de configuration standard de l’alarme discrète basée sur des balises. Accédez aux éléments d’alarme en utilisant ce format : PPIDTag.@Alarms.Alm_Fail.AlarmElement. |
Sts_IntlkTrip | BOOL | 1 = Verrouillage Pas OK a provoqué le maintien ou la modification de la sortie de la boucle. Il existe une alarme discrète par défaut prédéfinie basée sur des balises pour l’état. Définissez les membres de configuration standard de l’alarme discrète basée sur des balises. Accédez aux éléments d’alarme en utilisant ce format : PPIDTag.@Alarms.Alm_IntlkTrip.AlarmElement |
Sts_RdyReset | BOOL | 1 = Une alarme verrouillée ou une condition de mise hors tension est prête à être réinitialisée. |
Sts_RdyAck | BOOL | 1 = Une alarme est prête à être confirmée. |
XRdy_Acq | BOOL | 1 = Prêt pour XCmd_Acq pour activer le bouton HMI. |
XRdy_Rel | BOOL | 1 = Prêt pour XCmd_Rel pour activer le bouton HMI. |
XRdy_Casc | BOOL | 1 = Prêt pour XCmd_Casc, activez le bouton HMI. |
XRdy_Auto | BOOL | 1 = Prêt pour XCmd_Auto, activez le bouton HMI. |
XRdy_Man | BOOL | 1 = Prêt pour XCmd_Man, activez le bouton HMI. |
XRdy_NormLM | BOOL | 1 = Prêt pour XCmd_NormLM, activez le bouton HMI. |
XRdy_SPRampStart | BOOL | 1 = Prêt pour XCmd_SPRampStart, activez le bouton HMI. |
XRdy_SPRampStop | BOOL | 1 = Prêt pour XCmd_SPRampStop, activez le bouton HMI. |
XRdy_Reset | BOOL | 1 = Prêt pour XCmd_Reset, activez le bouton HMI. |
XRdy_ResetAckAll | BOOL | 1 = Prêt pour XCmd_ResetAckAll, activez le bouton HMI. |
Val_Owner | DINT | ID du propriétaire actuel de l'objet, 0 = Non possédé. |
Membre d’entrée privé | Type de données | Valeur par défaut | Description |
|---|---|---|---|
CmdSrc | P_COMMAND_SOURCE | Sélection de la source de contrôle ou de commande. | |
OCmd_SPRampStart | BOOL | 0 | Commande Opérateur pour lancer la rampe SP. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_SPRampStop | BOOL | 0 | Commande Opérateur pour arrêter la rampe SP. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OSet_Ratio | REAL | 1,0 | Paramètre d’opérateur pour le rapport, mode de boucle Cascade/Rapport et Rapport activés (sans unité). Valide = de 0,0 à la valeur flottante positive maximale. La valeur par défaut est 1,0. |
OSet_SP | REAL | 0,0 | Paramètre d’opérateur pour le point de consigne, mode de boucle Auto (PVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
OSet_SPTarget | REAL | 0,0 | Paramètre d’opérateur pour la cible de rampe du point de consigne, point de terminaison de l’assistant de rampe (PVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
OSet_SPRampTime | REAL | 0,0 | Paramètre d’opérateur pour la durée de rampe du point de consigne, durée pour atteindre la cible de l’assistant de rampe (en secondes). Valide = de 0,0 à 28800,0 secondes. La valeur par défaut est 0,0. |
OSet_CV | REAL | 0,0 | Paramètre d’opérateur pour CV, mode de boucle Manuel (CVEU). Correct, toute valeur flottante. La valeur par défaut est 0,0. |
MCmd_Bypass | BOOL | 0 | Commande de maintenance pour contourner tous les verrouillages contournables. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
MCmd_Check | BOOL | 0 | Commande de maintenance pour vérifier, ne pas contourner, tous les verrouillages. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
MCmd_OoS | BOOL | 0 | Commande de maintenance pour sélectionner Hors service. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
MCmd_IS | BOOL | 0 | Commande de maintenance pour sélectionner En service. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
MCmd_Acq | BOOL | 0 | Commande de maintenance pour acquérir la propriété (Opérateur/Programme/Externe/Asservissement vers Maintenance). L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
MCmd_Rel | BOOL | 0 | Commande de maintenance pour libérer la propriété (Maintenance vers Opérateur/Programme/Externe/Asservissement). L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_Oper | BOOL | 0 | Commande Opérateur pour sélectionner Opérateur (Programme vers Opérateur). L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_Prog | BOOL | 0 | Commande Opérateur pour sélectionner Programme (Opérateur vers Programme). L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_Lock | BOOL | 0 | Commande Opérateur de verrouillage du mode Opérateur (désactiver Programme). L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_Unlock | BOOL | 0 | Commande Opérateur pour déverrouiller ou de libérer (autoriser Programme à acquérir) la propriété. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_Normal | BOOL | 0 | Commande Opérateur pour sélectionner le mode normal (Opérateur ou Programme). L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_Auto | BOOL | 0 | Commande Opérateur pour sélectionner le mode de boucle Automatique. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_Casc | BOOL | 0 | Commande Opérateur pour sélectionner le mode de boucle Cascade/Rapport. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_Man | BOOL | 0 | Commande Opérateur pour sélectionner le mode de boucle Manuel. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_NormLM | BOOL | 0 | Commande Opérateur pour sélectionner le mode de boucle configuré comme Normal (voir Cfg_NormLM). L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_Reset | BOOL | 0 | Commande d'opérateur pour réinitialiser toutes les alarmes et les conditions de défaut verrouillées. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
OCmd_ResetAckAll | BOOL | 0 | Commande d’opérateur pour confirmer et réinitialiser toutes les alarmes et les conditions de défaut verrouillées. L’utilisation de OCmd_ResetAckAll est restreinte à HMI. L'instruction efface automatiquement cet opérande. La valeur par défaut est 0. |
Membre de sortie privé | Type de données | Description |
|---|---|---|
HMI_BusObjIndex | DINT | Index d'objet de bus HMI. La valeur par défaut est 0. |
MRdy_Bypass | BOOL | 1 = Prêt pour MCmd_Bypass, activez le bouton HMI. |
MRdy_Check | BOOL | 1 = Prêt pour MCmd_Check, activez le bouton HMI. |
MRdy_OoS | BOOL | 1 = Prêt pour MCmd_OoS, activez le bouton HMI. |
MRdy_IS | BOOL | 1 = Prêt pour MCmd_IS, activez le bouton HMI. |
MRdy_Acq | BOOL | 1 = Prêt pour MCmd_Acq, activez le bouton HMI. |
MRdy_Rel | BOOL | 1 = Prêt pour MCmd_Rel, activez le bouton HMI. |
ORdy_Oper | BOOL | 1 = Prêt pour OCmd_Oper, activez le bouton HMI. |
ORdy_Prog | BOOL | 1 = Prêt pour OCmd_Prog, activez le bouton HMI. |
ORdy_Lock | BOOL | 1 = Prêt pour OCmd_Lock, activez le bouton HMI. |
ORdy_Unlock | BOOL | 1 = Prêt pour OCmd_Unlock, activez le bouton HMI. |
ORdy_Normal | BOOL | 1 = Prêt pour OCmd_Normal, activez le bouton HMI. |
ORdy_Auto | BOOL | 1 = Prêt pour OCmd_Auto, active le bouton HMI. |
ORdy_Casc | BOOL | 1 = Prêt pour OCmd_Casc, active le bouton HMI. |
ORdy_CV | BOOL | 1 = Prêt pour OSet_CV, active le champ d’entrée de données. |
ORdy_Man | BOOL | 1 = Prêt pour OCmd_Man, active le bouton HMI. |
ORdy_NormLM | BOOL | 1 = Prêt pour OCmd_NormLM, active le bouton HMI. |
ORdy_Ratio | BOOL | 1 = Prêt pour OSet_Ratio, active le champ d’entrée de données. |
ORdy_SP | BOOL | 1 = Prêt pour OSet_SP, active le champ d’entrée de données. |
ORdy_SPRampStart | BOOL | 1 = Prêt pour OCmd_SPRampStart, active le bouton HMI. |
ORdy_SPRampStop | BOOL | 1 = Prêt pour OCmd_SPRampStop, active le bouton HMI. |
ORdy_SPTarget | BOOL | 1 = Prêt pour OSet_SPTarget, active le champ d’entrée de données. |
ORdy_SPRampTime | BOOL | 1 = Prêt pour OSet_SPRampTime, active le champ d’entrée de données. |
ORdy_Reset | BOOL | 1 = Prêt pour OCmd_Reset, active le bouton HMI. |
ORdy_ResetAckAll | BOOL | 1 = Au moins une alarme ou une condition de mise hors tension verrouillée nécessite une réinitialisation ou une confirmation. |
Membre InOut public | Type de données | Description |
|---|---|---|
BusObj | BUS_OBJ | Composant du bus |
BUS_OBJ Structure
La structure BUS_OBJ lie l'instruction PID de procédé à d'autres instructions dans une stratégie de contrôle complexe, généralement dans une hiérarchie. Un objet Bus cumule les informations d'état et d'alarme des dispositifs de niveau inférieur jusqu'à un contrôle de niveau supérieur et distribue les commandes de contrôle de niveau supérieur vers les instructions de niveau inférieur. Éléments liés au bus en faisant référence à un membre unique du tableau BUS_OBJ associé au bus.
Ce paramètre lie l’instruction à un balise externe qui contient les données nécessaires pour que l’instruction fonctionne. Le balise externe doit être du type de données affiché ou peut être NUL (NULL). S’il est NULL (NUL), les fonctions bus de cette instruction ne sont pas disponibles.
Membres | Type de données | Description |
|---|---|---|
Inp_Cmd | DINT | Entrée pour exercer des commandes |
Out_Cmd | DINT | Commandes résultantes |
Inp_CmdLLH | DINT | Entrée pour les commandes de niveau normalement élevées |
Out_CmdLLH | DINT | Commandes hautes de niveau de ligne résultantes |
Inp_Sts | DINT | Entrée pour exercer un état |
Out_Sts | DINT | État résultant |
Inp_CmdAck | DINT | Entrée pour exercer une confirmation de commande |
Out_CmdAck | DINT | Confirmation de commande résultante |
Inp_SeverityMax | DINT | Entrée : sévérité d'alarme maximale |
Out_SeverityMax | DINT | Résultat d'une sévérité d'alarme maximale |
Cfg_CmdMask | DINT | Masque de propagation pour les commandes |
Cfg_CmdLLHMask | DINT | Masque de propagation pour les commandes de niveau supérieur de ligne |
Cfg_StsMask | DINT | Masque de propagation pour l'état |
Ref_Index | DINT | Index du tableau de bus |
Alarmes
Des alarmes basées sur des balises discrètes sont définies pour ces membres.
Membre | Nom de l'alarme | Description |
|---|---|---|
Sts_Fail | Alm_Fail | Échec d’instruction. Ce défaut se produit lorsque l’instruction PPID rapporte un défaut d’instruction. Le défaut est signalé dans l’une des conditions suivantes :
|
Sts_IntlkTrip | Alm_IntlkTrip | Alarme de déclenchement de verrouillage. Se produit lorsque les verrouillages non contournables ne sont pas OK ou les verrouillages contournables ne sont pas OK lorsqu’ils ne sont pas contournés. NAND(Inp_NBIntlkOK,(OR(Inp_IntlkOK,Stst_BypActive))). |
Sts_HiHiDev | Alm_HiHiDev | Déviation haute-haute. Se produit lorsque la valeur au-delà de laquelle la PV dépasse le point de consigne ou la référence est supérieure au seuil de déviation haute-haute. Le seuil, la zone morte, la mise en porte et la temporisation sont définis dans la configuration. |
Sts_HiDev | Alm_HiDev | Déviation haute. Se produit lorsque la valeur au-delà de laquelle la PV dépasse le point de consigne ou de la référence est supérieure au seuil de déviation haute. Le seuil, la zone morte, la mise en porte et la temporisation sont définis dans la configuration. |
Sts_LoDev | Alm_LoDev | Déviation basse. Se produit lorsque la valeur au-delà de laquelle la PV dépasse le point de consigne ou de la référence est inférieure au seuil de déviation basse. (Étant donné que le seuil est un nombre négatif, cette lecture correspond à la quantité pour laquelle la PV tombe en dessous du point de consigne ou de la référence.) Le seuil, la zone morte, la mise en porte et la temporisation sont définis dans la configuration. |
Sts_LoLoDev | Alm_LoLoDev | Déviation basse-basse. Se produit lorsque la valeur au-delà de laquelle la PV dépasse le point de consigne ou la référence est inférieure au seuil de déviation basse-basse. (Étant donné que le seuil est un nombre négatif, cette lecture correspond à la quantité pour laquelle la PV tombe en dessous du point de consigne ou de la référence.) Le seuil, la zone morte, la mise en porte et la temporisation sont définis dans la configuration. |
Marquez l’alarme comme étant utilisée ou inutilisée et définissez les membres de configuration standard de l’alarme discrète basée sur des balises. Accédez aux éléments d’alarme en utilisant ce format : PPIDTag.@Alarms.AlarmName.AlarmElement.
Il y a des commandes des modes Programme, Opérateur et Externe qui activent la réinitialisation et la réinitialisation et la confirmation de toutes les alarmes de l’instruction (ensemble d’alarmes) en même temps. Ce diagramme montre comment la condition d’alarme interagit avec la commande d’alarme.

Ces diagrammes expliquent comment la déviation haute-haute de condition d’alarme, la déviation haute, la déviation basse, la déviation basse-basse, le déclenchement et l’échec de verrouillage sont dérivés.






Fonctionnement
En principe, l’algorithme central PID calcule la CV à l’aide d’une formule configurée pour des gains dépendants,

où K est le gain de l’automate [-], Ti est le temps de réinitialisation [minutes], Td est le temps de variation [minutes]. Alternativement, l’instruction est configurée pour des gains indépendants,

où K
P
est un gain proportionnel [-], KI
est un gain intégral [1/minute], et KD
un gain dérivé [minutes]. Choisissez Gains indépendants si vous souhaitez que les trois gains des termes proportionnel, intégral et dérivé fonctionnent indépendamment.Ce schéma de principe illustre des options de configuration supplémentaires avec un lissage des dérivés et un point de consigne pondéré utilisés dans les calculs d’erreurs pour saisir les termes proportionnel et dérivé, ainsi qu’une erreur quadratique dans le terme proportionnel et le suivi de CV :

La section suivante utilise les noms de balise exacts de la structure P_PID. Les variables sans préfixe, telles que SP, PV, CVPrev, CVTrack, FF, FFPrev et CtrlAction, sont des variables internes utilisées lors des calculs. Les variables ayant un préfixe Inp_, Val_ du type de données REAL sont exprimées en unités de procédé. Les variables sans préfixe du type de données REAL sont exprimées en % de la plage.
Ts [deuxième] est une période actuelle de l’exécution de l’algorithme PID, c.-à-d. Le temps écoulé depuis la scrutation précédente de l’instruction PPID.
d est un opérateur à retardement à une analyse. Par exemple :

Les variables entrant dans la formule PID doivent être exprimées en pourcentage de la plage afin que les gains PID ne dépendent pas des unités de procédé utilisées pour PV et CV. La mise à l’échelle de ces paramètres est calculée selon la valeur Perc = min(100, max (0,(EU-EUMin)/(EUMax-EUMin)*100)).
- Val_SP,
- Inp_PV,
- Inp_CVPrev,
- Inp_CVTrack,
- Cfg_CVHiLim,
- Cfg_LoLim,
- Cfg_CVRoCIncrLim,
- Cfg_CVRoCDecrLim
La mise à l’échelle de Inp_FF et Inp_FFPrev est calculée selon le format Perc = min(100, max(-100, (EU-EUMin)/(EUMax-EUMin)*100)).
L’action de contrôle Inverse/Directe affecte le signe de l’erreur de boucle qui sera utilisé pour d’autres calculs :

Calculs des erreurs de boucle :

Algorithme PID de vitesse
Ce diagramme de l’algorithme PID de vitesse décrit le calcul de CV. Les diagrammes détaillés supplémentaires de cette section décrivent toutes les options de configuration PPID.



Calcul du terme dérivé :
Calcul de l’erreur modifié :
E
c
(k)
= Cfg_DSPCoef(k) * SP(k)
– PV(k)
E
c
(k)
= Cfg_DSPCoef(k) * SP(k
–1)
– PV(k
–1)
∆E
c
(k)
= E
c
(k)
– E
c
(k
–1)
= (Cfg_DSPCoef(k) * (Cfg_DSPCoef(k) *
SP(k)
– PV(k))
–SP(k
–1)
– PV(k
–1))
∆E
c
(k
–1) = E
c
(k
–1)
– E
c
(k
–2)
=
(Cfg_DSPCoef(k) * SP(k
–1)
– PV(k
–1))
–SP(k
–2)
– PV(k
–2))
Contribution du terme dérivé si Cfg_UseDSmooting = 0, Cfg_Dependent = 1 et Cfg_GainBumpless = 1.
dD(k)
= Cfg_PGain(k) * Cfg_DGain(k) * (∆E
c
(k)
– ∆E
c
(k
–1))
Contribution du terme dérivé si Cfg_UseDSmooting = 0, Cfg_Dependent = 1 et Cfg_GainBumpless = 0.
dD(k)
= Cfg_PGain(k) * Cfg_DGain(k) * ∆E
c
(k)
– Cfg_PGain(k–1) * Cfg_DGain(k–1) * ∆E
c
(k
–1)
Contribution du terme dérivé si Cfg_UseDSmooting = 0, Cfg_Dependent = 0 et Cfg_GainBumpless = 1.
dD(k)
= Cfg_DGain(k) * (∆Ec(k)
– ∆E
c
(k
–1))
–
Contribution du terme dérivé si Cfg_UseDSmooting = 0, Cfg_Dependent = 0 et Cfg_GainBumpless = 0.
dD(k)
= Cfg_DGain(k) * ∆Ec(k)
– Cfg_DGain(k–1) * ∆Ec(k–1)
Si le filtre dérivé est activé (Cfg_UseDSmooting=1), le calcul est le suivant :
Paramètre
DCoef
pour les gains dépendants Cfg_Dependent = 1.
Pour des gains indépendants Cfg_Dependent = 0.

Contribution du terme dérivé si Cfg_UseDSmooting = 1 et Cfg_GainBumpless = 1.

Contribution du terme dérivé si Cfg_UseDSmooting = 1 et Cfg_GainBumpless = 0.

Terme d’anticipation.



Le mécanisme de prévention de saturation surveille la valeur CV interne et pilote le terme intégral. Le mécanisme de prévention de saturation utilise les règles suivantes :
- Si la CV interne est supérieure à la limite supérieure actuellement appliquée, ne pas effectuer l’intégration vers le haut.
- Si la CV interne se situe dans les limites actuellement appliquées, effectuer l’intégration sans violer les limites.
- Si la CV interne est au-dessous de la limite inférieure actuellement appliquée, ne pas effectuer l’intégration vers le bas.

Algorithme PID de position
L’instruction PPID est configurée pour la forme de position de l’algorithme PD sans transfert sans à-coup de Manuel à Auto ou Cascade si Cfg_PositionBump = 1. Cette option est sélectionnée lorsque Cfg_PositionBump = 1 et Cfg_IGain = 0 et que la modification du gain proportionnel n’est pas sans à-coup même si Cfg_GainBumpless = 1. Cette fonctionnalité peut aussi s’appliquer à l’algorithme PID de vitesse pour se comporter comme elle fonctionnerait en cas d’erreur et non en cas de modification d’erreur.
CONSEIL:
L’anticipation est relative à CVEUMin, mais si Cfg_PositionBump = 1, l’action de contrôle est calculée en interne sous la forme Val_CVOutPercent = Cfg_PGain*Val_EPercent+Inp_FF/(Cfg_CVEUMax-Cfg_CVEUMin)*100 plus terme dérivé facultatif.
Zone morte de déviation
La CV n’est pas sensible à la variation d’erreur de boucle dans la zone autour de zéro erreur. Des niveaux de zone configurés permettent une hystérèse supplémentaire. Le niveau de zone morte pour l’approche de PV par SP (Cfg_DevDBEnter) peut être inférieur au niveau de zone morte pour que PV s’éloigne de SP (Cfg_DevDB). L’état de zone morte active (Sts_DevDBAct) est défini pour PV dans la zone morte. Vous avez la possibilité d’arrêter les mouvements CV ou simplement d’arrêter l’intégration tout en laissant l’action proportionnelle et dérivée en direct lorsqu’elle est fournie dans la zone morte (Cfg_UseIntegDevDB).

Gestion de SP
L’instruction PPID vérifie la validité du point de consigne avant que la valeur SP ne soit fournie à l’algorithme PID pour traitement. SP échoue si :
- Les limites de blocage du SP ne sont pas valides (Sts_ErrSPLim = 1) ou
- Les limites de mise à l’échelle de PV ne sont pas valides (Sts_ErrPVEU = 1) ou
- Le mode de boucle est Cascade et CASCADE SP est NaN ou Inf, ou
- la cascade est un Rapport (Cfg_HasRatio = 1) et les limites de blocage de rapport ne sont pas valides.
La valeur SP (Val_SPSet) est égale à la valeur du point de consigne configurée Cfg_SPIntlk et l’indicateur d’état est défini (Sts_IntlkSP = 1) si :
- Le verrouillage se déclenche et l’action de suivi doit utiliser Cfg_SPIntlk comme valeur de point de consigne (Cfg_IntlkTripSPAction = 2) ou
- SP échoue et l’instruction est configurée pour suivre l’utilisation de Cfg_SPIntlk comme point de consigne (Cfg_SPFailSPAction = 2) ou
- PV échoue et l’instruction est configurée pour utiliser Cfg_SPIntlk comme valeur du point de consigne (Cfg_PVFailSPAction = 2) ou
- CV échoue et l’instruction est configurée pour utiliser Cfg_SPIntlk comme valeur de point de consigne (Cfg_CVFailSPAction = 2).

La valeur SP est maintenue, la mise sous tension de la valeur SP actuelle et l’indicateur d’état sont définis (Sts_SPHeld = 1), si :
- Le verrouillage se déclenche et l’action de suivi doit laisser la valeur inchangée (Cfg_IntlkTripSPAction = 1) ou
- SP échoue et l’instruction est configurée pour suivre le point de consigne non modifié (Cfg_SPFailSPAction = 1) ou
- PV échoue et l’instruction est configurée pour suivre le point de consigne non modifié (Cfg_PVFailSPAction = 1) ou
- CV échoue et l’instruction est configurée pour suivre le point de consigne non modifié (Cfg_CVFailSPAction = 1) et la priorité de mise sous tension la plus haute n’est pas appliquée (Sts_IntlkSP = 0).

La valeur SP est définie sur la valeur PV actuelle (Val_SPSet=Val_PV) et l’indicateur d’état est défini sur (Sts_SPShedPV=1) si :
- Le verrouillage se déclenche et l’action de suivi doit laisser la valeur inchangée (Cfg_IntlkTripSPAction = 3) ou
- SP échoue et l’instruction est configurée pour suivre le point de consigne non modifié (Cfg_SPFailSPAction = 3) ou
- CV échoue et l’instruction est configurée pour suivre le point de consigne non modifié (Cfg_CVFailSPAction = 3) et la priorité de mise hors tension la plus élevée n’est pas appliquée (Sts_IntlkSP = 0 &Sts_SPHeld = 0) et la PV est bonne (Sts_PVBad = 0).

Les conditions de mise hors tension l’emporter sur les autres sélections de SP, en mode Auto depuis Programme, Opérateur, Asservissement SP, en mode Cascade à partir de CascSP, en mode Manuel depuis la PV à suivre.
Si le SP ne provient pas de la mise hors tension et si les limites de blocage du SP sont valides, d’autres sources de valeur SP sont vérifiées.
Si la boucle n’est pas en mode Cascade et que l’opérateur possède le SP, OSet_SP est utilisé.
Si la boucle n’est pas en mode Cascade et que le programme possède le SP, PSet_SP est utilisé.
Si la boucle n’est pas en mode Cascade et qu’Externe possède le SP, XSet_SP est utilisé.
Si la boucle n’est pas en mode Cascade et qu’Asservissement est sélectionné, Inp_OvrdSP est utilisée.
Pour la boucle en mode Cascade, Inp_CascSP × Val_Ratio est utilisée. Si Cascade n’est pas rapport Val_Ratio = 1.
L’instruction est prête à recevoir un nouveau SP de l’opérateur (ORdy_SP) si :
- Le suivi n’est pas activé (Cfg_SetTrack = 0) ou
- l’opérateur possède le mode de boucle en mode Auto ou l’opérateur possède le mode de boucle en mode Manuel et le SP ne suit pas la PV en mode Manuel (Cfg_PVTrack = 0) ou
- la source de commande est Portable en mode Auto ou la source de commande est Portable en mode Manuel et le SP ne suit pas la PV en mode Manuel (Cfg_PVTrack = 0) ou
- La source de commande est Asservissement et le SP n’est pas configuré pour le suivi en mode Asservissement (Cfg_SetTrackOvrdHand = 0).
Le SP suit la valeur PV (Val_PV) et définit l’état de suivi Sts_SPTrackPV = 1 si le mode de boucle est Manuel et l’instruction est configurée pour le suivi en mode Manuel (Cfg_PVTrack = 1) et qu’aucune condition de mise sous tension du SP n’est activée (Sts_SPShed = 0) et que la PV n’est pas mauvaise (Sts_PVBad = 0).
Le SP est bloqué à Cfg_SPHiLim et Cfg_SPLoLim et l’état de blocage est défini lorsqu’il est bloqué (Sts_SPClamped=1) si le SP n’est pas maintenu par la mise sous tension (Sts_SPHeld = 0), et si le SP n’est pas défini sur le SP de verrouillage par mise hors tension (Sts_IntlkSP = 0) et si les limites de blocage de SP sont valides (Sts_ErrSPLim = 0).
Assistant de rampe SP
L’assistant de rampe SP permet à Opérateur/Programme/Externe/Asservissement d’entrer la cible SP, la durée pour atteindre la cible (temps de rampe) et de calculer les mouvements du SP pour atteindre la cible saisie dans l’heure d’entrée lorsque vous démarrez à partir du SP actuel lorsque l’assistant est commandé pour démarrer. La caractéristique de rampe est définie par la cible de rampe SP (SPTarget) et le temps de rampe SP (SPRampTime) comme décrit ci-dessous.
L’entrée de cible et de rampe de SP est autorisée (ORdy_SPTarget = 1, ORdy_SPRampTime = 1) et Val_SPTarget copiée dans Val_SPSet si :
- L’assistant de rampe du point de consigne est autorisé (Cfg_HasSPRamp=1) et le paramètre Programme/Opérateur/Externe n’est pas suivi (Cfg_SetTrack = 0) ou
- l’opérateur possède le SP en mode Auto ou la source de commande est Portable en mode de boucle automatique.


Rampe de SP
La rampe du point de consigne empêche les impulsions de CV et les à-coups en éliminant les changements soudains du point de consigne. Bien que la rampe du point de consigne peut être un avantage pour le contrôle d’une boucle unique ou pour l’automate principal (externe) d’une configuration en mode Cascade, ni la rampe du point de consigne ni la fonction proportionnelle de la PV ne doit être utilisée sur l’automate secondaire (intérieur) d’une boucle en mode Cascade, car cela dégraderait la réactivité de la boucle secondaire.
La rampe SP est ignorée, la cible de SP (Val_SPSet) est utilisée directement pour le point de consigne final (Val_SP), l’état à ignorer est défini Sts_SkipSPRoCLim = 1 et la rampe signalée est terminée Sts_SPRamping = 0 dans ces conditions :
- Les limites de blocage du SP ne sont pas valides Sts_ErrSPLim = 1, ou
- PPID est hors service ou
- PPID est configuré pour ignorer la limitation RoC Cfg_SkipSPRoCLim = 1 et si PPID est en mode Verrouillage/Maintenance/Asservissement ou
- la valeur SP suit la valeur PV en mode de boucle Manuel (Sts_SPTrackPV = 1) ou
- La valeur actuelle de l’augmentation de la limite de vitesse de variation de SP est de zéro (Val_SPRoCIncr = 0) et la cible actuelle de SP (Val_SPSet) est supérieure au SP actuel, ou
- la valeur actuelle de la diminution de la limite de vitesse de variation de SP est de zéro (Val_SPRoCDecr = 0) et la cible actuelle de SP (Val_SPSet) est inférieure au SP actuel.
La rampe SP s’exécute si tous ces points sont vrais :
- non ignoré (Sts_SkipSPRoCLim = 0),
- le point de consigne n’a pas atteint son Val_SPSet cible,
- la valeur absolue de la déviation de boucle (| Val_E|) ne dépasse pas la déviation de rampe maximale configurée, | Val_E|≤ Cfg_SPRampMaxDev.
Si | Val_E|> Cfg_SPRampMaxDev, les limites RoC réelles Val_SPRoCDecr et Val_SPRoCIncr sont définies sur zéro et le SP ne change pas.


Mise à l’échelle du SP
Si les limites de mise à l’échelle de PV sont valides (Sts_ErrPVEU = 0), SP dans PVEU est mis à l’échelle en pourcentage utilisé dans le calcul PID, SP = (SPEU-Cfg_PVEUMin)/(Cfg_PVEUMax-Cfg_PVEUMin)×100.
Sélection et blocage du rapport
L’instruction PPID est prête pour que l’opérateur entre un Rapport si le mode de boucle en Cascade est Rapport (Cfg_HasRatio = 1), que les limites de blocage du rapport ne sont pas valides, et que l’instruction PPID n’est pas configurée pour le suivi ou si Opérateur possède un Rapport ou dans Portable.
Si l’instruction PPID autorise Cascade-Rapport (Cfg_HasRatio = 1) et que les limites de blocage du rapport ne sont pas valides, alors la source du Rapport est sélectionnée en fonction de la source de commande :
- PSet_Ratio si Programme possède un rapport,
- OSet_Ratio si Opérateur possède un rapport,
- XSet_Ratio si Externe possède un rapport,
- Inp_OvrdRatio si Asservissement est sélectionné.
Si l’instruction PPID autorise Cascade-Rapport (Cfg_HasRatio = 1) et que les limites de blocage du rapport ne sont pas valides, Rapport est bloqué à Cfg_RatioHiLim et à Cfg_RatioLoLim. Si le blocage est activé, Sts_RatioClamped est défini.
Si la boucle ne possède pas de Rapport ou si les limites de blocage ne sont pas valides, le Rapport est défini sur 1 (Val_Ratio = 1).
Suivi de SP et de rapport pour un transfert sans à-coup
Val_SPSet est recopié sur tous les paramètres SP inactifs pour permettre un transfert sans à-coup lorsque le propriétaire de SP change.
Le suivi de SP est appliqué si PPID est configuré pour lui (Cfg_SetTrack = 1) et :
- le mode de boucle n’est pas en mode Asservissement ni Portable, ou
- le mode de boucle est en mode Asservissement ou Portable et PPID est configuré pour suivre en mode Asservissement et de boucle Portable (Cfg_SetTrackOvrdHand = 1) ou
- Le mode de boucle est en mode Cascade ou
- le mode de boucle est en mode Manuel et Cfg_PVTrack = 1.
Ce diagramme montre les principales étapes du traitement de SP avant que la valeur SP n’entre dans la formule PID pour calculer la CV.

Gestion de CV
Sélection de CV en mode Manuel
En mode de boucle Manuel, si les limites de blocage de CV sont valides, la CV est sélectionnée dans la source active (Programme/Opérateur/Externe/Asservissement). Si le Programme possède une CV, PSet_CV est sélectionné, etc. L’instruction PPID est prête pour OSet_CV (ORdy_CV = 1) dans les conditions suivantes : l’entrée opérateur n’est pas configurée pour le suivi dans Programme/Opérateur/Externe (Cfg_SetTrack = 0), ou la source de commande est Portable ou Outrepassement et l’entrée opérateur n’est pas configurée pour le suivi en mode Portable ou Outrepassement (Cfg_SetTrackOvrdHand = 0).
CV mis hors tension
Val_CVSet conserve la dernière valeur CV correcte et l’état de remplacement de la valeur CV est définie (Sts_CVHeld = 1) lorsque
- Le verrouillage se déclenche et l’action CV est configurée pour la dernière valeur CV correcte (Cfg_IntlkTripCVAction = 1) ou
- Le SP échoue et l’action de suivi sur CV est configurée pour la dernière valeur CV correcte (Cfg_SPFailCVAction = 1) et le mode de boucle est Auto ou Cascade ou le SP n’a pas échoué lors de la scrutation précédente (échec de SP sur le bord montant), ou
- La PV échoue et l’action de suivi sur CV est configurée pour la dernière valeur CV correcte (Cfg_PVFailCVAction = 1) et le mode de boucle est Auto ou Cascade ou la PV n’a pas échoué lors de la scrutation précédente (échec de PV sur le bord montant), ou
- PV substituée à PAI (Inp_PVSrcQ = 18) et le mode de boucle est Auto ou Cascade, ou
- La CV échoue et l’action de suivi sur CV est configurée pour la dernière valeur CV correcte (Cfg_CVFailCVAction = 1) et le mode de boucle est Auto ou Cascade ou la CV n’a pas échoué lors de la scrutation précédente (échec de CV sur le bord montant).
Pour Sts_CVHeld = 1, la CV n’est pas mise à jour.
CONSEIL:
En cas d’échec de PV, CV ou SP, la dernière valeur CV correcte reste à la sortie, mais elle peut toujours être écrasée en mode de boucle Manuel.

Val_CVSet est défini sur Cfg_CVIntlk et l’état de remplacement de la valeur CV est définie (Sts_IntlkCV = 1) lorsque :
- Le verrouillage se déclenche et l’action CV est configurée pour Cfg_CVIntlk (Cfg_IntlkTripCVAction = 2) ou
- Le SP échoue et l’action de suivi sur CV est configurée pour Cfg_CVIntlk (Cfg_SPFailCVAction = 2) et le mode de boucle est Auto ou Cascade ou le SP n’a pas échoué lors de la scrutation précédente (échec de SP sur le bord montant), ou
- La PV échoue et l’action de suivi sur CV est configurée pour Cfg_CVIntlk (Cfg_PVFailCVAction = 2) et le mode de boucle est Auto ou Cascade ou la PV n’a pas échoué lors de la scrutation précédente (échec de PV sur le bord montant) ou
- La CV échoue et l’action de suivi sur CV est configurée pour Cfg_CVIntlk (Cfg_CVFailCVAction = 2), et le mode de boucle est Auto ou Cascade ou la CV n’a pas échoué lors de la scrutation précédente (échec de CV sur le bord montant) ou
- PPID est hors service.CONSEIL: En cas d’échec de PV, CV ou SP, la valeur de Cfg_CVIntlk reste à la sortie, mais elle peut toujours être écrasée en mode de boucle Manuel.

Si la valeur CV est définie par la mise hors tension, pour verrouiller la CV ou maintenir la dernière valeur de CV correcte, Sts_CVShed = 1.
Blocage de CV
Si les limites de blocage de CV sont valides (Sts_ErrCVLim=0) et que le mode de boucle n’est pas Manuel ou est Manuel, mais que la configuration est définie pour ne pas ignorer le blocage de CV (Cfg_SkipCVManLim = 0), la valeur calculée ou définie de CV (CVSet) est bloquée à Cfg_CVHiLim et Cfg_CVLoLim. Les bits d’état correspondants (Sts_CVHiClamped, Sts_CVLoClamped et Sts_CVClamped) sont définis si la CV est bloquée.
Limite de la vitesse de variation de CV
Si l’instruction PPID n’est pas configurée pour ignorer la limitation CV RoC en mode Manuel (Cfg_SkipCVManRoC = 0) et que le mode de boucle est Manuel et que PPID est configuré pour la limitation RoC (Cfg_CVRoCIncrLim > 0, Cfg_CVRoCDecrLim > 0) et que la valeur cible de CV est supérieure à CVOut_previous+Cfg_CVRoCIncrLim*Ts (Ts est le temps de scrutation PPID actuel), la CVOut est calculée selon la valeur CVOut = CVOut_previous + Cfg_CVRoCIncrLim*Ts. Si la valeur cible de CV est inférieure à CVOut_previous-Cfg_CVRoCDecrLim*Ts (Ts est le temps de scrutation PPID actuel), CVOut = CVOut_previous - Cfg_CVRoCDecrLim*Ts. Si la rampe est activée, les bits d’état sont définis (Sts_CVRampingUp/Sts_CVRampingDown = 1, Sts_CVRamping = 1). Les bits d’état sont effacés si CVOut atteint la cible. Si la rampe n’est pas active, la cible CV est copiée dans CVOut.
Sortie CV en pourcentage
CVOut, calculé en mode Auto/Cascade ou entré à partir de différentes sources en mode Manuel, est mis à l’échelle en pourcentage et devient disponible en tant que Val_CVOutPercent. Val_CVOutPercent = 0 si les limites de mise à l’échelle de CV ne sont pas valides.
Ce diagramme montre les principales étapes du traitement de CV.

Gestion des verrouillages
Les commandes de maintenance pour contourner ou vérifier les verrouillages contournables sont traitées. Le contournement de verrouillage est actif si cela est demandé (MCmd_Bypass = 1). La demande de contournement reste active (Sts_Bypass = 1) jusqu’à la réception d’une commande de maintenance pour vérifier les alarmes contournables (MCmd_Check = 1). Le contournement est actif (Sts_BypActive = 1) si cela est demandé (Sts_Bypass = 1) ou en mode Maintenance (Sts_Maint = 1) ou en Asservissement (Sts_Ovrd) si l’instruction est configurée pour contourner les verrouillages en mode Asservissement (Cfg_OvrdIntlk). Si un verrouillage n’est PAS OK (contournable ou non) et si une action est configurée sur le verrouillage, le dispositif de verrouillage PAS OK est mis sous tension.
Initialisation et mise sous tension
L’instruction doit être initialisée pour s’exécuter correctement. L’instruction est normalement initialisée automatiquement dans la première exécution de l’instruction (par exemple, après la mise sous tension). La réinitialisation peut être requise à tout moment en définissant Inp_InitializeReq = 1. Cet opérande est effacé automatiquement dans l’instruction. Pour obtenir une initialisation correcte, lorsque vous ajoutez l'instruction pendant que vous modifiez le code en ligne, assurez-vous que Inp_InitializeReq = 1 (valeur par défaut). Action réalisée lors de l’initialisation :
- la commande propriétaire est définie sur Aucun,
- la commande Asservissement est définie sur Aucun,
- Les commandes de maintenance permettant de contourner et de vérifier les verrouillages sont supprimées,
- Les commandes Opérateur, Programme et Externe sont supprimées,
- les défauts de mise hors tension verrouillés sont effacés,
- tous les horloges sont réinitialisés.
Cette section définit les actions PPID en mode de boucle, SP et CV en initialisation (mise sous tension).
Gestion du mode de boucle lors de la mise sous tension Normal :
- Le mode de boucle Normal est désactivé (Cfg_NormLM = 0) si le mode de boucle défini comme normal n’est pas valide (Cfg_NormLM <0 | > 3), ou si le mode de boucle normal est défini sur Cascade, mais que l’instruction n’autorise pas la configuration en Cascade (Cfg_HasCasc ≠ 1 &Cfg_NormLM = 3),
- le mode de boucle est défini sur Manuel si le mode de boucle pour la mise sous tension (Cfg_PwrUpLM) est Normal et le mode de boucle normal est Manuel ou le mode de boucle pour la mise sous tension en mode Manuel,
- le mode de boucle est défini sur Auto si le mode de boucle normal pour la mise sous tension est Normal et le mode de boucle normal est Auto pour le mode de boucle pour la mise sous tension en mode Auto,
- Le mode de boucle est défini sur Cascade si le mode de boucle normal pour la mise sous tension est Normal et le mode de boucle normal est Cascade pour le mode de boucle pour la mise sous tension en Cascade.
Gestion du SP en mode Cascade lors de la mise sous tension :
- Inp_CascSP = Cfg_SPPwrUp si le mode de boucle lors de la mise sous tension (Cfg_PwrUpLM) est explicitement fourni en tant que Manuel/Auto/Cascade/Normal et que le mode de boucle en mode Cascade n’est pas Rapport, ou si Val_Ratio = 0,
- Inp_CascSP = Cfg_SPPwrUp × Val_Ratio si le mode de boucle lors de la mise sous tension est explicitement fourni en tant que Manuel/Auto/Cascade/Normal et si le mode de boucle en mode Cascade est Rapport et Val_Ratio ≠ 0.
Gestion de SP lors de la mise sous tension. Toutes les entrées SP, valeurs SP d’intervalle et valeurs SP de sortie sont remplacées par la valeur SP configurée pour la mise sous tension :
- Cfg_SPPwrUp → PSet_SP, OSet_SP, XSet_SP, Inp_OvrdSP,
- Cfg_SPPwrUp → PSet_SPTarget, OSet_SPTarget, XSet_SPTarget, Inp_OvrdSPTarget,
- Cfg_SPPwrUp → Val_SPTarget, Val_SPSet, Val_SP.

Gestion de CV lors de la mise sous tension. Toutes les entrées CV, CV internes et valeurs CV de sortie sont remplacées par la valeur CV configurée pour la mise sous tension :
- Cfg_CVPwrUp → PSet_CV, OSet_CV, XSet_CV, Inp_OvrdCV, Inp_CVPrev, Val_CVSet, Val_CVOut.
La CV de mise sous tension, le blocage de CV et la limitation de la vitesse de variation de CV fonctionnent ensemble. Si la CV de mise sous tension est définie sous la limite minimale de blocage de CV, la CV commencera à partir de la valeur Cfg_CVPwrUp, puis augmentera progressivement jusqu’à la limite minimale de blocage de CV lors de la mise sous tension.

En mode Auto ou Cascade, la CV peut être initialisée par la CV de boucle interne définie dans Inp_CVTrack si Inp_InnerAvailable = 0 et Cfg_CVPwrupSel = 1. Si Cfg_CVPwrupSel = 0, Inp_InnerAvailable est ignorée lors de la première exécution et Cfg_CVPwrup est utilisée en tant que CV initial.
Si le mode de boucle n’était pas zéro pour la mise sous tension (Cfg_PwrUpLM) et que plusieurs modes de boucle ont été définis en interne, l’instruction s’assure qu’un seul mode de boucle à la fois est défini, en utilisant cet ordre de priorité : Manuel, puis Auto, puis Cascade. Si le mode de boucle de mise sous tension est égal à 0, le mode de boucle, CV et SP restent dans leur dernier état (du dernier arrêt). Une fois l’initialisation terminée, la demande d’initialisation est effacée et l’instruction est signalée comme initialisée (Sts_Initialized = 1).
Rapport d’erreur de configuration
Les paramètres sélectionnés avec préfixe Cfg_ et le type de données REAL sont vérifiés lors d’un contrôle de validité afin d’empêcher les actions fausses. Un bit d’erreur spécifique à un paramètre particulier est défini si la valeur n’est pas valide. Si un bit d’erreur est défini, l’erreur globale (Sts_Err) est signalée et une alarme d’échec retentit.

L’instruction PPID assure un nombre valide de décimales pour PV et l’affichage de CV dans le HMI. Cfg_xxDecPlcs = 2 si un nombre non valide est saisi. L’instruction PPID assure l’échec de l’action valide sur SP/PV/CV. Cfg_SPFailSPAction = 1, Cfg_PVFailPVAction = 1 et Cfg_CVFailCVAction = 1 pour tout nombre non valide saisi. L’instruction PPID assure une configuration de Maintien valide sur eKeepLM, CV, Rapport et SP. Cfg_eKeepxx = 0 (suit la source de commande) si une valeur incorrecte est saisie.
CV, SP, Rapport, Propriété du mode de boucle
Propriété de l’opérateur
Le CV est la propriété de l’opérateur si :
- la source de commande actuelle est Opérateur (Sts_Oper = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepCV = 0) ou
- la source de commande est Opérateur/Programme/Externe et la configuration conserve la CV pour Opérateur (Cfg_eKeepCV = 1),
- ou la source de commande est Maintenance (Sts_Maint = 1).
Le mode de boucle est attribué à l’opérateur si :
- Le propriétaire actuel est l’opérateur (Sts_Oper = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepLM = 0) ou
- le propriétaire est Opérateur/Programme/Externe et la configuration conserve le mode de boucle pour Opérateur (Cfg_eKeepLM = 1) ou
- le propriétaire est Maintenance (Sts_Maint = 1).
Ce rapport est la propriété de l’opérateur si :
- Le propriétaire actuel est l’opérateur (Sts_Oper = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepRatio = 0) ou
- le propriétaire est Opérateur/Programme/Externe et la configuration conserve le Rapport pour Opérateur (Cfg_eKeepRatio = 1) ou
- le propriétaire est Maintenance (Sts_Maint = 1).
Le SP est la propriété de l’opérateur si :
- Le propriétaire actuel est l’opérateur (Sts_Oper = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepSP = 0) ou
- le propriétaire est Opérateur, Programme/Externe et la configuration conserve le SP pour Opérateur (Cfg_eKeepSP = 1) ou
- le propriétaire est Maintenance (Sts_Maint = 1).
Propriété de Programme
Le CV est la propriété de Programme si :
- le propriétaire actuel est le programme (Sts_Oper = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepCV = 0) ou
- le propriétaire est Opérateur, Programme/Externe et la configuration conserve la CV pour le programme (Cfg_eKeepCV = 2).
Le mode de boucle est attribué au programme si :
- le propriétaire actuel est le programme (Sts_Prog = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepLM = 0) ou
- le propriétaire est Opérateur/Programme/Externe et la configuration conserve le mode de boucle pour Programme (Cfg_eKeepLM = 2).
Le rapport est attribué à Programme si :
- le propriétaire actuel est le programme (Sts_Prog = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepRatio = 0) ou
- le propriétaire est Opérateur/Programme/Externe et la configuration conserve le rapport pour le programme (Cfg_eKeepRatio = 2).
Le SP est la propriété de Programme si :
- le propriétaire actuel est le programme (Sts_Prog = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepSP = 0) ou
- le propriétaire est Opérateur/Programme/Externe et la configuration conserve le SP pour le programme (Cfg_eKeepSP = 2).
Propriété d’Externe
Le CV appartient à l’externe si :
- le propriétaire actuel est Externe (Sts_Ext = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepCV = 0) ou
- le propriétaire est Opérateur/Programme/Externe et la configuration conserve la CV pour Externe (Cfg_eKeepCV = 3).
Le mode de boucle est attribué à Externe si :
- le propriétaire actuel est Externe (Sts_Ext = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepLM = 0) ou
- le propriétaire est Opérateur/Programme/Externe et la configuration maintient le mode de boucle de l’externe (Cfg_eKeepLM=3).
Le rapport appartient à l’externe si :
- Le propriétaire actuel est externe (Sts_Ext=1) et la configuration doit suivre la source de commande (Cfg_eKeepRatio=0) ou
- le propriétaire est Opérateur/Programme/Externe et la configuration maintient le rapport de l’externe (Cfg_eKeepRatio=3).
Le SP appartient à l’externe si :
- le propriétaire actuel est le programme (Sts_Prog = 1) et la configuration est définie pour suivre la source de commande (Cfg_eKeepSP = 0) ou
- le propriétaire est Opérateur, Programme/Externe et la configuration maintient le SP de l’externe (Cfg_eKeepSP=3).
Les états du PPID
Le mauvais état du PV
La variable de procédé échoue en cas de limites de mise à l’échelle non valide de PV et la PV est signalée comme mauvaise au niveau de la source par le biais de l’entrée Inp_PVBad ou de l’index de qualité Inp_PVSrcQ. La PV ne peut pas être utilisée dans les calculs PID si la qualité de la source est mauvaise. La PV est également traitée comme un échec si elle est en direct, mais incertaine ou simplement désactivée et que le PPID est configuré pour traiter cette situation comme non acceptable (Cfg_PVFailTrigger=1 ou 2).

Le mauvais état du SP
Le point de consigne échoue si :
- Les limites de blocage du SP ne sont pas valides (Sts_ErrSPLim = 1) ou
- Les limites de la PV utilisé dans la mise à l’échelle ne sont pas valides (Sts_ErrPVEU=1, Max<=Min).
L’échec se produit parce que le SP est dérivé de la PV si le mode de boucle est le rapport, ou les limites de blocage du rapport ne sont pas valides lorsque le mode de boucle est le rapport (Sts_ErrRatioLim = 1 & Cfg_HasRatio = 1 & le mode de boucle est Cascade).

Le mauvais état du CV
La CV est mauvaise si :
- Inp_CVIOFault=1 ou
- les limites de blocage de la CV ne sont pas valides (Sts_ErrCVLim=1) ou
- les limites de mise à l’échelle de la CV ne sont pas valides (Sts_ErrCVEU=1) ou
- le retour portable est mauvais et le PPID est en mode Portable.

L’état de l’échec de boucle
L’échec de boucle (Sts_Fail) est défini si le SP, la PV ou la CV échoue et si la mise hors tension en cas d’échec est verrouillée. Si Sts_Fail est défini, la boucle ne peut pas fonctionner normalement.

L’état de la saturation d’intégrale
L’état élevé de la saturation d’intégrale (Sts_WindupHi) est défini si :
- Le SP sélectionné est bloqué à sa limite haute (Sts_SPHiClamped=1) ou
- La CV est bloquée à sa limite haute (Sts_CVHiClamped=1) si le PPID est configuré pour une action de contrôle inverse (Cfg_CtrlAction=0) ou
- ce denier est bloqué à sa limite basse (Sts_CVLoClamped=1) si le PPID est configuré pour une action de contrôle direct (Cfg_CtrlAction=1).

L’état bas de la saturation d’intégrale (Sts_WindupLo) est défini si :
- Le SP sélectionné est bloqué à sa limite basse (Sts_SPLoClamped=1) ou
- La CV est bloquée à sa limite basse (Sts_CVLoClamped=1) si le PPID est configuré pour une action de contrôle inverse (Cfg_CtrlAction=0) ou
- cette dernière est bloquée à sa limite haute (Sts_CVHiClamped=1) si le PPID est configuré pour une action de contrôle direct (Cfg_CtrlAction=1).

État actif
La CV d’état actif (Sts_Active) est défini si Val_CVOut est supérieur à Cfg_MaxInactiveCV. Le symbole graphique HMI, par exemple, vanne ouverte, est affiché pour Sts_Active=1 et le symbole graphique HMI inactif, par exemple, vanne fermée, est affiché quand Sts_Active=0.
L’état de non-prêt
L’instruction PPID n’est pas prête (Sts_NotRdy=1) dans les conditions suivantes :
- Le PPID est mis hors service (Sts_NrdyOoS=1) ou
- La CV de ce PPID est en cours d’initialisation (Sts_NrdyInit=1) ou
- Erreur de configuration du PPID (Sts_NRdyCfgErr=1) ou
- Verrouillage pas OK (Sts_NrdyIntlk=1) ou
- L’objet interne à ce PPID, généralement le PID de la boucle secondaire, n’est pas disponible (Inp_InnerAvailable=0) pour ce PPID ou
- Échec de la boucle (Sts_NrdyFail=1) en raison d’une valeur incorrecte ou d’un échec de communication de PV/SP/CV, ou d’une valeur de retour portable non valide.

États disponibles
L’instruction PPID est disponible (Sts_Available=1) pour d’autres objets lorsqu’il est en mode Programme, mais pas lors de la première scrutation, et est généralement prête pour le contrôle.
La boucle interne est disponible pour le contrôle en cascade (Sts_CascAvailable=1) en mode Cascade, et non dans la première scrutation, et généralement prête pour le contrôle.
La boucle interne est disponible pour le contrôle externe (Sts_ExtAvailable=1) en mode Externe, non lors de la première scrutation, et généralement prête pour le contrôle.
Ce diagramme présente les conditions requises pour que l’instruction soit généralement prête pour le contrôle.

Configuration de chaînes pour HMI
Configurez les chaînes pour les façades HMI, comme indiqué dans
FactoryTalk View
, et pour la boîte de dialogue de configuration Logix Designer
. Les chaînes sont définies sur des propriétés étendues d'éléments de balise. Configurez les chaînes uniquement dans l’application Logix Designer
.- Description
- Étiquette du symbole graphique
- Bibliothèque d'affichage pour l'appel de façade HMI
- Nom de l'instruction
- Nom de zone
- Lien URL
- Chemin d’accès à un objet avec plus d’informations
- Chemin d’accès à un objet fournissant le SP en cascade
- Chemin d’accès à un objet fournissant la PV
- Chemin d’accès à un objet consommateur CV
- Unités de procédé PV/SP
- Unités de procédé CV
Source de commande
L’instruction utilise ces sources de commande. Les sources de commande sont classées par ordre de priorité, de la plus élevée à la plus basse, dans ce tableau.
Source de commande | Description |
|---|---|
Portable (Hand) | La logique matérielle ou toute autre logique externe à l’instruction possède le contrôle du dispositif. Cette instruction suit l’état du dispositif pour un retour sans à-coup à l’une des autres sources de commande. Dans le mode Portable, l'algorithme PID ne calcule pas la modification de CV. Val_CVOut = Inp_HandFdbk (Inp_Tieback), quel que soit le mode de contrôle. Le mode Portable est généralement utilisé pour indiquer que le contrôle de l’élément de contrôle final a été pris par une station auto/portable de terrain. Définissez Inp_Hand pour demander le mode Portable. En général, cette valeur se lit en tant qu’entrée numérique provenant d’une station Portable/Auto. (Source de commande de priorité la plus élevée) |
Hors service | L’instruction est désactivée et n’a pas de propriétaire. |
Maintenance | La maintenance possède le contrôle du dispositif et remplace les contrôles Opérateur, Programme, Externe et Asservissement. Les commandes et paramètres d’opérateur sont acceptées pour HMI. Les verrouillages contournables sont contournés et la vérification du délai d’expiration du dispositif n’est pas traitée. |
Asservissement | La logique de priorité possède le contrôle du dispositif et remplace les contrôles Opérateur, Programme et Externe. L'entrée Asservissement (Inp_OvrdCmd) est acceptée. Si c’est le cas, les verrouillages contournables sont contournés. |
Externe | La logique externe possède le contrôle du dispositif. Les commandes Externe (XCmd_) sont acceptées. |
Programme verrouillé | La logique du programme contrôle le dispositif. Les commandes Programme (PCmd_) sont acceptées. L’opérateur ne peut pas prendre depuis Programme. Asservissement ne peut pas prendre depuis Programme, sauf Cfg_OvrdOverLock = 1. |
Programme | La logique du programme contrôle le dispositif. Les commandes Programme (PCmd_) sont acceptées. |
Opérateur verrouillé | Opérateur contrôle le dispositif. Les commandes Opérateur (OCmd_) pour HMI sont acceptées. Programme ne peut pas prendre depuis Opérateur. Asservissement ne peut pas prendre depuis Opérateur sauf Cfg_OvrdOverLock = 1. |
Opérateur | Opérateur contrôle le dispositif. Les commandes Opérateur (OCmd_) pour HMI sont acceptées. (Source de commande de priorité la plus basse) |
L’instruction active ou désactive les opérations suivantes :
- Maintenance hors-service existe
- Maintenance existe
- Externe existe
- Programme (déverrouillé) existe
- Programme verrouillé existe
- Opérateur (déverrouillé) existe
- Opérateur verrouillé existe
- PCmd_Lock utilisé comme niveau (1 = Verrouiller, 0 = Déverrouiller)
- XCmd_Acq est utilisé comme niveau (1 = Acquérir externe, 0 = Libérer externe)
L’instruction vérifie si les configurations de contrôle ne sont pas valides et force la configuration valide la plus proche.
Le modèle de contrôle principal définit la source des commandes et des paramètres acceptées par la fonction de réception. Le modèle de contrôle principal détermine si la source est :
- Une entité de programmation qui réside entièrement dans l’environnement de traitement ou
- Une interface externe qui émet des commandes et des paramètres externes et de manière asynchrone avec l’environnement de traitement.
Le verrouillage d’une source de contrôle empêche l’autre source de contrôle d’acquérir des privilèges.
Modèle de source de commande principale
Le modèle de source de commande principal se compose de ces sources de commande :
- Oper
- OperLocked
- Prog
- ProgLocked
Le modèle de contrôle est configuré par défaut sur cette configuration. D’autres sources de contrôle peuvent être présentes dans le modèle, mais agissent comme des sources de contrôle d’asservissement, agissant indépendamment de la machine d’état de base de la commande Opérateur/Programme.
Activation des sources de commande dans la configuration
L’utilisateur peut activer ou désactiver les sources de contrôle individuelles. La configuration par défaut utilise l’intégralité du modèle de base ; lors de la mise sous tension de l’environnement de traitement, la source de contrôle sera désignée comme valeur par défaut. Certaines combinaisons de sources de contrôle activées sont non valides, car elles sont inutiles ou peuvent créer des modifications imprévues.
Propriété par défaut et priorité
La configuration permet à l’utilisateur de spécifier si Opérateur ou Programme sera la valeur par défaut de la mise sous tension et spécifie si les commandes Opérateur ou Programme seront exécutées simultanément.
Réinitialisation automatique des commandes
Toutes les commandes sont traitées comme des commandes verrouillées par impulsion. Cela signifie que toutes les commandes sont automatiquement mises à zéro lorsque l’instruction les exécute et les traite.
Modification des états de destination
Sous certaines configurations, la source de commande de destination pour certaines commandes peut changer. Cela correspond au but de la commande. Par exemple, si Prog est désactivé, la commande OCmd_Prog est transférée vers l'état ProgLocked au lieu de l'état Prog. Cela permet de maintenir l’objectif de la commande OCmd_Prog : l’entité opérateur souhaite placer la fonction dans le contrôle du programme. Si la commande avait été supprimée, il n’y aurait eu aucun moyen d’y parvenir. Cela s’effectue uniquement dans les configurations où cela ne provoque aucun conflit ou aucune condition de concurrence, mais où cela préserve autant de fonctionnalités utilisateur que possible.
Sources de commande de priorité élevée
Ces sources de commande de priorité élevée fonctionnent indépendamment dans le modèle : Externe, Asservissement, Maintenance, Hors service, En service et Portable.
Traitement de la source de commande et arbitrage de la propriété
Les commandes de maintenance et d’opérateur (MCmd_OoS, MCmd_IS, MCmd_Acq, MCmd_Rel, OCmd_Oper, OCmd_Prog, Ocmd_Lock, OCmd_Unlock, OCmd_Normal) sont transmises à l’instruction PCmdSrc contenue.
Les bits maintenance et prêt (MRdy_OoS, MRdy_IS, MRdy_Acq, MRdy_Rel, ORdy_Oper, ORdy_Prog, ORdy_Lock, ORdy_Unlock, ORdy_Normal) sont copiés à partir de l’instruction PCmdSrc contenue en réponse.
L’instruction définit les propriétés (Val_Owner) selon l’ordre dans lequel les requêtes sont reçues. Si le requérant fournit un ID propriétaire non nul (PSet_Owner) et que le propriétaire actuel est Aucun (Val_Owner = 0), l’instruction attribue la propriété à l’ID faisant l’objet de la demande.
Surveillance de l’instruction PPID
Utilise la façade opérateur à partir de la bibliothèque PlantPAx d'objets de procédé pour la surveillance.
Affecte les indicateurs d'état mathématique
Non.
Défauts majeurs/mineurs
Aucun spécifique à cette instruction. Reportez-vous à Indexer via des tableaux pour consulter les défauts d'indexation par tableau.
Exécution
L’algorithme PID n’est scruté qu’au taux d’exécution configuré Cfg_ExecTime. La configuration de l’instruction pour une période d’exécution = 0,0 (par défaut) ou pour une période plus courte que le temps de scrutation de l’instruction n’a aucun effet et l’algorithme PID est exécuté à chaque scrutation. Pour vérifier la période d’exécution réelle, Val_ExecTime.
Diagramme à relais
Condition/état | Action entreprise |
|---|---|
Préscrutation | La condition de sortie d'échelon est définie sur faux. Sts_eSrc est défini sur 0. Sts_bSrc est défini sur 0. |
Première exécution de l'instruction | Toutes les commandes automatiquement effacées à chaque exécution sont effacées et ignorées. La sélection Programme/Opérateur est définie en fonction de la configuration (Cfg_ProgPwrUp). La sélection de verrouillage de Programme ou d'Opérateur est définie sur déverrouillée. Le mode de boucle est défini en fonction de la configuration (Cfg_PwrUpLM). La valeur initiale pf SP et CV sont définis selon Cfg_SPPwrUp et selon Cfg_CVPwrUp et le mode de boucle sélectionné. Si Cfg_PwrUpLM = 0 (aucun changement), les valeurs initiales SP et CV sont égales aux valeurs de la dernière scrutation (par exemple, avant la mise hors tension). PSet_Owner et Sts_Owner sont définis sur 0. |
La condition d'entrée d'échelon est égale à faux | L'instruction est mise hors service si Inp_Hand=0. la sortie est désactivée. Toutes les alarmes sont effacées. Le traitement de la sélection de la source de commande s’effectue normalement, sauf que tous les bits d’état de propriété (Sts_Maint, Sts_Ovrd, Sts_Ext, Sts_Prog et Sts_Oper) sont remis à zéro. Lorsque la condition d’entrée d’échelon devient vraie, l’instruction prend en compte les commandes reçues et définit la source de commande active en conséquence. |
La condition d'entrée d'échelon est égale à vrai | Définir la condition de sortie d'échelon sur la condition d'entrée d'échelon. L'instruction s'exécute. |
Post-scrutation | La condition de sortie d'échelon est définie sur faux. |
Diagramme de bloc fonctionnel
Condition/état | Action entreprise |
|---|---|
Préscrutation | Reportez-vous à Pré-scrutation dans le tableau Diagramme à relais. |
Première exécution de l'instruction | Voir la première exécution de l’instruction dans le tableau Diagramme à relais. |
Première scrutation de l'instruction | Reportez-vous à la section Première exécution de l'instruction dans le tableau Diagramme de bloc fonctionnel. |
EnableIn est faux | Reportez-vous à La Condition d'entrée d'échelon est fausse sur le tableau Diagramme à relais. |
EnableIn est vrai | Reportez-vous à la condition d’entrée d’échelon est vraie dans le tableau Diagramme à relais. |
Post-scrutation | Les bits EnableIn et EnableOut sont définis sur faux. |
Texte structuré
Dans Texte Structuré, EnableIn est toujours vrai lors d'une scrutation normale. L'instruction s'exécute lorsqu'elle se trouve dans le chemin d'accès de commande activé par la logique.
Condition/état | Action entreprise |
|---|---|
Préscrutation | Reportez-vous à Pré-scrutation dans le tableau Diagramme à relais. |
Première exécution de l'instruction | Voir la première exécution de l’instruction dans le tableau Diagramme à relais. |
EnableIn est vrai | Reportez-vous à la condition d’entrée d’échelon est vraie dans le tableau Diagramme à relais. |
Post-scrutation | Les bits EnableIn et EnableOut sont définis sur faux. |
Exemples
Exemple 1 : Contrôle de retour PID
Cet exemple montre comment raccorder des instructions d’entrée et de sortie analogiques avec une instruction PPID.
Le contrôle du niveau des réservoirs du système de pression est considéré comme un exemple de câblage d’instructions d’entrée et de sortie analogiques avec une instruction PPID. Considérez une section du système de distribution d’eau avec une station de pompage d’eau d’un réservoir à collecteur vers une pression du système de maintien du réservoir aux stations de distribution. En raison de la variation de la demande, le niveau d’eau fluctue et la pression du système varie. L’instruction PPID aide à stabiliser la pression en mesurant et en traitant le niveau d’eau comme une variable de procédé. Le PPID calcule la vitesse de référence d’un moteur entraînant une pompe afin de compenser les variations de demande. La vitesse réelle du moteur est mesurée et renvoyée à l’automate. Ce retour active le schéma de contrôle pour lire la vitesse réelle du moteur lorsque le personnel de service prend le contrôle et manipule la pompe directement à partir du panneau de configuration (le moteur est à portée de main). Les composants de la boucle PID doivent suivre la vitesse réelle et être prêts à prendre le contrôle sans à-coups.
Le module d’entrée analogique fournit le niveau en unités brutes et des signaux de défaut traités par l’instruction PAI (LI_30). Le niveau en unités de procédé (LI_30.Val), la qualité du signal de niveau (LI_30.SrcQ) et la notification d’alarme (LI_30.Sts_eNotifyAll) sont câblés aux entrées correspondantes d’un PPID (LIC_31.Inp_PV, LIC_31.Inp_PVSrcQ, LIC_31.Inp_PVNotify). Le PPID est configuré pour que la réponse correcte se produise lorsque le signal de niveau n’est pas fiable et ne doit pas entrer la formule PID pour le calcul de CV. Définissez Cfg_PVFailTrigger pour classer correctement la qualité de la source PV. Utilisez Cfg_PVFailSPAction, Cfg_PVFailCVAction et Cfg_PVFailLMAction pour spécifier la valeur du point de consigne, la valeur de la variable de contrôle et le mode de boucle utilisé par l’instruction PPID si la qualité de la source PV est signalée comme mauvaise.
L’instruction PPID devrait recevoir un signal indiquant si l’objet en aval piloté par le PPID (l’instruction de sortie analogique SZ_31 piloter un moteur) est actif et répond correctement à l’instruction CV de l’instruction PPID. En d’autres termes, l’instruction PPID devrait recevoir un signal si la boucle de contrôle n’est pas ouverte.
Si la sortie CV de SZ_31 se sature (SZ_31.Sts_WindupHi=1 ou SZ_31.Sts_WindupLo=1), l’instruction PPID est hors de contrôle. Pour éviter la saturation d’intégrale, SZ_31.Sts_WindupHi et SZ_31.Sts_WindupLo sont câblés à LIC_31.Inp_WindupHi et LIC_31.Inp_WindupLo.
Si le moteur de pompe, le dispositif entraîné par SZ_31, est en échec (M31_Fail=1), la boucle est également ouverte et les SZ_31 et LIC_31 doivent suivre l’état actuel du dispositif pour éviter tout à-coup lors de la reprise de contrôle. La vitesse réelle du moteur est mesurée, le signal brut est mis à l’échelle en unités de procédé par l’instruction d’entrée analogique SI_31, et la valeur mise à l’échelle de rpm (SI_31.Val) est câblée comme un signal de retour vers SZ_31.Inp_PosFdbk.
Si le personnel de service a le moteur de pompe en main (M31_Hand=1), la vitesse réelle est fournie séparément dans l’étiquette de M31_Fdbk, câblée à SZ_31.Inp_HandFdbk.
L’état du dispositif est collecté dans l’instruction de sortie analogique SZ_31 et est communiqué en amont avec l’instruction PPID. L’instruction PPID devrait être informée que la boucle de contrôle est ouverte quelque part en aval et que, de ce fait, SZ_31 n’est pas disponible pour LIC_31. Raccorder SZ_31.Sts_Available à LIC_31.Inp_InnerAvailable afin de transmettre les informations PPID. La référence de vitesse réelle doit être fournie au PPID à des fins de suivi, lorsque la boucle de contrôle s’ouvre. Fil SZ_31.Val_CVOut à LIC_31.Inp_CVTrack. D’autres problèmes en aval tels que les problèmes de communication ou de dispositif doivent également être renvoyés au PPID pour que l’instruction réponde avec une action configurée. Fusionner SZ_31.Sts_IOFault avec SZ_31.Sts_DeviceFault, raccorder le résultat sur LIC_31.Inp_CVIOFault et utiliser LIC_31.Cfg_CVFailSPAction et LIC_31.Cfg_CVFailCVAction pour configurer l’instruction PPID en vue de l’action de suivi.
Pour terminer, mettre à jour la notification d’alarme de l’instruction PPID et propager la notification de sévérité la plus élevée depuis SZ_31 en amont. Raccorder SZ_31.Sts_eNotifyAll à LIC_31.Inp_CVNotify.

L’exemple s’affiche dans les trois éditeurs de programmation.
Diagramme à relais



Diagramme de bloc fonctionnel

Texte structuré
LI_30.Inp_PVData := LI_30_raw ;
LI_30.Inp_ModFault := LevelAnalogModuleFault;
LI_30.Inp_OutOfSpec := LevelOutOfSpec;
PAI(LI_30,0);
LIC_31.Inp_PV := LI_30.Val ;
LIC_31.Inp_CVTrack := SZ_31.Val_CVOut ;
LIC_31.Inp_PVSrcQ := LIC_31.Inp_PVSrcQ ;
LIC_31.Inp_PVNotify := LI_30.Sts_eNotifyAll ;
LIC_31.Inp_CVNotify := SZ_31.Sts_eNotifyAll ;
LIC_31.PSet_SP := LIC_31_SP ;
LIC_31.Inp_WindupHi := SZ_31.Sts_WindupHi ;
LIC_31.Inp_WindupLo := SZ_31.Sts_WindupLo;
LIC_31.Inp_CVIOFault := SZ_31.Sts_IOFault OR SZ_31.Sts_DeviceFault;
PPID(LIC_31,0);
SI_31.Inp_PVData := SI_31_raw ;
PAI(SI_31,0);
SZ_31.PSet_CV := LIC_31.Val_CVOut ;
SZ_31.Inp_PosFdbk : = SI_31. Val ;
SZ_31.Inp_HandFdbk := M31_Fdbk ;
SZ_31.Inp_DeviceFault := M31_Fail ;
SZ_31.Inp_Hand := M31_Hand ;
PAO(SZ_31,0);
SZ_31_raw := SZ_31.Out_CVData ;
Exemple 2 : Contrôle en cascade
Le contrôle en cascade est utile lorsque des perturbations provoquées par l’environnement externe se produisent trop souvent sur la variable contrôlée, ce qui provoque ensuite des perturbations sur la variable de procédé que vous essayez de contrôler. Par exemple, essayez de contrôler la température du liquide dans un réservoir en faisant varier la quantité de vapeur injectée dans une enveloppe chauffante autour du réservoir. Si le débit de vapeur chute soudainement à cause d’un processus en amont, la température du liquide dans le réservoir peut chuter et l’instruction PPID ouvre alors la vanne de vapeur pour compenser la chute de température.

Dans cet exemple, une boucle en cascade fournit un meilleur contrôle en ouvrant la vanne de vapeur lorsque le débit de vapeur chute avant la baisse de la température du liquide dans le réservoir. Pour mettre en œuvre une boucle en cascade, utilisez une instruction PPID pour contrôler l’ouverture de la vanne de vapeur en fonction d’un signal de variable de procédé provenant d’un transmetteur de débit de vapeur. Cela correspond à la boucle interne de la paire en cascade. Une deuxième instruction PPID (appelée boucle externe ou primaire) utilise la température du liquide comme variable de procédé et envoie sa sortie CV au point de consigne de la boucle externe. De cette manière, la boucle de température externe demande une certaine quantité de débit de vapeur de la boucle de débit de vapeur interne. Le rôle de la boucle de débit de vapeur consiste alors à fournir la quantité de vapeur demandée par la boucle de température afin de maintenir une température de liquide constante.
Pour que deux boucles en cascade fonctionnent correctement, le temps de réponse du processus de la boucle interne doit être plus court que celui de la boucle primaire. La raison à cela est que le processus de la boucle interne doit pouvoir compenser toute perturbation éventuelle avant que ces perturbations n’affectent le processus de la boucle externe. Dans cet exemple, si le débit de vapeur chute, il doit pouvoir à nouveau augmenter par l’effet de l’automate interne avant que la température du liquide ne s’en trouve affectée.
Pour configurer les instructions d’une paire de PPID en cascade, définissez le paramètre d’entrée Cfg_HasCasc dans la boucle interne. Cela permet de passer celle-ci en mode Cascade/Rapport. Ensuite, raccorder le Val_CVOut de la boucle externe au paramètre Inp_CascSP de la boucle interne. La valeur Inp_CascSP est utilisée comme SP de la boucle interne lorsque celle-ci est en mode Cascade/Rapport. La plage de l’unité de procédé du Val_CVOut sur la boucle externe doit correspondre à celle de l’unité de procédé de PV de la boucle interne. Cela permet à la boucle externe de mettre à l’échelle sa valeur de 0- 100 % de CV dans les unités de procédé correspondantes utilisées pour le point de consigne de la boucle interne.
L’instruction PPID possède d’autres fonctionnalités pour prendre en charge plus efficacement le contrôle en cascade. Raccordez la sortie Sts_CascAvailable de la boucle interne PPID à l’entrée Inp_InnerAvailable de la boucle externe PPID, et raccordez la sortie SP de la boucle interne à l’entrée Inp_CVTrack de la boucle externe. Ceci définit la valeur du Val_CVOut de la boucle externe pour suivre le SP de la boucle interne lorsque cette dernière quitte le mode Cascade/Rapport. Cela permet un transfert sans à-coup lorsque vous placez à nouveau la boucle interne en mode Cascade/Rapport. Raccordez également les sorties Sts_WindupHi et Sts_WindupLo de la boucle interne sur les entrées Inp_WindupHi et Inp_WindupLo de la boucle externe. Cela permet d’arrêter l’augmentation ou la diminution de la boule interne, tel qu’approprié, par la boucle interne de sa valeur du CVEU si la boucle interne atteint une limite de SP ou de CV, et élimine toute saturation d’intégrale de la boucle externe dans ces conditions.
L’exemple est présenté dans FBD dans deux versions, avec câblage minimal et câblage étendu. Le câblage étendu indique la transmission de la notification d’alarme entre le PID externe et interne et rend les broches d’entrée de qualité du signal visible pour une utilisation immédiate dans l’application.
Diagramme de bloc fonctionnel


Exemple 3 : Contrôle du rapport
Le contrôle du rapport est généralement utilisé pour ajouter un fluide à un autre dans une proportion fixe. Par exemple, si vous voulez ajouter deux réactifs (A et B) à un réservoir selon un rapport constant, et que le débit du réactif A risque de changer avec le temps en raison de perturbations des procédés en amont, vous pouvez utiliser un automate de rapport pour ajuster automatiquement le débit d’ajout du réactif B. Dans cet exemple, le réactif A est souvent appelé débit non contrôlé ou générique, car il n’est pas contrôlé par l’instruction PPID. Le débit du réactif B est, quant à lui, appelé débit « contrôlé ».

Pour contrôler le rapport avec une instruction PPID, définissez les paramètres d’entrée Cfg_HasCasc et Cfg_HasRatio. Raccordez le débit non contrôlé au paramètre d’entrée Inp_CascSP. En mode Cascade/Rapport, le débit non contrôlé est multiplié soit par OSet_Ratio (dans le cas du contrôle Opérateur), soit par PSet_Ratio (dans le cas du contrôle Programme), et la valeur résultante est utilisée par l’instruction PPID comme point de consigne.
L’exemple est présenté dans FBD.
Diagramme de bloc fonctionnel

Exemple 4 : Contrôle d’anticipation
Le contrôle d’anticipation est une stratégie de rejet des perturbations permettant de gérer le changement de charge. Plutôt que de compter sur le retour pour apporter des modifications correctives à un processus seulement après quelques modifications de charge ayant entraîné l’écart entre la variable de procédé et le point de consigne, les schémas de contrôle avec anticipation surveillent les charges pertinentes et utilisent ces informations pour effectuer des modifications de stabilisation de l’élément de contrôle final de façon préventive de sorte que le processus ne soit pas affecté.
Envisagez un système de contrôle manipulant le débit de vapeur vers l’échangeur de chaleur pour maintenir la température de déchargement de l’huile à une valeur de consigne constante. La température de sortie subit des déviations temporaires par rapport au point de consigne en cas de changement des conditions de charge. Le système de contrôle du retour peut finir par ramener la température de l’huile en cours à son point de consigne, mais il ne peut pas commencer une action corrective tant qu’une charge n’a pas entraîné la température de l’huile à l’arrêt du point de consigne. Pour améliorer le contrôle, assemblez l’action d’anticipation et l’action de retour dans la conception. L’action d’anticipation permet au système de contrôle de prendre une action corrective en réponse aux modifications de charge avant que la variable de procédé ne soit affectée.
Dans cet exemple, la charge dominante dans le système est le débit d’huile, provoqué par les modifications de la demande au niveau du réservoir où l’huile est utilisée en tant que carburant. L’adaptation de ce système de contrôle pour inclure l’anticipation nécessite d’installer un transmetteur de débit d’huile et une fonction de gain/polarisation fournissant une action d’anticipation à l’automate PID qui maintient la température. Une fois l’action de contrôle d’anticipation activée, le débit de vapeur change immédiatement avec le débit d’huile, compensant de manière préventive l’augmentation ou la diminution de la demande de chauffage de l’huile. La constante de temps du processus, par rapport aux changements du débit de vapeur, est supérieure à la constante de temps du processus par rapport aux changements du débit d’huile.
Le débit d’huile est une variable générique. Le système de contrôle d’anticipation ne peut manipuler que la position de la vanne de vapeur en réponse au débit d’huile. La meilleure méthode pour l’aider à contrôler est d’accélérer la constante de temps de la variable de débit de vapeur, que le système peut influencer. La solution consiste à raccorder la sortie de la fonction d’avance spécifiée par l’utilisateur FY_32 à Inp_FF de PPID.

À présent, lorsque le débit d’huile de ce réducteur de chauffage augmente soudainement, la fonction d’avance ajoute une surtension au signal d’anticipation, ouvre rapidement la vanne de vapeur et envoie une surtension de vapeur à l’échangeur pour aider à surmonter la réponse immédiate de l’huile aux changements de débit de vapeur. L’action d’anticipation ne sera pas parfaite avec cette fonction d’avance ajoutée, mais elle sera substantiellement meilleure si aucune compensation dynamique n’a été ajoutée au signal d’anticipation.
L’exemple est présenté dans FBD.
Diagramme de bloc fonctionnel

Exemple 5 : Contrôle de plage divisée
Le contrôle de plage divisée permet d’utiliser une seule variable de contrôle PID pour entraîner plusieurs éléments de contrôle final. Un exemple d’application est illustré dans la figure ci-dessous.

Lorsque CV=0 (Val_CVOut=0), les deux soupapes sont fermées. Lorsque la CV est positive, la soupape de pressurisation est ouverte et la soupape d’évent est maintenue fermée. Si l’instruction PPID est configurée avec les limites de mise à l’échelle de CV Cfg_CVEUMax=100 et Cfg_CVEUMin=-100, la soupape de pressurisation est entièrement ouverte lorsque CV=100. Lorsque la CV est négative, la soupape d’évent est ouverte et la soupape de pressurisation est fermée. Lorsque CV=-100, la soupape d’évent est entièrement ouverte. Le fractionnement de CV s’effectue avec l’instruction Distribution ramifiée analogique de procédé (Process Analog Fanout, PFO).
Configurez PPID avec Cfg_CVEUMin=-100, Cfg_CVEUMax=100 et PFO avec Cfg_CVEUMin=-100, Cfg_CVEUMax=100, Cfg_CV1Ratio=1, Cfg_CV1Offset=0, Cfg_CV1HiLim=100, Cfg_CV1LoLim=0, Cfg_CV2Ratio=-1, Cfg_CV2Offset=0, Cfg_CV2HiLim=100, Cfg_CV2LoLim=0.
L’instruction PPID doit recevoir un message lui indiquant si son objet en aval peut être contrôlé ou non. Si l’objet en aval n’est pas prêt pour l’instruction PPID, cette instruction doit suivre ce que le bloc en aval définit pour la situation. Reliez le refus de la demande d’initialisation (Out_CVInitializeReq) reçu par l’instruction PFO de son objet en aval jusqu’au paramètre Inp_InnerAvailable de l’instruction PPID. En outre, reliez le paramètre Out_CVInitializationVal de l’instruction PFO au paramètre Inp_CVTrack de l’instruction PPID. L’instruction PPID suit cette valeur lorsque le bloc en aval n’est pas prêt pour le contrôle PPID. L’instruction PPID repasse en contrôle sans à-coups si l’objet en aval redevient disponible.
L’exemple est présenté dans FBD.
Diagramme de bloc fonctionnel

Exemple 6 : Contrôle de sélection d’asservissement
Examinez la station de pompage d’oléoduc dans la figure ci-dessous. Dans cet exemple, le système mesure la pression d’aspiration (41) et décharge la pression (73) et le courant du moteur (60). Pour contrôler la pression de refoulement, utilisez le variateur à vitesse variable de la pompe. La difficulté réside dans le fait qu’une diminution de la pression d’aspiration entraîne la cavitation de la pompe. Si le courant du moteur devient trop élevé, le variateur se met en marche et un refoulement de pression est envoyé le long de la ligne. Les deux contraintes agissent dans le même sens. Si la pression d’aspiration diminue, la pompe doit ralentir jusqu’à ce que la pression se rétablisse. Si le courant du moteur devient élevé, le ralentissement de la pompe réduit la puissance et donc le courant du moteur.

La boucle primaire est la pression de refoulement de la station. La pression d’aspiration et le courant du moteur sont des boucles d’asservissement. La sélection basse saisit la CV la plus faible à envoyer à la référence de la vitesse du variateur. La pression d’aspiration et les points de consigne des boucles de courant du moteur sont définis sur le seuil de contrainte (là où commence l’action). À l’approche d’une contrainte, l’erreur de cette boucle devient petite, sa sortie retombe et elle est sélectionnée. La CV sélectionnée est renvoyée vers les trois boucles. Le schéma de contrôle tire parti de l’utilisation de Inp_CVTrack pour suivre la CV finale.
Réglage recommandé du paramètre de suivi :
- Gains dépendants (Cfg_Dependent = 1). Définissez Cfg_CVTrackGain = Cfg_IGain.
- Gains indépendants (Cfg_Dependent = 0). Définissez Cfg_CVTrackGain = Cfg_IGain/Cfg_PGain.
Ce paramètre entraîne une différence d’état stationnaire entre la CV sélectionnée (active) et la CV non sélectionnée (de suivi) égale à Cfg_PGain x Erreur qui conserve une marge de manœuvre correcte pour que l’automate (Controller) sélectionné puisse contrôler sans passer inutilement par un autre automate.
L’exemple est présenté dans FBD.
Diagramme de bloc fonctionnel

Exemple 7 : Planification du gain PID
Examinez la station de pompage d’oléoduc dans la figure ci-dessous. Dans cet exemple, le système mesure la pression d’aspiration (41) et décharge la pression (73) et le courant du moteur (60). Pour contrôler la pression de refoulement, utilisez le variateur à vitesse variable de la pompe. La difficulté réside dans le fait qu’une diminution de la pression d’aspiration entraîne la cavitation de la pompe. Si le courant du moteur devient trop élevé, le variateur se met en marche et un refoulement de pression est envoyé le long de la ligne. Les deux contraintes agissent dans le même sens. Si la pression d’aspiration diminue, la pompe doit ralentir jusqu’à ce que la pression se rétablisse. Si le courant du moteur devient élevé, le ralentissement de la pompe réduit la puissance et donc le courant du moteur.
Dans cet exemple, la technique de planification du gain est utilisée pour compenser les modifications apportées à la dynamique de procédé à la volée. L’automate (Controller) de température standard TIC_41 lit la température de la sortie TT_41 (PV) et calcule la référence pour la boucle de contrôle du flux de vapeur (CV) afin de maintenir la température du produit à la valeur du point de consigne. L’instruction PPID est configurée avec des gains dépendants (TIC_41.Cfg_Dependent=1) et le gain total TIC_41.Cfg_PGain change en fonction du flux du produit FT_40. La formule du calcul PGain est spécifique à l’application. Dans cet exemple, PGain est calculé dans l’instruction complémentaire PIDGainScheduler en tant que fonction linéaire du flux de produit avec un décalage.

L’exemple est présenté dans FBD.
Diagramme de bloc fonctionnel

Fournir une réponse