Caracterización de la recirculación de gases en un reactor de lecho fluido de oxicombustión ANEXOS


Save this PDF as:
 WORD  PNG  TXT  JPG

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Caracterización de la recirculación de gases en un reactor de lecho fluido de oxicombustión ANEXOS"

Transcripción

1 ANEXOS

2 ÍNDICE ANEXOS... 1 ANEXO I DESCRIPCIÓN DE LA PLANTA DE OXICOMBUSTIÓN... 3 I.1 INSTRUMENTACIÓN DE LA PLANTA... 3 I.2 PARÁMETROS DE OPERACIÓN... 6 I.3 ESPECIFICACIONES SUGERIDAS DE LOS GASES DE ESCAPE... 6 I.4 ILUSTRACIONES DEL LECHO FLUIDO... 7 ANEXO II CARACTERÍSTICAS DE LOS COMBUSTIBLES II.1 RESULTADOS ANALÍTICOS DE LOS COMBUSTIBLES ANEXO III RESULTADOS DEL ESTUDIO DE LAS EMISIONES III.1 FORMACIÓN DEL MONÓXIDO DE CARBONO III. 2 FORMACIÓN DE LOS ÓXIDOS DE NITRÓGENO III. 3 FORMACIÓN DEL DIÓXIDO DE AZUFRE Y LA DESULFURACIÓN ANEXO IV ESTUDIO DEL BALANCE DE PARTÍCULAS ANEXO V ESTUDIO DE LA RECIRCULACIÓN V.1 ESTUDIO DE LA CONDENSACIÓN DEL VAPOR VI.1 ESTUDIO DE LA CONVERGENCIA EN LA SIMULACIÓN VI.2 VARIABLES DE LA SIMULACIÓN VI.3 PROGRAMAS DE SIMULACIÓN VI.4 AMPLIACIÓN DE LOS RESULTADOS DE SIMULACIÓN ANEXO VII CONTROL AUTOMÁTICO VII.1 PRUEBAS PARA LA CARACTERIZACIÓN DINÁMICA DEL PROCESO VII.2 CARACTERÍSTICAS DEL PROCESO VII.3 SIMULACIÓN EN BUCLE ABIERTO VII.4 SIMULACIONES PARA EL AJUSTE DEL CONTROLADOR VII.5 IMPLEMENTACIÓN DEL CONTROLADOR... 64

3 ANEXO I DESCRIPCIÓN DE LA PLANTA DE OXICOMBUSTIÓN I.1 Instrumentación de la planta El conjunto de instrumentos integrados en la planta piloto de oxicombustión permite obtener información acerca del desarrollo de la prueba además de controlar el funcionamiento de los distintos equipos mediante la medición, transmisión, almacenamiento y visualización en un ordenador de las variables de interés de la planta. Presión Las variables medidas y los instrumentos empleados en la planta para ello son: Esta variable física es medida mediante transmisores de presión en el circuito de gases y mediante un medidor de presión piezorresistivo en el circuito de refrigeración. Los transmisores del circuito de gases constan de una membrana, la cual se deforma debida a la presión ejercida por los gases. El transmisor convierte la deformación de la membrana en una señal eléctrica (4 20 ma). Depio de la situación en la planta del transmisor, estos operan en sobrepresión o depresión. El medidor piezorresistivo situado en el circuito se agua también dispone de una señal de salida de 4 20 ma. Temperatura Caudal Termopares situados en distintos puntos del sistema permiten medir la temperatura tanto del circuito de gases como de agua. Todos ellos consisten en vainas de acero, con aislamiento mineral y salida 4 20 ma, sin embargo los termopares instalados en el circuito de gases son de tipo K y los del circuito de agua de tipo T, debido a la diferencia en el rango de medida necesario para cada caso. El caudal en el circuito de gases es medido en tres puntos distintos de la instalación de oxicombustión. Estas medidas proporcionan el caudal de los gases a la entrada (C1) y a la salida del lecho (C2), y el caudal recirculado (C3). Debido a la gran variación de la composición de los gases, los caudalímetros instalados consisten en tres tubos de pitot, los cuales permiten conocer el caudal de gases mediante la medición de la presión estática y dinámica en el punto de medición. Aunque estos dispositivos no reflejen el caudal de manera precisa, presentan absoluta certeza respecto a su correcto funcionamiento. En el circuito de agua se dispone de caudalímetros electromagnéticos, los cuales proporcionan el caudal existente en cada camisa así como el total en el circuito. El funcionamiento de estos dispositivos se basa en la creación de un campo magnético,

4 que al ser atravesado por el flujo, crea una corriente eléctrica proporcional a la masa que fluya. Analizador de gases Este equipo consiste en un armario fijo con tratamiento de muestras y módulos indepientes para cada compuesto. Permite conocer la composición de los gases a la salida, la cual está fuertemente relacionada con la combustión y los objetivos de la técnica de oxicombustión. El analizador de gases consta exactamente de un sistema de extracción, de transporte y de acondicionamiento de la muestra además de 3 módulos (CO 2 /CO, O 2 y SO 2 ) que analizan los gases. El control de la instalación de oxicombustión se lleva a cabo a través de un PLC, Programmable Logical Controller. Es el dispositivo encargado de monitorizar, controlar y gestionar todas las variables que hacen parte del sistema. El PLC a través de Ethernet se conecta a un ordenador donde mediante un sistema Scada se visualiza y controla el estado de la planta. Depio de esta información y del objetivo de la prueba, se controla el valor de las distintas variables mediante instrucciones de control en una serie de equipos como los ventiladores y las distintas válvulas de la planta. En el esquema mostrado en la ilustración 31, aparecen todos los elementos presentes en la planta de oxicombustión. En éste se pueden observar la situación de la valvulería e instrumentación mencionada en la memoria del proyecto: ANEXO I DESCRIPCIÓN DE LA PLANTA DE OXICOMBUSTIÓN 4

5 Ilustración 1. Esquema de la planta piloto de oxicombustión ANEXO I DESCRIPCIÓN DE LA PLANTA DE OXICOMBUSTIÓN 5

6 I.2 Parámetros de operación Los valores típicos de las principales variables y parámetros para los cuales ha sido diseñada la planta y con los que se opera en la planta experimental se muestran a continuación en la tabla 14: Composición del gas de entrada Aire CO 2 / O 2 (%) 80/20 70/30 60/40 Potencia térmica [kw t ] Velocidad de fluidización [m/s] Combustible % Composición del gas de salida (Principales componentes) Flujo másico en la salida [kg/h] 0,8 1,4 Carbón Carbón / Biomasa Biomasa /20 70/30 60/ CO 2 O 2 N % 3 6 % 0 70 % Intervalo de temperatura [ºC] Tamaño de las partículas [µm] Caliza Combustible Tabla 1. Valores parámetros de operación I.3 Especificaciones sugeridas de los gases de escape Los requerimientos exactos para la calidad deseada del flujo de escape de CO 2 para distintos escenarios de almacenamiento no han sido totalmente aclarados [43]. Sin embargo, la tabla 15, proporciona algunos valores sugeridos para los requerimientos de pureza: Especies Almacenamiento en acuíferos Modesta calidad Almacenamiento geológico Alta calidad CO 2 >96 %vol >96 %vol H 2 O <500 ppm <50 ppm N 2 <4 %vol O 2 <4 %vol <100 ppm SO 2 <200mg/Nm 3 <50mg/Nm 3 NO x CO Tabla 2. Calidad sugerida de los gases de escape [21] La determinación de estos límites se basa un estudio de la integridad del almacenamiento, aspectos medioambientales, de salud y de seguridad, conceptos legales y consideraciones económicas. No obstante, es obvio que las consideraciones técnicas fijarán ambos límites, el máximo y el mínimo para los requerimientos de pureza. ANEXO I DESCRIPCIÓN DE LA PLANTA DE OXICOMBUSTIÓN 6

7 I.4 Ilustraciones del lecho fluido Esta sección incluye fotografías de la planta piloto de oxicombustión y de diversos equipos con sus respectivos nombres para permitir al lector interesado hacerse una idea del tamaño y disposición de estos. La ilustración 32 muestra una visión general de la planta de oxicombustión, la cual permite distinguir algunos de los principales equipos: Ilustración 2. Fotografía general de la planta de oxicombustión El sistema de almacenamiento y alimentación de combustible (carbón y biomasa) y aditivo (caliza) consiste en dos tolvas de 200 l donde se almacena el combustible y el aditivo, permitio una autonomía de 3 4 h, tiempo estimado de duración de una prueba. Por gravedad, se alimentan los tornillos sin fin dosificadores situados en la parte inferior de las tolvas, los cuales descargan el material en el tornillo lanzadera o mezclador, el cual se introduce dentro del lecho. Las válvulas de guillotina o tajadera permiten cortar rápidamente la alimentación en caso de accidente en la planta. Todos estos elementos se pueden observar en la ilustración 33: ANEXO I DESCRIPCIÓN DE LA PLANTA DE OXICOMBUSTIÓN 7

8 Ilustración 3. Fotografía del sistema de almacenamiento y alimentación de combustible y aditivo La ilustración 34 muestra el sistema de alimentación de comburente, el cual suministra el oxígeno y el dióxido de carbono necesario para la prueba de oxicombustión. Como se puede observar en la fotografía, este consta principalmente de botellas comerciales y de un mezclador, el cual permite ajustar el porcentaje de oxígeno en la mezcla: Ilustración 4. Fotografía del sistema de alimentación del comburente ANEXO I DESCRIPCIÓN DE LA PLANTA DE OXICOMBUSTIÓN 8

9 Finalmente, puede observarse en la ilustración 35 el lecho fluido burbujeante de la planta de oxicombustión de estudio. El lecho tiene una altura de 2,5 m, incluyo el freeboard de 1,8 m, el cual se encuentra en la parte superior de este y no se muestra en la fotografía. En la parte inferior se puede observar el sistema neumático de extracción de cenizas, el cual permite regular la altura de lecho. Además, también puede verse las camisas indepientes de refrigeración del lecho: Ilustración 5. Fotografía del lecho fluido burbujeante ANEXO I DESCRIPCIÓN DE LA PLANTA DE OXICOMBUSTIÓN 9

10 ANEXO II CARACTERÍSTICAS DE LOS COMBUSTIBLES II.1 Resultados analíticos de los combustibles Desde la puesta en marcha de la planta piloto de oxicombustión, diversos han sido los combustibles usados en las pruebas. El primer combustible utilizado fue la antracita de León, un combustible de alta calidad y fácil de quemar. La siguiente etapa fue alimentar esta antracita con la biomasa forestal, caracterizada por su alto contenido en volátiles, lo que facilita su combustión, siempre aplicando un porcentaje bajo de esta respecto del carbón alimentado. Finalmente, se alimentó el lecho fluido con lignito de Teruel, un combustible de baja calidad debido a su alto contenido de azufre. Éste permitirá realizar un estudio de la desulfuración en el lecho gracias a la acción de la caliza alimentada, una vez se dispongan de pruebas suficientes para su estudio. La tabla 16 muestra las características principales de los combustibles empleados en las pruebas de la planta de oxicombustión y los cuales se incluyen en la librería del programa de simulación: Antracita de León Lignito de Teruel Biomasa forestal Análisis inmediato, % (muestra estabilizada) Humedad 2,05 13,57 8,57 Cenizas 26 30,3 1,51 Volátiles 10,84 25,72 73,04 Carbón fijo 61,11 30,41 16,88 Análisis elemental, % (base seca) Carbón 65,81 46,89 49,47 Hidrógeno 2,13 1,92 0,52 Nitrógeno 1,23 0,32 4,86 Azufre 1,06 7,69 0,07 Cenizas 26 30,3 1,51 Oxígeno (por diferencia) 3,77 12,88 43,57 PCS (kj/kg) Tabla 3. Análisis de los combustibles

11 ANEXO III RESULTADOS DEL ESTUDIO DE LAS EMISIONES En el presente anexo se explica brevemente el procedimiento llevado a cabo para la caracterización de emisiones de CO, NO x y SO 2 en la planta piloto de oxicombustión, así como algunos de los resultados obtenidos. III.1 Formación del monóxido de carbono Como se ha mencionado en el apartado 2.3.3, la correlación empírica de la formación de monóxido de carbono se calcula a partir del estudio de la influencia de ciertos parámetros del proceso en el ratio. Estudios sobre el tema indican que el monóxido de carbono, CO, resulta cuando la cantidad de oxígeno requerida en la combustión es insuficiente y que depe en principal medida de los siguientes parámetros del proceso: Velocidad de fluidización, U f Exceso de O 2 Porcentaje de O 2 a la entrada Tª lecho Los resultados del cálculo de estas variables y del ratio, en %, para las distintas pruebas analizadas se presentan en la siguiente tabla: Prueba Velocidad fluidización [m/s] exceso O 2 % %O 2 entrada Tª Lecho [ºC] RATIO CONVERSION C CO ,9 49,12 41,61 866,72 0, ,14 4,61 32, , ,69 50,22 32,49 863,48 0, ,91 32,2 53,49 830,09 1,84 Tabla 4. Estudio formación CO Observando la tabla anterior se puede ver cómo disminuye proporcionalmente el ratio con un aumento de U f y del exceso de O 2. La tencia lineal y descente observada permite realizar una estimación de la formación del monóxido de carbono bajo condiciones de oxicombustión en el reactor de lecho fluido. Para los otros dos parámetros, %O 2 en la entrada y la temperatura del lecho no se observa relación alguna entra las variables y el ratio de conversión. Una vez calculada la correlación del ratio con U f y el exceso de O 2 se pueden ver los valores que toma el ratio para distintos valores de las variables en la siguiente ilustración:

12 Ilustración 6. Gráfico de la variación del ratio C >CO III. 2 Formación de los óxidos de nitrógeno Para el cálculo de la correlación empírica de la formación de los óxidos de nitrógeno se analiza la influencia en el ratio de los siguientes parámetros, también analizados para la formación del monóxido de carbono: Velocidad de fluidización, U f Exceso de O 2 Porcentaje de O 2 a la entrada Tª lecho En la tabla 18 se exponen, para las distintas pruebas examinadas, los resultados del cálculo del ratio, en tanto por uno, y de las variables más influyentes en él: Prueba Velocidad fluidización [m/s] exceso O 2 % %O 2 entrada Tª Lecho [ºC] RATIO CONVERSION N NO x 09,06,30 1,9 49,12 41,61 866,72 0,035 09,08,25 0,65 4,61 32, ,009 09,09,24 2,69 50,22 32,49 863,48 0,041 10,02,23 0,91 32,2 53,49 830,09 0,009 10,06,01 1,49 26,97 29,84 835,85 0,042 Tabla 5. Estudio formación NO x En este caso, se puede apreciar en la tabla anterior que las tencias más destacadas con el ratio son las marcadas por la temperatura de operación y el exceso de oxígeno, aumentado el ratio de estudio con un incremento de ambas variables. Con las dos variables más influyentes se calcula la correlación del ratio de conversión del N en NO x, cuya tencia se puede observar en la siguiente ilustración: ANEXO III RESULTADOS DEL ESTUDIO DE LAS EMISIONES 12

13 Ilustración 7. Gráfico de la variación del ratio N NO x III. 3 Formación del dióxido de azufre y la desulfuración El cálculo de la eficiencia de captura de azufre real de la instalación para su uso en el programa de simulación, se basa en un procedimiento empírico a través de los resultados obtenidos en distintas pruebas. Para ello y como se ha mencionado en la memoria se realiza este estudio mediante un balance total de azufre. En la siguiente tabla se exponen algunos de los cálculos realizados para el cálculo de la eficiencia de captura de azufre en la instalación de oxicombustión: Oxicombustión Oxicocombustión S combustible [g] 84,0 38,9 45,4 82,7 180,0 308,3 S extraído como SO 2 [g] 1,0 0,0 0,0 0,0 1,0 3,9 S en cenizas y CaSO 4 [g] 83,0 38,9 45,4 82,7 178,9 304,4 Eficiencia captura S, % 98,8 99,9 100,0 100,0 99,4 98,7 Tabla 6. Eficiencia de la captura de azufre En la tabla 19 se puede apreciar como el azufre retenido es próximo al azufre alimentado con el combustible, es decir, la eficiencia de captura de azufre del proceso es próxima al 100 %, tanto en la combustión con carbón únicamente como con mezcla de carbón y biomasa. Finalmente, el valor tomado de eficiencia de captura de azufre para la simulación de Matlab es de 0,99. Se hace necesario indicar de nuevo que actualmente se opera en la planta piloto con un alto porcentaje de caliza respecto a azufre alimentado con el combustible. Está previsto realizar pruebas en la planta piloto con el ratio Ca/S recomado y más ajustado según exponen distintos estudios, Ca/S=2, lo que supone una posibilidad de adaptar el programa en función del ratio empleado y realizar un estudio exhaustivo de este tema. ANEXO III RESULTADOS DEL ESTUDIO DE LAS EMISIONES 13

14 ANEXO IV ESTUDIO DEL BALANCE DE PARTÍCULAS El estudio del balance de partículas en el lecho permite evaluar la eficiencia del lecho mediante el cálculo empírico de la proporción de arrastrados y la proporción de inquemados en la planta piloto de estudio. En primer lugar, se expone detalladamente el balance de partículas que tiene lugar en el seno del lecho fluido de la planta de oxicombustión para más tarde proceder al cálculo de las variables anteriores. Éste se puede esquematizar mediante ecuaciones [kg/s] de la siguiente manera: _ í _ _ (16) _ í _ í _ í (17) _ í _ _ _ _ _ _ _ _ _ (18) Como se observa en las ecuaciones anteriores, el lecho está formado por las cenizas alimentadas con el combustible que no son arrastradas, la caliza virgen que permanece sin reaccionar y los subproductos de la desulfuración. Una vez el conjunto de partículas se encuentran en el seno del lecho fluido, éstas pueden ser arrastradas, evacuadas o pueden permanecer en éste. Las partículas que abandonan el lecho junto con los gases de combustión, partículas arrastradas, están principalmente constituidas por combustible inquemado y cenizas. Éstas se pueden calcular como muestra la ecuación 19, [kg/s]: _ í 1 (19) Para ello, se necesita conocer el flujo arrastrado de partículas en función del flujo de combustible alimentado y la proporción de inquemados de este flujo, los cuales son calculados experimentalmente. El procedimiento de cálculos de estos parámetros se expone después del balance de partículas empleado en la programación. Con el objetivo de operar con una altura de lecho constante, parte de estas partículas son evacuadas mediante el sistema neumático de extracción de cenizas. Los resultados obtenidos del programa de simulación relativos al flujo de cenizas alimentado y al formado, y el valor del flujo de cenizas arrastrado, permiten calcular el flujo evacuado de cenizas, como se muestra a continuación: _ í _ í _ í (20) Como se ha comentado en la memoria del proyecto, las cenizas, los subproductos y el aditivo (caliza), constituyen el lecho, con el cual se desea trabajar a una altura constante, próxima a los 0,7 m en el caso de la planta experimental de estudio. La masa del lecho puede

15 calcularse en función del volumen de fluidización, fijado por la altura del lecho deseada, y la densidad de fluidización del lecho, distinta de la densidad de la caliza debido a la fluidización de las partículas en operación. Las fórmulas utilizadas en el cálculo son las siguientes: ó (21) _ (22) ó 1 ó (23) Una vez se ha detallado el balance de cenizas en el lecho fluido, se procede a explicar el procedimiento de cálculo experimental de la masa de arrastrada y de la proporción de combustible inquemado. Para cada prueba se analizan los siguientes parámetros: Combustible alimentado [kg] Caliza alimentada [kg] Partículas arrastradas [kg] Proporción de inquemados de la masa arrastrada Velocidad de fluidización, U f, [m/s] Exceso de O 2, % Ratio Las partículas arrastradas son aquellas que han sido separadas de la corriente gaseosa y permanecen en el fondo del ciclón. El cálculo del porcentaje de cenizas es importante para conocer los inquemados generados. El procedimiento seguido para la determinación del contenido de combustible inquemado es el dictado por la norma UNE El análisis de la influencia de los parámetros calculados muestra una tencia marcada lineal y creciente de la velocidad de fluidización con el porcentaje de masa arrastrada. De modo que la estimación propuesta para el cálculo de la proporción de masa arrastrada en función del combustible alimentado es la siguiente correlación: (24) Sin embargo, el estudio de la proporción de inquemados refleja un valor aproximadamente constante en función de las partículas arrastradas. El valor observado y utilizado en la programación es el siguiente: 0.3 (25) Finalmente, se procede a calcular la eficiencia del lecho mediante la ecuación (12) expuesta en la memoria. Una vez se recopilan datos de mayor número de pruebas, se podrá realizar un estudio más amplio y preciso del balance de partículas en la planta de estudio. ANEXO IV ESTUDIO DEL BALANCE DE PARTÍCULAS 15

16 ANEXO V ESTUDIO DE LA RECIRCULACIÓN V.1 Estudio de la condensación del vapor El esquema siguiente permite una sencilla comprensión del ciclo llevado a cabo por el vapor de agua así como del significado de las variables empleadas en la simulación: Ilustración 8. Esquema de la condensación del vapor de agua Como se puede ver en la ilustración anterior la condensación del vapor de agua de los gases de salida se llevaría a cabo, en el caso de que se dispusiera de un condensador en la planta piloto, una vez se han evacuado al exterior los gases de escape. Esto supone una reducción en la energía invertida en condensar el vapor ya que el volumen de gases a tratar es menor. El límite de vapor de agua máximo a la entrada del lecho, Prop_vapor _max, consiste en una entrada del programa de simulación, por lo que puede ser variado por el usuario del programa según se desee. Estudios posteriores sobre este tema permitirán fijar una proporción de vapor máximo a la entrada del lecho óptima tal que las propiedades de la combustión y la desulfuración no se vean gravemente afectadas y el coste de condensación sea mínimo.

17 ANEXO VI PROGRAMACIÓN DEL SIMULADOR VI.1 Estudio de la convergencia en la simulación El método llevado a cabo por el programa de simulación numérica es iterativo, el cual converge a un valor solución. La convergencia es un concepto abstracto, y viene dado por la propiedad que posee la sucesión numérica de ter a un límite. Particularmente, para el modelo basado en los flujos másicos de la planta de oxicombustión, el sistema alcanza el valor solución cuando el error observado en la condición de iteración es menor al valor fijado, ε, de kmol/s, como se ha explicado en la memoria. En la primera iteración que realiza el programa las distintas variables adquieren el valor inicial, S o, el cual corresponde a una proporción de recirculación nula. De modo que en la simulación de una prueba sin recirculación, el error es nulo en la primera iteración y por tanto, el programa no itera. Sin embargo, la simulación de una prueba de oxicombustión con recirculación necesita de un proceso de iteración hasta que los flujos de las distintas especies de los gases convergen al estado final, S f, o valor solución. En la página siguiente, se muestran las convergencias del error de los flujos másicos de las distintas especies para unas condiciones de operación determinadas. El error se ha definido como la diferencia del flujo de la especie de estudio en la iteración dada y la anterior. Las condiciones de operación fijadas en este caso son una potencia de 40 kw t, una proporción de oxígeno en la entrada del 30 % y una proporción de recirculación de 0,3. En la ilustración 39, se puede apreciar la convergencia del error observado en el flujo másico del dióxido de carbono, el cual disminuye desde el primer valor calculado por el programa para una proporción de recirculación nula, ya que el resto de las especies recirculadas aumenta, y por tanto, no se precisa de tanto CO 2 en la entrada cuando se recircula. Al igual que este gas, el nitrógeno, ilustración 43, también experimenta el mismo comportamiento, debido a la disminución del caudal de botellas al recircular, y por lo tanto la disminución de N 2. A excepción del dióxido de carbono y del nitrógeno, como se explica más tarde, las ilustraciones 40, 41, 42, 44 muestran una convergencia del error ascente, es decir, el flujo de estas especies aumenta conforme el programa avanza hacia el estado de equilibrio. Esta tencia es debida al aumento del flujo de las distintas especies en la entrada por la recirculación de los gases de escape. Como se ha observado en las ilustraciones anteriores, la convergencia del error del flujo de las distintas especies es gradual, sin fluctuaciones y rápida, sin necesitar de un elevado número de iteraciones ni de algoritmos específicos que mejoren la convergencia del programa de simulación. Las especies que más varían desde la situación de inicio sin recirculación hasta la proporción de recirculación deseada son el dióxido de carbono y el vapor de agua.

18 1.4 x CONVERGENCIA CO2 Prop recirc =0.3 Q comb =40 kw prop O2 =0.3 CO2 0 x CONVERGENCIA O2 Prop recirc =0.3 Q comb =40 kw prop O2 =0.3 O Convergencia CO Convergencia O n iteraciones n iteraciones Ilustración 9. Convergencia del dióxido de carbono Ilustración 10. Convergencia del oxígeno Convergencia H2O 0 x CONVERGENCIA H2O Prop recirc =0.3 Q comb =40 kw prop O2 =0.3 H2O Convergencia especies [*10-6] CONVERGENCIA ESPECIES [*10-6] Prop recirc =0.3 Q comb =40 kw prop O2 =0.3 NOx SO n iteraciones n iteraciones Ilustración 11. Convergencia del vapor de agua Ilustración 12. Convergencia del dióxido de azufre y de los óxidos de nitrógeno Convergencia N2 8 x CONVERGENCIA N2 Prop recirc =0.3 Q comb =40 kw prop O2 = n iteraciones Ilustración 13. Convergencia del nitrógeno N2 Convergencia CO [*10-6] CONVERGENCIA CO Prop recirc =0.3 Q comb =40 kw prop O2 =0.3 CO n iteraciones Ilustración 14. Convergencia del monóxido de carbono 18

19 VI.2 Variables de la simulación Esta sección del anexo de programación contiene la tabla 20, en la cual se definen las variables empleadas en la simulación para una correcta comprensión de los programas: Variables Uds. Definición A_lecho [m 2 ] Área interior del lecho C1 C2 C3 caudal_gases_in Cbot CO2_nec_v [m 3 /h] [m 3 /h] [m 3 /h] [m 3 /h] [m 3 /h] [kmol/s] comb_bio [ ] Caudal de gases a la entrada del lecho a la temperatura del analizador Caudal de gases a la salida del lecho a la temperatura del analizador Caudal de gases recirculado a la temperatura del analizador Caudal de gases a la entrada del lecho a la temperatura de operación Caudal de gases de las botellas a la temperatura del analizador Vector de CO 2 en la entrada para las distintas proporciones de recirculación Variable para la selección del tipo de carbón con el que se desea operar comb_c [ ] Variable para la selección del tipo de biomasa con la que se desea operar D_lecho [m] Diámetro interior del lecho dens_gases_anal [kg/m 3 ] Densidad de la mezcla de gases en la entrada a la Tª del analizador dens_gases_in [kg/m 3 ] dens_gases_out_anal [kg/m 3 ] Densidad de la mezcla de gases en la entrada a la Tª de operación Densidad de la mezcla de gases en la salida a la Tª del analizador dens_o2 [kg/m 3 ] Densidad del O 2 a la Tª de operación dens_o2_anal [kg/m 3 ] Densidad del O 2 a la Tª del analizador densidad_caliza [kg/m 3 ] Densidad de la caliza densidad_fluid [kg/m 3 ] Densidad de fluidización del lecho Dif_v [ ] Vector para el estudio de la convergencia E [kg/s] Error admitido en la simulación ef_cap_s [ ] Eficiencia de captura de azufre ef_comb [ ] Eficiencia de la combustión emisiones_m [ ] exceso_o2 [ ] Matriz de las proporciones de las especies a la salida para distintas proporciones de recirculación Porcentaje de exceso de O 2 con el que se desea trabajar, (vol.) factor_fluid [ ] Porosidad del lecho H_lecho [m] Altura del lecho 19

20 inputs [ ] Variable para marcar aquellos outputs que han sido introducidos como entradas L_leakage [ ] Longitud del vector leakage_v L_prop_recirc [ ] Longitud del vector prop_recirc_v leakage [ ] Infiltraciones respecto al flujo de gases total a la salida (vol.) leakage_max [ ] Valor máximo de las infiltraciones para su estudio leakage_min [ ] Valor mínimo de las infiltraciones para su estudio m_bio [kg/s] Flujo másico de biomasa a alimentar m_botella_co2 [kg/s] Flujo másico procedente de las botellas de CO 2 (dióxido de carbono + nitrógeno) m_botella_o2 [kg/s] Flujo másico procedente de las botellas de O 2 (oxígeno + nitrógeno) m_c [kg/s] Flujo másico de carbón a alimentar m_c_bio [kg/s] Flujo másico de carbono alimentado con la biomasa m_c_c [kg/s] Flujo másico de carbono alimentado con el carbón m_c_comb [kg/s] Flujo másico de carbono alimentado m_caco3_c_cons [kg/s] Flujo másico de caliza consumida debido a la calcinación m_caco3_dd_cons [kg/s] Flujo másico de caliza consumida debido a la desulfuración directa m_caco3_no_consumido [kg/s] Flujo másico de caliza que permanece sin reaccionar m_caliza [kg/h] Flujo másico de caliza alimentada m_cao [kg/s] Flujo másico de cal viva formada, f(tª) m_cao_consumido [kg/s] Flujo másico de cal viva que reacciona m_cao_no_consumido [kg/s] Flujo másico de cal viva que permanece sin reaccionar m_caso4 m_co2_botella m_co2_calc [kg/s] [kg/s] [kg/s] Flujo másico de sulfato de calcio formado como resultado de la reacción de la cal viva con el azufre, forma parte de las cenizas del lecho Flujo másico de dióxido de carbono procedente de las botellas de CO 2 Flujo másico de dióxido de carbono formado en la calcinación m_comb [kg/s] Flujo másico de combustible total (carbón + biomasa ) alimentado m_gases_in [kg/s] Flujo másico de gases en la entrada del lecho m_gases_out [kg/s] Flujo másico de gases en la salida del lecho m_inquemados [kg/s] Flujo másico de combustible inquemado arrastrado 20

