> restart:#"m16_p24"

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

[Ateo, Mf, PCI, PCS, eqEQ, eqMIX, eq_fit, get_hgs_data, hgs_r25, nulist, seqEBE]

Una caldera de gas natural opera con un 1,5% de oxígeno a la salida. Se pide:
a) Composición esperada a la salida y temperatura adiabática.
b) Concentración de óxido de nitrógeno a la salida suponiendo equilibrio a la temperatura adiabática.
c) Variación de los resultados anteriores al añadir una recirculación de gases de escape del 15% a 600 K.

Datos:

> fuel:=CH4;dat:=[xO2=0.015,EGR=0.15,T_EGR=600*K_];

CH4
[xO2 = 0.15e-1, EGR = .15, T_EGR = `+`(`*`(600, `*`(K_)))]

Image

Esquema:

Eqs. const.:

> dat:=op(dat),op(subs(g=g0,[Const])),SI2,SI1:

a) Composición esperada a la salida y temperatura adiabática.

Se supone que la medida del 1,5% es en base seca (i.e., por encima de la temperatura de rocío).

Relación de mezcla:

> evalf(Ateo(fuel),2);A0_:=rhs(Ateo(fuel)):eq:=eqMIX(a*fuel+a*A*(c21*O2+c79*N2)=[2,3,4,6]);eqDat:=x[O2]=subs(dat,xO2);sol1_:=fsolve(subs(eqDat,dat,{eqNX,eqBC,eqBH,eqBO,eqBN}),{a,A,x[N2],x[CO2],x[H2O]});lambda:='A/A[0]';lambda_:=subs(sol1_,A/A0_);

A[0] = 9.6
`+`(`*`(a, `*`(CH4)), `*`(a, `*`(A, `*`(`+`(`*`(c21, `*`(O2)), `*`(c79, `*`(N2))))))) = `+`(`*`(x[O2], `*`(O2)), `*`(x[N2], `*`(N2)), `*`(x[CO2], `*`(CO2)), `*`(x[H2O], `*`(H2O)))
x[O2] = 0.15e-1
{A = 10.33, a = 0.8824e-1, x[CO2] = 0.8824e-1, x[H2O] = .1765, x[N2] = .7203}
`/`(`*`(A), `*`(A[0]))
1.085

Temperatura adiabática.

> PCI_:=subs(sol1_,PCI(eq)/a);i:='i':eq15_7_2;Ta_:=rhs(subs(x[O2]=xO2,sol1_,cpComp_,dat,eq15_7_3));

`+`(`/`(`*`(0.8024e6, `*`(J_)), `*`(mol_)))
Ta = `+`(T25, `/`(`*`(a, `*`(PCI)), `*`(Sum(`*`(x[Com[i]], `*`(c[p, i])), i = 1 .. CP))))
`+`(`*`(2158., `*`(K_)))

b) Concentración de óxido de nitrógeno a la salida suponiendo equilibrio a la temperatura adiabática.

> eq:=eqEQ(N2+O2=2*NO);eqEQNO_:=evalf(subs(p=p0,T=Ta_,eq));xNOeq_:=solve(subs(x[O2]=xO2,sol1_,dat,eqEQNO_),x[NO])[1];

`/`(`*`(`^`(x[NO], 2)), `*`(x[O2], `*`(x[N2]))) = `+`(`*`(19.83, `*`(exp(`+`(`-`(`/`(`*`(0.2172e5, `*`(K_)), `*`(T))))))))
`/`(`*`(`^`(x[NO], 2)), `*`(x[O2], `*`(x[N2]))) = 0.8394e-3
0.3012e-2

i.e., como suele darse en ppm, 3000 ppm.

c) Variación de los resultados anteriores al añadir una recirculación de gases de escape del 15% a 600 K.

La relación aire / combustible no varía; simplemente se añade un gas diluyente algo caliente.

i.e.

