La simulation est une représentation mathématique d'un procédé
industriel, en respectant les principes de base tels que:
- conservation de la matière
- conservation de l'énergie
- les équilibres thermodynamiques
- cinétique des réactions
- phénomènes de transport
La
simulation statique des procédés chimiques est la plus courante parce
que la plus simple à mettre en oeuvre avec les moyens de calcul
disponibles. Elle s'applique parfaitement aux procédés continus, et
permet de définir les paramètres de dimensionnement, ou d'analyser les
dysfonctionnement de ces unités.
La simulation dynamique,
demandant des moyens de calcul plus importants, émergea plus tard. Elle
est pourtant idéale pour représenter les procédés discontinus, analyser
les phases transitoires de démarrage ou d'arrêt, ou pour les analyses
de scénarios d'accidents. Les moyens actuels de calcul permettent de
construire des outils utiles pour la formation des opérateurs.
Le terme simulation statique est trompeur lorsqu'il s'agit de
simuler des flux de matière et d'énergie s'écoulant de manière
continue. La simulation statique d'un procédé vise en fait à
définir les propriétés des flux (débit, température, fraction
vaporisée, ...), ainsi que les bilans matière et d'énergie en régime
stationnaire.
Le procédé est décomposé en blocs représentant les différentes
opérations unitaires mises en oeuvre.
Exemples de blocs |
Description de sa fonction |
MIXER |
combine plusieurs flux matière pour n'en faire qu'un
seul |
SPLITTER |
fractionne un flux matière en plusieurs flux de
composition et propriétés thermodynamiques identiques |
HEATER |
fait varier l'enthalpie d'un flux matière |
REACTOR |
converti certains composants en d'autres selon les
réactions chimiques spécifiées. |
FLASH |
fractionne
un flux matière en un flux gazeux et un ou plusieurs flux liquides non
miscibles. Une variation d'enthalpie peut éventuellement être
considérée. |
Les blocs sont liés entre eux par des flux de matière ou
d'énergie. A
chaque bloc correspond un algorithme particulier utilisant les
informations des flux en entrée ainsi que les paramètres spécifiés par
l'utilisateur, pour calculer les informations des flux en sortie.
Calculer une information d'entrée pour satisfaire une information de
sortie nécessite un calcul itératif.
Le traitement mathématique peut être:
- - séquentiel
- les
blocs sont traités les uns après les autres, les informations de sortie
du précédent constituant les informations d'entrée du suivant
- - en système d'équations
- les équations sont rassemblées en un système d'équations
non linéaires qui est ensuite résolu
- - modulaire simultané
- un
premier traitement séquentiel permet d'établir une relation entre les
valeurs d'entrée et celles de sortie, puis une extrapolation permet
d'approcher les résultats qui sont confirmés par un nouveau traitement
séquentiel.
Représentation du procédé
Les
blocs doivent représenter les fonctions plus que les équipements.
Certains blocs sont capables de représenter une fonction qui peut
nécessiter plusieurs équipements physiques. Au contraire certains
équipements nécessitent plusieurs blocs pour être représentés. Plus le
nombre de blocs sera important, plus les informations intermédiaires
seront nombreuses, mais aussi plus le calcul pourra être long et
complexe. Il est important de bien identifier les informations
intermédiaires qu'on souhaite privilégier afin de sélectionner les
blocs les mieux adaptés.
Traitement séquentiel (Séquentiel Modular)
Dans
le traitement séquentiel, les blocs sont exécutés les uns après les
autres. Chaque bloc calcule ses flux de sortie en partant des
informations contenues dans les flux d'entrée. Une séquence précise est
respectée afin que les flux d'entrée, s'ils sont calculés par un autre
bloc, soient disponibles au moment de l'exécution. Ainsi la première opération exécutée est celle
recevant les flux d'alimentation du procédé, et la dernière est celle
produisant les flux de sortie du procédé.
Ce mode de fonctionnement est:
- facile à mettre en oeuvre pour des calculs simples
- fiable et facile à analyser en cas de problème
- des blocs supplémentaires pour des usages particuliers sont faciles à programmer
mais
- le
sens de calcul systématiquement de l'entrée vers la sortie rend plus
difficile le respect d'une spécification de sortie (pureté,
température, débit, ...)
- la présence de recyclages, de spécifications à respecter ou des intégrations énergétiques
(échangeurs entre deux flux),
imposent un processus itératif, qui allonge le temps de calcul et peut
occasionner des problèmes de convergence (solution difficile à trouver)
- peu adapté aux recyclages multiples
- peu adapté aux problèmes d'optimisation
Traitement en système d'équations (Equation Oriented)
- La description schématique du procédé est traduite en un système d'équations qui sont ensuite résolues simultanément.
Ce mode de fonctionnement :
- élimine
la nécessité d'itérations et les problèmes de convergence en cas de
spécifications sur les flux de sortie des opérations ou de recyclage de
flux
- est particulièrement efficace pour traiter des problèmes d'optimisation
- est
particulièrement adapté aux simulations présentant de nombreux
recyclages, contraintes ou intégrations énergétiques.
mais
- nécessite une bonne initialisation de toutes les variables, même les variables intermédiaires (les flux entre les blocs)
qui sont normalement calculées par le simulateur; il est donc
souhaitable, si le simulateur le permet d'effectuer un premier calcul
en traitement séquentiel pour approcher la valeur des flux
intermédiaires, et ensuite calculer la solution finale au moyen du
traitement en système d'équations.
- quand le simulateur ne trouve pas de solution, le diagnostique est difficile
-
toute modification de la
simulation (ajout ou suppression de bloc ou de flux) oblige à
reconstruire le système d'équation; il est donc préférable que le
logiciel de simulation puisse le faire automatiquement.
- souvent réservé aux utilisateurs expérimentés
La simulation dynamique d'un procédé vise à définir les
propriétés
des flux au cours du temps, pendant des situations transitoires où le
régime n'est pas stable.
Contrairement à la simulation statique,
la simulation dynamique tient compte d'une accumulation de matière ou
d'énergie dans le système. Si cette accumulation est variable et
temporaire, le système évoluera vers une situation d'équilibre stable,
correspondant à ce que prédit une simulation statique. La simulation
dynamique permet de calculer combien de temps mettra le système pour
trouver son nouvel équilibre, par quelle valeur minimum ou maximum un
paramètre passera, ....
Puisque les phénomènes d'accumulation
sont pris en compte en simulation dynamique, il est nécessaire
d'indiquer les volumes des équipements. Inversement, le résultat des
simulations dynamiques aident à définir la taille optimum des
équipements. Ces résultats peuvent avoir un effet significatif sur le
coût d'investissement des équipements de production, des organes de
sécurité (débit de décharge, pression et température de calcul, moyen
de traitement des décharges,...) ..., en permettant de réduire les
marges de dimensionnement.
La simulation du comportement
dynamique des installations permet d'optimiser les stratégies de
régulation pour obtenir une meilleure réactivité face aux perturbations
du procédé et accélérer le retour aux conditions optimum d'exploitation.
La
simulation dynamique est une aide dans l'optimisation des procédures de
démarrage et d'arrêt pour maximiser les temps de production effectifs
en toute sécurité.
Dans la méthode séquentielle de résolution, les différentes opérations unitaires du procédé sont exécutées
les unes après les autres, séquentiellement.
La
séquence de calcul est définie par l'agencement des entrées et des
sorties. Chaque bloc ne peut être exécuté que dans une direction. Les
données de sortie sont calculées connaissant les données d'entrée.
Cette direction est la même que celle des flux matériels.
Si le résultat d'une opération A dépend du résultat d'une opération B
qui suit, (c'est le cas d'un recyclage de matière par exemple), le
premier calcul de A devra être fait en supposant le résultat de B. C'est l'initialisation qui doit être faite par l'utilisateur. Cette initialisation est faite sur des flux dit coupés (tear streams).
Ils sont choisis dans le but d'éliminer tout recyclage et d'obtenir un
ordre du calcul allant des entrées vers les sorties. Les
flux coupés peuvent être proposés par le logiciel de simulation ou
choisis par l'utilisateur. Chaque flux coupé est converti en deux
éléments: un flux de sortie calculé par un bloc et un flux d'entrée
d'un autre bloc
Un calcul itératif et un test de convergence sont
alors mis en place. Les valeurs d'initialisation ne sont utilisées que
pour la première itération; dès la deuxième itération, les valeurs de
l'élément de sortie seront utilisées. Le calcul sera considéré comme
satisfaisant lorsque les valeurs des deux éléments de chaque flux coupé
sont quasiment identiques.
Les simulateurs dédiés
Les simulateurs dédiés à cette fonction proposent tous:
- un
choix de modèles thermodynamiques pour s'adapter aux divers types de
composés et de mélanges et permettant de calculer les propriétés
d'équilibre et transport
- une bibliothèque d'opérations unitaires courantes
- un calcul de bilan en état stationnaire
Certains proposent en plus des fonctions pour:
- le calcul en dynamique
- l'optimisation des paramètres opératoires
- la simulation d'opérations discontinues (batch)
- une liaison avec des logiciels de simulation d'équipements (échangeurs de chaleur par exemple)
Les tableurs
Pour contourner la difficulté d’accès aux logiciels commerciaux on peut
être tenté d’utiliser un tableur souvent plus accessible et plus rapide
à mettre en œuvre. Il faut être conscient des limites de cette pratique:
un tableur est docile ; il donnera le résultat désiré, mais ne garantira pas que le résultat est juste
Le résultat sera conforme à ce qu’on a programmé
Il permet des raccourcis et des approximations ; c’est pour cela qu’on l’utilise
Sauf à programmer des fonctions complexes, il ne garantira pas le
respect simultané de la conservation de la masse, de l’enthalpie et des
équilibres thermodynamiques
Cas vécu :
Une opération est
simulée en utilisant un logiciel dédié ; le résultat n’est pas celui
qui était intuitivement attendu; incompréhension, mise en cause du
simulateur, analyse des détails de la simulation ; en fait le bilan
enthalpique interdisait ce qui était projeté ; le calcul avec un
tableur n’aurait pas permis de détecter cette contrainte.
Stratégie d'approche de la simulation
La
simulation de procédé est un outil puissant et éprouvé pour
obtenir les informations nécessaires à la prise de décision.
Cependant certains écueils sont à éviter.
Définir clairement l'objectif,
c'est à dire les questions auxquelles la simulation doit
répondre.
Prendre le temps de comprendre le procédé
pour
mieux cerner les enjeux, les paramètres importants, anticiper les
questions non encore exprimées mais qui surgiront après le
développement de la simulation, et éviter de se focaliser sur de faux
problèmes. Si on n'est pas soit même expert du procédé étudié, des
discussions prolongées avec des personnes ayant cette expertise sera
fructueuse.
Veiller à respecter les délais
Une simulation de
procédé doit aider à la prise de décision. Celle-ci intervient souvent
à une date précise que la simulation soit prête ou non. Si le résultat
de la simulation n'est disponible qu'après la prise de décision, c'est
l'ensemble du travail effectué, quel que soit sa complexité, qui se
trouve déprécié.
Choisir le bon outil de simulation
ce qui ne signifie pas le plus
sophistiqué ni le plus coûteux, mais plutôt celui qui est le mieux
maîtrisé, le plus rigoureux et qui garanti d'obtenir le résultat à
temps.
On
peut être tenté de se tourner vers un tableur pour construire sa
simulation sous prétexte qu'il est disponible sans coût additionnel,
que l'acquisition d'une solution commerciale coûteuse n'a pas été
budgetée, .... L'expérience montre que c'est souvent une mauvaise
solution. Un tableur ne permet pas de garantir les principes
fondamentaux de la simulation de procédé (conservation de la masse, de
l'énergie, de la quantité de mouvement); des raccourcis sont trop
faciles à réaliser consciemment ou inconsciemment; le risque est grand
de programmer le résultat qu'on a intuité plutôt qu'une description
rigoureuse des phénomènes.
Si le budget nécessaire pour une solution
commerciale est un problème, des solutions de qualité, open source et
libres d'utilisation sont disponibles. Ils seront souvent limités sous
certains aspects, mais seront suffisants dans nombre d'applications,
quitte à simplifier volontairement le description du problème. Ils
offrent la rigueur indispensable à un résultat fiable.
Quelques exemples de simulateurs libres:
- DWSIM
- simulateur de procédés chimiques développé par une équipe
brésilienne. C'est un simulateur statique utilisant le mode séquentiel.
- COCO simulator
- simulateur
basique à l'origine destiné à permettre de tester des blocs d'opération
unitaire conforme à la norme d'échange Cape-Open. Les nombreux exemples
disponibles sur le site montrent que des simulations d'unités complexes
peuvent être réalisées. C'est un simulateur statique utilisant le mode
séquentiel.
- ChemSep
- simulateur
de flash et de colonne de distillation incorporant une base de donnée
de composants et leurs propriétés physiques. Il respecte la norme
d'échange Cape-Open, et est interfaçable avec COCO pour être incorporé
dans une simulation plus large.
- EMSO
- EMSO
est un simulateur de procédé dont le développement semble être en
suspens depuis une dizaine d'années, mais toujours disponible. Il
permet des simulations statiques ou dynamiques avec une résolution par
système d'équations. Son approche orientée objet permet de réaliser de
nouveaux blocs d'opération unitaire par combinaison de blocs existants. Ce tutoriel donne une vue d'ensemble des possibilités offertes.
Savoir présenter les résultats
La
simulation de procédé est destinée à aider à la prise de décision. Elle
peut étayer un choix technologique, mais aussi une décision
commerciale en analysant un coût de production, ou plus simplement
dimensionner un équipement.
Mais
trop
d'informations tue l'information
et n'aide pas à la prise de décision. C'est pourquoi il est important
de bien définir l'objectif, pour ne présenter que les résultats
correspondants, et d'être prêt à les compléter selon les demandes soit
par des résultats préparés en avance soit en réalisant de nouveaux
calculs.