21 m_lecho [kg] masa de lecho (caliza y cenizas) m_n2_co2 m_n2_o2 m_o2_botella m_o2_est [kg/s] [kg/s] [kg/s] [kg/s] Flujo másico de nitrógeno procedente de las botellas de CO 2 Flujo másico de nitrógeno procedente de las botellas de O 2 Flujo másico de oxígeno procedente de las botellas de O 2 Flujo másico de oxigeno estequiométrico necesario en la combustión m_o2_in [kg/s] Flujo másico de oxígeno en la entrada del lecho m_o2_out [kg/s] Flujo másico de oxígeno en la salida del lecho m_o2_out_t [kg/s] Flujo másico de oxígeno en la salida del lecho considerando las infiltraciones m_o2_out_teo [kg/s] Flujo másico de oxígeno teórico en la salida del lecho m_o2_recirc [kg/s] Flujo másico de oxígeno recirculado m_particulas_total [kg/s] Flujo másico total de cenizas en la salida m_total_gas_in [kg/s] Flujo másico de gases en la entrada del lecho m_total_gas_out [kg/s] Flujo másico de gases en la salida del lecho considerando las infiltraciones n_botella_co2 [kmol/s] Flujo molar procedente de las botellas de CO 2 (dióxido de carbono + nitrógeno) n_botella_o2 [kmol/s] Flujo molar procedente de las botellas de O 2 (oxígeno + nitrógeno) n_botellas [kmol/s] Flujo molar procedente de las botellas n_c_bio [kmol/s] Flujo molar de carbono alimentado con la biomasa n_c_c [kmol/s] Flujo molar de carbono alimentado con el carbón n_c_comb [kmol/s] Flujo molar de carbono alimentado n_caco3 [kmol/s] Flujo molar de caliza alimentada n_caco3_cons [kmol/s] Flujo molar de caliza consumida n_cao [kmol/s] Flujo molar de cal viva formada n_caso4 n_co2_botella n_cond n_gases_in n_gases_in_t [kmol/s] [kmol/s] [kmol/s] [kmol/s] [kmol/s] Flujo molar de sulfato de calcio formado como resultado de la reacción de la cal viva con el azufre Flujo molar de dióxido de carbono procedente de las botellas de CO 2 Flujo molar de vapor de agua condensada de los gases de recirculación Flujo molar de gases en la entrada del lecho (sumatorio de las especies en la entrada) Flujo molar de gases en la entrada del lecho (considerando prop_o2) 21

22 n_gases_out [kmol/s] Flujo molar de gases en la salida del lecho n_h2o_recirc [kmol/s] Flujo molar de vapor de agua recirculado n_h2o_recirc_c_max [kmol/s] Flujo molar de vapor de agua máximo a recircular n_h2o_recircularia [kmol/s] Flujo molar de vapor de agua recircularía si no se condensara según la limitación impuesta n_iteraciones [ ] número de iteraciones necesario hasta el programa de simulación alcanza el equilibrio n_leakage [kmol/s] Flujo molar de aire infiltrado n_n2_co2 n_n2_leakage n_n2_o2 [kmol/s] [kmol/s] [kmol/s] Flujo molar de nitrógeno procedente de las botellas de CO 2 Flujo molar de nitrógeno procedente de las infiltraciones de aire Flujo molar de nitrógeno procedente de las botellas de O 2 n_o2_botella [kmol/s] Flujo molar de oxígeno procedente de las botellas de O 2 n_o2_est [kmol/s] Flujo molar de oxígeno estequiométrico necesario en la combustión n_o2_in [kmol/s] Flujo molar de oxígeno en la entrada del lecho n_o2_leakage [kmol/s] Flujo molar de oxígeno procedente de las infiltraciones de aire n_o2_out [kmol/s] Flujo molar de oxígeno en la salida del lecho n_o2_out_t [kmol/s] Flujo molar de oxígeno en la salida del lecho considerando las infiltraciones n_o2_recirc [kmol/s] Flujo molar de oxígeno recirculado n_recirc [kmol/s] Flujo molar de gases recirculados n_recirc_c [kmol/s] Flujo molar de gases recirculados después del condensador n_recirc_c_max n_rellenar n_total_gas_out O2_nec_v [kmol/s] [kmol/s] [kmol/s] [kmol/s] Flujo molar máximo de gases a recircular después del condensador Flujo molar de gases en la entrada del lecho ( a excepción del O 2 ) Flujo másico de gases en la salida del lecho considerando las infiltraciones Vector de O 2 en la entrada para las distintas proporciones de recirculación out_comb Salidas de Programa_ combustible out_leakage Salidas de Prorama_leakage out_par Salidas de Programa_ par out_proceso_m Salidas de Programa_ proceso_m out_recirc Salidas de Programa_recirc P1 [mbar] Presión del flujo de botellas a regular mediante la válvula reguladora de presión 22

23 particulas_arrastradas [kg/s] Flujo másico de cenizas arrastradas en el proceso particulas_eva [kg/s] Flujo másico de cenizas evacuadas en el proceso Paso_leakage [ ] Paso del vector de estudio de las infiltraciones Paso_prop_recirc [ ] Paso del vector de estudio de la proporción de recirculación PCI_bio [kj/kg] Poder calorífico inferior de la biomasa PCI_c [kj/kg] Poder calorífico inferior del carbón PCI_comb [kj/kg] Poder calorífico inferior del combustible total (carbón + biomasa) Pm_O2 [kg/kmol] Peso molecular del oxígeno Porc_C_bio [ ] Porc_C_bs_bio [ ] Porc_C_bs_c [ ] Porc_C_c [ ] Porc_CaO [ ] Porc_N2_bot_CO2 [ ] Porc_N2_bot_O2 [ ] Porcentaje másico de carbono en el análisis elemental de la biomasa (bh) Porcentaje másico de carbono en el análisis elemental de la biomasa (bs) Porcentaje másico de carbono en el análisis elemental del carbón (bs) Porcentaje másico de carbono en el análisis elemental del carbón (bh) Porcentaje de cal viva formada a la Tª de operación Porcentaje volumétrico de nitrógeno contenido en las botellas de CO 2 Porcentaje volumétrico de nitrógeno contenido en las botellas de O 2 Porc_O2_air [ ] Porcentaje volumétrico de O 2 en el aire Porc_O2_mezc [ ] Porcentaje volumétrico de O 2 en el mezclador Prop_arrastrado [ ] prop_c_bio [ ] Prop_inquemados [ ] prop_n2_out_sl [ ] prop_o2 [ ] prop_o2_in [ ] prop_o2_out [ ] Proporción de combustible arrastrado respecto al combustible alimentado Proporción de carbón respecto al combustible total. El resto es biomasa Proporción de inquemados respecto al combustible arrastrado Proporción de nitrógeno en la salida del lecho sin considerar las infiltraciones Proporción volumétrica de O 2 en la entrada del lecho respecto a los gases totales Proporción volumétrica de O 2 en la entrada del lecho respecto a los gases totales (calculado a partir del balance de masa) Proporción volumétrica de O 2 en la salida del lecho respecto a los gases totales considerando las infiltraciones de aire 23

24 prop_o2_out_sl [ ] prop_recirc [ ] prop_recirc_0 [ ] Proporción volumétrica de O 2 en la salida del lecho respecto a los gases totales sin considerar las infiltraciones de aire Proporción volumétrica de flujo de gases recirculados respecto a flujo total de gases a la salida del lecho Proporción volumétrica deseada de flujo de gases recirculados respecto a flujo total de gases a la salida del lecho (sin limitar) prop_recirc_max [ ] prop_recirc_min [ ] Prop_vapor_max [ ] Valor máximo de la proporción de recirculación para su estudio Valor mínimo de la proporción de recirculación para su estudio Proporción volumétrica máxima de vapor de agua en la entrada del lecho Prop_vapor_rec_max [ ] Proporción volumétrica máxima de vapor de agua después del condensador Q_bio [kw] Potencia aportada por la biomasa Q_c [kw] Potencia aportada por el carbón Q_comb [kw] Potencia deseada de operación rate_ca_s [ ] ratio_conv_co [ ] Ratio de los moles de caliza alimentados respecto a los de azufre alimentados con el combustible Ratio de conversión de los moles de carbono alimentados con el combustible que pasan a formar CO ratio_conv_nox [ ] Ratio de conversión de los moles de N alimentados con el combustible que pasan a formar NO x T_anal [ºC] Temperatura en el analizador de gases T_freeboard [ºC] Temperatura del freeboard T_operacion [ºC] Temperatura del lecho durante la operación Tabla_CaO [ ] Matriz de la cal viva formada en función de la temperatura de operación Uf [m/s] Velocidad de fluidización V2 [ ] Estrangulación de la válvula de mariposa V2 (situada en el conducto de las botellas) Vol_lecho [m3] Volumen de fluidizacion del lecho para una determinada altura del lecho Tabla 7. Significado de las variables Los nombres de las variables vectoriales y matriciales del programa de simulación finalizan con _v y _m respectivamente. Muchas de estas variables no aparecen en la tabla anterior, ya que se detallan sus variables escalares análogas. 24

25 Además, para una mayor concisión, solo se han definido las variables relativas al oxígeno en el caso de las emisiones y las del carbono en el caso de los combustibles, en lugar de todas las especies y elementos. Las unidades señaladas en la tabla 20 como para las salidas de los programas hacen referencia a las múltiples unidades que pueden tener esas variables en función de la salida seleccionada. VI.3 Programas de simulación Programa_inputs function Programa_inputs %% FUNCIÓN Y EJECUCIÓN DEL PROGRAMA % Este programa realiza la simulación para un punto de operación de la planta. % Se introducen las condiciones de operación en inputs y este mismo % programa te muestra salidas en la ventana de comandos de Matlab y una % serie de gráfico en ventanas de figuras %% CONSTANTES global out_par %% INPUTS %Parámetros generales Q_comb=90; %[kw] comb_c=1; comb_bio=1; % 1= Antracita de León 2= Lignito de Teruel % 1= Biomasa forestal prop_o2=0.3; % (vol.) 1 = 100%O2 0 = 100%CO2 prop_recirc=0.6; % (vol.) 1 = 100%recirc 0 = 0%recirc prop_c_bio=1; % (másico) 1 = 100%carbón 0 = 100%biomasa exceso_o2=0.15; % (vol.) T_operacion=800; %[ ºC] (Temperatura del lecho) T_freeboard=700; %[ºC] T_anal=30; %[ºC] m_caliza=5; %[kg/h] H_lecho=0.7; %[m] leakage=9; out %Limitacion del vapor a la entrada Prop_vapor_max=0.7; % [0-1](vol.) % [0-100](vol.) respecto al flujo de gases totales %% PROGRAMA out_par=programa_par(comb_c,comb_bio,t_operacion,t_freeboard,t_anal); out_comb=programa_combustible(prop_c_bio,q_comb); out_proceso_m=programa_proceso_m(exceso_o2,prop_o2,prop_recirc,out_com b,m_caliza,h_lecho,leakage,prop_vapor_max); %% OUTPUTS 25

26 %CONVERGENCIA EMISIONES (O2, CO2 y N2 no varian) if prop_recirc>0 Dif_H2O_v=out_proceso_m.H2O_v-out_proceso_m.m_H2O_out; Dif_NOx_v=(out_proceso_m.NOx_v-out_proceso_m.m_NOx_out)*10^6; Dif_CO_v=(out_proceso_m.CO_v-out_proceso_m.m_CO_out)*10^6; Dif_SO2_v=(out_proceso_m.SO2_v-out_proceso_m.m_SO2_out)*10^6; Dif_O2_v=(out_proceso_m.O2_v-out_proceso_m.m_O2_out); Dif_CO2_v=(out_proceso_m.CO2_v-out_proceso_m.m_CO2_out); Dif_N2_v=(out_proceso_m.N2_v-out_proceso_m.m_N2_out); figure plot(dif_o2_v,'mx:') leg('o2') xlabel('n_i_t_e_r_a_c_i_o_n_e_s'); ylabel('convergencia O2'); title(['convergencia O2',char(10),' Prop_r_e_c_i_r_c=',num2str(out_proceso_m.prop_recirc),' Q_c_o_m_b=',num2str(Q_comb),' kw', ' prop_o_2=',num2str(prop_o2)]); figure plot(dif_n2_v,'mx:') leg('n2') xlabel('n_i_t_e_r_a_c_i_o_n_e_s'); ylabel('convergencia N2'); title(['convergencia N2',char(10),' Prop_r_e_c_i_r_c=',num2str(out_proceso_m.prop_recirc),' Q_c_o_m_b=',num2str(Q_comb),' kw', ' prop_o_2=',num2str(prop_o2)]); figure plot(dif_co2_v,'mx:') leg('co2') xlabel('n_i_t_e_r_a_c_i_o_n_e_s'); ylabel('convergencia CO2'); title(['convergencia CO2',char(10),' Prop_r_e_c_i_r_c=',num2str(out_proceso_m.prop_recirc),' Q_c_o_m_b=',num2str(Q_comb),' kw', ' prop_o_2=',num2str(prop_o2)]); figure plot(dif_h2o_v,'mx:') leg('h2o') xlabel('n_i_t_e_r_a_c_i_o_n_e_s'); ylabel('convergencia H2O'); title(['convergencia H2O',char(10),' Prop_r_e_c_i_r_c=',num2str(out_proceso_m.prop_recirc),' Q_c_o_m_b=',num2str(Q_comb),' kw', ' prop_o_2=',num2str(prop_o2)]); figure plot(dif_nox_v,'cx:') hold on plot(dif_so2_v,'bx:') hold on leg('nox','so2') xlabel('n_i_t_e_r_a_c_i_o_n_e_s'); ylabel('convergencia especies [*10^-6]'); 26

