Upload
danghanh
View
215
Download
0
Embed Size (px)
Citation preview
ENSAM Lille - OPTIS Université de Sherbrooke
24/04/2007
Optimisation de structures Implémentation d’outils d’aide à la conception
méthodes d’optimisation topologique
Rapport intermédiaire #02
Thomas VINCENT
OPTIS Université de Sherbrooke
Optimisation de structures Implémentation d’outils d’aide à la conception basés sur les
optimisation topologique
Thomas VINCENT
Optimisation de structures basés sur les
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
<Table des matières 2
Table des matières
1. Introduction ....................................................................................................................... 3
2. Avancement & objectifs du projet ....................................................................................... 3
2.1. Rappel des objectifs .............................................................................................................. 3
2.2. Etat de validation des jalons ................................................................................................. 3
2.3. Limitations & perspectives .................................................................................................... 4
3. Implémentation sous MATLAB ............................................................................................ 5
3.1. Architecture générale ........................................................................................................... 5
3.2. Objets impliqués en détail .................................................................................................... 5
3.2.1. Données d’entrée .......................................................................................................... 5
3.2.2. Données internes temporaires ..................................................................................... 6
3.2.3. Données de sortie ......................................................................................................... 7
3.3. Objets de la boucle d’optimisation ....................................................................................... 7
3.4. Interface CATIA V5 ................................................................................................................ 7
4. Utilisation du code .............................................................................................................. 8
4.1. Applicabilité ........................................................................................................................... 8
4.2. Application : un carter de réducteur ..................................................................................... 8
4.2.1. Préparation de l’optimisation & définition des paramètres ......................................... 8
4.2.2. Rapport d’optimisation ................................................................................................. 9
4.2.3. Exploitation des résultats ............................................................................................ 11
4.2.4. Validation du design .................................................................................................... 14
4.2.5. Conclusion ................................................................................................................... 15
5. Conclusion ........................................................................................................................ 16
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Introduction 3
1. Introduction
Ce rapport rend compte de l’état d’avancement du projet d’expertise, « Optimisation de structure »
que je mène au sein du laboratoire OPTIS de la faculté de génie mécanique de l’université de
Sherbrooke. Il est nécessaire au lecteur d’avoir pris connaissance du rapport intermédiaire n°1 pour
profiter du contenu du présent écrit.
Après deux mois de travaux au sein du laboratoire, une première mouture du code d’optimisation
permet d’ores et déjà d’obtenir des résultats satisfaisant en termes d’aide à la conception. Cet
avancement justifie l’écriture de ce rapport, au cours duquel l’implémentation générale va être
présentée ainsi qu’un cas d’application et les perspectives attendues dans le cadre de ce projet .
2. Avancement & objectifs du projet
2.1. Rappel des objectifs
L’objectif principal de ce projet d’expertise et d’étendre l’utilisation d’algorithmes d’optimisation
de structure existant vers un solveur numérique par éléments finis Code_Aster.
Toute fois, j’introduis des principes connus avec la vision d’un ingénieur, soucieux de l’intérêt qu’ils
représentent au sein du processus de conception mécanique. En d’autres termes, la partie dite
mathématique justifiant l’utilisation et la légitimité des méthodes employées ne sera que présentée
et en aucun cas justifiée. J’invite le lecteur à se tourner vers les écrits des personnes responsables
du développement des méthodes invoquées.
2.2. Etat de validation des jalons
Etapes du projet validées :
� Automatisation complète du processus d’optimisation.
� Optimisation un domaine mécanique défini en trois dimensions, maillé à l’aide d’un
maillage volumique hexaédrique complètement régulier (taille et orientations des mailles
identiques) pour un seul cas de chargement statique aussi complexe soit t’il (contact,
prise en compte de la dilatation thermique etc.).
� Possibilité de désactiver ou forcer à l’état de matière certaine maille de ce maillage.
� Adjonction au domaine d’optimisation d’autre « bout » de maillage provenant d’une pré-
étude permettant de prendre en compte les parties existantes de la pièce à optimiser. Ces
parties de pièce sont maillées par un logiciel de CAO avec des mailles tétraédrique.
� Récupération du résultat d’optimisation directement dans un logiciel de CAO, au sein des
parties résultantes de la pré-étude.
L’ensemble des objectifs fixés en début de projet sont remplis, ils représentent globalement les
trois premiers points de l’énumération précédente. L’interfaçage avec un logiciel de conception
assistée par ordinateur permet de donner tout le sens d’ingénierie de ce code et décuple ses
possibilités d’utilisation et son intérêt. Il simplifie aussi grandement son utilisation pour les cas
complexes.
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Avancement & objectifs du projet 4
2.3. Limitations & perspectives
A ce niveau, le code qui va vous être présenté et facile d’accès, permet de mettre en place des cas
très complexe, et apport un réel aide lors de la conception de pièce mécanique. Cependant il reste
extrêmement limité quand on le compare aux critères de développement et de validation
actuellement utilisés pour le développement de pièces mécaniques. En effet dans son état actuel ce
code peut représenter une très bonne première approche basé sur le cas extrême d’utilisation de la
pièce. Pour améliorer ce code plusieurs axes sont à privilégier :
� Simplicité d’utilisation : une très grande partie du temps de l’optimisation d’une pièce est
utilisée pour préparer l’optimisation. (Création du volume d’encombrement, adaptation
des paries existantes pour une compatibilité des maillages etc.). La principale limitation
réside dans l’utilisation d’un maillage hexaédrique complètement régulier pour le domaine
d’optimisation. Il serait très utile de pouvoir modéliser le domaine de design par un
maillage quelconque obtenu directement d’un logiciel de CAO. Cependant la méthode du
critère d’optimalité implémentée ici, nécessite une régulation pour rendre la solution
insensible à la dimension du maillage. Cette régulation se réalise à l’aide de la connaissance
des valeurs des densités des mailles voisines. Or avec un maillage quelconque la difficulté
est de déterminer le voisinage d’un élément pour calculer la régulation du critère.
Cependant d’autres méthodes existent, complètement indépendantes du type et de la
taille du maillage utilisé : la méthode des directions de lamination déjà mise en œuvre en
deux dimensions par Grégoire ALLAIRE. Il pourrait être intéressant de continuer le
développement du code dans ce sens pour décuplé sa simplicité d’utilisation et ses
possibilités.
� Complexité des cas : comme mentionné précédemment la méthode implémentée ici se
base sur le critère d’optimalité. Cette méthode fort simple n’autorise pas la prise en
compte de plusieurs cas de chargement distincts et l’intégration de contraintes
d’optimisation (déplacement limite de certains nœuds, contrainte limite de certaines
mailles tec.). Or il existe, entre autres, une méthode d’optimisation appelée « la méthode
des asymptotes mobiles » qui permet de prendre en compte tous ces paramètres. Il serait
intéressant d’introduire cette méthode au sein du présent code pour pourvoir optimiser
des pièces directement avec les cas de validation et les contraintes de développement
imposées par le cahier des charges.
� Performance : pour l’instant les échanges de donnée et la boucle d’optimisation
représentent à eux deux entre 1 et 5 % du temps globale du processus d’optimisation, or
codé en langage C ou C++ ils pourraient être bien plus rapides. Cependant l’objectif de ce
travail et de développer un outil fonctionnel et non de le rendre extrêmement performant
sur le plan temps de calcul. Je ne m’attacherai donc pas personnellement au
développement et à l’adaptation du code mais il reste une grande marge d’optimisation du
code en termes d’interface et d’échange de données avec Code_Aster.
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Implémentation sous MATLAB 5
3. Implémentation sous MATLAB
3.1. Architecture générale
Afin de fixer le déroulement général de l’optimisation, est présenté en figure 1 une représentation
graphique des différentes étapes et fichiers intervenant dans le processus.
3.2. Objets impliqués en détail
3.2.1. Données d’entrée
� Simulation
Les différents paramètres relatifs à l’optimisation et aux chemins d’accès aux fichiers
adjoints sont renseignés dans un fichier de lancement de simulation d’extension « .simu ».
Ce fichier de lancement sera à fournir au code Matlab (entrée de la routine).
� Groupes de nœuds
Ce fichier (facultatif) est un fichier de type maillage Code_Aster « .mail », il contient les
différents groupes de nœuds nécessaires à l’application de conditions aux limites et
chargements. Les noms des nœuds et des groupes doivent être cohérents avec ceux utilisés
dans le fichier de chargement et le maillage du modèle sous peine d’erreurs au lancement
de Code_Aster. Cet extrait de maillage est copié tel quel à l’intérieur du fichier maillage
généré par Matlab à chaque itération et doit donc respecter les conventions d’écriture d’un
tel fichier.
� Chargement
Ce fichier est un fichier de type commande Code_Aster « .comm », il contient les conditions
aux limites et chargements. Il peut utiliser les groupes de nœuds ou non, ou directement
des éléments du maillage adjoint ou du maillage de la zone d’optimisation. Cet extrait de
fichier commande est retranscrit à l’intérieur du fichier de commande généré par Matlab à
chaque itération, et doit donc respecter les conventions d’écriture d’un tel fichier.
Figure 1 : représentation schématique du processus d'optimisation et positionnement des fichiers impliqués
Mise en place du
problème
d’optimisation
Détermination
des critères
d’optimalité
Adaptation de
la sensitivité
(filtres)
Vérification de
la convergence
du processus
Création des
groupes de mailles
et des matériaux
Résolution de
du problème
mécanique
Récupération
et formatage
des résultats
energie.resu
Code_Aster
Matlab resultat.pos
densite.pos
commande.comm
export.export
maillage.mail
resultat.stl
log.mess maillage.mail
- Groupes de nœuds
- Cas de chargement
- Paramètres de
simulation
- Maillage adjoint
- Domaine de design
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Implémentation sous MATLAB 6
� Maillage adjoint
Le maillage adjoint provient d’un maillage généré par CATIA V5 exporté au format brut
« .dat ». Pour l’intégré au maillage de design il faut récupérer la liste de points et la liste des
mailles dans deux fichiers distincts. Une partie de ce rapport est réservée à l’explication du
fonctionnement et à l’importation de maillage adjoint à l’optimisation, voir §3.4.
Les chemins d’accès aux fichiers des trois catégories précédentes doivent être mentionnés dans le
fichier de lancement de simulation (chemin relatif par rapport à la position du fichier « .simu »).
� Définition du domaine de design
Pour l’instant l’initialisation se fait par importation d’une matrice Matlab, générée sous
Matlab de manière tout à fait manuelle et donc fastidieuse. Dans l’avenir il serait
intéressant de récupérer une géométrie de type CAO et d’en générer la discrétisation en
hexaèdres réguliers pour définir le domaine de design.
3.2.2. Données internes temporaires
La minimalisation globale de l’énergie interne du domaine de design se fait par itérations
successives. A chaque itération l’intégralité des données de calculs est sauvegardée sur le disque
dur pour permettre à l’utilisateur de suivre l’évolution de la topologie au cours du processus. Avec
toutes ces informations l’utilisateur peut suivre l’évolution de la topologie et ajuster les différents
paramètres de la simulation s’il considère que l’évolution n’est pas satisfaisante. Pour connaître les
ajustements possibles je conseil au lecteur de prendre le temps de comprendre l’origine de la
méthode d’optimisation topologique utilisée ici en lisant les écrit de SIGMUND et BENSOE.
� Maillage « .mail »
Maillage au format Code_Aster utilisé pour le calcul, il contient une partie fixe (nœuds,
mailles) et la liste des groupes de mailles qui charge à chaque itération en fonction de la
répartition des densités dans la pièce.
� Export « .export »
Le fichier export et le fichier de lancement à proprement dit de Code_Aster, il indique
l’emplacement du maillage, du fichier commande et les emplacements des différents
fichiers résultats.
� Commande « .comm »
Le fichier commande contient les informations du calcul par éléments finis : définition et
affectation des matériaux, définition du cas de chargement, des éléments à calculer (en
l’occurrence ici l’énergie interne de chaque élément aux nœuds de Gauss) etc.
� Résultat : énergie « .resu »
Fichier ASCII récapitulant les valeurs de l’énergie interne de chaque élément, ce fichier et lu
par Matlab pour réaliser l’affectation des nouvelles densités.
� Résultat : maillage « .pos »
Ce fichier de maillage permet de visualiser l’affectation des différents groupes de mailles à
l’aide de Gmsh en ajustant la visibilité des différents groupes de mailles.
� Résultat : carte de densités « .pos »
Ce fichier de post traitement Gmsh correspond à la carte des densités, et permet de
réaliser une iso-surface sous Gmsh pour une meilleure représentation et une prise en
compte des gradients de densité dans la structure.
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Implémentation sous MATLAB 7
3.2.3. Données de sortie
� Résultat format STL « .stl »
Une fois l’optimisation arrivée à la convergence, les iso-surfaces de niveau de densité 0.3,
0.5 et 0.7 son sauvegardées sous forme de triangulation STL. Ces fichiers sont importables
dans la plupart des logiciels de CAO, ceci pour permettre la conception de la future pièce en
gardant le résultat de la répartition idéale sous les yeux.
� Récapitulatif de la simulation « .mess »
Ce fichier de récapitulation permet de voir le temps nécessaires aux différentes opérations
du processus d’optimisation, l’évolution de l’énergie globale interne etc.
3.3. Objets de la boucle d’optimisation
Au sein de la routine d’optimisation sous Matlab le domaine d’optimisation est représentée par une
matrice tridimensionnelle dont chaque valeur correspond à la densité d’un élément (valeur
comprise entre 0 et 1). Cette matrice est à l’origine de l’affectation des matériaux en fonction de la
loi de pénalisation propre à la méthode d’optimisation topologique utilisée ici (voir rapport n°1).
Elle est actualisée à chaque itération en fonction du résultat du calcul par éléments finis récupéré
par le biais du fichier « energie.resu ». Pour voir les différentes étapes du code d’optimisation je
vous renvoie premier rapport.
3.4. Interface CATIA V5
Dans un souci de simplicité d’utilisation et t’intégration au sein du processus de conception, j’ai
ressentis la nécessité de créer un lien entre le logiciel de CAO et cette routine d’optimisation.
� Récupération de maillages et groupes de nœuds
Un moyen simple d’importer des parties de la pièce à optimiser est de passer par un maillage
d’éléments finis, qui n’est rien de plus qu’une liste de points dans l’espace et une lite de mailles
appelant ces points. Donc sous CATIA V5, des parties de la pièce sont modélisées puis maillées de
telle manières que les éléments en contact avec la zone d’optimisation soient cohérents (les points
du maillage doivent être placés sur un grille régulière de pas égaux aux dimensions des éléments
hexaédriques du domaine d’optimisation). Certaines surfaces peuvent être maillées
indépendamment pour permettre de récupérer les nœuds appartement à ces surfaces, utilisables
ultérieurement pour appliquer des efforts ou des contraintes aux limites.
� Intégration du maillage annexe
Lors de la création du maillage les nœuds provenant des maillages adjoints sont renommés pour
garantir la continuité de matière entre le domaine adjoint et le domaine de design.
� Exportation des résultats
Toujours à des fins d’utilisation dans le domaine de l’ingénierie il est préférable de pouvoir
importer le résultat de l’optimisation (la répartition optimale de matière dans la pièce) dans le
logiciel de CAO qui nous a permis de concevoir les parties prédéfinies. De ce fait on peut continuer
le développement du produit avec le design optimal sous les yeux. Cette exportation se fait via
l’iso-surface du volume de densité au format STL (importable partout).
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Utilisation du code 8
4. Utilisation du code
4.1. Applicabilité
Dans l’état actuel, le code proposé optimise une structure mécanique en trois dimensions dans le
domaine des petites déformations (domaines élastique) soumise à un seul cas de chargement. La
version utilisée de Code_Aster est la 9, compilé pour Windows. Les calculs sont effectués sur mon
PC portable : AMD Athlon 64 3400+ avec 1Go de Ram, sans utilisation de mémoire virtuelle. La
mémoire maximum physique allouable est de 835 Mo.
4.2. Application : un carter de réducteur
4.2.1. Préparation de l’optimisation & définition des paramètres
Je me propose de concevoir ce carter en aluminium moulé, de type AlSi7Mg de module d’Young
�� � �� �� et un coefficient de Poisson de ��� . Ce cas d’étude correspond parfaitement à un
cas réel et rentre dans le cadre d’applicabilité du code dans son état actuel. Le problème posé n’est
pas trivial, il comporte quatre parties prédéfinies, imposées par l’environnement du carter : une
partie de fixation donc une face complète est supposée fixe (en x = 0), et de trois paliers. Je note F1,
F2 et F3 les efforts respectifs appliqués sur les paliers 1, 2 et 3 du carter du réducteur, le Figure 2
reprend les valeurs des efforts dans le repère global.
��� ���� ���
�� �� ��
�� � ��
�� � �
Figure 2 : récapitulatif des composantes des efforts appliqués sur la structure
Supposons que la connaissance de l’environnement de ce carter soit connue et que nous possédons
des parties imposées (la partie de fixation et les paliers). En Figure 3 est représenté une vue
isométrique du maillage tridimensionnel (19 210 tétraèdres) des parties imposées du carter.
Figure 3 : maillage adjoint généré sous CATIA
x y
z
Palier n°1
Palier n°2
Palier n°3
Fixation
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Utilisation du code 9
Connaissant ces restrictions géométriques, je définis la zone admissible de design du corps du
carter, elle est représentée en Figure 4. Ce domaine prend en compte les évidements pour : les
axes des arbres traversant les paliers, les zones à laisser libre pour le passage des vis etc. Il fait
210x185x185 mm et est composé de 28 177 hexaèdres.
Figure 4 : la zone d’optimisation & le maillage adjoint visualisé sous Gmsh
Les différents paramètres d’optimisation son fixé à la vue des indications de SIGMUND et BENSOE,
la pénalisation et de 3 (dicté par les caractéristiques du matériau et de la dimension de
modélisation) et le rayon de régulation de 9 mm (dicté par la taille des éléments ici 5x5x5 mm).
La fraction volumique est fixée à 0.1 compte tenu de la masse désirée du carter de 2 Kg. Les
densités sont initialisées en fonction de la fraction volumique et de la taille globale du domaine de
définition. C'est-à-dire que la densité de chaque hexaèdre est recalculer pour qu’il y ait 10% de
matière dans le domaine global qui fait 210x185x185 mm et ceci en tenant compte des zones
évidées et des zones de densité fixée par l’utilisateur si il y en a.
Le nombre de matériaux est fixé à 100 pour discrétiser l’évolution « continue » de la densité. On
peut théoriquement augmenter ce nombre jusqu'à 999 avec le code proposé reste à connaître le
nombre maximum de matériaux différents pris en compte par Code_Aster. Dans la pratique,
l’utilisation de 100 matériaux donne de très bon résultat.
4.2.2. Rapport d’optimisation
L’optimisation converge en 8 itérations, le critère de convergence est fixé à 5% de la moyenne
globale de variation relative de la densité. Le temps total d’optimisation est d’un tout petit peu plus
d’une heure. La mémoire physique nécessaire s’élève à 632 Mo, aucune mémoire virtuelle n’a été
utilisée. En Figure 5 est représentée l’évolution de la compliance (énergie élastique interne totale)
en fonction des itérations successives. On constate sa continuelle diminution et sa convergence
vers 1.15 Joules après les 8 itérations.
Zone
d’optimisation Maillage
adjoint
z
y
x
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Utilisation du code 10
Figure 5 : évolution de l'énergie interne totale (Compliance)
Afin de justifier la non nécessité d’intégrer la boucle d’optimisation au solveur Code_Aster, est
représenté en Figure 6 l’évolution des différents temps de calcul selon l’étape du processus. On
constate la quasi constance des différents temps, ceci est due à la non modification du nombre de
nœuds et de mailles intervenant dans le calcul par éléments finis. On se rend compte que le temps
nécessaire à l’importation des résultats, le calcul de la nouvelle carte de densité par dichotomie et
la création et l’exportation de tous les fichiers nécessaires au lancement du calcul numérique sous
Code_Aster ne représentent pas plus 3% du temps requis à la simulation numérique à proprement
dit. C’est pourquoi aucun effort ne sera mis en œuvre lors de ce projet pour intégrer le présent
code au sein de Code_Aster pour le rendre plus rapide.
Figure 6 : répartition du temps de calcul par itération
Cependant on remarquera qu’au fur et à mesure de l’optimisation un très grand nombre de mailles
(élément) se retrouvent dans le groupe de maille représentant les mailles inactives (densité égal à
1% donc le module d’Young des éléments est multiplié par 10-6
). Si au cours de l’optimisation le
0
5
10
15
20
25
30
1 2 3 4 5 6 7 8
En
erg
ie i
nte
rne
to
tale
en
J
n° de l'itération
0
0,5
1
1,5
2
2,5
3
3,5
4
4,5
0
50
100
150
200
250
300
350
400
450
1 2 3 4 5 6 7 8
rati
o e
n %
Te
mp
s e
n s
eco
nd
es
n° de l'itérationCalcul sous Code_Aster
Echange de données & boucle d'optimisation
Ratio temps d'optimisation / temps résoltion du problème statique
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Utilisation du code 11
code pouvait désactiver complètement ces mailles en ne les déclarant pas pour le calcul par
élément fini un temps considérable pourrait être gagné à chaque itération. A titre d’exemple pour
l’optimisation du carte présenté ici, 17 045 mailles sur 28 177 aurait put être désactivées pour le
calcul de la dernière itération. Cette remarque motivera les prochaines améliorations à apporter au
présent code.
4.2.3. Exploitation des résultats
Le résultat obtenu est sous forme de carte tridimensionnelle de densité de matière au sein de la
structure étudiée. Il convient d’observer ce résultat de différente manière, on peut dans un premier
temps de manière très simple n’afficher que les éléments de densité unitaire, voir Figure 7.
Figure 7 : Résultat de l’optimisation après 8 itérations : représentation sous Gmsh des mailles de densité unitaire
Evidement le résultat obtenu n’est en aucun cas le design final de la pièce, il va falloir maintenant
s’appuyer sur cette répartition de matière pour concevoir le design final.
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Utilisation du code 12
La représentation brute par segmentation des groupes (telle que représentée en Figure 7) ne
permet pas de prendre en compte l’évolution graduelle des densités du à l’adaptation de
sensibilité. Il est donc plus avantageux de représenter le résultat obtenu sous forme d’iso-surface
de densité. Cette iso-surface est réalisée directement par la méthode du « marching cube » déjà
implémenté dans Matlab, ma seule contribution à été de réécrire cette surface triangulée au
format STL pour pouvoir l’importer dans des logiciels de CAO.
Figure 8 : iso-surface du volume de densité importé dans CATIA avec les parties prédéfinies du carter
Une fois cette surface résultat importée dans un logiciel de CAO comme en Figure 8, on peut
concevoir la pièce en fonction de ce résultat et des contraintes technologique que l’on se fixe. Ici le
carter est une pièce moulée étanche (pas de trous), donc l’épaisseur des parois est comprise en 2
et 5 mm (contraintes de fonderie). Grace au résultat de l’optimisation on va pouvoir placer les
nervures et renfort du carter en connaissance de cause et sans aucun a priori. Evidement pour
inclure les contraintes technologique et les contraintes liées à la CAO (simplicité des forme de
pièce) le design final va différer de la solution optimale. Cependant en suivant les indications
apportées par le résultat de l’optimisation topologique on va voir qu’à la première itération de
design (première version de la pièce) les résultats de vérification sont déjà très satisfaisants.
Lors de l’étape de reconstruction de la pièce en fonction du résultat sous forme STL la qualité du
concepteur et son habilité à concevoir de pièces complexe sous un logiciel de CAO vont être
primordiale pour obtenir un résultat cohérent et performant. Dans mon cas la reconstruction de ce
carter à quasiment pris une journée entière pour arriver à concevoir une pièce technologiquement
admissible.
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Utilisation du code 13
Figure 9 : conception proposée (en vert la surface résultante de l'optimisation)
En Figure 9, est représenté la conception proposée, j’ai décidé de réaliser un carter de 2 mm
d‘épaisseur avec des renforts intérieur de 5 mm d’épaisseur. La forme globale du carter est
obtenue directement à partir du résultat de l’optimisation (sorte d’octogone extrudé en dépouille).
Les nervures extérieurs sont elles aussi placées en fonction des indications de l’optimisation.
Figure 10 : 2 coupes de la pièce (gris) et du résultat de l’optimisation (vert)
En Figure 10, sont représentées deux coupes du carter final avec une superposition la surface
résultat de l’optimisation (en vert), ceci pour montrer la correspondance des zones plus épaisses
avec les zones de forte densité de matériau préconisées par l’optimisation. A ce stade on s’éloigne
vraiment de la forme optimale mais on doit composer avec l’ensemble des solutions admissibles.
Un concepteur plus compétant ou une durée de modélisation beaucoup plus longue aurait pu
permettre de réaliser une conception de bien meilleure qualité vis-à-vis de la solution optimale.
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Utilisation du code 14
Mais dans une première application on se contentera de cette modélisation. Le carter obtenu
rempli le principale critère qui est de peser environ 2 Kg (2 072 g exactement).
4.2.4. Validation du design
La réalisation du design final du carter tel que présenté en Figure 9 et Figure 10 à représenté plus
de 50% du temps globale de la conception du carter. Les formes utilisées, la répartition de matière
etc. ne sont ni simples, ni évidentes ; il reste à vérifier que l’effort de conception réalisé apporte des
résultats tangibles et représente un moyen efficace de concevoir des pièces performante
rapidement. Pour illustrer ces propos le modèle numérique de la pièce a été maillé finement sous
CATIA V5 et une étude statique par éléments finis comparable à celle utilisé pour l’optimisation à
été réalisée. Le maillage utilisé est représenté en Figure 11.
Figure 11 : Représentation du maillage, vue de dessus et intérieur (maillage tétraédrique taille 2 mm)
La vérification du modèle n’est pas chose facile, en effet ne possédant pas de design initial de la
pièce je ne dispose pas d’élément de comparaison pour pouvoir affirmer un gain de performance
apporter par l’utilisation de l’optimisation topologique en tant que préprocesseur de conception.
Cependant lors du design d’une pièce, on recherche à limiter au maximum les zones de
concentration de contraintes. En s’étant appuyé sur le résultat de l’optimisation topologique qui
tend à rendre homogène l’énergique interne à l’intérieure de la structure, on s’attend à retrouver
une certaine constance dans la valeur de la contrainte équivalente de Von Mises, qui elle aussi est
basée sur un critère de type énergétique.
En réalisant la simulation statique on s’aperçoit que la variation de la contrainte de Von Mises est
assez faible, moins de 10 MPa pour un alliage qui à une limite élastique à 0.2% de 100 MPa. Ceci
voulant principalement dire que la masse visée aurait pu être revue à la baisse. Cependant en
prenant connaissance des résultats du calcul numérique, on se rend bien compte que la répartition
de contrainte au sein de la structure « optimisée » (excluant la zone de fixation) est étonnamment
uniforme pour le résultat d’un premier design de pièce. Evidement il reste des zones à améliorer,
comme la jonction du domaine d’optimisation et la zone de fixation, les zones de nervures
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Utilisation du code 15
extérieures (s’éloignant trop de la solution optimale), ou encore des erreurs grossières de
conception mais globalement le résultat est très satisfaisant.
Figure 12 : contrainte selon le critère de Von Mise dans le carter
En Figure 12, sont représentées les contraintes calculées selon le critère de Von Mises dans le
carter soumis exactement au cas de chargement présenté en début de ce chapitre. L’échelle de
variation des valeurs est volontairement bornée par 0.3 MPa et 3 MPa pour montrer qu’a l’intérieur
de la structure la valeur de la contrainte présentée varie extrêmement peu. Seuls deux principaux
endroits de la structure « sature » du fait de l’introduction de ces bornes, tous deux situés dans la
partie de fixation. Au marqueur n°1 l’élément de contrainte maximum (9.98 MPa) et au marqueur
n°2 une zone de contrainte très faible (environ 0.01
MPa). Hormis ses deux places aucun élément du
maillage ne sort de l’intervalle [0.3 MPa, 3 MPa], ce qui
représente une belle performance pour un « premier
jet » en terme de modélisation.
En ce qui concerne les defaults grossiers de la
modélisation proposée, on pourrait rapidement
corriger les nervures de renfort qui ne s’appuie que sur
des zones minces du carter, favorisant l’apparition de
fortes contraintes comme montré en Figure 13. A titre
indicatif le résultat de l’optimisation topologique
proposait une tout autre répartition de matière, il
serait de bonne augure de la respecter.
4.2.5. Conclusion
La méthode utilisée dans cet exemple est assez simple à mettre en œuvre et apporte une très
grande quantité d’informations avant même la modélisation d’une pièce lors de la phase de
conception. A partir des résultats de l’optimisation topologique, la pièce modélisée se comporte
3 MPa
0.3 MPA
1 2
Erreur de conception
Figure 13 : détail des zones à améliorer faisant
l'objet d'erreurs de conception
Thomas VINCENT Optimisation de structures 24/04/2007
ENSAM – OPTIS Université de Sherbrooke
Conclusion 16
très bien vis-à-vis du chargement auquel elle est soumise, seules quelques adaptations restent à
faire localement pour finaliser le design de la pièce.
5. Conclusion
Pour démontrer la force de cette méthode il serait préférable de réétudier une pièce déjà en
fonction ; alors le gain de raideur et le gain de masse potentiellement obtenus pourraient être
comparés avec le design initial donnant des résultats plus tangibles. C’est pourquoi au fur et à
mesure de l’avancement de ce projet, je vais m’efforcer de me rapprocher de personnes
spécialisées dans la conception de pièce mécanique, pour essayer de récupérer des designs et des
cas de vérification plus concrets.
Dans ce deuxième rapport on a pu constater qu’un code implémenté en deux mois permet de très
bons résultats et peut, avec quelques considérations, devenir un outil performant d’aide à la
conception. De plus il s’appui sur un solveur numérique complètement accessible et gratuit
(licence GNU) de très grande qualité.
Cependant le code dans son état actuel possède un grand nombre de limites, certaines sont déjà
résolues comme la prise en compte de multi-chargement, ou la diversification des maillages
utilisable comme support d’optimisation. Dans l’état actuel des choses le présent code peut être
utilisé comme préprocesseur dans un très grand nombre de cas industriels réels qui reste simple
d’un point de vu critère de validation. Le modèle de résolution utilisé précédemment était tout
simplement un calcul de cas statique pour des raisons de simplicité de mise en œuvre sous
Code_Aster.
J’aimerais faire remarquer que sans aucune modification sur le code utilisé ici on peut imaginer un
modèle beaucoup plus complexe introduisant de la non-linéarité (contact etc.), des forces
volumiques dépendant de la densité ou non (pesanteur, champs électromagnétique etc.), les
gradients de température dans la pièce ou encore le résulta d’une étude modale. Il faut
« seulement » créer un cas d’étude complexe (fichier commande et chargement à revoir) la seule
contrainte étant de fournir en résultat de la simulation la carte des énergies interne des éléments
du domaine d’optimisation sous forme d’un ficher « energie.resu ». Je laisse cette tache aux
personnes maitrisant Code_Aster bien mieux que moi.