Energía Undimotriz Tesis España PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 137

UNIVERSIDAD POLITÉCNICA DE MADRID

ESCUELA TÉCNICA SUPERIOR DE INGENIEROS


INDUSTRIALES

TRABAJO DE FIN DE GRADO

MODELADO DE UN CONVERTIDOR
UNDIMOTRIZ DEL TIPO ABSORBEDOR
PUNTUAL EN UN MICROPROCESADOR

MARTA NÚÑEZ-SAMPER MUÑOZ

DIRECTOR DEL TRABAJO DE FIN DE GRADO:


DIONISIO RAMÍREZ PRIETO

COTUTOR DEL TRABAJO DE FIN DE GRADO:


HUGO ROCHA MENDONÇA

Septiembre 2017
“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Si buscas resultados distintos, no hagas siempre lo mismo.

- Albert Einstein

Marta Núñez-Samper Muñoz 1


2 Escuela Técnica Superior de Ingenieros Industriales (UPM)
“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

AGRADECIMIENTOS
Me gustaría agradecer en este apartado a todas aquellas personas que me han ayudado y han hecho
posible el desarrollo de este Trabajo de Fin de Grado tanto de manera directa como indirecta.

En primer lugar, querría agradecer a mi tutor del trabajo Dionisio Ramírez por dirigir y supervisar este
trabajo, así como por el tiempo dedicado y la ayuda proporcionada.

De igual forma me gustaría agradecer al profesor Hugo Rocha por ejercer de cotutor del trabajo así
como por su ayuda, sus explicaciones y la proporción de datos con los que trabajar.

Agradecer a mis padres por su apoyo y sus ánimos durante estos cuatro años y por proporcionarme la
oportunidad de estudiar en esta universidad.

A mi novio Álvaro por su cariño y paciencia así como por no dejar de confiar en mí.

A mis amigos con los que he compartido estos últimos cuatro años y juntos hemos pasado muy buenos
momentos.

Agradecer también al personal de la Escuela Superior de Ingenieros Industriales y a la propia escuela


por haberme proporcionado los espacios necesarios para el desarrollo del trabajo.

Marta Núñez-Samper Muñoz 3


4 Escuela Técnica Superior de Ingenieros Industriales (UPM)
“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

RESUMEN EJECUTIVO
El objetivo de este trabajo es modelar la dinámica de un convertidor
undimotriz del tipo absorbedor puntual e implementarla en un
microprocesador. Un convertidor undimotriz es cualquier convertidor
utilizado para convertir la energía undimotriz en energía eléctrica. Los
convertidores de tipo absorbedor puntual están constituidos por un
cuerpo flotante (boya), un PTO (power take off: convertidor lineal) y un
cuerpo de reacción sumergido (en este caso el suelo marino). La
interacción entre el cuerpo flotante y la ola da lugar al movimiento
vertical del cuerpo flotante. Ante este movimiento, el PTO se mueve a su
vez verticalmente y ejerce una fuerza de reacción contra el cuerpo de
Esquema de fuerzas sobre un
reacción para extraer la energía proveniente de la ola. Absorbedor Puntual

La función del microprocesador es calcular la fuerza que ejercería dicha boya sobre el PTO a partir de
la fuerza de excitación de un oleaje. Después se inyectaría el par equivalente en un motor, imitando el
funcionamiento de la boya, y éste haría girar el eje del generador, el cual hace de PTO en el sistema.

Estructura y partes del sistema

Para entender cómo se realiza el cálculo de la fuerza de la boya se comienza comprendiendo la


ecuación dinámica de un cuerpo flotante. Esta se obtiene a partir de la segunda ley de Newton
∑ 𝑓 (𝑡) = 𝑚. 𝑥̈ (𝑡) aplicada al movimiento vertical. Las fuerzas presentes en el sistema son:

Fuerzas exteriores:
▪ 𝑓𝑒𝑥𝑡 (𝑡): fuerza de Froude-Krylov

Fuerzas hidrodinámicas e hidrostáticas:

▪ 𝑓𝑟 (𝑡): fuerza de radiación / amortiguamiento / inercial

Fuerza debida a la radiación de olas por parte de la boya


𝑡
𝑓𝑟 (𝑡) = − ∫ ℎ𝑟 (𝜏). 𝑥̇ (𝑡 − 𝜏). 𝑑𝜏 − 𝑚∞ . 𝑥̈ (𝑡)
0
▪ 𝑓𝑑 (𝑡): fuerza de difracción / dispersión

Fuerza de fricción entre la boya y las olas en contacto

Marta Núñez-Samper Muñoz 5


RESUMEN EJECUTIVO

+∞
𝑓𝑒 (𝑡) = 𝑓𝑒𝑥𝑡 (𝑡) + 𝑓𝑑 (𝑡) = ∫ ℎ𝑒 (𝜏). 𝜂(𝑡 − 𝜏). 𝑑𝜏
−∞
▪ 𝑓𝑏 (𝑡): fuerza hidrostática / de flotabilidad

Fuerza debida al empuje del fluido del mar sobre el cuerpo flotante
𝑡
𝑓𝑏 (𝑡) = −𝜌. 𝑔. 𝑆𝑤 . ∫ 𝑥̇ (𝜏). 𝑑𝜏 = −𝐾𝑤 . 𝑥(𝑡)
0
▪ 𝑓𝑣 (𝑡): fuerza de viscosidad

𝑓𝑣 (𝑡) = 0

La ecuación resultante es la conocida como ecuación de Cummins [1]:


∑ 𝑓 (𝑡) = 𝑚. 𝑥̈ (𝑡) = 𝑓𝑒𝑥𝑡 (𝑡) + 𝑓𝑟 (𝑡) + 𝑓𝑑 (𝑡) + 𝑓𝑏 (𝑡) + 𝑓𝑣 (𝑡)
+∞ 𝑡
𝑚. 𝑥̈ (𝑡)= ∫−∞ ℎ𝑒 (𝜏). 𝜂(𝑡 − 𝜏). 𝑑𝜏 − ∫0 ℎ𝑟 (𝜏). 𝑥̇ (𝑡 − 𝜏). 𝑑𝜏 − 𝑚∞ . 𝑥̈ (𝑡) − 𝐾𝑤 . 𝑥(𝑡)

OLEAJE REGULAR
El estudio más sencillo de la dinámica de
un cuerpo flotante comienza suponiendo
que el oleaje con el que se trabaja es un
oleaje regular, es decir, su perfil se puede
asemejar a una función senoidal de
amplitud la unidad y frecuencia
constante. Al ser de frecuencia constante
se puede convertir directamente la
ecuación en el dominio del tiempo al
Ejemplo de oleaje regular en tres dimensiones
dominio de la frecuencia que resulta:

−𝑚. 𝑤 2 = 𝜂. 𝐻𝑒 (𝑤) − 𝑗. 𝑤. 𝐵𝑤 (𝑤). 𝑋(𝑗𝑤) + 𝑤 2 . 𝐴𝑤 (𝑤). 𝑋(𝑗𝑤) − 𝐾𝑤 (𝑤). 𝑋(𝑗𝑤)

A partir de esta ecuación se obtiene la función de transferencia que relaciona la altura de la ola con el
desplazamiento de la boya para un oleaje con una frecuencia determinada y constante:

𝑆𝑎𝑙𝑖𝑑𝑎 𝑋(𝑠) 𝐻𝑒 (𝑤)


𝐺(𝑠) = = = 2
𝐸𝑛𝑡𝑟𝑎𝑑𝑎 𝜂 𝑠 . (𝑚 + 𝐴𝑤 (𝑤)) + 𝑠. 𝐵𝑤 (𝑤) + 𝐾𝑤