27 title(['convergencia ESPECIES [*10^-6]',char(10),' Prop_r_e_c_i_r_c=',num2str(out_proceso_m.prop_recirc),' Q_c_o_m_b=',num2str(Q_comb),' kw', ' prop_o_2=',num2str(prop_o2)]); figure plot(dif_co_v,'gx:') leg('co') xlabel('n_i_t_e_r_a_c_i_o_n_e_s'); ylabel('convergencia CO [*10^-6]'); title(['convergencia CO',char(10),' Prop_r_e_c_i_r_c=',num2str(out_proceso_m.prop_recirc),' Q_c_o_m_b=',num2str(Q_comb),' kw', ' prop_o_2=',num2str(prop_o2)]); % GRÁFICO DE SECTORES DE LAS EMISIONES % Para evitar un error al representar el gráfico if out_proceso_m.prop_nox_out==0 out_proceso_m.prop_nox_out=10^-10; if out_proceso_m.prop_co_out==0 out_proceso_m.prop_co_out=10^-10; if out_proceso_m.prop_so2_out==0 out_proceso_m.prop_so2_out=10^-10; % Gráfico emisiones_v=[out_proceso_m.prop_o2_out,out_proceso_m.prop_n2_out,out_p roceso_m.prop_co2_out,out_proceso_m.prop_h2o_out,out_proceso_m.prop_co _out,out_proceso_m.prop_nox_out,out_proceso_m.prop_so2_out]; %disp(emisiones_v) figure explode=[0,0,1,0,0,0,0]; pie(emisiones_v,explode); leg('o2','n2','co2','h2o','co','nox','so2'); % {'O2','N2','CO2','H2O',' CO ','NOx',' SO2'} title(['proporción EMISIONES',char(10),' Prop_r_e_c_i_r_c=',num2str(out_proceso_m.prop_recirc),char(10),' Q_c_o_m_b=',num2str(Q_comb),' kw',char(10), ' prop_o_2=',num2str(prop_o2),char(10),' prop_c_/_b_i_o=',num2str(prop_c_bio),char(10),' exceso_o_2=',num2str(exceso_o2)]); %AJUSTES PARA RECIRCULAR disp('c1 [m3/h]'); disp(out_proceso_m.c1);%[m3/h] disp('c2 [m3/h]'); disp(out_proceso_m.c2);%[m3/h] disp('c3 [m3/h]'); disp(out_proceso_m.c3);%[m3/h] disp('cbot [m3/h]'); disp(out_proceso_m.c_bot);%[m3/h] disp('porc_o2_mezclador'); disp(out_proceso_m.porc_o2_mezc); if out_proceso_m.v2<0.25 disp('v2 en Pos. más CERRADA'); 27

28 elseif out_proceso_m.v2>0.65 disp('v2 en Pos. más ABIERTA'); else disp('v2 en Pos.INTERMEDIA'); disp(out_proceso_m.v2); disp('p1 necesaria [mbar]'); disp(out_proceso_m.p1); % ANÁLISIS DEL PUNTO DE OPERACIÓN ELEGIDO(V2, prop. recirc, cond y Uf) if out_proceso_m.n_cond>0 disp('necesario CONDENSAR vapor de agua a la salida'); if prop_recirc>0 disp('prop_recirc_max'); disp(out_proceso_m.prop_recirc_max); if prop_recirc>out_proceso_m.prop_recirc_max disp('proporción de recirculación limitada'); if out_proceso_m.v2>1 disp('no se tiene la capacidad para proporcionar ese caudal de botellas'); if out_proceso_m.uf<0.8 disp('velocidad de fluidización demasiado baja, no buena fluidización para la combustión') else if out_proceso_m.uf> 1.4 disp('velocidad de fluidización demasiado alta, puede implicar un arrastre de las particulas del lecho'); Programa_recirc function out_recirc=programa_recirc %% FUNCIÓN Y EJECUCIÓN DEL PROGRAMA % Este programa realiza un estudio para distintas proporciones de % recirculación. % Se introducen las condiciones de operación en inputs. Para visualizar los % resultados es necesario ejecutar en la ventana de comandos: % Programa_plotting_recirc %% CONSTANTES global out_par %% INPUTS %Parámetros generales Q_comb=90; %[kw] 28

29 comb_c=1; comb_bio=1; % 1= Antracita de León 2= Lignito de Teruel % 1= Biomasa forestal prop_o2=0.3; % (vol.) 1 = 100%O2 0 = 100%CO2 prop_c_bio=0.5; % (másico)1 = 100%carbón 0 = 100%biomasa exceso_o2=0.15; % (vol.) T_operacion=800; %[ ºC] (Temperatura del lecho) T_freeboard=700; %[ºC] T_anal=43; %[ºC] m_caliza=5; %[Kg/h] H_lecho=0.7; %[m] leakage=10; out % [0-100](vol.) respecto al flujo de gases totales %Limitacion del vapor a la entrada Prop_vapor_max=0.1; % [0-1](vol.) % Datos recirculación prop_recirc_min=0; prop_recirc_max_0=1; Paso_prop_recirc=0.05; %% PROGRAMA out_par=programa_par(comb_c,comb_bio,t_operacion,t_freeboard,t_anal); out_comb=programa_combustible(prop_c_bio,q_comb); prop_recirc_v=prop_recirc_min:paso_prop_recirc:prop_recirc_max_0; L_prop_recirc=length(prop_recirc_v); for I=1:L_prop_recirc; prop_recirc=prop_recirc_v(i); out_proceso_m=programa_proceso_m(exceso_o2,prop_o2,prop_recirc,out_com b,m_caliza,h_lecho,leakage,prop_vapor_max); % Estudio del O2 necesario a la entrada out_recirc.o2_nec_v(i)=out_proceso_m.n_o2_in; out_recirc.n_botella_o2_v(i)=out_proceso_m.n_botella_o2; out_recirc.n_o2_botella_v(i)=out_proceso_m.n_o2_botella; %sin tener en cuenta el N2 de la botella de O2 % Estudio CO2 necesario a la entrada out_recirc.co2_nec_v(i)=out_proceso_m.n_co2_in; out_recirc.n_botella_co2_v(i)=out_proceso_m.n_botella_co2; out_recirc.n_co2_botella_v(i)=out_proceso_m.n_co2_botella; %sin tener en cuenta el N2 de la botella de O2 out_recirc.n_rellenar=out_proceso_m.n_rellenar; % Flujos a la salida out_recirc.m_o2_out_v(i)=out_proceso_m.m_o2_out; out_recirc.m_co2_out_v(i)=out_proceso_m.m_co2_out; out_recirc.m_n2_out_v(i)=out_proceso_m.m_n2_out; out_recirc.m_h2o_out_v(i)=out_proceso_m.m_h2o_out; out_recirc.m_co_out_v(i)=out_proceso_m.m_co_out; 29

30 out_recirc.m_so2_out_v(i)=out_proceso_m.m_so2_out; out_recirc.m_nox_out_v(i)=out_proceso_m.m_nox_out; % Eficiencias out_recirc.ef_lecho_v(i)=out_proceso_m.ef_lecho; out_recirc.ef_combustion_v(i)=out_proceso_m.ef_comb; out_recirc.uf_v(i)=out_proceso_m.uf; % Proporciones especies a la salida out_recirc.emisiones_m(i,1)=out_proceso_m.prop_o2_out; out_recirc.emisiones_m(i,2)=out_proceso_m.prop_n2_out; out_recirc.emisiones_m(i,3)=out_proceso_m.prop_co2_out; out_recirc.emisiones_m(i,4)=out_proceso_m.prop_h2o_out; out_recirc.emisiones_m(i,5)=out_proceso_m.prop_co_out; out_recirc.emisiones_m(i,6)=out_proceso_m.prop_nox_out; out_recirc.emisiones_m(i,7)=out_proceso_m.prop_so2_out; % Estudio condensaciones out_recirc.n_h2o_in_v(i)=out_proceso_m.n_h2o_in; out_recirc.n_h2o_rec_v(i)=out_proceso_m.n_h2o_recircularia; out_recirc.n_cond_v(i)=out_proceso_m.n_cond; out_recirc.n_h2o_recirc_c_max_v(i)=out_proceso_m.n_h2o_recirc_c_max; % Estudio limitaciones de los moles a la entrada out_recirc.n_recirc_c_v(i)=out_proceso_m.n_recirc_c; out_recirc.n_gases_in_v(i)=out_proceso_m.n_gases_in; out_recirc.n_recirc_c_max_v(i)=out_proceso_m.n_recirc_c_max; out_recirc.prop_recirc_v(i)=out_proceso_m.prop_recirc; prop_recirc_max=out_proceso_m.prop_recirc_max; %valor de la última iteración out_recirc.prop_recirc_v=prop_recirc_min:paso_prop_recirc:prop_recirc_ max_0; disp('prop_recirc_max') disp(prop_recirc_max) %% OUTPUTS out_recirc.inputs.q_comb=q_comb; out_recirc.inputs.prop_o2=prop_o2; out_recirc.inputs.prop_c_bio=prop_c_bio; out_recirc.inputs.exceso_o2=exceso_o2; out_recirc.inputs.comb_c=comb_c; out_recirc.inputs.comb_bio=comb_bio; Programa_leakage function out_leakage=programa_leakage %% FUNCIÓN Y EJECUCIÓN DEL PROGRAMA % Este programa realiza un estudio para distintos procentajes de % infiltración. % Se introducen las condiciones de operación en inputs. Para visualizar los % resultados es necesario ejecutar en la ventana de comandos: 30

31 % Programa_plotting_leakage %% CONSTANTES global out_par %% INPUTS %Parámetros generales Q_comb=40; %[kw] comb_c=1; comb_bio=1; % 1= Antracita de León 2= Lignito de Teruel % 1= Biomasa forestal prop_o2=0.3; % (vol.) 1 = 100%O2 0 = 100%CO2 prop_recirc=0.4; % (vol.) 1 = 100%recirc 0 = 0%recirc prop_c_bio=1; % (másico) 1 = 100%carbón 0 = 100%biomasa exceso_o2=0.15; % (vol.) T_operacion=800; %[ ºC] (Temperatura del lecho) T_freeboard=700; %[ºC] T_anal=30; %[ºC] m_caliza=5; %[kg/h] H_lecho=0.7; %[m] %Limitacion del vapor a la entrada Prop_vapor_max=0.7; % [0-1](vol.) % Datos leakage [0-100]respecto al flujo de gases totales leakage_min=0; leakage_max=20; Paso_leakage=1; %% PROGRAMA out_par=programa_par(comb_c,comb_bio,t_operacion,t_freeboard,t_anal); out_comb=programa_combustible(prop_c_bio,q_comb); leakage_v=leakage_min:paso_leakage:leakage_max; L_leakage=length(leakage_v); for I=1:L_leakage; leakage=leakage_v(i); out_proceso_m=programa_proceso_m(exceso_o2,prop_o2,prop_recirc,out_com b,m_caliza,h_lecho,leakage,prop_vapor_max); % Flujos a la salida out_leakage.m_o2_out_v(i)=out_proceso_m.m_o2_out; out_leakage.m_co2_out_v(i)=out_proceso_m.m_co2_out; out_leakage.m_n2_out_v(i)=out_proceso_m.m_n2_out; out_leakage.m_h2o_out_v(i)=out_proceso_m.m_h2o_out; out_leakage.m_co_out_v(i)=out_proceso_m.m_co_out; out_leakage.m_so2_out_v(i)=out_proceso_m.m_so2_out; out_leakage.m_nox_out_v(i)=out_proceso_m.m_nox_out; % Eficiencias 31

32 out_leakage.ef_lecho_v(i)=out_proceso_m.ef_lecho; out_leakage.ef_combustion_v(i)=out_proceso_m.ef_comb; % Proporciones especies a la salida out_leakage.emisiones_m(i,1)=out_proceso_m.prop_o2_out; out_leakage.emisiones_m(i,2)=out_proceso_m.prop_n2_out; out_leakage.emisiones_m(i,3)=out_proceso_m.prop_co2_out; out_leakage.emisiones_m(i,4)=out_proceso_m.prop_h2o_out; out_leakage.emisiones_m(i,5)=out_proceso_m.prop_co_out; out_leakage.emisiones_m(i,6)=out_proceso_m.prop_nox_out; out_leakage.emisiones_m(i,7)=out_proceso_m.prop_so2_out; out_leakage.leakage_v=leakage_min:paso_leakage:leakage_max; %% OUTPUTS out_leakage.inputs.q_comb=q_comb; out_leakage.inputs.prop_o2=prop_o2; out_leakage.inputs.prop_c_bio=prop_c_bio; out_leakage.inputs.exceso_o2=exceso_o2; out_leakage.inputs.comb_c=comb_c; out_leakage.inputs.comb_bio=comb_bio; out_leakage.inputs.prop_recirc=prop_recirc; Programa_par function out_par=programa_par(comb_c,comb_bio,t_operacion,t_freeboard,t_anal) %% FUNCIÓN Y EJECUCIÓN DEL PROGRAMA % Este subprograma incluye los parámetros y constantes generales necesarios en el resto de los programas %% CONSTANTES % Pesos moleculares [kg/kmol] out_par.pm_o2=32; out_par.pm_c=12; out_par.pm_h2=2; out_par.pm_h=1; out_par.pm_s=32; out_par.pm_n2=28; out_par.pm_n=14; out_par.pm_h2o=18; out_par.pm_co2=44; out_par.pm_co=28; out_par.pm_so2=64; out_par.pm_caso4=136; out_par.pm_caco3=100; out_par.pm_cao=56; out_par.pm_nox=46; % densidad del NO2, como el analizador de gases(ya que oxida la muestra) % DENSIDADES % Densidad caliza out_par.densidad_caliza=2400; 32

