def setUp(self):
     self.cab0 = zx.Conductor(name="CU 2/0 AWG", category=zx.CC_CU,
                              diameter=10.5, r25=0.2767)
     self.cab1 = zx.Conductor(name="COPPERWELD 3/8", category=zx.CC_CUWELD,
                              diameter=9.78, r25=1.030581)
     self.cc0 = zx.CurrentCalc(self.cab0)
     self.cc1 = zx.CurrentCalc(self.cab1)
     self.item0 = zx.OperatingItem(self.cc0,  50.0, 1)
     self.item1 = zx.OperatingItem(self.cc1, 125.0, 1)
Exemplo n.º 2
0
 def test_error_diameter(self):
     self.condmk.diameter = 0.001
     self.assertTrue(zx.CurrentCalc(self.condmk.get()))
     self.condmk.diameter = 0
     self.assertRaises(ValueError, zx.CurrentCalc, self.condmk.get())
     self.condmk.diameter = -0.001
     self.assertRaises(ValueError, zx.CurrentCalc, self.condmk.get())
Exemplo n.º 3
0
 def test_error_r25(self):
     self.condmk.r25 = 0.001
     self.assertTrue(zx.CurrentCalc(self.condmk.get()))
     self.condmk.r25 = 0
     self.assertRaises(ValueError, zx.CurrentCalc, self.condmk.get())
     self.condmk.r25 = -0.001
     self.assertRaises(ValueError, zx.CurrentCalc, self.condmk.get())
Exemplo n.º 4
0
    def test_error_alpha(self):
        self.condmk.catmk.alpha = 0.001
        self.assertTrue(zx.CurrentCalc(self.condmk.get()))

        self.condmk.catmk.alpha = 0.999
        self.assertTrue(zx.CurrentCalc(self.condmk.get()))

        self.condmk.catmk.alpha = 0
        self.assertRaises(ValueError, zx.CurrentCalc, self.condmk.get())

        self.condmk.catmk.alpha = -0.001
        self.assertRaises(ValueError, zx.CurrentCalc, self.condmk.get())

        self.condmk.catmk.alpha = 1
        self.assertRaises(ValueError, zx.CurrentCalc, self.condmk.get())

        self.condmk.catmk.alpha = 1.001
        self.assertRaises(ValueError, zx.CurrentCalc, self.condmk.get())
Exemplo n.º 5
0
    def test_defaults(self):
        # Verifica que se asignen valores por defecto al crear CurrentCalc
        cond = self.condmk.get()
        cc = zx.CurrentCalc(cond)

        self.assertEqual(cc.conductor, cond)
        self.assertEqual(cc.altitude, 300)
        self.assertEqual(cc.airVelocity, 2)
        self.assertEqual(cc.sunEffect, 1)
        self.assertEqual(cc.emissivity, 0.5)
        self.assertEqual(cc.formula, zx.CF_IEEE)
        self.assertEqual(cc.deltaTemp, 0.01)
# CRISTIAN ECHEVERRÍA RABÍ

from cer.conductor import zx
import time

#-----------------------------------------------------------------------------------------

t0 = time.clock()

cab = zx.Conductor(category=zx.CC_AAAC,
                   name="AAAC 740,8 MCM FLINT",
                   diameter=25.17,
                   r25=0.089360,
                   hcap=0.052744)
ac = zx.CurrentCalc(cab)
ac.sunEffect = 1.0

# Supongamos 2 líneas en paralelo con 70% de su transferencia nominal con sol
# Cada línea tendra una corriente Ic0 y temperatura de conductor Tc0
scc = zx.TcTimeCalc(ac, 25.0)
scc.timeStep = 1

# Usamos scc que ya tiene asociada la T° ambiente
Icnom = scc.getCurrent(50.0)
Ic0 = 0.7 * Icnom
Tc0 = scc.getTc(Ic0)

# Se produce una falla en una de las líneas y la otra se sobrecarga al doble
# La línea en servicio queda con corriente Ic1 = 2*Ic0
Ic1 = 2 * Ic0
print(Ic0, Ic1)
Exemplo n.º 7
0
    strength=11625.0,  # en Kg
    r25=0.08936,  # Resistencia a 25°C en Ohm/km
    hcap=0.05274,  # capacidad calórica
)

c2 = zx.Conductor(
    name='AAAC 740,8 MCM FLINT',
    category=zx.CC_AAAC,
    diameter=25.17,  # en mm
    area=375.4,  # en mm2
    weight=1.035,  # en Kg/m
    strength=11625.0,  # en Kg
    r25=0.08936,  # Resistencia a 25°C en Ohm/km
    hcap=0.05274,  # capacidad calórica
)

#-----------------------------------------------------------------------------------------

ac1 = cx.CurrentCalc(c1)
ac2 = zx.CurrentCalc(c2)
opi1 = cx.OperatingItem(ac1, 50, 1)
opi2 = zx.OperatingItem(ac2, 50, 1)

#bench("getTc(50, 1000)", ac1.getTc, ac2.getTc, (50, 100))
#print(" ")
#bench("getTa(60, 1000)", ac1.getTa, ac2.getTa, (60, 100))
#print(" ")
#bench("getCurrent(30)", opi2.getCurrent, opi2.getCurrent2, (30,))
#print(" ")
bench("getCurrent(30)", opi1.getCurrent, opi2.getCurrent, (30, ))
Exemplo n.º 8
0
    weight=1.035,  # en Kg/m
    strength=11625.0,  # en Kg
    r25=0.08936,  # Resistencia a 25°C en Ohm/km
    hcap=0.05274,  # capacidad calórica
)

VOLTAJE = 220.0  # kV de la línea
NSC = 1  # N° de subconductores por fase
FACTOR = 1.968  # Factor de sobrecarga
SOL = 1.0  # Efecto sol 1:Si, 0:No
TEMP_MAX_OP = 55.0  # T° maxima de operación línea
TIEMPO = 15.0  # Tiempo buscado en minutos

#-----------------------------------------------------------------------------------------

ac = zx.CurrentCalc(c1)
#print (ac.getCurrent(50, 86))
#print(ac.getTa(86, 653))
print(ac.getTa(zx.TC_MIN, 0))
#print(ac.getTc(zx.TA_MIN, 0))
ac.sunEffect = SOL

print(c1.name)
print("Temp. Diseño\t%s °C" % nform(TEMP_MAX_OP))
print("Sobrecarga\t%s %%" % nform((FACTOR - 1) * 100))
print("N° subconductores por fase\t%d" % NSC)

txtsol = "SI" if SOL else "NO"
print("Efecto Sol\t%s" % txtsol)

print
Exemplo n.º 9
0
 def setUp(self):
     self.cond = zx.Conductor("AAAC 740,8 MCM FLINT",
                              zx.CC_AAAC,
                              diameter=25.17,
                              r25=0.089360)
     self.cc = zx.CurrentCalc(self.cond)