La méthode ATVPID

La méthode ATVPID consiste à enchaîner la méthode ATV, puis d’appliquer le PID ainsi calé puis de passer à l’ouvrage suivant et de faire la même chose ainsi de suite sur tous les ouvrages choisis pour cette méthode ATVPID (si on a donc plusieurs U).

Pour bien comprendre cette méthode il est donc conseillé de lire la documentation de la méthode ATV, ainsi que du PID. Un article détaille ces procédures : https://hal.archives-ouvertes.fr/hal-00450874/document.

editregv5_atvpid

Pour la méthode ATVPID on lit 8 paramètres au format (7(F8.2,1X),F8.2):

* Paramètres spécifiques
*         R     METH    CYCLE     UouZ    CHOIX  AntiWup       MG       MP
PS=    0.20     8.00     3.00     1.00     2.00     1.00    10.00    61.00

Comme on peut le comprendre à la lecture, ci-dessus, des paramètres à fournir, le relais \(R\) est, par défaut, le même pour toutes les variables de contrôle U. Cela est restrictif car il y a de nombreux cas où l’on souhaite avoir des valeurs différentes, par exemple pour caler automatiquement en cascade des contrôleurs en débit par-ci et en ouverture par-là, ou des contrôleurs par l’amont à certains ouvrages et par l’aval à d’autres. Depuis la version 4.29g cela est possible en créant un fichier ATVPID.TXT dans le sous répertoire des données en cours. Ce fichier doit a priori contenir autant de lignes que de variables U, chaque ligne indiquant la valeur souhaitée du relai de la variable U. Ces lignes correspondent aux U dans le même ordre qu’indiqué dans les variables de contrôle. Si des lignes sont manquantes ou ne correspondent pas à une valeur réelle, alors la valeur par défaut provenant du paramètre \(R\) ci-dessus sera utilisée.

Ce fichier permet également d’ajouter éventuellement des temporisations, c’est à dire un temps (en seconde) à attendre avant le déclenchement d’ATV sur le U suivant (tout cela bien entendu dans le cas où il y a plusieurs U).

Exemple de fichier ATVPID.TXT :

*
*
*
*
0.5
3600.
3600.
3600.
3600.
3600.

Les valeurs du relais pour U(1) à U(4) seront celles provenant des paramètres ci-dessus \(R=0.2\) car la ligne contient un caractère “*” qui n’est donc pas une valeur réelle acceptable. Le relais de la cinquième variable U(5) sera 0.5.

Des temporisation de 3600s = 1h sont ajoutés, c’est à dire que le module ATVPID attendra 1h avant de lancer ATV sur la variable U suivante.

Lors de l’exécution du calcul en régime transitoire avec ce module, les résultats des cycles obtenus et des coefficients correspondants des PID sont affichés à l’écran dans la fenêtre de message habituelle (cf ci-dessous), et également sur un fichier ATVPIDCOEF.TXT. L’exemple fournit avec SIC (ex2) donne par exemple :

1.70 | 3598.78 | 0.00 | 0.00 | 0.00 | 2400.00 | 4.59 | 1200.00 | 19.78 |
2.42 | 3598.78 | 0.00 | 0.00 | 0.00 | 2400.00 | 6.54 | 1200.00 | 31.30 |
3.85 | 3598.78 | 0.00 | 0.00 | 0.00 | 2400.00 | 10.41 | 1200.00 | 35.26 |
3.01 | 3598.78 | 0.00 | 0.00 | 0.00 | 2400.00 | 8.13 | 1200.00 | 29.83 |
6.99 | 4498.48 | 0.00 | 0.00 | 0.00 | 3000.00 | 18.91 | 0.00 | 0.00 |

Les colonnes correspondent, respectivement à : \(K_p\), \(T_i\), \(T_d\), \(N\) (filtre), Antiwindup (0 si pas actif ou 1 si actif), \(T_u\), \(K_u\), \(\widetilde{T_u}\) \(\widetilde{K_u}\) (pour les reports aval-amont, cf références bibliographiques ci-dessous pour les détails des équations)

doc76