33 % Densidades de los gases a la temperatura de operacion %[kg/m3] out_par.dens_o2= e-09*t_operacion^ e- 06*T_operacion^ *T_operacion ; out_par.dens_n2= e-09*t_operacion^ e- 06*T_operacion^ *T_operacion ; out_par.dens_co2= e- 09*T_operacion^ e-06*T_operacion^ *T_operacion ; out_par.dens_h2o= e- 10*T_operacion^ e-06*T_operacion^ *T_operacion ; out_par.dens_co= e-09*t_operacion^ e- 06*T_operacion^ *T_operacion ; % Densidades de los gases a la temperatura del analizador %[kg/m3] out_par.dens_o2_anal= e-09*t_anal^ e- 06*T_anal^ *T_anal ; out_par.dens_n2_anal= e-09*t_anal^ e- 06*T_anal^ *T_anal ; out_par.dens_co2_anal= e- 09*T_anal^ e-06*T_anal^ *T_anal ; out_par.dens_h2o_anal= e- 10*T_anal^ e-06*T_anal^ *T_anal ; out_par.dens_co_anal= e-09*t_anal^ e- 06*T_anal^ *T_anal ; % Parámetros para el cálculo del balance de particulas out_par.prop_inquemados=0.3; % (másico) out_par.d_lecho=0.203; %[m] out_par.factor_fluid=0.75; % Eficiencia de captura de azufre out_par.ef_cap_s=0.99; if T_operacion<780 disp('la temperatura de operación no es idónea (demasiado baja) para la captura se azufre, de modo que su eficacia no será del 0,99') elseif T_operacion>960 disp('la temperatura de operación no es idónea (demasiado alta) para la captura se azufre, de modo que su eficacia no será del 0,99') out_par.t_operacion=t_operacion; %% PROGRAMA if T_freeboard<450 disp('temperatura de Freeboard baja, de modo que habrá más inquemados'); % Proporcion cal viva se forma en función de la temperatura Tabla_CaO=[ %Cuando se trabaje en frio

34 ]; out_par.porc_cao=interp1(tabla_cao(:,1),tabla_cao(:,2),t_operacion,'sp line'); % CARBÓN if comb_c==1 out_par.comb_c='carbón_1:antracita de León'; % Análisis elemental (base seca) out_par.porc_c_bs_c=65.81; out_par.porc_n_bs_c=1.23; out_par.porc_h_bs_c=2.13; %incluye el H2O de la humedad out_par.porc_s_bs_c=1.06; % Porcentajes humedad y cenizas (muestra estabilizada) out_par.porc_h2o_c=2.05; out_par.porc_cenizas_c=26; out_par.pci_c=24009; %[kj/kg] elseif comb_c==2 out_par.comb_c='carbón_2:lignito de Teruel(Carbón de Samca)'; % Análisis elemental(base seca) out_par.porc_c_bs_c=46.89; out_par.porc_n_bs_c=0.32; out_par.porc_h_bs_c=1.92; %incluye el H2O de la humedad out_par.porc_s_bs_c=7.69; % Porcentajes humedad y cenizas (muestra estabilizada) out_par.porc_h2o_c=13.57; out_par.porc_cenizas_c=30.30; out_par.pci_c=3453*4.1868; %[kj/kg] else disp('error: no hay combustible(carbón) asignado a esta marca'); % BIOMASA if comb_bio==1 out_par.comb_bio='biomasa_1: biomasa forestal'; % Análisis elemental (base seca) out_par.porc_c_bs_bio=49.47; out_par.porc_n_bs_bio=4.86; out_par.porc_h_bs_bio=0.52; out_par.porc_s_bs_bio=0.07; 34

35 %Porcentajes humedad y cenizas (muestra estabilizada) out_par.porc_h2o_bio=8.57; out_par.porc_cenizas_bio=1.51; out_par.pci_bio=3953*4.1868; % [kj/kg] else disp('error: no hay combustible(biomasa) asignado a esta marca'); Programa_combustible function out_comb=programa_combustible(prop_c_bio,q_comb) %% FUNCIÓN Y EJECUCIÓN DEL PROGRAMA %Este subprograma calcula los flujos másicos de combustible necesarios para las condiciones %de operación impuestas en los programas principales. %% CONSTANTES global out_par %% PROGRAMA % Potencia necesaria carbon/biomasa [kw] Q_c=prop_c_bio*Q_comb; Q_bio=(1-prop_c_bio)*Q_comb; % Flujo másico necesario carbón/biomasa m_c=q_c/out_par.pci_c; %[kg/s] m_bio=q_bio/out_par.pci_bio; %[kg/s] %CARBÓN %base seca --> base humeda Porc_C_c=out_par.Porc_C_bs_c/(100*(1+out_par.Porc_H2O_c/100)); % (% masico) Porc_N_c=out_par.Porc_N_bs_c/(100*(1+out_par.Porc_H2O_c/100)); % (% masico) Porc_H_c=out_par.Porc_H_bs_c/(100*(1+out_par.Porc_H2O_c/100)); % (% masico) Porc_S_c=out_par.Porc_S_bs_c/(100*(1+out_par.Porc_H2O_c/100)); % (% masico) Porc_O2_c=1-out_par.Porc_H2O_c/100-out_par.Porc_cenizas_c/100- (Porc_C_c+Porc_N_c+Porc_H_c+Porc_S_c); % (% masico) % Flujo másico elementos del carbón [kg/s] m_c_c=porc_c_c*m_c; m_n_c=porc_n_c*m_c; m_h_c=porc_h_c*m_c; m_s_c=porc_s_c*m_c; m_o2_c=porc_o2_c*m_c; m_h2o_c=out_par.porc_h2o_c/100*m_c; m_cenizas_c=out_par.porc_cenizas_c/100*m_c; %BIOMASA 35

36 % Base seca --> Base humeda Porc_C_bio=out_par.Porc_C_bs_bio/(100*(1+out_par.Porc_H2O_c/100)); % (% masico) Porc_N_bio=out_par.Porc_N_bs_bio/(100*(1+out_par.Porc_H2O_c/100)); % (% masico) Porc_H_bio=out_par.Porc_H_bs_bio/(100*(1+out_par.Porc_H2O_c/100)); % (% masico) Porc_S_bio=out_par.Porc_S_bs_bio/(100*(1+out_par.Porc_H2O_c/100)); % (% masico) Porc_O2_bio=1-out_par.Porc_H2O_bio/100-out_par.Porc_cenizas_bio/100- (Porc_C_bio+Porc_N_bio+Porc_H_bio+Porc_S_bio); % Flujo másico elementos de la biomasa [kg/s] m_c_bio=porc_c_bio*m_bio; m_o2_bio=porc_o2_bio*m_bio; m_n_bio=porc_n_bio*m_bio; m_h_bio=porc_h_bio*m_bio; m_s_bio=porc_s_bio*m_bio; m_h2o_bio=out_par.porc_h2o_bio/100*m_bio; m_cenizas_bio=out_par.porc_cenizas_bio/100*m_bio; % COMBUSTIBLE (mezcla) out_comb.m_comb=m_c+m_bio; %[kg/s] out_comb.pci_comb=q_comb/out_comb.m_comb; %[kj/kg] % masa de cada elemento del combustible [kg/s] out_comb.m_c_comb=m_c_c+m_c_bio; out_comb.m_o2_comb=m_o2_c+m_o2_bio; out_comb.m_n_comb=m_n_c+m_n_bio; out_comb.m_h_comb=m_h_c+m_h_bio; out_comb.m_s_comb=m_s_c+m_s_bio; out_comb.m_h2o_comb=m_h2o_c+m_h2o_bio; out_comb.m_cenizas_comb=m_cenizas_c+m_cenizas_bio; % moles de cada elemento del combustible [kmol/s] out_comb.n_c_comb=out_comb.m_c_comb/out_par.pm_c; out_comb.n_o2_comb=out_comb.m_o2_comb/out_par.pm_o2; out_comb.n_n_comb=out_comb.m_n_comb/out_par.pm_n; out_comb.n_h_comb=out_comb.m_h_comb/out_par.pm_h; out_comb.n_s_comb=out_comb.m_s_comb/out_par.pm_s; out_comb.n_h2o_comb=out_comb.m_h2o_comb/out_par.pm_h2o; out_comb.prop_c_bio=prop_c_bio; Programa_proceso_m function out_proceso_m=programa_proceso_m(exceso_o2,prop_o2,prop_recirc,out_com b,m_caliza,h_lecho,leakage,prop_vapor_max) %% FUNCIÓN Y EJECUCIÓN DEL PROGRAMA % Este subprograma es realiza todos los cálculos necesarios respecto a la desulfuración, combustión, recirculación y sus limitaciones, condensación del vapor de agua y balance de partículas. %% CONSTANTES global out_par 36

37 Porc_N2_bot_O2=0.01; % 1% (vol.) Porc_N2_bot_CO2=0.01; % 1% (vol.) Porc_O2_air=0.21; % (vol.) prop_recirc_0=prop_recirc; % (vol.) valor deseado (sin limitar) %% PROGRAMA % DESULFURACIÓN n_caco3=m_caliza/(out_par.pm_caco3*3600); %[kmol/s] rate_ca_s=n_caco3/out_comb.n_s_comb; %[-] % Cal viva generada f(t) m_cao=n_caco3*out_par.pm_cao*out_par.porc_cao; % [kg/s] n_cao=m_cao/out_par.pm_cao; %[kmol/s] % Caliza consumida debida a la calcinacion m_caco3_c_cons=(m_cao/out_par.pm_cao)*out_par.pm_caco3*1; % [kg/s] %Caliza consumida debida a la desulfuración directa (Tªbaja) if out_comb.n_s_comb>n_cao m_caco3_dd_cons=(out_comb.n_s_combn_cao)*out_par.ef_cap_s*out_par.pm_caco3*1; % [kg/s] else m_caco3_dd_cons=0; % [kg/s] m_caco3_no_consumido=m_caliza/3600-m_caco3_c_cons-m_caco3_dd_cons; % [kg/s](cenizas) n_caco3_cons=(m_caco3_c_cons+m_caco3_dd_cons)/out_par.pm_caco3; %[kmol/s] % emisiones de CO2 debidas a la desulfuración m_co2_calc=n_caco3_cons*out_par.pm_co2; % [kg/s] % Sulfato de calcio(cenizas) debidas a la desulfuración n_caso4=out_comb.n_s_comb*out_par.ef_cap_s; %[kmol/s] el limitante es el azufre (rate_ca_s elevado) m_caso4=n_caso4*out_par.pm_caso4; % [kg/s] m_cao_consumido=(m_caco3_c_cons/out_par.pm_caco3)*out_par.pm_cao*1; % [kg/s] m_cao_no_consumido=m_cao-m_cao_consumido; % [kg/s] (cenizas) if rate_ca_s<2 disp('ojo: tenemos una proporcion de caliza pequeña ( no desulfuracion completa)'); % COMBUSTIÓN % O2 estequiometrico n_o2_est=out_comb.n_c_comb+0.25*out_comb.n_h_comb+out_comb.n_s_combout_comb.n_o2_comb; %[kmol/s] m_o2_est=n_o2_est*out_par.pm_o2; % [kg/s] % O2 en la entrada n_o2_in=n_o2_est*(1+exceso_o2); %[kmol/s] m_o2_in=n_o2_in*out_par.pm_o2; % [kg/s] 37

38 % Gases en la entrada n_gases_in_t=n_o2_in/prop_o2; %[kmol/s] n_gases_in=n_gases_in_t; % [kmol/s] valor inicial n_o2_botella=n_o2_in; % [kmol/s] valor inicial n_botella_o2=n_o2_botella*(1+(porc_n2_bot_o2/(1-porc_n2_bot_o2))); % [kmol/s] valor inicial n_rellenar=n_gases_in_t-n_botella_o2; %[kmol/s] % DIMENSIONES DEL LECHO A_lecho= *(out_par.D_lecho^2)/4; Vol_lecho=A_lecho*H_lecho; %[m3] %[m2] % INICIALIZACIÓN VARIABLES ITERACION E=100; n_total_gas_out=0; prop_h2o_out=0; n_h2o_out=0; n_o2_out_t=0; n_co2_out=0; n_n2_out_t=0; n_so2_out=0; n_nox_out=0; n_co_out=0; n_botellas=0; n_cond=0; n_iteraciones=0; H2O_v=[]; NOx_v=[]; CO_v=[]; SO2_v=[]; if prop_recirc>0 figure % grafica convergencia while E> ; n_recirc=prop_recirc*n_total_gas_out; %[kmol/s] % LIMITACIÓN DEL VAPOR DE AGUA EN LA ENTRADA n_h2o_recirc=prop_h2o_out/100*n_recirc; %[kmol/s] n_h2o_recircularia=n_h2o_recirc; %[kmol/s] Prop_vapor_rec_max=min(1,Prop_vapor_max*(n_recirc+n_botellasn_cond)/(n_recirc-n_cond)); n_h2o_recirc_c_max=prop_vapor_rec_max*(n_recirc-n_cond); %[kmol/s] if n_h2o_recirc>n_h2o_recirc_c_max %[kmol/s] necesario condensar n_cond=n_h2o_recirc-n_h2o_recirc_c_max; %[kmol/s] n_h2o_recirc=n_h2o_recirc_c_max; %[kmol/s] else %no necesario condensar n_cond=0; %[kmol/s] n_h2o_recirc=n_h2o_out*prop_recirc; %[kmol/s] n_recirc_c=n_recirc-n_cond; %[kmol/s] 38

39 n_h2o_in=n_h2o_recirc; %[kmol/s] m_h2o_in=n_h2o_in*out_par.pm_h2o; %[kg/s] % LIMITACION DEL CAUDAL DE GASES A RECIRCULAR n_recirc_c_max=n_gases_in_t-n_botella_o2; %[kmol/s] prop_recirc_max=min(1,(n_gases_in_tn_botella_o2+n_cond)/n_total_gas_out); if n_recirc_c>n_recirc_c_max prop_recirc=prop_recirc_max; n_recirc_c=n_gases_in_t-n_botella_o2; n_recirc=n_gases_in_t-n_botella_o2+n_cond; %[kmol/s] %[kmol/s] %[kmol/s] elseif n_recirc_c<n_recirc_c_max %[kmol/s] if n_recirc_c<prop_recirc_0*n_total_gas_out-n_cond %[kmol/s] prop_recirc=prop_recirc_max; n_recirc_c=n_gases_in_t-n_botella_o2; %[kmol/s] n_recirc=n_gases_in_t-n_botella_o2+n_cond; %[kmol/s] %GASES EN LA ENTRADA %O2 n_o2_recirc=prop_recirc*n_o2_out_t; %[kmol/s] n_o2_botella=n_o2_in-n_o2_recirc; %[kmol/s] m_o2_botella=n_o2_botella*out_par.pm_o2; %[kg/s] %N2 de las botellas de O2 n_n2_o2=n_o2_botella*porc_n2_bot_o2/(1-porc_n2_bot_o2); %[kmol/s] m_n2_o2=n_n2_o2*out_par.pm_n2; %[kg/s] % Flujo botella de O2 n_botella_o2=n_o2_botella+n_n2_o2; %[kmol/s] %CO2 n_co2_recirc=prop_recirc*n_co2_out; %[kmol/s] n_botella_co2=n_gases_in_t-n_recirc_c-n_botella_o2; %[kmol/s] n_co2_botella=n_botella_co2*(1-porc_n2_bot_co2); %[kmol/s] m_co2_botella=n_co2_botella*out_par.pm_co2; %[kg/s] n_co2_in=n_co2_botella+n_co2_recirc; %[kmol/s] m_co2_in=n_co2_in*out_par.pm_co2; %[kg/s] %N2 de las botellas de CO2 n_n2_co2=n_botella_co2*porc_n2_bot_co2; %[kmol/s] m_n2_co2=n_n2_co2*out_par.pm_n2; %[kg/s] % Flujo de botellas n_botellas=n_botella_o2+n_botella_co2;%[kmol/s] %N2 n_n2_in=n_n2_o2+n_n2_co2+prop_recirc*n_n2_out_t; %[kmol/s] m_n2_in=n_n2_in*out_par.pm_n2; %[kg/s] %SO2 n_so2_in=n_so2_out*prop_recirc; m_so2_in=n_so2_in*out_par.pm_so2; %[kmol/s] %[kg/s] 39

