fini ! eventuell noch offene Processors beenden /clear,all ! Arbeitsbereich säubern /title,Rechteckplatte (Shell93) momentenfeste Randeinspannung und 1 Piezoelement /FILNAME,platte_shell93_momentenfest_1piezo,0 /units,mks ! Datenbank mit MKS Einheiten versehen ! Parameter definieren lx = 1.2 ! Plattenlänge ly = 1.0 ! Plattenbreite lz = 0.025 ! Plattendicke ! Willkürliche Definition der Piezoelementdimensionen plx = 0.08 ! Piezolänge ply = 0.05 ! Piezobreite plz = 0.005 ! Piezodicke ! ========================================================================================= ! Preprocessor aufrufen /prep7 ! Notwendige Elementtypen anlegen et,1,shell93 ! Definition des Elementtyps der Platte zu Shell93 r,1,lz,lz,lz,lz,,, ! Shelldicke gleich Plattendicke setzen et,2,solid226,1001 ! Elementtyp der Piezopatches et,3,174 ! Elementtyp der Kontaktfläche zw. Piezo & Platte keyopt,3,1,5 ! FHG einstellen: x,y,z,volt keyopt,3,4,1 keyopt,3,5,1 ! Lücken schließen bei Auslenkung keyopt,3,9,3 ! Anfangsdurchdringung/offset: nur Offset keyopt,3,11,1 ! Einfluss der Shelldickeberücksichtigen: ja keyopt,3,12,5 ! Verhalten der Kontaktfläche: immer verbunden et,4,170 ! Elementtyp der Zielfläche Piezo & Platte keyopt,4,5,1 ! Art der RB: Solid-Solid (Rot FHG sind frei) ! Notwendige Materialeigenschaften definieren ! Materialkenndaten der Platte definieren (hier: Alu) mp,ex,1,0.705e11 ! E-Modul mp,dens,1,2.7e3 ! Dichte mp,nuxy,1,0.33 ! Querkontraktionszahl mp,damp,1,,0.001 ! Materialdämpfung ! Materialeigenschaften des Piezoelements mp,dens,2,7750 ! Dichte [kg/m^3] sE11=16.4e-12 ! [m^2/N] sE12=-5.74e-12 ! [m^2/N] sE13=-7.22e-12 ! [m^2/N] sE33=18.8e-12 ! [m^2/N] sE44=47.5e-12 ! [m^2/N] sE66=(sE11-sE12)*2 ! [m^2/N] d31=-171e-12 ! [C/N] d33=374e-12 ! [C/N] d15=584e-12 ! [C/N] epsS_1=1730 ! Permittivität in x-Richtung [F/m] epsS_3=1700 ! Permittivität in z-Richtung [F/m] ! Nachgiebigkeitsmatrix für einen Piezopatch tb,anel,2,1,,1 tbdata,1 ,sE11,sE12,sE13,0 ,0 ,0 tbdata,7 ,sE11,sE13,0 ,0 ,0 tbdata,12 ,sE33,0 ,0 ,0 tbdata,16 ,sE66,0 ,0 tbdata,19 ,sE44,0 tbdata,21 ,sE44 ! Piezoelectric strain matrix [d] tb,piez,2,,,1 tbdata, 1 , 0 ,0 ,d31 tbdata, 4 , 0 ,0 ,d31 tbdata, 7 , 0 ,0 ,d33 tbdata,10 , 0 ,0 ,0 tbdata,13 , 0 ,d15,0 tbdata,16 , d15,0 ,0 ! Permittivitäten des Piezopatches mp,perx,2,epsS_1 mp,pery,2,epsS_1 mp,perz,2,epsS_3 ! ========================================================================================= ! Geometrieerzeugung und Meshing ! ================== ! Platte mit Abmessungen lx,ly generieren /view,1,1,2,3 ! Hübsche Perspektive einstellen blc4,0,0,lx,ly ! Fläche erzeugen mit Ursprung in 0/0 und lx/ly Abmessungen keyopt,1,5,1 ! keyopt,1,8,2 ! ! ================== ! Platte meshen elemsize = 0.05 ! Elementgröße für Meshing (in m) nx = lx/elemsize ! Anzahl Elemente in x-Richtung ny = ly/elemsize ! Anzahl Elemente in y-Richtung nz = lz/elemsize ! Anzahl Elemente in z-Richtung esize,elemsize,0, ! Setzen der globalen Elementgröße mshape,0,2D mshkey,1 cm,_Y,AREA asel,,,,1 cm,_Y1,AREA chkmsh,'AREA' cmsel,s,_Y type,1 mat,1 real,1 amesh,_Y1 ! ================== ! Piezo mit den Abmessungen plx, ply, plz an der Position (2/3)*lx / ly/3 generieren !blc5,4*lx/5,ly/8,plx,ply,plz block,4*lx/5,4*lx/5+plx,ly/8,ly/8+ply,lz/2,lz/2+plz ! Piezo meshen ESIZE,plz/2,0, ! Elementgröße auf Piezo zu plz/2 festlegen CM,_Y,VOLU VSEL,,,,1 CM,_Y1,VOLU CHKMSH,'VOLU' CMSEL,S,_Y VMESH,_Y1 ! Plattendicke des Shellelements darstellen /eshape,1,0 /replot ! Contact-Element auf Platte erzeugen asel,s,,,1 type,3 real,2 esurf ! Target-Element auf Piezoelement-Unterseite erzeugen asel,s,,,2 type,4 real,2 esurf allsel ! Parametrische Definition der Elektrode am unteren Rand v. Piezo 1 (z=lz/2) allsel vsel,all nslv,r,1 nsel,r,loc,z,lz/2 cp,next,volt,all *get,el_u1,node,,num,min *get,NumNdElu1,node,0,count ! Parametrische Definition der Elektrode am oberen Rand von Piezo 1 (z=plz) allsel vsel,all nslv,r,1 nsel,r,loc,z,lz/2+plz cp,next,volt,all *get,el_o1,node,,num,min *get,NumNdElo1,node,,count