Você está na página 1de 49

Trabajo Fin de Mster

Mster en energa y sostenibilidad

Estudio del comportamiento de


las palas LM19 de un
aerogenerador Bonus 600
Autor: Alejandro Garca Soto
Directora: Elena Martn Ortega

Julio, curso 2015-2016

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

Resumen
El objetivo de este trabajo es el anlisis mediante simulacin numrica de mecnica
de fluidos (computational fluid dynamics, CFD en adelante) del comportamiento y el
rendimiento de un aerogenerador de paso fijo para evaluar la conveniencia de aadir
diversos elementos que modifiquen la aerodinmica de las palas.
Normalmente, todos los aerogeneradores dentro de un mismo parque elico son del
mismo modelo. sto se debe a la facilidad de operacin y de mantenimiento. A la hora
de escoger un modelo u otro, se busca uno con una curva de potencia que exprima al
mximo los datos del viento de la zona.
Los datos de viento son los de alguna estacin cercana existente o una instalada adhoc, pero siempre sern estadsticos y no se dispondr de los datos exactos de viento en
cada uno de los puntos donde se instalar cada mquina. sto provoca que cada
aerogenerador vea un viento ligeramente distinto. Adems, las reparaciones y el
mantenimiento necesario van alterando sutilmente la geometra de las palas. Como
resultado, cada aerogenerador entregar energa elctrica siguiendo una curva de
potencia diferente a la estimada por el fabricante.
Estas desviaciones de la curva de potencia terica, tanto por exceso como por
defecto, generan una disminucin de la energa generada. Cuando esa disminucin
supera unos lmites, comienza a ser rentable invertir recursos para corregirla.
En los aerogeneradores de paso variable sto se soluciona variando el paso. En los
antiguos aerogeneradores de paso fijo, sin embargo, la nica forma de modificar y
adaptar las necesidades aerodinmicas de cada aerogenerador es mediante elementos
aadidos que modifiquen la geometra de las palas.
La importancia del estudio de stas modificaciones en modelos antiguos de paso fijo
se debe a la antiguedad de los parques actuales, sobre todo en Galicia. En el norte de
Europa ya se empiezan a reemplazar viejos aerogeneradores por otros ms modernos y
ms potentes en lo que se conoce como "repowering". Sin embargo, los promotores
siempre van a buscar formas de aumentar la rentabilidad y la vida de los parques al
menor coste.
Es ah donde este estudio puede resultar una herramienta til para determinar la
posibilidad o no de aumentar el rendimiento y la rentabilidad de los parques elicos ya
existentes mediante modificaciones sencillas y baratas sobre las palas de los
aerogeneradores.
Palabras clave: CFD, energa elica, aerogenerador, aerodinmica, repowering
3

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

Agradecimientos
A los compaeros de la empresa IM Future, donde realic unas prcticas durante 6
meses, por ser un equipo en el que d gusto trabajar y por su disponibilidad para
ensearme y aclarar cualquier duda.
A Javier Canosa, mi tutor durante las prcticas, por ser un ejemplo a seguir
profesional y personalmente y por ensearme y animarme a aprender. Por ser un
maestro.
A Juanjo, por darme nimos a su manera cuando los necesitaba.
A Elena Martn Ortiz, por aguantar todos los correos y ensearme a lidiar con
OpenFoam.

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

ndice
1

Resumen

Agradecimientos

ndice

1 Estado del arte

1.1 Aerogeneradores de paso fijo

10

1.2 Aerogeneradores de paso variable

10

1.3 Parques elicos con aerogeneradores de paso fijo

12

1.4 Soluciones disponibles actualmente

14

2 Descripcin del aerogenerador

15

2.1 IM Future y el parque elico Sotavento

18

2.2 Geometra del rotor

20 3 Introduccin a la dinmica de fluidos computacional


20

3.1 Simplificaciones en el flujo sobre el rotor

21

3.2 Condiciones de contorno del caso

22

3.3 Modelo de turbulencia

23

3.4 Definicin de la malla

25 4 Caso en OpenFOAM
25

4.1 Carpeta system

38

4.2 Carpeta constant

41

4.3 Carpeta 0

47 5 Resultados
48 6 Conclusiones y futuras lneas de investigacin
49 7 Bibliografa
7

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

1 Estado del Arte


Actualmente existen dos familias de aerogeneradores dependiendo de la forma en
que controlan la velocidad de giro del rotor y en la forma de frenar la mquina.

1.1 Aerogeneradores de paso fijo


Las palas estn atornilladas al buje y no se pueden mover respecto a l. El control de
la velocidad de giro se produce por la entrada en prdida de la pala a una velocidad
estudiada.

Entrada en prdida

Parada de la mquina

Velocidad del viento


Para frenar la mquina normalmente disponen de unos aerofrenos. La punta de la
pala se puede girar para enfrentarse al viento y evitar el movimiento.

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

1.2 Aerogeneradores de paso variable


Las palas estn sugetas al buje a travs de un rodamiento que permite el giro
alrededor del eje lonjitudinal de la pala. El control de la velocidad se realiza mediante
pequeas variaciones en el ngulo de ataque de toda la pala.
Para frenar la mquina se posicionan todas las palas en bandera, alineadas con el
viento.
P

Plena carga

