* fichier waam2.dgibi * section : thermique conduction convection mecanique plastique *----------------------------------------------------------------------* * W A A M 2 . D G I B I * *----------------------------------------------------------------------* * Objet : * ------- * * Exemple de simulation thermomecanique d'un depot de matiere WAAM. * L'exemple simule la realisation d'un "mur" sur la tranche d'une tole * en acier inox (donnees 316L issues de la litterature, ref. fournie). * * On modelise la conduction, la convection avec le milieu ambiant * et la source de chaleur selon une distribution gaussienne. * * Le comportement mecanique est elastoplastique avec un ecrouissage * isotrope. * * L'apport de matiere est defini a l'aide d'un chargement de nom MODE * qui decrit l'evolution du modele au cours du temps. Un chargement de * nom MATE definit celle de ses caracteristiques. * * La modelisation fait appel aux procedures SOUDAGE et WAAM pour * definir la sequence de soudage et la mailler. * * On resout la thermique et la mecanique separemment, par deux appels * successifs a la procedure PASAPAS. * * Ce cas-test sert de cas de validation de la prise en compte de la * FUSION du materiau dans le calcul du comportement. Pour cela, on verifie * que les variables internes sont nulles aux pts d'integration ou T > Tfus * a l'aide de la procedure PERSO1. * * Il sert egalement de cas de validation de l'initialisation du * comportement mecanique lors d'un pas d'apport de matiere. Pour cela, * on sauvegarde la deformation initiale a chaque pas d'apport de matiere * (indice DEFORMATIONS_APPORT en sortie de PASAPAS) et on verifie que * la loi de Hooke est satisfaite. On doit avoir : * * Sig = C : (EpsT - EpsP - EpsTh - EpsAp) * * Sig : contrainte * C : tenseur de Hooke * EpsT : deformation totale, derivee du deplacement * EpsP : deformation plastique * EpsTh : deformation thermique * EpsAp : deformation initiale de l'apport de matiere * * Enfin, ce cas-test illustre egalement la donnee du chargement TAPP, * definissant la temperature initiale de l'apport de matiere, calculee * pour satisfaire la conservation de l'energie au cours de l'analyse * thermique. * * Description : * ------------- * * Type de calcul : Thermique, Mecanique * Mode de calcul : 3D * Type d'element : CUB8 * Chargement : Source de chaleur, Convection, Apport de matiere * *----------------------------------------------------------------------* * * icomplet = vrai : simulation de 10 passes de couches WAAM * icomplet = faux : 10 premiers pas de temps * ivalid : mettre a vrai pour verifier mise a zero EPIN et VARINT avec PERSO1 icomplet = faux ; ivalid = vrai ; * ig1 : mettre a vrai pour affichages ig1 = faux ; *opti trac psc eptr 5 ; *----------------------- Parametres du probleme -----------------------* * Parametres geometrie : * lw1 : longueur faite en WAAM * ls1 : longueur support * hs1 : hauteur support * e1 : epaisseur de la plaque lw1 = 80.e-3 ; ls1 = 124.e-3 ; hs1 = 50.e-3 ; e1 = 6.e-3 ; * Position thermocouples : * Bord deport WAAM initial en (0 0 0) : TC1 = 40.e-3 0 -3.e-3 ; TC2 = 40.e-3 0 -5.e-3 ; TC3 = 0.e-3 0 -25.e-3 ; TC4 = 80.e-3 0 -10.e-3 ; * Parametres apport de chaleur : * Us1 : tension electrique de soudage (V) 1ere couche * Us2 : tension electrique de soudage (V) couches suivantes * Is1 : intensite electrique soudage (A) 1ere couche * Is2 : intensite electrique soudage (A) couches suivantes * Vs1 : vitesse de soudage (m/s) * Eta1 : rendement de la source * R0 : rayon de la distribution Gaussienne Us1 = 15.0 ; Us2 = 13.0 ; Is1 = 120. ; Is2 = 100. ; Vs1 = 0.30 / 60. ; Eta1 = 0.8 ; R0 = 3.e-3 ; * Parametres apport de matiere : * dfil1 : diametre file (m) * vfil1 : vitesse defilement fil (m/s) 1ere passe * vfil2 : vitesse defilement fil (m/s) autres passes dfil1 = 1.2e-3 ; vfil1 = 3.2 / 60. ; vfil2 = 2.5 / 60. ; * Parametres sequence soudage : * dtini1 : delai initial avant debut deplacement torche * delai1 : delai entre 2 passes de WAAM * nbpass1: nombre de passes dtini1 = 0.8 ; delai1 = 30. ; nbpass1 = 10 ; * Parametres conditions thermiques initiales et aux limites : * Tini1 : temperature initiale (degC) * Te1 : temperature de convection (degC) * h1 : coefficient d'echange convectif (W/m2) Tini1 = 20. ; Te1 = 20. ; h1 = 20. ; *-------------------------- Proprietes 316 L --------------------------* * Ref. : * Camille Cambon, Issam Bendaoud, Sebastien Rouquette, Fabien Soulie. * "Influence of the first weld bead on strain and stress states in wire+arc additive manufacturing”. * The 12th International Seminar ”Numerical Analysis of Weldability", * Institute for Materials Science, Joining and Forming (IMAT),Sep 2018, Seggau, Austria. * hal-01954354 https://hal.archives-ouvertes.fr/hal-01954354 * * rho1 : masse volumique (kg/m3) * Tfus1 : temperature de changement de phase solide-liquide (degC) * Qlat1 : chaleur latente de fusion de l'acier (J/m3) rho1 = 7760. ; Tfus1 = 1450. ; Qlat1 = 2.e9 ; * k1 : conductivite thermique (W/m/K) en fonction de la temperature si ig1 ; fins ; * Cp1 : capacite thermique massique (J/m3) en fonction de la temperature * On derive l'enthalpie : dhdt1 = (lh2 - lh1) / 100. ; lc0 = dhdt1 * 1.e9 / rho1 ; cp1 = cp2 ; si ig1 ; tleg1 = table ; tleg1 . titre = table ; fins ; * Proprietes mecaniques 316L (dependantes de T) : * nu1 : coefficient de Poisson nu1 = 0.3 ; * Ym1 : module de Young (Pa) lym1 = prog 197000. 191500. 184000. 176500. 168000. 160000. 151500. 142500. 130000. 108000. 81500. 32000. 7400. ; lym1 = 1.e6 * lym1 ; * Sy1 : limite d'elasticite (Pa) lsy1 = 1.e6 * lsy1 ; * Alph1 : dilatation thermique (/K) lalph1 = 1.e-5 * lalph1 ; * Hx : module d'ecrouissage cinematique (Pa) lh1 = 1.e6 * lh1 ; * Courbes d'ecrouissage : repe b1 nb1 ; fin b1 ; tleg1 = legende nua1 T format '(F6.0)' ; si ig1 ; fins ; *------------------- Sequence de soudage / Maillage -------------------* * Parametres discretisation apport de matiere : * xp1 : "pas" de discetisation de l'apport de matiere en espace (m) * dz1 : increment WAAM selon (O,z) / hauteur cordon * debi1 : debit volumique de fil 1ere passe * debi2 : debit volumique de fil autres passes xp1 = e1 / 2. ; debi1 = 0.25 * dfil1 * dfil1 * pi * vfil1 ; debi2 = 0.25 * dfil1 * dfil1 * pi * vfil2 ; dz1 = debi1 / e1 / Vs1 ; dz2 = debi2 / e1 / Vs1 ; * Parametres modele source Gaussienne 3D : Qtot1 = Eta1 * Us1 * Is1 ; Qtot2 = Eta1 * Us2 * Is2 ; *Qtot1 = Qtot1 - (Qlat1 * e1 * dz1 * Vs1) ; *Qtot2 = Qtot2 - (Qlat1 * e1 * dz2 * Vs1) ; *list Qtot1 ; *list Qtot2 ; Rg1 = ((2. / 3.) ** 0.5) * R0 ; * Parametre geometrie / trajectoire : e1s2 = 0.5 * e1 ; dz1s2 = 0.5 * dz1 ; * table SOUDAGE : tso1.vitesse_de_soudage = Vs1 ; tso1.puissance_de_soudage = Qtot2 ; tso1.orientation_soudure = (0 0 1) ; tso1.diametre_de_fil = dfil1 ; tso1.vitesse_de_fil = vfil2 ; tso1.point_de_depart = (0 e1s2 dz1) ; tso1.largeur_de_passe = e1 ; * Défintion de la sequence de soudage : * Repetition sequence de 2 passes en AR : nb1 = nbpass1 / 2 ; sino ; nb1 = (nbpass1 - 1) / 2 ; fins ; repe b1 nb1 ; si (&b1 ega 1) ; sino ; soudage tso1 depla couche pause delai1 ; fins ; soudage tso1 depla couche pause delai1 ; fin b1 ; fins ; si ig1 ; fins ; * Maillage du Mur : * On teste la donnee d'un LISTREEL pour la discretisation en espcace ne1 = 5 ; si ig1 ; tmai1 = twa1.evolution_maillage.maillage ; fins ; * Maillage du support sous-jacent : me1 = -1. * e1 ; mdz1 = -1. * dz1 ; dx1 = (ls1 - lw1) * 0.5 - e1 ; me1 = -1. * e1 ; xmin2 = xmin1 + me1 ; zmin2 = zmin1 + me1 ; de1 = 0.5 * e1 ; de2 = 6.2e-3 ; sup0 = sup1 et sup2 ; mail1 = sup0 et mur1 ; si ig1 ; fins ; *------------- Accrochage DDL thermique maillage support --------------* * Relation cinematique DDL mecanique entre maillages non conformes : * Encastrement bord plaque support : * Relation cinematique DDL thermique entre maillages non conformes : * Surface interface maillages support non-conformes : si ig1 ; fins ; *--------------------- Modele / Caracteristique -----------------------* * Conduction / Convection : mod1 = mod1 et mod1b ; mat1 = mat1 et mat1b ; * Source thermique : evqt1 = tso1.evolution_puissance ; evxs1 = tso1.evolution_deplacement ; * Mecanique : * Tables d'evolution des modeles et caracteristiques : ttps1 = twa1.evolution_maillage.temps ; tmai1 = twa1.evolution_maillage.maillage ; lmod1 = enum ; lmod2 = enum ; lmod3 = enum ; lmod4 = enum ; lmat1 = enum ; lmat2 = enum ; lmat3 = enum ; lmat4 = enum ; repe b1 nb1 ; tps1 = ttps1 . (&b1 - 1) ; ltps1 = ltps1 et tps1 ; geoi1 = tmai1 . (&b1 - 1) ; geoi1 = geoi1 et sup0 ; lmod1 = lmod1 et modi1 ; lmat1 = lmat1 et mati1 ; lmod2 = lmod2 et modi2 ; lmat2 = lmat2 et mati2 ; lmod3 = lmod3 et modi3 ; lmat3 = lmat3 et mati3 ; lmod4 = lmod4 et modi4 ; lmat4 = lmat4 et mati4 ; fin b1 ; * Chargements MODE / MATE : cgmod0 = cgmod1 et cgmod2 et cgmod3 ; cgmat0 = cgmat1 et cgmat2 et cgmat3 ; *----------------------------------------------------------------------* * THERMIQUE * *----------------------------------------------------------------------* * * Liste des temps de calcul : ltca0 = twa1.temps_calcules ; si (non icomplet) ; sino ; ltca1 = ltca0 ; fins ; *-------------------- Resolution Thermique PASAPAS --------------------* * Table PASAPAS : tab1 = table ; tab1.modele = cgmod0 ; tab1.caracteristiques = cgmat0 ; tab1.blocages_thermiques = clt1 et clt2 ; tab1.temps_calcules = ltca1 ; pasapas tab1 ; * Affichage temps de calcul : duree1 = (duree1 / 1000) ; dmin1 = (duree1 / 60) ; dsec1 = duree1 - (60 * dmin1) ; mess mot1 ; *----------------------------------------------------------------------* * MECANIQUE * *----------------------------------------------------------------------* * *-------------------------- Procedure PERSO1 --------------------------* * Verification mise a zero variables internes et def. plastique si T>Tfusion : debp perso1 tu1*table ; si (tu1.perso1_appel ega 1) ; quit perso1 ; fins ; tfus1 = tu1.data_perso1.tfusio ; * Var. Internes : var1 = masq1 * var0 lmc1 lmc0 lmc0 ; err1 = 0. ; *trac (0 1 1) 13 var1 mod1 titr ' MAJ var. inter.' ; fins ; finp ; *-------------------- Resolution Mecanique PASAPAS --------------------* * Chargement thermique : * Chargement TAPP (uniquement si modele de type chargement). * temperature apport de matiere a chaque pas d'apport pour calcul def. thermique initiale : * Table PASAPAS : tab2 = table ; tab2.modele = cgmod4 ; tab2.caracteristiques = cgmat4 ; tab2.chargement = cgt1 et cgt2 ; tab2.blocages_mecaniques = clu1 et clu2 ; tab2.temps_calcules = ltca1 ; tab2.mes_sauvegardes = table ; tab2.mes_sauvegardes.defin = vrai ; tab2.mes_sauvegardes.defap = vrai ; si icomplet ; fins ; tab2.procedure_perso1 = ivalid ; tab2.data_perso1 = table ; tab2.data_perso1.tfusio = tfus1 ; pasapas tab2 ; * Affichage temps de calcul : duree1 = (duree1 / 1000) ; dmin1 = (duree1 / 60) ; dsec1 = duree1 - (60 * dmin1) ; mess mot1 ; *------------------------ Petit post-traitement -----------------------* * Animation contrainte de von Mises : si ig1 ; si (ega vtra1 'PSC') ; fins ; repe b1 if1 ; i1 = &b1-1 ; modi1 = tab2.modeles.i1 ; depi1 = tab2.deplacements.i1 ; sigi1 = tab2.contraintes.i1 ; sigi1 = 1.e-6 * sigi1 ; def1 = def1 et defoi1 ; si (ega vtra1 'PSC') ; fins ; fin b1 ; si (neg vtra1 'PSC') ; fins ; fins ; *------------- Verif. comportement avec apport de matiere -------------* si (non ig1) ; i1 = 14 ; fins ; modi1 = tab2.modeles.i1 ; sigi1 = tab2.contraintes.i1 ; depi1 = tab2.deplacements.i1 ; eini1 = tab2.deformations_inelastiques.i1 ; tpsi1 = tab2.temps.i1 ; epli1 = tab2.DEFORMATIONS_APPORT.i1 ; si ig1 ; fins ; * Test calcul comportement avec apport de matiere : fins ; *------------------ F I N W A A M 2 . D G I B I -----------------* fin ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales