| Description |
|---|
| Cette macro calcule le flux thermique dans une direction due à la convection et (ou) à la conduction, lorsque le phénomène est en état stationnaire. Elle calcule également les températures entre les couches des matériaux. Version macro : 0.0.2 Date dernière modification : 14/09/2025 Version FreeCAD : Toutes Téléchargement : Text-x-python.png Auteur: Garlic |
| Auteur |
| Garlic |
| Téléchargement |
| Text-x-python.png |
| Liens |
| Documentation sur le flux thermique, la convection et la conduction Page des macros Comment installer une macro Comment créer une barre d'outils |
| Version Macro |
| 0.0.2 |
| Dernière modification |
| 14/09/2025 |
| Version(s) FreeCAD |
| Toutes |
| Raccourci clavier |
| None |
| Voir aussi |
| None |
Il s'agit d'un algorithme qui calcule le flux thermique dû à la conduction et/ou à la convection dans une seule direction (par exemple, un mur composé de plusieurs couches de matériaux tels que du plâtre, des briques et de l'isolant, ou une fenêtre à double vitrage avec une cavité remplie d'air, etc.). Le phénomène doit être en état stationnaire (c'est-à-dire non variable dans le temps).
Les données doivent être saisies dans un tableur dans FreeCAD et les résultats sont écrits dans le même tableur, quelques lignes en dessous de la dernière ligne écrite. Ces données d'entrée doivent inclure (dans un ordre spécifique) les propriétés thermiques des matériaux des couches dans lesquelles le flux thermique se produit, l'épaisseur de chaque couche, la surface, la température du premier et du dernier point dans la direction du flux thermique, le type de phénomène dans chaque couche (par exemple conduction, ou convection forcée, ou convection libre sur une surface horizontale, verticale, inclinée ou dans une cavité fermée). Les résultats sont le débit thermique (en watts), la précision relative des calculs (l'algorithme utilise des équations de flux thermique et résout le problème par itérations, en essayant de converger) et les températures calculées des deux surfaces sur chaque couche.
Notez que vous ne devez effectuer les étapes suivantes qu'une seule fois :
Ici, vous trouverez plus d'informations sur la manière d'installer manuellement des macros.
Les exemples suivants montrent comment utiliser ce script.
Dans cet exemple, le débit thermique qui traverse une fenêtre à double vitrage est calculé. On sait que la température ambiante à l'intérieur de la pièce est de 25 °C et que la température ambiante à l'extérieur de la fenêtre est de 10 °C. La fenêtre mesure 0.57 m de haut et 0.43 m de large (soit une surface de 0.2451 m2). L'épaisseur de chaque vitre est de 4 mm (soit 0.004 m) et l'espace entre les deux vitres est de 16 mm.
Pour utiliser l'algorithme, ouvrez d'abord l'application FreeCAD. Ensuite, sélectionnez le atelier Spreadsheet, créez un nouveau document et, après cela, créez une nouvelle
feuille de calcul.
L'algorithme recherche la première colonne du tableur afin de trouver le premier nombre. Lorsqu'il le trouve, il suppose qu'il s'agit de l'identifiant de la première couche. Il recherche ensuite l'identifiant de la deuxième couche. Si cinq lignes consécutives ne contiennent pas de nombre dans la première colonne, il suppose qu'il n'y a pas d'autres couches. Les lignes situées entre les données des couches peuvent être utilisées pour écrire les unités, les commentaires, etc. Les propriétés de chaque couche doivent être écrites dans un ordre spécifique.
Pour cet exemple, les données du tableur peuvent être écrites comme illustré dans l'image ci-dessous.
La ligne 4 contient les données de la couche dont l'identifiant est 1. Il s'agit de la couche dans laquelle se produit la convection entre l'air ambiant à l'extérieur de la fenêtre et la surface extérieure du vitrage extérieur de la fenêtre. Les unités des données sont exprimées en S.I. (système métrique).
Temp. 1 est la température ambiante extérieure, en kelvins (qui est connue : 10 °C + 273,15 = 283,15 K).
Temp. 2 est la température de la surface extérieure du verre extérieur et est estimée approximativement à 286,15 K. Il s'agit d'une valeur initiale permettant au solveur de démarrer la première itération. Cette température sera calculée et présentée dans les résultats. Afin d'estimer une valeur initiale, nous avons utilisé l'équation suivante : (25 - 10) / 5 = 3, où 25 °C est la température intérieure, 10 °C est la température extérieure et 5 est le nombre de couches. Nous avons donc ajouté 3 à 283,15 K.
0,2451 m2 est la superficie de la fenêtre.
2 est le nombre qui spécifie la catégorie « convection libre sur une surface inclinée ou verticale » (en tant que mécanisme de transfert thermique dans cette couche).
101325 Pa correspond à la pression atmosphérique au niveau de la mer.
0,7 (70 % / 100) correspond à l'humidité relative de l'air ambiant extérieur.
0,57 m est la longueur caractéristique (pour une convection libre sur un plan vertical, la longueur caractéristique correspond à la hauteur du plan).
0 degré est l'angle entre le plan et la verticale.
Notez que pour que l'algorithme puisse comprendre les données, celles-ci doivent être écrites dans l'ordre ci-dessus (sans cellules vides entre elles), lorsque le mécanisme de transfert thermique est une convection libre sur un plan vertical.
La ligne 7 contient les données relatives à la couche sur laquelle la conduction se produit sur le verre extérieur de la fenêtre. 2 est l'identifiant de cette couche.
Temp. 1 est la température de la surface extérieure du verre extérieur et est estimée approximativement à 286,15 K (elle doit avoir la même valeur que la temp. 2 de la couche précédente, puisqu'elle se réfère à la même surface).
Temp. 2 est la température de la surface interne du verre extérieur (c'est-à-dire la surface en contact avec l'air emprisonné entre les deux verres) et est estimée approximativement à 289,15 K (la température précédente plus 3 K). Cette température sera calculée par le solveur.
0,2451 m2 est la superficie de la fenêtre.
1 est le nombre qui spécifie la catégorie de « conduction » (en tant que mécanisme de transfert thermique dans cette couche).
0,96 W/(m × K) est la conductivité thermique du verre [1]. Il existe divers tableaux sur Internet qui répertorient les propriétés thermiques des matériaux les plus courants. Vous pouvez également utiliser l'atelier Material pour afficher les propriétés d'un matériau.
0,004 m est l'épaisseur du verre.
L'ordre ci-dessus est celui dans lequel les données doivent être inscrites sur la feuille de calcul, en ce qui concerne la conduction.
La ligne 10 contient les données relatives à la couche d'air emprisonnée entre les deux verres. 3 est l'identifiant de cette couche.
289,15 K est la température approximative de la surface interne du verre extérieur.
292,15 K est la température approximative de la surface opposée qui enferme l'air (c'est-à-dire la surface de l'autre vitre en contact avec l'air emprisonné). Cette température sera également calculée par le solveur.
0,2451 m2 est la superficie de la fenêtre.
4 est le nombre qui spécifie la catégorie de « convection libre dans une enceinte » (en tant que mécanisme de transfert thermique dans cette couche). Notez que l'ensemble d'équations de l'algorithme (pour ce cas) ne convient qu'aux petits espaces, similaires à l'espace dans une fenêtre à double vitrage (c'est-à-dire inférieur à 0,05 m) [2].
101325 Pa correspond à la pression atmosphérique au niveau de la mer.
0,2 (20 % / 100) correspond à l'humidité relative de l'air confiné.
0,016 m est la longueur caractéristique (pour une convection libre dans une enceinte, la longueur caractéristique correspond à l'épaisseur de l'espace d'air, c'est-à-dire la distance entre les deux vitres).
La ligne 13 contient les données de la couche avec l'identifiant 4, qui concerne la conduction (catégorie 1) qui se produit au niveau du deuxième vitrage de la fenêtre.
La ligne 16 contient les données de la couche avec l'identifiant 5, qui concerne la convection libre (catégorie 2) qui se produit à la surface du deuxième vitrage de la fenêtre en contact avec l'air ambiant de la pièce. Notez que la température 2 de cette couche est de 298,15 K, soit 25 °C (valeur donnée dans cet exemple).
Notez que les équations utilisées sont valables pour une plage de valeurs concernant les données d'entrée (les commentaires dans le script Thermal.py précisent ces plages). Si ces plages sont dépassées, des avertissements (ou des erreurs) s'affichent dans la console Python de FreeCAD.
Pour que l'algorithme fonctionne, vous devez ouvrir la console Python dans FreeCAD et exécuter le code ci-dessous (c'est-à-dire copier-coller chaque ligne du code ci-dessous séparément et appuyer à chaque fois sur Entrée).
import HeatFlowConvectionConduction
heatFlowObj = HeatFlowConvectionConduction.HeatFlowConvectionConduction()
heatFlowObj.calcHeatFlowConvectionConduction()
Notez qu'une fois FreeCAD ouvert, vous devez copier-coller les deux premières lignes de ce code une seule fois (la première ligne importe le script et la deuxième ligne crée un objet). Ensuite, chaque fois que vous souhaitez exécuter l'algorithme du script (afin de lire les données de la feuille de calcul, lancer le solveur et présenter les résultats), il suffit de copier-coller la troisième ligne du code ci-dessus, puis d'appuyer sur Entrée.
Les résultats sont inscrits dans la même feuille de calcul, trois lignes en dessous de la dernière ligne écrite (veuillez noter que l'algorithme vérifie uniquement si les dix premières colonnes de sept lignes consécutives sont vides et, si tel est le cas, il considère qu'il a trouvé « la dernière ligne écrite »).
Le débit thermique est de 2,62 W. Nous avons d'abord indiqué la température la plus basse, c'est pourquoi le signe moins dans l'image ci-dessus indique que le flux est dans la direction opposée (c'est-à-dire de la température la plus élevée vers la plus basse).
La précision relative est de 0,76 % (le solveur de l'algorithme s'arrête si la précision relative est inférieure à 5 % ou si le nombre d'itérations est supérieur à dix. Vous pouvez modifier ces limites en changeant leurs valeurs dans la fonction simulate_thermal_flow à l'intérieur du script).
Les températures de chaque couche sont calculées. Le reste des données d'entrée est également réimprimé pour chaque couche, pour plus de clarté.
Un vent d'une vitesse de 10 m/sec, d'une humidité de 40 % et d'une température de 10 °C souffle parallèlement à la largeur d'un mur de 5 m de largeur et 3 m de hauteur, dont la surface a une température de 11°C.
Afin de calculer le débit thermique, nous devons saisir les données dans le tableur, dans le bon ordre.
1 est l'identifiant de la couche.
283,15 K est la température de l'air (la température du mur aurait également pu être indiquée en premier).
284,15 K est la température à la surface du mur.
15 m2 est la superficie de la surface.
5 spécifie la catégorie « convection forcée parallèle à une surface plane ».
101325 Pa correspond à la pression atmosphérique au niveau de la mer.
0,4 correspond à l'humidité relative divisée par 100.
5 m est la longueur caractéristique (pour la convection forcée, il s'agit de la dimension de la surface parallèle à l'écoulement).
10 m/sec est la vitesse d'écoulement.
Les résultats montrent que le débit thermique est de 367,18 W.
La surface d'une terrasse est de 50m2 (10 m de long × 5 m de large) et sa température est de 11°C. La température ambiante extérieure est de 10°C et l'humidité est de 50 %.
Afin de calculer le débit thermique, nous devons saisir ces données dans un ordre correct.
1 est l'identifiant de la couche.
283,15 K est la température de l'air ambiant (c'est-à-dire la température du fluide à l'extérieur de la couche limite thermique, en Kelvins).
284,15 K est la température à la surface due la terrasse.
50 m2 est la superficie de la surface.
3 spécifie la catégorie « convection libre sur une surface horizontale ».
101325 Pa correspond à la pression atmosphérique au niveau de la mer.
0,5 correspond à l'humidité relative divisée par 100.
1,67 m est la longueur caractéristique (pour la convection libre sur une surface horizontale, il s'agit de la surface divisée par le périmètre : 50 / (10 + 5 + 10 + 5)). Notez que pour que les données soient lues correctement, vous devez écrire 1,67 dans la cellule du tableur (et non = 50 / (10 + 5 + 10 + 5)).
1 correspond à la direction de la surface. Étant donné que l'air se trouve au-dessus de la surface, cette entrée doit être 1. Si l'air se trouvait au-dessous de la surface (par exemple dans le cas d'un plafond), vous devriez alors inscrire -1.
2 est la dernière donnée écrite dans la ligne, et elle précise que temp. 1 est la température de l'air et temp. 2 la température de la surface. Si vous aviez d'abord écrit la température de la surface, puis la température de l'air, cette dernière entrée devrait être 1.
Les résultats montrent que le débit thermique est de 92,55 W.
Les exemples ci-dessus couvrent les cinq cas (catégories) pour lesquels l'algorithme du script peut calculer le flux thermique :
Vous pouvez télécharger les fichiers HeatFlowConvectionConduction.py, Thermal.py et SpreadsheetDataReadWrite.py à partir de :
https://git.disroot.org/CrowdDiscussesAlternatives/ScriptsForFreeCAD/src/branch/master/Thermal
Discussion sur le forum : Présentation de la macro HeatFlowConvectionConduction
La documentation de ce script au format pdf : Documentation sur le flux thermique, la convection et la conduction