> restart:#"m17_p07"

Una planta de potencia industrial de vapor para producir 100 MW funciona con presiones máxima y mínima de 1 MPa y 10 kPa y temperatura máxima de 500 °C. Se pide:
a) Calcular el rendimiento energético y el gasto circulante.
b) Calcular las magnitudes anteriores con las siguientes modificaciones:
c) Incluyendo un rendimiento adiabático de la turbina del 85%.
d) Incluyendo además un rendimiento adiabático de la bomba del 60%.
e) Realizando una expansión escalonada con recalentamiento, previa determinación de la presión intermedia óptima.
f) Además, se realiza un sangrado al final de dicha expansión intermedia para calentar el agua a la salida de la bomba.
g) Por último, se considera que a la salida de la bomba se instala un recuperador de calor (economizador) de los humos de escape de la caldera, con lo que se prevé poder calentar el agua hasta 80 °C.

> read`../therm_eq.m`:read`../therm_const.m`:read`../therm_proc.m`:with(therm_proc):with(plots):
su1:="H2O":dat:=[Pe=100e6*W_,p3=1e6*Pa_,p4=10e3*Pa_,T3=(500+273)*K_,p31=2e5*Pa_,eta[T]=0.85,eta[B]=0.6,Te=(80+273)*K_];

Typesetting:-mprintslash([dat := [Pe = `+`(`*`(0.100e9, `*`(W_))), p3 = `+`(`*`(0.1e7, `*`(Pa_))), p4 = `+`(`*`(0.10e5, `*`(Pa_))), T3 = `+`(`*`(773, `*`(K_))), p31 = `+`(`*`(0.2e6, `*`(Pa_))), eta[T]...

Image

> eqBE:=eq5_43;Wgdat:=get_gas_data(su1):Wldat:=get_liq_data(su1):get_pv_data(su1):dat:=op(dat),gamma=1.33,Wgdat,Wldat,Const,SI2,SI1:

Typesetting:-mprintslash([eqBE := Dh[t] = `+`(w, q)], [Dh[t] = `+`(w, q)])

a) Calcular el rendimiento energético y el gasto circulante.

Primero resolvemos los puntos del ciclo ideal sin recalentamiento ni recuperadores:

> h3=hv(T);h3_:=subs(dat,T=T3,dat,hv(T)):'h3'=evalf(%,3);wet_vap(op(subs(dat,[T3,p3,p4])));w34:=h3-h4;w34_:=h3_-h4s_:'w34'=evalf(%,2);T4=Tvp4;T4_:=subs(dat,evalf(subs(dat,solve(p4=pv(T),T)))):'T4'=evalf(%,3);'T4'=TKC(T4_);T1:=T4;h1_:=subs(dat,T=T4_,dat,hl(T)):'h1'=evalf(%,2);w12:=h2-h1;w12:=(p2-p1)/rho;w12_:=subs(dat,(p3-p4)/rho):'w12'=evalf(%,2);q23:=h3-h2;q23_:=h3_-h1_:'q23'=evalf(%,2);eqetae:=eta[e]='(w34-w12)/q23';eqetae:=eta[e]=(w34_-w12_)/q23_:evalf(%,2);eqPe:=Pe='m3*w34';m3_:=subs(dat,Pe/w34_):'m3'=evalf(%,2);

h3 = `+`(`*`(c, `*`(`+`(T[b], `-`(T[f])))), h[lv0], `*`(c[p], `*`(`+`(T, `-`(T[b])))))
h3 = `+`(`/`(`*`(0.350e7, `*`(J_)), `*`(kg_)))
`Point 4s inside wet bell`, [x4s_ = .96, h4s_ = `+`(`/`(`*`(0.25e7, `*`(J_)), `*`(kg_))), s3_ = `+`(`/`(`*`(0.78e4, `*`(J_)), `*`(kg_, `*`(K_))))]
Typesetting:-mprintslash([w34 := `+`(h3, `-`(h4))], [`+`(h3, `-`(h4))])
w34 = `+`(`/`(`*`(0.10e7, `*`(J_)), `*`(kg_)))
T4 = Tvp4
T4 = `+`(`*`(319., `*`(K_)))
T4 = `+`(`*`(45.7463173, `*`(ºC)))
Typesetting:-mprintslash([T1 := T4], [T4])
h1 = `+`(`/`(`*`(0.19e6, `*`(J_)), `*`(kg_)))
Typesetting:-mprintslash([w12 := `+`(h2, `-`(h1))], [`+`(h2, `-`(h1))])
Typesetting:-mprintslash([w12 := `/`(`*`(`+`(p2, `-`(p1))), `*`(rho))], [`/`(`*`(`+`(p2, `-`(p1))), `*`(rho))])
w12 = `+`(`/`(`*`(0.99e3, `*`(J_)), `*`(kg_)))
Typesetting:-mprintslash([q23 := `+`(h3, `-`(h2))], [`+`(h3, `-`(h2))])
q23 = `+`(`/`(`*`(0.33e7, `*`(J_)), `*`(kg_)))
Typesetting:-mprintslash([eqetae := eta[e] = `/`(`*`(`+`(w34, `-`(w12))), `*`(q23))], [eta[e] = `/`(`*`(`+`(w34, `-`(w12))), `*`(q23))])
eta[e] = .31
Typesetting:-mprintslash([eqPe := Pe = `*`(m3, `*`(w34))], [Pe = `*`(m3, `*`(w34))])
m3 = `+`(`/`(`*`(97., `*`(kg_)), `*`(s_)))

i.e. el estado 4 isoentrópico sería bifásico con x=96 %, usaría 97 kg/s de agua, y el rendimiento térmico sería del 31 %.

b) Calcular las magnitudes anteriores con las siguientes modificaciones:
c) Incluyendo un rendimiento adiabático de la turbina del 85%.

