Simuler le fonctionnement d’un clapet avec un module WDLANG
SIC ne comprend pas d’ouvrage ni de module de régulation de type "clapet", ouvrage qui ne permet au débit de couler que dans un seul sens. Pour modéliser ce type d’ouvrage, il faut programmer soi-même un module de régulation. C’est que ce tutoriel propose de faire à l’aide du module WDLANG.
Création du module et connexion aux ouvrages
En mode hydraulique, aller dans le menu outils > Module de régulation
Dans le fenêtre qui s’ouvre, cliquer sur « Nouveau », donner un nom au module, puis cliquer sur « Modifier » :
Dans la fenêtre d’édition des modules de régulation, ajouter un régulateur WDLANG en choisissant dans la liste déroulante en haut à droite :
Ajouter une variable de contrôle U en cliquant sur la première ligne du tableau et choisir l’ouverture d’une vanne où doit être placé le clapet :
Définir les paramètres de la variable de contrôle : pour un clapet, il faut utiliser une commande en mode absolu (i.e. la valeur envoyée par U sera égale à la valeur de l’ouverture) et on peut éventuellement définir Umin et Umax pour que ça corresponde à l’ouverture min et max de la vanne pour le cas où l’algorithme de régulation renverrait des valeurs en dehors de la plage.
Ensuite, il faut qu’on définisse les mesures hydrauliques qui vont nous permettre de commander le clapet. Je propose de mettre la cote amont dans la variable contrôlée (Y) et la cote aval dans la variable mesurée (Z).
Je mets Y et Z en absolu pour pouvoir comparer les cotes Z des deux sections.
Cliquer sur « Sélectionner ».
Sur le graph du réseau, une boite « WDLANG » doit être connectée à la vanne :
Ecriture du script de régulation
Ensuite, on peut lancer SIRENE et on va pouvoir écrire le script de régulation pendant la simulation.
Au lancement de SIRENE, on a une fenêtre qui s’ouvre avec un premier message :
On peut écrire notre code dans la fenêtre du module WDLANG :
Dans les tableaux U, Y et Z, on voit en temps réel respectivement, l’ouverture, la cote amont et la cote aval de la vanne.
La portion de code en WDLangage ci-dessus boucle sur tous les U et, pour chaque U, va ouvrir la vanne à 3 mètres si la cote amont est supérieure à la cote aval et fermer la vanne sinon. De cette façon, on peut ajouter d’autres clapets en rajoutant des lignes dans les U, Y et Z de la fenêtre d’édition des modules de régulation.
Il faut sauvegarder le script et le compiler avec les boutons ad hoc. Ensuite, si on clique sur Exécuter, le script mettra à jour la valeur de U.
Si on clique sur Continuer, cela va faire tourner la simulation jusqu’au temps défini par le champs "Prochaine pause (en nb de pas de temps)".
Paramètres de simulation et résultats
Voici un exemple où on voit fonctionner le clapet :
Ouverture de la vanne :
Cote amont du clapet :
Cote aval du clapet :
On remarque que le changement brusque d’ouverture de la vanne crée des instabilités numériques. Il faut faire le calcul en non linéaire en mettant 1 dans "Fréquence de calcul de la dérivée (Quasi-Newton)" des paramètres de calcul du transitoire :
Un autre point à signaler est que la commande d’ouverture du clapet s’effectue avec un pas de temps de retard sur les mesures. C’est-à-dire que le clapet se ferme si au pas de temps précédent le débit s’est mis à couler en sens inverse et ne se rouvre que si la cote amont et supérieure à la cote aval au pas de temps précédent. Il faut donc éventuellement diminuer le pas de temps de calcul si la fréquence d’ouverture/fermeture du clapet est importante.