40 %CO n_co_in=n_co_out*prop_recirc; m_co_in=n_co_in*out_par.pm_co; %[kmol/s] %[kg/s] %NOx n_nox_in=n_nox_out*prop_recirc; m_nox_in=n_nox_in*out_par.pm_nox; %[kmol/s] %[kg/s] % FLUJO DE GASES DE ENTRADA TOTAL (sin infiltración) m_gases_in=m_n2_in+m_h2o_in+m_o2_in+m_co2_in+m_so2_in+m_co_in+m_nox_in ; %[kg/s] n_gases_in=n_o2_in+n_n2_in+n_co2_in+n_h2o_in+n_so2_in+n_co_in+n_nox_in ; %[kmol/s] % VELOCIDAD DE FLUIDIZACIÓN % Proporciones de los gases en la entrada prop_o2_in=n_o2_in/n_gases_in; % [-], % prop_n2_in=n_n2_in/n_gases_in; % [-], % prop_co2_in=n_co2_in/n_gases_in; % [-], % prop_h2o_in=n_h2o_in/n_gases_in; % [-], % prop_co_in=n_co_in/n_gases_in; % [-], % dens_gases_in=prop_o2_in*out_par.dens_o2+prop_n2_in*out_par.dens_n2+pr op_co2_in*out_par.dens_co2+prop_h2o_in*out_par.dens_h2o+prop_co_in*out _par.dens_co; %[kg/m3] caudal_gases_in=m_gases_in/dens_gases_in; %[m3/s] Uf=caudal_gases_in/A_lecho; %[m/s] % CORRELACIONES EMPÍRICAS PARA CÁLCULO DE EMISIONES %Ratio Conversión C-->CO ratio_conv_co=min(1,max(0,( *uf *exceso_O2*100)/100)); %[Kmol_c/Kmol_c = -] %Ratio Conversión N-->NOX ratio_conv_nox=min(1,max(0, *out_par.T_operacion *exceso_O2*100)); % (vol.) %[Kmol_N/Kmol_N = -] % %Proporción arrastrados Prop_arrastrado=min(0.2,max(0,1.5622*Uf )); % (másico) [-], % GASES SALIDA % Flujo másico[kg/s] m_co_out=(ratio_conv_co*out_comb.n_c_comb)*out_par.pm_co+m_co_in; m_nox_out=(ratio_conv_nox*out_comb.n_n_comb)*out_par.pm_nox+m_nox_in; % Eficiencia del lecho m_c_inquemados=out_par.prop_inquemados*prop_arrastrado*out_comb.m_comb ; m_c_co=m_co_out*(12/28); 40

41 ef_combustion=(out_comb.m_c_comb-m_c_inquemadosm_c_co)/out_comb.m_c_comb; m_o2_out_teo=m_o2_in-m_o2_est; m_o2_out=m_o2_in- (out_comb.n_c_comb*ef_combustion+0.5*out_comb.n_h_comb+out_comb.n_s_co mbout_comb.n_o2_comb+0.5*out_comb.n_s_comb*out_par.ef_cap_s)*out_par.pm_ O2; m_n2_out=m_n2_in+(out_comb.n_n_comb*out_par.pm_n-m_nox_out); m_co2_out=m_co2_in+out_comb.n_c_comb*(1- ratio_conv_co)*out_par.pm_co2+m_co2_calc; m_h2o_out=m_h2o_in+(out_comb.n_h2o_comb+out_comb.n_h_comb)*out_par.pm_ H2O; m_so2_out=out_comb.n_s_comb*(1- out_par.ef_cap_s)*out_par.pm_so2+m_so2_in; m_gases_out=m_o2_out+m_n2_out+m_co2_out+m_h2o_out+m_so2_out+m_nox_out+ m_co_out; % Flujo molar [kmol/s] n_o2_out=m_o2_out/out_par.pm_o2; n_n2_out=m_n2_out/out_par.pm_n2; n_co2_out=m_co2_out/out_par.pm_co2; n_h2o_out=m_h2o_out/out_par.pm_h2o; n_co_out=m_co_out/out_par.pm_co; n_nox_out=m_nox_out/out_par.pm_nox; n_so2_out=m_so2_out/out_par.pm_so2; n_gases_out=n_o2_out+n_n2_out+n_co2_out+n_h2o_out+n_co_out+n_nox_out+n _SO2_out; % INFILTRACION n_total_gas_out=n_gases_out*(1+leakage/100); n_leakage=n_total_gas_out*leakage/100; n_n2_leakage=n_leakage*(1-porc_o2_air); %[kg/s] n_o2_leakage=n_leakage*porc_o2_air; %[kg/s] n_o2_out_t=n_o2_out+n_o2_leakage; %[kg/s] n_n2_out_t=n_n2_out+n_n2_leakage; %[kg/s] m_o2_out_t=n_o2_out_t*out_par.pm_o2; %[kmol/s] m_n2_out_t=n_n2_out_t*out_par.pm_n2; %[kmol/s] m_total_gas_out=m_o2_out_t+m_n2_out_t+m_co2_out+m_h2o_out+m_so2_out+m_ CO_out+m_NOx_out; %[kg/s] % PROPORCIONES EMISIONES A LA SALIDA prop_o2_out_sl=n_o2_out/n_gases_out*100; considerar el leakage prop_n2_out_sl=n_n2_out/n_gases_out*100; considerar el leakage % [-], %, (vol.) sin % [-], %, (vol.) sin prop_o2_out=(n_o2_out_t/n_total_gas_out)*100; % [-], %, (vol.) 41

42 prop_n2_out=(n_n2_out_t/n_total_gas_out)*100; % [-], %, (vol.) prop_co2_out=(n_co2_out/n_total_gas_out)*100; % [-], %, (vol.) prop_h2o_out=(n_h2o_out/n_total_gas_out)*100; % [-], %, (vol.) prop_co_out=(n_co_out/n_total_gas_out)*100; % [-], %,(vol.) prop_nox_out=(n_nox_out/n_total_gas_out)*100; % [-], %, (vol.) prop_so2_out=(n_so2_out/n_total_gas_out)*100; % [-], %, (vol.) % CONVERGENCIA ESPECIES n_iteraciones=n_iteraciones+1; H2O_v(n_iteraciones)=m_H2O_out; NOx_v(n_iteraciones)=m_NOx_out; CO_v(n_iteraciones)=m_CO_out; SO2_v(n_iteraciones)=m_SO2_out; O2_v(n_iteraciones)=m_O2_out; CO2_v(n_iteraciones)=m_CO2_out; N2_v(n_iteraciones)=m_N2_out; %CONDICION ITERACION E=abs(n_recirc-n_total_gas_out*prop_recirc); % CONVERGENCIA RECIRCULACIÓN if prop_recirc>0 Dif_v=n_recirc_c-n_total_gas_out*prop_recirc-n_cond; plot(n_iteraciones,dif_v,'r.','markersize', 20) drawnow hold on xlabel('n_i_t_e_r_a_c_i_o_n_e_s'); ylabel('error [kmol/s]'); title(['convergencia RECIRCULACIÓN',char(10),' Prop_r_e_c_i_r_c=',num2str(prop_recirc)]); % SALIDAS ACTUACIÓN % Caudal en la entrada del lecho dens_gases_anal=prop_o2_in*out_par.dens_o2_anal+prop_n2_in*out_par.den s_n2_anal+prop_co2_in*out_par.dens_co2_anal+prop_h2o_in*out_par.dens_h 2O+prop_CO_in*out_par.dens_CO; %[m3/h] C1=(m_gases_in/dens_gases_anal)*3600; %[m3/h] % Caudal de las botellas C_bot=(m_O2_botella/out_par.dens_O2_anal+m_CO2_botella/out_par.dens_CO 2_anal+(m_N2_O2+m_N2_CO2)/out_par.dens_N2_anal)*3600;%[m3/h] % Caudal a la salida del lecho dens_gases_out_anal=(prop_o2_out/100)*out_par.dens_o2_anal+(prop_n2_ou t/100)*out_par.dens_n2_anal+(prop_co2_out/100)*out_par.dens_co2_anal+( prop_h2o_out/100)*out_par.dens_h2o_anal+(prop_co_out/100)*out_par.dens _CO_anal; C2=m_total_gas_out/dens_gases_out_anal*3600;%[m3/h] % Caudal recirculado C3=prop_recirc*((m_O2_out_t/out_par.dens_O2_anal)+(m_N2_out_t/out_par. 42

43 dens_n2_anal)+(m_co2_out/out_par.dens_co2_anal)+(m_h2o_in/out_par.dens _H2O_anal)+(m_CO_out/out_par.dens_CO_anal))*3600;%[m3/h] %Porcentaje de O2 en el mezclador Porc_O2_mezc=(n_botella_O2/n_botellas)*100; % Válvula V2 if C_bot< V2=(C_bot )/100.47; else V2=(1/3.4524)*log(C_bot/6.3334); % Presión P1 if V2<0.7 P1=176.18*V ; else P1=10.781*exp(3.4801*V2); % BALANCE PARTÍCULAS DEL LECHO m_particulas_total=out_comb.m_cenizas_comb+m_caso4+m_caco3_no_consumid o+m_cao_no_consumido; % cenizas lecho + evacuadas + arrastradas [kg/s] densidad_fluid=out_par.densidad_caliza*(1-out_par.factor_fluid); %[kg/m3] m_lecho=densidad_fluid*vol_lecho; %[kg] particulas_arrastradas=(1- out_par.prop_inquemados)*prop_arrastrado*out_comb.m_comb; %[Kg/s] if m_particulas_total>particulas_arrastradas particulas_eva=m_particulas_total-particulas_arrastradas; %[Kg/s] else particulas_eva=0; particulas_arrastradas=m_particulas_total; %% OUTPUTS % Vectores para los gráficos de sectores out_proceso_m.h2o_v=h2o_v; out_proceso_m.nox_v=nox_v; out_proceso_m.co_v=co_v; out_proceso_m.so2_v=so2_v; out_proceso_m.co2_v=co2_v; out_proceso_m.o2_v=o2_v; out_proceso_m.n2_v=n2_v; % Estudio O2 necesario en la entrada out_proceso_m.n_o2_in=n_o2_in; out_proceso_m.n_botella_o2=n_botella_o2; out_proceso_m.n_o2_botella=n_o2_botella; out_proceso_m.n_botella_o2=n_botella_o2; % Proporciones emisiones out_proceso_m.prop_o2_out=prop_o2_out; out_proceso_m.prop_n2_out=prop_n2_out; 43

44 out_proceso_m.prop_co2_out=prop_co2_out; out_proceso_m.prop_h2o_out=prop_h2o_out; out_proceso_m.prop_co_out=prop_co_out; out_proceso_m.prop_nox_out=prop_nox_out; out_proceso_m.prop_so2_out=prop_so2_out; % Estudio eficiencias out_proceso_m.ef_comb=ef_combustion; out_proceso_m.uf=uf; % Estudio CO2 necesario en la entrada out_proceso_m.n_co2_in=n_co2_in; out_proceso_m.n_botella_co2=n_botella_co2; out_proceso_m.n_co2_botella=n_co2_botella; out_proceso_m.n_rellenar=n_rellenar; % Flujos emisiones out_proceso_m.m_o2_out=m_o2_out_t; out_proceso_m.m_n2_out=m_n2_out_t; out_proceso_m.m_co_out=m_co_out; out_proceso_m.m_co2_out=m_co2_out; out_proceso_m.m_h2o_out=m_h2o_out; out_proceso_m.m_so2_out=m_so2_out; out_proceso_m.m_nox_out=m_nox_out; out_proceso_m.m_o2_est=m_o2_est; % Salidas condensacion out_proceso_m.n_h2o_in=n_h2o_in; out_proceso_m.n_cond=n_cond; out_proceso_m.n_h2o_recircularia=n_h2o_recircularia; out_proceso_m.n_h2o_recirc_c_max=n_h2o_recirc_c_max; % Salidas limitacion moles entrada out_proceso_m.n_recirc_c=n_recirc_c; out_proceso_m.n_gases_in=n_gases_in; out_proceso_m.n_recirc_c_max=n_recirc_c_max; out_proceso_m.prop_recirc_max=prop_recirc_max; out_proceso_m.prop_recirc=prop_recirc; % Salidas de actuación out_proceso_m.c1=c1; out_proceso_m.c_bot=c_bot; out_proceso_m.c2=c2; out_proceso_m.c3=c3; out_proceso_m.porc_o2_mezc=porc_o2_mezc; out_proceso_m.v2=v2; out_proceso_m.p1=p1; % Estudio leakage out_proceso_m.m_o2_out_teo=m_o2_out_teo; out_proceso_m.m_gases_out=m_gases_out; out_proceso_m.prop_o2_out_sl=prop_o2_out_sl; out_proceso_m.prop_n2_out_sl=prop_n2_out_sl; % Estudio balance de cenizas out_proceso_m.m_particulas_total=m_particulas_total; out_proceso_m.particulas_arrastradas=particulas_arrastradas; out_proceso_m.particulas_eva=particulas_eva; out_proceso_m.m_lecho=m_lecho; 44