> eqetaT:=eta[T]=(h3-h4)/(h3-h4s);h4s=evalf(h4s_,2);h4_:=subs(h3=h3_,h4s=h4s_,dat,solve(eqetaT,h4)):'h4'=evalf(%,2);eqx4:=x4=(h4-h4l)/(h4v-h4l);h4l_:=subs(dat,T=T4_,dat,hl(T)):'h4l'=evalf(%,2);h4v_:=subs(dat,T=T4_,dat,hv(T)):'h4v'=evalf(%,2);x4_:=(h4_-h4l_)/(h4v_-h4l_):'x4'=evalf(%,3);

Typesetting:-mprintslash([eqetaT := eta[T] = `/`(`*`(`+`(h3, `-`(h4))), `*`(`+`(h3, `-`(h4s))))], [eta[T] = `/`(`*`(`+`(h3, `-`(h4))), `*`(`+`(h3, `-`(h4s))))])
h4s = `+`(`/`(`*`(0.25e7, `*`(J_)), `*`(kg_)))
h4 = `+`(`/`(`*`(0.26e7, `*`(J_)), `*`(kg_)))
Typesetting:-mprintslash([eqx4 := x4 = `/`(`*`(`+`(h4, `-`(h4l))), `*`(`+`(h4v, `-`(h4l))))], [x4 = `/`(`*`(`+`(h4, `-`(h4l))), `*`(`+`(h4v, `-`(h4l))))])
h4l = `+`(`/`(`*`(0.19e6, `*`(J_)), `*`(kg_)))
h4v = `+`(`/`(`*`(0.26e7, `*`(J_)), `*`(kg_)))
x4 = 1.02

¡Vaya! sale todo vapor.

> w34:=h3-h4;w34_:=h3_-h4_:'w34'=evalf(%,2);w34__:=w34_:eqetae:=eta[e]=(w34_-w12_)/q23_:evalf(%,2);etae__:=rhs(%):eqPe:=Pe='m3*w34';m3_:=subs(dat,Pe/w34_):'m3'=evalf(%,2);

Typesetting:-mprintslash([w34 := `+`(h3, `-`(h4))], [`+`(h3, `-`(h4))])
w34 = `+`(`/`(`*`(0.88e6, `*`(J_)), `*`(kg_)))
eta[e] = .26
Typesetting:-mprintslash([eqPe := Pe = `*`(m3, `*`(w34))], [Pe = `*`(m3, `*`(w34))])
m3 = `+`(`/`(`*`(0.11e3, `*`(kg_)), `*`(s_)))