Velocidad del viento

1.3 Parques elicos con aerogeneradores de paso


fijo
Los primeros parques elicos utilizaban la tecnologa existente en el mercado en ese
momento, que fueron los aerogeneradores de paso fijo. Siendo Galicia una pionera en la
instalacin de este tipo de energa, muchos de los parques existentes, con ms de
veinte aos en funcionamiento, presentan este tipo de mquinas. En muchos casos,
10

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

sobre todo en el norte de Europa, los promotores de los parques estn empezando a
reemplazar los viejos aerogeneradores por tecnologas y diseos ms modernos y
vender los primeros en el mercado de segunda mano. Es un fenmeno denominado
"repowering". Sin embargo, otros muchos promotores prefieren exprimir la vida
til de sus mquinas y buscar formas de aumentar la produccin.
Los parques elicos normalmente instalan un nico modelo de aerogenerador. Esto
sucede porque se consigue simplificar enormemente tareas tanto de diseo, como
gestin o mantenimiento del parque.
Se selecciona un aerogenerador que se adece lo ms posible a los vientos
predominantes en la zona. Pero no todos los puntos dentro del parque van a ser iguales,
y las mquinas vern desde el principio vientos ligeramente diferentes, aportando
diferentes cantidades de energa a la red. Estas diferencias son propensas a acentuarse
con el paso de los aos y de las reparaciones y el mantenimiento regular.
Siendo todas las mquinas iguales y en un mismo parque, es sencillo hacer un
seguimiento e identificar diferencias entre los distintos aerogeneradores:
1 Subproduccin: Aerogeneradores que nunca llegan a su potencia nominal.
2 Sobreproduccin: Aerogeneradores que alcanzan la potencia nominal
demasiado pronto
Un aerogenerador que llegue demasiado pronto a la potencia nominal deber parar
por motivos de seguridad estructural, dejando a la mquina fuera de servicio durante los
vientos ms energticos para los que estaba diseado.
Cualquiera de los dos casos supone un aerogenerador que est produciendo menos
energa de la que se espera.
Sobreproduccin

Curva tpica

Potencia
nominal

Subproduccin

Velocidad del viento

11

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

1.4 Soluciones disponibles actualmente


Dinotails
Pequeas planchas de plstico, nomalmente transparente. Con ellas se aumenta
ligeramente la cuerda en la seccin de la punta. Se consigue un aumento de la
sustentacin en la pala y se "sube" la curva de potencia.

Generadores de vrtices (VGs)


Se utilizan con frecuencia en el diseo de las palas, por lo que en muchos modelos
los VGs forman parte del diseo orginial. Introducen energa en la capa lmite,
haciendo que tarde ms en desprenderse. Consiguen retardar la entrada en prdida de la
pala, "alargando" la curva de potencia.

12

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

Stall lists
Tiras de seccin triangular de plstico que se colocan en el borde de ataque de las
palas. Inducen una pequea burbuja de recirculacin del aire, adelantando la entrada en
prdida de la pala. "Bajan" la curva de potencia.

13

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

2 Descripcin del aerogenerador


Para este estudio se ha utilizado como referencia dos aerogeneradores modelo
Bonus 600kW situados en el parque elico de Sotavento.
A continuacin los datos tcnicos del aerogenerador segn el fabricante:

14

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

2.1 IM Future y el parque elico de Sotavento


Sotavento es un parque elico experimental situado en la provincia de Lugo, Galicia.
Nace como una apuesta por los proyectos de investigacin y desarrollo por lo que es el
lugar idneo para realizar un estudio como ste.
IM Future (www.imfuture.es) es una empresa de mantenimiento de parques elicos.
Tras una reparacin en dos de los aerogeneradores Bonus 600, IM Future, junto con el
supervisor del parque Sotavento, decidieron retirar los stall list del AE18 y los dinotails
del AE22.
Anailzando los datos posteriores, el aerogenerador AE18 sobreproduca, dejaba de
operar demasiado pronto, mientras que el aerogenerador AE22 no llegaba a la
prduccin nominal.
Se procedi a instalar de nuevo los elementos aerodinmicos en los dos
aerogeneradores.
Los datos procesados tras la instalacin son de 3 das comparados con los datos de
un mes de su operacin sin los elementos. No se pueden comparar, por tanto, las
magnitudes de energa entregada. Sin embargo, s que se pueden extraer datos
cualitativos bastante demostrativos.
Se presentan en la pgina siguiente los grficos de la energa entregada por cada
aerogenerador en cada franja de velocidades de viento, comparando la energa esperada
con la real. Los dos grficos superiores presentan los datos antes de la instalacin de
los stall lists en el caso del AE18 y de dinotails en el caso del AE22.
En el AE18 se observa una aumento claro del rango de generacin. Cuando antes no
haba valores entregados a partir de los 17m/s, tras la instalacin de los stall lists, se
obtiene energa con velocidades mucho mayores. Siendo la energa del aire
proporcional al cuadrado de la velocidad, interesa aprovecharlos lo mximo que nos
permita la seguridad.
En el AE22 es menos evidente el efecto, y se tienen muy pocos datos con velocidades
medio-altas. Pero se observa que el aerogenerador empieza a entregar ms energa de la
esperada en valores a partir de los 14m/s. Siendo evidente que la curva ha "subido".

