Dreiphasentransformator¶
Skript-Datei
--------------------------------------------------------------------------------
-- Allgemeine Einstellungen ----------------------------------------------------
--------------------------------------------------------------------------------
exit_on_error = false -- Verhalten nach Fehler
exit_on_end = true -- Verhalten nach Skriptausführung
verbosity = 2 -- Grad der Bildschirmmeldungen
--------------------------------------------------------
-- Parameterdefinition EI-Kern nach DIN 41 302 Teil 1 --
--------------------------------------------------------
a = 50
b = 40
d1 = 10
delta = 0.5
di1 = 1
di2 = 0.75
h = 3.5
Nc = 150
ur = 1000
----------------------
-- Modellerstellung --
----------------------
new_model_force("example","EI-Kern mit Luftspalt")
global_unit('mm') -- Globale Einheit (m, cm, mm)
pickdist(0.01) -- Abstand Schnappen auf Knotenpunkt
blow_up_wind(-a/2,0,a/2,b+d1) -- Fenstergröße anpassen
cosys('cartes') -- Koordinatensystem
------------------
-- Knotenketten --
------------------
ndtref=d1/10.0 -- Referenzknotenabstand
ndt(ndtref)
nc_line(0,0,a/2,0,0) -- E
nc_line_cont(a/2,b,0)
nc_line(a/2-d1,b,a/2-d1,d1,0)
nc_line_cont(d1/2,d1,0)
nc_line(d1/2,d1,d1/2,b,0)
nc_line(0,0,0,b,0)
nc_line(a/2,b+delta,a/2,b+delta+d1,0) -- I
nc_line_cont(0,b+delta+d1,0)
ndt(ndtref*0.5)
nc_line(a/2,b+delta,0,b+delta,0)
ndt(ndtref)
nc_line_cont(0,b+delta+d1,0)
if (delta>0) then -- Luftspalt
ndt(ndtref*0.5)
nc_line(a/2,b,a/2-d1,b,0)
nc_line(d1/2,b,0,b,0)
nc_line(a/2,b,a/2,b+delta,0)
nc_line(0,b,0,b+delta,0)
nc_line(a/2-d1,b,a/2-d1,b+delta,0)
nc_line(d1/2,b,d1/2,b+delta,0)
ndt(ndtref)
end
-- Bohrungen
if (h>0.0) then
nc_circle_m(a/2-d1/2+h/2,d1/2,a/2-d1/2-h/2,d1/2,a/2-d1/2,d1/2,h/2,pi*h/ndtref)
nc_circle_m(a/2-d1/2-h/2,d1/2,a/2-d1/2+h/2,d1/2,a/2-d1/2,d1/2,h/2,pi*h/ndtref)
nc_circle_m(a/2-d1/2+h/2,b+delta+d1/2,a/2-d1/2-h/2,b+delta+d1/2,a/2-d1/2,b+delta+d1/2,h/2,pi*h/ndtref)
nc_circle_m(a/2-d1/2-h/2,b+delta+d1/2,a/2-d1/2+h/2,b+delta+d1/2,a/2-d1/2,b+delta+d1/2,h/2,pi*h/ndtref)
end
hw=(a/2-1.5*d1)/2-2*di2 -- Wicklungen
nc_rec(d1/2+di2,d1+di1,d1/2+di2+hw,b-di1,"----",0)
nc_line( d1/2+di2+hw,b-di1, d1/2+di2+hw,b+delta, 0)
nc_rec(a/2-d1-di2,d1+di1,a/2-d1-di2-hw,b-di1,"----",0)
nc_line( a/2-d1-di2-hw,b-di1, a/2-d1-di2-hw,b+delta,0)
nc_rec(a/2+di2,d1+di1,a/2+di2+hw,b-di1,"----",0)
ndt(ndtref*3) -- Umhüllung
p1y=-0.15*(b+delta+d1)
p2x=(a/2+di1+hw)*1.25
p2y=1.15*(b+delta+d1)
nc_line(0,p1y,0,0,0)
nc_rec(0,p1y,p2x,p2y,"--- ",0)
nc_line(0,p2y,0,b+delta+d1,0)
--------------------------------
-- Vernetzung und Subregionen --
--------------------------------
create_mesh_se(d1/2,d1/2) -- EI-Schnitt
def_new_subreg(d1/2,d1/2,"EI","darkgreen")
create_mesh_se(a/4.0,b+delta+d1/2)
add_to_subreg(a/4.0,b+delta+d1/2)
create_mesh_se((a/2+di1+hw)*0.625,-0.075*(b+delta+d1)) -- Luft
create_mesh_se(d1/2+2*di2+hw,b)
if (delta>0) then
create_mesh_se(d1/4,b+delta/2)
create_mesh_se(a/2-d1/2,b+delta/2)
end
if (h>0.0) then -- Bohrungen
create_mesh_se(a/2-d1/2,d1/2)
create_mesh_se(a/2-d1/2,b+delta+d1/2)
end
p1x=d1/2+di2+hw/2 -- Wicklungen
p1y=(b-d1)/2+d1
create_mesh_se(p1x,p1y)
p2x=a/2-d1-di2-hw/2
p2y=(b-d1)/2+d1
create_mesh_se(p2x,p2y)
p3x=a/2+di2+hw/2
p3y=(b-d1)/2+d1
create_mesh_se(p3x,p3y)
mirror_nodechains(0,0,0,b+delta+d1) -- Modellvervollständigung
def_bcond_inf() -- Randbedingung
-----------------------
-- Materialzuweisung --
-----------------------
def_mat_fm(d1/2,d1/2,ur,120) -- Blech
-------------------------
-- Wicklungsdefinition --
-------------------------
def_new_wdg(-p3x,p3y,"cyan","Strang 1",Nc,-0.5,wo) -- Wicklungen
add_to_wdg(-p2x,p2y,wsamekey,wi,wser)
def_new_wdg(p1x,p1y,"green","Strang 2",Nc,1.0,wi)
add_to_wdg(-p1x,p1y,wsamekey,wo,wser)
def_new_wdg(p2x,p2y,"red","Strang 3",Nc,-0.5,wo)
add_to_wdg(p3x,p3y,wsamekey,wi,wser)
i1=1
for ii=1,3 do -- Strom in Wicklungen
angle = 2*(ii-2)*math.pi/3.0
def_curr_wdg(ii,i1*math.cos(angle))
end
----------------
-- Berechnung --
----------------
calc_field_single(1,restored,0.01)
color_gradation(d1/2,d1/2,tot,Habs,0,0,"example_Habs.svg")
color_gradation(d1/2,d1/2,tot,Babs,0,0,"example_Babs.svg")
save_model('cont')