> eq:=eqMIX(a*fuel+a*A*(c21*O2+c79*N2)+a*A*(EGR/(1-EGR))*(x[O2]*O2+x[N2]*N2+x[CO2]*CO2+x[H2O]*H2O)=[2,3,4,6]);eqDat:=x[O2]=subs(dat,xO2);sol1_:=fsolve(subs(eqDat,dat,{eqNX,eqBC,eqBH,eqBO,eqBN}),{a,A,x[N2],x[CO2],x[H2O]}):evalf(%,4);lambda:='A/A[0]';lambda_:=subs(sol1_,A/A0_);

`+`(`*`(a, `*`(CH4)), `*`(a, `*`(A, `*`(`+`(`*`(c21, `*`(O2)), `*`(c79, `*`(N2)))))), `/`(`*`(a, `*`(A, `*`(EGR, `*`(`+`(`*`(x[O2], `*`(O2)), `*`(x[N2], `*`(N2)), `*`(x[CO2], `*`(CO2)), `*`(x[H2O], `*...
`+`(`*`(a, `*`(CH4)), `*`(a, `*`(A, `*`(`+`(`*`(c21, `*`(O2)), `*`(c79, `*`(N2)))))), `/`(`*`(a, `*`(A, `*`(EGR, `*`(`+`(`*`(x[O2], `*`(O2)), `*`(x[N2], `*`(N2)), `*`(x[CO2], `*`(CO2)), `*`(x[H2O], `*...
x[O2] = 0.15e-1
{A = 10.33, a = 0.7600e-1, x[CO2] = 0.8824e-1, x[H2O] = .1765, x[N2] = .7203}
`/`(`*`(A), `*`(A[0]))
1.085

Aunque el poder calorífico no varía con la dilución de oxígeno, la temperatura adiabática sí.

Si se desprecia la entalpía de la EGR:

> PCI_:=subs(sol1_,dat,PCI(eq)/a);i:='i':eq15_7_2;Ta_:=rhs(subs(x[O2]=xO2,sol1_,cpComp_,dat,eq15_7_3));

`+`(`/`(`*`(0.8024e6, `*`(J_)), `*`(mol_)))
Ta = `+`(T25, `/`(`*`(a, `*`(PCI)), `*`(Sum(`*`(x[Com[i]], `*`(c[p, i])), i = 1 .. CP))))
`+`(`*`(1900., `*`(K_)))

y si no se desprecia:

> subs(PCI=PCI+EGR*A*c[pEGR],eq15_7_2);c[pEGR]:=sum(delta[i]*x[Comp[i]]*c[p,Comp[i]],i=1..C_);c[pEGR_]:=subs(x[O2]=xO2,cpComp_,sol1_,dat,%):'c[pEGR]'=evalf(%);Ta_:=subs(sol1_,dat,T25+a*(PCI_+EGR*A*c[pEGR_]*(T_EGR-T25))/c[pEGR_]);

Ta = `+`(T25, `/`(`*`(a, `*`(`+`(PCI, `*`(EGR, `*`(A, `*`(c[pEGR])))))), `*`(Sum(`*`(x[Com[i]], `*`(c[p, i])), i = 1 .. CP))))
`+`(`*`(x[O2], `*`(c[p, O2])), `*`(x[N2], `*`(c[p, N2])), `*`(x[CO2], `*`(c[p, CO2])), `*`(x[H2O], `*`(c[p, H2O])))
c[pEGR] = `+`(`/`(`*`(38.07, `*`(J_)), `*`(mol_, `*`(K_))))
`+`(`*`(1936., `*`(K_)))

También se podría haber hecho como una mezcla: Ta-T25=0,85(2160-298)+0,15(600-298).

> eqEQNO_:=evalf(subs(p=p0,T=Ta_,eqEQ(N2+O2=2*NO)));xNOeq_:=solve(subs(x[O2]=xO2,sol1_,dat,eqEQNO_),x[NO])[1]:'xNOeq'=evalf(%,2);

`/`(`*`(`^`(x[NO], 2)), `*`(x[O2], `*`(x[N2]))) = 0.2657e-3
xNOeq = 0.17e-2

i.e., la EGR baja la Ta de 2160 K a 1900 K (lo que puede ser favorable) y baja la contaminación de NO desde 3000 ppm a 1700 ppm (lo que es buenísimo).

>