𝐹𝑏𝑜𝑦𝑎 = ((𝑚 + 𝐴𝑤 (𝑤 )). 𝑥̈


𝜂 𝐹𝑒 1 1 𝑥̇ 1 𝑥
𝐻𝑒 (𝑠) .
𝑠 𝑚 + 𝐴𝑤 (𝑤) 𝑠

𝐹𝑟
𝐵𝑤 (𝑤)

𝐹𝑏
𝐾𝑤
Diagrama de bloques de la obtención de la velocidad y el desplazamiento de la boya cuando la
entrada al sistema es un oleaje regular

6 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

OLEAJE IRREGULAR
Cuando el oleaje es irregular, el perfil de la ola se asemeja a una
combinación de componentes armónicas por lo que no se puede pasar al
dominio de la frecuencia directamente. El procedimiento consiste en
eliminar los productos de convolución implicados en la ecuación en el
dominio del tiempo. Para ello se expresa la fuerza de radiación mediante
un espacio de estado de la forma:
𝑧̇ = 𝐴𝑟 . 𝑧 + 𝐵𝑟 . 𝑥̇
{
𝑓𝑟 = 𝐶𝑟 . 𝑧 + 𝐷𝑟 . 𝑥̇

Si se definen unas nuevas variables de estado, se consigue la expresión


general de la dinámica de un cuerpo flotante expresada como espacio de
estado:
𝑥̃1 (𝑡) Descomposición de un oleaje
𝑥̃2 (𝑡) irregular en distintos oleajes
𝑥̃(𝑡) = 𝑥̃3 (𝑡) donde 𝑥̃1 (𝑡) = 𝑥(𝑡) 𝑥̃2 (𝑡) = 𝑥̇ (𝑡) regulares [20]

[𝑥̃𝑛 (𝑡)]
𝑥̃3 (𝑡)
𝑧(𝑡) = { ⋮
𝑥̃𝑛 (𝑡)

𝑥̃̇1 (𝑡) 0 1 0 𝑥̃1 (𝑡) 0


̇
[𝑥̃2 (𝑡)] = [ −𝐾𝑤 /𝑀 −𝐷𝑟 /𝑀 −𝐶𝑟 /𝑀]. [𝑥̃ (𝑡)]+[1/𝑀 ] . 𝑢
2
𝑥̃̇3 (𝑡) 0 𝐵𝑟 𝐴𝑟 𝑥̃3 (𝑡) 0

𝐴 𝐵

𝑥̃1 (𝑡)
𝑦 = [1 0 … 0]. [𝑥̃2 (𝑡)] + [0]. 𝑢
𝑧(𝑡)
𝐶 𝐷

𝑆𝑖𝑠𝑡𝑒𝑚𝑎 𝑚𝑢𝑙𝑡𝑖𝑣𝑎𝑟𝑖𝑎𝑏𝑙𝑒:
𝑢 = 𝐹𝑒 𝑦 = 𝑥̃1 = 𝑥(𝑡)
𝜂 𝑥̃̇ (𝑡) = 𝐴. 𝑥̃(𝑡) + 𝐵. 𝑢
𝐻𝑒 (𝑠)
𝑦 = 𝐶. 𝑥̃(𝑡) + 𝐷. 𝑢

Diagrama de bloques reducido de la obtención de la velocidad y el desplazamiento de la boya cuando la entrada al


sistema es un oleaje regular

Esta función de transferencia ha sido la implementada en el microprocesador para el cálculo del


desplazamiento y la velocidad de la boya. Para el cálculo de la fuerza de radiación se ha implementado
la función de transferencia resultante de su expresión en forma de espacio de estado. La fuerza de
flotación es fácilmente calculable a partir del desplazamiento de la boya.

Marta Núñez-Samper Muñoz 7


RESUMEN EJECUTIVO

Para dicha implementación, ha sido necesario la discretización previa de las funciones de transferencia
a utilizar.

𝐹𝑏𝑜𝑦𝑎 = ((𝑚 + 𝐴𝑤 (𝑤)). 𝑥̈


𝜂 𝐹𝑒 1 1 𝑥̇ 𝑥
. 1
𝐻𝑒 (𝑠) 𝑠 𝑚 + 𝐴𝑤 (𝑤) 𝑠

𝐹𝑟
𝑧̇ = 𝐴𝑟 . 𝑧 + 𝐵𝑟 . 𝑥̇
𝑓𝑟 = 𝐶𝑟 . 𝑧 + 𝐷𝑟 . 𝑥̇

𝐹𝑏
𝐾𝑤
Diagrama de bloques de la obtención de la velocidad y el desplazamiento de la boya cuando la entrada al
sistema es un oleaje irregular

El oleaje generado tiene una fuerza de excitación de la forma:

Altura de la ola del oleaje irregular en metros en cada instante de tiempo

Se ha trabajado con un tiempo de muestreo de 10.000 𝜇𝑠 por lo que en los 240 segundos hay presentes
24.000 muestras. Como la interfaz de trabajo está limitada a 2.400 muestras y se deseaba trabajar con
una dinámica del oleaje durante un tiempo suficiente que permitiese ver la evolución de las variables,
se selecciona la décima parte de las muestras (una muestra cada 1.000 𝜇𝑠) trabajando con 24 segundos
de muestras pero cuya evolución es la misma que la mostrada arriba.

8 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Los resultados calculados por el microprocesador se observan a través de una interfaz de usuario:

Imagen de la interfaz de usuario utilizada para observar las gráficas obtenidas a partir del
microprocesador

Los resultados obtenidos se verifican con los esperados, calculados anteriormente en el entorno de
Matlab:

Desplazamiento de la boya x ante oleaje irregular Velocidad de la boya x ante oleaje irregular

La evolución de cada una de las fuerzas presentes en el sistema se observa en:

Fuerzas presentes en el sistema


ante oleaje irregular

Marta Núñez-Samper Muñoz 9


RESUMEN EJECUTIVO

10 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

ÍNDICE
AGRADECIMIENTOS ...................................................................................................................... 3
RESUMEN EJECUTIVO ................................................................................................................... 5
CAPÍTULO 1. INTRODUCCIÓN ...................................................................................................... 13
1.1. DISPOSITIVOS DE EXTRACCIÓN DE ENERGÍA DEL OLEAJE (WEC) ...............................................13
1.2. ABSORBEDORES PUNTUALES.....................................................................................................18
1.3. OBJETIVOS Y JUSTIFICACIÓN .....................................................................................................21
CAPÍTULO 2. MODELO MATEMÁTICO DE UN ABSORBEDOR PUNTUAL DE UN SOLO CUERPO
OSCILANTE ................................................................................................................................. 23
2.1. PARA UN OLEAJE REGULAR .......................................................................................................23
2.1.1. EQUIVALENTE MECÁNICO ..................................................................................................30
2.1.2. EQUIVALENTE ELÉCTRICO ...................................................................................................30
2.1.3. EFECTO DEL PTO SOBRE EL SISTEMA ..................................................................................32
2.2. PARA UN OLEAJE IRREGULAR ....................................................................................................34
2.2.1. EFECTO DEL PTO SOBRE EL SISTEMA ..................................................................................36
CAPÍTULO 3. TEORÍA DE OLAS ..................................................................................................... 37
3.1. OLEAJE REGULAR .......................................................................................................................37
3.2. OLEAJE IRREGULAR ....................................................................................................................38
CAPÍTULO 4. MICROPROCESADOR .............................................................................................. 41
4.1. CARACTERÍSTICAS ......................................................................................................................43
4.2. CODE COMPOSER STUDIO .........................................................................................................46
4.2.1. CONEXIÓN Y CARGA DE LOS PROYECTOS ...........................................................................47
CAPÍTULO 5. DESCRIPCIÓN DEL SISTEMA ..................................................................................... 49
5.1. AJUSTE DE LOS PARÁMETROS DEL PTO .....................................................................................50
5.2. DATOS DE LA BOYA Y DEL SISTEMA ...........................................................................................51
CAPÍTULO 6. IMPLEMENTACIÓN EN EL MICROPROCESADOR ........................................................ 53
CAPÍTULO 7. RESULTADOS Y CONCLUSIONES ............................................................................... 57
7.1. OBTENCIÓN DE RAO ..................................................................................................................57
7.2. RESULTADOS ANTE OLEAJE REGULAR .......................................................................................62
7.3. RESULTADOS ANTE OLEAJE IRREGULAR ....................................................................................67
7.4. CONCLUSIONES .........................................................................................................................72
CAPÍTULO 8. LÍNEAS FUTURAS .................................................................................................... 73
CAPÍTULO 9. GESTIÓN DEL PROYECTO ......................................................................................... 75
9.1. PLANIFICACIÓN TEMPORAL .......................................................................................................75
9.1.1. ESTRUCTURA DE DESCOMPOSICIÓN DEL PROYECTO (EDP) ................................................75
9.1.2. DIAGRAMA DE GANNT DEL PROYECTO...............................................................................76

Marta Núñez-Samper Muñoz 11


ÍNDICE

9.2. PRESUPUESTO ...........................................................................................................................78


9.3. VALORACIÓN DEL IMPACTO ECONÓMICO, SOCIAL Y AMBIENTAL ............................................79
ÍNDICE DE FIGURAS .................................................................................................................... 81
ÍNDICE DE ECUACIONES .............................................................................................................. 83
REFERENCIAS ............................................................................................................................. 85
ANEXO 1. CÓDIGO MATLAB ........................................................................................................ 87
ANEXO 1.1. CÁLCULO Y REPRESENTACIÓN DE RAO ..........................................................................87
ANEXO 1.2. MUESTREO DE FRECUENCIA Y REPRESENTACIÓN DE RAO PARA LAS FRECUENCIAS
MUESTREADAS .................................................................................................................................87
ANEXO 1.3. CÁLCULO DE LA SALIDA DESPLAZAMIENTO DE LA BOYA A DOS FRECUENCIAS DISTINTAS
MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE REGULAR ANTE OLEAJE REGULAR .......88
ANEXO 1.4. CÁLCULO DE LA SALIDA DESPLAZAMIENTO DE LA BOYA A UNA FRECUENCIA
DETERMINADA MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE IRREGULAR ANTE OLEAJE
REGULAR ..........................................................................................................................................90
ANEXO 1.5. GENERACIÓN DEL OLEAJE IRREGULAR ..........................................................................95
ANEXO 1.6. CÁLCULOS MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE IRREGULAR ANTE
OLEAJE IRREGULAR.........................................................................................................................103
ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR ......................................................................109
ANEXO 2.1. CÁLCULO DE LA SALIDA DESPLAZAMIENTO DE LA BOYA A DOS FRECUENCIAS DISTINTAS
MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE REGULAR ANTE OLEAJE REGULAR .....109
ANEXO 2.2. CÁLCULO DE LA SALIDA DESPLAZAMIENTO DE LA BOYA A UNA FRECUENCIA
DETERMINADA MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE IRREGULAR ANTE OLEAJE
REGULAR ........................................................................................................................................111
ANEXO 2.3. CÁLCULOS MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE IRREGULAR ANTE
OLEAJE IRREGULAR.........................................................................................................................114

12 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

CAPÍTULO 1. INTRODUCCIÓN
1.1. DISPOSITIVOS DE EXTRACCIÓN DE ENERGÍA DEL OLEAJE (WEC)
El oleaje es considerado una fuente de energía totalmente sostenible. La energía undimotriz, energía
cinética de las partículas del mar fruto del movimiento de las olas, se puede captar y convertir en
energía eléctrica mediante dispositivos de extracción de energía del oleaje (WEC: Wave Energy
Converter). Existen numerosos dispositivos capaces de extraer la energía undimotriz del mar, basados
en distintas tecnologías.

El European Marine Energy Center [2] clasifica las diferentes tecnologías en nueve tipos según el
concepto que utilizan para la extracción de la energía:

• Atenuador (Attenuator)

Un atenuador es un dispositivo flotante que trabaja en paralelo a la dirección de propagación de las


olas. Al interactuar con las olas, se produce un desplazamiento angular relativo entre los dos brazos
del dispositivo [2].

Ejemplos comerciales: DexaWave, Pelamis y Perpetuwave (Xtracta) [3].

Figura 1 – Esquema gráfico de un Atenuador [4]

• Absorbedor puntual (Point Absorber)

Un absorbedor puntual es una estructura flotante que absorbe la energía del oleaje con cualquier
dirección de propagación. El dispositivo se sitúa sobre la superficie del agua y convierte el movimiento
de arfada (cabeceo de un cuerpo flotante sobre el mar) debido a la fuerza de flotación en energía
eléctrica [2].

El sistema de extracción PTO (power take off) puede tener distintas configuraciones dependiendo de
si utiliza un generador eléctrico lineal o una cámara OWC (Oscillating Water Column), en la cual la
cámara de aire hace de fluido intermedio entre el agua y la turbina de generación.

Ejemplos comerciales: Ocean Power Technologies, WaveBob y Seabased [3].

Marta Núñez-Samper Muñoz 13


CAPÍTULO 1. INTRODUCCIÓN

Figura 2 – Esquema gráfico de un Absorbedor Puntual [4]

• Convertidor de brazo oscilante sumergido (Oscillating Wave Surge Converter)

Estos dispositivos poseen un brazo que oscila como un péndulo y a la vez puede pivotar. Teóricamente
las partículas de agua en mar abierto se desplazan con una trayectoria circular. El movimiento circular
de estas partículas es aprovechada por el brazo del dispositivo para extraer la energía [2].

Ejemplos comerciales: Aquamarine (Oyster), AW Energy (WaveRoller) y Pico (Pico OWC) [3].

Figura 3 – Esquema gráfico de un convertidor de Brazo Oscilante Sumergido [4]

• Columna de agua oscilante

Se trata de una columna de agua parcialmente sumergida en el interior de una estructura hueca. Por
la parte inferior la estructura se encuentra abierta al mar y en la parte superior, sobre la columna de
agua, se encierra una columna de aire. El movimiento de las olas del mar produce el ascenso y descenso
de la columna de agua de forma continuada. El aire encerrado entre la estructura y la columna de agua

14 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
es obligado a circular a través de una turbina capaz de girar en ambos sentidos. Esta turbina es la
encargada de la generación de electricidad [2].

Ejemplos comerciales: Ocean Energy, Oceanlinx (greenWAVE) y Sea Energies (SEWEC) [3].

Figura 4 – Esquema gráfico de una Columna de Agua Oscilante [4]

• Terminador por rebosamiento (Overtopping/Terminator Device)

Este tipo de dispositivos recogen el agua cuando las olas rompen contra el depósito de
almacenamiento de agua. El agua es capturada y devuelta después al mar a través de una turbina
convencional [2].

Ejemplos comerciales: WaveDragon, WaveEnergy y Brimes Energy (Jellyfish) [3].

Figura 5 – Esquema gráfico de una Columna de un Terminador por Rebosamiento [4]

• Convertidor sumergido de presión diferencial (Submerged Pressure Differential)

Estos dispositivos se fijan al fondo del mar y se colocan habitualmente cerca de la costa debido a la
limitación en la profundidad máxima a la que pueden ser instalados. El movimiento del oleaje hace
ascender y descender el nivel del agua encima del dispositivo, lo que induce una diferencia de
presiones sobre el dispositivo. Esta diferencia de presiones es aprovechada por el sistema para generar
electricidad [2].

Ejemplos comerciales: Archimedes Wave Swing, Calware (WaveCarpet) [3].

Marta Núñez-Samper Muñoz 15


CAPÍTULO 1. INTRODUCCIÓN

Figura 6 – Esquema gráfico de un Convertidor Sumergido de Presión Diferencial [4]

• Convertidor Bulge Wave

Esta tecnología consiste en un tubo de goma relleno de agua orientado paralelamente a la dirección
de propagación del oleaje. El dispositivo está anclado al fondo marino de forma que la presión
originada por el oleaje empuja el agua a través del tubo obligándola a pasar a través de una turbina
situada al final del tubo [2].

Ejemplos comerciales: Checkmate Seaenergy UK (Anaconda), Surfpower y Vigor Wave Energy AB [3].

Figura 7 – Esquema gráfico de un Convertidor Bulge Wave [4]

• Convertidor de masa rotativa (Rotating Mass)

Mediante esta tecnología se aprovecha la energía procedente tanto del movimiento de balanceo del
dispositivo como del movimiento de arfada del mismo. Se suele emplear una masa excéntrica o
giroscópica como cuerpo rotativo unido al generador eléctrico [2].

Ejemplos comerciales: Ecole Centrale de Nantes (SEAREV), Wello OY (Penguin) y Waves for Energy
(ISWEC) [3].

16 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Figura 8 – Esquema gráfico de un Convertidor de Masa Rotativa [4]

Además de los nueve tipos comentados arriba, existen muchos otros que no se incluyen en la
clasificación por su concepto y diseño totalmente diferentes a los utilizados en la tecnología más
establecida a día de hoy.

Marta Núñez-Samper Muñoz 17


CAPÍTULO 1. INTRODUCCIÓN

1.2. ABSORBEDORES PUNTUALES


Los absorbedores puntuales presentan ciertas ventajas frente al resto de tecnologías de absorción de
energía undimotriz en cuanto a energía generada y eficiencia. Se caracterizan por ser dispositivos que
se sitúan en zonas alejadas de la costa en los que un cuerpo móvil recibe la acción del oleaje.

Entre las ventajas que estos dispositivos suponen frente a otras tecnologías se encuentran:

• Dispositivo alejado de la costa: permite disponer de oleajes de mayor energía al poder colocar
estos dispositivos en alta mar. Debido a esto se puede obtener mayor energía al ser el oleaje
más energético. Sin embargo, la ubicación en zonas alejadas de la costa también conlleva
mayores costes de instalación y mantenimiento debido a la necesidad de emplear amarres al
fondo del mar más resistentes.
• El cuerpo móvil recibe la acción del oleaje: al ser un solo cuerpo el que percibe el movimiento
del oleaje, es necesario menor cantidad de material reduciendo los costes de diseño y
fabricación. J. Falnes concluye en dos artículos [5] y [6] que el tamaño del dispositivo no debe
ser demasiado grande si lo que se busca es maximizar la potencia extraída con respecto al
coste del dispositivo. Según un criterio de densidad de energía, el tamaño del absorbedor
puntual no debería ser superior al 5-10% de la longitud equivalente de las olas incidentes.

Debido a la tendencia de las compañías a emplear esta tecnología, junto con la OWC, parece que este
dispositivo es el que está liderando el desarrollo de los WEC.

Los absorbedores puntuales están constituidos por un cuerpo flotante, basado en las boyas marinas
para asegurar su resistencia ante condiciones meteorológicas extremas, un PTO para extraer la energía
y un cuerpo de reacción sumergido. El cuerpo de reacción puede tener inercia infinitiva (fondo marino)
o finita (masa adicional, resistencia hidrodinámica, fuerza de excitación). De esta manera, la
interacción entre el cuerpo flotante y la ola da lugar al movimiento vertical del cuerpo flotante. Ante
este movimiento, el PTO se mueve a su vez verticalmente y ejerce una fuerza de reacción contra el
cuerpo de reacción para extraer la energía proveniente de la ola.

La extracción de energía se puede entender mejor viendo las olas como ondas. Para extraer energía
de ellas, será necesario generar olas que interfieran de manera destructiva con las originales. Es decir,
un absorbedor puntual se basa en la extracción de energía mediante la generación de olas en el agua
como consecuencia de su propio movimiento vertical.

En función de si el cuerpo de reacción tiene inercia infinita o finita recibe el nombre de WEC de un
cuerpo oscilante o WEC de dos cuerpos oscilantes.

La primera opción presenta la desventaja de estar limitado a emplazamientos de no mucha


profundidad por cuestiones técnicas. Sin embargo, la opción de colocar un cuerpo de inercia finita trae
consigo la necesidad de grandes masas / resistencias hidrodinámicas / fuerzas de excitación para
obtener un nivel de potencia relativamente bueno. En este trabajo se ha empleado la primera opción,
suponiendo la boya anclada al fondo marino.

Algunos ejemplos reales de prototipos desarrollados de absorbedores puntuales son [3]:

• FO3 (Fred Olsen y ABB)

Es una tecnología desarrollada para ser instalada en plataformas petrolíferas. Los absorbedores
puntuales van unidos a la plataforma semi-sumergida. De esta manera, la plataforma actúa como
cuerpo de reacción. Cada absorbedor puntual se compone por un cilindro que al moverse arriba y
abajo por las olas absorben la energía de la ola. Este modelo está previsto que genere hasta 2,52 MW,

18 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
equivalente a lo que proporciona una turbina eólica, que sería suficiente para abastecer 600 hogares
[7].

Figura 9 – Esquema gráfico de una columna del FO3 [7]

• Seabased

El sistema está constituido por un cuerpo flotante anclado al fondo marino mediante un PTO. El PTO
reacciona contra el cable de anclaje y contra el fondo marino para extraer la energía de la ola [8].

Figura 10 – Esquema gráfico de una columna del SeaBased [8]

• CETO (Carnegie)

El sistema es igual que el de Seabased con la única diferencia de que en el CETO el cuerpo flotante está
completamente sumergido. Esto aporta seguridad en caso de grandes tormentas y elimina la
contaminación visual del paisaje. Otra diferencia del CETO es que el sistema de extracción de energía
se encuentra en el interior del cuerpo flotante en vez de estar por separado [9].

Marta Núñez-Samper Muñoz 19


CAPÍTULO 1. INTRODUCCIÓN

Figura 11 – Esquema gráfico de una columna del CETO [9]

Un ejemplo de tecnología desarrollada en España es:

• APC-PISYS (PIPO Systems)

Usa el mismo concepto que los dos modelos comentados anteriormente. Sin embargo, este modelo
destaca por ser un captador múltiple con convertidores complementados de energía. La diferencia
entre los convertidores simples y los múltiples radica en que los simples captan las formas de energía
potencial y cinética por separado mientras que los múltiples lo hacen de forma simultánea logrando
una conversión complementada. Aunque este modelo de convertidores múltiples cuesta alrededor de
un 50% más que el modelo de convertidores simples, sería capaz de producir hasta un 170% más de
potencia llegando al orden del MW como unidad de potencia generada [10].

Figura 12 – Esquema gráfico del APC-PISYS [10]

20 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

1.3. OBJETIVOS Y JUSTIFICACIÓN


El objetivo de este trabajo es programar un motor DC para que su movimiento angular emule el
movimiento lineal equivalente que ejercería un absorbedor puntual al estar sobre la superficie del mar
y amarrado al fondo marino. Este motor DC hará mover a su vez un generador para generar energía
eléctrica.

De esta manera, se podrá simular en el laboratorio la generación de energía eléctrica a partir de un


absorbedor puntual. Éste consiste en un cuerpo flotante (boya) unido a un PTO (transforma un
movimiento lineal en electricidad) anclado al fondo marino.

A continuación se enumeran los objetivos del trabajo:

1. Estudiar la dinámica de un cuerpo flotante libremente, el efecto del PTO sobre su dinámica y
las diferencias en la dinámica si se trabaja con un oleaje regular o irregular.
2. Generar un oleaje irregular de trabajo con unas condiciones determinadas.
3. Programar en un microprocesador la dinámica del cuerpo flotante ante una entrada de oleaje
irregular para que calcule la fuerza que ejercería la boya.

Para el desarrollo de este trabajo se han tenido que adquirir conocimientos tanto de programación de
microprocesadores como de la dinámica vertical de un cuerpo flotante genérico que se encuentre
flotando en el mar. Así mismo, ha sido necesario también entender la manera matemática de generar
un oleaje a partir de su espectro de energía y conocer su dependencia de los distintos parámetros.

Este proyecto se justifica por la necesidad de simular en laboratorio procesos tan complejos como son
los procesos de obtención de energía que ocurren bajo el mar. La posibilidad de estudiar estos
procesos en una bancada de laboratorio simplifica y facilita su estudio, y reduce su complejidad a la
hora de realizar ensayos eliminando las complicaciones técnicas debidas al trabajo bajo el agua.

Marta Núñez-Samper Muñoz 21


CAPÍTULO 1. INTRODUCCIÓN

22 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

CAPÍTULO 2. MODELO MATEMÁTICO DE UN ABSORBEDOR PUNTUAL


DE UN SOLO CUERPO OSCILANTE
El absorbedor puntual escogido para el desarrollo del trabajo es de un solo cuerpo oscilante y un
cuerpo de reacción de inercia infinita (fondo marino). El esquema del sistema sería un cuerpo flotante
(boya) anclado rígidamente al fondo marino. El PTO se sitúa entre el fondo marino y el cuerpo flotante,
reaccionando contra dicho cuerpo flotante y contra el fondo. De esta forma, el movimiento del cuerpo
flotante al interaccionar con la ola es aprovechado por el PTO para extraer energía.

BOYA
Una de las ventajas a la hora de escoger un absorbedor puntual es el
ሬ𝑭Ԧ𝑶𝑳𝑨
hecho de que suelen ser axilsimétricos. Esta propiedad permite su
ሬ𝑭Ԧ𝑶𝑳𝑨 modelización aproximada evitando el uso de programas de elementos
finitos [11] [12].

ሬ𝑭Ԧ𝑷𝑻𝑶
A continuación se expondrá el modelo primeramente para el caso en el
PTO que el oleaje es regular (función senoidal de frecuencia constante) y
ሬ𝑭Ԧ𝑷𝑻𝑶 posteriormente se incluirán en el modelo las variaciones propias para
tratar oleajes irregulares.
ሬ𝑭Ԧ𝑭𝑶𝑵𝑫𝑶

Figura 13 – Esquema de fuerzas


sobre un Absorbedor Puntual

2.1. PARA UN OLEAJE REGULAR


Un oleaje regular se puede definir como aquel oleaje en el que la altura de la ola viene definida por
una función senoidal de frecuencia constante en el tiempo.

El modelado de la interacción entre el oleaje y la boya se basa en la ecuación de Cummins [1], que
describe el comportamiento dinámico de un cuerpo flotante sobre la superficie del agua. Esta ecuación
parte de la segunda ley de Newton ∑ 𝑓 (𝑡) = 𝑚. 𝑥̈ (𝑡) aplicada al movimiento vertical de la boya. El
análisis se puede llevar a cabo en el dominio del tiempo [13] y en el dominio de la frecuencia [14]. La
ventaja de trabajar con un oleaje regular es que se encuentra en régimen permanente (frecuencia
constante) lo que permite que sea trabajado en el dominio de la frecuencia disminuyendo la
complejidad y el tiempo en el cálculo.

Las fuerzas que actúan sobre la boya son [13]:

∑ 𝑓 (𝑡) = 𝑚. 𝑥̈ (𝑡) = 𝑓𝑒𝑥𝑡 (𝑡) + 𝑓𝑟 (𝑡) + 𝑓𝑑 (𝑡) + 𝑓𝑏 (𝑡) + 𝑓𝑣 (𝑡) (I)

𝑓𝑒𝑥𝑡 (𝑡) 𝑓ℎ𝑦𝑑 (𝑡)

Nota: las fuerzas de pérdidas se han despreciado en este análisis.

Marta Núñez-Samper Muñoz 23


CAPÍTULO 2. MODELO MATEMÁTICO DE UN ABSORBEDOR PUNTUAL

Fuerzas exteriores:
𝑓𝑒𝑥𝑡 (𝑡): fuerza de Froude-Krylov

Fuerzas hidrodinámicas e hidrostáticas:

𝑓𝑟 (𝑡): fuerza de radiación / amortiguamiento / inercial

Fuerza debida a la radiación de olas por parte de la boya

𝑓𝑑 (𝑡): fuerza de difracción / dispersión

Fuerza de fricción entre la boya y las olas en contacto

𝑓𝑏 (𝑡): fuerza hidrostática / de flotabilidad

Fuerza debida al empuje del fluido del mar sobre el cuerpo flotante

𝑓𝑣 (𝑡): fuerza de viscosidad

A continuación se desarrolla cada fuerza describiendo su significado físico y su expresión tanto en el


dominio del tiempo como en el de la frecuencia [13] [14]:

❖ Fuerza de excitación: está compuesta por la fuerza de Froude-Krylov de las olas y la fuerza de
radiación inercial. Ambas fuerzas se pueden agrupan en un solo término 𝑓𝑒 (𝑡).

𝐹𝑢𝑒𝑟𝑧𝑎 𝑑𝑒 𝑒𝑥𝑐𝑖𝑡𝑎𝑐𝑖ó𝑛: 𝑓𝑒 (𝑡) = 𝑓𝑒𝑥𝑡 (𝑡) + 𝑓𝑑 (𝑡) (II)

La fuerza de Froude-Krylov es la fuerza que ejercen las olas si la boya estuviese en reposo. Por ello esta
fuerza tiene en cuenta la variación de la fuerza de Arquímedes sobre la boya como causa del cambio
de la altura del agua debido a la ola pero no considera la variación de esta fuerza debida al
desplazamiento de su punto de equilibrio.

La fuerza de difracción es la fuerza que ejerce la boya al dispersar las olas que inciden contra ella.

La fuerza de excitación aplicada sobre un cuerpo rígido provoca que éste oscile, por ello la fuerza total
del oleaje depende de la altura 𝜂 de la ola incidente y se representa como una función lineal de dicha
altura. Sin embargo, la relación entre la altura de la ola y la fuerza debida al oleaje es no causal. La no
causalidad quiere decir que para conocer la fuerza debida al oleaje en el instante actual será necesario
conocer la altura de la ola en un instante futuro [15].

Para el cálculo de la fuerza de excitación se realiza la convolución de los coeficientes de fuerza de


excitación con la altura de la ola:

▪ Dominio del tiempo (t):


+∞
𝑓𝑒 (𝑡) = 𝑓𝑒𝑥𝑡 (𝑡) + 𝑓𝑑 (𝑡) = ∫ ℎ𝑒 (𝜏). 𝜂(𝑡 − 𝜏). 𝑑𝜏 (III)
−∞

− ℎ𝑒 representa la respuesta al impulso de la fuerza de excitación. Esta respuesta al


impulso en un instante 𝑡 = 0 tiene valores en tiempos menores que cero, es decir, la fuerza total del

24 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

oleaje vendrá dada por una función no causal. Por ello, la respuesta de la boya ante la incidencia de
una ola es no causal lo que significa que la elevación de la ola no es la causante directa de la fuerza de
excitación sobre la boya sino que la causante real podría ser una tormenta lejana [15].
− 𝜂 es la altura de la ola en un instante dado, también se puede ver como la elevación
de la superficie libre del agua respecto de su punto de equilibrio a causa de la ola.

▪ Dominio de la frecuencia (w):

𝐹𝑒 (𝑗𝑤) = 𝐹𝑒𝑥𝑡 (𝑗𝑤) + 𝐹𝑑 (𝑗𝑤) = 𝜂. 𝐻𝑒 (𝑤) (IV)

− 𝐻𝑒 (𝑤) es el coeficiente de fuerza de excitación en el dominio de la frecuencia, distinto


para cada frecuencia. Está constituido por un módulo y una fase |𝐻𝑒 (𝑤)| ⌊𝐻𝑒 (𝑤) aunque para este
proyecto se trabajará únicamente con su módulo debido a la poca influencia de la fase sobre los
resultados. En el S.I. tiene unidades de 𝑁/𝑚. Para los datos de la boya trabajada, su representación
es:

Figura 14 – Módulo del coeficiente de fuerza de excitación frente a la frecuencia

Figura 15 – Fase del coeficiente de fuerza de excitación frente a la frecuencia

Marta Núñez-Samper Muñoz 25


CAPÍTULO 2. MODELO MATEMÁTICO DE UN ABSORBEDOR PUNTUAL

❖ Fuerza de radiación: 𝑓𝑟 (𝑡)


Se trata de la fuerza que el sistema oscilante (la boya en movimiento vertical) produce sobre el fluido
a causa del movimiento de la boya sobre el agua en calma. Este movimiento origina una nueva ola que
interfiere con la ola inicial. Esta fuerza depende de la geometría de la boya y de su velocidad de
desplazamiento.

La fuerza de radiación se representa por medio de la convolución de los coeficientes de radiación ℎ𝑟 y


la velocidad del sistema oscilante (la boya) 𝑥̇ .

▪ Dominio del tiempo (t):


𝑡
𝑓𝑟 (𝑡) = − ∫ ℎ𝑟 (𝜏). 𝑥̇ (𝑡 − 𝜏). 𝑑𝜏 − 𝑚∞ . 𝑥̈ (𝑡) (V)
0

− 𝑚∞ es la masa añadida. Aunque en realidad es un parámetro dependiente de la


frecuencia, se suele aproxima al valor correspondiente cuando 𝑤 → ∞ [15]. El conjunto 𝑚∞ . 𝑥̈ (𝑡)
representa la energía cinética acumulada en la masa de agua circundante a la boya. La masa añadida
representa la masa del fluido alrededor de la boya que hace que la masa total sea algo mayor, de forma
que la masa total resultante del cuerpo no sería solo la masa de la boya sino 𝑀 = 𝑚 + 𝑚∞ donde 𝑚
representa la masa de la boya.
− ℎ𝑟 representa la respuesta al impulso de la fuerza de radiación.

▪ Dominio de la frecuencia (w):

𝐹𝑟 (𝑗𝑤) = −𝑗. 𝑤. 𝐵𝑤 (𝑤). 𝑋(𝑗𝑤) + 𝑤 2 . 𝐴𝑤 (𝑤). 𝑋(𝑗𝑤) (VI)

− 𝐴𝑤 (𝑤) es la masa añadida y tiene unidades de masa, en el S.I. 𝑘𝑔. Para los datos de la
boya trabajada, su representación es:

Figura 16 –Masa añadida frente a la frecuencia

− 𝐵𝑤 (𝑤) es el coeficiente de amortiguamiento hidrodinámico de la boya. También


depende solo de la geometría del cuerpo y es distinto para cada frecuencia. Tiene unidades en el S.I.
de 𝐾𝑁 ⁄(𝑚⁄𝑠). Para los datos de la boya trabajada, su representación es:

26 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Figura 17 – Coeficiente de amortiguamiento hidrodinámico frente a la frecuencia

❖ Fuerza hidrostática/de flotabilidad: 𝑓𝑏 (𝑡)

Según el Principio de Arquímedes el fluido del mar ejerce sobre la boya una fuerza igual al peso del
fluido desplazado por el volumen de la boya sumergida bajo la superficie libre del agua.

▪ Dominio del tiempo (t):


𝑡
𝑓𝑏 (𝑡) = −𝜌. 𝑔. 𝑆𝑤 . ∫ 𝑥̇ (𝜏). 𝑑𝜏 = −𝐾𝑤 . 𝑥(𝑡) (VII)
0

− 𝜌 es la densidad del fluido (en este caso la densidad del agua del mar).
− 𝑔 es la aceleración de la gravedad.
− 𝑆𝑤 es la sección transversal de la boya.
− 𝐾𝑤 es el coeficiente de rigidez hidrostática de la boya y su valor es independiente de la
frecuencia. Su valor es: 𝐾𝑤 = 𝜌. 𝑔. 𝑆𝑤 y sus unidades en el S.I. son 𝑘𝑔/𝑠2 .

▪ Dominio de la frecuencia (w):

𝐹𝑏 (𝑗𝑤) = −𝐾𝑤 . 𝑋(𝑗𝑤) (VIII)

❖ Fuerza de viscosidad: 𝑓𝑣 (𝑡)

El efecto de la viscosidad sobre el modelo puede no tenerse en cuenta debido a que la boya va a
trabajar a valores bajos de la velocidad.

Marta Núñez-Samper Muñoz 27


CAPÍTULO 2. MODELO MATEMÁTICO DE UN ABSORBEDOR PUNTUAL

Se suman todos los términos que conforman las fuerzas:

▪ Dominio del tiempo (t):


+∞ 𝑡
𝑚. 𝑥̈ (𝑡)= ∫−∞ ℎ𝑒 (𝜏). 𝜂(𝑡 − 𝜏). 𝑑𝜏 − ∫0 ℎ𝑟 (𝜏). 𝑥̇ (𝑡 − 𝜏). 𝑑𝜏 − 𝑚∞ . 𝑥̈ (𝑡) − 𝐾𝑤 . 𝑥(𝑡) (IX)

▪ Dominio de la frecuencia (w):


−𝑚. 𝑤 2 = 𝜂. 𝐻𝑒 (𝑤) − 𝑗. 𝑤. 𝐵𝑤 (𝑤). 𝑋(𝑗𝑤) + 𝑤 2 . 𝐴𝑤 (𝑤). 𝑋(𝑗𝑤) − 𝐾𝑤 (𝑤). 𝑋(𝑗𝑤) (X)

Reordenando las expresiones se llega a:

▪ Dominio del tiempo (t):


+∞ 𝑡
𝑓𝑒 (𝑡) = ∫−∞ ℎ𝑒 (𝜏). 𝜂(𝑡 − 𝜏). 𝑑𝜏 = 𝑀. 𝑥̈ (𝑡) + ∫0 ℎ𝑟 (𝜏 − 𝜏). 𝑥̇ (𝑡 − 𝜏). 𝑑𝜏 + 𝐾𝑤 . 𝑥(𝑡)
(XI)
[1]

▪ Dominio de la frecuencia (w):

𝐹𝑒 (𝑗𝑤) = 𝐻𝑒 (𝑤). 𝜂 = −𝑤 2 . (𝑚 + 𝐴𝑤 (𝑤)). 𝑋(𝑗𝑤) + 𝑗. 𝑤. 𝐵𝑤 (𝑤). 𝑋(𝑗𝑤) + 𝐾𝑤 . 𝑋(𝑗𝑤) (XII)

La ventaja de trabajar con el modelo en el dominio de la frecuencia es la eliminación de los productos


de convolución de las fuerzas de excitación y radiación, lo cual simplifica en gran medida los cálculos.

A partir de la ecuación dinámica de la boya flotando sobre el mar en el dominio de la frecuencia se


puede obtener fácilmente la función de transferencia en forma de Laplace que relaciona la altura de
la ola en cada instante con el desplazamiento de la boya [14]:

𝐹𝑒 (𝑗𝑤) = 𝐻𝑒 (𝑤). 𝜂 = −𝑤 2 . (𝑚 + 𝐴𝑤 (𝑤)). 𝑋(𝑗𝑤) + 𝑗. 𝑤. 𝐵𝑤 (𝑤). 𝑋(𝑗𝑤) + 𝐾𝑤 . 𝑋(𝑗𝑤) (XIII)

𝑋(𝑗𝑤) 𝐻𝑒 (𝑤)
= (XIV)
𝜂 −𝑤 2 . (𝑚 + 𝐴𝑤 (𝑤)) + 𝑗. 𝑤. (𝐵𝑤 (𝑤) + 𝐾𝑤

𝑆𝑎𝑙𝑖𝑑𝑎 𝑋(𝑠) 𝐻𝑒 (𝑤)


𝐺(𝑠) = = = 2 (XV)
𝐸𝑛𝑡𝑟𝑎𝑑𝑎 𝜂 𝑠 . (𝑚 + 𝐴𝑤 (𝑤)) + 𝑠. 𝐵𝑤 (𝑤) + 𝐾𝑤

28 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Dicha función de transferencia puede también representarse mediante el siguiente diagrama de


bloques:
𝐹𝑏𝑜𝑦𝑎 = ((𝑚 + 𝐴𝑤 (𝑤)). 𝑥̈
𝜂 𝐹𝑒 1 1 𝑥̇ 𝑥
. 1
𝐻𝑒 (𝑠) 𝑠 𝑚 + 𝐴𝑤 (𝑤) 𝑠

𝐹𝑟
𝐵𝑤 (𝑤)

𝐹𝑏
𝐾𝑤
Figura 18 - Diagrama de bloques de la obtención de la velocidad y el desplazamiento de la boya cuando la
entrada al sistema es un oleaje regular

La respuesta de dicha función de transferencia ante una entrada senoidal de amplitud la unidad para
distintos valores de frecuencia es la conocida respuesta RAO (response amplitude operator) [14],
calculada en ANEXO 1.1. CÁLCULO Y REPRESENTACIÓN DE RAO, cuya forma para la boya en particular
estudiada es:

Figura 19 – Gráfica de la respuesta en frecuencia del desplazamiento de la boya x (RAO: response


amplitude operator)

Es decir, para cada frecuencia, los valores de 𝐴𝑤 , 𝐵𝑤 y 𝐻𝑒 son distintos por lo que para cada frecuencia
diferente se tiene una función de transferencia diferente.

Marta Núñez-Samper Muñoz 29


CAPÍTULO 2. MODELO MATEMÁTICO DE UN ABSORBEDOR PUNTUAL

2.1.1. EQUIVALENTE MECÁNICO


Atendiendo a la expresión en el dominio de la frecuencia se observa que el sistema es de segundo
orden y semejante a un sistema masa muelle con amortiguamiento en el cual existiera una fuerza
exterior 𝐹𝑒 . La constante de recuperación del muelle vendría representada por 𝐾𝑤 (constante de
proporcionalidad entre el desplazamiento y la fuerza) y el amortiguamiento del sistema vendría dado
por el coeficiente de amortiguamiento 𝐵𝑤 (constante de proporcionalidad entre la velocidad y la
fuerza).

𝒙
𝑲𝒘 𝑲𝒘 . 𝑿

𝑭𝒆
𝑩 𝑀 = 𝑚 + 𝐴𝑤 (𝑤)

(𝒎 + 𝑨𝒘 (𝒘)). 𝑿̈
𝑩𝒘 . 𝑿̇
Figura 20 – Esquema mecánico de la dinámica del cuerpo flotante

2.1.2. EQUIVALENTE ELÉCTRICO


Se puede asemejar también a un circuito eléctrico de primer orden [16]. Tomando la fuerza 𝐹𝑒 como
tensión y la velocidad 𝑋̇ como intensidad quedaría la ecuación de la malla:
𝐾𝑤
𝐹𝑒 (𝑗𝑤) = 𝑗. 𝑤. (𝑚 + 𝐴𝑤 (𝑤)). 𝑋̇(𝑗𝑤) + 𝐵𝑤 (𝑤). 𝑋̇ (𝑗𝑤) + . 𝑋̇(𝑗𝑤) (XVI)
𝑗. 𝑤

Siendo la impedancia del circuito:


𝐾𝑤
𝑍 = 𝑗. 𝑤. (𝑚 + 𝐴𝑤 (𝑤)) + 𝐵𝑤 (𝑤) − 𝑗. (XVII)
𝑤

1ൗ
𝑿̇(𝒋𝒘) 𝑚 + 𝐴𝑤 (𝑤) 𝐵𝑤 (𝑤) 𝐾𝑤

𝑭𝒆

Figura 21 – Circuito eléctrico equivalente de la dinámica del cuerpo flotante

30 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

La siguiente tabla muestra la equivalencia entre las magnitudes del equivalente mecánico y el
equivalente eléctrico:

MODELO MECÁNICO MODELO ELÉCTRICO


MAGNITUD
Fuerza Tensión
Velocidad Corriente
Desplazamiento Tensión en el condensador
Aceleración Tensión en la bobina
IMPEDANCIA
Masa Inductancia de la bobina
Coeficiente de amortiguamiento Resistencia
Constante de recuperación Inversa de la capacidad

Figura 22 – Tabla de equivalencia entre las magnitudes del equivalente mecánico y el equivalente eléctrico

Marta Núñez-Samper Muñoz 31


CAPÍTULO 2. MODELO MATEMÁTICO DE UN ABSORBEDOR PUNTUAL

2.1.3. EFECTO DEL PTO SOBRE EL SISTEMA


Un PTO lineal induce una fuerza de reacción ante el movimiento vertical de la boya. Esta fuerza se
aplica tanto sobre el fondo marino como sobre la boya. La fuerza del PTO inducida sobre la boya es
una fuerza con forma lineal proporcional al desplazamiento y la velocidad de la boya aunque se puede
simplificar de manera que solo sea proporcional a la velocidad. Tiene la forma:

▪ Dominio del tiempo (t):

𝑓𝑃𝑇𝑂 (𝑡) = 𝐵𝑃𝑇𝑂 . 𝑥̇ (𝑡) + 𝐾𝑃𝑇𝑂 . 𝑥(𝑡) (XVIII)

▪ Dominio de la frecuencia (w):

𝐹𝑃𝑇𝑂 (𝑗𝑤) = 𝑗. 𝑤. 𝐵𝑃𝑇𝑂 (𝑤). 𝑋(𝑗𝑤). +𝐾𝑃𝑇𝑂 (𝑤). 𝑋(𝑗𝑤) (XIX)

El efecto de esta fuerza equivale al efecto combinado que tienen un muelle y un amortiguador sobre
un sistema dinámico o al de una resistencia y un condensador en un circuito eléctrico.

De esta manera, el efecto de la fuerza sobre el sistema será aumentar estos efectos del muelle y el
amortiguador o la resistencia y el condensador.

Las nuevas expresiones de la ecuación dinámica de la boya tras incluir la fuerza que introduce el PTO
son:

▪ Dominio del tiempo (t):


+∞ 𝑡
𝑓𝑒 (𝑡) = ∫−∞ ℎ𝑒 (𝜏). 𝜂(𝑡 − 𝜏). 𝑑𝜏 = 𝑀. 𝑥̈ (𝑡) + ∫0 ℎ𝑟 (𝜏 − 𝜏). 𝑥̇ (𝑡 − 𝜏). 𝑑𝜏 +
(XX)
𝑩𝑷𝑻𝑶 . 𝑥̇ (𝑡) + (𝐾𝑤 + 𝑲𝑷𝑻𝑶 ). 𝑥(𝑡)

▪ Dominio de la frecuencia (w):

𝐹𝑒 (𝑗𝑤) = 𝐻𝑒 (𝑤). 𝜂 = −𝑤 2 . (𝑚 + 𝐴𝑤 (𝑤)). 𝑋(𝑗𝑤) + 𝑗. 𝑤. (𝐵𝑤 (𝑤) + 𝑩𝑷𝑻𝑶 (𝒘)). 𝑋(𝑗𝑤) +

+(𝐾𝑤 + 𝑲𝑷𝑻𝑶 (𝒘)). 𝑋(𝑗𝑤) (XXI)

32 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

𝐹𝑏𝑜𝑦𝑎 = ((𝑚 + 𝐴𝑤 (𝑤)). 𝑥̈


𝜂 𝐹𝑒 1 1 𝑥̇ 𝑥
. 1
𝐻𝑒 (𝑠) 𝑠 𝑚 + 𝐴𝑤 (𝑤) 𝑠

𝐹𝑟
𝐵𝑤 (𝑤)+𝑩𝑷𝑻𝑶 (𝒘)

𝐹𝑏
𝐾𝑤 + 𝑲𝑷𝑻𝑶 (𝒘)

Figura 23 – Diagrama de bloques de la obtención de la velocidad y el desplazamiento de la boya cuando la


entrada al sistema es la altura de la ola en presencia de un PTO

Marta Núñez-Samper Muñoz 33


CAPÍTULO 2. MODELO MATEMÁTICO DE UN ABSORBEDOR PUNTUAL

2.2. PARA UN OLEAJE IRREGULAR


Para este tipo de oleajes, la fuerza de radiación 𝐹𝑟 no depende solo de la velocidad de la boya 𝑥̇ sino
que su cálculo es algo más complicado. En el dominio del tiempo su expresión sigue siendo (V):
𝑡
𝑓𝑟 (𝑡) = − ∫ ℎ𝑟 (𝜏). 𝑥̇ (𝑡 − 𝜏). 𝑑𝜏 − 𝑚∞ . 𝑥̈ (𝑡) (V)
0

Sin embargo, en el dominio de la frecuencia no se puede expresar como (VI):

𝐹𝑟 (𝑗𝑤) = −𝑗. 𝑤. 𝐵𝑤 (𝑤). 𝑋(𝑗𝑤) + 𝑤 2 . 𝐴𝑤 (𝑤). 𝑋(𝑗𝑤) (VI)

Esto es debido a que un oleaje irregular no presenta una frecuencia constante sino que está compuesto
por una combinación de armónicos. De esta manera, el sistema no tendrá unos coeficientes 𝐴𝑤 y 𝐵𝑤
específicos asociados.

Frente a la expresión de la fuerza de radiación 𝐹𝑟 en el dominio del tiempo se propone su expresión


mediante un espacio de estado [17]. De esta manera, se elimina el producto de convolución que
requiere mayores recursos computacionales.

La fuerza de radiación 𝐹𝑟 mediante espacios de estado se expresa como [17]:


𝑧̇ = 𝐴𝑟 . 𝑧 + 𝐵𝑟 . 𝑥̇
{ (XXII)
𝑓𝑟 = 𝐶𝑟 . 𝑧 + 𝐷𝑟 . 𝑥̇

De esta forma la nueva expresión que define la dinámica de la boya ante un oleaje irregular queda:
𝑡
𝑓𝑒 (𝑡) = 𝑀. 𝑥̈ (𝑡) + ∫ ℎ𝑟 (𝜏 − 𝜏). 𝑥̇ (𝑡 − 𝜏). 𝑑𝜏 + 𝐾. 𝑥(𝑡) = 𝑀. 𝑥̈ (𝑡) + 𝑓𝑟 (𝑡) + 𝐾𝑤 . 𝑥(𝑡) (XXIII)
0

𝑓𝑟 (𝑡)

34 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

El diagrama de bloques del sistema sería:

𝐹𝑏𝑜𝑦𝑎 = ((𝑚 + 𝐴𝑤 (𝑤)). 𝑥̈


𝜂 𝐹𝑒 1 1 𝑥̇ 𝑥
. 1
𝐻𝑒 (𝑠) 𝑠 𝑚 + 𝐴𝑤 (𝑤) 𝑠

𝐹𝑟
𝑧̇ = 𝐴𝑟 . 𝑧 + 𝐵𝑟 . 𝑥̇
𝑓𝑟 = 𝐶𝑟 . 𝑧 + 𝐷𝑟 . 𝑥̇

𝐹𝑏
𝐾𝑤

Figura 24 - Diagrama de bloques de la obtención de la velocidad y el desplazamiento de la boya cuando la


entrada al sistema es un oleaje irregular

Mediante la definición de unas nuevas variables de estado se consigue un nuevo espacio de estado en
el que la entrada se corresponde con la fuerza de excitación de la ola 𝑓𝑒 y la salida con el
desplazamiento de la boya 𝑥. Las nuevas variables de estado 𝑥̃ propuestas son [17]:

𝑥̃1 (𝑡)
𝑥̃2 (𝑡) 𝑥̃3 (𝑡)
𝑥̃(𝑡) = 𝑥̃3 (𝑡) donde 𝑥̃1 (𝑡) = 𝑥(𝑡) 𝑥̃2 (𝑡) = 𝑥̇ (𝑡) 𝑧(𝑡) = { ⋮
⋮ 𝑥̃𝑛 (𝑡)
[𝑥̃𝑛 (𝑡)]

𝑥̌̇1 (𝑡)
𝑥̃̇ (𝑡) = [𝑥̌̇2 (𝑡)]
𝑧̇ (𝑡)

Tras la definición de las nuevas variables de estado, las ecuaciones de estado del nuevo sistema son:

𝑥̃̇1 (𝑡) = 𝑥̌2 (𝑡) = 𝑥̇ (𝑡)


1 1 1 1
𝑥̃̇2 (𝑡) = 𝑥̈ (𝑡) = . 𝑓 (𝑡) − . 𝑓 (𝑡) − . 𝐵𝑃𝑇𝑂 . 𝑥̃2 (𝑡) − . 𝑥̃1 . (𝐾𝑤 + 𝐾𝑃𝑇𝑂 )
𝑀 𝑒 𝑀 𝑟 𝑀 𝑀
(XXIV)
𝑧̇ (𝑡) = 𝐴𝑟 . 𝑧(𝑡) + 𝐵𝑟 . 𝑥̃2 (𝑡)

𝑓𝑟 (𝑡) = 𝐶𝑟 . 𝑧(𝑡) + 𝐷𝑟 . 𝑥̃̇2 (𝑡)

Llamando a la entrada del sistema 𝑢 = 𝑓𝑒 (𝑡), las ecuaciones anteriores se pueden expresar de forma
matricial resultando el espacio de estado:

𝑥̃̇1 (𝑡) 0 1 0 𝑥̃1 (𝑡) 0


̇
[𝑥̃2 (𝑡)] = [ −𝐾𝑤 /𝑀 −𝐷𝑟 /𝑀 −𝐶𝑟 /𝑀]. [𝑥̃ (𝑡)]+[1/𝑀 ] . 𝑢
2
𝑥̃̇3 (𝑡) 0 𝐵𝑟 𝐴𝑟 𝑥̃3 (𝑡) 0 (XXV)

𝐴 𝐵

Marta Núñez-Samper Muñoz 35


CAPÍTULO 2. MODELO MATEMÁTICO DE UN ABSORBEDOR PUNTUAL

𝑥̃1 (𝑡)
𝑦 = [1 0 … 0]. [𝑥̃2 (𝑡)] + [0]. 𝑢
𝑧(𝑡)
𝐶 𝐷

De esta manera se consigue expresar la dinámica de la boya mediante una sola función de
transferencia:

𝑆𝑖𝑠𝑡𝑒𝑚𝑎 𝑚𝑢𝑙𝑡𝑖𝑣𝑎𝑟𝑖𝑎𝑏𝑙𝑒:
𝑢 = 𝐹𝑒
𝜂 𝑥̃̇ (𝑡) = 𝐴. 𝑥̃(𝑡) + 𝐵. 𝑢 𝑦 = 𝑥̃1 = 𝑥(𝑡)
𝐻𝑒 (𝑠)
𝑦 = 𝐶. 𝑥̃(𝑡) + 𝐷. 𝑢

Figura 25 - Diagrama de bloques reducido de la obtención de la velocidad y el desplazamiento de la boya cuando la


entrada al sistema es un oleaje regular

2.2.1. EFECTO DEL PTO SOBRE EL SISTEMA


El efecto que induce el PTO sobre el sistema es el mismo que se había descrito para un oleaje regular.

El sistema completo que resultaría sería:

𝑥̃̇1 (𝑡) 0 1 0 𝑥̃1 (𝑡) 0


[𝑥̃̇2 (𝑡)] = [− (𝐾𝑤 + 𝑲𝑷𝑻𝑶 )⁄𝑀 − (𝐷𝑟 + 𝑩𝑷𝑻𝑶 )⁄𝑀 − 𝐶𝑟 ⁄𝑀 ] . [𝑥̃2 (𝑡)] + [1⁄𝑀 ] . 𝑢 (XXVI)
𝑧̇ (𝑡) 0 𝐵𝑟 𝐴𝑟 𝑧(𝑡) 0

𝐴 𝐵

𝑥̃1 (𝑡)
𝑦 = [1 0 … 0]. [𝑥̃2 (𝑡)] + [0]. 𝑢 (VI)
𝑧(𝑡)
𝐶 𝐷

36 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

CAPÍTULO 3. TEORÍA DE OLAS


3.1. OLEAJE REGULAR
Se emplea la Teoría de Airy [18], según la cual se puede aproximar la elevación de la ola sobre una
superficie como una senoide de frecuencia única y constante, es decir, 𝜂(𝑡) = 𝐴. 𝑠𝑒𝑛 (𝑤𝑡). Este
modelo se corresponde con el modelo de ola lineal, es el más simple y es válido para aguas profundas
en las que la altura de la ola es mucho menor que la profundidad del fondo marino.

Figura 26 – Función senoidal de amplitud la unidad

𝜂(𝑡) = 𝐴. 𝑠𝑒𝑛(𝑤𝑡) (XXVII)

Figura 27 – Ejemplo de oleaje regular en tres dimensiones

Marta Núñez-Samper Muñoz 37


CAPÍTULO 4. MICROPROCESADOR

3.2. OLEAJE IRREGULAR


Otros modelos de oleaje más complejos son el desarrollado por la Teoría de Stokes, o los basados en
un espectro en concreto como el ITTC o el de Pierson-Moskowitz [19].

Estos espectros de energía muestran la densidad de energía de las componentes armónicas de un


determinado oleaje. El oleaje puede considerarse que está generado en su mayor parte por el efecto
del viento sobre su superficie y supone un océano totalmente desarrollado (olas resultantes si soplara
un viento de forma constante durante un tiempo suficiente), dando lugar a olas formadas por ondas
con componentes armónicas de expresión:

𝜂1 (𝑡) = 𝐴1 . 𝑠𝑒𝑛(𝑤1 . 𝑡 + 𝜑1 )
𝜂 (𝑡) = 𝐴2 . 𝑠𝑒𝑛(𝑤2 . 𝑡 + 𝜑2 )
{ 2 (XXVIII)

𝜂𝑛 (𝑡) = 𝐴𝑛 . 𝑠𝑒𝑛(𝑤𝑛 . 𝑡 + 𝜑𝑛 )

La suma de estas componentes de altura de ola representa la altura de la ola en cada instante:

𝜂(𝑡) = ∑ 𝜂𝑘 (XXIX)
𝑘=1

De esta manera se puede ver el oleaje irregular como la


composición de distintos oleajes regulares de distinta
amplitud, fase y dirección de propagación [20].

Figura 28 – Descomposición de un
oleaje irregular en distintos oleajes
regulares [20]

El espectro de energía del oleaje viene caracterizado por el parámetro 𝐻𝑠 (altura significativa de la ola)
cuyo valor se corresponde en la práctica con la media de los valores de las alturas de la ola del tercio
mayor. 𝐻𝑠 se calcula estadísticamente como 𝐻𝑠 = 4. √𝑚𝑜 . 𝑚𝑜 es el momento espectral y se puede
calcular a partir de la expresión general del momento 𝑚𝑘 = ∫ 𝑓 𝑘 𝑆(𝑓). 𝑑𝑓 [20].

Otro parámetro por el cual se caracteriza un espectro es 𝑇𝑒 (periodo energético), 𝑇𝑧 (periodo cero), 𝑇𝑝
(periodo de pico) o 𝑇𝑚 (periodo medio). En este trabajo se ha utilizado el periodo energético 𝑇𝑒 . Este
periodo hace referencia al periodo necesario en un oleaje regular para contener la misma energía que
el oleaje irregular generado.

38 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

En la generación de oleaje para este trabajo se ha utilizado un espectro ITTC. El espectro se ha


generado mediante la función Función especola.m , cuya representación queda:

Figura 29 – Densidad del espectro S de energía del oleaje frente a la frecuencia

A partir del espectro de energía previamente calculado es posible generar matemáticamente un oleaje
de cresta larga o cresta corta así como la fuerza de excitación que este oleaje generaría. Para su cálculo
se ha utilizado la función Función genolaFe.m : , que da una altura y una fuerza de excitación:

Figura 30 – Altura de la ola del oleaje irregular en metros en cada instante de tiempo

Marta Núñez-Samper Muñoz 39


CAPÍTULO 4. MICROPROCESADOR

Figura 31 – Fuerza de excitación del oleaje en cada instante de tiempo

40 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

CAPÍTULO 4. MICROPROCESADOR
El microprocesador escogido para realizar el simulador de generación de energía a partir del oleaje es
un Digital Signal Processor (DSP) de doble núcleo modelo F28M35H52C “Concerto” de Texas
Instruments (TI), perteneciente a la familia C2000.

Los modelos “CONCERTO” han sido diseñados específicamente para ser integrados en sistemas de
Smart Grids y Smart Cities y para ello se ha diseñado escogiendo un núcleo especializado en
comunicaciones (el ARM Cortex) y otro especializado en control de accionamientos (el F28335 de TI),
integrándolos mediante un sistema de comunicación entre núcleos basado memoria RAM compartida.

Figura 32 - Imagen del microprocesador F28M35H52C [21]

Así, el subsistema de comunicaciones está basado en un estándar ampliamente utilizado en la industria


de las comunicaciones, con una CPU con arquitectura ARM Cortex-M3 de 32 bits. Presenta una gran
variedad de periféricos de comunicación, como Ethernet 1588, USB OTG, Ethernet, CAN, UART, SSI.
Este microprocesador admite comunicación con gran variedad de interfaces de comunicación con el
usuario o comunicarse con cualquier tipo de dispositivo por lo que se ocupa de las comunicaciones del
sistema. Este núcleo puede actuar, por ejemplo, como Servidor Web, alojando la página web que sirve
de interfaz con el usuario. La ejecución de los algoritmos de encriptación RSA en este núcleo ARM
requieren en torno a medio segundo para 1024 bits y hasta dos segundos para 2048 bits, lo que se
considera adecuado para los propósitos de este proyecto.

El subsistema de control en tiempo real lo constituye el núcleo C28x de 32 bits con coma flotante y
reloj de 150MHz que incluye periféricos de gran flexibilidad y precisión. Algunos de estos son ePWMs
con protección ante faltas, conexión directa para encoder o 16 canales de conversión A/D, etc., todos
ellos implementados de la misma manera que en otros modelos anteriores y mono núcleo de la familia
C2000 de TI. Además, la CPU del C28 ha sido mejorada con la incorporación del acelerador de
instrucciones VCU que implementa algoritmos eficientes como Viterbi, Aritmética Compleja, FFT de 16
bits o CRC. Este núcleo posee un hardware especializado en el control de la electrónica de potencia.

El subsistema analógico ADC de alta velocidad y una parte de memoria RAM son compartidos por
ambos núcleos así como como el regulador de tensión y la circuitería de sincronización (de manera
redundante).

Marta Núñez-Samper Muñoz 41


CAPÍTULO 4. MICROPROCESADOR
Entre las consideraciones de seguridad se incluyen código de corrección de errores así como la
securización del código en memoria, entre otros.

La arquitectura del modelo escogido ha sido diseñada para independizar las acciones de control (C28)
y las de monitorización y comunicación (ARM Cortex-M3), logrando una mayor rapidez de ejecución.

Por otra parte, la tarjeta va encajada en una “Docking Station” de Texas Instruments, que facilita la
conexión de los pines de los sensores y las señales de disparo del inversor al microprocesador. Además
incorpora una fuente de alimentación para el microprocesador cuando no esté conectado al
ordenador.

Figura 33 - Microprocesador encajado en la "Docking Station" [21]

42 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

4.1. CARACTERÍSTICAS
A continuación se recogen todas las especificaciones de microprocesador presentado previamente
obtenidas de la página web del fabricante [7].

❖ Subsistema maestro — ARM Cortex-M3


− Hasta 100 MHz
− Memoria integrada
▪ Hasta 512KB de Flash (ECC)
▪ Hasta 32KB de RAM (ECC o Parity)
▪ Hasta 64KB de RAM Compartida
▪ 2KB de mensajes IPC - RAM
− Cinco receptores/transmisores asíncronos universales (UARTs)
− Cuatro interfaces serie síncronas (SSIs) y una interfaz serie periférica (SPI)
− Dos circuitos inter-integrados (I2Cs)
− USB On-the-Go + PHY
− 10/100 ENET 1588 MII
− Dos módulos de controladores de red de área, D_CAN (Pin-Bootable)
− 32 canales “micro” de acceso directo a la memoria (µDMA)
− Zonas de seguridad dual (Contraseñas de 128-Bit por zona)
− Interfaz de periféricos externos (EPI)
− Módulo “micro” de comprobación cíclica reiterada
− Cuatro temporizadores de propósito general
− Dos módulos de temporizadores tipo “watchdog”
− Endianness: Little Endian1

❖ Sincronización
− Oscilador de cristal integrado en el chip y entrada de reloj externa
− Posibilidad de realizar cambios en la relación del bucle de enganche de fase (PLL) dinámico
• Criterios de diseño de los puertos: 1.2-V Digital, 1.8-V Analog, 3.3-V I/O
• Comunicaciones entre los procesadores (IPC)
− 32 canales “handshaking”2
− Cuatro canales para generar interrupciones para la IPC
− Puede utilizarse para coordinar la transferencia de datos mediante mensajes IPCRAM

• Hasta 74 pines individualmente programables de entradas/salidas de propósito general (GPIO)


multiplexadas.
− Entradas/salidas protegidas contra faltas

• Subsistema de control — TMS320C28x CPU de 32 bits


− Hasta 150 MHz
− Hardware: núcleo C28x
− Memoria integrada
▪ Hasta 512KB de Flash (ECC)
▪ Hasta 36KB de RAM (ECC o Parity)
▪ Hasta 64KB de RAM compartida

Marta Núñez-Samper Muñoz 43


CAPÍTULO 4. MICROPROCESADOR
▪ 2KB de mensajes IPC - RAM
− Unidades de coma flotante de precisión simple IEEE-754 (FPU)
− Unidad de Viterbi, Complex Math, CRC (VCU)
− Interfaz de comunicaciones serie (SCI)
− SPI
− I2 C
− Seis canales de acceso directo a memoria (DMA)
− Nueve módulos de PWM mejorado (ePWM)
− 18 salidas (16 de alta resolución)
− Seis módulos de 32 bits de “Capture” mejorado (eCAP)
− Tres módulos de 32-Bit de codificador de pulsos en cuadratura mejorado (eQEP)
− Puerto serie multicanal (McBSP)
− EPI − Una zona de seguridad (Contraseña de 128-Bit)
− Tres temporizadores de 32 Bits
− Endianness: Little Endian

• Subsistema analógico
− Convertidores analógico digitales de 12 bits duales (ADCs)
− Hasta 2.88 MSPS (velocidad de conversión)
− Hasta 20 canales
− Cuatro circuitos de muestreo y retención
− Hasta seis comparadores con convertidores digital-analógico (DAC) de 10 bits

• Encapsulado
− RFP PowerPAD plana mejorada térmicamente de 144 pines

En la Figura 34 - Diagrama funcional de bloques del F28M35H52C se muestra el diagrama de bloques


funcional del microprocesador. En él se distingue el subsistema de comunicaciones (ARM Cortex-M3)
en azul, el subsistema de control (C28) en verde y el subsistema analógico en naranja.

44 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Figura 34 - Diagrama funcional de bloques del F28M35H52C [21]

Marta Núñez-Samper Muñoz 45


CAPÍTULO 4. MICROPROCESADOR

4.2. CODE COMPOSER STUDIO


Para la realización del proyecto se ha empleado un software propuesto por Texas Instruments que
permite desarrollar el código y cargarlo en el micro a través de un puerto serie.

El entorno de desarrollo integrado (IDE) es Code Composer Studio, en la versión 6.0.1 que se puede
utilizar para operar con los microprocesadores de TI. CCS incorpora multitud de herramientas para
desarrollar y depurar las aplicaciones. Además, incluye un compilador de C/C++, un editor de código
fuente, entorno de compilación de proyectos, depurador, entre otras aplicaciones. La interfaz y las
herramientas han sido pensadas para que el usuario no encuentre grandes dificultades en el manejo
del programa y por tanto en el desarrollo de aplicaciones. CCS pertenece al marco de software de

Figura 35 - Code Composer Studio [21]

Eclipse pero incorpora la capacidad de depuración de TI con lo que resulta un entorno con buenas
características para el desarrollo de proyectos de software.

CCS tiene dos vistas del proyecto, para editar o depurar. En la creación del programa se utiliza la
perspectiva de edición y una vez cargado el proyecto la de depurar. Ambas muestran los archivos con
el código, pero ofrecen herramientas diferentes. CSS permite abrir varios archivos de un proyecto o
incluso de diferentes proyectos, empleando para ello varias pestañas. Por ello, se debe tener
precaución y asegurarse de que el archivo que se modifique pertenece al proyecto deseado. Una vez
cargado y con el programa corriendo en el microprocesador se pueden realizar cambios en el código,
teniendo en cuenta que estos no se aplicarán hasta que no carguemos el nuevo fichero.

Una vez cargado el programa se crea un archivo con información del mapa de memoria que permite
acceder a información sobre las variables cargadas conociendo, por ejemplo, el espacio que ocupan
en memoria.

Además, la perspectiva de depuración permite visualizar el valor de las variables en la ventana


“expressions” y, en algunos casos, modificar su valor. También podemos observar la memoria en la
pestaña “Memory Browser” accediendo mediante las direcciones que obtenemos del archivo del mapa
de memoria. La utilidad de estas herramientas será puesta de manifiesto más adelante.

46 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

4.2.1. CONEXIÓN Y CARGA DE LOS PROYECTOS


Para conectar la tarjeta al ordenador, se emplean dos cables USB, uno de tipo B de 5 pines para la
carga del programa y otro de tipo microUSB para la alimentación, a 5V.

En el caso que nos ocupa, cargamos dos proyectos, uno en cada núcleo. En primer lugar se activan
ambos núcleos y se cargan los programas con el botón “Debug”. A continuación, para correr el
programa se pulsa el botón “Reset”, para resetear todas las variables; “Restart”, para comenzar a
correr el programa desde la primera línea; y “Resume”, para comenzar a correr el programa. Esta

Figura 36 - Barras de herramientas de la perspectiva Debug.

secuencia se debe ejecutar en ambos núcleos, realizándose en primer lugar en el M3 ya que actúa
como maestro.

Para la desconexión se debe finalizar primero el C28 y posteriormente el M3, pulsando el botón
“Pause”. El botón “Stop” solo se debe pulsar cuando se desee desconectar el microprocesador.

Una vez finalizada la fase de pruebas de depuración y se disponga de los proyectos definitivos se
pueden dejar cargados en el microprocesador y que se carguen y corran una vez que este se conecte
a una fuente de alimentación de 5V. Por tanto, ya no será necesaria la conexión con el ordenador.

Marta Núñez-Samper Muñoz 47


CAPÍTULO 4. MICROPROCESADOR

48 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

CAPÍTULO 5. DESCRIPCIÓN DEL SISTEMA


El sistema está formado por:

• Subsistema ficticio:
− Absorbedor puntual
▪ Cuerpo flotante (boya)
▪ PTO
▪ Anclaje al fondo marino
• Subsistema real:
− Motor DC
− Generador DC

La dinámica de la boya se simula en el microprocesador. En él, a partir de los datos de fuerza de


excitación del oleaje 𝐹𝑒 almacenados en la tarjeta de memoria y de la medida del desplazamiento
angular 𝜑 del rotor y la velocidad angular 𝜔 del rotor (transformados previamente a desplazamiento
𝑥 y velocidad 𝑥̇ lineales de la boya) se obtiene la fuerza que ejercería la boya sobre el eje del PTO,
𝐹𝑏𝑜𝑦𝑎 . Esta fuerza es convertida en par 𝑇𝑏𝑜𝑦𝑎 y representa el par mecánico equivalente ejercido por la
boya que hace mover el rotor del generador.

Figura 37 – Estructura y partes del sistema

El PTO no existe en realidad en el laboratorio. El efecto del PTO sobre la boya, es decir, el
amortiguamiento y la rigidez que añade el PTO sobre la dinámica de la boya, es ejercida en el sistema
real por el generador. Estos parámetros de amortiguamiento y rigidez pueden ser modificados
haciendo variar la inductancia del devanado del generador.

Marta Núñez-Samper Muñoz 49


CAPÍTULO 5. DESCRIPCIÓN DEL SISTEMA

5.1. AJUSTE DE LOS PARÁMETROS DEL PTO


Las características mecánicas del PTO pueden ser modificadas variando los parámetros eléctricos del
generador.

Recordando la figura Figura 21 – Circuito eléctrico equivalente de la dinámica del cuerpo flotante en
la que se mostraba el circuito eléctrico equivalente de la dinámica de la boya, se puede llegar al circuito
equivalente en el que se muestra el efecto del PTO de manera separada:

1ൗ
𝑿̇(𝒋𝒘) 𝑚 + 𝐴𝑤 (𝑤) 𝐵𝑤 (𝑤) 𝐾𝑤

𝐵𝑃𝑇𝑂 (𝑤)
𝑭𝒆 𝒁𝒘
𝒁𝑷𝑻𝑶
1ൗ
𝐾𝑃𝑇𝑂 (𝑤)

Figura 38 - Circuito eléctrico equivalente de la dinámica del cuerpo flotante con el efecto del PTO

Con el fin de obtener la máxima cantidad de energía eléctrica, se hace uso del Teorema de la Máxima
Transferencia de Potencia [16] para establecer los parámetros óptimos del PTO. Según este teorema,
la máxima transferencia de potencia ocurre cuando la impedancia del generador (PTO) coincide con la
impedancia del dispositivo (par mecánico que emula el par que ejercería la boya). Esto equivale a decir
que el circuito debe estar en resonancia y que la parte real de las impedancias son iguales. Se llega de
esta manera a las expresiones:
𝑍 = 𝐵𝑤 + 𝑗. 𝑤. (𝑚 + 𝐴𝑤 ) − 𝑗. 𝐾𝑤 /𝑤
{ 𝑤 (XXX)
𝑍𝑃𝑇𝑂 = 𝐵𝑃𝑇𝑂 − 𝑗. 𝐾𝑃𝑇𝑂 /𝑤

𝐵𝑃𝑇𝑂 = 𝐵𝑤
{ (XXXI)
𝐾𝑃𝑇𝑂 = −𝑤 2 . (𝑚 + 𝐴𝑤 ) + 𝐾𝑤

50 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

5.2. DATOS DE LA BOYA Y DEL SISTEMA

Boya:

▪ Masa: 3640,32 𝑘𝑔
▪ Radio: 1,5 𝑚
▪ Altura: 1 𝑚
▪ Altura sumergida: 0,5 𝑚
▪ Densidad: 515 𝑘𝑔/𝑚3

Densidad del agua del mar: 1030 𝑘𝑔/𝑚3

Gravedad: 9,8066 𝑚/𝑠2 Figura 39 – Vista en 3D de las dimensiones de la boya

Marta Núñez-Samper Muñoz 51


CAPÍTULO 5. DESCRIPCIÓN DEL SISTEMA

52 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

CAPÍTULO 6. IMPLEMENTACIÓN EN EL MICROPROCESADOR


La función del microprocesador es simular la dinámica libre de la boya, es decir, obtener la fuerza sobre
la boya 𝐹𝑏𝑜𝑦𝑎 a partir de la entrada 𝑓𝑒 fuerza de excitación.

Recordando la ecuación (XXIII) que muestra la expresión de 𝑓𝑏𝑜𝑦𝑎 , para obtener las fuerzas a partir de
las cuales se calcula, será necesario implementar en el microprocesador tres funciones de
transferencia discretizadas para obtener: 𝑥 desplazamiento de la boya, 𝑥̇ velocidad de la boya y 𝑓𝑟 :

𝑓𝑏𝑜𝑦𝑎 (𝑡) = 𝑀. 𝑥̈ (𝑡) = 𝑓𝑒 (𝑡) − 𝑓𝑟 (𝑡) − 𝑓𝑏 (𝑡) (XXIII)

Donde:

• 𝑓𝑒 (𝑡): dato conocido, guardado en la tarjeta de memoria del microprocesador.

• 𝑓𝑟 (𝑡): se calcula a partir de la velocidad 𝑥̇ y su cálculo se puede expresar mediante el espacio


de estado de la figura Figura 24 - Diagrama de bloques de la obtención de la velocidad y el
desplazamiento de la boya cuando la entrada al sistema es un oleaje irregular:

𝑥̇ 𝑧̇ = 𝐴𝑟 . 𝑧 + 𝐵𝑟 . 𝑥̇ 𝐹𝑟
𝑓𝑟 = 𝐶𝑟 . 𝑧 + 𝐷𝑟 . 𝑥̇

Figura 40 – Diagrama de bloques para obtener la fuerza de radiación a partir de la radiación


en el caso de trabajar con un oleaje irregular

Este espacio de estado se convierte en una función de transferencia que puede ser
discretizada e implementada en el microprocesador en forma de ecuación. Los pasos
detallados son:

Función de transferencia entre 𝑥̇ y 𝑓𝑟 :

1) Matrices del sistema (proporcionadas por el profesor Hugo Rocha):

−1.84 −2.328 2 0.6733 −0. .3374


2,328 −0,00605 0,08893 0,04418 −0,02094
𝐴𝑟 = −2 0,08893 −2,793 −3,262 1,259 (XXXII)
0,6733 −0,04418 3,262 −1,57 1,114
−0,3374 0,02094 −1,259 1,114 −0,9931

107,2
−5,876
𝐵𝑟 = 49,94
−20,45
9,989

Marta Núñez-Samper Muñoz 53


CAPÍTULO 6. IMPLEMENTACIÓN EN EL MICROPROCESADOR

𝐶𝑟 = [ 107,2 5,876 − 49,94 − 20,45 9,989 ]

𝐷𝑟 = [ 47,05 ]

2) Función de transferencia en 𝑠 del sistema anterior:

47,05 𝑠5 + 9825 𝑠4 + 6,753𝑒04𝑠3 + 3,156𝑒05 𝑠2 + 6,558𝑒04 𝑠 + 1576 (XXXIII)


𝑠5 + 7,203 𝑠4 + 38,45 𝑠 3 + 88,59 𝑠2 + 115,2 𝑠 + 25,2

3) Función de transferencia discretizada en 𝑧:

Se utiliza el método de discretización Tustin con un tiempo de muestreo de 1ms:

51,79 𝑧 5 − 249,1 𝑧 4 + 478,6𝑧 3 − 459 𝑧 2 + 219,7 𝑧 − 42


(XXXIV)
𝑧 5 − 4,993 𝑧 4 + 9,971 𝑧 3 − 9,957 𝑧 2 + 4,971 𝑧 − 0,9928

4) Ecuación implementada en el micro:

𝑆𝑎𝑙_𝑓𝑟𝑘+5 = 𝐸𝑛𝑡_𝑥̇ 𝑘 +5 . 51,79 + 𝐸𝑛𝑡_𝑥̇ 𝑘 +4 . (−249,1) + 𝐸𝑛𝑡_𝑥̇ 𝑘 +3 . 478,6


+ 𝐸𝑛𝑡_𝑥̇ 𝑘+2 . (−459) + 𝐸𝑛𝑡_𝑥̇ 𝑘+1 . 219,7 + 𝐸𝑛𝑡_𝑥̇ 𝑘 . (−42)
− 𝑆𝑎𝑙_𝑓𝑟𝑘+4 . (−4,993) − 𝑆𝑎𝑙_𝑓𝑟𝑘+3 . 9,9971 (XXXV)
− 𝑆𝑎𝑙_𝑓𝑟𝑘+2 . (−9,957) − 𝑆𝑎𝑙_𝑓𝑟𝑘+1 . 4,971
− 𝑆𝑎𝑙_𝑓𝑟𝑘 . (−0,9928)

▪ 𝑓𝑏 (𝑡): se calcula a partir del desplazamiento 𝑥 de la boya mediante:

𝑥 𝐹𝑏
𝐾𝑤

Figura 41 – Diagrama de bloques para obtener la fuerza hidrostática/de


flotabilidad

Sabiendo que 𝐾𝑤 se calcula como 𝐾𝑤 = 𝜌. 𝑔. 𝑆𝑤 , con los datos utilizados en el trabajo de


DATOS DE LA BOYA Y DEL SISTEMA se obtiene un valor de 71398,69 𝐾𝑔/𝑠 2 .

De esta manera 𝑓𝑏 puede ser calculada como 𝑓𝑏 = 𝑥. 𝐾𝑤 que escrito de manera discretizada
queda:

𝑆𝑎𝑙_𝑓𝑏𝑘 = 𝐸𝑛𝑡_𝑥𝑘 . 𝐾𝑤 (XXXVI)

La necesidad de conocer 𝑥 y 𝑥̇ en todo momento obliga a implementar también una función de


transferencia entre 𝑓𝑒 y 𝑥 y otra entre 𝑓𝑒 y 𝑥̇ .

54 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Función de transferencia entre 𝑓𝑒 y 𝑥:

Consiste en crear un espacio de estado entre 𝑓𝑒 y 𝑥 según la figura Figura 25 - Diagrama de


bloques reducido de la obtención de la velocidad y el desplazamiento de la boya cuando la
entrada al sistema es un oleaje regular.

𝑆𝑖𝑠𝑡𝑒𝑚𝑎 𝑚𝑢𝑙𝑡𝑖𝑣𝑎𝑟𝑖𝑎𝑏𝑙𝑒:
𝑢 = 𝐹𝑒 𝑥̃1 = 𝑥(𝑡)
𝜂 𝑥̃̇ (𝑡) = 𝐴. 𝑥̃(𝑡) + 𝐵. 𝑢
𝐻𝑒 (𝑠)
𝑦 = 𝐶. 𝑥̃(𝑡) + 𝐷. 𝑢

Figura 42 - Diagrama de bloques reducido de la obtención de la velocidad y el desplazamiento de la boya cuando la


entrada al sistema es un oleaje regular

1) Matrices del sistema

0 1 0 0 0 0 0
−7,6446 −0,0050 −0,0115 −6,2915𝑒 − 4 0,0053 0,0022 −0,0011
𝐴= 0 107,2214 −1,8400 −2,3278 1,9997 0,6733 −0,3374 (XXXVII)
0 −5,8761 2,3278 −0,0061 0,0889 0,0442 −0,0209
0 49,9383 −1,9997 0,0889 −2,7935 −3,2616 1,2592
0 −20,4527 0,6733 −0,0442 3,2616 −1,5701 1,1136
0 9,9885 −0,3374 0,0209 −1,2592 1,1136 −0,9931

0
1,0707𝑒 − 5
𝐵= 0
0
0
0
0

𝐶 =[1 1 1 1 1 1 1]

𝐷 = [0 ]

2) Función de transferencia en 𝑠 del sistema anterior:

1,0707 𝑒 − 4 𝑠5 + 7,7119 𝑒 − 4 𝑠4 + 0,0041 𝑠3 + 0,0095 𝑠2 + 0,0123 𝑠 + 0,0027


𝑠7 + 7,2077 𝑠6 + 47,1434 𝑠5 + 150,8801 𝑠4 + 442,8691 𝑠3 + 709,4442 𝑠2 + 880,5782 𝑠 + 192,6407
(XXXVIII)

Marta Núñez-Samper Muñoz 55


CAPÍTULO 6. IMPLEMENTACIÓN EN EL MICROPROCESADOR

3) Función de transferencia discretizada en 𝑧:

2,6761𝑒 − 9 𝑧 7 − 7,8323𝑒 − 9 𝑧 6 + 2,2944𝑒 − 9 𝑧 5 + 1,3174𝑒 − 8 𝑧 4 − 1,2617𝑒 − 8 𝑧 3


𝑧 7 −6,9259 𝑧 6 + 20,5599 𝑧 5 − 33,9115 𝑧 4 + 33,5642 𝑧 3
−2,8520𝑒 − 9 𝑧 2 + 7,6466𝑒 − 9 𝑧 − 2,4902𝑒 − 9
−19,9346 𝑧 2 + 6,5784 𝑧 − 0,9305
(XXXIX)

4) Ecuación implementada en el micro:

𝑆𝑎𝑙_𝑥𝑘+7 = 𝐸𝑛𝑡_𝑓𝑒 𝑘+7 . 2,6761𝑒 − 9 + 𝐸𝑛𝑡𝑓𝑒 . (−7,8323𝑒 − 9)


𝑘+6
+ 𝐸𝑛𝑡𝑓𝑒 . 2,2944𝑒 − 9 + 𝐸𝑛𝑡𝑓𝑒 . 1,3174𝑒 − 8
𝑘+5 𝑘+4
+ 𝐸𝑛𝑡𝑓𝑒 . (−1,2617𝑒 − 8) + 𝐸𝑛𝑡𝑓𝑒 . (−2,8520𝑒 − 9)
𝑘+3 𝑘+2
+ 𝐸𝑛𝑡𝑓𝑒 . 7,6466𝑒 − 9 + 𝐸𝑛𝑡𝑓𝑒 . (−2,4902𝑒 − 9) (XL)
𝑘+1 𝑘
− 𝑆𝑎𝑙𝑥 𝑘+6 . (−6,9259) − 𝑆𝑎𝑙𝑥 𝑘+5 . 20,5599
− 𝑆𝑎𝑙_𝑥𝑘+4 . (−33,9115) − 𝑆𝑎𝑙_𝑥𝑘+3 . 33,5642
− 𝑆𝑎𝑙_𝑥𝑘+2 . (−19,9346) − 𝑆𝑎𝑙_𝑥𝑘+1 . 6,5784
− 𝑆𝑎𝑙_𝑥𝑘 . (−0,9305)

Función de transferencia entre 𝑓𝑒 y 𝑥̇ :

El procedimiento sería el mismo que el de la función de transferencia entre 𝑓𝑒 y 𝑥̇ pero


teniendo en cuenta que 𝐺(𝑓𝑒 → 𝑥̇ ) = 𝑠. 𝐺(𝑓𝑒 → 𝑥).

La implementación de estas expresiones en el microprocesador es sencillo de realizar. El código


completo de los cálculos realizados en el entorno de Matlab se encuentra en ANEXO 1.6. CÁLCULOS
MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE IRREGULAR ANTE OLEAJE IRREGULAR y el
utilizado en el microprocesador se encuentra en ANEXO 2.3. CÁLCULOS MEDIANTE LA FUNCIÓN DE
TRANSFERENCIA PARA OLEAJE IRREGULAR ANTE OLEAJE IRREGULAR.

56 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

CAPÍTULO 7. RESULTADOS Y CONCLUSIONES


7.1. OBTENCIÓN DE RAO
En primer lugar se ha verificado la correcta obtención de RAO para los parámetros del sistema. La
gráfica de RAO muestra la amplitud de la salida desplazamiento de la boya 𝑥 ante una entrada senoidal
de amplitud la unidad a distintas frecuencias. Para su verificación, se ha decidido tomar diez
frecuencias distintas equidistantes entre ellas y comprobar que para estas frecuencias, la amplitud de
la salida del sistema (desplazamiento de la boya 𝑥) se corresponde con el valor de RAO para dicha
frecuencia. Esto se ha comprobado tanto en el entorno de Matlab como en el microprocesador.

▪ La siguiente gráfica muestra la representación de RAO en el entorno de Matlab. La forma de


RAO está teóricamente descrita y es ampliamente conocida [14], pudiendo afirmar la validez de los
resultados obtenidos. A continuación se muestran los resultados obtenidos:

código utilizado puede encontrarse en ANEXO 1.1. CÁLCULO Y REPRESENTACIÓN DE RAO.

Figura 19 – Gráfica de la respuesta en frecuencia del desplazamiento de la boya x (RAO:


response amplitude operator)

▪ Como comprobación, se obtuvo la forma de onda de la salida desplazamiento de la boya 𝑥 a


diez frecuencias distintas y se verificó que la amplitud de dicha onda a la frecuencia determinada
coincidía con el valor de RAO a dicha frecuencia. A modo de ejemplo, se muestran a continuación las
formas de onda de la salida desplazamiento de la boya 𝑥 para dos frecuencias distintas, tanto en el
entorno de Matlab como en el microprocesador, y se comprueba que su amplitud se corresponde con
el valor de RAO a dicha frecuencia.

Las frecuencias escogidas son 𝑤1 = 2,0020 𝑟𝑎𝑑/𝑠 y 𝑤2 = 3,3360 𝑟𝑎𝑑/𝑠.

Marta Núñez-Samper Muñoz 57


CAPÍTULO 7. RESULTADOS Y CONCLUSIONES

X: 2.0020
Y: 1.0698
X: 3.3360
𝒘𝟏 Y: 0.5342

𝒘𝟐

Figura 43 - Gráfica de la respuesta en frecuencia del desplazamiento de la boya x (RAO: response amplitude operator)
para diez frecuencias muestreadas

− Frecuencia 𝑤1 = 2,0020 𝑟𝑎𝑑/𝑠 :

Figura 44 – Entrada: Ola regular de frecuencia w=2,002 rad/s y amplitud la unidad

58 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

X: 10.3800
Y: 1.0700

Figura 45 – Comparación del desplazamiento de la boya x para una frecuencia w=2,0020 rad/s obtenida en Matlab y en el
micro

− Frecuencia 𝑤2 = 3.3360 𝑟𝑎𝑑/𝑠 :

Figura 46 - Entrada: Ola regular de frecuencia w=3,3360 rad/s y amplitud la unidad

Marta Núñez-Samper Muñoz 59


CAPÍTULO 7. RESULTADOS Y CONCLUSIONES

X: 18.2600
Y: 0.5300

Figura 47 - Comparación del desplazamiento de la boya x para una frecuencia w=3,3360 rad/s obtenida en Matlab y en el micro

Se comprueba que para cualquier frecuencia, la salida desplazamiento de la boya 𝑥 es la prevista por
la gráfica de RAO, y este valor de la salida se obtiene correctamente tanto en el entorno de Matlab
como mediante el microprocesador.

Los códigos utilizados en Matlab se encuentran en ANEXO 1.2. MUESTREO DE FRECUENCIA Y


REPRESENTACIÓN DE RAO PARA LAS FRECUENCIAS MUESTREADAS y ANEXO 1.3. CÁLCULO DE LA
SALIDA DESPLAZAMIENTO DE LA BOYA A DOS FRECUENCIAS DISTINTAS MEDIANTE LA FUNCIÓN DE
TRANSFERENCIA PARA OLEAJE REGULAR ANTE OLEAJE REGULAR y los utilizados en C en el
microprocesador se encuentran en ANEXO 2.1. CÁLCULO DE LA SALIDA DESPLAZAMIENTO DE LA BOYA
A DOS FRECUENCIAS DISTINTAS MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE REGULAR
ANTE OLEAJE REGULAR.

60 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Para la obtención de las gráficas a partir de los valores calculados en el microprocesador se ha utilizado
una interfaz que permite además exportar los datos al entorno de Matlab para trabajar más
cómodamente:

Figura 48 – Imagen de la interfaz de usuario utilizada para observar las gráficas obtenidas a partir del microprocesador

Cabe mencionar que aunque el microprocesador trabaja con un tiempo de muestreo de 𝑡𝑠 = 100 𝜇𝑠,
ha sido necesario trabajar con funciones discretizadas para 𝑡𝑠 = 10.000 𝜇𝑠 debido tanto a problemas
de convergencia de las funciones discretizadas como a limitaciones en el número de puntos de las
gráficas de la interfaz de usuario utilizada para obtener las gráficas. Al necesitarse la evolución de las
salidas durante un suficiente periodo de tiempo, era inviable utilizar un tiempo de muestro menor.

Marta Núñez-Samper Muñoz 61


CAPÍTULO 7. RESULTADOS Y CONCLUSIONES

7.2. RESULTADOS ANTE OLEAJE REGULAR


Una vez comprobados los parámetros hidrodinámicos de la boya con la que se va a trabajar, y
comprobado el correcto funcionamiento del microprocesador y su proximidad en resultados con los
obtenidos en el entorno de Matlab, se procede a trabajar con un oleaje irregular. Para poder trabajar
con él, es necesario hacer uso de una función de transferencia que sea independiente de la frecuencia
del oleaje de entrada.

Para comprobar el correcto funcionamiento de dicha función de transferencia, se verifica primero que
ante un oleaje regular de una frecuencia determinada como entrada al sistema, la salida
desplazamiento de la boya 𝑥 coincide con la que se obtendría con la función de transferencia específica
para dicha frecuencia, como se ha procedido en 7.1. OBTENCIÓN DE RAO.

Para llevar a cabo esta tarea, se ha utilizado de nuevo la interfaz de usuario antes mencionada:

Figura 49 - Imagen de la interfaz de usuario utilizada para observar las gráficas obtenidas a partir del microprocesador

Ante un oleaje de frecuencia 𝑤 = 2,0020 𝑟𝑎𝑑/𝑠 y amplitud la unidad, se ha calculado la evolución del
desplazamiento de la boya y de la velocidad de la boya. Dichas evoluciones se han calculado mediante
la función de transferencia para dicha frecuencia (función de transferencia para oleaje regular) y
mediante la función de transferencia independiente de la frecuencia (función de transferencia para
oleaje irregular). Como se puede observar, la evolución de ambas variables calculadas mediante ambas
funciones de transferencia es muy similar, variando únicamente en los primeros segundos de la
simulación:

62 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Figura 50 – Evolución del desplazamiento de la boya calculada mediante la función de transferencia para oleaje regular y
mediante la función de transferencia para oleaje irregular

Figura 51 - Evolución de la velocidad de la boya calculada mediante la función de transferencia para oleaje regular y
mediante la función de transferencia para oleaje irregular

Marta Núñez-Samper Muñoz 63


CAPÍTULO 7. RESULTADOS Y CONCLUSIONES

Estas pequeñas diferencias en las evoluciones del desplazamiento y la velocidad de la boya dan lugar
a diferencias en las evoluciones de las fuerzas de radiación 𝑓𝑟 y las fuerzas de flotación 𝑓𝑏 ya que se
calculan a partir de la posición y de la velocidad. Por ello, aparecen también pequeñas diferencias en
la evolución de la fuerza de la boya 𝑓𝑏𝑜𝑦𝑎 pero que se consideran poco significativas debido a la
magnitud de esta fuerza:

Figura 52 - Evolución de la velocidad de la boya calculada mediante la función de transferencia para oleaje regular y
mediante la función de transferencia para oleaje irregular

Se llega a la conclusión de que la función de transferencia para oleaje irregular funciona correctamente
ante cualquier la entrada de un oleaje regular a cualquier frecuencia y por ello se puede proceder a
ser utilizada para oleajes irregulares.

A continuación se muestran las gráficas de las distintas fuerzas mediante las cuales se calcula la fuerza
deseada 𝐹𝑏𝑜𝑦𝑎 obtenidas mediante las funciones de transferencia para oleaje irregular:

64 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Figura 53 – Representación de las distintas fuerzas del sistema ante oleaje regular calculadas mediante la función de
transferencia irregular calculadas mediante el microprocesador

De nuevo se han comparado los resultados obtenidos mediante Matlab y el microprocesador


concluyendo que de nuevo coinciden en los cálculos.

Figura 54 – Comparación del desplazamiento de la boya x calculada mediante la función de transferencia para oleaje
regular e irregular

Marta Núñez-Samper Muñoz 65


CAPÍTULO 7. RESULTADOS Y CONCLUSIONES

Figura 55 - Comparación de la velocidad de la boya calculada mediante la función de transferencia para oleaje regular e
irregular

El código utilizado en el entorno de Matlab se encuentra en ANEXO 1.4. CÁLCULO DE LA SALIDA


DESPLAZAMIENTO DE LA BOYA A UNA FRECUENCIA DETERMINADA MEDIANTE LA FUNCIÓN DE
TRANSFERENCIA PARA OLEAJE IRREGULAR ANTE OLEAJE REGULAR y el código en C utilizado en el
microprocesador se encuentra en ANEXO 2.2. CÁLCULO DE LA SALIDA DESPLAZAMIENTO DE LA BOYA
A UNA FRECUENCIA DETERMINADA MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE
IRREGULAR ANTE OLEAJE REGULAR.

66 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

7.3. RESULTADOS ANTE OLEAJE IRREGULAR


Se genera un oleaje irregular de la forma descrita en 3.2 OLEAJE IRREGULAR, y cuyo código se
encuentra en ANEXO 1.5. GENERACIÓN DEL OLEAJE IRREGULAR dando lugar a un oleaje cuya altura se
corresponde con la de la gráfica:

Figura 56 – Altura del oleaje irregular

Marta Núñez-Samper Muñoz 67


CAPÍTULO 7. RESULTADOS Y CONCLUSIONES

El oleaje regular con dicha altura da lugar a una fuerza de excitación representada por:

Figura 57 – Fuerza de excitación del oleaje irregular generada para un tiempo de muestreo 𝑡𝑠 = 10000 𝜇𝑠

Debido a la limitación de 2.400 muestras de la interfaz de usuario, se han tomado 2.400 muestras de
la anterior fuerza de excitación cogiendo una muestra cada 1.000 𝜇𝑠 y obteniéndose una nueva fuerza
de excitación muestreada con la que se calculan las variables de interés. La razón por la cual no se ha
generado el oleaje directamente para los 24 segundos se simulación, de manera que se obtendrían las
2.400 muestras de forma directa, ha sido el hecho de que en solo 24 segundos la evolución de la fuerza
de excitación oleaje es muy corta y tiene apenas cinco picos. Así, se obtendrían unas evoluciones de la
posición y de la velocidad que no permitirían hacerse idea de la evolución del sistema ante dicho oleaje.

68 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

La interfaz de usuario utilizada ha sido la misma comentada anteriormente:

Figura 58 - Imagen de la interfaz de usuario utilizada para observar las gráficas obtenidas a partir del microprocesador

Se comprueba de nuevo que los resultados obtenidos mediante Matlab y el microprocesador son los
mismos:

Figura 59 – Desplazamiento de la boya x ante oleaje irregular

Marta Núñez-Samper Muñoz 69


CAPÍTULO 7. RESULTADOS Y CONCLUSIONES

Figura 60 – Velocidad de la boya ante oleaje irregular

70 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

A continuación se muestran las gráficas de las distintas fuerzas mediante las cuales se calcula la fuerza
deseada 𝐹𝑏𝑜𝑦𝑎 :

Figura 61 – Fuerzas presentes en el sistema ante oleaje irregular

Así, se ha conseguido el objetivo del trabajo que era obtener la evolución de la fuerza de la boya en
cada instante.

El código utilizado en Matlab se encuentra en ANEXO 1.6. CÁLCULOS MEDIANTE LA FUNCIÓN DE


TRANSFERENCIA PARA OLEAJE IRREGULAR ANTE OLEAJE IRREGULAR y el utilizado en el
microprocesador se encuentra en ANEXO 2.3. CÁLCULOS MEDIANTE LA FUNCIÓN DE TRANSFERENCIA
PARA OLEAJE IRREGULAR ANTE OLEAJE IRREGULAR

Marta Núñez-Samper Muñoz 71


CAPÍTULO 7. RESULTADOS Y CONCLUSIONES

7.4. CONCLUSIONES
El objetivo del trabajo era implementar en el microprocesador la dinámica de la boya ante la fuerza de
excitación del oleaje como entrada. Como se ha expuesto en los apartados anteriores, se ha
conseguido satisfactoriamente obtener la evolución de la fuerza de la boya en cada instante, además
de observar la evolución de la boya para distintas condiciones del oleaje.

De esta manera, se podrá posteriormente implementar el microprocesador en la bancada del


laboratorio y realizar los ensayos deseados.

72 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

CAPÍTULO 8. LÍNEAS FUTURAS


Una vez se tiene implementado en el microprocesador la dinámica de la boya, el siguiente paso sería
conectar el microprocesador a la bancada del laboratorio.

Para la simulación en la bancada, deben solo modificarse varias lineas del código del microprocesador:

▪ Cambios en el tiempo de muestreo: debido a que el microprocesador trabaja con un tiempo


de muestreo de 𝑡𝑠 = 100 𝜇𝑠 y las funciones implementadas trabajan con 𝑡𝑠 = 10000 𝜇𝑠, cada
muestra debe mantenerse durante cien ciclos del microprocesador. Para introducir este
cambio en el microprocesador solo es necesario cambiar el valor de la variable
Iteraciones_por_muestra en su declaración que se encuentra en el fichero Extern_y_defines.h.
▪ Lectura del desplazamiento y la velocidad: hasta ahora se ha trabajado con un desplazamiento
y velocidad de la boya correspondientes a los teóricos según las ecuaciones de su dinámica sin
realizar ninguna medida real de estas variables. Sin embargo, en la realidad estos valores van
a ser medidos en la bancada de trabajo. Será necesario pues eliminar las líneas de código
correspondientes al cálculo del desplazamiento y la velocidad y crear dos variables nuevas a
través de las cuales se lean los valores de las medidas desplazamiento y velocidad del rotor.
▪ Constantes de proporcionalidad:
o Fuerza de la boya – Par de la boya: en este trabajo el objetivo ha sido el cálculo de la
fuerza de la boya. Sin embargo, la bancada de trabajo va a trabajar con el par de la
boya, el cual se va a inyectar al motor DC para hacer mover el eje del generador que
actúa como un PTO. Será imprescindible introducir en el código una nueva variable
par de la boya la cual sea una salida del microprocesador y cuyo cálculo se haga a partir
de la fuerza de la boya multiplicada por la constante de proporcionalidad en este caso
el radio del eje del motor.
o Medidas angulares – Variables lineales: el código del microprocesador está preparado
para operar con el desplazamiento y la velocidad de la boya, ambas variables lineales.
Sin embargo, las medidas que se realizan son angulares, es decir, se mide el
desplazamiento y la velocidad angular del rotor. Estas medidas deben ser
transformadas en medidas lineales. Para ello se deberán convertir las medidas
angulares en variables lineales a través de la constante de proporcionalidad
correspondiente.

Tras realizar estos pequeños cambios, el microprocesador estará listo para ser implementado en la
bancada del laboratorio.

Marta Núñez-Samper Muñoz 73


CAPÍTULO 8. LÍNEAS FUTURAS

74 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

CAPÍTULO 9. GESTIÓN DEL PROYECTO


9.1. PLANIFICACIÓN TEMPORAL

9.1.1. ESTRUCTURA DE DESCOMPOSICIÓN DEL PROYECTO (EDP)


Este Trabajo de Fin de Grado ha constado de los siguientes grupos de tareas:

Figura 62 – Estructura de descomposición del proyecto (EDP)

Marta Núñez-Samper Muñoz 75


CAPÍTULO 9. GESTIÓN DEL PROYECTO

9.1.2. DIAGRAMA DE GANNT DEL PROYECTO

A continuación se muestra la relación temporal de las tareas y la duración de cada una de ellas:

Nº de
Nombre de tarea Duración Comienzo Fin Predecesoras
tarea
1 Estudios previos 57 días vie 16/12/16 lun 06/03/17
2 Definición del trabajo 5 días vie 16/12/16 jue 22/12/16
Lectura y comprensión
3 52 días vie 23/12/16 lun 06/03/17 2
de la bibliografía
Estudio de aplicaciones
4 37 días vie 23/12/16 lun 13/02/17 2
reales
Desarrollo de la
5 76 días lun 13/03/17 lun 26/06/17 3
dinámica de la boya
6 Oleaje regular 70 días lun 13/03/17 vie 16/06/17 3
7 Efecto del PTO 55 días lun 03/04/17 vie 16/06/17
8 Oleaje irregular 25 días lun 15/05/17 vie 16/06/17 3
9 Efecto del PTO 20 días lun 22/05/17 vie 16/06/17 3
Verificación en Matlab
10 6 días lun 19/06/17 lun 26/06/17 6;8
ante distintas entradas
Generación del oleaje
11 11 días mar 07/03/17 vie 21/03/17 3
irregular
Implementación en el
12 55 días lun 24/04/17 vie 07/07/17 3
microprocesador
Obtención de las
13 funciones de 45 días lun 24/04/17 vie 23/06/17 3
transferencia
Discretización de las
14 funciones de 35 días lun 08/05/17 vie 23/06/17 3
transferencia
15 Programación 40 días lun 15/05/17 vie 07/07/17 3
Verificación de los
16 6 días vie 26/06/17 vie 14/07/17 11
resultados

Figura 63 – Tabla de tareas del diagrama de Gant del proyecto

El diagrama de Gannt completo se encuentra en la siguiente figura y muestra de forma más gráfica la
sucesión de las distintas tareas a los largo del tiempo:

76 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Figura 64 – Diagrama de Gannt del proyecto

Marta Núñez-Samper Muñoz 77


CAPÍTULO 9. GESTIÓN DEL PROYECTO

9.2. PRESUPUESTO
Para la realización del presupuesto del trabajo se han tenido en cuenta tres partidas diferentes:
material, software y personal.

La amortización realizada se ha aplicado únicamente al ordenador portátil utilizado pues el resto del
material tenía un valor cuya amortización iba a resultar despreciable frente al total del presupuesto.

El sueldo establecido para el ingeniero ha sido de 20 €/ℎ.

En la siguiente Tabla se encuentra el presupuesto del proyecto:

Concepto Cantidad Unidades Precio unitario Total


Material
Microprocesador 1 Unidad 114 € 114 €
Cable USB 2 Unidad 10 € 20 €
Tarjeta de memoria microSD 1 Unidad 9,25 € 9,25 €
Ordenador portátil 1 Unidad 597,65 €
Amortización (4 años) (duración del proyecto: 6 meses) 74,71 €
74,71 €
Software
Microsoft Office 1 Unidad 69 € 69 €
Matlab 1 Unidad 69 € 69 €
Code Composer Studio Licencia gratuita
Personal
Ingeniero 350 Horas 20 € 7000 €
TOTAL 7.355,96 €

Figura 65 – Tabla del presupuesto del proyecto

78 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

9.3. VALORACIÓN DEL IMPACTO ECONÓMICO, SOCIAL Y AMBIENTAL


Desde el punto de vista económico, la posibilidad de simular la energía generada por un absorbedor
puntual en un laboratorio supone un enorme ahorro en cuanto a materiales, tiempo y desarrollo
tecnológico. Mediante la correcta modelización del sistema de interés, se pueden simular en una
misma bancada distintos absorbedores puntuales de diferentes características. De esta manera, no es
necesario desarrollar un prototipo del sistema físico para cada absorbedor puntual, sino que solo es
necesario disponer de un motor. Esto supone además de un ahorro en desarrollo tecnológico, un
ahorro de materiales y un ahorro de tiempo de montaje.

A su vez, la simulación directa en laboratorio permite realizar simulaciones de generación de energía


undimotriz en aquellos lugares que no disponen de zona marítima cerca. Así, el desarrollo de
tecnologías aplicadas a la generación de electricidad a partir de las olas no queda restringida
únicamente a las zonas más próximas al mar, permitiendo en el futuro un incremento en el número
de proyectos orientados a este tipo de tecnologías.

Mirándolo desde un punto de vista ambiental, gracias al desarrollo de la simulación de olas


desarrollada en este trabajo, supondría un ahorro en desplazamientos hasta zonas marítimas, ahorro
en materiales, además de una inferior afectación sobre el ecosistema marítimo. También, la
generación óptima se conseguirá alcanzar en un futuro más próximo ayudando a reducir el consumo
de energía procedente de fuentes no renovables que emites gases contaminantes a la atmósfera.

Por último, de forma indirecta, un aumento en el desarrollo de este tipo de tecnologías puede suponer
en el futuro una mejora en la generación de energía procedente de las olas. Esto implicaría un consumo
de energías más responsable, disminuyendo la utilización de combustibles fósiles para obtener energía
así como una posible reducción en el precio de la electricidad como consecuencia de un mayor acceso
a la energía procedente de energías renovables.

Marta Núñez-Samper Muñoz 79


CAPÍTULO 9. GESTIÓN DEL PROYECTO

80 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

ÍNDICE DE FIGURAS
Figura 1 – Esquema gráfico de un Atenuador [4] .................................................................................13
Figura 2 – Esquema gráfico de un Absorbedor Puntual [4] ..................................................................14
Figura 3 – Esquema gráfico de un convertidor de Brazo Oscilante Sumergido [4] ...............................14
Figura 4 – Esquema gráfico de una Columna de Agua Oscilante [4] .....................................................15
Figura 5 – Esquema gráfico de una Columna de un Terminador por Rebosamiento [4] ......................15
Figura 6 – Esquema gráfico de un Convertidor Sumergido de Presión Diferencial [4] .........................16
Figura 7 – Esquema gráfico de un Convertidor Bulge Wave [4] ...........................................................16
Figura 8 – Esquema gráfico de un Convertidor de Masa Rotativa [4] ...................................................17
Figura 9 – Esquema gráfico de una columna del FO3 [7]......................................................................19
Figura 10 – Esquema gráfico de una columna del SeaBased [8] ...........................................................19
Figura 11 – Esquema gráfico de una columna del CETO [9] .................................................................20
Figura 12 – Esquema gráfico del APC-PISYS [10] ..................................................................................20
Figura 13 – Esquema de fuerzas sobre un Absorbedor Puntual ...........................................................23
Figura 14 – Módulo del coeficiente de fuerza de excitación frente a la frecuencia .............................25
Figura 15 – Fase del coeficiente de fuerza de excitación frente a la frecuencia ...................................25
Figura 16 –Masa añadida frente a la frecuencia...................................................................................26
Figura 17 – Coeficiente de amortiguamiento hidrodinámico frente a la frecuencia ............................27
Figura 18 - Diagrama de bloques de la obtención de la velocidad y el desplazamiento de la boya cuando
la entrada al sistema es un oleaje regular ............................................................................................29
Figura 19 – Gráfica de la respuesta en frecuencia del desplazamiento de la boya x (RAO: response
amplitude operator) .............................................................................................................................29
Figura 20 – Esquema mecánico de la dinámica del cuerpo flotante.....................................................30
Figura 21 – Circuito eléctrico equivalente de la dinámica del cuerpo flotante .....................................30
Figura 22 – Tabla de equivalencia entre las magnitudes del equivalente mecánico y el equivalente
eléctrico ...............................................................................................................................................31
Figura 23 – Diagrama de bloques de la obtención de la velocidad y el desplazamiento de la boya cuando
la entrada al sistema es la altura de la ola en presencia de un PTO .....................................................33
Figura 24 - Diagrama de bloques de la obtención de la velocidad y el desplazamiento de la boya cuando
la entrada al sistema es un oleaje irregular ..........................................................................................35
Figura 25 - Diagrama de bloques reducido de la obtención de la velocidad y el desplazamiento de la
boya cuando la entrada al sistema es un oleaje regular .......................................................................36
Figura 26 – Función senoidal de amplitud la unidad ............................................................................37
Figura 27 – Ejemplo de oleaje regular en tres dimensiones .................................................................37
Figura 28 – Descomposición de un oleaje irregular en distintos oleajes regulares [20] .......................38
Figura 29 – Densidad del espectro S de energía del oleaje frente a la frecuencia ................................39
Figura 30 – Altura de la ola del oleaje irregular en metros en cada instante de tiempo ......................39
Figura 31 – Fuerza de excitación del oleaje en cada instante de tiempo .............................................40
Figura 32 - Imagen del microprocesador F28M35H52C [21] ................................................................41
Figura 33 - Microprocesador encajado en la "Docking Station" [21] ....................................................42
Figura 34 - Diagrama funcional de bloques del F28M35H52C [21] ......................................................45
Figura 35 - Code Composer Studio [21] ................................................................................................46
Figura 36 - Barras de herramientas de la perspectiva Debug. ..............................................................47
Figura 37 – Estructura y partes del sistema ..........................................................................................49
Figura 38 - Circuito eléctrico equivalente de la dinámica del cuerpo flotante con el efecto del PTO ...50
Figura 39 – Vista en 3D de las dimensiones de la boya ........................................................................51

Marta Núñez-Samper Muñoz 81


ÍNDICE DE FIGURAS

Figura 40 – Diagrama de bloques para obtener la fuerza de radiación a partir de la radiación en el caso
de trabajar con un oleaje irregular .......................................................................................................53
Figura 41 – Diagrama de bloques para obtener la fuerza hidrostática/de flotabilidad ........................54
Figura 42 - Diagrama de bloques reducido de la obtención de la velocidad y el desplazamiento de la
boya cuando la entrada al sistema es un oleaje regular .......................................................................55
Figura 43 - Gráfica de la respuesta en frecuencia del desplazamiento de la boya x (RAO: response
amplitude operator) para diez frecuencias muestreadas .....................................................................58
Figura 44 – Entrada: Ola regular de frecuencia w=2,002 rad/s y amplitud la unidad ...........................58
Figura 45 – Comparación del desplazamiento de la boya x para una frecuencia w=2,0020 rad/s obtenida
en Matlab y en el micro ........................................................................................................................59
Figura 46 - Entrada: Ola regular de frecuencia w=3,3360 rad/s y amplitud la unidad..........................59
Figura 47 - Comparación del desplazamiento de la boya x para una frecuencia w=3,3360 rad/s obtenida
en Matlab y en el micro ........................................................................................................................60
Figura 48 – Imagen de la interfaz de usuario utilizada para observar las gráficas obtenidas a partir del
microprocesador ..................................................................................................................................61
Figura 49 - Imagen de la interfaz de usuario utilizada para observar las gráficas obtenidas a partir del
microprocesador ..................................................................................................................................62
Figura 50 – Evolución del desplazamiento de la boya calculada mediante la función de transferencia
para oleaje regular y mediante la función de transferencia para oleaje irregular ................................63
Figura 51 - Evolución de la velocidad de la boya calculada mediante la función de transferencia para
oleaje regular y mediante la función de transferencia para oleaje irregular ........................................63
Figura 52 - Evolución de la velocidad de la boya calculada mediante la función de transferencia para
oleaje regular y mediante la función de transferencia para oleaje irregular ........................................64
Figura 53 – Representación de las distintas fuerzas del sistema ante oleaje regular calculadas mediante
la función de transferencia irregular calculadas mediante el microprocesador ...................................65
Figura 54 – Comparación del desplazamiento de la boya x calculada mediante la función de
transferencia para oleaje regular e irregular ........................................................................................65
Figura 55 - Comparación de la velocidad de la boya calculada mediante la función de transferencia para
oleaje regular e irregular ......................................................................................................................66
Figura 56 – Altura del oleaje irregular ..................................................................................................67
Figura 57 – Fuerza de excitación del oleaje irregular generada para un tiempo de muestreo 𝑡𝑠 =
10000 𝜇𝑠 .............................................................................................................................................68
Figura 58 - Imagen de la interfaz de usuario utilizada para observar las gráficas obtenidas a partir del
microprocesador ..................................................................................................................................69
Figura 59 – Desplazamiento de la boya x ante oleaje irregular ............................................................69
Figura 60 – Velocidad de la boya ante oleaje irregular.........................................................................70
Figura 61 – Fuerzas presentes en el sistema ante oleaje irregular .......................................................71
Figura 62 – Estructura de descomposición del proyecto (EDP) ............................................................75
Figura 63 – Tabla de tareas del diagrama de Gant del proyecto ..........................................................76
Figura 64 – Diagrama de Gannt del proyecto .......................................................................................77
Figura 65 – Tabla del presupuesto del proyecto ..................................................................................78

82 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

ÍNDICE DE ECUACIONES
(I) ..........................................................................................................................................................23
(II) .........................................................................................................................................................24
(III) ........................................................................................................................................................24
(IV)........................................................................................................................................................25
(V).........................................................................................................................................................26
(VI)........................................................................................................................................................26
(VII).......................................................................................................................................................27
(VIII)......................................................................................................................................................27
(IX) ........................................................................................................................................................28
(X) .........................................................................................................................................................28
(XI) ........................................................................................................................................................28
(XII) .......................................................................................................................................................28
(XIII) ......................................................................................................................................................28
(XIV)......................................................................................................................................................28
(XVII).....................................................................................................................................................28
(XVI)......................................................................................................................................................30
(XVII).....................................................................................................................................................30
(XVIII)....................................................................................................................................................32
(XIX) ......................................................................................................................................................32
(XX) .......................................................................................................................................................32
(XXI) ......................................................................................................................................................32
(XXII) .....................................................................................................................................................34
(XXIII) ....................................................................................................................................................34
(XXIV)....................................................................................................................................................35
(XXV).....................................................................................................................................................35
(XXVI)....................................................................................................................................................36
(XXVII)...................................................................................................................................................37
(XXVIII)..................................................................................................................................................38
(XXIX) ....................................................................................................................................................38
(XXX) .....................................................................................................................................................50
(XXXI) ....................................................................................................................................................50
(XXXII) ...................................................................................................................................................53
(XXXIII) ..................................................................................................................................................54
(XXXIV)..................................................................................................................................................54
(XXXV)...................................................................................................................................................54
(XXXVI)..................................................................................................................................................54
(XXXVII).................................................................................................................................................55
(XXXVIII)................................................................................................................................................55
(XXXIX) ..................................................................................................................................................56
(XL) .......................................................................................................................................................56

Marta Núñez-Samper Muñoz 83


ÍNDICE DE ECUACIONES

84 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

REFERENCIAS

[1] W. Cummins, «The Impulse Response Function and Ship Motions,» 1962.

[2] T. E. M. E. C. LTD, «EMEC,» [En línea]. Available: http://www.emec.org.uk/marine-energy/wave-


devices/.

[3] T. E. M. E. C. LTD, «EMEC,» [En línea]. Available: http://www.emec.org.uk/marine-energy/wave-


developers/.

[4] «Aquaret,» [En línea]. Available: http://www.aquaret.com/.

[5] J. Falnes, «Small is beautiful: How to make wave energy economic",» de Proceedings 1993
European WaveEnergy Symposium, Edinmburg, Scotland, 21-24 July 1993.

[6] J. F. a. P. Lillebekken, «Budal's latching-controlled-buoy type wave-power plant,» de 5th


European Wave Energy Conference 2003, Trondheim, Norway, 2003.

[7] «ABB,» 2006. [En línea]. Available: http://search-


ext.abb.com/library/Download.aspx?DocumentID=9AKK101130D3503&LanguageCode=es&Doc
umentPartId=&Action=Launch.

[8] «SEABASED,» [En línea]. Available: http://www.seabased.com/en/technology.

[9] «Carnegie Wave,» 2017. [En línea]. Available: http://carnegiewave.com/.

[10] «PIPO Systems,» 2017. [En línea]. Available: http://www.piposystems.com/sistema_aps-


pisys.php.

[11] H. Eidsmoen, «Hydrodynamic parameters for a two-body axissymmetric system,» Applied Ocean
Research 17 (1995) 103-115, 1995.

[12] Y. S. Y. Y. B. L. B. Y.H. Zhenga, «Hydrodynamic properties of two vertical truncated cylinders in


waves,» Ocean Engineering 32 241-271, 2005.

[13] G. B. F. F. John V.Ringwood, «Energy-Maximizing Control of Wave-Energy Converters».

[14] R. A. A. L. Wanan Sheng, «On Improving Wave Energy Conversion, Part I and Part II: Optimal and
Control Technologies,» 2013.

[15] D. d. C. d. E. d. l. O. Incidentes, «Biblioteca de Ingeniería de la Universidad de Sevilla,» [En línea].


Available: https://bibing.us.es/index/.

[16] D. M. M. M. a. J. X. J.K.H. Shek, «Reaction force control of a lineal electrical generator for direct
drive wave energy conversion».

[17] Z. Y. a. J. Falnes, «State-space Modelling of a Vertical Cylinder in Heave,» 1995.

[18] F. Oscilatorios, «Instituto Argentino de Oceanografía,» [En línea]. Available: http://www.iado-


conicet.gob.ar/.

Marta Núñez-Samper Muñoz 85


REFERENCIAS

[19] T. d. l. I. G. U. d. Sevilla, «Age-Grografia,» 2010. [En línea]. Available: www.age-geografia.es.

[20] L. H. Holthuijsen, Waves in Oceanic and Coastal Waters, Cambridge.

[21] «Texas Instruments,» [En línea]. Available: https://www.ti.com/.

86 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

ANEXO 1. CÓDIGO MATLAB


Primero se cargan los datos del sistema de los ficheros de datos proporcionados por el profesor Hugo
Rocha: Boya01_datos.mat, Boya01_ParHid.m y boya01_sisHr.mat.

ANEXO 1.1. CÁLCULO Y REPRESENTACIÓN DE RAO


g=9.80665;
K=rhof*g*pi*r^2;

for i=1:1:length(w)

f(i)=w(i)/(2*pi);
T(i)=2*pi/w(i);
RAO(i)=(HeMod(i))/(-w(i)^2*(m+Aw(i))+j*w(i)*Bw(i)+K);

end

figure
plot(w, abs(RAO))
wres=sqrt(K/(m+Aw(length(Aw)))); %w de resonancia

ANEXO 1.2. MUESTREO DE FRECUENCIA Y REPRESENTACIÓN DE RAO PARA LAS


FRECUENCIAS MUESTREADAS
g=9.80665;
K=rhof*g*pi*r^2;

muestras=10;
contador=1;
ts=10000e-6;

for i=0.001:round((6-0.001)/(muestras-1), 3):6.1

index=find(round(w,3)==round(i,3)); %encuentra el indice de w() que


coincide con la w de i
w10(contador)=w(index);
f10(contador)=w10(contador)/(2*pi);
T10(contador)=2*pi/w10(contador);
B10(contador)=Bw(index);
A10(contador)=Aw(index);
HeMod10(contador)=HeMod(index);
RAO10(contador)=(HeMod10(contador))/(-
w10(contador)^2*(m+A10(contador))+j*w10(contador)*B10(contador)+K);
RAO10_PRUEBA(contador)=(HeMod10(contador))/(-
w10(contador)^2*(m+A10(contador))+j*w10(contador)*B10(contador)+K);

if contador==1
G_1=tf([HeMod10(contador)],[m+A10(contador) B10(contador) K])
sysd_1=c2d(G_1,ts,'tustin')
end
if contador==2
G_2=tf([HeMod10(contador)],[m+A10(contador) B10(contador) K])
sysd_2=c2d(G_2,ts,'tustin')

Marta Núñez-Samper Muñoz 87


ANEXO 1. CÓDIGO MATLAB

end
if contador==3
G_3=tf([HeMod10(contador)],[m+A10(contador) B10(contador) K])
sysd_3=c2d(G_3,ts,'tustin')
end
if contador==4
G_4=tf([HeMod10(contador)],[m+A10(contador) B10(contador) K])
sysd_4=c2d(G_4,ts,'tustin')
end
if contador==5
G_5=tf([HeMod10(contador)],[m+A10(contador) B10(contador) K])
sysd_5=c2d(G_5,ts,'tustin')
end
if contador==6
G_6=tf([HeMod10(contador)],[m+A10(contador) B10(contador) K])
sysd_6=c2d(G_6,ts,'tustin')
end
if contador==7
G_7=tf([HeMod10(contador)],[m+A10(contador) B10(contador) K])
sysd_7=c2d(G_7,ts,'tustin')
end
if contador==8
G_8=tf([HeMod10(contador)],[m+A10(contador) B10(contador) K])
sysd_8=c2d(G_8,ts,'tustin')
end
if contador==9
G_9=tf([HeMod10(contador)],[m+A10(contador) B10(contador) K])
sysd_9=c2d(G_9,ts,'tustin')
end
if contador==10
G_10=tf([HeMod10(contador)],[m+A10(contador) B10(contador) K])
sysd_10=c2d(G_10,ts,'tustin')
end

contador=contador+1;
end

figure
plot(w10, abs(RAO10))
wres10=sqrt(K/(m+Aw(length(Aw))))

ANEXO 1.3. CÁLCULO DE LA SALIDA DESPLAZAMIENTO DE LA BOYA A DOS FRECUENCIAS


DISTINTAS MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE REGULAR ANTE
OLEAJE REGULAR

• Frecuencia w=2,0020 rad/seg:

%CASO 4
caso=4;

ts=10000e-6;

amp_entrada=1;

Ent_0(caso)=0;
Ent_1(caso)=0;
Ent_2(caso)=0;

88 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Sal_0(caso)=0;
Sal_1(caso)=0;
Sal_2(caso)=0;
entrada=0;
contador=1;

G_4=tf([HeMod10(caso)],[m+A10(caso) B10(caso) K]);


sysd_4=c2d(G_4,ts,'tustin');

w_caso=w10(caso);
f_caso=f10(caso);
b2(caso)=sysd_4.Numerator{1,1}(1);
b1(caso)=sysd_4.Numerator{1,1}(2);
b0(caso)=sysd_4.Numerator{1,1}(3);
a2(caso)=sysd_4.Denominator{1,1}(1);
a1(caso)=sysd_4.Denominator{1,1}(2);
a0(caso)=sysd_4.Denominator{1,1}(3);
t_total=500;

for t=0:ts:t_total

entrada=amp_entrada*sin(w_caso*t);
Ent_2(caso)=entrada;
Ent_2_vector4(contador)=Ent_2(caso);

Sal_2(caso)=(Ent_2(caso)*b2(caso)+Ent_1(caso)*b1(caso)+Ent_0(caso)*b0(ca
so)-Sal_1(caso)*a1(caso)-Sal_0(caso)*a0(caso))/a2(caso);
Sal_2_vector4(contador)=Sal_2(caso);

Ent_0(caso)=Ent_1(caso);
Ent_1(caso)=Ent_2(caso);
Sal_0(caso)=Sal_1(caso);
Sal_1(caso)=Sal_2(caso);
contador=contador+1;

end

figure
plot(0:ts:t_total, Ent_2_vector4)

figure
plot(0:ts:t_total, Sal_2_vector4)

• Frecuencia w=4,6700 rad/seg:


%CASO 8
caso=8;

ts=10000e-6;

amp_entrada=1;

Ent_0(caso)=0;
Ent_1(caso)=0;
Ent_2(caso)=0;
Sal_0(caso)=0;
Sal_1(caso)=0;
Sal_2(caso)=0;

Marta Núñez-Samper Muñoz 89


ANEXO 1. CÓDIGO MATLAB

entrada=0;
contador=1;

G_6=tf([HeMod10(caso)],[m+A10(caso) B10(caso) K]);


sysd_6=c2d(G_6,ts,'tustin');

w_caso=w10(caso);
f_caso=f10(caso);
b2(caso)=sysd_6.Numerator{1,1}(1);
b1(caso)=sysd_6.Numerator{1,1}(2);
b0(caso)=sysd_6.Numerator{1,1}(3);
a2(caso)=sysd_6.Denominator{1,1}(1);
a1(caso)=sysd_6.Denominator{1,1}(2);
a0(caso)=sysd_6.Denominator{1,1}(3);
t_total=500;

for t=0:ts:t_total

entrada=amp_entrada*sin(w_caso*t);
Ent_2(caso)=entrada;
Ent_2_vector6(contador)=Ent_2(caso);

Sal_2(caso)=(Ent_2(caso)*b2(caso)+Ent_1(caso)*b1(caso)+Ent_0(caso)*b0(ca
so)-Sal_1(caso)*a1(caso)-Sal_0(caso)*a0(caso))/a2(caso);
Sal_2_vector6(contador)=Sal_2(caso);

Ent_0(caso)=Ent_1(caso);
Ent_1(caso)=Ent_2(caso);
Sal_0(caso)=Sal_1(caso);
Sal_1(caso)=Sal_2(caso);
contador=contador+1;

end

figure
plot(0:ts:t_total, Ent_2_vector6)

figure
plot(0:ts:t_total, Sal_2_vector6)

ANEXO 1.4. CÁLCULO DE LA SALIDA DESPLAZAMIENTO DE LA BOYA A UNA FRECUENCIA


DETERMINADA MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE IRREGULAR
ANTE OLEAJE REGULAR

Frecuencia w=2,0020 rad/seg:

caso=4;

%inicializacion de variables
Ent_7_x=0;
Ent_6_x=0;
Ent_5_x=0;
Ent_4_x=0;
Ent_3_x=0;

90 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Ent_2_x=0;
Ent_1_x=0;
Ent_0_x=0;
Sal_7_x=0;
Sal_6_x=0;
Sal_5_x=0;
Sal_4_x=0;
Sal_3_x=0;
Sal_2_x=0;
Sal_1_x=0;
Sal_0_x=0;

Ent_7_v=0;
Ent_6_v=0;
Ent_5_v=0;
Ent_4_v=0;
Ent_3_v=0;
Ent_2_v=0;
Ent_1_v=0;
Ent_0_v=0;
Sal_7_v=0;
Sal_6_v=0;
Sal_5_v=0;
Sal_4_v=0;
Sal_3_v=0;
Sal_2_v=0;
Sal_1_v=0;
Sal_0_v=0;

Ent_2_v_r=0;
Ent_1_v_r=0;
Ent_0_v_r=0;
Sal_2_v_r=0;
Sal_1_v_r=0;
Sal_0_v_r=0;

Ent_5_fr=0;
Ent_4_fr=0;
Ent_3_fr=0;
Ent_2_fr=0;
Ent_1_fr=0;
Ent_0_fr=0;
Sal_5_fr=0;
Sal_4_fr=0;
Sal_3_fr=0;
Sal_2_fr=0;
Sal_1_fr=0;
Sal_0_fr=0;

altura_ola=0;
contador=1;

%declaracion de parámetros
Bw=B10(caso);
He=HeMod10(caso);
g=9.80665;
K=rhof*g*pi*r^2;
ts=10000e-6;

Marta Núñez-Samper Muñoz 91


ANEXO 1. CÓDIGO MATLAB

%F de transferencia para la fuerza de radiacion


G_fr=tf(sis_hr5);
sysd_fr=c2d(G_fr, ts, 'tustin');
b5_fr=sysd_fr.Numerator{1,1}(1);
b4_fr=sysd_fr.Numerator{1,1}(2);
b3_fr=sysd_fr.Numerator{1,1}(3);
b2_fr=sysd_fr.Numerator{1,1}(4);
b1_fr=sysd_fr.Numerator{1,1}(5);
b0_fr=sysd_fr.Numerator{1,1}(6);
a5_fr=sysd_fr.Denominator{1,1}(1);
a4_fr=sysd_fr.Denominator{1,1}(2);
a3_fr=sysd_fr.Denominator{1,1}(3);
a2_fr=sysd_fr.Denominator{1,1}(4);
a1_fr=sysd_fr.Denominator{1,1}(5);
a0_fr=sysd_fr.Denominator{1,1}(6);

%F de transferencia x_boya/altura_ola
%irregular

M=m+Aw(length(Aw));
D=0;
C=[1 0 0 0 0 0 0];
B=[0;1/M;0;0;0;0;0];
A=zeros(5,5);
A(1,2)=1;
A(2,1)=-K/M;
A(2,2)=-sis_hr5.D/M;
for i=1:1:5
A(2,i+2)=-sis_hr5.C(i)/M;
end
for i=1:1:5
A(i+2,2)=sis_hr5.B(i);
end
for i=1:1:5

for p=1:1:5
A(i+2,p+2)=sis_hr5.A(i,p);
end
end

%Creamos el sistema
sistema=ss(A,B,C,D);
%Hallamos la función de transferencia
G_x=tf(sistema);
%Discretizamos la función de transferencia
G_dis_x=c2d(G_x, ts, 'tustin');

b7_x=G_dis_x.Numerator{1,1}(1);
b6_x=G_dis_x.Numerator{1,1}(2);
b5_x=G_dis_x.Numerator{1,1}(3);
b4_x=G_dis_x.Numerator{1,1}(4);
b3_x=G_dis_x.Numerator{1,1}(5);
b2_x=G_dis_x.Numerator{1,1}(6);
b1_x=G_dis_x.Numerator{1,1}(7);
b0_x=G_dis_x.Numerator{1,1}(8);
a7_x=G_dis_x.Denominator{1,1}(1);
a6_x=G_dis_x.Denominator{1,1}(2);
a5_x=G_dis_x.Denominator{1,1}(3);
a4_x=G_dis_x.Denominator{1,1}(4);
a3_x=G_dis_x.Denominator{1,1}(5);

92 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

a2_x=G_dis_x.Denominator{1,1}(6);
a1_x=G_dis_x.Denominator{1,1}(7);
a0_x=G_dis_x.Denominator{1,1}(8);

%F de transferencia v_boya/altura_ola
%regular
s=tf('s');
G_4_v_r=G_4*s;
sysd_4_v_r =c2d(G_4_v_r, ts, 'tustin');
b2_v_r =sysd_4_v_r.Numerator{1,1}(1);
b1_v_r =sysd_4_v_r.Numerator{1,1}(2);
b0_v_r =sysd_4_v_r.Numerator{1,1}(3);
a2_v_r =sysd_4_v_r.Denominator{1,1}(1);
a1_v_r =sysd_4_v_r.Denominator{1,1}(2);
a0_v_r =sysd_4_v_r.Denominator{1,1}(3);

%irregular
s=tf('s');
G_v=G_x*s;
G_dis_v=c2d(G_v, ts, 'tustin');
b7_v=G_dis_v.Numerator{1,1}(1);
b6_v=G_dis_v.Numerator{1,1}(2);
b5_v=G_dis_v.Numerator{1,1}(3);
b4_v=G_dis_v.Numerator{1,1}(4);
b3_v=G_dis_v.Numerator{1,1}(5);
b2_v=G_dis_v.Numerator{1,1}(6);
b1_v=G_dis_v.Numerator{1,1}(7);
b0_v=G_dis_v.Numerator{1,1}(8);
a7_v=G_dis_v.Denominator{1,1}(1);
a6_v=G_dis_v.Denominator{1,1}(2);
a5_v=G_dis_v.Denominator{1,1}(3);
a4_v=G_dis_v.Denominator{1,1}(4);
a3_v=G_dis_v.Denominator{1,1}(5);
a2_v=G_dis_v.Denominator{1,1}(6);
a1_v=G_dis_v.Denominator{1,1}(7);
a0_v=G_dis_v.Denominator{1,1}(8);

t_total=500;

for t=0:ts:t_total

altura_ola=sin(w10(caso)*t);

%calculo teorico de la posición de la boya


%irregular
Ent_7_x=altura_ola*He;
Ent_7_vector_x(contador)=Ent_7_x;

Sal_7_x=(Ent_7_x*b7_x+Ent_6_x*b6_x+Ent_5_x*b5_x+Ent_4_x*b4_x+Ent_3_x*b3_
x+Ent_2_x*b2_x+Ent_1_x*b1_x+Ent_0_x*b0_x-Sal_6_x*a6_x-Sal_5_x*a5_x-
Sal_4_x*a4_x-Sal_3_x*a3_x-Sal_2_x*a2_x-Sal_1_x*a1_x-Sal_0_x*a0_x)/a7_x;
Sal_7_vector_x(contador)=Sal_7_x;

Ent_0_x=Ent_1_x;
Ent_1_x=Ent_2_x;
Ent_2_x=Ent_3_x;
Ent_3_x=Ent_4_x;

Marta Núñez-Samper Muñoz 93


ANEXO 1. CÓDIGO MATLAB

Ent_4_x=Ent_5_x;
Ent_5_x=Ent_6_x;
Ent_6_x=Ent_7_x;
Sal_0_x=Sal_1_x;
Sal_1_x=Sal_2_x;
Sal_2_x=Sal_3_x;
Sal_3_x=Sal_4_x;
Sal_4_x=Sal_5_x;
Sal_5_x=Sal_6_x;
Sal_6_x=Sal_7_x;

%calculo teorico de la velocidad de la boya


%regular
Ent_2_v_r=altura_ola*He;
Sal_2_v_r=(Ent_2_v_r*b2_v_r+Ent_1_v_r*b1_v_r+Ent_0_v_r*b0_v_r-
Sal_1_v_r*a1_v_r-Sal_0_v_r*a0_v_r)/a2_v_r;
Sal_2_v_vector_r(contador)=Sal_2_v_r;

Ent_0_v_r=Ent_1_v_r;
Ent_1_v_r=Ent_2_v_r;
Sal_0_v_r=Sal_1_v_r;
Sal_1_v_r=Sal_2_v_r;

%irregular
Ent_7_v=altura_ola*He;
Ent_7_vector_v(contador)=Ent_7_v;

Sal_7_v=(Ent_7_v*b7_v+Ent_6_v*b6_v+Ent_5_v*b5_v+Ent_4_v*b4_v+Ent_3_v*b3_
v+Ent_2_v*b2_v+Ent_1_v*b1_v+Ent_0_v*b0_v-Sal_6_v*a6_v-Sal_5_v*a5_v-
Sal_4_v*a4_v-Sal_3_v*a3_v-Sal_2_v*a2_v-Sal_1_v*a1_v-Sal_0_v*a0_v)/a7_v;
Sal_7_vector_v(contador)=Sal_7_v;

Ent_0_v=Ent_1_v;
Ent_1_v=Ent_2_v;
Ent_2_v=Ent_3_v;
Ent_3_v=Ent_4_v;
Ent_4_v=Ent_5_v;
Ent_5_v=Ent_6_v;
Ent_6_v=Ent_7_v;
Sal_0_v=Sal_1_v;
Sal_1_v=Sal_2_v;
Sal_2_v=Sal_3_v;
Sal_3_v=Sal_4_v;
Sal_4_v=Sal_5_v;
Sal_5_v=Sal_6_v;
Sal_6_v=Sal_7_v;

%fuerza de radiacion
Ent_5_fr=Sal_7_v;

Sal_5_fr=(Ent_5_fr*b5_fr+Ent_4_fr*b4_fr+Ent_3_fr*b3_fr+Ent_2_fr*b2_fr+En
t_1_fr*b1_fr+Ent_0_fr*b0_fr-Sal_4_fr*a4_fr-Sal_3_fr*a3_fr-
Sal_2_fr*a2_fr-Sal_1_fr*a1_fr-Sal_0_fr*a0_fr)/a5_fr;

Ent_0_fr=Ent_1_fr;

94 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Ent_1_fr=Ent_2_fr;
Ent_2_fr=Ent_3_fr;
Ent_3_fr=Ent_4_fr;
Ent_4_fr=Ent_5_fr;
Sal_0_fr=Sal_1_fr;
Sal_1_fr=Sal_2_fr;
Sal_2_fr=Sal_3_fr;
Sal_3_fr=Sal_4_fr;
Sal_4_fr=Sal_5_fr;

Fr(contador)=Sal_5_fr;
Fb(contador)=Sal_7_x*K;
Fex(contador)=altura_ola*He;
Fboya(contador)=Fex(contador)-Fr(contador)-Fb(contador);

contador=contador+1;

end

figure
plot(0:1000e-6:t_total, Sal_2_vector4)
hold
plot(0:ts:t_total,Sal_7_vector_x)
figure
plot(0:ts:t_total,Sal_7_vector_v_r)
hold
plot(0:ts:t_total,Sal_7_vector_v)

figure
plot(0:ts:t_total, Fr)
hold
plot(0:ts:t_total, Fb)
plot(0:ts:t_total, Fex)
plot(0:ts:t_total, Fboya)

figure
plot(0:1000e-6:t_total, Sal_7_vector_v_r *B10(4))
hold
plot(0:ts:t_total, Fr)

ANEXO 1.5. GENERACIÓN DEL OLEAJE IRREGULAR

[SOla,fOla]=especola ('ITTC',0:0.001:.35,[2 10],'Te');


plot(fOla,SOla)
[tOla,zeta,fe] = genolaFe([0 0], 0:ts:t_total, 300, SOla, fOla, 0, w,
HeMod, HeFase);
plot(tOla, zeta)
plot(tOla, fe)

Función genolaFe.m : (prestada por el profesor Hugo Rocha)


function [t,zeta,fe] = genolaFe(pos,t,N,S,f,ang,wHid,HeMod,HeFase)
%GENOLA Generación de oleaje y de la fuerza de excitación aplicada una
% estructura flotante.
%
% GENOLA genera matematicamente un oleaje de cresta larga o cresta corta
% desde el espectro de ola previamente calculado.
% La frecuencia de muestreo del espectro de ola debe ser menor o igual a

Marta Núñez-Samper Muñoz 95


ANEXO 1. CÓDIGO MATLAB

% 0.0001 Hz.
% Según la característica del espectro, o sea, si es bi- o
% tri-dimensional, la función genera un oleaje de cresta larga o corta,
% respectivamente.
%
% [t,zeta] = genola(pos,t,N,S,f,ang,wHid,HeMod,HeFase)
% t - vector del tiempo de simulación.
% zeta - matriz de altura del oleaje en que cada columna representa
% una coordenada.
% fe - matriz de la fuerza de excitación para una dada estructura
% flotanto en que cada columna representa una coordenada.
% pos - coordinadas de los puntos de generación del oleaje
% [x1 y1; x2 y2; ...; xn yn].
% t - vector de tiempo de la serie temporal.
% N - número de armónicos a ser utilizados.
% S - espectro de la ola.
% f - vector de frecuencias del espectro de ola.
% ang - angulo de frente de ola (grados) con relación
% al eje-x positivo; en el caso de generación de oleaje de
% cresta corta, es la malla de los ángulos generada en la
% función espcola.
% wHid - frecuencia de los parámetros hidrodinámicos.
% HeMod - módulo del coeficiente de fuerza de excitación.
% HeFase - fase del coeficiente de fuerza de excitación.

if nargin ~= 9
error('¡Número de entradas invalido!')
end

if isvector(S) % oleaje de cresta larga

fprintf('\nGenerando oleaje de cresta larga... \n\n\n\n\n')


fprintf('\b\b\b\b\b\b%5.1f%%',0);

t = t';
x = pos(:,1);
y = pos(:,2);
theta = ang*pi/180;

w = 0.0001:1e-4:2*pi*max(f);
Sw = interp1(2*pi*f,S/2/pi,w);
Sw(isnan(Sw)) = 0;
HeMod = interp1(wHid,HeMod,w);
HeFase = interp1(wHid,HeFase,w);

% Cálculo del espectro de la fuerza de excitación para un dado oleaje


Sfe = HeMod.^2.*Sw;
Sfe(isnan(Sfe)) = 0;

wNueva = linspace(min(w),max(w),N+1); % nueva muestras de frecuencia


dw = (max(wNueva)-min(wNueva))/(N+1);
% armónico con valor central de la frecuencia aleatório
wN = roundn(rand(1,N)*dw,-4) + wNueva(1:end-1);
[~,idx]=ismember(roundn(wN,-4),roundn(w,-4));

Zeta = sqrt(2*Sw(idx)*dw); % amplitud de los armónicos de la ola


Fe = sqrt(2*Sfe(idx)*dw); % amplitud de la fuerza de excitación
e = random('unif',0,2*pi,1,N); % fase aleatória del oleaje

96 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

zeta = zeros(length(t),length(x));
fe = zeros(length(t),length(x));
for contPos = 1:length(x)
zetaaux = zeros(length(t),1);
feaux = zeros(length(t),1);
for n = 1:N
k = w(idx(n))^2/9.81;
kx = k*cos(theta);
ky = k*sin(theta);
zetaaux = zetaaux + Zeta(n)*cos(w(idx(n))*t - ...
kx*x(contPos) - ky*y(contPos) + e(n));
feaux = feaux + Fe(n)*cos(w(idx(n))*t - ...
kx*x(contPos) - ky*y(contPos) + e(n) + ...
HeFase(idx(n))*pi/180);
end
zeta(:,contPos) = zetaaux;
fe(:,contPos) = feaux;
fprintf('\b\b\b\b\b\b%5.1f%%',contPos/length(x)*100);
end
fprintf('\n\n¡Oleaje generado!\n')

end

Función especola.m : (prestada por el profesor Hugo Rocha)


function [varargout] = especola(tipoEspc,x,ParOlas,varargin)

g = 9.80665; % aceleración de la gravidad

if nargin==3

disp('Espectro de ola S(f)')

f = x;
Hs = ParOlas(1);
T = ParOlas(2);
fe = 1/T;
Te = T;

switch tipoEspc

case 'jonswap'

if length(ParOlas) == 2

disp('JONSWAP')

gam = 3.3;

else

disp('JONSWAP com gamma definido por el usuario.')

gam = ParOlas(3);

end

Marta Núñez-Samper Muñoz 97


ANEXO 1. CÓDIGO MATLAB

fp = fe*(0.8255 + 0.03852*gam - 0.005537*gam^2 +


0.0003154*gam^3);
a = 0.0624/(0.230 + 0.0336*gam - 0.185*(1.9 + gam)^-1);
tau(f<=fp) = 0.07;
tau(f>fp) = 0.09;

varargout{1} = a*Hs^2*(f.^-5/fp^-4).*exp(-1.25*(f/fp).^-
4).*gam.^exp(-(f-fp).^2./(2*tau.^2*fp^2));
varargout{2} = f;

case 'ITTC'

disp('ITTC')

K = Te/2.137*sqrt(g/Hs);
A = 0.0081*g^2/K^4;
B = 0.0081*4*g^2/K^4/Hs^2;

varargout{1} = (A*f.^-5).*exp(-B*f.^-4);
varargout{2} = f;

otherwise

error('¡Tipo de espectro incorrecto!')

end

elseif nargin==4

disp('Espectro de ola S(f) con tipo de período definido por el


usuario.')

f = x;
Hs = ParOlas(1);
T = ParOlas(2);

switch tipoEspc

case 'jonswap'

if length(ParOlas) == 2

disp('JONSWAP')

gam = 3.3;

else

disp('JONSWAP com gamma definido por el usuario.')

gam = ParOlas(3);

end

switch varargin{1}

98 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

case 'Te'

disp('Te')

fe = 1/T;
fp = fe*(0.8255 + 0.03852*gam - 0.005537*gam^2 +
0.0003154*gam^3);

case 'Tp'

disp('Tp')

fp = 1/T;

case 'T1'

disp('T1')

f1 = 1/T;
fp = f1*(0.7303 + 0.04936*gam - 0.006556*gam^2 +
0.0003610*gam^3);

case 'Tz'

disp('Tz')

fz = 1/T;
fp = fz*(0.6673 + 0.05037*gam - 0.006230*gam^2 +
0.0003341*gam^3);

otherwise

error('¡Tipo de período incorrecto!')

end

a = 0.0624/(0.230 + 0.0336*gam - 0.185*(1.9 + gam)^-1);


tau(f<=fp) = 0.07;
tau(f>fp) = 0.09;

varargout{1} = a*Hs^2*(f.^-5/fp^-4).*exp(-1.25*(f/fp).^-
4).*gam.^exp(-(f-fp).^2./(2*tau.^2*fp^2));
varargout{2} = f;

case 'ITTC'

disp('ITTC')

switch varargin{1}

case 'Te'

disp('Te')

Te = T;
K = Te/2.137*sqrt(g/Hs);

Marta Núñez-Samper Muñoz 99


ANEXO 1. CÓDIGO MATLAB

case 'Tp'

disp('Tp')

Tp = T;
K = Tp/2.492*sqrt(g/Hs);

case 'T1'

disp('T1')

T1 = T;
K = T1/1.924*sqrt(g/Hs);

case 'Tz'

disp('Tz')

Tz = T;
K = Tz/1.771*sqrt(g/Hs);

otherwise

error('¡Tipo de período incorrecto!')

end

A = 0.0081*g^2/K^4;
B = 0.0081*4*g^2/K^4/Hs^2;

varargout{1} = (A*f.^-5).*exp(-B*f.^-4);
varargout{2} = f;

otherwise

error('¡Tipo de espectro incorrecto!')

end

elseif nargin==6

disp('Espectro direccional de ola S(f,theta).')

Hs = ParOlas(1);
T = ParOlas(2);
X0 = varargin{2}(1);
n = varargin{2}(2);
X = varargin{3} + X0;

% Función de esparcimiento
Xd = X - X0;
Xd(abs(Xd)>=90) = []; % -90º < X-X0 < 90º
Xd = unique([Xd 0])*pi/180;
[f,chi] = meshgrid(x,Xd); % malla del espectro de ola

100 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

% multidireccional
varargout{2} = f;
varargout{3} = chi+X0*pi/180;
G = (2^(2*n-1)*factorial(n)*factorial(n-1)/pi/...
factorial(2*n-1)).*cos(chi).^(2*n);

switch tipoEspc

case 'jonswap'

if length(ParOlas) == 2

disp('JONSWAP')

gam = 3.3;

else

disp('JONSWAP com gamma definido por el usuario.')

gam = ParOlas(3);

end

switch varargin{1}

case 'Te'

disp('Te')

fe = 1/T;
fp = fe*(0.8255 + 0.03852*gam - 0.005537*gam^2 +
0.0003154*gam^3);

case 'Tp'

disp('Tp')

fp = 1/T;

case 'T1'

disp('T1')

f1 = 1/T;
fp = f1*(0.7303 + 0.04936*gam - 0.006556*gam^2 +
0.0003610*gam^3);

case 'Tz'

disp('Tz')

fz = 1/T;
fp = fz*(0.6673 + 0.05037*gam - 0.006230*gam^2 +
0.0003341*gam^3);

Marta Núñez-Samper Muñoz 101


ANEXO 1. CÓDIGO MATLAB

otherwise

error('¡Tipo de período incorrecto!')

end

a = 0.0624/(0.230 + 0.0336*gam - 0.185*(1.9 + gam)^-1);


tau(f<=fp) = 0.07;
tau(f>fp) = 0.09;

Sz = a*Hs^2*(f.^-5/fp^-4).*exp(-1.25*(f/fp).^-4).*gam.^exp(-(f-
fp).^2./(2*tau.^2*fp^2));
varargout{2} = f;

case 'ITTC'

disp('ITTC')

switch varargin{1}

case 'Te'

disp('Te')

Te = T;
K = Te/2.137*sqrt(g/Hs);

case 'Tp'

disp('Tp')

Tp = T;
K = Tp/2.492*sqrt(g/Hs);

case 'T1'

disp('T1')

T1 = T;
K = T1/1.924*sqrt(g/Hs);

case 'Tz'

disp('Tz')

Tz = T;
K = Tz/1.771*sqrt(g/Hs);

otherwise

error('¡Tipo de período incorrecto!')

end

A = 0.0081*g^2/K^4;
B = 0.0081*4*g^2/K^4/Hs^2;

102 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Sz = (A*f.^-5).*exp(-B*f.^-4);
varargout{2} = f;

otherwise

error('¡Tipo de espectro incorrecto!')

end

% Espectro direccional
varargout{1} = Sz.*G;

end

ANEXO 1.6. CÁLCULOS MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE


IRREGULAR ANTE OLEAJE IRREGULAR

caso=4;

%inicializacion de variables
Ent_7_x=0;
Ent_6_x=0;
Ent_5_x=0;
Ent_4_x=0;
Ent_3_x=0;
Ent_2_x=0;
Ent_1_x=0;
Ent_0_x=0;
Sal_7_x=0;
Sal_6_x=0;
Sal_5_x=0;
Sal_4_x=0;
Sal_3_x=0;
Sal_2_x=0;
Sal_1_x=0;
Sal_0_x=0;

Ent_7_v=0;
Ent_6_v=0;
Ent_5_v=0;
Ent_4_v=0;
Ent_3_v=0;
Ent_2_v=0;
Ent_1_v=0;
Ent_0_v=0;
Sal_7_v=0;
Sal_6_v=0;
Sal_5_v=0;
Sal_4_v=0;
Sal_3_v=0;
Sal_2_v=0;
Sal_1_v=0;
Sal_0_v=0;

Ent_5_fr=0;
Ent_4_fr=0;

Marta Núñez-Samper Muñoz 103


ANEXO 1. CÓDIGO MATLAB

Ent_3_fr=0;
Ent_2_fr=0;
Ent_1_fr=0;
Ent_0_fr=0;
Sal_5_fr=0;
Sal_4_fr=0;
Sal_3_fr=0;
Sal_2_fr=0;
Sal_1_fr=0;
Sal_0_fr=0;

altura_ola=0;
contador=1;

%declaracion de parámetros
Bw=B10(caso);
He=HeMod10(caso);
g=9.80665;
K=rhof*g*pi*r^2;
ts=10000e-6;

%F de transferencia para la fuerza de radiacion


G_fr=tf(sis_hr5);
sysd_fr=c2d(G_fr, ts, 'tustin');
b5_fr=sysd_fr.Numerator{1,1}(1);
b4_fr=sysd_fr.Numerator{1,1}(2);
b3_fr=sysd_fr.Numerator{1,1}(3);
b2_fr=sysd_fr.Numerator{1,1}(4);
b1_fr=sysd_fr.Numerator{1,1}(5);
b0_fr=sysd_fr.Numerator{1,1}(6);
a5_fr=sysd_fr.Denominator{1,1}(1);
a4_fr=sysd_fr.Denominator{1,1}(2);
a3_fr=sysd_fr.Denominator{1,1}(3);
a2_fr=sysd_fr.Denominator{1,1}(4);
a1_fr=sysd_fr.Denominator{1,1}(5);
a0_fr=sysd_fr.Denominator{1,1}(6);

%F de transferencia x_boya/altura_ola
M=m+Aw(length(Aw));
D=0;
C=[1 0 0 0 0 0 0];
B=[0;1/M;0;0;0;0;0];
A=zeros(5,5);
A(1,2)=1;
A(2,1)=-K/M;
A(2,2)=-sis_hr5.D/M;
for i=1:1:5
A(2,i+2)=-sis_hr5.C(i)/M;
end
for i=1:1:5
A(i+2,2)=sis_hr5.B(i);
end
for i=1:1:5

for p=1:1:5
A(i+2,p+2)=sis_hr5.A(i,p);
end
end

104 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

%Creamos el sistema
sistema=ss(A,B,C,D);
%Hallamos la función de transferencia
G_x=tf(sistema);
%Discretizamos la función de transferencia
G_dis_x=c2d(G_x, ts, 'tustin');

b7_x=G_dis_x.Numerator{1,1}(1);
b6_x=G_dis_x.Numerator{1,1}(2);
b5_x=G_dis_x.Numerator{1,1}(3);
b4_x=G_dis_x.Numerator{1,1}(4);
b3_x=G_dis_x.Numerator{1,1}(5);
b2_x=G_dis_x.Numerator{1,1}(6);
b1_x=G_dis_x.Numerator{1,1}(7);
b0_x=G_dis_x.Numerator{1,1}(8);
a7_x=G_dis_x.Denominator{1,1}(1);
a6_x=G_dis_x.Denominator{1,1}(2);
a5_x=G_dis_x.Denominator{1,1}(3);
a4_x=G_dis_x.Denominator{1,1}(4);
a3_x=G_dis_x.Denominator{1,1}(5);
a2_x=G_dis_x.Denominator{1,1}(6);
a1_x=G_dis_x.Denominator{1,1}(7);
a0_x=G_dis_x.Denominator{1,1}(8);

%F de transferencia v_boya/altura_ola
%irregular
s=tf('s');
G_v=G_x*s;
G_dis_v=c2d(G_v, ts, 'tustin');
b7_v=G_dis_v.Numerator{1,1}(1);
b6_v=G_dis_v.Numerator{1,1}(2);
b5_v=G_dis_v.Numerator{1,1}(3);
b4_v=G_dis_v.Numerator{1,1}(4);
b3_v=G_dis_v.Numerator{1,1}(5);
b2_v=G_dis_v.Numerator{1,1}(6);
b1_v=G_dis_v.Numerator{1,1}(7);
b0_v=G_dis_v.Numerator{1,1}(8);
a7_v=G_dis_v.Denominator{1,1}(1);
a6_v=G_dis_v.Denominator{1,1}(2);
a5_v=G_dis_v.Denominator{1,1}(3);
a4_v=G_dis_v.Denominator{1,1}(4);
a3_v=G_dis_v.Denominator{1,1}(5);
a2_v=G_dis_v.Denominator{1,1}(6);
a1_v=G_dis_v.Denominator{1,1}(7);
a0_v=G_dis_v.Denominator{1,1}(8);

t_total=500;

for t=0:ts:t_total

entrada=fe(contador,1);

%irregular
Ent_7_x=entrada;
Ent_7_vector_x(contador)=Ent_7_x;

Sal_7_x=(Ent_7_x*b7_x+Ent_6_x*b6_x+Ent_5_x*b5_x+Ent_4_x*b4_x+Ent_3_x*b
3_x+Ent_2_x*b2_x+Ent_1_x*b1_x+Ent_0_x*b0_x-Sal_6_x*a6_x-Sal_5_x*a5_x-

Marta Núñez-Samper Muñoz 105


ANEXO 1. CÓDIGO MATLAB

Sal_4_x*a4_x-Sal_3_x*a3_x-Sal_2_x*a2_x-Sal_1_x*a1_x-
Sal_0_x*a0_x)/a7_x;

Sal_7_vector_x(contador)=Sal_7_x;

Ent_0_x=Ent_1_x;
Ent_1_x=Ent_2_x;
Ent_2_x=Ent_3_x;
Ent_3_x=Ent_4_x;
Ent_4_x=Ent_5_x;
Ent_5_x=Ent_6_x;
Ent_6_x=Ent_7_x;
Sal_0_x=Sal_1_x;
Sal_1_x=Sal_2_x;
Sal_2_x=Sal_3_x;
Sal_3_x=Sal_4_x;
Sal_4_x=Sal_5_x;
Sal_5_x=Sal_6_x;
Sal_6_x=Sal_7_x;

%irregular
Ent_7_v=entrada;
Ent_7_vector_v(contador)=Ent_7_v;

Sal_7_v=(Ent_7_v*b7_v+Ent_6_v*b6_v+Ent_5_v*b5_v+Ent_4_v*b4_v+Ent_3_v*b3_
v+Ent_2_v*b2_v+Ent_1_v*b1_v+Ent_0_v*b0_v-Sal_6_v*a6_v-Sal_5_v*a5_v-
Sal_4_v*a4_v-Sal_3_v*a3_v-Sal_2_v*a2_v-Sal_1_v*a1_v-Sal_0_v*a0_v)/a7_v;

Sal_7_vector_v(contador)=Sal_7_v;

Ent_0_v=Ent_1_v;
Ent_1_v=Ent_2_v;
Ent_2_v=Ent_3_v;
Ent_3_v=Ent_4_v;
Ent_4_v=Ent_5_v;
Ent_5_v=Ent_6_v;
Ent_6_v=Ent_7_v;
Sal_0_v=Sal_1_v;
Sal_1_v=Sal_2_v;
Sal_2_v=Sal_3_v;
Sal_3_v=Sal_4_v;
Sal_4_v=Sal_5_v;
Sal_5_v=Sal_6_v;
Sal_6_v=Sal_7_v;

%fuerza de radiacion
Ent_5_fr=Sal_7_v;

Sal_5_fr=(Ent_5_fr*b5_fr+Ent_4_fr*b4_fr+Ent_3_fr*b3_fr+Ent_2_fr*b2_fr+
Ent_1_fr*b1_fr+Ent_0_fr*b0_fr-Sal_4_fr*a4_fr-Sal_3_fr*a3_fr-
Sal_2_fr*a2_fr-Sal_1_fr*a1_fr-Sal_0_fr*a0_fr)/a5_fr;

Ent_0_fr=Ent_1_fr;
Ent_1_fr=Ent_2_fr;
Ent_2_fr=Ent_3_fr;
Ent_3_fr=Ent_4_fr;
Ent_4_fr=Ent_5_fr;

106 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

Sal_0_fr=Sal_1_fr;
Sal_1_fr=Sal_2_fr;
Sal_2_fr=Sal_3_fr;
Sal_3_fr=Sal_4_fr;
Sal_4_fr=Sal_5_fr;

Fr(contador)=Sal_5_fr;
Fb(contador)=Sal_7_x*K;
Fex(contador)=entrada;
Fboya(contador)=Fex(contador)-Fr(contador)-Fb(contador);

contador=contador+1;

end

figure
plot(0:ts:t_total,Sal_7_vector_x)
figure
plot(0:ts:t_total,Sal_7_vector_v)
figure
plot(0:ts:t_total,Fr)
hold
plot(0:ts:t_total,Fb)
plot(0:ts:t_total,Fex)
plot(0:ts:t_total,Fboya)

Marta Núñez-Samper Muñoz 107


ANEXO 1. CÓDIGO MATLAB

108 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”

ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR

ANEXO 2.1. CÁLCULO DE LA SALIDA DESPLAZAMIENTO DE LA BOYA A DOS FRECUENCIAS


DISTINTAS MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE REGULAR ANTE
OLEAJE REGULAR

• Frecuencia w=2,0020 rad/seg:

main.c:

//caso 4

h_ola=sin(w_caso*T_0);

//Calculo de la posicion de la boya


Ent_2_x=h_ola;
Sal_2_x=(Ent_2_x*b2_x+Ent_1_x*b1_x+Ent_0_x*b0_x-Sal_1_x*a1_x-
Sal_0_x*a0_x)/a2_x;

Ent_0_x=Ent_1_x;
Ent_1_x=Ent_2_x;
Sal_0_x=Sal_1_x;
Sal_1_x=Sal_2_x;

T_0=T_0+T_muestreo;

Variables_globales.h

double T_0=0.00000000;
#define T_muestreo 10000e-6

#define w_caso 2.002L

long double h_ola=0.0;

//Datos F transf posicion regular

long double Ent_2_x=0.0;


long double Ent_1_x=0.0;
long double Ent_0_x=0.0;
long double Sal_2_x=0.0;
long double Sal_1_x=0.0;
long double Sal_0_x=0.0;

#define a2_x 1.0L


#define a1_x -1.993992233948802L

Marta Núñez-Samper Muñoz 109


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
#define a0_x 0.994711758580418L
#define b2_x 9.011115253559439e-05L
#define b1_x 1.802223050711888e-04L
#define b0_x 9.011115253559439e-05L

• Frecuencia w=3,3360 rad/seg:

main.c

//caso 6

h_ola=sin(w_caso*T_0);

//Calculo de la posicion de la boya


Ent_2_x=h_ola;
Sal_2_x=(Ent_2_x*b2_x+Ent_1_x*b1_x+Ent_0_x*b0_x-Sal_1_x*a1_x-
Sal_0_x*a0_x)/a2_x;

Ent_0_x=Ent_1_x;
Ent_1_x=Ent_2_x;
Sal_0_x=Sal_1_x;
Sal_1_x=Sal_2_x;

T_0=T_0+T_muestreo;

Variables_globales.h

double T_0=0.00000000;
#define T_muestreo 10000e-6L

#define w_caso 3.3360L

long double h_ola=0.0;

//Datos F transf posicion regular

long double Ent_2_x=0.0;


long double Ent_1_x=0.0;
long double Ent_0_x=0.0;
long double Sal_2_x=0.0;
long double Sal_1_x=0.0;
long double Sal_0_x=0.0;

#define a2_x 1.0L


#define a1_x -1.994624492459313L
#define a0_x 0.995459312883653L
#define b2_x 4.196874900647935e-05L
#define b1_x 8.393749801295869e-05L

110 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
#define b0_x 4.196874900647935e-05L

ANEXO 2.2. CÁLCULO DE LA SALIDA DESPLAZAMIENTO DE LA BOYA A UNA FRECUENCIA


DETERMINADA MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE IRREGULAR
ANTE OLEAJE REGULAR

Frecuencia w=2,0020 rad/seg:

main.c

h_ola=sin(w_caso*T_0)*He_caso;

//Calculo de la posicion de la boya


Ent_7_x=h_ola;

Sal_7_x=(Ent_7_x*b7_x+Ent_6_x*b6_x+Ent_5_x*b5_x+Ent_4_x*b4_x+En
t_3_x*b3_x+Ent_2_x*b2_x+Ent_1_x*b1_x+Ent_0_x*b0_x-Sal_6_x*a6_x-
Sal_5_x*a5_x-Sal_4_x*a4_x-Sal_3_x*a3_x-Sal_2_x*a2_x-Sal_1_x*a1_x-
Sal_0_x*a0_x)/a7_x;

Ent_0_x=Ent_1_x;
Ent_1_x=Ent_2_x;
Ent_2_x=Ent_3_x;
Ent_3_x=Ent_4_x;
Ent_4_x=Ent_5_x;
Ent_5_x=Ent_6_x;
Ent_6_x=Ent_7_x;
Sal_0_x=Sal_1_x;
Sal_1_x=Sal_2_x;
Sal_2_x=Sal_3_x;
Sal_3_x=Sal_4_x;
Sal_4_x=Sal_5_x;
Sal_5_x=Sal_6_x;
Sal_6_x=Sal_7_x;

//Calculo de la velocidad de la boya


Ent_7_v=h_ola;

Sal_7_v=(Ent_7_v*b7_v+Ent_6_v*b6_v+Ent_5_v*b5_v+Ent_4_v*b4_v+En
t_3_v*b3_v+Ent_2_v*b2_v+Ent_1_v*b1_v+Ent_0_v*b0_v-Sal_6_v*a6_v-
Sal_5_v*a5_v-Sal_4_v*a4_v-Sal_3_v*a3_v-Sal_2_v*a2_v-Sal_1_v*a1_v-
Sal_0_v*a0_v)/a7_v;

Ent_0_v=Ent_1_v;
Ent_1_v=Ent_2_v;
Ent_2_v=Ent_3_v;
Ent_3_v=Ent_4_v;
Ent_4_v=Ent_5_v;

Marta Núñez-Samper Muñoz 111


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
Ent_5_v=Ent_6_v;
Ent_6_v=Ent_7_v;
Sal_0_v=Sal_1_v;
Sal_1_v=Sal_2_v;
Sal_2_v=Sal_3_v;
Sal_3_v=Sal_4_v;
Sal_4_v=Sal_5_v;
Sal_5_v=Sal_6_v;
Sal_6_v=Sal_7_v;

//Calculo fuerza radiacion


Ent_5_fr=Sal_7_v;

Sal_5_fr=(Ent_5_fr*b5_fr+Ent_4_fr*b4_fr+Ent_3_fr*b3_fr+Ent_2_fr
*b2_fr+Ent_1_fr*b1_fr+Ent_0_fr*b0_fr-Sal_4_fr*a4_fr-Sal_3_fr*a3_fr-
Sal_2_fr*a2_fr-Sal_1_fr*a1_fr-Sal_0_fr*a0_fr)/a5_fr;

Ent_0_fr=Ent_1_fr;
Ent_1_fr=Ent_2_fr;
Ent_2_fr=Ent_3_fr;
Ent_3_fr=Ent_4_fr;
Ent_4_fr=Ent_5_fr;
Sal_0_fr=Sal_1_fr;
Sal_1_fr=Sal_2_fr;
Sal_2_fr=Sal_3_fr;
Sal_3_fr=Sal_4_fr;
Sal_4_fr=Sal_5_fr;

Fb=Sal_7_x*Kw;
Fboya=h_ola-Sal_5_fr-Fb;

T_0=T_0+T_muestreo;
Variables_globales.h

long double T_0=0.00000000;


#define T_muestreo 10000e-6L

#define w_caso 2.002L


#define He_caso 3.576705322878351e+04L
#define Kw 7.139869781448631e+04L

long double h_ola=0.0;


long double Fb=0;
long double Fboya=0;

//Datos F radiacion
long double Ent_5_fr=0.0;
long double Ent_4_fr=0.0;
long double Ent_3_fr=0.0;
long double Ent_2_fr=0.0;

112 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
long double Ent_1_fr=0.0;
long double Ent_0_fr=0.0;

long double Sal_5_fr=0.0;


long double Sal_4_fr=0.0;
long double Sal_3_fr=0.0;
long double Sal_2_fr=0.0;
long double Sal_1_fr=0.0;
long double Sal_0_fr=0.0;

#define b5_fr 94.410873556428630L


#define b4_fr -3.705675644284338e+02L
#define b3_fr 5.451310541297927e+02L
#define b2_fr -3.557909115022424e+02L
#define b1_fr 86.405183347349320L
#define b0_fr 0.411365049058489L
#define a5_fr 1.0L
#define a4_fr -4.926770037636182L
#define a3_fr 9.710917517233426L
#define a2_fr -9.572044670273614L
#define a1_fr 4.718418056060124L
#define a0_fr -0.930520862953686L

//Datos F transf posicion regular

long double Ent_7_x=0.0;


long double Ent_6_x=0.0;
long double Ent_5_x=0.0;
long double Ent_4_x=0.0;
long double Ent_3_x=0.0;
long double Ent_2_x=0.0;
long double Ent_1_x=0.0;
long double Ent_0_x=0.0;

long double Sal_7_x=0.0;


long double Sal_6_x=0.0;
long double Sal_5_x=0.0;
long double Sal_4_x=0.0;
long double Sal_3_x=0.0;
long double Sal_2_x=0.0;
long double Sal_1_x=0.0;
long double Sal_0_x=0.0;

#define b7_x 2.676096038975586e-09L


#define b6_x -7.832317704710612e-09L
#define b5_x 2.294424376339016e-09L
#define b4_x 1.317447519569563e-08L
#define b3_x -1.261713388129279e-08L
#define b2_x -2.851994282444329e-09L
#define b1_x 7.646613478984375e-09L

Marta Núñez-Samper Muñoz 113


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
#define b0_x -2.490163195534501e-09L
#define a7_x 1.0L
#define a6_x -6.925854080181709L
#define a5_x 20.559894266693828L
#define a4_x -33.911505954597416L
#define a3_x 33.564167198974616L
#define a2_x -19.934597262597773L
#define a1_x 6.578369895137960L
#define a0_x -0.930474063427644L

//Datos F transf velocidad regular

long double Ent_7_v=0.0;


long double Ent_6_v=0.0;
long double Ent_5_v=0.0;
long double Ent_4_v=0.0;
long double Ent_3_v=0.0;
long double Ent_2_v=0.0;
long double Ent_1_v=0.0;
long double Ent_0_v=0.0;

long double Sal_7_v=0.0;


long double Sal_6_v=0.0;
long double Sal_5_v=0.0;
long double Sal_4_v=0.0;
long double Sal_3_v=0.0;
long double Sal_2_v=0.0;
long double Sal_1_v=0.0;
long double Sal_0_v=0.0;

#define b7_v 5.352192077951172e-07L


#define b6_v -2.636901956532357e-06L
#define b5_v 4.662250372742283e-06L
#define b4_v -2.486240208870961e-06L
#define b3_v -2.672081606526725e-06L
#define b2_v 4.625109526296417e-06L
#define b1_v -2.525387974010676e-06L
#define b0_v 4.980326391069003e-07L
#define a7_v 1.0L
#define a6_v -6.925854080181709L
#define a5_v 20.559894266693828L
#define a4_v -33.911505954597416L
#define a3_v 33.564167198974616L
#define a2_v -19.934597262597773L
#define a1_v 6.578369895137960L
#define a0_v -0.930474063427644L

ANEXO 2.3. CÁLCULOS MEDIANTE LA FUNCIÓN DE TRANSFERENCIA PARA OLEAJE


IRREGULAR ANTE OLEAJE IRREGULAR

114 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
main.c

// COMIENZA EL ENSAYO:
//------------------------------------------------------------------
------------

if(CONECTAR==1 & (n_int>=Iteraciones_por_muestra) &


(j1<muestras_por_grafico)){
//0<=j1<=298
n_int=0;

//------------------------------------------------------------------
------------
// CODIGO DE MARTA:
//------------------------------------------------------------------
------------

Entrada=Fexc[j1];

//Calculo de la posicion de la boya


Ent_7_x=Entrada;

Sal_7_x=(Ent_7_x*b7_x+Ent_6_x*b6_x+Ent_5_x*b5_x+Ent_4_x*b4_x+Ent_3_x
*b3_x+Ent_2_x*b2_x+Ent_1_x*b1_x+Ent_0_x*b0_x-Sal_6_x*a6_x-
Sal_5_x*a5_x-Sal_4_x*a4_x-Sal_3_x*a3_x-Sal_2_x*a2_x-Sal_1_x*a1_x-
Sal_0_x*a0_x)/a7_x;

Ent_0_x=Ent_1_x;
Ent_1_x=Ent_2_x;
Ent_2_x=Ent_3_x;
Ent_3_x=Ent_4_x;
Ent_4_x=Ent_5_x;
Ent_5_x=Ent_6_x;
Ent_6_x=Ent_7_x;
Sal_0_x=Sal_1_x;
Sal_1_x=Sal_2_x;
Sal_2_x=Sal_3_x;
Sal_3_x=Sal_4_x;
Sal_4_x=Sal_5_x;
Sal_5_x=Sal_6_x;
Sal_6_x=Sal_7_x;

//Calculo de la velocidad de la boya


Ent_7_v=Entrada;

Sal_7_v=(Ent_7_v*b7_v+Ent_6_v*b6_v+Ent_5_v*b5_v+Ent_4_v*b4_v+Ent_3_v
*b3_v+Ent_2_v*b2_v+Ent_1_v*b1_v+Ent_0_v*b0_v-Sal_6_v*a6_v-

Marta Núñez-Samper Muñoz 115


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
Sal_5_v*a5_v-Sal_4_v*a4_v-Sal_3_v*a3_v-Sal_2_v*a2_v-Sal_1_v*a1_v-
Sal_0_v*a0_v)/a7_v;

Ent_0_v=Ent_1_v;
Ent_1_v=Ent_2_v;
Ent_2_v=Ent_3_v;
Ent_3_v=Ent_4_v;
Ent_4_v=Ent_5_v;
Ent_5_v=Ent_6_v;
Ent_6_v=Ent_7_v;
Sal_0_v=Sal_1_v;
Sal_1_v=Sal_2_v;
Sal_2_v=Sal_3_v;
Sal_3_v=Sal_4_v;
Sal_4_v=Sal_5_v;
Sal_5_v=Sal_6_v;
Sal_6_v=Sal_7_v;

//Calculo fuerza radiacion


Ent_5_fr=Sal_7_v;

Sal_5_fr=(Ent_5_fr*b5_fr+Ent_4_fr*b4_fr+Ent_3_fr*b3_fr+Ent_2_fr*b2_f
r+Ent_1_fr*b1_fr+Ent_0_fr*b0_fr-Sal_4_fr*a4_fr-Sal_3_fr*a3_fr-
Sal_2_fr*a2_fr-Sal_1_fr*a1_fr-Sal_0_fr*a0_fr)/a5_fr;

Ent_0_fr=Ent_1_fr;
Ent_1_fr=Ent_2_fr;
Ent_2_fr=Ent_3_fr;
Ent_3_fr=Ent_4_fr;
Ent_4_fr=Ent_5_fr;
Sal_0_fr=Sal_1_fr;
Sal_1_fr=Sal_2_fr;
Sal_2_fr=Sal_3_fr;
Sal_3_fr=Sal_4_fr;
Sal_4_fr=Sal_5_fr;

Fb=Sal_7_x*Kw;
Fboya=Entrada-Sal_5_fr-Fb;

//------------------------------------------------------------------
------------
// INTERPROCESSOR COMMUNICATION
//------------------------------------------------------------------
------------
// GRAFICOS:
// 1a 1b

116 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
// 2a 2b

InterCommunication((float)Sal_7_x*10.0,(float)Sal_7_v,(float)Sa
l_5_fr/1000.0,(float)Fboya/1000.0, R, R, K, K);//1a;2a;1b;2b

//------------------------------------------------------------------
------------
j1=j1+1;
//------------------------------------------------------------------
------------
//}// if(j1<size){
//------------------------------------------------------------------
------------

Variables_globales.h

#ifndef VARIABLES_GLOBALES_H_
#define VARIABLES_GLOBALES_H_

// codigo MARTA

int contador=0;
int contador_fe=0;
int contador_fe1=0;

long double T_0=0.00000000;


long double T_total=500.00000000;
#define T_muestreo 10000e-6L
#define Kw 7.139869781448631e+04L

#define w_caso 2.002L


#define He_caso 3.576705322878351e+04L

long double Entrada=0.0;


//double Sal_x_vector[1400]={};

double Fexc[2400]={ 57404.0630050559, 58776.3658837025,


59912.6516202788, 60803.6044595081, 61439.6856583326,
61811.4500794873, 61909.9033484357, 61726.8836859720,
61255.4515853187, 60490.2703048393, 59427.9606906738,
58067.4150907354, 56410.0570056869, 54460.0355503880,
52224.3466554981, 49712.8760915708, 46938.3627046532,
43916.2835665661, 40664.6659204933, 37203.8337075870,
33556.0989716892, 29745.4104550036, 25796.9731390758,
21736.8533006791, 17591.5838172516, 13387.7839763065,
9151.80695062011, 4909.42645503394, 685.571983437905, -

Marta Núñez-Samper Muñoz 117


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
3495.88046286979, -7612.25798618130, -11642.1794452739, -
15565.5847261546, -19363.7089553823, -23019.0084859849, -
26515.0476413228, -29836.3569178722, -32968.2745543155, -
35896.7840248822, -38608.3600873621, -41089.8355133149, -
43328.2995768055, -45311.0378283247, -47025.5207025236, -
48459.4461890604, -49600.8392352779, -50438.2078562937, -
50960.7532150131, -51158.6283134602, -51023.2375142291, -
50547.5669838205, -49726.5344019301, -48557.3449798011, -
47039.8400252900, -45176.8240108764, -42974.3563511581, -
40441.9948654943, -37592.9791568535, -34444.3438292164, -
31016.9535273527, -27335.4541362277, -23428.1370354677, -
19326.7159744540, -15066.0188211545, -10683.5990499369, -
6219.27428269160, -1714.60140421667, 2787.70033163895,
7244.36525978847, 11612.2222596600, 15848.8459561968,
19913.2031712388, 23766.2798279555, 27371.6741291245,
30696.1428365943, 33710.0888308874, 36387.9797740179,
38708.6895757724, 40655.7564099914, 42217.5531766820,
43387.3684922354, 44163.3984500365, 44548.6514680486,
44550.7704751052, 44181.7784373811, 43457.7547527492,
42398.4513140716, 41026.8580425642, 39368.7284078300,
37452.0758791850, 35306.6523988119, 32963.4198436035,
30454.0250682423, 27810.2885213248, 25063.7156276947,
22245.0391652373, 19383.7997669611, 16507.9704840570,
13643.6300877225, 10814.6885010596, 8042.66647002863,
5346.53033479387, 2742.58157770629, 244.399726270382, -
2137.16380013252, -4393.94417498171, -6520.37798122995, -
8513.37893758408, -10372.1795370672, -12098.1438722254, -
13694.5570436987, -15166.3965295055, -16520.0907427217, -
17763.2697400913, -18904.5126813057, -19953.0961984447, -
20918.7473394647, -21811.4042217636, -22640.9869952281, -
23417.1811916917, -24149.2350509512, -24845.7719816710, -
25514.6189548393, -26162.6513502658, -26795.6545907635, -
27418.2028069951, -28033.5547760344, -28643.5674606636, -
29248.6276311877, -29847.6022591713, -30437.8086108167, -
31015.0052112489, -31573.4050720765, -32105.7127446876, -
32603.1868527789, -33055.7297436118, -33452.0057560375, -
33779.5893170571, -34025.1436366041, -34174.6301688525, -
34213.5482525315, -34127.2034461422, -33901.0020593092, -
33520.7682800325, -32973.0791485688, -32245.6114779867, -
31327.4937201807, -30209.6547785391, -28885.1609297497, -
27349.5313910527, -25601.0227052228, -23640.8720566114, -
21473.4899115611, -19106.5930179413, -16551.2698108075, -
13821.9716490493, -10936.4250307089, -7915.46196612688, -
4782.76797665852, -1564.54966676066, 1710.87358920781,
5013.54668495662, 8312.41483447045, 11575.9065452732,
14772.5493021912, 17871.6019925198, 20843.6867890253,
23661.4024098421, 26299.9004512842, 28737.4068792418,
30955.6717842091, 32940.3321480097, 34681.1746070162,
36172.2879732741, 37412.0985148448, 38403.2846024936,
39152.5711862949, 39670.4085434707, 39970.5436987642,

118 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
40069.4967172549, 39985.9575638043, 39740.1222766349,
39352.9896899899, 38845.6417544407, 38238.5315568416,
37550.8033744800, 36799.6684775990, 35999.8589199363,
35163.1792586859, 34298.1730851806, 33409.9175173533,
32499.9545235254, 31566.3632565049, 30603.9726380116,
29604.7084196014, 28558.0640375738, 27451.6799557907,
26272.0120249654, 25005.0658393590, 23637.1712817244,
22155.7695291602, 20550.1838306295, 18812.3454118451,
16937.4469295142, 14924.4979618542, 12776.7600262602,
10502.0424633625, 8112.84509275101, 5626.33867500205,
3064.17973073721, 452.161977736721, -2180.28764979865, -
4800.75494289849, -7374.60777793024, -9865.86585833182, -
12238.1440617196, -14455.6397692043, -16484.1327055395, -
18291.9650400214, -19850.9698215697, -21137.3172404645, -
22132.2506779264, -22822.6879396582, -23201.6673526539, -
23268.6233878339, -23029.4819814061, -22496.5715738264, -
21688.3518639198, -20628.9681800859, -19347.6449969451, -
17877.9372813818, -16256.8628614378, -14523.9427234820, -
12720.1789351247, -10887.0016744059, -9065.21756685971, -
7293.99117596067, -5609.89008178833, -4046.02157684968, -
2631.28570027209, -1389.76524583712, -340.268664944596,
503.963388125860, 1135.38257143489, 1552.08867057456,
1757.62238664984, 1760.60591648536, 1574.24683405160,
1215.72486305957, 705.484475221816, 66.4587569035163, -
676.748410358168, -1498.69414915690, -2373.91494336934, -
3277.70533119031, -4186.83276733957, -5080.16730959180, -
5939.20826013188, -6748.49388797211, -7495.88472672338, -
8172.71552491389, -8773.81556250030, -9297.40157782113, -
9744.85182189164, -10120.3736319041, -10430.5802701637, -
10683.9955061995, -10890.5064497472, -11060.7864177163, -
11205.7101129495, -11335.7831074228, -11460.6065847059, -
11588.3965579335, -11725.5744145368, -11876.4427411893, -
12042.9570612182, -12224.6004932015, -12418.3645421346, -
12618.8353949278, -12818.3813402185, -13007.4333930999, -
13174.8479933445, -13308.3378630062, -13394.9548417630, -
13421.6068334118, -13375.5899416688, -13245.1164736232, -
13019.8197488391, -12691.2175537419, -12253.1175865506, -
11701.9502906685, -11037.0170003055, -10260.6442330797, -
9378.23816106709, -8398.23666686063, -7331.95983271452, -
6193.36310588524, -4998.70062148091, -3766.10914108851, -
2515.12568602482, -1266.15412511954, -39.8976500612889,
1143.22481527756, 2263.65970502496, 3303.27892198974,
4245.90117967164, 5077.75805388872, 5787.89002410232,
6368.46006010383, 6814.97498328545, 7126.40781454925,
7305.21751425756, 7357.26581789173, 7291.63416520154,
7120.34690165590, 6858.00989373183, 6521.37634598964,
6128.85385052959, 5699.96846436253, 5254.80283963666,
4813.42608592169, 4395.33310285800, 4018.91058595147,
3700.94579922278, 3456.19256691078, 3297.00682228351,
3233.06154133590, 3271.14807334860, 3415.06786049429,

Marta Núñez-Samper Muñoz 119


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
3665.61542375206, 4020.65039463348, 4475.25340320960,
5021.95789943164, 5651.04758471217, 6350.90714955129,
7108.41252016012, 7909.34586348238, 8738.82021593679,
9581.69879489378, 10422.9948091826, 11248.2388696681,
12043.8028562984, 12797.1712486126, 13497.1533814842,
14134.0327437507, 14699.6521832906, 15187.4366035400,
15592.3573200617, 15910.8445842253, 16140.6567773384,
16280.7163502821, 16330.9236665680, 16291.9604574492,
16165.0945959986, 15951.9973466478, 15654.5831754170,
15274.8806648651, 14814.9411387063, 14276.7893541821,
13662.4181702301, 12973.8265606252, 12213.0978329864,
11382.5125558764, 10484.6886005893, 9522.73897423687,
8500.43684344359, 7422.37639068010, 6294.11795223524,
5122.30627689211, 3914.75170956756, 2680.46560977034,
1429.64330024808, 173.590222608344, -1075.41034996937, -
2304.28684742875, -3499.42210239621, -4646.94233865489, -
5733.04300695778, -6744.33981554235, -7668.23155975705, -
8493.26017520514, -9209.45289306213, -9808.63150885353, -
10284.6746011186, -10633.7200369812, -10854.2972293280, -
10947.3812869243, -10916.3643191963, -10766.9425934551, -
10506.9218482178, -10145.9466845026, -9695.16342528351, -
9166.82899171657, -8573.88104288676, -7929.48672977888, -
7246.58881294540, -6537.46850434953, -5813.34416730483, -
5084.02393035135, -4357.62836465458, -3640.39670064681, -
2936.58671417595, -2248.47452346760, -1576.45626105888, -
919.249095905852, -274.184570268800, 362.417120204186,
994.807243154067, 1627.32180112718, 2263.86942131053,
2907.41718211407, 3559.49859843788, 4219.76787371380,
4885.62337384990, 5551.92110769818, 6210.79587626379,
6851.60378629500, 7460.99515919608, 8023.12168227777,
8519.97615093815, 8931.85755978953, 9237.94884883619,
9416.98952719834, 9448.02090027845, 9311.17791499937,
8988.49888100260, 8464.72265598811, 7728.04239030004,
6770.78565172737, 5589.99268888683, 4187.86768289061,
2572.08197638454, 755.913305975900, -1241.78919064382, -
3396.81818846850, -5679.99712739118, -8057.73595280762, -
10492.7384946696, -12944.8406513182, -15371.9536060670, -
17731.0823117369, -19979.3865938709, -22075.2505654019, -
23979.3256825787, -25655.5137197598, -27071.8581613953, -
28201.3159131131, -29022.3856818150, -29519.5746857734, -
29683.6913135347, -29511.9577124924, -29007.9427961312, -
28181.3225500884, -27047.4805346847, -25626.9668859972, -
23944.8386968915, -22029.9082381035, -19913.9279256231, -
17630.7421718043, -15215.4362438321, -12703.5110181820, -
10130.1101395278, -7529.32269192365, -4933.58023667944, -
2373.16216812351, 124.181985519285, 2533.49018881001,
4832.72775224285, 7002.81682019743, 9027.56746888596,
10893.5262154016, 12589.7606618441, 14107.6008997504,
15440.3591096628, 16583.0484903603, 17532.1212759973,
18285.2432316345, 18841.1187893498, 19199.3770694703,

120 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
19360.5246278547, 19325.9661065985, 19098.0892800583,
18680.4065195996, 18077.7406773615, 17296.4400188289,
16344.6042921459, 15232.3024453977, 13971.7619817129,
12577.5105154427, 11066.4517471678, 9457.86074446134,
7773.28698263753, 6036.35790349265, 4272.48059082237,
2508.44431084465, 771.931876727199, -909.047184718041, -
2506.78410862958, -3994.53755102282, -5347.21494782459, -
6542.04211322090, -7559.19380727322, -8382.35843128503, -
8999.21168880783, -9401.77693598140, -9586.65393587710, -
9555.10267362124, -9312.97458159734, -8870.48972783328, -
8241.86496867318, -7444.80447536719, -6499.87012577501, -
5429.75472842111, -4258.48565972507, -3010.59002287611, -
1710.25469909649, -380.515532107171, 957.490703133499,
2285.17995049657, 3587.05200347694, 4851.07571992707,
6068.91076717673, 7235.95505758285, 8351.21434518024,
9416.99805794428, 10438.4530158562, 11422.9539070793,
12379.3759479276, 13317.2807454825, 14246.0507601147,
15174.0107222400, 16107.5757445277, 17050.4656032263,
18003.0227251048, 18961.6678648965, 19918.5224162002,
20861.2199548485, 21772.9222131514, 22632.5465185534,
23415.2031287832, 24092.8322068423, 24635.0217597250,
25009.9800634109, 25185.6292398546, 25130.7810296503,
24816.3516584739, 24216.5702090815, 23310.1341995750,
22081.2671768239, 20520.6360313614, 18626.0903235748,
16403.1920084368, 13865.5113231203, 11034.6729717891,
7940.14577716031, 4618.77831422252, 1114.09233029895, -
2524.64537763917, -6243.54386043162, -9985.36590954980, -
13690.9215113943, -17300.5313475132, -20755.5124679879, -
23999.6377140793, -26980.5217297147, -29650.8894151708, -
31969.6873062894, -33903.0044109604, -35424.7762485747, -
36517.2539207631, -37171.2286645398, -37386.0111559686, -
37169.1734945305, -36536.0699676955, -35509.1600592341, -
34117.1634487836, -32394.0817280571, -30378.1250622930, -
28110.5839490473, -25634.6865322753, -22994.4806473408, -
20233.7769968248, -17395.1857424821, -14519.2735526306, -
11643.8620164884, -8803.48160875752, -6028.98835892602, -
3347.34335584298, -781.548496765432, 1649.27425128848,
3929.67812607834, 6047.58371599027, 7993.89341759599,
9762.05547023362, 11347.6053387687, 12747.7114228009,
13960.7500564569, 14985.9316577175, 15822.9958658149,
16471.9887825508, 16933.1302479819, 17206.7736879413,
17293.4557289928, 17194.0277364053, 16909.8569239474,
16443.0809128234, 15796.8967448474, 14975.8635011813,
13986.1969122758, 12836.0346849331, 11535.6526846955,
10097.6145127517, 8536.84027816119, 6870.58432212172,
5118.31610503557, 3301.50320247135, 1443.30014583657, -
431.848538963342, -2298.67851218430, -4131.63279135872, -
5905.42678696968, -7595.63005821908, -9179.24259152595, -
10635.2433589219, -11945.0898702065, -13093.1493403682, -
14067.0448578744, -14857.9034273178, -15460.4968071094, -

Marta Núñez-Samper Muñoz 121


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
15873.2704812431, -16098.2606906034, -16140.9039954774, -
16009.7481428952, -15716.0768797436, -15273.4646172247, -
14697.2793756749, -14004.1541183509, -13211.4473557386, -
12336.7137478873, -11397.2043735870, -10409.4144354700, -
9388.69353062708, -8348.93037097324, -7302.32014618171, -
6259.21876260452, -5228.08415198335, -4215.50091259872, -
3226.28090360319, -2263.62922518348, -1329.36242378569, -
424.163873828584, 452.139818788299, 1300.29783237407,
2121.36547294602, 2916.46044314788, 3686.55762106107,
4432.33232723685, 5154.05899529832, 5851.56879827455,
6524.26628891613, 7171.20166186655, 7791.19200949460,
8382.98208071078, 8945.43270355603, 9477.72331270663,
9979.55401661103, 10451.3323956247, 10894.3307555026,
11310.8008462153, 11704.0350346946, 12078.3654994545,
12439.0960742224, 12792.3647632833, 13144.9385235769,
13503.9454896581, 13876.5532383784, 14269.6047886161,
14689.2266597507, 15140.4253441748, 15626.6898838418,
16149.6188097791, 16708.5894718564, 17300.4867546603,
17919.5063803631, 18557.0455107889, 19201.6902788110,
19839.3063298628, 20453.2345839330, 21024.5903968467,
21532.6602732758, 21955.3864284476, 22269.9259686999,
22453.2684059683, 22482.8927605677, 22337.4437370605,
21997.4054471524, 21445.7509369560, 20668.5463563511,
19655.4899557991, 18400.3681504551, 16901.4135649842,
15161.5531540999, 13188.5380545872, 10994.9506232939,
8598.08800542614, 6019.72541187211, 3285.76592347610,
425.786956535437, -2527.50359292354, -5538.88614729372, -
8571.30603468483, -11586.5895629618, -14546.1807662930, -
17411.8801215767, -20146.5672288627, -22714.8906724445, -
25083.9099504652, -27223.6763902917, -29107.7422556417, -
30713.5896969330, -32022.9736973614, -33022.1756284476, -
33702.1663647236, -34058.6800457982, -34092.2014588025, -
33807.8716063094, -33215.3173032285, -32328.4116076146, -
31164.9725477567, -29746.4079885989, -28097.3146230949, -
26245.0390253378, -24219.2085135871, -22051.2392948254, -
19773.8290477590, -17420.4407917411, -15024.7846197657, -
12620.3036684495, -10239.6705684796, -7914.30056443913, -
5673.88749976452, -3545.96890611264, -1555.52648257644,
275.371742105826, 1927.88134662080, 3386.63753962368,
4639.95162858499, 5679.94287695964, 6502.60150580807,
7107.77965708546, 7499.10844383140, 7683.84075181207,
7672.62119633989, 7479.18653014767, 7120.00178248179,
6613.83941346747, 5981.31071004881, 5244.36044421525,
4425.73737368858, 3548.45440617658, 2635.25309505655,
1708.08752344201, 787.642517547398, -107.099519190950, -
959.230049243680, -1754.21273244819, -2480.09945350085, -
3127.65747054426, -3690.40406410639, -4164.54825449509, -
4548.84246266978, -4844.35028811995, -5054.13973619514, -
5182.91411640226, -5236.59532867368, -5221.87624501128, -
5145.76028500053, -5015.10700322897, -4836.20250791449, -

122 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
4614.37279476373, -4353.65661960127, -4056.55238911007, -
3723.85079151838, -3354.56161519061, -2945.93953292338, -
2493.60970181219, -1991.78999428184, -1433.60269375808, -
811.464717189839, -117.542018950835, 655.749073463483,
1515.21312042641, 2466.34051220255, 3512.78793920586,
4655.89616868273, 5894.26599904412, 7223.41154541458,
8635.50754112258, 10119.2442093903, 11659.7995832977,
13238.9350678862, 14835.2156997539, 16424.3521303478,
17979.6570061636, 19472.6043054948, 20873.4764703445,
22152.0809804881, 23278.5154696543, 24223.9586705942,
24961.4634561519, 25466.7280458210, 25718.8220679629,
25700.8455718461, 25400.5012064655, 24810.5625340484,
23929.2247125722, 22760.3274340039, 21313.4439025642,
19603.8336343230, 17652.2608110105, 15484.6836891749,
13131.8240253223, 10628.6285201782, 8013.63682355342,
5328.27261234715, 2616.07562040298, -78.1067511785956, -
2708.94946697571, -5231.48317418555, -7601.91336762546, -
9778.40932127031, -11721.8484022175, -13396.5033277381, -
14770.6620195370, -15817.1718550072, -16513.9022234327, -
16844.1212868140, -16796.7846556327, -16366.7352715887, -
15554.8151125040, -14367.8903885153, -12818.7926908585, -
10926.1791093525, -8714.31469068258, -6212.78081664908, -
3456.11319682445, -483.373254091380, 2662.34320615489,
5934.45595740020, 9283.50453515886, 12657.8017487236,
16004.1309645470, 19268.4807593373, 22396.8095307040,
25335.8315105886, 28033.8144006592, 30441.3776020331,
32512.2788173030, 34204.1757411629, 35479.3487095838,
36305.3696271816, 36655.7023120780, 36510.2196497132,
35855.6236790028, 34685.7559740848, 33001.7874393806,
30812.2788879949, 28133.1064829757, 24987.2492234621,
21404.4390674066, 17420.6778945039, 13077.6292071132,
8421.89611284378, 3504.20059415847, -1621.51778733925, -
6899.06291037301, -12270.9798668884, -17679.5650535381, -
23067.8634235787, -28380.6278090738, -33565.2161041973, -
38572.4037842607, -43357.0916808655, -47878.8920698536, -
52102.5798557874, -55998.3998303775, -59542.2254981544, -
62715.5696418909, -65505.4514755963, -67904.1297353329, -
69908.7152237059, -71520.6800004736, -72745.2834648859, -
73590.9378941032, -74068.5375033194, -74190.7757252051, -
73971.4751507860, -73424.9534466839, -72565.4466142885, -
71406.6082657015, -69961.1002681886, -68240.2862859301, -
66254.0355756951, -64010.6400342061, -61516.8431172321, -
58777.9750200565, -55798.1845839351, -52580.7549170090, -
49128.4868141966, -45444.1318275637, -41530.8553467064, -
37392.7093373246, -33035.0944632620, -28465.1921590959, -
23692.3487736930, -18728.3960896739, -13587.8952363900, -
8288.29413371983, -2849.99199693260, 2703.69204111288,
8346.64561605707, 14050.1811773064, 19783.3383366096,
25513.2607343063, 31205.6353736843, 36825.1806421540,
42336.1680796372, 47702.9623853776, 52890.5641649923,

Marta Núñez-Samper Muñoz 123


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
57865.1404765965, 62594.5292842167, 67048.7053962683,
71200.1972711684, 75024.4461166101, 78500.1008948575,
81609.2450756952, 84337.5531585654, 86674.3770325976,
88612.7640873724, 90149.4105735086, 91284.5550032399,
92021.8173579985, 92367.9905315668, 92332.7907996076,
91928.5742001182, 91170.0255776624, 90073.8267389933,
88658.3097458742, 86943.1008908652, 84948.7604191128,
82696.4226232727, 80207.4405895761, 77503.0396389133,
74603.9834021066, 71530.2564931976, 68300.7678839358,
64933.0793084007, 61443.1632987748, 57845.1957221600,
54151.3878986689, 50371.8634747806, 46514.5851468876,
42585.3360271626, 38587.7598758502, 34523.4635621362,
30392.1839466355, 26192.0199068962, 21919.7284764578,
17571.0820803177, 13141.2816858324, 8625.41842482299,
4018.97397038384, -681.652229441491, -5478.60274408148, -
10372.0245450780, -15359.5508294510, -20435.8199150042, -
25592.0490579203, -30815.6806343107, -36090.1170596305, -
41394.5590863092, -46703.9597414362, -51989.1031923603, -
57216.8143358908, -62350.3009992138, -67349.6264431690, -
72172.3055145784, -76774.0134600838, -81109.3922523964, -
85132.9354537735, -88799.9293072695, -92067.4250464577, -
94895.2154719259, -97246.7877553446, -99090.2242665636, -
100399.024009605, -101152.818996978, -101337.962549350, -
100947.970003888, -99983.7965406581, -98453.9416532864, -
96374.3750337666, -93768.2841290185, -90665.6491640340, -
87102.6568143955, -83120.9687544640, -78766.8658228979, -
74090.2923695157, -69143.8283373666, -63981.6186830655, -
58658.2907742143, -53227.8903909886, -47742.8659055977, -
42253.1281637530, -36805.2106301033, -31441.5506024788, -
26199.9078952751, -21112.9325113381, -16207.8876517302, -
11506.5291502499, -7025.13726172312, -2774.69187016461,
1238.82220952636, 5013.99693077498, 8553.48982723634,
11863.4422218771, 14952.8503874324, 17832.9135583489,
20516.3821334159, 23016.9279936108, 25348.5566778644,
27525.0783259611, 29559.6509517546, 31464.4059075377,
33250.1615079882, 34926.2268687236, 36500.2942444602,
37978.4146778154, 39365.0487267479, 40663.1815376330,
41874.4896557114, 42999.5457678530, 44038.0470748441,
44989.0531800796, 45851.2202159698, 46623.0193380015,
47302.9296045174, 47889.5975142836, 48381.9579670308,
48779.3140107762, 49081.3753099830, 49288.2576826613,
49400.4481966814, 49418.7420874369, 49344.1590839859,
49177.8475572145, 48920.9852066344, 48574.6847850140,
48139.9126516765, 47617.4268004677, 47007.7395029771,
46311.1079348995, 45527.5542189401, 44656.9143335630,
43698.9134161068, 42653.2632392613, 41519.7761588360,
40298.4886999616, 38989.7872302564, 37594.5279014320,
36114.1432395856, 34550.7284182842, 32907.1013215725,
31186.8319377752, 29394.2383408373, 27534.3484198377,
25612.8285041259, 23635.8819908790, 21610.1229036077,

124 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
19542.4308904662, 17439.7954177661, 15309.1577512943,
13157.2596909328, 10990.5079016267, 8814.86206077235,
6635.75393977238, 4458.04300293922, 2286.01221094408,
123.405550047454, -2026.49351981075, -4160.74587654988, -
6276.60827639114, -8371.36017928301, -10442.1151821221, -
12485.6277262801, -14498.1065823351, -16475.0468828609, -
18411.0921394580, -20299.9367379306, -22134.2778806788, -
23905.8238929104, -25605.3633116757, -27222.8963409685, -
28747.8272091472, -30169.2128476378, -31476.0602713304, -
32657.6622308700, -33703.9582688131, -34605.9063754831, -
35355.8491169330, -35947.8574815840, -36378.0358188040, -
36644.7721431966, -36748.9197387356, -36693.8983674458, -
36485.7063843133, -36132.8385684185, -35646.1083581620, -
35038.3772633000, -34324.1983416250, -33519.3845906615, -
32640.5167336119, -31704.4080029757, -30727.5459917972, -
29725.5333235921, -28712.5496915510, -27700.8576758754, -
26700.3736455132, -25718.3230090641, -24758.9961629680, -
23823.6177964679, -22910.3378915317, -22014.3479715550, -
21128.1210985907, -20241.7690040628, -19343.5047781911, -
18420.1949520242, -17457.9807847082, -16442.9452982275, -
15361.8002344932, -14202.5657614688, -12955.2155007351, -
11612.2603180276, -10169.2462930222, -8625.14530015741, -
6982.62057876874, -5248.15439748051, -3432.03023912321, -
1548.16763524885, 386.186368096260, 2350.89937005580,
4323.51422578051, 6279.90806174318, 8195.02554241812,
10043.6590712706, 11801.2465264857, 13444.6562253567,
14952.9291267382, 16307.9498134805, 17495.0204902680,
18503.3159816060, 19326.2023697642, 19961.4072843022,
20411.0357233863, 20681.4314105288, 20782.8898150517,
20729.2348358506, 20537.2765212150, 20226.1718480573,
19816.7143174203, 19330.5807835032, 18789.5654096004,
18214.8308754845, 17626.2059386716, 17041.5562219679,
16476.2517584201, 15942.7505165123, 15450.3120389147,
15004.8496765101, 14608.9239293642, 14261.8733749494,
13960.0738314225, 13697.3110215289, 13465.2473030148,
13253.9592169586, 13052.5198406792, 12849.5983356953,
12634.0487217786, 12395.4607996732, 12124.6482470726,
11814.0521314631, 11458.0422766568, 11053.1039014188,
10597.9024973166, 10093.2257819723, 9541.80749124200,
8948.04349378770, 8317.61596605987, 7657.04591610130,
6973.19798151392, 6272.76398009677, 5561.75303721266,
4845.01618031518, 4125.83206233240, 3405.57799265458,
2683.50681358330, 1956.64550919738, 1219.82596634253,
465.852255119062, -314.197581830548, -1130.54366930710, -
1994.16500177480, -2916.16902802352, -3907.09536141584, -
4976.18279046705, -6130.63151727070, -7374.89398564422, -
8710.02769149679, -10133.1419678865, -11636.9679396487, -
13209.5767397753, -14834.2658201162, -16489.6269710645, -
18149.8027295714, -19784.9304757982, -21361.7659913980, -
22844.4708817848, -24195.5413530656, -25376.8496683873, -

Marta Núñez-Samper Muñoz 125


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
26350.7644479736, -27081.3120436462, -27535.3386863925, -
27683.6320938719, -27501.9617930657, -26971.9995580221, -
26082.0850173685, -24827.8065236874, -23212.3736138635, -
21246.7645941931, -18949.6406847455, -16347.0264536117, -
13471.7646455850, -10362.7616393714, -7064.04733891516, -
3623.68002500604, -92.5323026205161, 3477.00143996210,
7032.33285821023, 10521.9983790542, 13896.9249081638,
17111.6006895904, 20125.1131320146, 22902.0204630885,
25413.0303305244, 27635.4656931576, 29553.5062583225,
31158.2020186966, 32447.2638041144, 33424.6438723822,
34099.9271100726, 34487.5601152124, 34605.9510388432,
34476.4773657603, 34122.4416621779, 33568.0166130087,
32837.2203779793, 31952.9614397949, 30936.1887850252,
29805.1785916746, 28574.9827891006, 27257.0581409259,
25859.0871473825, 24384.9943595618, 22835.1539442007,
21206.7768323380, 19494.4588138224, 17690.8647637276,
15787.5190337720, 13775.6680970737, 11647.1789343749,
9395.43547682423, 7016.19570120641, 4508.37367839133,
1874.71392075657, -877.670374822631, -3736.91831361703, -
6686.21855385165, -9703.79319576481, -12763.0717129474, -
15833.0513178481, -18878.8333633195, -21862.3190648257, -
24743.0422112375, -27479.1118122487, -30028.2339653164, -
32348.7797289454, -34400.8645290421, -36147.4046193779, -
37555.1173358126, -38595.4342509242, -39245.2997331842, -
39487.8316888426, -39312.8262320339, -38717.0934849824, -
37704.6174386923, -36286.5385847229, -34480.9636454240, -
32312.6119818060, -29812.3129648716, -27016.3726053229, -
23965.8309288392, -20705.6338770397, -17283.7448642214, -
13750.2215227409, -10156.2826593441, -6553.38909008897, -
2992.35992324473, 477.456856096722, 3808.94383298698,
6957.89147441805, 9883.58478818432, 12549.2944469543,
14922.6709655442, 16976.0436851610, 18686.6290631082,
20036.6549983202, 21013.4095787238, 21609.2236829531,
21821.3973040596, 21652.0793143376, 21108.1097133779,
20200.8322753617, 18945.8840353381, 17362.9663409796,
15475.6003678457, 13310.8681763673, 10899.1386978834,
8273.77658541337, 5470.83074801054, 2528.69868126541, -
512.237536463404, -3610.00746514412, -6721.48388674669, -
9802.85169513613, -12810.1144227934, -15699.6367859337, -
18428.7194395531, -20956.1998131677, -23243.0705664927, -
25253.1049866696, -26953.4766677202, -28315.3591843035, -
29314.4902983120, -29931.6846031928, -30153.2784799018, -
29971.4918475877, -29384.6924514037, -28397.5503207523, -
27021.0725071892, -25272.5111987484, -23175.1417093505, -
20757.9105407674, -18054.9575771856, -15105.0203556538, -
11950.7321119988, -8637.82878547861, -5214.28323866480, -
1729.38748759460, 1767.19436406355, 5226.37861597267,
8600.59561549857, 11844.6806842663, 14916.6996517691,
17778.6882759797, 20397.2874788291, 22744.2595716796,
24796.8743758859, 26538.1582200718, 27957.0030697311,

126 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
29048.1373589021, 29811.9642896491, 30254.2772894182,
30385.8658266608, 30222.0277559143, 29782.0066911118,
29088.3745125668, 28166.3799501078, 27043.2842345898,
25747.7040861001, 24308.9808544272, 22756.5925190868,
21119.6225918310, 19426.2968647761, 17703.5955493930,
15976.9448034830, 14269.9880973131, 12604.4344767057,
10999.9776823263, 9474.27740860901, 8042.99184115154,
6719.84908226620, 5516.74421729599, 4443.84861588558,
3509.71859807746, 2721.39178934399, 2084.46127662596,
1603.11996752768, 1280.17023277766, 1116.99684590512,
1113.50427955249, 1268.02242503615, 1577.18762121939,
2035.80836845943, 2636.72713468041, 3370.69112428433,
4226.24569164310, 5189.66418280805, 6244.92735636645,
7373.76417454963, 8555.76370912459, 9768.56524548272,
10988.1304940950, 12189.0982579438, 13345.2181049591,
14429.8557176643, 15416.5588079560, 16279.6689639607,
16994.9617025493, 17540.2944866322, 17896.2406618382,
18046.6862780797, 17979.3666622772, 17686.3204391813,
17164.2404606703, 16414.7037650984, 15444.2661746811,
14264.4113426067, 12891.3488428372, 11345.6610876327,
9651.80427295662, 7837.47398857248, 5932.85137962556,
3969.75060375578, 1980.69259573166, -2.06634848326782, -
1947.52007816068, -3826.87956069311, -5614.48829267702, -
7288.65389137473, -8832.36555557986, -10233.8701657873, -
11487.0839230633, -12591.8214778701, -13553.8303117064, -
14384.6245118595, -15101.1188049836, -15725.0705540530, -
16282.3441331798, -16802.0184343817, -17315.3639981849, -
17854.7211830251, -18452.3147105797, -19139.0426929660, -
19943.2797504905, -20889.7339968659, -21998.3964811048, -
23283.6191586471, -24753.3536931016, -26408.5784841272, -
28242.9354373575, -30242.5913353184, -32386.3314591090, -
34645.8855948352, -36986.4789938053, -39367.5935012973, -
41743.9171783752, -44066.4545520830, -46283.7643540291, -
48343.2874267444, -50192.7245334446, -51781.4221986387, -
53061.7244862944, -53990.2497920949, -54529.0542413571, -
54646.6470524151, -54318.8281113663, -53529.3238349118, -
52270.2039684717, -50542.0690479311, -48354.0056003723, -
45723.3135203239, -42675.0171837470, -39241.1785135951, -
35460.0361688843, -31375.0001013949, -27033.5347512312, -
22485.9670138654, -17784.2567288068, -12980.7677797288, -
8127.07696884357, -3272.85568958605, 1535.14383294402,
6253.97020163309, 10845.1999303987, 15275.4931579295,
19516.9673041274, 23547.3842891209, 27350.1532255181,
30914.1565539920, 34233.4132189664, 37306.5974936372,
40136.4363062625, 42729.0112676337, 45092.9939623039,
47238.8443895566, 49178.0027076781, 50922.1036675137,
52482.2413742360, 53868.3093778152, 55088.4376789922,
56148.5441879775, 57052.0136445266, 57799.5121688474,
58388.9406365386, 58815.5251300024, 59072.0379789961,
59149.1385172648, 59035.8187861711, 58719.9361242856,

Marta Núñez-Samper Muñoz 127


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
58188.8119838926, 57429.8744746626, 56431.3210871006,
55182.7778018913, 53675.9313273439, 51905.1124823074,
49867.8106904095, 47565.1020884734, 45001.9767774098,
42187.5541463897, 39135.1788622568, 35862.3939147564,
32390.7909240676, 28745.7416352587, 24956.0180376678,
21053.3117600068, 17071.6662217079, 13046.8373999942,
9015.60094896763, 5015.02474648683, 1081.72672806932, -
2748.86190830400, -6443.20836512133, -9970.34585882691, -
13302.4795955381, -16415.5152870030, -19289.4965331140, -
21908.9398658591, -24263.0589718803, -26345.8725174206, -
28156.1930195713, -29697.4972703424, -30977.6818554263, -
32008.7102498397, -32806.1607531872, -33388.6870872829, -
33777.4057617668, -33995.2262679955, -34066.1417423308, -
34014.4989079585, -33864.2668276047, -33638.3242537982, -
33357.7851330808, -33041.3810993506, -32704.9185830269, -
32360.8264810345, -32017.8082030692, -31680.6093688693, -
31349.9095275685, -31022.3430630746, -30690.6510092176, -
30343.9619052115, -29968.1961643828, -29546.5848025908, -
29060.2898770905, -28489.1107238423, -27812.2571524189, -
27009.1682599366, -26060.3535487284, -24948.2316561958, -
23657.9412952222, -22178.0990086742, -20501.4790916971, -
18625.5925390017, -16553.1441165063, -14292.3495991752, -
11857.0987973668, -9266.95412734198, -6546.97906114501, -
3727.39569162224, -843.075728997918, 2067.12564588052,
4961.17866880405, 7794.81153080119, 10522.5432407658,
13098.7898421427, 15479.0140993108, 17620.8866961020,
19485.4258454766, 21038.0820562337, 22249.7356691686,
23097.5766575595, 23565.8390479437, 23646.3660858337,
23338.9868447925, 22651.6902244511, 21600.5880470162,
20209.6650657986, 18510.3199521962, 16540.7075302918,
14344.8984805411, 11971.8782414997, 9474.41171933347,
6907.80450638196, 4328.59447475671, 1793.20974133077, -
643.369976612584, -2928.91171683980, -5015.15170313295, -
6858.90857972397, -8423.05756347209, -9677.33992437851, -
10598.9872678782, -11173.1457524538, -11393.0914446783, -
11260.2342889098, -10783.9144429775, -9981.00079826963, -
8875.30716567156, -7496.84668653509, -5880.94936139403, -
4067.27104709897, -2098.72475626844, -20.3665374123705,
2121.73140695077, 4281.58838275706, 6414.37334928446,
8477.38585735478, 10430.9355139297, 12239.0998029982,
13870.3447047397, 15297.9975087141, 16500.5663309649,
17461.9059371446, 18171.2343677554, 18623.0093930935,
18816.6778483629, 18756.3142904058, 18450.1680802069,
17910.1398632309, 17151.2094575836, 16190.8373645288,
15048.3615146941, 13744.4095129451, 12300.3446278029,
10737.7611918942, 9078.04205986553, 7341.98744302141,
5549.52094583452, 3719.47510928316, 1869.45535606193,
15.7780598204990, -1826.52436290053, -3643.64081894637, -
5422.87270610275, -7152.49151937036, -8821.57623341907, -
10419.8439022464, -11937.4864449425, -13365.0255811819, -

128 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
14693.1964029229, -15912.8681968593, -17015.0089547275, -
17990.6976229233, -18831.1856504606, -19528.0068965487, -
20073.1325535367, -20459.1655178214, -20679.5666803981, -
20728.9039768603, -20603.1137860138, -20299.7634330986, -
19818.3031577528, -19160.2959518114, -18329.6141460007, -
17332.5925013021, -16178.1288016614, -14877.7245006353, -
13445.4597883235, -11897.8994533161, -10253.9280510721, -
8534.51508741480, -6762.41311714117, -4961.79377940104, -
3157.82878422211, -1376.22467487406, 357.278228108459,
2017.43098298965, 3580.01255266530, 5022.36428220285,
6323.90856283175, 7466.63791898254, 8435.56110746949,
9219.09351546743, 9809.38017460265, 10202.5410541513,
10398.8299327606, 10402.7000456062, 10222.7718270098,
9871.70037662534, 9365.94272447926, 8725.42750564357,
7973.13222384355, 7134.57582555319, 6237.23675952026,
5309.90899639565, 4382.01056328443, 3482.86094325127,
2640.94513690663, 1883.18322336970, 1234.22483868657,
715.788067490934, 346.061785631763, 139.189478183849,
104.850984291570, 247.956500257424, 568.464535459867,
1061.33241127940, 1716.60438872653, 2519.63869141024,
3451.47065855611, 4489.30513370446, 5607.12709508903,
6776.41559734440, 7966.94245767405, 9147.63391760553,
10287.4708714301, 11356.4012897339, 12326.2372789241,
13171.5088812674, 13870.2472842783, 14404.6715933230,
14761.7557149663, 14933.6551554826, 14917.9775801456,
14717.8856936130, 14342.0262492386, 13804.2846097146,
13123.3700764893, 12322.2429804905, 11427.4000741825,
10468.0398779831, 9475.13411431248, 8480.43502854527,
7515.45109078859, 6610.42517005327, 5793.34968498143,
5089.05241694350, 4518.38462179887, 4097.53984274193,
3837.52750201477, 3743.82007205069, 3816.18657539641,
4048.71855090179, 4430.04769141823, 4943.74736444500,
5568.90343901720, 6280.83352499452, 7051.92813743421,
7852.58265866974, 8652.18548059550, 9420.12552471345,
10126.7815636993, 10744.4564574827, 11248.2215629801,
11616.6401150747, 11832.3431847899, 11882.4377230608,
11758.7329713658, 11457.7789006355, 10980.7180346836,
10332.9597131431, 9523.69323522063, 8565.26309043133,
7472.43533708114, 6261.58887745059, 4949.86868817803,
3554.33983656921, 2091.18125098923, 574.956685281768, -
982.002838670194, -2570.07550260810, -4182.66049464656, -
5816.30870027230, -7470.66381124624, -9148.21386317410, -
10853.8618508609, -12594.3325017704, -14377.4401490325, -
16211.2495906621, -18103.1675368280, -20059.0064634505, -
22082.0651972576, -24172.2712110357, -26325.4283398709, -
28532.6104499819, -30779.7365922869, -33047.3565217552, -
35310.6674020229, -37539.7733475298, -39700.1895396334, -
41753.5823841802, -43658.7269739147, -45372.6534037786, -
46851.9446725589, -48054.1413738576, -48939.2024706773, -
49470.9674390941, -49618.5631629021, -49357.6992860367, -

Marta Núñez-Samper Muñoz 129


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
48671.7983177445, -47552.9115800816, -46002.3789410721, -
44031.1989562019, -41660.0862347845, -38919.2041783155, -
35847.5732758797, -32492.1674219885, -28906.7227632801, -
25150.2949030224, -21285.6104386402, -17377.2673608486, -
13489.8454441400, -9685.99212157113, -6024.55126139264, -
2558.80164294744, 665.131241937435, 3609.63206380078,
6246.67110033698, 8558.55801706613, 10538.3452378049,
12189.8648312921, 13527.3962160207, 14574.9755519311,
15365.3709219734, 15938.7597954524, 16341.1563259060,
16622.6453363384, 16835.4870186507, 17032.1611391013,
17263.4217083966, 17576.4325560717, 18013.0510620377,
18608.3215662679, 19389.2319234772, 20373.7766075272,
21570.3580930983, 22977.5454061840, 24584.1952410794,
26369.9274156661, 28305.9332084961, 30356.0828026358,
32478.2871267154, 34626.0602507440, 36750.2215072385,
38800.6719245801, 40728.1775400627, 42486.0927628152,
44031.9601352748, 45328.9284476255, 46346.9389486919,
47063.6390402745, 47464.9939399570, 47545.5788954523,
47308.5471417237, 46765.2814048924, 45934.7488739677,
44842.5907078210, 43519.9868901257, 42002.3452201886,
40327.8691398451, 38536.0627399005, 36666.2325526910,
34756.0446068701, 32840.1917806673, 30949.2209175601,
29108.5617248647, 27337.7904950785, 25650.1515636530,
24052.3485777903, 22544.6065538609, 21120.9948044147,
19769.9905617125, 18475.2539217159, 17216.5769381235,
15970.9636032771, 14713.7932785128, 13420.0180135445,
12065.3441674752, 10627.3507687547, 9086.50099839303,
7427.00884167342, 5637.53005197361, 3711.65477383282,
1648.18810844881, -548.785823205161, -2870.05155951736, -
5301.60821382316, -7825.19219867315, -10418.9485545601, -
13058.2173135510, -15716.3975732015, -18365.8499363960, -
20978.7977350965, -23528.1889682157, -25988.4840375981, -
28336.3389826630, -30551.1597539677, -32615.5098392861, -
34515.3609373423, -36240.1840176208, -37782.8856577384, -
39139.6016712829, -40309.3664124747, -41293.6814925820, -
42096.0117403146, -42721.2389186412, -43175.1048743811, -
43463.6754158164, -43592.8543294099, -43567.9736693855, -
43393.4819554776, -43072.7464202120, -42607.9792262174, -
42000.2909250357, -41249.8676670512, -40356.2621148534, -
39318.7819648883, -38136.9547240176, -36811.0431599345, -
35342.5828399433, -33734.9115272617, -31993.6599911232, -
30127.1750146726, -28146.8479961849, -26067.3264153990, -
23906.5904028179, -21685.8824824180, -19429.4849965215, -
17164.3464789691, -14919.5650193612, -12725.7431579222, -
10614.2347814690, -8616.30959663649, -6762.26481430479, -
5080.51651345251, -3596.70464180412, -2332.84569177209, -
1306.56576173426, -530.444033548839, -11.4927839446503,
249.204931642416, 256.684616540539, 22.1078240517906, -
437.414290465891, -1099.17662066888, -1935.40362549416, -
2913.92326585414, -3998.96854935277, -5152.07945189021, -

130 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
6333.07468221150, -7501.06068607822, -8615.44451495075, -
9636.91771844949, -10528.3802141150, -11255.7760440691, -
11788.8169010625, -12101.5741115874, -12172.9251856369, -
11986.8468447050, -11532.5523745717, -10804.4769705259, -
9802.12021411583, -8529.75972724797, -6996.05420622041, -
5213.55729649598, -3198.16602283828, -968.528678588101,
1454.56281031145, 4048.77196263275, 6790.78607415352,
9656.83436494410, 12623.1399470600, 15666.2935869854,
18763.5415373812, 21892.9841437930, 25033.6862948123,
28165.7048895723, 31270.0421731179, 34328.5368920622,
37323.7076347913, 40238.5643618822, 43056.4049605067,
45760.6136665289, 48334.4774217338, 50761.0347376098,
53022.9695173318, 55102.5596649759, 56981.6873240816,
58641.9143863398, 60064.6236486961, 61231.2228233781,
62123.4056597436, 62723.4618422293, 63014.6251865581,
62981.4480425668, 62610.1887745948, 61889.1987482786,
60809.2953961184, 59364.1086267873, 57550.3890243202,
55368.2678728017, 52821.4609447146, 49917.4101019589,
46667.3589693029, 43086.3611439340, 39193.2215026219,
35010.3730722990, 30563.6935692976, 25882.2670345476,
20998.0969649228, 15945.7779544188, 10762.1331232197,
5485.82455779964, 156.943657023786, -5183.41226312280, -
10493.5714421082, -15731.7223233449, -20856.3472422032, -
25826.6517176518, -30602.9864899565, -35147.2598578321, -
39423.3380825206, -43397.4316307506, -47038.4648289384, -
50318.4261201518, -53212.6955924005, -55700.3458345422, -
57764.4115377806, -59392.1226661868, -60575.0955409513, -
61309.4758896034, -61596.0278657837, -61440.1632984680, -
60851.9060179376, -59845.7870474246, -58440.6677422192, -
56659.4895790337, -54528.9512036855, -52079.1154710636, -
49342.9514771243, -46355.8188940140, -43154.9041722518, -
39778.6202601283, -36265.9833025566, -32655.9812186791, -
28986.9500305125, -25295.9742515251, -21618.3274932301, -
17986.9686830915, -14432.1079086066, -10980.8539386364, -
7656.95297982886, -4480.62528532169, -1468.50295002164,
1366.33127414874, 4014.20789033914, 6468.64455776653,
8726.04054316763, 10785.3052272236, 12647.4366252712,
14315.0677351734, 15791.9996877137, 17082.7410845869,
18192.0725355822, 19124.6542528710, 19884.6926632814,
20475.6794287597, 20900.2131209880, 21159.9102046802,
21255.4080931037, 21186.4590113051, 20952.1094079081,
20550.9558660215, 19981.4650417387, 19242.3422542043,
18332.9310927085, 17253.6248948021, 16006.2702545562,
14594.5428760427, 13024.2770914146, 11303.7321759330,
9443.78113882457, 7458.01084147853, 5362.72595785642,
3176.85328888668, 921.747100849048, -1379.09970246007, -
3700.42982170338, -6015.66889201190, -8297.43052368349, -
10518.0612793575, -12650.2061736610, -14667.3744678482, -
16544.4855773790, -18258.3758094240, -19788.2483567647, -
21116.0514157155, -22226.7723573470, -23108.6394254792, -

Marta Núñez-Samper Muñoz 131


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
23753.2263024625, -24155.4589022185, -24313.5277408654, -
24228.7130224173, -23905.1329946271, -23349.4290298447, -
22570.4031440128, -21578.6251896195, -20386.0276857524, -
19005.5061569376, -17450.5419564024, -15734.8628995041, -
13872.1547141511, -11875.8334420096, -9758.88563644618, -
7533.77965794204, -5212.44773297854, -2806.33488886841, -
326.507570121715, 2216.18816568363, 4810.93135030998,
7446.70792035748, 10112.0848833601, 12794.9923384795,
15482.5283606520, 18160.8005305649, 20814.8159999216,
23428.4295182350, 25984.3559363306, 28464.2504860702,
30848.8567723446, 33118.2190650419, 35251.9523069876,
37229.5604107204, 39030.7910379855, 40636.0132535857,
42026.6033039056, 43185.3233421015, 44096.6782238815,
44747.2365118703, 45125.9035000985, 45224.1363185318,
45036.0938884026, 44558.7175374670, 43791.7412996111,
42737.6341560542, 41401.4795656937, 39790.8004265159,
37915.3399696415, 35786.8108945621, 33418.6262176631,
30825.6257667159, 28023.8119866628, 25030.1077376342,
21862.1471110937, 18538.1080442594, 15076.5927863036,
11496.5591969182, 7817.30259174024, 4058.48455431013,
240.201978502207, -3616.91324783297, -7491.57590717277, -
11361.7242690558, -15204.4069896331, -18995.6953875880, -
22710.6359522761, -26323.2567013020, -29806.6390026636, -
33133.0637859465, -36274.2377962581, -39201.6018314558, -
41886.7189088675, -44301.7362094967, -46419.9106312037, -
48216.1840332924, -49667.7909504100, -50754.8788544937, -
51461.1190863634, -51774.2854700600, -51686.7774343177, -
51196.0652290582, -50305.0365322149, -49022.2263447789, -
47361.9154820091, -45344.0870634746, -42994.2350308744, -
40343.0237036692, -37425.8025253735, -34281.9852567417, -
30954.3077352830, -27487.9827518261, -23929.7744193204, -
20327.0174762924, -16726.6091574322, -13174.0024920307, -
9712.23011170985, -6380.98685640038, -3215.79769655238, -
247.294812986575, 2499.37579882780, 5005.00196827016,
7256.59563553672, 9247.51914287729, 10977.4459812611,
12452.1594817593, 13683.1977471874, 14687.3575266965,
15486.0735982992, 16104.6934224799, 16571.6692749642,
16917.6917026437, 17174.7889517846, 17375.4170043540,
17551.5640705493, 17733.8918962739, 17950.9341500675,
18228.3695704439, 18588.3846095888, 19049.1371370561,
19624.3295009931, 20322.8960115307, 21148.8068260034,
22100.9873762602, 23173.3499616513, 24354.9319910299,
25630.1336231629, 26979.0462325807, 28377.8622004536,
29799.3559604529, 31213.4259650595, 32587.6872136157,
33888.1041285808, 35079.6538082576, 36127.0099541229,
36995.2380087051, 37650.4921986118, 38060.7052258140,
38196.2612761452, 38030.6428241644, 37541.0414343437,
36708.9224340438, 35520.5330232196, 33967.3431597685,
32046.4084952766, 29760.6448125232, 27119.0039082162,
24136.5417371763, 20834.3709377086, 17239.4916226119,

132 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
13384.4965529683, 9307.14949328275, 5049.83862948992,
658.910341479872, -3816.10774158685, -8323.38173513738, -
12809.7281729229, -17221.6324832697, -21506.3062357882, -
25612.7574842782, -29492.8465516715, -33102.2984179687, -
36401.6425911428, -39357.0520413501, -41941.0545022180, -
44133.0921904152, -45919.9097246514, -47295.7546528773, -
48262.3803952041, -48828.8474149328, -49011.1248430285, -
48831.5013780692, -48317.8208220984, -47502.5638425207, -
46421.8032227672, -45114.0647438671, -43619.1297120970, -
41976.8178336043, -40225.7904956898, -38402.4144546305, -
36539.7244134684, -34666.5200186909, -32806.6284881298, -
30978.3585357855, -29194.1646666284, -27460.5335054332, -
25778.0958656975, -24141.9600523622, -22542.2537360336, -
20964.8539514236, -19392.2776640298, -17804.6992010388, -
16181.0559054812, -14500.1998535866, -12742.0515274203, -
10888.7110517098, -8925.48401385606, -6841.78195142772, -
4631.86220792514, -2295.37785860127, 162.284429432872,
2729.89268578718, 5390.48952265947, 8121.74018459455,
10896.4965454038, 13683.5564951685, 16448.5905916631,
19155.2013533701, 21766.0754039227, 24244.1850466827,
26553.9938993912, 28662.6210316752, 30540.9196322463,
32164.4295267013, 33514.1677417365, 34577.2275749003,
35347.1640330600, 35824.1517544805, 36014.9103021125,
35932.4006624840, 35595.3055521766, 35027.3143769548,
34256.2410837991, 33313.0094048620, 32230.5448725160,
31042.6163001707, 29782.6710515169, 28482.7083064236,
27172.2326898484, 25877.3271445578, 24619.8789479926,
23416.9865057102, 22280.5672556961, 21217.1789858431,
20228.0584242950, 19309.3724458959, 18452.6689844429,
17645.5070729191, 16872.2386489167, 16114.9091184889,
15354.2393788995, 14570.6492133889, 13745.2807816589,
12860.9813662862, 11903.2065608804, 10860.8086009653,
9726.67938635118, 8498.22371634474, 7177.64510755381,
5772.03400815930, 4293.25596331391, 2757.64501763169,
1185.51506221092, -399.491338159378, -1971.19112145191, -
3501.75547666171, -4962.67705178860, -6325.77318392561, -
7564.18780663370, -8653.35520789045, -9571.89070642746, -
10302.3764839106, -10832.0151064821, -11153.1285029765, -
11263.4861179350, -11166.4523829921, -10870.9502954873, -
10391.2445023134, -9746.55361253155, -8960.50727481991, -
8060.46865264264};
long double Fb=0;
long double Fboya=0;

//Datos F radiacion
long double Ent_5_fr=0.0;
long double Ent_4_fr=0.0;
long double Ent_3_fr=0.0;
long double Ent_2_fr=0.0;
long double Ent_1_fr=0.0;

Marta Núñez-Samper Muñoz 133


ANEXO 2. CÓDIGO EN C DEL MICROPROCESADOR
long double Ent_0_fr=0.0;

long double Sal_5_fr=0.0;


long double Sal_4_fr=0.0;
long double Sal_3_fr=0.0;
long double Sal_2_fr=0.0;
long double Sal_1_fr=0.0;
long double Sal_0_fr=0.0;

#define b5_fr 94.410873556428630L


#define b4_fr -3.705675644284338e+02L
#define b3_fr 5.451310541297927e+02L
#define b2_fr -3.557909115022424e+02L
#define b1_fr 86.405183347349320L
#define b0_fr 0.411365049058489L
#define a5_fr 1.0L
#define a4_fr -4.926770037636182L
#define a3_fr 9.710917517233426L
#define a2_fr -9.572044670273614L
#define a1_fr 4.718418056060124L
#define a0_fr -0.930520862953686L

//Datos F transf posicion regular

long double Ent_7_x=0.0;


long double Ent_6_x=0.0;
long double Ent_5_x=0.0;
long double Ent_4_x=0.0;
long double Ent_3_x=0.0;
long double Ent_2_x=0.0;
long double Ent_1_x=0.0;
long double Ent_0_x=0.0;

long double Sal_7_x=0.0;


long double Sal_6_x=0.0;
long double Sal_5_x=0.0;
long double Sal_4_x=0.0;
long double Sal_3_x=0.0;
long double Sal_2_x=0.0;
long double Sal_1_x=0.0;
long double Sal_0_x=0.0;

#define b7_x 2.676096038975586e-09L


#define b6_x -7.832317704710612e-09L
#define b5_x 2.294424376339016e-09L
#define b4_x 1.317447519569563e-08L
#define b3_x -1.261713388129279e-08L
#define b2_x -2.851994282444329e-09L
#define b1_x 7.646613478984375e-09L
#define b0_x -2.490163195534501e-09L

134 Escuela Técnica Superior de Ingenieros Industriales (UPM)


“Modelado de un convertidor undimotriz del tipo absorbedor puntual en un microcontrolador”
#define a7_x 1.0L
#define a6_x -6.925854080181709L
#define a5_x 20.559894266693828L
#define a4_x -33.911505954597416L
#define a3_x 33.564167198974616L
#define a2_x -19.934597262597773L
#define a1_x 6.578369895137960L
#define a0_x -0.930474063427644L

//Datos F transf velocidad regular

long double Ent_7_v=0.0;


long double Ent_6_v=0.0;
long double Ent_5_v=0.0;
long double Ent_4_v=0.0;
long double Ent_3_v=0.0;
long double Ent_2_v=0.0;
long double Ent_1_v=0.0;
long double Ent_0_v=0.0;

long double Sal_7_v=0.0;


long double Sal_6_v=0.0;
long double Sal_5_v=0.0;
long double Sal_4_v=0.0;
long double Sal_3_v=0.0;
long double Sal_2_v=0.0;
long double Sal_1_v=0.0;
long double Sal_0_v=0.0;

#define b7_v 5.352192077951172e-07L


#define b6_v -2.636901956532357e-06L
#define b5_v 4.662250372742283e-06L
#define b4_v -2.486240208870961e-06L
#define b3_v -2.672081606526725e-06L
#define b2_v 4.625109526296417e-06L
#define b1_v -2.525387974010676e-06L
#define b0_v 4.980326391069003e-07L
#define a7_v 1.0L
#define a6_v -6.925854080181709L
#define a5_v 20.559894266693828L
#define a4_v -33.911505954597416L
#define a3_v 33.564167198974616L
#define a2_v -19.934597262597773L
#define a1_v 6.578369895137960L
#define a0_v -0.930474063427644L

Marta Núñez-Samper Muñoz 135

También podría gustarte