i.e. con eta(T)=0,85, se necesitan 110 kg/s de agua y el rendimiento cae a un 21 %.

d) Incluyendo además un rendimiento adiabático de la bomba del 60%.

No influirá prácticamente nada porque el consumo de las bombas es mucho menor que los demás términos:

> w12:=(p2-p1)/(eta[B]*rho);w12_:=subs(dat,(p3-p4)/(eta[B]*rho)):'w12'=evalf(%,2);

Typesetting:-mprintslash([w12 := `/`(`*`(`+`(p2, `-`(p1))), `*`(eta[B], `*`(rho)))], [`/`(`*`(`+`(p2, `-`(p1))), `*`(eta[B], `*`(rho)))])
w12 = `+`(`/`(`*`(0.17e4, `*`(J_)), `*`(kg_)))

i.e. la bomba pasa de consumir 0,99 kJ/kg a consumir 1,7 kJ/kg, despreciable igualmente frente a los 880 kJ/kg de la turbina.

e) Realizando una expansión escalonada con recalentamiento, previa determinación de la presión intermedia óptima.

Lo normal es que sea del orden de sqrt(p3*p4), o la pv(Tv3+Tv4)/2), pero se puede hacer barriendo todo, preferiblemente en T.

Primero hagamos la prueba Tvi=Tv3+Tv4)/2, pv(Tvi) y luego el barrido.

Supondremos que de 3 a 4 no condensa nada (modelo de gas perfecto).

> Tvi:=subs(dat,(Tv3+Tv4)/2);Tv3_:=subs(dat,evalf(subs(dat,solve(p3=pv(T),T)))):'Tv3'=evalf(%,3);Tv4=evalf(T4_,3);Tvi_:=(Tv3_+T4_)/2:'Tvi'=evalf(%,3);pvi_:=pv(Tvi_):'pvi'=evalf(%,2);T3i:=T3*(1-eta[T]*(1-(pvi/p3)^((gamma-1)/gamma)));T3i_:=subs(dat,pvi=pvi_,dat,T3i):'T3i'=evalf(%,3);T4new:=T3*(1-eta[T]*(1-(p4/pvi)^((gamma-1)/gamma)));T4new_:=subs(dat,pvi=pvi_,dat,T4new):'T4new'=evalf(%,3);'w34=c[p]*(T3-T3i+T3-T4new)';w34_:=subs(dat,c[p]*(T3-T3i_+T3-T4new_)):'w34'=evalf(%,3);eta='w34/q23';'q23=h3-h2+c[p]*(T3-T3i)';q23_:=subs(dat,h3_-h1_+c[p]*(T3-T3i_)):'q23'=evalf(%,2);etae_:=w34_/q23_:eta[e]=evalf(%,3);N:=7:for i from 1 to N-1 do Tvi_:=subs(dat,T4_+(Tv3_-T4_)*i/N);pvi_:=pv(Tvi_);T3i:=T3*(1-eta[T]*(1-(pvi/p3)^((gamma-1)/gamma)));T3i_:=subs(dat,pvi=pvi_,dat,T3i):T4new:=T3*(1-eta[T]*(1-(p4/pvi)^((gamma-1)/gamma)));T4new_:=subs(dat,pvi=pvi_,dat,T4new):w34_:=subs(dat,c[p]*(T3-T3i_+T3-T4new_)):etae_:=w34_/q23_:W34[i]:=subs(SI0,[Tvi_,w34_/1e6]):Etae[i]:=subs(SI0,[Tvi_,etae_]);print(evalf(["Tvi=",Tvi_,"pvi=",pvi_,"T3i=",T3i_,"T4=",T4new_,"w34=",w34_,"eta=",etae_],3));od:pl:=plot([[subs(SI0,[T4_,w34__/1e6]),seq(W34[i],i=1..N-1),subs(SI0,[Tv3_,w34__/1e6])],[subs(SI0,[T4_,etae__]),seq(Etae[i],i=1..N-1),subs(SI0,[Tv3_,etae__])]],T=T4_/K_..Tv3_/K_,0..1.25,color=black):pt1:=textplot([350,1,"w [kJ/kg]"]):pt2:=textplot([370,0.25,eta]):display({pl,pt1,pt2});