15

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

AE 18

16

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

AE 22

17

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

2.2 Geometra del aerogenerador


Para generar la geometra de las palas LM19 que conforman el rotor de la Bonus
600, se parte de los perfiles que define el fabricante de las palas: las series FFA-3 y
NACA 632xx. Comparando los perfiles con datos obtenidos sobre palas reparadas en
suelo, se puede recrear una geometra exterior bastante fidedigna de la pala.
Se disponen una serie de perfiles. FFA-3 en la primera mitad de la pala y NACA
632xx en la segunda mitad hasta la punta.
Una vez definida la geometra a grandes rasgos, es necesario generar una malla
cerrada, limpia y lo suficientemente densa en lugares crticos como bordes de ataque y
salida y punta.

18

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

19

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

3 Dinmica de fludos computacional


Ya en los aos 60 se identificaron los principios y las ecuaciones que rigen la
dinmica de fluidos. Siendo estas ecuaciones tremendamente complejas de resolver, no
se tard en buscar mtodos numricos por ordenador para buscar soluciones.
Las ecuaciones fundamentales en la dinmica de fluidos son las ecuaciones de
Navier-Stokes: las ecuaciones de conservacin de la masa, la cantidad de movimiento y
de la energa.

Con estas ecuaciones se puede definir y analizar cualquier fludo, pero a costa de
una carga de clculo tremenda. Siendo conscientes de sto, y de que muchos de los
trminos, una vez que pasamos a aplicaciones y flujos especficos, apenas tienen
influencia sobre el total; el primer paso en cualquier clculo de fluidos es buscar el
mayor nmero posible de simplificaciones sobre stas ecuaciones.

3.1 Simplificaciones en el flujo sobre el rotor


No hay variacin de la temperatura ni reacciones qumicas. La ecuacin de la
energa no se aplica.
El flujo est muy por debajo de la velocidad del sonido M<<1 ni variacin de
temperatura. Se puede asumir una densidad constante. Flujo incompresible.
Se analiza el rotor "flotanto" en el aire, sin influencia de la torre.
Slo se analiza un tercio del rotor, siendo el flujo idntico en los tres sectores
resultantes se puede recomponer el fluido posteriormente.
20

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

Se simula el rotor esttico, sin rotacin. De este modo se asientan las bases para
un estudio posterior implementando la rotacin del modelo.

3.2 Condiciones de contorno del caso


En este caso, lo que se pretende es generar un flujo alrededor el rotor y estudiar su
comportamiento. Los extremos del dominio debern comportarse como si no existiera
el rotor, por eso la necesidad de un campo de fluido tan extenso. Se detallan a
continuacin las geometras y algunas caractersticas clave:
Rotor: Se impondr una velocidad 0, y una modelizacin de la capa lmite.

Entrada: velocidad de viento constante a 5m/s.

21

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

Salida: Presin nula

Cilindro externo: Se impone la misma velocidad que en la entrada de 5m/s para


favorecer la resolucin del caso.

Planos de corte: Se impone una condicin cclica donde los valores de un plano son
idnticos a los del otro.

3.3 Modelo de turbulencia


En este caso se utiliza un modelo RAS (Reynolds-averaged simulation) k-omega.
Este modelo utiliza dos variables para simular el flujo turbulento.
K es la energa cintica turbulenta y Omega es el ratio de disipacin de esa energa.
Para agilizar el clculo y favorecer la convergencia, es necesario inciar el caso con
unos valores de K y Omega coherentes con la fsica del caso.

22

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

Se utilizan las siguientes ecuaciones:

A partir de ellas, se calculan:


K= 0.093
Omega= 44.7

3.4 Definicin de la malla


A la hora de crear una malla es importante mantener un equilibirio entre la
densidad general de puntos y la definicin buscada en el caso. Una malla muy densa
normalmente producir resultados ms definidos, pero puede resultar un gasto en
capacidad de computacin que no aporte ms informacin til. Siempre se buscar la
malla ms pequea y sencilla que pueda aportar la informacin necesaria.
Para este caso se provaron diversos programas y formas de mallado. Al final se
utiliz el mdulo snappyhexmesh includo en OpenFoam.

Snappyhexmesh parte de dos mallas separadas: una malla de base muy simple y otra
con la geometra de estudio. Se definen los parmetros en un archivo dentro de la
carpeta "system". Calculando las intersecciones entre la malla base y la de estudio, el
programa va realizando subdivisiones progresivas hasta llegar a los valores definidos en
el archivo. Posteriormente el programa desplaza los vrtices para que coincidan
perfectamente con la geometra de estudio. De esta forma, es posible obtener mallas con
un grado de ortogonalidad muy elevado alrededor de geometras muy complejas.
Como en cualquier caso de flujo sobre objetos, la zona que ms interesa que est
correctamente definida es la prxima al objeto. Para ello, se calcula un tamao
aproximado de la capa lmite en su punto ms desarrollado: 20cm en el borde de salida
de la zona de la punta de la pala, y se asegura una densidad mxima de la malla hasta
40cm de distancia alrededor de toda la pala.
23

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

24

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

