Full text
Título del trabajo: MODELADO Y SIMULACIÓN 3D DE UN ROTOR DE AEROGENERADOR Autor/es Guillermo Sánchez Sierra Director/es y/o ponente Guillermo Hauke Bernardos Escuela de Ingeniería y Arquitectura (EINA) 2012
2
3
4
5 Quiero agradecer a mis padres y a mi familia por todo su apoyo durante estos años, y a mis abuelos que no pudieron verlo y que tanto confiaban en mí. Agradecer especialmente a Fernando y Guillermo, por todo lo que me han enseñado a lo largo de este proyecto y lo bien que me han tratado todo este tiempo. Y a mis amigos por estar ahí siempre.
6
7 Resumen En este proyecto se va a realizar un análisis aerodinámico preliminar de un rotor de aerogenerador, para ello lo primero a realizar será la geometría. Esta geometría se generará a partir de los datos de un perfil NACA 63 212 y de unos datos de diseño como son radio, cuerda y ángulo de sucesivas secciones a lo largo de una pala del rotor. Para trazar la geometría se hará uso del programa GID versión 10.0.9 y con la ayuda de varios programas creados en lenguaje Fortran 90, de forma que se automatice la entrada de datos para generar el modelo del rotor. Finalmente el volumen de trabajo será el volumen contenido entre las superficies del rotor y un cilindro lo suficientemente grande para que los cálculos puedan realizarse correctamente. A este volumen se le impondrán las condiciones de contorno necesarias para el cálculo y en particular se utilizarán condiciones de Euler en la zona del rotor. Estas condiciones también se introducen desde el programa GID. Una vez hecho todo lo anterior se procederá al mallado del modelo mediante tetraedros de forma irregular y con tamaños ajustados a la necesidad de precisión del resultado y a la potencia de la máquina de cálculo. Con la malla y las condiciones de contorno, se procederá a la resolución del modelo con la aplicación Ensa, diseñada en el área. Con los datos del resultado se calcularán distintos coeficientes adimensionales como el coeficiente de potencia, de forma que se pueda comparar estos resultados con los valores típicos de aerogeneradores y valorar la eficacia del proceso.
8
9 ÍNDICE 1. Introducción…………………………………………………...Página 11 2. Generación de la geometría……….……………………Página 15 3. Generación de la malla………………………………….…Página 23 4. Resolución del problema y resultados…………..…Página 35 5. Conclusiones y opciones de mejora……………..….Página 51 6. Bibliografía………………………………………………………Página 59 7. Anexos…………………………………………………………….Página 61 Anexo I Comandos del programa GID Anexo II Perfiles intermedios con el programa QBlade Anexo III Programas Fortran 90 para generar el rotor
16 Una vez definido el perfil aerodinámico, para generar la geometría del rotor de aerogenerador se partió de un diseño previo, que fue realizado en el área y en el cual se definían distintas secciones a lo largo de una de las palas del rotor y que como datos de entrada para crear la pala se disponía de: - Radio : Es la distancia desde el centro del rotor, definido por el centro del buje, hasta el perfil correspondiente. - Cuerda : Es la longitud de la línea que divide en dos el perfil y que corresponde a la horizontal. - Tita (θ): Es el ángulo de calado de la sección. Debido a que todos los datos de diseño eran parámetros que editaban la posición y medidas de dichas secciones, se pensó el siguiente sistema de trabajo: Partiendo de un perfil básico, de cuerda igual a la unidad, modificarlo aumentando proporcionalmente su tamaño según el tamaño dado en la cuerda de los datos de diseño, girar el perfil según el ángulo dado tita (θ), y por último desplazarlo hasta su posición con el dato de radio. Realizando las tres operaciones para cada sección de la pala. En la imagen 2.3 se puede observar cómo se va generando la pala del rotor. Imagen 2.3. Captura de pantalla de la generación de las distintas secciones a partir de un perfil
17 Hay que apuntar que el rotor que se diseñó es un rotor ideal, en el caso de que fuera un modelo real, a lo largo del rotor habría perfiles distintos al ideal (NACA 63 212) puesto que la sección debería resistir grandes esfuerzos dinámicos, y por tanto se necesitaría tener una sección más gruesa que la ideal para poder aguantar sin romperse. Pero en este proyecto nos centramos en generar un modelo sobre el cual realizar los análisis, de modo que se pueda volver a repetir todo el proceso con otros modelos. Una vez se completó el proceso de generación de las palas del rotor, se acabaron los datos de diseño, y por tanto comenzaba la tarea de construir el rotor con esas palas. Lo primero que se precisaba era un buje, para ello se creó un volumen similar a un buje partiendo de una línea curva y realizando una figura de revolución con ella, y obteniendo con ella el buje que vemos en la imagen 2.4. A este buje se le realizó una serie de empalmes cilíndricos, para que de forma aproximada realizara la unión buje-pala, y así conseguir todo en un mismo volumen. Esta operación se produjo mediante la unión del volumen del buje con sucesivos cilindros, eliminando la parte que quedaba dentro del buje. Este proceso se realizó a mano inicialmente, y luego se automatizó en un programa Fortran como se comentará en el Anexo III, de modo que se pueda cambiar el buje y recrear el modelo nuevamente. En la imagen 2.5 se puede ver el buje junto a las uniones cilíndricas. Imagen 2.4. Captura de pantalla del buje
18 Se pensó que para unir unas superficies circulares de estos cilindros a los perfiles con la geometría NACA 63 212 eran necesarias una serie de superficies intermedias, de forma que el cambio fuera suave y siguiera una forma coherente. Para realizar estos perfiles intermedios se acudió a un programa cuya función principal es generar rotores de aerogenerador, se trata del programa QBlade, y dentro de las muchas opciones de diseño que nos ofrece se utilizó la opción de diseño directo (manual) de perfiles. El primer paso necesario para crear estos perfiles intermedios fue introducir el perfil NACA 63 212 en el programa y posteriormente un perfil circular. Ya con los dos perfiles dentro del programa, se obtuvo los distintos perfiles intermedios tal como se observa en la imagen 2.6. Imagen 2.5. Imagen del buje con las conexiones a las palas añadidas Imagen 2.6. Distintos perfiles intermedios creados desde QBlade
19 El mismo programa QBlade permitió exportar estos perfiles como ficheros de datos, de modo que el archivo contuviera las coordenadas de los puntos que definen el perfil. Y de nuevo para poder utilizar estos ficheros de datos el programa GID nos ofrece muchas facilidades. Pero puesto que son varios perfiles, se decidió de nuevo automatizar el proceso, en parte para que se puedan cambiar los perfiles en caso de hacer otro modelo distinto, y para reducir el tiempo de esta tarea. En el Anexo II se explica en profundidad el proceso de generar estos perfiles intermedios con el programa QBlade, mientras que en el Anexo III incluye una descripción del programa Fortran dedicado a generar la geometría de los perfiles intermedios. Por tanto, en otro fichero tendremos las tres zonas de perfiles intermedios, tal como refleja la imagen 2.7. Recapitulando; se tiene, por un lado el buje con las conexiones cilíndricas, por otro lado los perfiles intermedio y por último están las tres palas. Con esto ya se puede construir el modelo del rotor completo, puesto que el programa GID ofrece nos permite a una geometría importarle otra distinta que esté en otro archivo de GID. Por tanto, teniendo las tres partes en tres archivos distintos, no queda más que unirlas como si de un puzle se tratase. En las siguientes imágenes se muestra el montaje. Imagen 2.7. Perfiles intermedios importados en Gid
20 En la imagen 2.8 se muestra el buje junto a los perfiles intermedios Para facilitar la generación de superficies, en el archivo de las palas se crean ya las palas con las superficies, de modo que sólo falten en la zona intermedia. Imagen 2.8. Imagen del buje comenzando a unirse a los perfiles intermedios Imagen 2.9. Captura de pantalla de las palas completas
21 En la imagen 2.9 teníamos las palas sin superficies, y en la imagen 2.10 tenemos ya en un mismo archivo las palas con las superficies generadas. El principal motivo de generarlas sin juntar todavía, es porque en este punto las líneas que definen las superficies están ordenadas de forma coherente según han sido creadas, y por tanto resulta mucho más fácil a la hora de programar el tener orden lógico en las variables. De nuevo el proceso de generar las superficies de las palas será con una aplicación de Fortran 90. Por último sólo falta importar las tres geometrías de archivos GID en un solo archivo, y completar las superficies que nos quedaban en la zona entre las palas y el buje. De modo que nos queda el modelo tal como se muestra en las imágenes 2.11 y 2.12 Imagen 2.10. Palas completas con las superficies añadidas Imagen 2.11. Modelo del rotor de aerogenerador completo
22 Para comprobar que el modelo del rotor era correcto se malló de forma individual, de modo que si no daba problemas con el rotor solo, no fallase una vez introducido dentro del cilindro al generar el volumen de trabajo. Resumiendo la explicación de la generación de la geometría se partió de unos datos de diseño y a partir de ahí se creó todo el rotor del aerogenerador, programando de propio las distintas aplicaciones de Fortran 90. Y toda la generación de geometría se realiza con la opción de importar archivo de comandos, que es el formato de salida de los programas Fortran creados y prácticamente no hay que realizar ninguna operación a mano. 3.- Generación de la malla El proceso de generación de malla es un proceso iterativo, lo cual quiere decir que la elección de la malla inicialmente es algo aleatorio. Viendo los resultados que se pueden obtener con cada malla, hay que ir retocando el tipo de mallado, el tamaño en cada zona, y en general, muchos factores que influyen en el resultado del problema. Uno de los principales factores que más afectan la limitación que existe en la memoria del ordenador empleado para calcular, esto choca con la necesidad Imagen 2.12. Render del rotor de aerogenerador completo
23 de un volumen suficientemente grande para que no se vean afectados los cálculos por las condiciones de contorno, y a su vez, choca con la necesidad de una malla muy densa en ciertas zonas del rotor para conseguir un resultado lo más exacto posible. Dicho lo cual, lo primero a realizar es un cilindro de aire lo suficientemente grande para que no se vean afectados los cálculos para aproximar el infinito. Se comenzó como primera aproximación con un cilindro de radio 260 metros, número que es cinco veces el radio del rotor, que es 52. Pero en este caso se observaron anomalías en las soluciones y se acabó optando por un cilindro de radio 390 metros y 390 metros de altura, es decir, un 50% más de radio. Por otro lado, el rotor debe situarse más cerca de la entrada, de este modo se situó a 80 metros de la entrada y a 310 metros de la salida, para dar tiempo al flujo una vez pasado el rotor y así adaptarse a las condiciones ambientales. Definitivamente se utilizaron estas dimensiones para los modelos, puesto que en las simulaciones se observó que desaparecían los problemas de adaptación del flujo. El modelo correspondiente a un volumen de aire alrededor del rotor es el que se muestra en las imágenes 3.1 y 3.2. Imagen 3.1. Volumen de trabajo Imagen 3.2. Alzado del volumen de trabajo
24 Una vez decidido el tamaño del cilindro que define el volumen de trabajo, viene la decisión del tamaño de malla máximo. Este parámetro afectará a las caras externas del cilindro, es decir, a las zonas lejanas al buje, y lo debemos controlar debido a la limitación de la memoria del ordenador. Se fue probando a ir aumentando el tamaño hasta que se observaba que ya no había una reducción importante en el número de nodos y de elementos, con lo cual se acabó decidiendo por un tamaño máximo de 21 metros. Este tamaño sólo se alcanzará en las zonas cercanas a las superficies del cilindro, de forma que no se afecten los resultados, teniendo una malla mucho más fina en la zona del rotor, que es donde mayor necesidad de elementos tenemos. Aquí no está claro cuál es el tamaño óptimo para obtener los mejores resultados, puesto que, bajar el tamaño máximo de la malla en la zona del rotor conlleva un incremento importante en el número de nodos y de elementos, pero lo que si se consiguió es bajar lo suficiente para ver que los resultados mejoraban cuanto más densa es la malla y por tanto menor el tamaño en las superficies del rotor. En este punto es donde mayores complicaciones se encontraron, de forma que se fueron haciendo distintos ensayos, de modo que se pudiera ir comprobando paso a paso hasta conseguir un modelo válido. El siguiente paso antes de proceder al mallado y el posterior cálculo del modelo será el imponer las condiciones de contorno. Las condiciones de contorno las imponemos desde GID mediante un “tipo de problema” creado en el departamento, y al cual se le adaptó una opción para incluir la condición de rotación. En la imagen 3.4 se muestra el menú en el cual se introducen las condiciones de contorno.
25 El modelo está pensado para ser el aire alrededor del aerogenerador, y por tanto si fijamos el rotor y vemos el aire desde el punto de vista relativo al rotor, el aire estará girando. Con esta idea en mente se imponen las siguientes condiciones de contorno: En la entrada Se fija la densidad, velocidad angular y velocidad del viento. En las paredes laterales Se define la temperatura. En la salida Se define la presión en la salida. En la salida se ha fijado la presión atmosférica, de modo que el fluido en ese punto esté con las condiciones de un hipotético infinito. El hecho de definir la temperatura es porque el problema se resuelve mejor cuando se define la temperatura, hecho deducido durante las simulaciones que se fueron realizando. Pero es una temperatura que se calcula a partir de la presión atmosférica y la densidad, las cuales son datos en los otros contornos, de forma que las paredes laterales son en teoría salidas de fluido también. Hay que comentar que se valoró la posibilidad de hacer un cálculo como si fuera un túnel de viento, imponiendo condiciones de velocidad y rotación en las paredes pero finalmente se decidió descartar esta idea. Imagen 3.4. Menú de condiciones de contorno
32 Imagen 3.7. Captura de Tecplot del modelo con tamaño de elementos 0.06 Imagen 3.8. Captura de Tecplot del modelo con tamaño de elementos 0.05
33 En el caso del tamaño de elementos de 0.06 se observó mejoría en cuanto a las distribuciones de presiones, pero se veía que en la zona de la punta de la pala, donde el número de elementos por sección ya es mucho menor, se volvía a ver presiones más bajas de lo esperado. Hecho que se corrigió en el modelo con el tamaño de 0.05, en el cual las puntas en concreto se mallaron con un tamaño de malla menor, dando lugar a una mayor consistencia de la distribución de presiones. Se puede ver en la imagen 3.9. En este modelo con el tamaño de elemento de 0.05 ya se ve cómo las distribuciones de presiones son semejantes a lo que debería ser, pero se sigue con el problema de que cuanto menor es el tamaño de malla, mejor salen los resultados, y nos encontramos una vez más con la limitación de la potencia de los ordenadores destinados al mallado y posterior cálculo. Imagen 3.9. Captura de Tecplot donde se observa mejoría en la punta de pala
34
35 4.- Resolución del problema y resultados FICHEROS DE ENTRADA PARA LOS CÁLCULOS Una vez terminado el proceso de mallado del programa GID, para obtener el problema para calcular, lo que se va a emplear desde el programa GID es la opción de exportar archivo de cálculo, que genera un archivo que contiene todos los datos sobre geometría y condiciones de contorno que hemos impuesto a la malla, con los todos los datos de los nodos, la conectividad de los elementos, y el resto de datos que vamos a necesitar. Este archivo de cálculo es el principal fichero de entrada para el programa Ensa, que es la aplicación encargada de resolver el problema. El programa Ensa resuelve las ecuaciones de Euler en el fluido de trabajo, que en nuestro caso se trata del aire “alrededor” del rotor del aerogenerador. Las ecuaciones de Euler describen el movimiento de un fluido compresible y no viscoso. De manera que la velocidad en la superficie de contorno no es cero, sino que es la velocidad del aire en ese punto. Otra opción sería aplicar las ecuaciones de Navier-Stokes modelando la turbulencia, pero el “gasto” computacional necesario es muy elevado y por tanto no es viable en nuestro caso. Las ecuaciones de Euler nos ofrecen soluciones aceptables mientras el ángulo de ataque no provoque el desprendido de la capa límite, y aparezcan turbulencias alrededor de la pala. En nuestro caso se trabaja con un rotor en el punto de diseño así pues, no sucederá el fenómeno del desprendimiento y podemos emplear las ecuaciones de Euler como un buen método de cálculo.
36 ECUACIONES DE EULER - Ecuación de continuidad. (4.1) - Ecuación de cantidad de movimiento (4.2) - Ecuación de cantidad de movimiento (4.3) (4.4) Para proceder al cálculo con el programa Ensa primero hay que comenzar con un fichero de datos “geom.dat” que será ese archivo de cálculo de GID, que contiene todos los datos del mallado, conectividad y el resto de datos necesarios para calcular el problema. Y por otro lado un archivo “input.dat” donde se definen las distintas opciones que ofrece Ensa, como el paso temporal entre los distintos cálculos o por ejemplo si se resuelve mediante un método explícito o implícito. A la hora de comenzar el cálculo existe un inconveniente que queda por resolver previamente a la resolución del problema y es que en el programa GID en el tipo de problema empleado, las condiciones iniciales de volumen no disponía de una opción para definir la condición de rotación en el volumen.
37 Por los resultados obtenidos en las primeras simulaciones, se vio que a la hora de resolver el problema partiendo de una velocidad de rotación igual a cero, era un cambio muy brusco pasar de la condición de giro en la entrada, un valor de velocidad angular igual a cero en la proximidad a la entrada. Y por tanto eso hacía fallar las primeras simulaciones. Para solucionar este problema, contamos con otra de las opciones del programa Ensa, y es que el programa permite arrancar los cálculos a partir de un resultado anterior proveniente del mismo problema. Y esta opción es la que se empleó para poder añadir la condición inicial de rotación en el volumen al modelo. Lo que se diseñó para corregir ese problema de la condición inicial, fue introducir el estado inicial como el resultado de partida del problema, copiando el formato de los “output” del programa Ensa, de modo que añadiésemos las velocidades en dirección X e Y en cada nodo, provenientes de la rotación del volumen. De esta manera ya se incluye unos valores de rotación en todos los nodos, similares a los resultados esperados tras los cálculos. Debido a que este proceso es muy laborioso y hay que realizarlo para cada modelo, se realizó una aplicación generada en Fortran 90 de modo que empleando los archivos de geometría “geom.dat”, el programa genere con esos datos de entrada, un archivo de datos siguiendo el formato adecuado, añadiendo la rotación en los valores de velocidad en X e Y. Por tanto, finalmente cada modelo a resolver tiene tres archivos de entrada, uno donde se encuentran los datos de geometría y de condiciones de contorno, “geom.dat”, otro con las opciones del programa Ensa, “input.dat”, y por último este archivo con los resultados que se utiliza para añadir la condición inicial de rotación en los nodos para comenzar la resolución del problema.
38 COMIENZO DE LAS SIMULACIONES A la hora de hablar de todos los cálculos realizados hay que mencionar que el número de nodos el problema a resolver es una cantidad crítica, puesto que el ordenador con el que se contó para los cálculos disponía de una capacidad limitada de memoria disponible, de modo que a medida que los modelos tenían un tamaño de elemento menor, el ordenador cada vez rendía menos. A la vez que un modelo grande tenía limitaciones de espacio en la memoria, cuando mayor fuera el número de nodos y elementos de un modelo, mayor tiempo de cálculo necesitaba el ordenador para realizar cada resolución del problema, pudiendo superar los dos días de cálculo cuando se le imponían tamaños de elementos muy pequeños en las superficies del rotor. A la hora de resolver el problema, se puede hacer mediante métodos implícitos o explícitos. En nuestro caso el método implícito ofrecería una mejor solución puesto que permite trabajar con un mayor CFL (variable relacionada con los pasos temporales), obteniendo en teoría una mayor convergencia, pero con el ordenador que se disponía no se alcanzaban los requisitos necesarios de memoria para las simulaciones, por tanto es una vía de mejora a la cual no se puede acceder debido a las restricciones de memoria. Por tanto, el problema se resolvió mediante métodos explícitos, con un CFL de “0.4”. Hay que comentar que mientras el programa Ensa realiza los cálculos, nos va mostrando a cada paso un valor que indica la magnitud del residuo máximo que existe en el nodo que “peor” se comporta, y al tener que realizar el método explícito no se alcanzaron los valores deseados, pero sin embargo los valores del residuo en los modelos calculados son aceptables y la solución es una solución aproximada. Una vez acabado el cálculo tenemos dos archivos de salida, el primero se trata del fichero de datos que contiene los resultados de todos los nodos “output.dat” el cual se emplea entre otras cosas para visualizar en Tecplot. Y el segundo es un archivo que contiene los datos de los nodos pertenecientes a unas determinadas superficies que previamente se seleccionan y que conforman
39 toda la superficie del rotor, “flux output”. Este archivo es necesario para poder calcular los coeficientes adimensionales correspondientes al rotor. A este archivo de salida de Ensa, “output.dat”, hay que realizarle un postproceso para convertirlo en un archivo que se pueda importar desde Tecplot, y para eso hay una aplicación también creada por previamente, y que sirve para realizar esa tarea. En el programa Tecplot, se importará el archivo de salida modificado, con la opción “leer archivo de datos” y se importará desde “Tecplot Data Loader”, de modo que mostrará por pantalla el modelo tridimensional del problema. El hecho de utilizar Tecplot se debe a que se trata de una herramienta sencilla, que nos permite visualizar fácilmente los datos de presión, temperatura, densidad, etc. a lo largo de las superficies y poder percibir de un solo vistazo las posibles anomalías de la solución. Para el proceso iterativo llevado a cabo hasta alcanzar una solución aceptable se emplearon las tres herramientas que se han ido comentando: - Generar distintas mallas en GID. - Crear los distintos archivos de entrada. - Calcular con Ensa. - Visualizar resultados con Tecplot, y comparar con resultados de otras simulaciones, para ver mejorías o diferencias. Y una vez se consiguen unos resultados que analizados con Tecplot se consideran adecuados, tal y como se observaron los distintos modelos de los cuales se pueden ver imágenes en el punto 2, se procede a calcular los distintos coeficientes aerodinámicos correspondientes al rotor.
40 CÁLCULO DE LOS COEFICIENTES Los aerogeneradores se mueven por dos procedimientos: el arrastre, en el que el viento empuja las palas, y la elevación, en la que las palas se mueven de forma similar a las alas de un avión a través de una corriente de aire. Por tanto no sólo trabajan con el empuje del viento, sino en combinación con la fuerza de sustentación. En este caso el rotor ha sido diseñado de forma “ideal” de modo que se buscaron las combinaciones de ángulos para sacarle el máximo partido a la combinación de las fuerzas del viento. El primer cálculo que se plantea realizar es el del coeficiente de sustentación “lift” y el coeficiente de resistencia “drag” de una sección cualquiera. En la siguiente imagen 4.1 se describen las distintas fuerzas referidas a una sección de pala de un rotor. Y los coeficientes de “lift” y “drag” para una sección de pala se calculan mediante las siguientes ecuaciones 4.5 y 4.6: (4.5) (4.6) Imagen 4.1. Triángulo de velocidades en una sección de pala : Densidad del aire U: Velocidad relativa del aire c: Cuerda del perfil naca
41 Una de las cosas que se observa es que la fuerza Lift está en la dirección perpendicular a la velocidad relativa del viento y por tanto habrá que realizar un cambio de ejes una vez calculadas las distintas fuerzas en la sección del rotor. La velocidad relativa se compone de la componente axial de la velocidad del viento (v1), y la componente de velocidad producida por el giro (-Ω*r). Como ambos datos son fijos obtendremos fácilmente los ángulos que se observaban en la figura 4.1. La velocidad de giro es uno de los datos de partida y la velocidad del viento se trata de un valor habitual en un aerogenerador. Además, el ángulo de inclinación del perfil θ hay que recordar que era un dato a partir del cual se creó la geometría del rotor, así pues ya es conocido. Para realizar este cálculo de nuevo se acudió a la programación Fortran para calcular las fuerzas resultantes en la sección de la pala. La misión de esta aplicación era la de calcular las fuerzas entre nodos, con la normal en cada nodo, de modo que haciendo el sumatorio de las fuerzas en cada superficie se obtuviera una fuerza global que luego se trasladase al eje de velocidad relativa del viento, obteniendo la fuerza L y la fuerza D. El concepto se entiende fácilmente en la imagen 4.2 Imagen 4.2. Fuerzas a lo largo de una sección
48 El principal inconveniente de estas “superficies rugosas” es la aparición de una serie de elementos que contienen sus cuatro nodos en la superficie. Dichos elementos además de poder ser conflictivos en cuanto al cálculo interno de Ensa, significan zonas sin resultados en el sumatorio de la aportación de potencia de cada elemento para el coeficiente de potencia. Por tanto este tipo de elementos estropean todas las simulaciones por lo cual no se pueden obtener resultados precisos. Un elemento como el que se comenta se remarca en la imagen 4.7, donde aunque no se pueda identificar muy bien debido a la densidad de la malla, se puede ver que recorre una zona importante: Imagen 4.7. Elemento con cuatro de sus nodos en el contorno
49 Coeficiente de Lift El coeficiente de Lift es un coeficiente que calculamos en dos dimensiones, por tanto el efecto de esos elementos extraños con cuatro nodos en el contorno no es tan apreciable en su cálculo. Los Resultados obtenidos en las simulaciones son los siguientes. Se comprueba que a medida que el tamaño máximo del elemento se reduce, el valor del coeficiente en las secciones principales sube. Sin embargo el valor teórico del coeficiente según las tablas y para el ángulo de ataque se que ha diseñado para cada sección, es un valor de 1.2. Con lo cual estamos teniendo una desviación en torno al 30% del coeficiente que deberíamos obtener. Lo cual indica que existía un problema en las simulaciones, debido a los errores de la malla. 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1 18,12 27,62 40,05 47,85 Tamaño 0,08 Tamaño 0,06 Tamaño 0,05
50
51 5.- Conclusiones y Opciones de mejora En este proyecto se ha abordado el tema de generar un rotor de aerogenerador a partir de unos datos de entrada, para ello se trabajó con varios programas y se introdujo en el manejo de dichos programas para poder obtener lo deseado en cada uno de los casos. Tanto el programa GID como el programa QBlade se comenzaron a emplear sin experiencia previa y en el caso particular de GID hubo que indagar en la forma de introducir comandos para poder realizar un proceso “automático” en la generación de distintos modelos de rotores. Creando distintos archivos de comandos, analizándolos posteriormente para encontrar las órdenes y los parámetros necesarios. En los anexos de esta memoria se explica de forma algo más concreta cómo se obtienen esos comandos y se exponen varios de los comandos empleados. Otra de las áreas importantes de trabajo en este proyecto ha sido la creación de una serie de aplicaciones Fortran, programadas en lenguaje Fortran 90. Con este lenguaje de programación se trabajó especialmente por la facilidad de compilación y ejecución en entorno Linux, que es el sistema operativo con el que se trabajó. Estas aplicaciones han sido desde crear ficheros de comandos para dibujar la geometría en el programa GID, pasando por editar los propios ficheros que se emplean para iniciar Ensa para añadir determinadas condiciones de contorno e incluso programas para tratar los resultados, de modo a partir de los resultados obtenidos en Ensa se fueran calculando los coeficientes necesarios para analizar los resultados. Además los programas realizados en Fortran han sido comprobados para ver que realizaban correctamente su función, calculando de forma manual lo mismo que se obtenga de los programas y comparando para ver que sea lo mismo.
52 La conclusión de todo el trabajo previo al cálculo del Ensa es que se ha realizado con éxito un método para reproducir distintos rotores de aerogenerador y se han desarrollado herramientas para el análisis de los resultados de las simulaciones con dichos modelos. Si bien es cierto que el mallado con el programa GID ha resultado problemático, obteniendo una serie de elementos con cuatro nodos en el contorno, incluso con una opción activada destinada a evitar la aparición de los mismos. Hay que explicar que me puse en contacto con una persona con mayores conocimientos en el funcionamiento del mallado del programa GID, y tras intentar solucionar dicho problema con los consejos de esta persona, no se obtuvo ninguna mejora en este aspecto. Por tanto aunque los resultados de coeficientes aerodinámicos no sean concluyentes, este proyecto sienta las bases para futuros trabajos relacionados con el tema expuesto durante toda la memoria. Además existen ciertas áreas de mejora en las cuales se puede seguir trabajando para intentar obtener mejores resultados.
53 Opciones de mejora Las opciones de mejora son una parte importante de las conclusiones de este proyecto, puesto que a la vista de los determinados problemas encontrados a la hora de realizar el trabajo previsto, es reseñable que el tema no acaba en lo que se ha trabajado, sino que siguen existiendo áreas de trabajo y distintas posibilidades de enfocar el problema. En este ámbito hay varias opciones que se barajaron a la hora de realizar el proyecto, y que no se pudieron llevar a cabo por distintos motivos pero en las cuales se trabajó y son posibles áreas de trabajo para obtener mejores resultados. NO EMPLEAR LÍNEAS NURBS Si recordamos, a la hora de dibujar el perfil aerodinámico en GID, se empleaba una línea nurbs, creada a partir de la definición de los distintos puntos del perfil, dicha línea creaba de manera muy exacta las curvas del perfil, de modo que el perfil se aproximaba muy acertadamente al perfil real. El inconveniente de este método es que sólo se daban como puntos fijos dos puntos en ambos lados del perfil, tal y como se observa en la imagen 5.3. Y luego a la hora de aproximar la curva del perfil durante el proceso de mallado, el programa “intenta” acercarse a esos puntos. Imagen 5.3. Perfiles NACA 63 212 con dos puntos característicos.
54 La idea es que si ya disponemos de los datos de los puntos reales del perfil, sería mucho más útil crear directamente los perfiles como líneas que forman la geometría, puesto que aunque sea una curva la superficie nurbs, finalmente acabará aproximándola por líneas rectas. Por tanto debería ser mucho mejor trabajar directamente con los puntos reales de la geometría del perfil, y no con los que el programa GID “intenta” aproximar posteriormente al realizar el mallado. Esta solución no es que no se haya intentado, pero a la hora de crear cada uno de los perfiles se necesitaban 100 líneas sólo para definir el perfil NACA 63 212. Además dichas líneas son de un tamaño muy reducido, con lo cual el tamaño de los elementos se veía muy limitado, y como ya se comentó varias veces a lo largo de esta memoria, no se disponía de la suficiente potencia computacional para resolver el problema del mallado de dicho modelo. Se pueden ver los perfiles en las imágenes 5.4 y 5.5 Imagen 5.3. Perfil NACA 63 212 generado a partir de líneas rectas Imagen 5.4. Puntos que definen el perfil NACA 63 212
55 EMPLEAR LA SIMETRÍA Este concepto es muy simple, puesto que el rotor tiene simetría cada 120º, el problema se puede reducir a un solo tercio de dicho volumen, y extrapolar los resultados. Esta opción se trató especialmente puesto que uno de los principales escollos encontrados a la hora de realizar los distintos modelos y simulaciones eran las limitaciones computacionales que existían, por lo cual reducir el tamaño del problema entre tres era un objetivo prioritario. Para ello se realizaron modificaciones a los programas Fortran, de modo que se obtuvieran modelos con los que se trabajase con una sola pala del rotor, y trabajando con un tercio del cilindro de aire alrededor. Con lo cual es esperaba una reducción similar en el número de nodos y de elementos. Tal y como se observa en las imágenes 5.1 y 5.2. Imagen 5.1. Geometría de una pala con un tercio del volumen
56 El principal motivo por el cual se acabó descartando este modelo con el cual se trabajaba con un tercio del volumen del problema fue la imposibilidad de imponer las condiciones de contorno correctamente puesto que aun no estaban disponibles las herramientas necesarias para ello. Sin embargo supone una importante área de mejora puesto que si se trabajase con un volumen menor, el tamaño de malla se podría reducir sin tener que aumentar el tamaño del problema en grandes cantidades. Además de reducir tiempo de computación y un mejor aprovechamiento de la memoria. EMPLEAR EL MÉTODO DEL MALLADO ADAPTATIVO Imagen 5.2. Geometría del mallado de una pala con un tercio del volumen
57 Entre los objetivos del proyecto se encontraba el de realizar un mallado adaptativo al problema una vez encontrado un modelo suficientemente estable para realizar dicho proceso. El mallado adaptativo es un tipo de herramienta diseñada por el departamento y cuya misión es realizar un tipo de mallado en función de los resultados obtenidos, realizando una malla con tamaños de elementos distintos dependiendo de las necesidades de cada zona. Los elementos empleados en las áreas cercanas a los nodos donde el resultado obtenido tiene una peor convergencia tendrán un tamaño menor, es decir, allá donde el residuo sea mayor. De este modo se realiza un mallado concreto donde más se necesite, sin tener que mallar zonas innecesarias a causa de las que sí necesitan un mayor detalle. El estimador de error ofrece una medida del error en cada elemento, calculada a partir del residuo obtenido en una resolución anterior del problema. La principal motivación para querer emplear este mallado adaptativo es que empleándolo se alcanzan mejores resultados, pero también va relacionado con reducir el tamaño del problema, puesto que la idea es no desperdiciar recursos en zonas innecesarias. Una peculiaridad de este método es que el tamaño del mallado que “debes” realizar depende de las magnitudes de los errores. Puesto que en las soluciones que se plantean en este proyecto esos residuos eran algo elevados debido a una baja convergencia, el mallado propuesto por este método quedaba fuera del alcance de los ordenadores disponibles. Debido a esto no se pudo realizar el método del mallado adaptativo a los modelos existentes, pero es otra importante área de mejora puesto que a la vez que economiza el uso de recursos, conlleva obtener mejores soluciones, puesto que concentra las mallas donde se necesite, de modo que no haya errores debidos a un tamaño de malla insuficiente como se observaban en los modelos explicados en el punto 3.
64 A la hora de realizar la geometría en los “bach files” lo que hay que hacer es ir variando los datos que me piden estos comandos, y aquí es donde ayuda la simplicidad de la programación Fortran 90, que nos sirve para poder ir escribiendo en un “bach file” todo el tiempo los comandos que se requieran e ir variando los valores de los parámetros que definen la operación de edición mediante bucles. En este anexo se han comentado la mayoría de los comandos que se necesitan para generar la geometría del rotor, pero sin duda existen muchos otros comandos destinados a realizar otras operaciones que no se precisan y que habría que obtener de la misma manera que se obtuvieron estos.
65 Anexo II: Perfiles intermedios con el programa QBlade En el siguiente anexo se va a proceder a explicar la metodología de creación de perfiles intermedios en el programa QBlade. La utilidad de este método está limitada por la calidad de los perfiles originales entre los cuales se va a interpolar, por tanto tendremos que intentar importar en el programa QBlade la versión más exacta del perfil que necesitemos para crear el resto de perfiles intermedios. Lo primero que hay que aclarar sobre el programa QBlade es que tiene muchas más herramientas para la generación de modelos de aerogeneradores, e incluso es capaz de generar modelos de rotores completos y simular ciertos parámetros para obtener datos del comportamiento aerodinámico de las palas, pero en nuestro caso sólo vamos a utilizar la parte en la cual se crean los perfiles de las palas, puesto que vamos a generar la geometría en GID y los cálculos se realizarán en Ensa. Para comenzar con la creación de perfiles en el programa QBlade, hay que ir a la opción de generar perfiles de forma directa, como se muestra en la imagen A2.1, donde se nos permitirá incluso hacer perfiles de forma manual. Imagen A2.1. Captura de pantalla del menú de QBlade
66 Y llegaremos a una pantalla como la que vemos en la imagen A2.2 En este momento ya se podrían crear perfiles a mano, simplemente seleccionando con el ratón los círculos repartidos a lo largo del perfil y arrastrándolos a la posición que deseásemos. El problema de esta forma de crear perfiles es que las distancias son poco precisas al ser algo que se realiza a mano alzada. Pero se podría emplear para generar perfiles y posteriormente analizarlos puesto que el programa permite la exportación de datos, de manera que en un fichero de datos obtendremos los puntos que definen el perfil. De igual manera que existe la posibilidad de exportar datos, el programa nos permite importar ficheros de datos que contengan los datos de nuestro perfil y poder trabajar con ese. Y es precisamente esta opción la que más nos interesa puesto que partimos de un fichero de datos con las coordenadas del perfil NACA 63 212 y en este caso vamos a interpolar con una circunferencia, que sería una aproximación a la conexión entre palas y buje. Imagen A2.2. Captura de pantalla del diseño directo de perfiles en QBlade
67 En la imagen A2.3 se observa cómo se ha importado el perfil NACA 63 212 simplemente con la opción de abrir un archivo cuyo icono muestra una carpeta abierta. El fichero de entrada tiene la extensión “.dat” y la sintaxis del archivo de entrada de datos es la siguiente: en cada línea debemos escribir las coordenadas (X, Y) de uno de los puntos del perfil hasta completar su geometría. Posteriormente para trabajar mejor podemos desactivar la visualización del perfil por defecto (verde) que era el que se podía modificar manualmente. Una vez conocida esta opción y habiendo importado el perfil NACA 63212, ya sólo necesitamos una circunferencia con el radio adecuado para crear los perfiles intermedios. En este caso, por simplificar trabajo, se creó un programa Fortran muy simple, que a partir de un valor de la coordenada X de radio resolvía la ecuación de la circunferencia y posteriormente escribía las coordenadas de los puntos X,Y que definen esa circunferencia en un fichero de datos. Con una distancia entre puntos suficientemente pequeña para no perder información, especialmente hay que ser cuidadoso en las zonas de X=0 y Imagen A2.3. Captura de pantalla del perfil naca 63212 importado en QBlade
68 X=Diámetro, el incremento de la variable X debe ser pequeño puesto que la curvatura es muy grande en esas zonas Una vez tenemos los dos perfiles originales, a partir de los cuales se van a crear perfiles intermedios, tenemos que clicar con el botón derecho en un perfil, posteriormente vamos a la opción “Foil Design” y allí seleccionamos “Interpolate Foils”. El menú se muestra en la imagen A2.4 En la imagen se indican las opciones, y una vez seleccionadas estas opciones, aparecerá el menú que se indica en la imagen A2.5 Imagen A2.4. Captura de la situación del menú de interpolación Imagen A2.5. Captura del menú de interpolación
69 En la imagen A2.5 se observa el menú, en el cual elegíamos los dos perfiles entre los que interpolar y el porcentaje de interpolación (la barra vertical en el lateral), con la opción del porcentaje es con la cual se va a generar todos los perfiles intermedios, eligiendo en cada caso un poco más de ese porcentaje. Finalmente se obtienen todos los perfiles intermedios deseados. La cantidad de perfiles intermedios depende de los incrementos de porcentaje que hayamos ido eligiendo. Mientras se realiza el proceso hay que comprobar la coherencia en la forma, porque si la circunferencia se ha generado al revés a partir de los puntos que obtuvimos con el programa Fortran, aunque parezca igual, al crear perfiles intermedios obtendremos resultados erróneos en los perfiles intermedios. El resultado de los perfiles creados se ve en la imagen A2.6. Si nos fijamos bien, los perfiles intermedios creados, tienen un problema cuando llegan a los extremos, y es que al estar definidos por pocos puntos, lo que debería ser una curva, se convierte en líneas rectas. En la imagen A2.7 se muestra una ampliación de la zona para mostrar este hecho. Imagen A2.6. Perfiles interpolados en el QBlade
70 Podría parecer un gran error a solucionar, pero no hay que preocuparse por ello, puesto que cuando introducimos los datos en el programa GID y creamos una “Línea Nurbs”, que es como estamos haciendo todos los perfiles, resulta que este tipo de líneas están pensadas para generar curvatura entre los puntos, y así nos quedan los perfiles con la forma totalmente coherente y sin esas rectas que darían muchos problemas. En la imagen A2.8 se aprecia esa curvatura en los perfiles una vez importados en el programa GID. Imagen A2.7. Captura del extremo de los perfiles Imagen A2.8. Bordes de los perfiles en GID
71 Para acabar con el proceso de crear los perfiles intermedios, sólo queda exportar en un archivo de datos los perfiles que se han creado. Para ello iremos al menú de la parte superior, en el submenú “Splines” y ahí ya se encuentra la opción “Export to File”, como se puede ver en la imagen A2.9 Teniendo que exportar uno a uno todos los perfiles intermedios, es conveniente guardarlos con unos nombres consecutivos, de forma que luego que se pueda diferenciar el orden a la hora de introducirlos al programa GID. Imagen A2.9. Menú para exportar perfiles
72
73 Anexo III. Programas Fortran 90 para generar el rotor Para realizar la geometría a mano en el programa GID se precisaba mucho trabajo. Realizar los mismos pasos una y otra vez, tener que repetir todo cada vez que se encuentra un error, y en general tener que empezar de cero cada vez que se quiera cambiar algo. Por eso se decidió invertir parte del tiempo en intentar automatizar la entrada de datos para que cualquier cambio en la configuración del aerogenerador no obligase a realizar el modelo desde cero otra vez. En el caso del programa GID existía la posibilidad de introducir esos pasos de forma escrita importando un archivo de comandos llamado “bach file”. La primera tarea fue desentrañar cómo se debían escribir las operaciones que necesitamos en el lenguaje que GID utiliza. Como se explica en el Anexo I, se fueron obteniendo mediante experimentación. Pero aun así existía el inconveniente de que había que incluir cientos de esas órdenes para poder generar la geometría del rotor, con similares problemas en cuanto a errores que en el caso anterior. En este punto es donde entró en escena la programación Fortran. Mediante unos sencillos programas realizados con Fortran 90, se generan distintos archivos de comandos, que, importados desde el programa GID, generan la geometría deseada. Se eligió este tipo de programación por su sencillez y por su adecuación para la tarea que se necesitaba realizar, que era escribir en un archivo de comandos repitiendo muchas veces lo mismo, variando determinados parámetros como se verá más adelante. Aunque añadía la tarea de aprender el lenguaje y la sintaxis de este tipo de programación, las ventajas que ofrecía a la hora de ahorrar tiempo una vez creados los programas eran suficientes como para trabajar en ello.
80 Una vez está creada una pala, al igual que hacía el programa de importar los perfiles intermedios, se gira todo 120º y se comienza de nuevo el proceso para crear otra pala. Una vez obtenidos estos perfiles de las palas, el programa encargado de generar las superficies es muy simple, puesto que básicamente lo único que tiene que hacer es decir qué líneas forman cada superficie. Ahí estaba la importancia de mantener un orden lógico de las líneas para que los bucles de este programa fueran lo más sencillos posibles. En la imagen A3.7 se ve como ya existen superficies a lo largo de la pala. Evidentemente, todas las superficies son las que se forman por el exterior. No tiene sentido generar superficies en las secciones interiores, puesto que al unir las tres zonas, lo de dentro tiene que ser todo hueco, para poder generar el volumen. Por último, cada uno de los programas se han ido guardando en archivos GID distintos. Para acabar habría que unirlos en un solo archivo y completar las superficies intermedias. Imagen A3.7. Superficies creadas en toda la geometría de las palas
81 El resultado final, como ya se vio en la sección 2, es el que se refleja en las imágenes A3.8 y A3.9 Este modelo una vez completarlo, como comprobación de que está bien acabado el volumen, hay que realizar un mallado satisfactorio del rotor, en caso de que no se pudiera realizar el mallado habría que buscar y depurar errores en el modelo. Imagen A3.8. Modelo del volumen del rotor completo Imagen A3.9. Alzado del rotor completado