45 Programa_plotting_recirc function Programa_plotting_recirc(out_recirc) %% FUNCIÓN Y EJECUCIÓN DEL PROGRAMA % Este programa es el encargado de representar los datos calculados con % Programa_recirc. %% PROGRAMA %OXÍGENO NECESARIO A LA ENTRADA figure plot(out_recirc.prop_recirc_v,out_recirc.n_botella_o2_v,'g+--') hold on plot(out_recirc.prop_recirc_v,out_recirc.o2_nec_v,'r-') hold on plot(out_recirc.prop_recirc_v,out_recirc.n_o2_botella_v,'mo--') leg('n_b_o_t_e_l_l_ao2','no2_i_n','n_o_2botella') xlabel('prop_r_e_c_i_r_c'); ylabel('o2_n_e_c_e_s_a_r_i_o [kmol/s]'); title(['estudio CANTIDAD DE OXÍGENO NECESARIO EN LA ENTRADA',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) % CO2 NECESARIO A LA ENTRADA figure plot(out_recirc.prop_recirc_v,out_recirc.n_botella_co2_v,'g+--') hold on plot(out_recirc.prop_recirc_v,out_recirc.co2_nec_v,'b+--') hold on plot(out_recirc.prop_recirc_v,out_recirc.n_co2_botella_v,'yo--') hold on plot(out_recirc.prop_recirc_v,out_recirc.n_rellenar,'r+--') leg('n_b_o_t_e_l_l_aco2','nco2_i_n','n_c_o_2botella','n_r_e_l_l_e_n _a_r') xlabel('prop_r_e_c_i_r_c'); ylabel('co2_n_e_c_e_s_a_r_i_o [kmol/s]'); title(['estudio CANTIDAD DE CO2 NECESARIO EN LA ENTRADA',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) %ESTUDIO CONDENSACIÓN H2O figure plot(out_recirc.prop_recirc_v,out_recirc.n_h2o_in_v,'r+-') hold on plot(out_recirc.prop_recirc_v,out_recirc.n_h2o_rec_v,'mo--') hold on plot(out_recirc.prop_recirc_v,out_recirc.n_cond_v,'go--') hold on plot(out_recirc.prop_recirc_v,out_recirc.n_h2o_recirc_c_max_v,'bo--') 45

46 leg('vapor recircula','vapor recircularia','vapor condensa','vapor max. rec.') xlabel('prop_r_e_c_i_r_c'); ylabel('flujos Vapor [kmol/s]'); title(['estudio CONDENSACIÓN DEL VAPOR',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) %ESTUDIO LIMITACIÓN MOLES A LA ENTRADA figure plot(out_recirc.prop_recirc_v,out_recirc.n_recirc_c_v,'y+--') hold on plot(out_recirc.prop_recirc_v,out_recirc.n_gases_in_v,'go--') hold on plot(out_recirc.prop_recirc_v,out_recirc.n_recirc_c_max_v,'bo--') leg('moles recirculan','moles en la entrada','moles max recircular') xlabel('prop_r_e_c_i_r_c'); ylabel('flujos [kmol/s]'); title(['estudio LIMITACIÓN MOLES A LA ENTRADA',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) % EMISIONES % O2 figure plot(out_recirc.prop_recirc_v,out_recirc.m_o2_out_v*1000,'b+--') hold on xlabel('prop_r_e_c_i_r_c'); ylabel('m_o_2 [kg/s] *10^-3'); title(['flujo MÁSICO DE O2 A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) % CO2 figure plot(out_recirc.prop_recirc_v,out_recirc.m_co2_out_v*1000,'g+--') hold on xlabel('prop_r_e_c_i_r_c'); ylabel('m_c_o_2 [kg/s] *10^-3'); title(['flujo MÁSICO DE CO2 A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) % N2 figure plot(out_recirc.prop_recirc_v,out_recirc.m_n2_out_v*1000,'r+--') hold on xlabel('prop_r_e_c_i_r_c'); ylabel('m_n_2 [kg/s] *10^-3'); title(['flujo MÁSICO DE N2 A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' 46

47 prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) % H2O figure plot(out_recirc.prop_recirc_v,out_recirc.m_h2o_out_v*1000,'c+--') hold on xlabel('prop_r_e_c_i_r_c'); ylabel('m_h_2_o [kg/s] *10^-3'); title(['flujo MÁSICO DE H2O A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) % SO2 figure plot(out_recirc.prop_recirc_v,out_recirc.m_so2_out_v* ,'y+--') hold on xlabel('prop_r_e_c_i_r_c'); ylabel('m_s_o_2 [kg/s]*10^-6'); title(['flujo MÁSICO DE SO2 A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) % CO figure plot(out_recirc.prop_recirc_v,out_recirc.m_co_out_v* ,'m+--') hold on xlabel('prop_r_e_c_i_r_c'); ylabel('m_c_o [kg/s]*10^-6'); title(['flujo MÁSICO DE CO A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) % NOx figure plot(out_recirc.prop_recirc_v,out_recirc.m_nox_out_v* ,'k+--') hold on xlabel('prop_r_e_c_i_r_c'); ylabel('m_n_o_x *10^-6'); title(['flujo MÁSICO DE NOx A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) %Proporciones --> GRÁFICO DE BARRAS PROPORCIONES DE LAS EMISIONES L_prop_recirc=length(out_recirc.prop_recirc_v); %Para que no de error al representar el grafico for I=1:L_prop_recirc; for J=1:7; if out_recirc.emisiones_m(i,j)<=0 out_recirc.emisiones_m(i,j)=10^-10; 47

48 figure Y=round(out_recirc.emisiones_m); bar(out_recirc.prop_recirc_v,y,3); Axis('tight'); leg('o2','n2','co2','h2o','co','nox','so2'); xlabel('prop_r_e_c_i_r_c'); ylabel('prop especies salida %'); title(['proporción EMISIONES',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW', char(10),' prop_o_2=',num2str(out_recirc.inputs.prop_o2),char(10),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),char(10),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) % EFICIENCIAS % Eficiencia lecho figure plot(out_recirc.prop_recirc_v,out_recirc.ef_lecho_v*100,'r*:') hold on xlabel('prop_r_e_c_i_r_c'); ylabel('ef_l_e_c_h_o %'); title(['eficiencia LECHO',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) % Eficiencia combustión figure plot(out_recirc.prop_recirc_v,out_recirc.ef_combustion_v*100,'m*:') hold on xlabel('prop_r_e_c_i_r_c'); ylabel('ef_c_o_m_b_u_s_t_i_o_n %'); title(['eficiencia COMBUSTIÓN',char(10),' Q_c_o_m_b=',num2str(out_recirc.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_recirc.inputs.prop_o2),' prop_c_/_b_i_o=',num2str(out_recirc.inputs.prop_c_bio),' exceso_o_2=',num2str(out_recirc.inputs.exceso_o2)]) Programa_plotting_leakage function Programa_plotting_leakage(out_leakage) %% FUNCIÓN Y EJECUCIÓN DEL PROGRAMA % Este programa es el encargado de representar los datos calculados conprograma_leakage. %% PROGRAMA % EMISIONES % O2 figure plot(out_leakage.leakage_v,out_leakage.m_o2_out_v*1000,'b+--') hold on xlabel('leakage %'); ylabel('m_o_2 [kg/s] *10^-3'); 48

49 title(['flujo DE O2 A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_leakage.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_leakage.inputs.prop_o2),' prop_r_e_c_i_r_c=',num2str(out_leakage.inputs.prop_recirc)]) % CO2 figure plot(out_leakage.leakage_v,out_leakage.m_co2_out_v*1000,'g+--') hold on xlabel('leakage %'); ylabel('m_c_o_2 [kg/s] *10^-3'); title(['flujo DE CO2 A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_leakage.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_leakage.inputs.prop_o2),' prop_r_e_c_i_r_c=',num2str(out_leakage.inputs.prop_recirc)]) % N2 figure plot(out_leakage.leakage_v,out_leakage.m_n2_out_v*1000,'r+--') hold on xlabel('leakage %'); ylabel('m_n_2 [kg/s] *10^-3'); title(['flujo DE N2 A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_leakage.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_leakage.inputs.prop_o2),' prop_r_e_c_i_r_c=',num2str(out_leakage.inputs.prop_recirc)]) % H2O figure plot(out_leakage.leakage_v,out_leakage.m_h2o_out_v*1000,'c+--') hold on xlabel('leakage %'); ylabel('m_h_2_o [kg/s] *10^-3'); title(['flujo DE H2O A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_leakage.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_leakage.inputs.prop_o2),' prop_r_e_c_i_r_c=',num2str(out_leakage.inputs.prop_recirc)]) % SO2 figure plot(out_leakage.leakage_v,out_leakage.m_so2_out_v* ,'y+--') hold on xlabel('leakage %'); ylabel('m_s_o_2 [kg/s]*10^-6'); title(['flujo DE SO2 A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_leakage.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_leakage.inputs.prop_o2),' prop_r_e_c_i_r_c=',num2str(out_leakage.inputs.prop_recirc)]) % CO figure plot(out_leakage.leakage_v,out_leakage.m_co_out_v* ,'m+--') hold on xlabel('leakage %'); ylabel('m_c_o [kg/s]*10^-6'); title(['flujo DE CO A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_leakage.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_leakage.inputs.prop_o2),' prop_r_e_c_i_r_c=',num2str(out_leakage.inputs.prop_recirc)]) 49

50 % NOx figure plot(out_leakage.leakage_v,out_leakage.m_nox_out_v* ,'k+--') hold on xlabel('leakage %'); ylabel('m_n_o_x [kg/s]*10^-6'); title(['flujo DE NOx A LA SALIDA',char(10),' Q_c_o_m_b=',num2str(out_leakage.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_leakage.inputs.prop_o2),' prop_r_e_c_i_r_c=',num2str(out_leakage.inputs.prop_recirc)]) %Proporciones --> GRÁFICO DE SECTORES DE LAS EMISIONES L_leakage=length(out_leakage.leakage_v); %Para que no de error al representar el grafico for I=1:L_leakage; for J=1:7; if out_leakage.emisiones_m(i,j)<=0 out_leakage.emisiones_m(i,j)=10^-10; figure Y=round(out_leakage.emisiones_m); bar(out_leakage.leakage_v,y,3); Axis('tight'); leg('o2','n2','co2','h2o','co','nox','so2'); xlabel('leakage %'); ylabel('prop especies salida %'); title(['proporción EMISIONES',char(10),' Q_c_o_m_b=',num2str(out_leakage.inputs.Q_comb),' KW', char(10),' prop_o_2=',num2str(out_leakage.inputs.prop_o2),char(10),' prop_c_/_b_i_o=',num2str(out_leakage.inputs.prop_c_bio),char(10),' exceso_o_2=',num2str(out_leakage.inputs.exceso_o2)]) % EFICIENCIAS % Eficiencia lecho figure plot(out_leakage.leakage_v,out_leakage.ef_lecho_v*100,'r*:') hold on xlabel('leakage'); ylabel('ef_l_e_c_h_o %'); title(['eficiencia LECHO',char(10),' Q_c_o_m_b=',num2str(out_leakage.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_leakage.inputs.prop_o2),' prop_r_e_c_i_r_c=',num2str(out_leakage.inputs.prop_recirc)]) % Eficiencia combustión figure plot(out_leakage.leakage_v,out_leakage.ef_combustion_v*100,'m*:') hold on xlabel('leakage'); ylabel('ef_c_o_m_b_u_s_t_i_o_n %'); title(['eficiencia COMBUSTIÓN',char(10),' Q_c_o_m_b=',num2str(out_leakage.inputs.Q_comb),' KW ',' prop_o_2=',num2str(out_leakage.inputs.prop_o2),' prop_r_e_c_i_r_c=',num2str(out_leakage.inputs.prop_recirc)]) 50

51 VI.4 Ampliación de los resultados de simulación En esta sección se muestran resultados de los programas de estudio de la recirculación y de las infiltraciones que por motivos de espacio no han sido incluidos en la memoria del trabajo. Ampliación de los resultados de Programa_recirc En las ilustraciones siguientes se representa la evolución de los flujos másicos a la salida del lecho fluido de las distintas especies de estudio para distintas proporciones de recirculación y las eficiencias de combustión y del lecho fluido burbujeante: 1.48 FLUJO MÁSICO DE O2 A LA SALIDA Q comb =90 kw prop O2 =0.3 prop c/bio =0.5 exceso O2 = FLUJO MÁSICO DE CO2 A LA SALIDA Q comb =90 kw prop O2 =0.3 prop c/bio =0.5 exceso O2 = m O2 [kg/s] * m CO2 [kg/s] * prop recirc prop recirc Ilustración 15. Gráfica de Programa_recirc sobre las emisiones de oxígeno Ilustración 16. Gráfica de Programa_recirc sobre las emisiones de dióxido de carbono 2.8 FLUJO MÁSICO DE H2O A LA SALIDA Q comb =90 kw prop O2 =0.3 prop c/bio =0.5 exceso O2 = FLUJO MÁSICO DE SO2 A LA SALIDA Q comb =90 kw prop O2 =0.3 prop c/bio =0.5 exceso O2 = m H2O [kg/s] * prop recirc Ilustración 17. Gráfica de Programa_recirc sobre las emisiones de vapor de agua m SO2 [kg/s]* prop recirc Ilustración 18. Gráfica de Programa_recirc sobre las emisiones de dióxido de azufre 51

52 0.7 FLUJO MÁSICO DE N2 A LA SALIDA Q comb =90 kw prop O2 =0.3 prop c/bio =0.5 exceso O2 = FLUJO MÁSICO DE CO A LA SALIDA Q comb =90 kw prop O2 =0.3 prop c/bio =0.5 exceso O2 = m N2 [kg/s] * m CO [kg/s]* prop recirc prop recirc Ilustración 19. Gráfica de Programa_recirc sobre las emisiones de nitrógeno Ilustración 20. Gráfica de Programa_recirc sobre las emisiones de monóxido de carbono 88 EFICIENCIA COMBUSTIÓN Q comb =90 kw prop O2 =0.3 prop c/bio =0.5 exceso O2 = ef combustion % prop recirc Ilustración 21. Gráfica de Programa_recirc sobre la eficiencia de combustión Como se puede observar en las ilustraciones anteriores, el flujo de las distintas especies aumenta a excepción del dióxido de carbono. En el caso del oxígeno este incremento en el flujo másico a la salida del lecho se debe al descenso de la eficiencia del lecho, como se explica más adelante. El resto de las especies sufren un incremento de su flujo a la salida debido al caudal de recirculación que aumenta la concentración de estas en la entrada y, por tanto, también en la salida. El flujo másico del dióxido de carbono en la salida disminuye conforme aumenta la proporción de recirculación debido al aumento del resto de especies en la entrada, ya que no se necesita de tanto CO 2 en la entrada para disponer del caudal de gases deseado. La eficiencia de la combustión está íntegramente relacionada con el ratio de conversión del carbono del combustible a monóxido de carbono y la proporción de arrastrados, como se puede observar en la ecuación (12), parámetros depientes de la velocidad de fluidización. La forma observada en la evolución de la eficiencia de la combustión 52

53 se debe a la pequeña variación de la velocidad de fluidización debido a la diferencia de densidades de los gases conforme recirculamos en diferente proporción. Sin embargo, esta variación es mínima, como se puede apreciar en la ilustración 51. Ampliación de los resultados de Programa_leakage A continuación se exponen las variaciones de las emisiones de las distintas especies de estudio a la salida del lecho fluido para distintas porcentajes de infiltración además de las eficiencias de combustión y del lecho fluido: 1.3 FLUJO DE O2 A LA SALIDA Q comb =40 kw prop O2 =0.3 prop recirc = FLUJO DE CO2 A LA SALIDA Q comb =40 kw prop O2 =0.3 prop recirc = m O2 [kg/s] * m CO2 [kg/s] * leakage % leakage % Ilustración 22. Gráfica de Programa_ leakage sobre las emisiones de oxígeno Ilustración 23. Gráfica de Programa_leakage sobre las emisiones de dióxido de carbono 2.5 FLUJO DE H2O A LA SALIDA Q comb =40 KW prop O2 =0.3 prop recirc =0.4 2 FLUJO DE SO2 A LA SALIDA Q comb =40 KW prop O2 =0.3 prop recirc = m H2O [kg/s] * leakage % Ilustración 24. Gráfica de Programa_ leakage sobre las emisiones de vapor de agua m SO2 [kg/s]* leakage % Ilustración 25. Gráfica de Programa_ leakage sobre las emisiones de dióxido de azufre 53

54 4 FLUJO DE N2 A LA SALIDA Q comb =40 kw prop O2 =0.3 prop recirc = FLUJO DE CO A LA SALIDA Q comb =40 kw prop O2 =0.3 prop recirc = m N2 [kg/s] * m CO [kg/s]* leakage % leakage % Ilustración 26. Gráfica de Programa_ leakage sobre las emisiones de nitrógeno Ilustración 27. Gráfica de Programa_ leakage sobre las emisiones de monóxido de carbono EFICIENCIA COMBUSTIÓN Q comb =40 kw prop O2 =0.3 prop recirc = ef combustion % leakage Ilustración 28. Gráfico de Programa_ leakage sobre la eficiencia de la combustión En las ilustraciones anteriores se puede observar diferentes tencias en la evolución del flujo másico de las distintas especies conforme aumenta la entrada de aire en el sistema. El oxígeno, el nitrógeno y el dióxido de carbono, ilustraciones 52, 53 y 56, presentan una tencia lineal. En el caso del O 2 y el N 2 es ascente, debido a que estos gases componen el aire, y en el caso del CO 2 es descente, debido a que no es necesario disponer de tanta cantidad de este gas en la entrada para obtener el caudal de gases en la entrada deseado. Sin embargo, las ilustraciones 54 y 55 muestran como el vapor de agua y los óxidos de azufre no se ven afectados con la entrada de aire en la instalación. El monóxido de carbono presenta una tencia cuadrática descente como se puede observar en la ilustración 57. La eficiencia de la combustión, ilustración 58, aumenta debido a que la cantidad de monóxido de carbono disminuye conforme aumenta el porcentaje de infiltración de aire. 54

55 ANEXO VII CONTROL AUTOMÁTICO En este anexo se exponen, con mayor detalle que en la memoria del proyecto, algunos de los resultados de los cálculos y pruebas realizadas en este proceso de automatización de la recirculación. VII.1 Pruebas para la caracterización dinámica del proceso El método elegido en el presente proyecto para la identificación del proceso consiste en el proceso escalón. El procedimiento radica en aplicar en circuito en lazo abierto un paso escalón en la variable regulada, Ve_2, y en la perturbación, V2, para identificar ambas respuestas dinámicas, es decir, G_C3(s) y G_bot(s). La magnitud del escalón debe ser suficiente para inducir un cambio apreciable en la variable de proceso pero no demasiado grande para evitar desviarnos de los parámetros normales de operación dado que la estimación únicamente será válida para valores cercanos a los establecidos en el ensayo. Es importante también que el tiempo de ensayo se mantenga hasta que el sistema alcance el estado estacionario y no existan en la medida de lo posible perturbaciones mientras se realiza la prueba escalón. A modo de ejemplo se muestra en la siguiente ilustración uno de los escalones introducidos en la variable regulada del lazo de control diseñado, Ve_2 y la observación de la respuesta en la variable C3, que según el esquema de simulación del proceso afectará directamente a la variable controlada, C1: Ilustración 29. Paso escalón en Ve_2 Como se puede observar en la gráfica anterior, el proceso es sumamente rápido, de modo que se asigna a la constante de tiempo del proceso, τ, el valor de 0,1 s, que corresponde a la rapidez del autómata. Además, se observa un tiempo muerto nulo ya que la respuesta se puede considerar inmediata. Este mismo comportamiento se da al aplicar el paso escalón en la perturbación, por lo que son asignados los mismos valores a los parámetros de G_C3 y G_bot. Debido a que la mayoría de los procesos son no lineales es recomable realizar la prueba para la identificación del proceso en torno a los valores normales de operación del sistema. Sin embargo, para los valores de operación del sistema se puede observar una

56 notable no linealidad del proceso, de modo que como se explica en la memoria del proyecto se opta por la utilización de bloques look up en vez de ganancias constantes. Los valores de estos bloques se muestran en el siguiente apartado del actual anexo. VII.2 Características del proceso En esta sección del Anexo VII se detalla el procedimiento de cálculo de los bloques sin identificar hasta el momento; los bloques look up, que representan las ganancias variables del proceso y aquellos otros bloques cuya función es el ajuste de las unidades del proceso. Bloques look up El bloque C3 (V2, Ve2) representa el caudal recirculado en función de la variable regulada y la perturbación proveniente de la estrangulación de V2. En la siguiente ilustración se muestran las funciones que incluye este bloque look up y que representan la ganancia variable del proceso. Además, se puede observar la no linealidad del proceso: Ilustración 30. Funciones del bloque C3 (V2, Ve_2) El bloque look up Cbot (V2) refleja la no linealidad del caudal procedente de las botellas conforme se estrangula la válvula V2. Esta función sirve para representar ganancia no variable de este proceso y ha sido calculada mediante datos experimentales: Ilustración 31. Función del bloque Cbot (V2) ANEXO VII CONTROL AUTOMÁTICO 56

57 El bloque look up P1(V2) no aporta ningún valor a la hora de la simulación del control del proceso, sin embargo, es de gran utilidad a la hora de aplicar la técnica de la recirculación en la planta piloto ya que permite ajustar, de manera más precisa mediante una válvula reguladora de presión, el caudal de las botellas, complejo de ajustar únicamente con la válvula de mariposa V2. En la siguiente ilustración representa la función que ha sido implementada en este bloque look up: Bloques de ajuste de unidades Ilustración 32. Función del bloque P1 (V2) El bloque H(s) representa al sensor y al transductor. El sensor, es decir, el dispositivo capaz de medir el caudal de gases de entrada en el lecho, consiste en un tubo de Pitot, el cual proporciona una diferencia de presión (0 8 mbar) relacionada con la variable del proceso que mide, C1. Éste está conectado al transductor, elemento encargado de convertir este fenómeno en una señal que pueda ser transmitida. La función de transferencia más simple de la combinación caudalímetro/transductor consiste en un primer orden: (26) Donde K t, la ganancia del sensor/transductor, es el span de la señal de salida del transductor entre el span de la variable medida: % (27) %TO son las unidades de salida del transductor que corresponde a una señal 4 20 ma de modo que en % TO el 4 corresponde a 0 y el 20 a 100 %TO. Para este tipo de transductores, la constante de tiempo según [43] es del orden de 0,001 s. La rapidez del sistema es dos órdenes de magnitud menor de modo que la constante de tiempo del sensor/transductor se estima para la simulación del control de la planta piloto igual a cero. ANEXO VII CONTROL AUTOMÁTICO 57

58 El bloque K_sp representa la acomodación. El término K_sp es un factor de escala que convierte el set point, calibrado en las mismas unidas que la variable controlada [m3/h], a las mismas unidas que la señal de salida del transductor [%TO]. Para poder realizar la comparación entre la medida y el set point estas deben estar en la misma escala, por lo que K_sp debe ser numéricamente igual a la ganancia del transductor. Por lo tanto, K_sp = 0,0285. EL bloque K_ve permite ajustar las unidades de salida del controlador [%CO] en revoluciones por minuto, unidades utilizadas a la hora del cálculo de los bloques lookup. Por lo que K ve es el span de la variable regulada, Ve_2 [rpm], entre el span del controlador [%CO]: 36 (28) % VII.3 Simulación en bucle abierto Mediante simulaciones del sistema en bucle abierto se comprueba la semejanza en el comportamiento del modelo de simulación y el proceso real. El modelo en bucle abierto del sistema creado con la aplicación Simulink del software Matlab se muestra en la siguiente ilustración: Ilustración 33. Modelo de simulación del proceso en BA A continuación se muestran tres simulaciones, las cuales se analizan y comparan con las pruebas realizadas en la planta piloto para evaluar su analogía. Cada una de estas simulaciones refleja un paso escalón, en Ve_2 o en V2, y su influencia en Cbot o C3, caudales que afectan directamente al caudal de entrada al lecho. Simulación 1 Esta simulación refleja un paso escalón casi a los 4 s de prueba de 2500 a 3600 rpm en el ventilador de impulsión, mantenio V2 en la posición más abierta, V2 = 0,7. Las ilustraciones siguientes muestran su respuesta en el caudal recirculado C3, tanto en la simulación, ilustración 64, como en la planta piloto, ilustración 65: ANEXO VII CONTROL AUTOMÁTICO 58

59 Ilustración 34. Simulación 1 en BA Ilustración 35. Respuesta del caudal recirculado [m3/h] para un escalón en Ve_2 Se puede observar como el caudal C3 de la simulación alcanza exactamente los mismos valores observados en la planta piloto. Sin embargo, se puede apreciar una rapidez de respuesta más elevada en la simulación. Este hecho no influye en el diseño del controlador ya que la velocidad de respuesta del sistema vrá dada por el controlador. Simulación 2 Esta simulación permite comparar la influencia de la válvula V2 en el caudal recirculado. Exactamente, las ilustraciones siguientes corresponden a un paso escalón en la válvula V2 desde la posición más cerrada, 0,1, a la intermedia, 0.3, mientras el ventilador permanece en 3000 rpm: Ilustración 36. Simulación 2 en BA Ilustración 37. Respuesta del caudal recirculado [m3/h] para un escalón en V2 Estas ilustraciones muestran también la semejanza de la simulación de la recirculación realizada y el proceso real. Se puede observar una leve diferencia en el caudal recirculado cuando la válvula se encuentra en la posición de 0,3. Esto puede ser debido a ANEXO VII CONTROL AUTOMÁTICO 59

60 la poca precisión que ofrece la válvula de mariposa. Sin embargo, la diferencia es mínima y por tanto se puede aceptar el modelo como correcto. Simulación 3 Esta simulación corresponde al mismo escalón de la simulación anterior, pero ahora se analiza su influencia en el caudal procedente de las botellas, Cbot. La planta piloto no dispone de un caudalímetro en el conducto de las botellas, de modo que para poder analizar la respuesta al escalón de Cbot, se debe realizar la prueba con el ventilador de impulsión en reposo. De esta manera el caudal de recirculación es cero, y por tanto, C1 = Cbot. Las ilustraciones reflejan la respuesta en el caudal de las botellas, tanto en la simulación, ilustración 68, como en el proceso real, ilustración 69: Ilustración 38. Simulación 3 en BA Ilustración 39. Respuesta del caudal de botellas para un escalón en V2 Se puede observar el alto grado de similitud de la simulación respecto al proceso real, tanto en valores alcanzados por el caudal de las botellas como en el tiempo de respuesta para este caso concreto. Después del análisis de las tres simulaciones anteriores se puede dar como correcto el comportamiento de la simulación, el cual se ha demostrado ser altamente similar al comportamiento de la recirculación en la planta de oxicombustión. VII.4 Simulaciones para el ajuste del controlador En esta sección del anexo de control automático se presentan 4 simulaciones del sistema en bucle cerrado para 2 valores distintos de y 2 de, parámetros del controlador. De esta manera se justifica la elección de los valores de estos parámetros para el regulador a implementar. Simulaciones para el análisis de K c (τ I =1 s, valor de diseño) La siguiente ilustración muestra la simulación en bucle cerrado para un valor de pequeño, exactamente 1: ANEXO VII CONTROL AUTOMÁTICO 60

61 Ilustración 40. Simulación para Kc=1 El tiempo de respuesta que presenta el controlador es muy lento, como se puede observar en el gráfico de C1, el cual se ve afectado por el escalón de V2 y recupera su valor de set point en aproximadamente 150 s. La influencia en las distintas variables del proceso para un valor de la ganancia del controlador elevada se muestra en la siguiente ilustración: ANEXO VII CONTROL AUTOMÁTICO 61

62 Ilustración 41. Simulación para Kc=100 El tiempo de respuesta que presenta el sistema para un valor de Kc=100, es sumamente rápido, del orden de 5 s. Además de no ser necesaria tanta rapidez en el proceso, es irreal, ya que la acción a realizar por el ventilador de impulsión es demasiado alta para llevarla a cabo este equipo. Simulaciones para el análisis de τ I (K c =5 s, valor de diseño) La respuesta de las principales variables del proceso de recirculación para un valor de la constante de tiempo del controlador PI, τ I, de 0,1 se muestra en la siguiente ilustración: ANEXO VII CONTROL AUTOMÁTICO 62

63 Ilustración 42. Simulación para τ I = 0,1 s Al igual que para el caso anterior, un valor pequeño de τ I supone un tiempo de respuesta sumamente rápido, pero el cual se corresponde con una acción del ventilador irreal. La siguiente ilustración muestra la simulación en bucle cerrado para un valor de τ I elevado, τ I =10 s: ANEXO VII CONTROL AUTOMÁTICO 63

64 Ilustración 43. Simulación para τ I = 10 s El elevado valor de la constante de tiempo del controlador produce un aumento del sobreimpulso de la respuesta transitoria, llegando a afectar a la estabilidad relativa del sistema. Esta inestabilidad es debida a la incorporación de un polo en lazo abierto en el origen, lo que provoca un desplazamiento del lugar geométrico de raíces del sistema hacia el semiplano derecho. Analizando las simulaciones anteriores se argumenta la elección de los valores de los parámetros del regulador de 5 (%TO/%CO) para la ganancia y 1 s para la constante de tiempo integral. La simulación incluida en el apartado 4.5 refleja el buen comportamiento del controlador para estos valores de sus parámetros, reflejando coherencia en el tiempo de eliminación de los errores y acercamiento al régimen permanente. VII.5 Implementación del controlador El sistema Scada, es una aplicación especialmente orientada a la supervisión, control y adquisición de datos de una instalación desde un ordenador. Para el control y supervisión de los equipos, este software permite crear una serie de pantallas como las que se muestran en las siguientes ilustraciones: ANEXO VII CONTROL AUTOMÁTICO 64

65 Ilustración 44. Pantalla general de la planta de oxicombustión La ilustración anterior permite representar el proceso completo de la planta piloto. Desde esta pantalla se puede acceder a los distintos equipos para actuar sobre ellos o se puede controlar el proceso mediante la visualización de variables como la temperatura, presión y caudal en distintos puntos de la planta. La zona señalada en rojo de la ilustración 74, corresponde al lazo de control implementado, el cual se muestra mediante una línea de trazos conectado el ventilador de impulsión y la visualización del caudal a la entrada del lecho. La siguiente ilustración corresponde a la ventana del ventilador de impulsión: Ilustración 45. Ventana del ventilador de impulsión, Ve_2 ANEXO VII CONTROL AUTOMÁTICO 65

66 Mediante esta ventana se puede variar manualmente las revoluciones del ventilador o automáticamente mediante el lazo de control diseñado. Las 2 ilustraciones mostradas a continuación corresponden al lazo de control: Ilustración 46. Ventana de los parámetros del controlador Mediante esta ventana se puede variar de manera sencilla los parámetros del controlador, permitio modificarlos en plena prueba. Ilustración 47. Ventana de configuración del controlador Esta ventana permite modificar el valor de referencia de del caudal a la entrada del lecho (SP) y visualizar el caudal real (C1) y las revoluciones del ventilador de impulsión (PV). Estos datos quedan almacenados en el sistema para su posterior análisis. ANEXO VII CONTROL AUTOMÁTICO 66

SitemapBBC Radio 1 - Live Lounge, Spoken Word meets Grime. | Adventure | VMware Workstation Pro 14 1 3 Build 9474260 + Keygen New