4 Caso en OpenFoam
OpenFoam ( www.openfoam.com ) es un programa de cdigo abierto que puede
resolver mediante mtodos numricos complejos sistemas de ecuaciones sobre puntos
discretos de una malla con una geometra definida. Se utiliza sobre todo para clculos en
dinmica de fludos, como demuestra el gran nmero de mdulos dedicados a ste
campo.
El caso es el conjunto de la simulacin. En OpenFoam, se segrega la informacin en
diferentes archivos de texto organizados en carpetas. Los archivos donde se descriven
las diferentes opcciones e instrucciones para la simulacin se denominan diccionarios,
abreviados como "dict".

4.1 Carpeta "system"


En la carpeta "system" se encuentran archivos relativos a los modelos, las ecuaciones
y la forma de resolverlas.
4.1.1 controlDict
En este archivo se define el modelo de resolverdor a utilizar, as como los tiempos
de simulacin y de escritura de los datos.
25

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

/*--------------------------------*- C++ -*----------------------------------*\


| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
dictionary;
location "system";
object controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
application

SimpleFoam;

startFrom

startTime;

startTime

0;

stopAt

endTime;

endTime
deltaT

1000;
1;

writeControl timeStep;
writeInterval 100;
purgeWrite

0;

writeFormat

ascii;

writePrecision 6;
writeCompression off;
timeFormat

general;

timePrecision 6;
runTimeModifiable true;
// ************************************************************************* //

4.1.2 fvSchemes
/*--------------------------------*- C++ -*----------------------------------*\
| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
dictionary;
location "system";

26

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

object fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
ddtSchemes
{
default
steadyState;
}
gradSchemes
{
default
Gauss linear;
}
divSchemes
{
default
none;
div(phi,Urel) bounded Gauss upwind;
div(phi,U) bounded Gauss upwind;
div(phi,k) bounded Gauss upwind;
div(phi,epsilon) bounded Gauss upwind;
div(phi,omega) bounded Gauss upwind;
div(phi,R) bounded Gauss upwind;
div(R)
Gauss linear;
div(phi,nuTilda) bounded Gauss upwind;
div((nuEff*dev(T(grad(Urel))))) Gauss linear;
div((nuEff*dev(T(grad(U))))) Gauss linear;
}
laplacianSchemes
{
default
Gauss linear corrected;
}
interpolationSchemes
{
default
linear;
interpolate(Urel) linear;
}
snGradSchemes
{
default
corrected;
}
fluxRequired
{
default
no;
p
;
}

// ************************************************************************* //

4.1.3 fvSolution
/*--------------------------------*- C++ -*----------------------------------*\
| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile

27

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

version 2.0;
format ascii;
class
dictionary;
location "system";
object fvSolution;

}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
solvers
{
p
{
solver
GAMG;
tolerance
1e-5;
relTol
0;
smoother
GaussSeidel;
nPreSweeps
0;
nPostSweeps 2;
cacheAgglomeration on;
agglomerator faceAreaPair;
nCellsInCoarsestLevel 10;
mergeLevels 1;
}

"(U|k|omega|R|nuTilda)"
{
solver
smoothSolver;
smoother
symGaussSeidel;
tolerance
1e-05;
relTol
0.0;
}

SIMPLE
{
nNonOrthogonalCorrectors 2;
residualControl
{
p
1e-3;
U
1e-4;
"(k|omega)" 1e-4;
}
}
relaxationFactors
{
fields
{
p
0.1;
}
equations
{
U
0.1;
k
0.1;
omega
0.1;
}
}
// ************************************************************************* //

4.1.4 SnappyHexMesh
/*--------------------------------*- C++ -*----------------------------------*\

28

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 3.0.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
dictionary;
object snappyHexMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Which of the steps to run
castellatedMesh true;
snap
true;
addLayers
false;
// Geometry. Definition of all surfaces. All surfaces are of class
// searchableSurface.
// Surfaces are used
// - to specify refinement for any mesh cell intersecting it
// - to specify refinement for any mesh cell inside/outside/near
// - to 'snap' the mesh boundary to the surface
geometry
{
rotor.obj
{
type triSurfaceMesh;
name rotor;
}
cilindro.obj
{
type triSurfaceMesh;
name cilindro;
}
plano1.obj
{
type triSurfaceMesh;
name plano1;
}
plano2.obj
{
type triSurfaceMesh;
name plano2;
}
};

// Settings for the castellatedMesh generation.


castellatedMeshControls
{
// Refinement parameters
// ~~~~~~~~~~~~~~~~~~~~~
// If local number of cells is >= maxLocalCells on any processor
// switches from from refinement followed by balancing
// (current method) to (weighted) balancing before refinement.
maxLocalCells 10000000;

29

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

// Overall cell limit (approximately). Refinement will stop immediately


// upon reaching this number so a refinement level might not complete.
// Note that this is the number of cells before removing the part which
// is not 'visible' from the keepPoint. The final number of cells might
// actually be a lot less.
maxGlobalCells 20000000;
// The surface refinement loop might spend lots of iterations refining just a
// few cells. This setting will cause refinement to stop if <= minimumRefine
// are selected for refinement. Note: it will at least do one iteration
// (unless the number of cells to refine is 0)
minRefinementCells 10;
// Allow a certain level of imbalance during refining
// (since balancing is quite expensive)
// Expressed as fraction of perfect balance (= overall number of cells /
// nProcs). 0=balance always.
maxLoadUnbalance 0.10;
// Number of buffer layers between different levels.
// 1 means normal 2:1 refinement restriction, larger means slower
// refinement.
nCellsBetweenLevels 5;

// Explicit feature edge refinement


// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Specifies a level for any cell intersected by its edges.
// This is a featureEdgeMesh, read from constant/triSurface for now.
features
(
{
file "rotor.eMesh";
level 7;
}
{
file "cilindro.eMesh";
level 0;
}
{
file "plano1.eMesh";
level 0;
}
{
file "plano2.eMesh";
level 0;
}
);

// Surface based refinement


// ~~~~~~~~~~~~~~~~~~~~~~~~
// Specifies two levels for every surface. The first is the minimum level,
// every cell intersecting a surface gets refined up to the minimum level.
// The second level is the maximum level. Cells that 'see' multiple
// intersections where the intersections make an
// angle > resolveFeatureAngle get refined up to the maximum level.
refinementSurfaces
{
rotor
{

30

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

// Surface-wise min and max refinement level


level (7 7);

// Optional specification of patch type (default is wall). No


// constraint types (cyclic, symmetry) etc. are allowed.
// patchInfo
// {
// type wall;
// inGroups (motorBikeGroup);
// }

cilindro
{
level (0 0);
}
plano1
{
level (0 0);
}
plano2
{
level (0 0);
}
}
// Resolve sharp angles
resolveFeatureAngle 30;
// Region-wise refinement
// ~~~~~~~~~~~~~~~~~~~~~~
// Specifies refinement level for cells in relation to a surface. One of
// three modes
// - distance. 'levels' specifies per distance to the surface the
// wanted refinement level. The distances need to be specified in
// descending order.
// - inside. 'levels' is only one entry and only the level is used. All
// cells inside the surface get refined up to the level. The surface
// needs to be closed for this to be possible.
// - outside. Same but cells outside.
refinementRegions
{
rotor
{
mode distance;
levels ((0.4 7)); //se asegura una maxima densidad para el desarrollo de la capa lmite.
}
}
// Mesh selection
// ~~~~~~~~~~~~~~
// After refinement patches get added for all refinementSurfaces and
// all cells intersecting the surfaces get put into these patches. The
// section reachable from the locationInMesh is kept.
// NOTE: This point should never be on a face, always inside a cell, even
// after refinement.
locationInMesh (30.0001 4.0001 0.43);
// Whether any faceZones (as specified in the refinementSurfaces)
// are only on the boundary of corresponding cellZones or also allow

31

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

// free-standing zone faces. Not used if there are no faceZones.


allowFreeStandingZoneFaces true;

// Settings for the snapping.


snapControls
{
//- Number of patch smoothing iterations before finding correspondence
// to surface
nSmoothPatch 3;
//- Relative distance for points to be attracted by surface feature point
// or edge. True distance is this factor times local
// maximum edge length.
tolerance 2.0;
//- Number of mesh displacement relaxation iterations.
nSolveIter 30;
//- Maximum number of snapping relaxation iterations. Should stop
// before upon reaching a correct mesh.
nRelaxIter 5;
// Feature snapping
//- Number of feature edge snapping iterations.
// Leave out altogether to disable.
nFeatureSnapIter 10;
//- Detect (geometric only) features by sampling the surface
// (default=false).
implicitFeatureSnap false;
//- Use castellatedMeshControls::features (default = true)
explicitFeatureSnap true;

//- Detect points on multiple surfaces (only for explicitFeatureSnap)


multiRegionFeatureSnap false;

// Settings for the layer addition.


addLayersControls
{
// Are the thickness parameters below relative to the undistorted
// size of the refined cell outside layer (true) or absolute sizes (false).
relativeSizes true;
// Per final patch (so not geometry!) the layer information
layers
{
"rotor.*"
{
nSurfaceLayers 1;
}
}
// Expansion factor for layer mesh
expansionRatio 1.0;
// Wanted thickness of final added cell layer. If multiple layers
// is the thickness of the layer furthest away from the wall.
// Relative to undistorted size of cell outside layer.
// See relativeSizes parameter.

32

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

finalLayerThickness 0.3;
// Minimum thickness of cell layer. If for any reason layer
// cannot be above minThickness do not add layer.
// Relative to undistorted size of cell outside layer.
minThickness 0.1;
// If points get not extruded do nGrow layers of connected faces that are
// also not grown. This helps convergence of the layer addition process
// close to features.
// Note: changed(corrected) w.r.t 17x! (didn't do anything in 17x)
nGrow 0;
// Advanced settings
// When not to extrude surface. 0 is flat surface, 90 is when two faces
// are perpendicular
featureAngle 60;
// At non-patched sides allow mesh to slip if extrusion direction makes
// angle larger than slipFeatureAngle.
slipFeatureAngle 30;
// Maximum number of snapping relaxation iterations. Should stop
// before upon reaching a correct mesh.
nRelaxIter 3;
// Number of smoothing iterations of surface normals
nSmoothSurfaceNormals 1;
// Number of smoothing iterations of interior mesh movement direction
nSmoothNormals 3;
// Smooth layer thickness over surface patches
nSmoothThickness 10;
// Stop layer growth on highly warped cells
maxFaceThicknessRatio 0.5;
// Reduce layer growth where ratio thickness to medial
// distance is large
maxThicknessToMedialRatio 0.3;
// Angle used to pick up medial axis points
// Note: changed(corrected) w.r.t 17x! 90 degrees corresponds to 130 in 17x.
minMedianAxisAngle 90;
// Create buffer region for new layer terminations
nBufferCellsNoExtrude 0;

// Overall max number of layer addition iterations. The mesher will exit
// if it reaches this number of iterations; possibly with an illegal
// mesh.
nLayerIter 50;

// Generic mesh quality settings. At any undoable phase these determine


// where to undo.
meshQualityControls
{
#include "meshQualityDict"

33

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

// Advanced

//- Number of error distribution iterations


nSmoothScale 4;
//- Amount to scale back displacement at error points
errorReduction 0.75;

// Advanced
// Write flags
writeFlags
(
scalarLevels
layerSets
layerFields // write volScalarField for layer coverage
);
// Merge tolerance. Is fraction of overall bounding box of initial mesh.
// Note: the write tolerance needs to be higher than this.
mergeTolerance 1e-6;
// ************************************************************************* //

4.1.5 SurfaceFeatureExtractDict
/*--------------------------------*- C++ -*----------------------------------*\
| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 3.0.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
dictionary;
object surfaceFeatureExtractDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
rotor.obj
{
// How to obtain raw features (extractFromFile || extractFromSurface)
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
// Mark edges whose adjacent surface normals are at an angle less
// than includedAngle as features
// - 0 : selects no edges
// - 180: selects all edges
includedAngle 150;
}
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges
no;
// Keep open edges (edges with 1 connected face)
openEdges
yes;

34

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

}
// Write options
// Write features to obj format for postprocessing
writeObj
yes;

cilindro.obj
{
// How to obtain raw features (extractFromFile || extractFromSurface)
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
// Mark edges whose adjacent surface normals are at an angle less
// than includedAngle as features
// - 0 : selects no edges
// - 180: selects all edges
includedAngle 150;
}
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges
no;

// Keep open edges (edges with 1 connected face)


openEdges
yes;

// Write options
// Write features to obj format for postprocessing
writeObj
yes;

plano1.obj
{
// How to obtain raw features (extractFromFile || extractFromSurface)
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
// Mark edges whose adjacent surface normals are at an angle less
// than includedAngle as features
// - 0 : selects no edges
// - 180: selects all edges
includedAngle 150;
}
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges
no;

// Keep open edges (edges with 1 connected face)


openEdges
yes;

// Write options
// Write features to obj format for postprocessing
writeObj
yes;

35

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

}
plano2.obj
{
// How to obtain raw features (extractFromFile || extractFromSurface)
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
// Mark edges whose adjacent surface normals are at an angle less
// than includedAngle as features
// - 0 : selects no edges
// - 180: selects all edges
includedAngle 150;
}
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges
no;

// Keep open edges (edges with 1 connected face)


openEdges
yes;

// Write options

// Write features to obj format for postprocessing


writeObj
yes;

// ************************************************************************* //

4.1.6 MeshQualityDict
/*--------------------------------*- C++ -*----------------------------------*\
| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 3.0.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
dictionary;
object meshQualityDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Include defaults parameters from master dictionary
//#includeEtc "caseDicts/meshQualityDict"
//- Maximum non-orthogonality allowed. Set to 180 to disable.
maxNonOrtho 65;
//- Max skewness allowed. Set to <0 to disable.
maxBoundarySkewness 20;
maxInternalSkewness 4;
//- Max concaveness allowed. Is angle (in degrees) below which concavity
// is allowed. 0 is straight face, <0 would be convex face.
// Set to 180 to disable.

36

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

maxConcave 80;
//- Minimum pyramid volume. Is absolute volume of cell pyramid.
// Set to a sensible fraction of the smallest cell volume expected.
// Set to very negative number (e.g. -1E30) to disable.
minVol 1e-13;
//- Minimum quality of the tet formed by the face-centre
// and variable base point minimum decomposition triangles and
// the cell centre. This has to be a positive number for tracking
// to work. Set to very negative number (e.g. -1E30) to
// disable.
// <0 = inside out tet,
// 0 = flat tet
// 1 = regular tet
minTetQuality 1e-15;
//- Minimum face area. Set to <0 to disable.
minArea -1;
//- Minimum face twist. Set to <-1 to disable. dot product of face normal
// and face centre triangles normal
minTwist 0.02;
//- Minimum normalised cell determinant. This is the determinant of all
// the areas of internal faces. It is a measure of how much of the
// outside area of the cell is to other cells. The idea is that if all
// outside faces of the cell are 'floating' (zeroGradient) the
// 'fixedness' of the cell is determined by the area of the internal faces.
// 1 = hex, <= 0 = folded or flattened illegal cell
minDeterminant 0.001;
//- Relative position of face in relation to cell centres (0.5 for orthogonal
// mesh) (0 -> 0.5)
minFaceWeight 0.05;
//- Volume ratio of neighbouring cells (0 -> 1)
minVolRatio 0.01;
//- Per triangle normal compared to average normal. Like face twist
// but now per (face-centre decomposition) triangle. Must be >0 for Fluent
// compatibility
minTriangleTwist -1;
//- If >0 : preserve cells with all points on the surface if the
// resulting volume after snapping (by approximation) is larger than
// minVolCollapseRatio times old volume (i.e. not collapsed to flat cell).
// If <0 : delete always.
//minVolCollapseRatio 0.1;
//hasta aqui se copio el codigo
//- minFaceWeight (0 -> 0.5)
minFaceWeight 0.02;
// ************************************************************************* //

4.1.7 forceCoeffs

/*--------------------------------*- C++ -*----------------------------------*\


| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 3.0.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|

37

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
forceCoeffs1
{
type
forceCoeffs;
functionObjectLibs ( "libforces.so" );
outputControl timeStep;
timeInterval 1;
log

/*

*/
}

