Este documento presenta un trabajo de fin de grado sobre el control de un convertidor DC/DC para una planta fotovoltaica mediante una plataforma embebida. Describe el modelo del sistema, incluyendo el convertidor elevador, la planta fotovoltaica y el algoritmo MPPT propuesto. También explica la implementación del concepto Processor In the Loop para simular el sistema en la plataforma embebida antes de la prueba en el entorno real. Finalmente, muestra los resultados de la simulación usando bloques en PLECS que demuestran el seguimiento
1. Control de un convertidor DC/DC para una planta
de paneles mediante plataforma embebida
Trabajo Fin de Grado
Mar´ıa Aguilar Vega
Tutor: Sergio V´azquez P´erez
Grado en Ingenier´ıa de las Tecnolog´ıas Industriales
Universidad de Sevilla
26 Junio 2017
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 1 / 38
2. ´Indice
1 Introducci´on
2 Modelo del sistema
3 Processor In the Loop
4 Implementaci´on
5 Conclusiones
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 2 / 38
4. Introducci´on Curvas caracter´ısticas
Curvas caracter´ısticas
Tensión (V)
Corriente(A)
Tensión (V)
Potencia(W)
Curvas de un panel o planta de paneles
(Vmpp, Pmax)
Voc
Voc
Isc (Vmpp, Impp)
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 4 / 38
5. Introducci´on Curvas caracter´ısticas
Tensión (V)
Corriente(A)
EFECTO DE LA IRRADIANCIA
1 kW/m2
< 1 kW/m2
<< 1 kW/m2
Tensión (V)
Potencia(W)
1 kW/m
2
< 1 kW/m2
<< 1 kW/m 2
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 5 / 38
6. Introducci´on Curvas caracter´ısticas
Tensión (V)
Corriente(A)
EFECTO DE LA TEMPERATURA
> 25o
C
25o C
Tensión (V)
Potencia(W)
> 25o
C
25o C
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 6 / 38
7. Introducci´on Algoritmo MPPT
M´etodo de Conductancia Incremental
En el punto de m´axima potencia la derivada es nula.
V
P
Pmax
dP/dV > 0
dP/dV < 0
dP
dV
=
d(VI)
dV
= I + V
dI
dV
I + V
∆I
∆V
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 7 / 38
8. Introducci´on Algoritmo MPPT
Inicio
Muestrear Ik, Vk
ΔI = Ik — Ik-1
ΔV = Vk — Vk-1
ΔV = 0
ΔI/ ΔV = - I/V
Incrementar
Vref
Decrementar
Vref
Incrementar
Vref
Decrementar
Vref
Volver
Sí Sí
ΔI = 0
ΔI/ ΔV > - I/V ΔI > 0
Sí Sí
Sí
Ik-1 = Ik
Vk-1= Vk
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 8 / 38
9. Introducci´on Uso de convertidores para la integraci´on en red
Uso de convertidores para la integraci´on en red
Configuraci´on multihileras
Estructura de control para doble etapa.
Red
Convertidor
elevadorFiltro
Conexión de
paneles
DC
DC
FiltroDC-Link
Inversor
Ipv Vpv
PWM
V*DC
Ig
_
+
Igref
VgPWM
AC
DCDC
DC
Algoritmo
MPPT Control
Voltaje
DC
Control en
corriente
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 9 / 38
10. Modelo del sistema
´Indice
1 Introducci´on
2 Modelo del sistema
3 Processor In the Loop
4 Implementaci´on
5 Conclusiones
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 10 / 38
11. Modelo del sistema Modelo del convertidor elevador
Modelo del convertidor elevador
_
+
Par´ametro Valor
L 5 mH
C 10 mF
Vdc 600 V
DC-Link se sustituye por una
fuente de tensi´on constante.
Necesidad de tiempos muertos
para la rama.
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 11 / 38
12. Modelo del sistema Modelo de la planta de paneles
Modelo de la planta de paneles
+
—
Emular el comportamiento del modelo
de panel SunPowerSPR–305–WHT.
Planta: 8 paneles en serie (96 c´elulas en
serie y 5 cadenas en paralelo).
Necesidad de diodos de bloqueo y paso
para evitar el comportamiento como
carga.
Potencia m´axima de 12.1 kW: 431, 6 V
y 28.1 A.
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 12 / 38
13. Modelo del sistema Algoritmo MPPT propuesto
Algoritmo MPPT propuesto
Inicio
Muestrear Ik, Vk
ΔI = Ik — Ik-1
ΔV = Vk — Vk-1
ΔV = 0
ΔI/ ΔV + I/V = 0
Volver
Sí Sí
Sí
Ik-1 = Ik
Vk-1= Vk
ΔVref = K1 * ( ΔI/ ΔV + I/V ) ΔVref = K2 * ΔI
ΔI = 0
Vref = Vk + ΔVref
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 13 / 38
14. Modelo del sistema Formulaci´on del lazo externo de control
Formulaci´on del lazo externo de control
_
+
Vdc
iout ifem
icon
C
dVdc
dt
+ iout = ifem
C
1
2
dV 2
dc
dt
= pfem − pout
pout = −C
dz
dt
+ pfem [z ≡
V 2
dc
2
]
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 14 / 38
15. Modelo del sistema Formulaci´on del lazo externo de control
t = to
ezo
ez
z, z⇤
t
t
z(t) = zo e
−T
τ [z = z − z∗
]
τ
dz
dt
+ z = 0 [z =
(Vdc )2
2
−
(V ∗
dc )2
2
]
p∗
out = pfem − C
dz∗
dt
+ Kpz
p∗
out = Kpz + Ki zdt
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 15 / 38
16. Modelo del sistema Formulaci´on del lazo interno de control
Formulaci´on del lazo interno de control
_
+
Vdc
iL
Vo
Vm
Vm = DVo
Vdc = L
diL
dt
+ Vm [i = iL − i∗
L ]
V∗
m = Vdc − L
di∗
L
dt
+ Kpi −→ V∗
m = Kpi + Ki idt
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 16 / 38
17. Processor In the Loop
´Indice
1 Introducci´on
2 Modelo del sistema
3 Processor In the Loop
4 Implementaci´on
5 Conclusiones
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 17 / 38
18. Processor In the Loop Visi´on general
Visi´on general
Modelo
ADC
Modelo
PWMPIL
ADC PWMDSP
Override Probe
Values
Read Probe
Values
Normal operation: interact´uan los perif´ericos del DSP con el
entorno real.
Ready for PIL: estado de simulaci´on.
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 18 / 38
19. Processor In the Loop Variables
Variables
Read Probes: DSP −→ simulaci´on
PIL READ PROBE(tipo variable, nombre, n, referencia,
"unidad")
Valor read = Valor
2n referencia
Override Probes: Simulaci´on −→ DSP
PIL OVERRIDE PROBE(tipo variable, nombre, n, referencia,
"unidad")
Acceder a trav´es de las macros:
INIT OPROBE(probe): inicializa las variables.
SET OPROBE(probe): asigna el valor a la variable.
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 19 / 38
20. Processor In the Loop Pil Prep Tool
Pil Prep Tool
Herramienta que forma parte del entorno de ejecuci´on.
Debe ejecutarse en la compilaci´on del c´odigo.
Genera autom´aticamente archivos auxiliares que se compilan y se
enlazan en las macros del c´odigo.
Contienen funciones de inicializaci´on.
Incluye un identificador ´unico global (GUID): a una compilaci´on s´olo le
corresponde un ´unico fichero .out con el c´odigo.
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 20 / 38
21. Processor In the Loop Ejecuci´on
Ejecuci´on
Comunicaci´on
Agente remoto que efect´ua el enlace de comunicaci´on con PLECS
(c´odigo precompilado).
PIL interact´ua con el driver de comunicaci´on espec´ıfico mediante dos
funciones:
CommCallback: PIL beginInterruptCall() en cada interrupci´on,
estableciendo servicio de comunicaci´on.
BackgroundcommCallback(): PIL backgroundCall() de manera
peri´odica, analiza mensajes entrantes.
Las acciones de control entre el hardware y la simulaci´on se llevan a
cabo mediante PilCallback().
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 21 / 38
22. Processor In the Loop Ejecuci´on
M´aquina de estados: PilCallback().
aCallbackReq
PIL_CLBK_ENTER_NOR
MAL_OPERATION_REQ
PIL_CLBK_LEAVE_NOR
MAL_OPERATION_REQ
PIL_CLBK_INITIALIZE
_SIMULATION
PIL_CLBK_TERMINAT
E_SIMULATION
PIL_CLBK_STOP_TIM
ERS
PIL_CLBK_START_TI
MERS
Inhibir Simulación
Habilitar actuación
Permitir Simulación
Deshabilitar actuación
Resetear Control
Resetear tareas
Iniciar Calibraciones
Detener reloj de actuaciones
Habilitar reloj de actuaciones
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 22 / 38
24. Implementaci´on Soluci´on mediante bloques
Soluci´on mediante bloques
V
A
VoutPV
i_L
V_dc A
IoutPV
A
IoutBoost
V VoutBoost
VoutPV
IoutPV
VoutBoost
IoutPV
VoutPV
Boost
Controller
V_pv
I_pv
Ref_Mod
i_bob
i_L
VmRef
1
>= C
0
enable
enable
Probe
PV V, I
V_PV
P_PVV,I
I_pv
I_ppv
V_ppv
P_ppv
P vs V
P_ppv
I_ppv
V_ppv
I vs V
V_ppv
i_L VmRef
VoutBoost
sw
PWM
Duties
V_dclink
V_mRef
sw
swtop
swbottom
swtop
swbottom Planta PV-
+
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 24 / 38
25. Implementaci´on Soluci´on mediante bloques
Bloque Boost Controller
V_pv
I_pv
MPPT
Ipv
Vpv
V_Ref
Vdc
Ipv
Vdc
VdcRef
PrefExternal Control Loop P_ref
V_dcref
V_dc
Pref
Vdc
Ref_Mod
Inner Control Loop
Refmod
IL
Vpanel
P_ref
Enable
VdcRef
i_bob
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 25 / 38
26. Implementaci´on Soluci´on mediante bloques
Bloque PWM
*
/ >= NOT
Duties
V_dclink
V_mRef
C
enable
NOT NOT
AND
AND
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 26 / 38
27. Implementaci´on Soluci´on mediante bloques
Resultados de simulaci´on
Vout(V)
600.0
Ipv(A)
0
10
20
30
601.0
599.0
tiempo (s)
0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
Ipv(A)
0
10
20
30
Vpv(V)
0
200
400
600
tiempo (s)
0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
IL(A)
-20
0
20
40
60
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 27 / 38
28. Implementaci´on Soluci´on mediante bloques
0.4
20
10
0
-10
-20
0 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
tiempo(s)
IL e ILref (A)
60
50
40
30
0.2
Seguimiento en corriente
0.40 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.00.2
500
490
480
470
460
450
440
430
420
520
510
tiempo(s)
Vpv y VpvRef (V)
Seguimiento en tensi´on
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 28 / 38
29. Implementaci´on Soluci´on en C
Soluci´on en C
de(t)
dt
=
ek − ek−1
T
t
0
e(τ)dτ =
k−1
i=0
e(i)T = T
k−1
i=0
ei
e(t)
tk-1 k
T
Discretizaci´on
uk = uk−1 + Kpek − Kpek−1 + Ki Tsek−1
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 29 / 38
30. Implementaci´on Soluci´on en C
Resultados de simulaci´on
Vout(V)
600.0
Ipv(A)
0
10
20
30
601.0
599.0
tiempo (s)
0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
Ipv(A)
0
10
20
30
Vpv(V)
0
200
400
600
tiempo (s)
0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
IL(A)
-20
0
20
40
60
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 30 / 38
31. Implementaci´on Soluci´on en C
0.4
20
10
0
-10
-20
0 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
tiempo(s)
IL e ILref (A)
60
50
40
30
0.2
Seguimiento en corriente
0.40 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.00.2
500
490
480
470
460
450
440
430
420
520
510
tiempo(s)
Vpv y VpvRef (V)
Seguimiento en tensi´on
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 31 / 38
32. Implementaci´on Implementaci´on en PIL
Implementaci´on en PIL
V
A
VoutPV
i_L
V_dc A
IoutPV
A
IoutBoost
V VoutBoost
VoutBoost
IoutPV
VoutPV
i_L
1
>= C
0
enable
Probe
PV V, I
V_PV
P_PVV,I
I_pv
I_ppv
V_ppv
P_ppv P vs V
P_ppv
I_ppv
V_ppv
I vs V
V_ppv
sw
swtop
swbottom
swtop
swbottom Planta PV-
+
PIL
VoutPV
i_L
Adaptacion de
medidas
i_L
VoutPV
i_L'
VoutPV'
IoutPV IoutPV'
VoutDC VoutDC'
C2000 ADC
i_L'
IoutPV'
RESULTx
INT
VoutPV'
VoutDC'
IoutPV
VoutBoost
sw
0C
Value: Processor
enable
C
C2000 ePWM
s
CMPxA
SOC
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 32 / 38
33. Implementaci´on Implementaci´on en PIL
Inicio
Inicialización de
la tarjeta
Configuración
de la Flash
Incialización de las
variables Override
Probes
while(1)
Iniciar la interfaz de
comunicación serie
Inicializar el
entorno PIL
Iniciar control: PWM
ADC e interrupciones
Pedir el modo PIL
Tareas de fondo
de PIL
Inicio
Leer registros del ADC
y variables de control
Calcular valores reales
de las medidas
Sistema habilitado
Primer ciclo
contador MPPT =
ciclo MPPT
contador MPPT =
ciclo MPPT
MPPT
LAZOS DE
CONTROL
Escribir registro del
comparador
Volver
Sí
Sí
Sí
No
No
No
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 33 / 38
34. Implementaci´on Implementaci´on en PIL
Resultados de simulaci´on
VoutBoost(V)
599.0
600.0
601.0
IoutPV(A)
tiempo (s)
0
10
20
30
0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8
IoutPV(A)
0
10
20
30
VoutPV(V)
0
200
400
600
tiempo (s)
0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8
i_L(A)
-20
0
20
40
60
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 34 / 38
35. Implementaci´on Implementaci´on en PIL
tiempo (s)
0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
420
430
440
450
460
470
480
490
500
510
520
Vpv yVpvref (V)
Seguimiento de tensi´on
tiempo (s)
0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
IL e ILref (A)
-20
-10
0
10
20
30
40
50
60
Seguimiento en corriente
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 35 / 38
36. Conclusiones
´Indice
1 Introducci´on
2 Modelo del sistema
3 Processor In the Loop
4 Implementaci´on
5 Conclusiones
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 36 / 38
37. Conclusiones
Conclusiones
→ Comportamiento m´as realista.
→ Acotaci´on de errores.
→ Minimizar p´erdidas.
→ Facilidad para conmutar entre ambos modos de operaci´on.
Mar´ıa Aguilar Vega (GITI) Trabajo Fin de Grado 26 Junio 2017 37 / 38