> restart:#"m17_p43"

En los datos de una planta de potencia de ciclo combinado que produce 250 MW en la turbina de gas y 130 MW en la de vapor, figura un consumo de gas de 1,7 MMCD. Para comprobar si MMCD significa millones de metros cúbicos día, se van a suponer unos datos típicos: para el ciclo de gas, Tmax=1600 K, pmax=2 MPa, y rendimientos isentrópicos del 85%; para el ciclo de vapor, Tmax=700 K, pmax=10 MPa, pmin=5 kPa, y rendimientos isentrópicos del 85%. Se pide:
a) Esquema de los procesos en un diagrama T-s.
b) Flujo de aire.
c) Flujo de vapor.
d) Flujo de combustible, y comparación con el valor dado.

Datos:

> read"../therm_eq.m":read"../therm_chem.m":with(therm_proc):with(therm_chem):

> su1:="Aire":su2:="H2O":su3:="CH4":dat:=[WTG=250e6*W_,WTV=130e6*W_,T3g=1600*K_,p2=2e6*Pa_,eta=0.85,T3v=700*K_,p3=10e6*Pa_,p4=5e3*Pa_];

Typesetting:-mprintslash([dat := [WTG = `+`(`*`(0.250e9, `*`(W_))), WTV = `+`(`*`(0.130e9, `*`(W_))), T3g = `+`(`*`(1600, `*`(K_))), p2 = `+`(`*`(0.2e7, `*`(Pa_))), eta = .85, T3v = `+`(`*`(700, `*`(K...

Eqs. const.:

> Adat:=get_gas_data(su1):Wdat:=gamma=1.33,get_gas_data(su2),get_liq_data(su2):Fdat:=get_gas_data(su3):dat:=op(dat),Wdat,Const,SI2,SI1:get_pv_data(su2):

Image

a) Esquema de los procesos en un diagrama T-s.

(Ver figura.)
b) Flujo de aire.

> eqBETG:=WTG=ma*c[pa]*(T3g-T4g-T2g+T1g);T1g:=T0;eq5_59;T2sg:=T1g*(p2/p0)^((gamma-1)/gamma);T2sg_:=subs(Adat,dat,%);T2g:=T1g*(1+((p2/p0)^((gamma-1)/gamma)-1)/eta);T2g_:=subs(Adat,dat,%);eq5_60;T4sg:=T3g*(p0/p2)^((gamma-1)/gamma);T4sg_:=subs(Adat,dat,%);T4g:=T3g*(1-eta*((1-(p0/p2)^((gamma-1)/gamma))));T4g_:=subs(Adat,dat,%);ma_:=subs(Adat,dat,WTG/(c[p]*(T3g-T4g_-T2g_+T1g)));

Typesetting:-mprintslash([eqBETG := WTG = `*`(ma, `*`(c[pa], `*`(`+`(T3g, `-`(T4g), `-`(T2g), T1g))))], [WTG = `*`(ma, `*`(c[pa], `*`(`+`(T3g, `-`(T4g), `-`(T2g), T1g))))])
Typesetting:-mprintslash([T1g := T0], [T0])
eta = `/`(`*`(`+`(`^`(pi[12], `/`(`*`(`+`(gamma, `-`(1))), `*`(gamma))), `-`(1))), `*`(`+`(`/`(`*`(T2), `*`(T1)), `-`(1))))
Typesetting:-mprintslash([T2sg := `*`(T0, `*`(`^`(`/`(`*`(p2), `*`(p0)), `/`(`*`(`+`(gamma, `-`(1))), `*`(gamma)))))], [`*`(T0, `*`(`^`(`/`(`*`(p2), `*`(p0)), `/`(`*`(`+`(gamma, `-`(1))), `*`(gamma)))...
Typesetting:-mprintslash([T2sg_ := `+`(`*`(677.8357044, `*`(K_)))], [`+`(`*`(677.8357044, `*`(K_)))])
Typesetting:-mprintslash([T2g := `*`(T0, `*`(`+`(1, `/`(`*`(`+`(`^`(`/`(`*`(p2), `*`(p0)), `/`(`*`(`+`(gamma, `-`(1))), `*`(gamma))), `-`(1))), `*`(eta)))))], [`*`(T0, `*`(`+`(1, `/`(`*`(`+`(`^`(`/`(`...
Typesetting:-mprintslash([T2g_ := `+`(`*`(746.6037699, `*`(K_)))], [`+`(`*`(746.6037699, `*`(K_)))])
eta = `/`(`*`(`+`(1, `-`(`/`(`*`(T4), `*`(T3))))), `*`(`+`(1, `-`(`^`(`/`(`*`(p4), `*`(p3)), `/`(`*`(`+`(gamma, `-`(1))), `*`(gamma)))))))
Typesetting:-mprintslash([T4sg := `*`(T3g, `*`(`^`(`/`(`*`(p0), `*`(p2)), `/`(`*`(`+`(gamma, `-`(1))), `*`(gamma)))))], [`*`(T3g, `*`(`^`(`/`(`*`(p0), `*`(p2)), `/`(`*`(`+`(gamma, `-`(1))), `*`(gamma)...
Typesetting:-mprintslash([T4sg_ := `+`(`*`(680.1648201, `*`(K_)))], [`+`(`*`(680.1648201, `*`(K_)))])
Typesetting:-mprintslash([T4g := `*`(T3g, `*`(`+`(1, `-`(`*`(eta, `*`(`+`(1, `-`(`^`(`/`(`*`(p0), `*`(p2)), `/`(`*`(`+`(gamma, `-`(1))), `*`(gamma)))))))))))], [`*`(T3g, `*`(`+`(1, `-`(`*`(eta, `*`(`+...
Typesetting:-mprintslash([T4g_ := `+`(`*`(818.1400971, `*`(K_)))], [`+`(`*`(818.1400971, `*`(K_)))])
Typesetting:-mprintslash([ma_ := `+`(`/`(`*`(769.9420596, `*`(kg_)), `*`(s_)))], [`+`(`/`(`*`(769.9420596, `*`(kg_)), `*`(s_)))])

i.e. se necesitan unos 770 kg/s de aire en la TG.

(Ya podríamos calcular el gasto de combustible, porque sólo se consume en la TG.)

c) Flujo de vapor.

> eqBEBoiler:='ma*c[pa]*(T4g-T5g)=mv*(h3-h2)';Tv=T[v](p3);Tv_:=evalf(subs(dat,solve(p3=pv(T),T)));h3v_:=subs(Wdat,T=T3v,dat,hv(T));Tc=T[v](p4);Tc_:=evalf(subs(dat,solve(p4=pv(T),T)));h2v_:=subs(Wdat,T=Tc_,dat,hl(T));T5g=Tv;mv_:=subs(Adat,ma_*c[p]*(T4g_-Tv_)/(h3v_-h2v_));eqWTV:=WTVmax=mv*(h3-h4);wet_vap(subs(dat,T3v),subs(dat,p3),subs(dat,p4));h4v_:=subs(dat,h3v_-(h3v_-h4s_)*eta);eqWTV_:=subs(mv=mv_,h3=h3v_,h4=h4v_,dat,eqWTV);

Typesetting:-mprintslash([eqBEBoiler := `*`(ma, `*`(c[pa], `*`(`+`(T4g, `-`(T5g))))) = `*`(mv, `*`(`+`(h3, `-`(h2))))], [`*`(ma, `*`(c[pa], `*`(`+`(T4g, `-`(T5g))))) = `*`(mv, `*`(`+`(h3, `-`(h2))))])
Tv = T[v](p3)
Typesetting:-mprintslash([Tv_ := `+`(`*`(582.6814535, `*`(K_)))], [`+`(`*`(582.6814535, `*`(K_)))])
Typesetting:-mprintslash([h3v_ := `+`(`/`(`*`(3345776.0, `*`(J_)), `*`(kg_)))], [`+`(`/`(`*`(3345776.0, `*`(J_)), `*`(kg_)))])
Tc = T[v](p4)
Typesetting:-mprintslash([Tc_ := `+`(`*`(305.9022088, `*`(K_)))], [`+`(`*`(305.9022088, `*`(K_)))])
Typesetting:-mprintslash([h2v_ := `+`(`/`(`*`(137531.2328, `*`(J_)), `*`(kg_)))], [`+`(`/`(`*`(137531.2328, `*`(J_)), `*`(kg_)))])
T5g = Tv
Typesetting:-mprintslash([mv_ := `+`(`/`(`*`(56.73341166, `*`(kg_)), `*`(s_)))], [`+`(`/`(`*`(56.73341166, `*`(kg_)), `*`(s_)))])
Typesetting:-mprintslash([eqWTV := WTVmax = `*`(mv, `*`(`+`(h3, `-`(h4))))], [WTVmax = `*`(mv, `*`(`+`(h3, `-`(h4))))])
`Point 4s inside wet bell`, [x4s_ = .77, h4s_ = `+`(`/`(`*`(0.20e7, `*`(J_)), `*`(kg_))), s3_ = `+`(`/`(`*`(0.65e4, `*`(J_)), `*`(kg_, `*`(K_))))]
Typesetting:-mprintslash([h4v_ := `+`(`/`(`*`(2187944.971, `*`(J_)), `*`(kg_)))], [`+`(`/`(`*`(2187944.971, `*`(J_)), `*`(kg_)))])
Typesetting:-mprintslash([eqWTV_ := WTVmax = `+`(`*`(65687704.40, `*`(W_)))], [WTVmax = `+`(`*`(65687704.40, `*`(W_)))])

i.e. se podrían generar hasta 57 kg/s de vapor, que al turbinarlos darían unos 66 MW, algo más si se optimiza el ciclo de vapor con algunas extracciones y se aprovecha aún más los gases de escape, pero no es posible obtener los 130 MW en la TV. Debe haber un error en los datos.

d) Flujo de combustible, y comparación con el valor dado.

> eqBECCTG:='ma*c[pa]*(T3g-T2g)=mf*PCI';eqC:=CH4+2*O2=CO2+2*H2O;PCI_:=PCI(eqC);PCIm_:=subs(Fdat,%/M);mf_:=subs(Adat,dat,ma_*c[p]*(T3g-T2g_)/PCIm_);Vf_:=subs(Fdat,dat,mf_*R*T[tr]/p0);Vf__:=%*86400*s_/d_;

Typesetting:-mprintslash([eqBECCTG := `*`(ma, `*`(c[pa], `*`(`+`(T3g, `-`(T2g))))) = `*`(mf, `*`(PCI))], [`*`(ma, `*`(c[pa], `*`(`+`(T3g, `-`(T2g))))) = `*`(mf, `*`(PCI))])
Typesetting:-mprintslash([eqC := `+`(CH4, `*`(2, `*`(O2))) = `+`(CO2, `*`(2, `*`(H2O)))], [`+`(CH4, `*`(2, `*`(O2))) = `+`(CO2, `*`(2, `*`(H2O)))])
Typesetting:-mprintslash([PCI_ := `+`(`/`(`*`(802310.00, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(802310.00, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([PCIm_ := `+`(`/`(`*`(50144375.00, `*`(J_)), `*`(kg_)))], [`+`(`/`(`*`(50144375.00, `*`(J_)), `*`(kg_)))])
Typesetting:-mprintslash([mf_ := `+`(`/`(`*`(13.15589064, `*`(kg_)), `*`(s_)))], [`+`(`/`(`*`(13.15589064, `*`(kg_)), `*`(s_)))])
Typesetting:-mprintslash([Vf_ := `+`(`/`(`*`(18.67357182, `*`(`^`(m_, 3))), `*`(s_)))], [`+`(`/`(`*`(18.67357182, `*`(`^`(m_, 3))), `*`(s_)))])
Typesetting:-mprintslash([Vf__ := `+`(`/`(`*`(1613396.605, `*`(`^`(m_, 3))), `*`(d_)))], [`+`(`/`(`*`(1613396.605, `*`(`^`(m_, 3))), `*`(d_)))])

i.e. el consumo estimado con las suposiciones anteriores sería de 1,6 millones de metros cúbicos por día, en condiciones normales de 100 kPa y 273 K, luego sí es razonable suponer que 1,7 MMCD=1,7 millones de metros cúbicos día.

>