Typesetting:-mprintslash([Tvi := `+`(`*`(`/`(1, 2), `*`(Tv3)), `*`(`/`(1, 2), `*`(Tv4)))], [`+`(`*`(`/`(1, 2), `*`(Tv3)), `*`(`/`(1, 2), `*`(Tv4)))])
Tv3 = `+`(`*`(453., `*`(K_)))
Tv4 = `+`(`*`(319., `*`(K_)))
Tvi = `+`(`*`(386., `*`(K_)))
pvi = `+`(`*`(0.16e6, `*`(Pa_)))
Typesetting:-mprintslash([T3i := `*`(T3, `*`(`+`(1, `-`(`*`(eta[T], `*`(`+`(1, `-`(`^`(`/`(`*`(pvi), `*`(p3)), `/`(`*`(`+`(gamma, `-`(1))), `*`(gamma)))))))))))], [`*`(T3, `*`(`+`(1, `-`(`*`(eta[T], `...
T3i = `+`(`*`(530., `*`(K_)))
Typesetting:-mprintslash([T4new := `*`(T3, `*`(`+`(1, `-`(`*`(eta[T], `*`(`+`(1, `-`(`^`(`/`(`*`(p4), `*`(pvi)), `/`(`*`(`+`(gamma, `-`(1))), `*`(gamma)))))))))))], [`*`(T3, `*`(`+`(1, `-`(`*`(eta[T],...
T4new = `+`(`*`(448., `*`(K_)))
w34 = `*`(c[p], `*`(`+`(`*`(2, `*`(T3)), `-`(T3i), `-`(T4new))))
w34 = `+`(`/`(`*`(0.116e7, `*`(J_)), `*`(kg_)))
eta = `/`(`*`(w34), `*`(q23))
q23 = `+`(h3, `-`(h2), `*`(c[p], `*`(`+`(T3, `-`(T3i)))))
q23 = `+`(`/`(`*`(0.38e7, `*`(J_)), `*`(kg_)))
eta[e] = .306
[
[
[
[
[
[
Plot_2d

Puede verse que no importa mucho afinar en la temperatura intermedia, Tvi, porque el máximo es suave.

f) Además, se realiza un sangrado al final de dicha expansión intermedia para calentar el agua a la salida de la bomba.

El msangrado conviene que sea el apropiado para calentar toda el agua hasta la temperatura de cambio de fase del sangrado.

> Tvi:=subs(dat,(Tv3+Tv4)/2);Tv3_:=subs(dat,evalf(subs(dat,solve(p3=pv(T),T)))):'Tv3'=evalf(%,3);Tvi_:=(Tv3_+T4_)/2:'Tvi'=evalf(%,3);pvi_:=pv(Tvi_):'pvi'=evalf(%,2);T3i:=T3*(1-eta[T]*(1-(pvi/p3)^((gamma-1)/gamma))):T3i_:=subs(dat,pvi=pvi_,dat,T3i):'T3i'=evalf(%,3);h3i_:=subs(dat,T=T3i_,dat,hv(T)):'h3i'=evalf(%,2);eqBEHX:=lambda*(h3i-h21)=h21-h2;T21_:='Tvi';T21=TKC(Tvi_);h21_:=subs(dat,T=Tvi_,dat,hl(T)):'h21'=evalf(%,2);lambda_:=(h21_-h1_)/(h3i_-h1_):'lambda'=evalf(%,2);T4new:=T3*(1-eta[T]*(1-(p4/pvi)^((gamma-1)/gamma))):T4new_:=subs(dat,pvi=pvi_,dat,T4new):'T4new'=evalf(%,3);'w34=c[p]*(T3-T3i)+(1-lambda)*c[p]*(T3-T4new)';w34_:=subs(dat,c[p]*(T3-T3i_)+(1-lambda_)*c[p]*(T3-T4new_)):'w34'=evalf(%,3);eta='w34/q23';'q23=h3-h21';q23_:=subs(dat,h3_-h21_):'q23'=evalf(%,2);etae_:=w34_/q23_:eta[e]=evalf(%,3);

Typesetting:-mprintslash([Tvi := `+`(`*`(`/`(1, 2), `*`(Tv3)), `*`(`/`(1, 2), `*`(Tv4)))], [`+`(`*`(`/`(1, 2), `*`(Tv3)), `*`(`/`(1, 2), `*`(Tv4)))])
Tv3 = `+`(`*`(453., `*`(K_)))
Tvi = `+`(`*`(386., `*`(K_)))
pvi = `+`(`*`(0.16e6, `*`(Pa_)))
T3i = `+`(`*`(530., `*`(K_)))
h3i = `+`(`/`(`*`(0.30e7, `*`(J_)), `*`(kg_)))
Typesetting:-mprintslash([eqBEHX := `*`(lambda, `*`(`+`(h3i, `-`(h21)))) = `+`(h21, `-`(h2))], [`*`(lambda, `*`(`+`(h3i, `-`(h21)))) = `+`(h21, `-`(h2))])
Typesetting:-mprintslash([T21_ := Tvi], [Tvi])
T21 = `+`(`*`(112.6554445, `*`(ºC)))
h21 = `+`(`/`(`*`(0.47e6, `*`(J_)), `*`(kg_)))
lambda = .10
T4new = `+`(`*`(448., `*`(K_)))
w34 = `+`(`*`(c[p], `*`(`+`(T3, `-`(T3i)))), `*`(`+`(1, `-`(lambda)), `*`(c[p], `*`(`+`(T3, `-`(T4new))))))
w34 = `+`(`/`(`*`(0.110e7, `*`(J_)), `*`(kg_)))
eta = `/`(`*`(w34), `*`(q23))
q23 = `+`(h3, `-`(h21))
q23 = `+`(`/`(`*`(0.30e7, `*`(J_)), `*`(kg_)))
eta[e] = .363

Se ve la mejora que ello supone, el rendimiento pasa del 31 % al 36 %.

g) Por último, se considera que a la salida de la bomba se instala un recuperador de calor (economizador) de los humos de escape de la caldera, con lo que se prevé poder calentar el agua hasta 80 °C.

El cambio es que el sangrado ya sólo debe calentar desde T22=80 ºC hasta T21=113 ºC.

> eqBEHX:=lambda*(h3i-h21)=h21-h22;T22_:=subs(dat,Te);h22_:=subs(dat,T=T22_,dat,hl(T)):'h22'=evalf(%,2);lambda_:=(h21_-h22_)/(h3i_-h22_):'lambda'=evalf(%,2);'w34=c[p]*(T3-T3i)+(1-lambda)*c[p]*(T3-T4new)';w34_:=subs(dat,c[p]*(T3-T3i_)+(1-lambda_)*c[p]*(T3-T4new_)):'w34'=evalf(%,3);eta='w34/q23';'q23=h3-h21';q23_:=subs(dat,h3_-h21_):'q23'=evalf(%,2);etae_:=w34_/q23_:eta[e]=evalf(%,3);

Typesetting:-mprintslash([eqBEHX := `*`(lambda, `*`(`+`(h3i, `-`(h21)))) = `+`(h21, `-`(h22))], [`*`(lambda, `*`(`+`(h3i, `-`(h21)))) = `+`(h21, `-`(h22))])
Typesetting:-mprintslash([T22_ := `+`(`*`(353, `*`(K_)))], [`+`(`*`(353, `*`(K_)))])
h22 = `+`(`/`(`*`(0.33e6, `*`(J_)), `*`(kg_)))
lambda = 0.51e-1
w34 = `+`(`*`(c[p], `*`(`+`(T3, `-`(T3i)))), `*`(`+`(1, `-`(lambda)), `*`(c[p], `*`(`+`(T3, `-`(T4new))))))
w34 = `+`(`/`(`*`(0.113e7, `*`(J_)), `*`(kg_)))
eta = `/`(`*`(w34), `*`(q23))
q23 = `+`(h3, `-`(h21))
q23 = `+`(`/`(`*`(0.30e7, `*`(J_)), `*`(kg_)))
eta[e] = .373

Se ve la ganancia que supone el economizador, i.e. aprovechar el calor residual de los humos de escape de la caldera para calentar un poco el agua proveniente del condensador.

>