yes;

patches ( rotor );
rhoName rhoInf; // Indicates incompressible
rhoInf 1;
// Redundant for incompressible
liftDir (0 0 1); // irrelevante en este caso
dragDir (1 0 0); //direccin del viento
CofR
(0 0 0); // Centro
pitchAxis (1 0 0);
magUInf 5;
lRef
1;
//
Aref
1520;
// Ara del rotor
binData
{
nBin
20;
// output data into 20 bins
direction (1 0 0); // bin direction
cumulative yes;
}

// ************************************************************************* //

4.2 Carpeta "constant"


En la carpeta "costant" se encuentran los archivos de la malla, as como parmetros
fsicos como el modelo de turbulencia.
4.2.1 PolyMesh/Boundary
/*--------------------------------*- C++ -*----------------------------------*\
| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
polyBoundaryMesh;
location "2/polyMesh";
object boundary;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
6

38

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

(
inlet
{
type
patch;
nFaces
6692;
startFace
36237010;
}
outlet
{
type
patch;
nFaces
6692;
startFace
36243702;
}
rotor
{
type
nFaces
startFace

}
cilindro
{
type

nFaces
startFace

}
plano1
{
type

wall;
254722;
36250394;

patch;
21900;
36505116;

cyclicAMI;

nFaces
24766;
startFace
36527016;
matchTolerance 0.01;
transform
rotational;
neighbourPatch plano2;
rotationAxis (1 0 0);
rotationCentre (0 0 0);
}
plano2
{
type
cyclicAMI;

nFaces
24785;
startFace
36551782;
matchTolerance 0.01;
transform
rotational;
neighbourPatch plano1;
rotationAxis (1 0 0);
rotationCentre (0 0 0);
}

// ************************************************************************* //

4.2.2 RASProperties

/*--------------------------------*- C++ -*----------------------------------*\


| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile

39

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

version 2.0;
format ascii;
class
dictionary;
location "constant";
object RASProperties;

}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
RASModel

kOmegaSST;

turbulence

on;

printCoeffs

on;

// ************************************************************************* //

4.2.3 TransportProperties

/*--------------------------------*- C++ -*----------------------------------*\


| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
dictionary;
location "constant";
object transportProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
transportModel Newtonian;
nu

nu [ 0 2 -1 0 0 0 0 ] 1.5e-05;

CrossPowerLawCoeffs
{
nu0
nu0 [ 0 2 -1 0 0 0 0 ] 1e-06;
nuInf
nuInf [ 0 2 -1 0 0 0 0 ] 1e-06;
m
m [ 0 0 1 0 0 0 0 ] 1;
n
n [ 0 0 0 0 0 0 0 ] 1;
}
BirdCarreauCoeffs
{
nu0
nu0 [ 0 2 -1 0 0 0 0 ] 1e-06;
nuInf
nuInf [ 0 2 -1 0 0 0 0 ] 1e-06;
k
k [ 0 0 1 0 0 0 0 ] 0;
n
n [ 0 0 0 0 0 0 0 ] 1;
}
// ************************************************************************* //

40

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

4.3 Carpeta 0
Se necesita una carpeta de tiempo con la que iniciar el clculo. Normalmente se usa
un tiempo 0. El programa ir escribiendo los resultados en sucesivas carpetas de
tiempo.
4.3.1 Presin
/*--------------------------------*- C++ -*----------------------------------*\
| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
volScalarField;
location "0";
object p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions

[ 0 2 -2 0 0 0 0 ];

internalField uniform 0;
boundaryField
{
inlet
{
type
}
outlet
{
type
value
}
rotor
{
type
}
cilindro
{
type

}
plano1
{
type
}
plano2
{
type
}

zeroGradient;

fixedValue;
uniform 0;

zeroGradient;

zeroGradient;

cyclicAMI;

cyclicAMI;

// ************************************************************************* //

4.3.2 Velocidad

41

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

/*--------------------------------*- C++ -*----------------------------------*\


| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
volVectorField;
location "0";
object Urel;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions

[ 0 1 -1 0 0 0 0 ];

internalField uniform ( 5 0 0 );
boundaryField
{
inlet
{
type
value
}
outlet
{
type
}
cilindro
{
type
value
}
rotor
{
type
value
}
plano1
{
type
}
plano2
{
type
}
}

fixedValue;
uniform ( 5 0 0 );

zeroGradient;

fixedValue;
uniform ( 5 0 0 );

fixedValue;
uniform ( 0 0 0 );

cyclicAMI;

cyclicAMI;

// ************************************************************************* //

4.3.3 K

/*--------------------------------*- C++ -*----------------------------------*\


| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;

42

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

format ascii;
class
volScalarField;
location "0";
object k;

}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions

[ 0 2 -2 0 0 0 0 ];

internalField uniform 0.093;


boundaryField
{
inlet
{
type
value
}
outlet
{
type
}
rotor
{
type
value
}
cilindro
{
type

}
plano1
{
type
value
}
plano2
{
type
value
}

fixedValue;
uniform 0.093;

zeroGradient;

kqRWallFunction;
uniform 0.093;

zeroGradient;

cyclicAMI;
uniform 0.093;

cyclicAMI;
uniform 0.093;

// ************************************************************************* //

4.3.4 Omega

/*--------------------------------*- C++ -*----------------------------------*\


| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
volScalarField;
location "0";
object omega;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions

[ 0 0 -1 0 0 0 0 ];

43

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

internalField uniform 44.7;


boundaryField
{
inlet
{
type
fixedValue;
value
uniform 44.7;
}
outlet
{
type
zeroGradient;
}
rotor
{
type
omegaWallFunction;
U
Urel;
value
uniform 44.7;
}
cilindro
{
type
zeroGradient;

}
plano1
{
type
value
}
plano2
{
type
value
}

cyclicAMI;
uniform 44.7;

cyclicAMI;
uniform 44.7;

// ************************************************************************* //

4.3.5 Epsilon

/*--------------------------------*- C++ -*----------------------------------*\


| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
volScalarField;
location "0";
object epsilon;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions

[ 0 2 -3 0 0 0 0 ];

internalField uniform 14.855;


boundaryField
{
inlet
{
type
fixedValue;

44

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

value
}
outlet
{
type
}
rotor
{
type
U
value
}
cilindro
{
type

}
plano1
{
type
}
plano2
{
type
}

Alejandro Garca Soto

uniform 14.855;

zeroGradient;

epsilonWallFunction;
Urel;
uniform 14.855;

zeroGradient;

cyclicAMI;

cyclicAMI;

// ************************************************************************* //

4.3.6 Nut

/*--------------------------------*- C++ -*----------------------------------*\


| =========
|
|
| \\ / F ield
| OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 2.3.1
|
| \\ / A nd
| Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class
volScalarField;
location "0";
object nut;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions

[ 0 2 -1 0 0 0 0 ];

internalField uniform 0;
boundaryField
{
inlet
{
type
value
}
outlet
{
type
value
}
rotor
{

calculated;
uniform 0;

calculated;
uniform 0;

45

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

type
U
value

}
cilindro
{
type
value
}
plano1
{
type
value
}
plano2
{
type
value
}

nutkWallFunction;
Urel;
uniform 0;

calculated;
uniform 0;

cyclicAMI;
uniform 0;

cyclicAMI;
uniform 0;

// ************************************************************************* //

46

Alejandro Garca Soto

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

5 Resultados
La idea inicial del proyecto era simular el comportamiento con y sin los diferentes
elementos aerodinmicos modificando la geometra del rotor. Sin embargo, slo se ha
podido simular el caso en esttico, sin rotacin del rotor, y asentar las bases para una
futura simulacin completa del caso.
Las fuerzas resultantes de la simulacin en parado, cuando el aerogenerador an no
ha empezado a girar y con 5m/s resultan:

47

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

6 Conclusiones y futuras lneas


de investigacin
No se han podido extraer datos reveladores sobre los dispositivos aerodinmicos a
partir de la simulacin del rotor en parada.
Sin embargo, se han asentado las bases y los modelos a utilizar para una futura
simulacin incluyendo el giro del aerogenerador.
Se ha intentado la simulacin con el SRFSimpleFoam (Simple Rotating Frame) pero
no se ha conseguido un resultado estable. En el caso, en las condiciones de contorno del
rotor se inclua una componente de velocidad angular simulando el giro del rotor. Se
deben aadir algunos archivos definiendo esta caracterstica, pero la definicin del caso
es muy similar al caso sin rotacin.
Tambin sera interesante evaluar el caso con un flujo compresible.
Adems, tras la obtencin de un caso estable, se debera determinar la sensibilidad
de los resultados a la calidad y densidad de la malla. As como por diversas geometras
del dominio computacional y condiciones de contorno.
48

Estudio del comportamiento de las palas LM19 de un aerogenerador Bonus 600

Alejandro Garca Soto

7 Bibliografa
www.cfd.direct
www.cfdonline.com
Bonus MK 600kW TECHNICAL DESCRIPTION
Ris-R-1065(EN) Airfoil Characteristics for Wind Turbines.
FF A TN 1990-15 COORDINATES AND CALCULATIONS FOR THE FFA-Wlxxx, FFA-W2-xxx AND FFA-W3-xxx SERIES OF AIRFOILS FOR HORIZONTAL
AXIS WIND TURBINES. Anders Bjorck
Ris-R-1370(EN) CFD Study of a NACA 63-415 Aerofoil Fitted with Stall Strips
Ris-R-1193(EN) Wind Tunnel Tests of the NACA 63-415 and a Modified NACA
63-415 Airfoil

49

Você também pode gostar