Heat Recuperator - Combustion Efficiency

In this challenge, the efficiency of using a heat recuperator to pre-heat the air is analyzed. For that, we simulate a furnace burning methane and air mixture, and we analyze first how the pre-heating affects at the AFL, and then the total heat/work that could be extracted from the cycle. All this work is performed using Cantera.

1) Effect of preheating in the AFL.

To compute this, a simple program was written in Cantera, using the Quantity objects to create the mixtures. The program can be found attached at the end of the project.

As expected, pre-heating the air before entering the furnace makes that the adiabatic temperature of the products increases. It does it in an almost linear function. This way, the combustion can takes place sooner and not so much energy needs to be employed in heating the air, and therefore it can be used into further heating the products. This is, the products of the combustion are going to increase their temperature when the air is preheated.

2) Combustion Eficciency with Heat Recuperator

First, mention that the combustion efficiency refered here is calculated as the ratio from the Specific Q extracted from the reaction to the LHV. Assuming an adiabatic furnace,  Qout =(Enthalpy of Reactants - Enthalpy of Products), and the LHV is the max extractable energy from a chemical reaction taking place at STP.

What this means is that, hypothetically, if we keep increasing the Qout by simply increasing the preheat temperature without any constraint, efficiency can be greater than 1. However, the air preheating temperature is dependent on the exhaust temperature after the combustion, and we know that this will be less than the AFT, as there will be some work done and there will be some losses as well. Therefore a realistic estimate after certain approximations is that the exhaust temperature is set to a constant value of 1700 K. 

The above results show what was expected. Indeed preheating the air would lead to a higher efficiency in the combustion process. The outcome of any combustion is the Total Q that can be extracted from it (normally to produce Work). This shows that preheating the air would lead to higher values of this heat, or what is the same, that we don't need to work in the stechiometric relation to achieve the desired heat. Therefore, we can save in fuel by preheating the air employing a heat recuperator, and then produce combustion with less fuel than the stoichiometric.

"""
Sample code to vary the temperature of air and oxidizier individually
And find the impact of Pre-heating the air in the AFL
"""
import cantera as ct 
import matplotlib.pyplot as plt 

gas = ct.Solution('gri30.cti')


B = ct.Quantity(gas)
B.TPX = 298.15, ct.one_atm, 'CH4:1'
print(B.moles) #By default, it is the number of moles in 1g of air
print(B.mass_fraction_dict())
B.moles = 1

n = 50
Tpre_min = 298
Tpre_max = 600

for i in range (0,n):
	
	Tpre = Tpre_min + (Tpre_max-Tpre_min)*i/n
	A = ct.Quantity(gas)
	A.TPX = Tpre, ct.one_atm, {'O2':0.21, 'N2':0.79}
	phi=1
	A.moles = 2*4.76/phi #9.523

	#The following step is used to apply the molar balance
	M = A+B
	M.equilibrate('HP')
	print(M.T)
	plt.plot(Tpre,M.T,'*',color='red')

plt.xlabel('Pre-Heating Temperature [K]')
plt.ylabel('Adiabatic Flame Temperature [K]')
plt.title('Effect of the Pre-Heating in AFL')
plt.show()
"""
This programs analyzes the effect of air pre-heating into the combustion efficiency
"""
import cantera as ct 
import matplotlib.pyplot as plt 

gas = ct.Solution('gri30.cti')


#By default, it is the number of moles in 1g of air. 
R = ct.Quantity(gas)
R.TPX = 298.15,ct.one_atm,{'CH4':0.095,'O2':0.1901,'N2':0.7148}
R.moles = 2/0.21+ 1 #The total number of moles is 10.52. There is 1 mole of fuel per 9.52 of air.


P = ct.Quantity(gas)
P.TPX = 298.15,ct.one_atm,{'CO2':0.095,'H2O':0.1901,'N2':0.7148}
P.moles = 2/0.21 + 1

LHV = R.H - P.H
print(LHV)

n = 50
Tpre_min = 298
Tpre_max = 600

for i in range (0,n):
	
	phi=1 #Stechiometric combustion

	Tpre = Tpre_min + (Tpre_max-Tpre_min)*i/n
	A = ct.Quantity(gas)
	A.TPX = Tpre, ct.one_atm, {'O2':0.21, 'N2':0.79}
	A.moles = 2/0.21*phi #9.523
	M_air = A.mass	

	F = ct.Quantity(gas)
	F.TPX = 298.15,ct.one_atm,{'CH4':1}
	F.moles = 1
	M_fuel = F.mass
	
	P2 = ct.Quantity(gas)
	P2.TPX = 1700,ct.one_atm,{'CO2':0.095,'H2O':0.1901,'N2':0.7148}
	P2.moles = 2/0.21*phi + 1

	H_react_A = A.H
	H_react_F = F.H
	H_prod = P2.H

	Air_to_fuel = M_air/M_fuel

	Q = Air_to_fuel*H_react_A + H_react_F - (Air_to_fuel + 1)*(H_prod)
	Qsp = Q/M_fuel
	eff = Qsp/LHV
	plt.plot(Tpre,eff,'*',color='red')

plt.xlabel('Pre-Heating Temperature [K]')
plt.ylabel('Combustion Efficiency')
plt.title('Effect of the Pre-Heating in Combustion Efficiency')
plt.show()

Projects by Jorge Martinez

The purpose of this project is to show the effect of initial temperature and pressure in the ignition delay in a combustion process. For this purpose, a Constant Volume Reactor and the corresponding network objects are created in Cantera, and the combustion process is s Read more

The purpose of this project, is to setup and analyze a transient shock tube simulation using Converge Studio. The project will analyze how the interaction of the original shock waves and the reflected waves affect the fluid in the tube, and how the computational mesh ha Read more

The purpose of this project is to simulate the conjugate heat transfer in a pipe using Converge Studio. For this, an air flow is simulated through an aluminum pipe, which is receiveing a constant heat flux of 10,000 W/m2 at the outside wall. The objective is to understa Read more

This project objective is to simulate the Prandtl Meyer shock wave phenomena using Converge Studio. First, a quick literature review about shock waves and their boundary conditions is provided. Then , the problem is set up and solved, focusing in how the different param Read more

The purpose of this assignment is to create a Python program including a Multivariate Newton Rhapson Solver, to solve a non-linear coupled differential system. This method is really useful for stiff systems, where the explicit solver are unstable. The system of equatio Read more

The objective of this part of the project, is to simulate the transient flow through an elbow pipe with a throttle valve in the middle. This valve will be rotating from zero to 25 degrees, and then stay steady.  Case Setup. In the steady state part of the project Read more

This project purpose is to simulate the flow over an elbow body that contains a throttle using CONVERGE Studio. In this first part of the project, an steady state analysis will be set up. This means that the throttle will not move. This case helps set up the real analys Read more

This project main objective is to calculate the Adiabatic Flame Temperature using Python and Cantera. In the first part of the project, the effect of the equivalence ratio for the methane combustion in a constant volume chamber is analyzed, and the python and cantera re Read more

This projects aims to simulate a backward facing step flow using CONVERGE Studio. The flow is creating when a not reacting specie, air (23% O2 and 77% N2 in mass fraction), suffers a pressure gradient between the ends of the channel. The velocity, pressure and recirulat Read more


Loading...

The End