Escolar Documentos
Profissional Documentos
Cultura Documentos
Engenharia de Energia
Brasília
2017
Yan Rodrigues de Sousa
Brasília
2017
Yan Rodrigues de Sousa
Estudo do rastreamento do ponto de máxima potência – MPPT – Em sistemas
de geração fotovoltaica/ Yan Rodrigues de Sousa. – Brasília, 2017-
112 p. : il. (algumas color.) ; 30 cm.
CDU 02:141:005.6
Yan Rodrigues de Sousa
Brasília
2017
Agradecimentos
Agradeço aos meus amigos e familiares, sobretudo ao meu pai, por me dar apoio
incondicional e me ajudar a trilhar o árduo caminho da graduação da melhor maneira
possível.
Agradeço a todos os professores que me agraciaram com o conhecimento durante
esses anos de vivência acadêmica, em especial ao professor Jorge Andrés Cormane Anga-
rita que me orientou de forma sábia e paciente durante a execução deste trabalho.
Resumo
Este trabalho faz um estudo de técnicas de rastreamento de pontos de máxima potência
a partir da modelagem matemática do circuito equivalente para um sistema fotovoltaico.
Foi feito um levantamento com métodos de rastreamento MPPT de modo a tornar claro
como estes encaixam-se na modelagem de um sistema de geração fotovoltaica. O ponto de
partida para esta modelagem foi o equacionamento do circuito equivalente com um único
diodo, cujos parâmetros foram extraídos de um painel de modelo especificado, assim,
foram geradas curvas típicas I-V e P-V para condições ideais de operação como forma de
validar a simulação por meio da comparação com dados simulados e dados do fabricante.
Foram utilizadas curvas reais de irradiância, em três cenários: céu limpo, céu parcial e céu
nublado. Obteve-se, ainda, os PMPs postos em curvas P-V para cada valor de irradiância
de cada cenário, assim pode-se observar como se dá variação do PMP ao longo de vários
valores de irradiância. Então, a partir destas curvas foi possível obter os PMPs para cada
cenário proposto, gerando assim valores de referência para tensão, corrente e potência.
Além disso, foram implementados e comparados dois algoritmos de rastreamento de PMP,
o Perturba e Observa e o Condutância Incremental. Esses algoritmos foram utilizados
para ajustar o ciclo de trabalho de um conversor CC - CC do tipo Buck-Boost, assim os
valores resultantes na perseguição do PMP foram avaliados e comparados com os valores
de referência para o módulo fotovoltaico. Foram obtidas eficiência quase idênticas para
ambos algoritmos, sendo que a maior parte das perdas ocorreram no conversor.
CA Corrente alternada
CC Corrente contínua
CI Condutância Incremental
CRESESB Centro de Referência para Energia Solar e Eólica Sérgio de Salvo Brito
FF Fator de forma
PV Fotovoltaico
𝐴 Área do módulo
𝐶 Capacitância
𝐶𝑝 Capacitâncias Parasitas
𝐹 Frequência do switch
𝐺 Irradiância
𝐼 Corrente
𝐼𝑘 Corrente na iteração k
𝑖𝐿 Corrente no indutor
𝑘 Constante de Stefan-Boltzmann
𝐿 Indutância
𝑃 Potência
𝑞 Carga do elétron
𝑅𝑠 Resistência série
𝑡 Tempo
𝑇 Período
𝑇𝑐 Temperatura de referência
𝑉 Tensão
𝑉𝐶 Tensão no capacitor
𝑉𝑘 Tensão na iteração k
𝑉𝐿 Tensão no indutor
𝑉𝑡 Tensão térmica
𝛽, 𝑐 Parâmetros método 𝛽
𝜂 Eficiência da célula
Sumário
1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.1 Objetivo Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.1.1 Objetivos Específicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.2 Organização do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . 18
4 CONVERSORES CC - CC . . . . . . . . . . . . . . . . . . . . . . . 36
4.1 Conversor Buck-Boost . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.1.1 Topologia do Conversor Buck-Boost . . . . . . . . . . . . . . . . . . . . . 37
4.1.2 Análise para o switch fechado . . . . . . . . . . . . . . . . . . . . . . . . 38
4.1.3 Análise para o switch aberto . . . . . . . . . . . . . . . . . . . . . . . . . 39
5 MÉTODOS E MATERIAIS . . . . . . . . . . . . . . . . . . . . . . . 41
5.1 Modelagem do circuito equivalente para o módulo solar . . . . . . . 42
5.2 Curvas reais de irradiância . . . . . . . . . . . . . . . . . . . . . . . . 43
5.3 Implementação do algoritmo Perturba e Observa (P&O) . . . . . . 45
5.4 Implementação do algoritmo Condutância Incremental (CI) . . . . . 46
5.5 Implementação dos algoritmos no conversor Buck-Boost . . . . . . . 49
5.6 Modelagem do Conversor no Simulink . . . . . . . . . . . . . . . . . 50
6 RESULTADOS E ANÁLISES . . . . . . . . . . . . . . . . . . . . . . 53
6.1 Validação do Modelo de Circuito Equivalente . . . . . . . . . . . . . 53
6.2 Análise dos algoritmos de rastreamento para curvas reais de irradi-
ância . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
6.3 Comparação entre P&O, Cl e valores de referência . . . . . . . . . 55
6.4 Efeito da variação na irradiância nos algoritmos . . . . . . . . . . . . 57
6.4.1 Curvas P-V e I-V com variação na irradiância . . . . . . . . . . . . . . . . 57
6.4.2 Ciclo de trabalho do conversor com variação na irradiância . . . . . . . . . 59
6.4.3 Efeito da variação na irradiância nas tensões na entrada e na saída do conversor 60
6.4.4 Efeito da variação na irradiância nas correntes na entrada e na saída do
conversor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.4.5 Efeito da variação na irradiância nas potências na entrada e na saída do
conversor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.5 Efeito da variação na temperatura no algoritmos . . . . . . . . . . . 63
6.5.1 Curvas P-V e I-V com variação na temperatura . . . . . . . . . . . . . . . 63
6.5.2 Ciclo de trabalho do conversor com variação na temperatura . . . . . . . . 64
6.5.3 Efeito da variação na temperatura nas tensões na entrada e na saída do
conversor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
6.5.4 Efeito da variação na temperatura nas correntes na entrada e na saída do
conversor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6.5.5 Efeito da variação na temperatura nas potências na entrada e na saída do
conversor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
6.6 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
6.6.1 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
1 Introdução
𝑉 + 𝑅𝑠 𝐼 𝑉 + 𝑅𝑠 𝐼
[︂ (︂ )︂ ]︂
𝐼 = 𝐼𝑝𝑣 − 𝐼𝐷 exp −1 − (2.1)
𝑉𝑡 · 𝑎 𝑅𝑠ℎ
Onde, o primeiro termo é 𝐼𝑝𝑣 , a corrente gerada pela absorção de luz. O segundo
termo da equação advém da lei do diodo proposta por Shockley, na qual 𝐼𝐷 é a corrente
reversa de saturação do diodo, 𝑉 é a tensão entre os terminais saída, 𝑅𝑠 é a resistência
em série, 𝑎 é o fator de idealidade do diodo e 𝑉𝑡 é a tensão térmica. A tensão térmica, por
sua vez é obtida a partir da seguinte relação:
𝑘 · 𝑇𝑎𝑐
𝑉𝑡 = (2.2)
𝑞
A equação 2.2 relaciona tensão à temperatura e explicita outra dependência impor-
tante entre parâmetros que afetam diretamente o estudo rastreamento dos pontos máxima
potência, dado o comportamento inversamente proporcional existente entre estes. Onde,
𝑘 é a constante de Boltzmann, 𝑇𝑎𝑐 é a temperatura e 𝑞 é a carga do elétron.
Capítulo 2. Princípio de Funcionamento de uma célula fotovoltaica 21
𝐼𝑠𝑐
𝐼𝐷 = (︁
𝑞·𝑉𝑜𝑐
)︁ (2.3)
exp 𝑛·𝑘·𝑇𝑎𝑐
−1
𝐼𝑠𝑐
𝐼𝑝𝑣 = 𝐺 · (2.4)
𝐺𝑛𝑜𝑚
Onde 𝐺 é a irradiância absorvida 𝐺𝑛𝑜𝑚 é a irradiância nominal, geralmente dado
pelo fabricante e igual a 1000 𝑊/𝑚2
Por fim, o último termo da equação 2.1 representa a corrente no ramo do resistor
shunt, portanto, 𝑅𝑠ℎ é a resistência shunt conectada em paralelo. O terceiro termo desta
equação é, aceitavelmente desprezado pelo fato da resistência shunt possui valor muito
próximo de infinito.
Desta maneira, é possível determinar os parâmetros da célula nos casos extre-
mos: para os terminais da carga em curto-circuito, para circuito aberto e para os valores
máximos de corrente e tensão na carga, segundo (CUBAS J.; PINDADO, 2014):
𝑅𝑠 𝐼𝑠𝑐 𝑅𝑠 𝐼𝑠𝑐
[︂ (︂ )︂ ]︂
𝐼𝑠𝑐 = 𝐼𝑝𝑣 − 𝐼𝐷 exp −1 − (2.5)
𝑉𝑡 · 𝑎 𝑅𝑠ℎ
𝑉𝑜𝑐 𝑉𝑜𝑐
[︂ (︂ )︂ ]︂
0 = 𝐼𝑝𝑣 − 𝐼𝐷 exp −1 − (2.6)
𝑉𝑡 · 𝑎 𝑅𝑠ℎ
c) Equação de máxima potencia, 𝐼𝑚𝑝 ,𝑉𝑚𝑝 :
Analisando a curva acima, e sabendo que a potência é dada pelo produto entre a
corrente e a tensão, percebe-se que para o caso de curto-circuito a tensão torna-se zero,
o que acarreta numa potência também igual a zero. De maneira análoga para o caso
de circuito aberto, a corrente torna-se zero, o que consequentemente leva a potência à
zero. Tais constatações reforçam a importância de se obter um binômio corrente-tensão
no qual há a maior área possível abaixo da curva I-V, e esta situação é atingida no ponto
de máxima potência (PMP).
Para a obtenção da curva acima exige-se uma irradiação de 1000 𝑊/𝑚2 , e uma
temperatura de 25𝑜 𝐶, tais condições são utilizadas como padrão na indústria fotovoltaica
para obtenção das especificações que determinam a performance do módulo.
A partir da relação básica amplamente conhecida que relaciona a potência e tensão:
𝑃 =𝑉 ·𝐼 (2.8)
Outro parâmetro para avaliar a performance de uma célula solar que pode ser
extraído da figura 3 é o fator de preenchimento, que demonstra quão próximo da curva
ideal a célula está operando. O maior valor para corrente é atingido no caso de curto-
circuito, enquanto o maior valor de tensão é obtido no caso de circuito aberto entre
os terminais da célula, logo, considerando que esses casos fossem possíveis de acontecer
simultaneamente, o produto entre esses valores de corrente e tensão resultaria num valor
máximo limitante de potência. Desta forma, o fator de preenchimento é calculado pela
razão entre corrente e a tensão de máxima potência pela corrente de curto-circuito e a
tensão de circuito aberto:
𝑉𝑚𝑝 · 𝐼𝑚𝑝
𝐹𝐹 = (2.9)
𝑉𝑜𝑐 · 𝐼𝑠𝑐
O fator de preenchimento fica na faixa de 0,6 - 0,8 para células de silício (CHAAR,
2011) e é levado em conta para definir a eficiência da célula fotovoltaica a partir da
expressão que relaciona a potência máxima elétrica gerada obtida através do circuito
equivalente da célula, com a irradiância absorvida 𝐺, considerando o a área total A, da
célula em contato com os raios solares:
𝐹 𝐹 · (𝑉𝑜𝑐 𝐼𝑠𝑐 )
𝜂= (2.10)
𝐴·𝐺
Capítulo 2. Princípio de Funcionamento de uma célula fotovoltaica 24
2.1.3 Efeitos das resistências shunt e resistência série nas células solares
Através da análise do circuito equivalente da célula solar, é possível perceber que
para que tal se aproxime do modelo ideal sem perdas é interessante que se tenha um valor
Capítulo 2. Princípio de Funcionamento de uma célula fotovoltaica 26
alto para a resistência shunt, visto que isso fará com que a corrente gerada pela absorção
da irradiação prefira seguir para o ramo onde a carga é conectada, evitando perdas. Já
para a resistência em série, valores baixos são proporcionam uma melhor performance, pois
diminuem a queda de tensão causada pelo resistor, fazendo com que as perdas também
sejam menores. As curvas abaixo evidenciam tal comportamento:
𝑑𝑃 𝑑𝐼 𝑑𝑉
=𝑉 +𝐼 =0 (3.1)
𝑑𝑡 𝑑𝑡 𝑑𝑡
O grande obstáculo deste método é resolver essa equação rapidamente, dada a
grande quantidade de parâmetros que são levados em consideração nesta equação e o fato
de que as medições e cálculos são feitos em tempo real com sistema em operação (XIAO
et al., 2007), (ELSAYED et al., 2013) .
𝑑𝑃
=0 (3.2)
𝑑𝑉
𝑑(𝑉 𝐼) 𝐼
=− (3.3)
𝑑𝑉 𝑉
𝑑𝑉
𝐼𝐶𝑝 = 𝐶𝑝 (3.4)
𝑑𝑡
Após a consideração deste novo termo, este método atua de maneira equivalente
ao algoritmo condutância incremental para calcular o PMP .
1
(︂ (︂ )︂)︂
𝑉𝑚𝑝 = 𝑉𝑜𝑐 + 𝑏 · 𝑉𝑜𝑐 · 𝑙𝑛 𝑏 − 𝑏 · 𝑒𝑥𝑝 − (3.5)
𝑏
⎡ (︁ )︁ ⎤
1 − 𝑏 + 𝑏 · 𝑒𝑥𝑝 − 1𝑏
𝐼𝑚𝑝 = 𝐼𝑠𝑐 ⎣· (︁ )︁ ⎦ (3.6)
1 − 𝑒𝑥𝑝 − 1𝑏
Capítulo 3. Algoritmos de rastreamento do ponto de máxima potência 33
implementar este método a tensão de circuito aberto é medida e então a constante dada
pela razão entre a tensão de máxima potência e a tensão de circuito aberto é utilizada
continuamente até que se obtenha o PMP (KIRANMAYI, 2013).
√
−𝑢 𝑢2 − 3𝑤𝑧
𝑉𝑚𝑝 = (3.10)
3𝑎
Capítulo 3. Algoritmos de rastreamento do ponto de máxima potência 35
3.2.7 Método 𝛽
Neste método,o parâmetro 𝛽 é calculado a partir da corrente de saturação reversa
do diodo, 𝐼𝑜 e a constante do diodo 𝑐, conforme a seguinte expressão (BHATNAGAR;
NEMA, 2013):
𝐼
(︂ )︂
𝛽 = 𝑙𝑛(𝐼𝑜 · 𝑐) = 𝑙𝑛 −𝑐·𝑉 (3.11)
𝑉
Assim, 𝛽 é calculado periodicamente e comparado com um valor referência, para,
então, podendo ser combinado com outros algoritmo, e assim, rastrear o PMP.
36
4 Conversores CC - CC
𝑡𝑜𝑛
𝐷= (4.1)
𝑡𝑜𝑛 + 𝑡𝑜𝑓 𝑓
Os conversores são classificados quanto a forma na qual eles agem sobre a tensão
de entrada:
Capítulo 4. Conversores CC - CC 37
𝑉𝑜 = 𝐷 · 𝑉𝑠 (4.2)
𝑉𝑠
𝑉𝑜 = (4.3)
1−𝐷
∙ Conversores Buck-Boost: Possuem a capacidade tanto de elevar, utilizando
valores de D > 0,5, quanto abaixar a tensão de entrada 𝑉𝑠 , utilizando valores de D
< 0,5, por meio da equação abaixo:
𝐷
𝑉𝑜 = · 𝑉𝑠 (4.4)
1−𝐷
𝑑𝑖𝐿
𝑉𝐿 = 𝑉𝑠 = 𝐿 (4.5)
𝑑𝑡
Logo,
𝑉𝑠 𝑑𝑖𝐿
= (4.6)
𝐿 𝑑𝑡
Considerando que a corrente do indutor aumenta de maneira uniforme durante o
período de tempo que o switch está ligado, e substituindo na equação anterior tem-se:
∫︁ 𝐷𝑇 ∫︁ 𝐷𝑇
𝑉𝑠
Δ𝑖𝐿 = 𝑑𝑖𝐿 = 𝑑𝑡 (4.7)
0 0 𝐿
Capítulo 4. Conversores CC - CC 39
𝑉𝑠 · 𝐷 · 𝑇
Δ𝑖𝐿 = (4.8)
𝐿
𝑑𝑖𝐿
𝑉𝐿 = 𝑉𝑐 = 𝑉𝑜 = 𝐿 (4.9)
𝑑𝑡
Logo,
𝑉𝑜 𝑑𝑖𝐿
= (4.10)
𝐿 𝑑𝑡
Analogamente, considerando a taxa de variação da corrente é constante com rela-
ção ao tempo, e tem-se que:
∫︁ (1−𝐷)𝑇 ∫︁ (1−𝐷)𝑇
𝑉𝑜
Δ𝑖𝐿 = 𝑑𝑖𝐿 = 𝑑𝑡 (4.11)
0 0 𝐿
Portanto, para o switch aberto obtém-se que:
𝑉𝑜 · (1 − 𝐷) · 𝑇
Δ𝑖𝐿 = (4.12)
𝐿
A partir das equações 4.5, 4.8, 4.9 e 4.12 que relaciona as correntes e as tensões
com o ciclo de trabalho e sabendo que para o switch fechado:
Capítulo 4. Conversores CC - CC 40
𝑖𝐿 = 𝑖𝑆 (4.13)
𝑖𝐶 = −𝑖𝑂 (4.14)
𝑖𝐿 = 𝑖𝐶 (4.15)
𝑖𝑆 = 0 (4.16)
5 Métodos e Materiais
dos valores gerados pelo mesmo com aqueles valores de referência obtidos pelas curvas
típicas.
Já a etapa 2 consiste em utilizar o algoritmo de rastreamento para ajustar iterati-
vamente o ciclo de trabalho do conversor Buck-Boost, isto é, além de encontrar a tensão
de máxima potência, o algoritmo calcula o ciclo de trabalho que o conversor é submetido.
Para esta etapa, utiliza-se valores de irradiância e temperatura aleatórios como forma de
observar o comportamento do conversor quando equipado com algoritmo de rastreamento.
a tensão de circuito aberto na curva I-V. O que resulta nas seguintes equações, propostas
por (KHATIB; ELMENREICH, 2016) e outros autores.
𝑑𝑉 1
𝑅𝑠 = − − (5.1)
𝑑𝐼𝑉𝑜𝑐 𝑋𝑣
Onde,
𝑞 𝑞 · 𝑉𝑜𝑐
(︂ )︂
𝑋𝑣 = 𝐼𝐷 · · exp (5.2)
𝑎 · 𝑘 · 𝑇𝑎𝑐 𝑎 · 𝑘 · 𝑇𝑎𝑐
Sendo assim calculado por meio das variáveis com a apresentadas no Capítulo 2.
Já a resistência shunt, conforme (KHATIB; ELMENREICH, 2016),(KALIAMOORTHY;
SEKAR; RAJ, 2010),(FARANDA; LEVA, 2008) e outros autores, pode ser desprezada
visto que,
𝑅𝑠ℎ ≈ ∞ (5.3)
Portanto, a corrente que flui no ramo referente a resistência shunt torna-se zero e
equação 2.1 reduz-se a sem prejuízos ao modelo.
𝑉 + 𝑅𝑠 𝐼
[︂ (︂ )︂ ]︂
𝐼 = 𝐼𝑝𝑣 − 𝐼𝐷 exp −1 (5.4)
𝑉𝑡 · 𝑎
Devido ao fato da corrente de saída 𝐼 aparecer em ambos os lados da equação
acima, foi utilizado o método iterativo Newton-Raphson, expresso na equação abaixo
𝑓 (𝐼(𝑛) )
𝐼(𝑛+1) = 𝐼(𝑛) − (5.5)
𝑓 ′ (𝐼(𝑛) )
Tabela 2 – Irradiação solar diária média para meses do ano (CRESEB/CEPEL, 2014)
A escolha dos dias foi feita a partir da ferramenta de visualização de dados dis-
ponibilizada pelo SONDA, na qual é possível observar as curvas de irradiância para cada
dia. A consulta resultou na escolha dos dias 05 de fevereiro, 19 de julho e 25 de março para
os casos de céu limpo, céu parcial e céu nublado respectivamente, conforme as curvas des-
critas abaixo. Cada ponto destas curvas é usada como entrada para o circuito equivalente
e capaz de gerar uma curva P-V e outra I-V característica.
Capítulo 5. Métodos e Materiais 45
(a)
(b)
(c)
Figura 19 – Curva irradiância para dia com: (a) céu limpo (b) céu parcial (c) céu nublado
O processo para que o o PMP seja encontrado é descrito na figura 20, onde através
de incrementos na tensão, o algoritmo percorre de um PMP de uma curva P-V referente a
uma irradiância, para outro quando essa irradiância é modificada. Deste modo, o algoritmo
utiliza como incremento para cada loop iterativo o valor de 0,5 V e assim, percorre as
curvas características P-V até que o ponto de máxima potência seja atingido.
do que zero, enquanto à direita do PMP esse coeficiente é maior do que zero como pode
ser visto na figura abaixo:
𝑑(𝑉 𝐼) 𝑑𝐼
=𝑉 +𝐼 =0 (5.6)
𝑑𝑉 𝑑𝑉
A partir dessa relação, as equações que avaliam os parâmetros neste método serão:
∙ Operando no PMP:
𝑑𝐼 𝐼
=− (5.7)
𝑑𝑉 𝑉
∙ Operando à esquerda do PMP:
𝑑𝐼 𝐼
>− (5.8)
𝑑𝑉 𝑉
∙ Operando à direita do PMP:
𝑑𝐼 𝐼
<− (5.9)
𝑑𝑉 𝑉
Para definição dos parâmetros utilizou os valores abaixo como condições de projeto:
(1 − 𝐷𝑚𝑝 )2 · 𝑅𝑐𝑎𝑟𝑔𝑎
𝐿𝑚𝑖𝑛 = (5.10)
2·𝐹
𝐷𝑚𝑝 · 𝑉𝑆𝑚𝑎𝑥
𝐶𝑚𝑖𝑛 = (5.11)
𝑅𝑐𝑎𝑟𝑔𝑎 · 𝐹 · Δ𝑉𝑆𝑚𝑎𝑥
Capítulo 5. Métodos e Materiais 50
Desta maneira chegou se aos valores 𝐿 > 33, 40 𝜇𝐻 e 𝐶 > 1055 𝜇𝐹 . Optando
por valores comerciais que satisfaçam as condições propostas com certa folga em todos os
cenários, tem-se os seguintes valores utilizados:
Capacitância, 𝐶1 2000 𝜇𝐹
Capacitância, 𝐶2 2000 𝜇𝐹
Indutância, 𝐿 47 𝜇𝐻
Por fim, a carga é resistiva e é declarada também por meio de um código de Matlab,
sendo definido conforme o valor expresso na tabela 3 desta seção.
53
6 Resultados e Análises
Este capítulo apresenta os resultados obtidos nos diferentes cenários propostos.
(a) (b)
(c) (d)
(e) (f)
Figura 28 – Cenário de dia com céu céu limpo: (a) Algoritmo P&O (b) Algoritmo CI.
Cenário de dia com céu céu parcial: (c) Algoritmo P&O (d) Algoritmo CI.
Cenário de dia com céu céu nublado: (e) Algoritmo P&O (f) Algoritmo CI.
eixo x, da tensão foi colocado na faixa entre 20 𝑉 e 32 𝑉 , visto que a maior parte das
coordenadas de 𝑉𝑚𝑝 estão nessa faixa. Assim, obteve-se os gráficos para as três situações
estudadas:
(a)
(b)
(c)
Figura 29 – Convergência dos algoritmos e valores de referência para dia com: (a) céu
limpo (b) céu parcial (c) céu nublado
Capítulo 6. Resultados e Análises 57
Observou-se para ambos os os algoritmos que nos três casos não há divergências
maiores que 1 𝑉 , quando compara-se as coordenadas dos valores de referência e os valo-
res obtidos por meio do algoritmo de rastreamento. Isto se deve ao fato do incremento
utilizado ser de apenas 0, 5 𝑉 para cada iteração.
Como forma de avaliar e comparar mais claramente a eficiência de cada algoritmo,
foi calculada a partir das amostras de tempo valores de potência obtidos, a energia total
gerada para cada caso a partir dos algoritmos, de modo a obter a seguinte tabela:
Tabela 6 – Comparação entre valores de energia obtidos para ambos algoritmos em dife-
rentes cenários climáticos
A partir da tabela acima é possível observar que apesar de valores muito próximos,
o algoritmo CI atingiu maiores valores de energia, logo, mais próximos das condições
teóricas, o que condiz com o que (HOHM; ROPP, 2000) e (OI, 2005) dizem a respeito dos
métodos avaliados, no que diz respeito a sua maior eficiência para variações na irradiância.
(a) (b)
(c) (d)
Figura 30 – Caminho dos algoritmos nas curvas P-V e IV para irradiâncias entre 300
𝑊/𝑚2 e 1000 𝑊/𝑚2 : (a) Curvas P-V para P&O (b) Curvas P-V para CI (c)
Curvas I-V para P&O (d) Curvas I-V para CI
.
Capítulo 6. Resultados e Análises 59
(a)
(b)
Foi observado também que o ciclo de trabalho para ambos os casos foi proporcional
a irradiância visto que os maiores valores ocorrem para o maior valor de irradiância
𝐺 = 1000 𝑊/𝑚2 , e os menores valores ocorreram para a menor irradiância 𝐺 = 300
𝑊/𝑚2 . Além disso, a tensão na saída do conversor foi sempre menor do que a tensão
na entrada, característica intrínseca dos conversores Buck-Boost, para quando o ciclo de
trabalho está abaixo de 0,5.
Capítulo 6. Resultados e Análises 60
(a)
(b)
Foi também ser observado que conforme o ciclo de trabalho mostrou, as tensões na
saída são sempre maiores do que na entrada. Por fim, pode ser visualizado que a tensão
na saída do conversor é mais afetada pela variação na irradiância do que a tensão na
entrada.
Capítulo 6. Resultados e Análises 61
(a)
(b)
(a)
(b)
(a) (b)
(c) (d)
Figura 35 – Caminho dos algoritmos nas curvas P-V e IV para temperaturas entre 5 𝑜 𝐶
e 75 𝑜 𝐶: (a) Curvas P-V para P&O (b) Curvas P-V para CI (c) Curvas I-V
para P&O (d) Curvas I-V para CI
Capítulo 6. Resultados e Análises 64
(a)
(b)
Neste cenário foi observado também que o ciclo de trabalho para ambos os casos,
apesar de ser uma proporcionalidade em menor escala se compara com o cenário anterior,
foi proporcional à temperatura visto que os maiores valores ocorrem para o maior valor
de temperatura 𝑇 = 75 𝑜 𝐶, e os menores valores ocorreram para a menor temperatura
𝑇 = 5 𝑜 𝐶.
do que ocorre no cenário anterior, e tal diferença pode ser vista nos gráficos abaixo.
(a)
(b)
É possível visualizar que os ripples mais acentuados ocorrem quando os saltos entre
valores é maior, como nos intervalos 𝑇 = 25 𝑜 𝐶 - 𝑇 = 65 𝑜 𝐶 e 𝑇 = 5 𝑜 𝐶 - 𝑇 = 45 𝑜 𝐶 onde
a temperatura aumenta 40 𝑜 𝐶. E devido ao fato do ciclo de trabalho sempre permanecer
abaixo de 0,5, as tensões na saída são sempre maiores do que na entrada.
(a)
(b)
(a)
(b)
A tabela 9 sumariza a eficiência dos dois algoritmos diante dos dois cenários pro-
postos, em que a máxima energia teórica é calculado a partir dos valores referência de
PMP, destacados em vermelho nas figuras 30 e 35. Para este valor teórico foi considerado
que o módulo opera no PMP durante todos os 0,8 s, para assim ser calculada a eficiência
dos algoritmos com o conversor. Conforme a literatura descreve ambos algoritmos pos-
Capítulo 6. Resultados e Análises 68
suem alta eficiência, porém o algoritmo CI sobressai levemente neste quesito em ambos
cenários.
Referências
AASHOOR, F. Maximum power point tracking techniques for photovoltaic water pumping
system. Tese (Doutorado) — University of Bath, 2015. Citado na página 49.
ALI, A. N. A. et al. A survey of maximum ppt techniques of pv systems. In: 2012 IEEE
Energytech. [S.l.: s.n.], 2012. Citado na página 32.
CHEIKH, M. A. et al. Maximum power point tracking using a fuzzy logic control scheme.
Revue des energies Renouvelables, v. 10, n. 3, p. 387–395, 2007. Citado na página 31.
CUBAS J.; PINDADO, S. d. M. C. Explicit expressions for solar panel equivalent circuit
parameters based on analytical formulation and the lambert w-function. In: Energies.
[S.l.: s.n.], 2014. v. 7, p. 4098–4115. Citado 2 vezes nas páginas 20 e 21.
Referências 71
KOLSI, S.; SAMET, H.; AMAR, M. B. Design analysis of dc-dc converters connected to
a photovoltaic generator and controlled by mppt for optimal energy transfer throughout
a clear day. Journal of Power and Energy Engineering, Scientific Research Publishing,
v. 2014, 2014. Citado na página 49.
MME/EPE. Plano decenal de expansão de energia 2024. 2014. Citado na página 17.
OI, A. Design and simulation of photovoltaic water pumping system. Tese (Doutorado)
— Citeseer, 2005. Citado na página 57.
SALAS, V. et al. Review of the maximum power point tracking algorithms for
stand-alone photovoltaic systems. Solar energy materials and solar cells, Elsevier, v. 90,
n. 11, p. 1555–1578, 2006. Citado 3 vezes nas páginas 27, 31 e 33.
ZHU X.-G.; FU, Z. L. X. Sensitivity analysis and more accurate solution of photovoltaic
solar cell parameters. In: Sol.Energy. [S.l.: s.n.], 2011. p. 393–403. Citado na página 20.
74
PRODUCT CERTIFICATES*
Positive power tolerance of
IEC 61215 / IEC 61730: VDE / CE / MCS / JET / SII / CEC AU / INMETRO / CQC
up to 5 W
UL 1703 / IEC 61215 performance: CEC listed (US) / FSEC (US Florida)
UL 1703: CSA / IEC 61701 ED2: VDE / IEC 62716: VDE / IEC 60068-2-68: SGS
Take-e-way / UNI 9177 Reaction to Fire: Class 1
High PTC rating of up to 92.0 %
Heavy snow load up to 5400 Pa, CANADIAN SOLAR INC. is committed to providing high quality
wind load up to 2400 Pa solar products, solar system solutions and services to customers
around the world. As a leading manufacturer of solar modules and
Salt mist, ammonia and blown PV project developer with over 14 GW of premium quality modules
sand resistance, for seaside, deployed around the world since 2001, Canadian Solar Inc. (NAS-
farm and desert environments* DAQ: CSIQ) is one of the most bankable solar companies worldwide.
9 9
35
8 8
12-11x7 7 7
Mounting
40
Hole 6 6
5 5
2-Φ5
Grounding 11 4 4
1588
1400
1638
1155
Hole 3 3
2 2
Mounting Hole
1 1
7 0 0
V V
R 5 10 15 20 25 30 35 40 5 10 15 20 25 30 35 40
A A
1000 W/m 2
5°C
11
800 W/m2 25°C
500 600 W/m2 45°C
932 400 W/m2 65°C
40 982
The specification and key features described in this datasheet may deviate slightly
and are not guaranteed. Due to on-going innovation, research and product
enhancement, Canadian Solar Inc. reserves the right to make any adjustment to
the information described herein at any time without notice. Please always obtain
the most recent version of the datasheet which shall be duly incorporated into the
binding contract made by the parties governing all transactions related to the
purchase and sale of the products described herein.
Caution: For professional use only. The installation and handling of PV modules Scan this QR-code to discover solar
requires professional skills and should only be performed by qualified professionals.
Please read the safety and installation instructions before using the modules. projects built with this module
CANADIAN SOLAR INC. Apr. 2016. All rights reserved, PV Module Product Datasheet V5.4C2_EN
76
26
27 %i n t e r p o l a v a l o r e s de i r r a d i ncia
28 y=G_bom/ 1 0 0 0 ; %ou G_medio ou G_ruim
29 x = [1:60:43200];
30 xi = 1:1:43200;
31 y i = i n t e r p 1 ( x , y , xi , ’ p r e v i o u s ’ ) ;
32
33 %Algoritmo P&O
34 f o r Sample = 1 : 4 3 2 0 0
35 % Le i r r a d i a n c i a
36 G = y i ( Sample ) ;
37 % C a l c u l a nova t e n s o , nova c o r r e n t e
38 Va_new = Vref_new ;
39 Ia_new = bp_sx150s2 ( Vref_new , G, TaC) ;
40 % C a l c u l a nova p o t e n c i a e d e l t a P o t e n c i a
41 Pa_new = Va_new * Ia_new ;
42 d e l t a P a = Pa_new − Pa ;
43 % P&O c o m e a aqu
44 i f deltaPa > 0
45 i f Va_new > Va
46 Vref_new = Va_new + C ; % Aumenta Tensao
47 else
48 Vref_new = Va_new − C ; % Diminui t e n s a o
49 end
50 e l s e i f deltaPa < 0
51 i f Va_new > Va
52 Vref_new = Va_new − C ; % Diminui Tensao
53 else
54 Vref_new = Va_new + C ; %Aumenta Tensao
55 end
56 else
57 Vref_new = Va_new ; % Nao muda
58 end
59 % Atualiza valores
60 Va = Va_new ;
61 Pa = Pa_new ;
62 %S a l v a em v e t o r e s
63 Va_array ( Va_array <0 ) = 0 ;
64 Va_array = [ Va_array Va ] ;
65 Pa_array = [ Pa_array Pa ] ;
66
67
68
69 end
70 % d e c l a r a Tensao
71 Va = l i n s p a c e ( 0 , 4 5 , 2 0 0 ) ;
72
APÊNDICE A. Códigos simulados 79
73 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
74 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
75 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
76 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
77 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
78
79 f o r G=y ;
80 I a = bp_sx150s2 (Va , G, TaC) ;
81 Pa = I a . * Va ;
82 p l o t (Va , Pa , ’ C o l o r ’ , [ 0 . 6 0 . 6 0 . 6 ] ) ;
83 h o l d on
84 end
85
86 %%%%%%%%%%%%%% F i g u r a s P−V %%%%%%%%%%%%%%%
87 p l o t ( Va_array , Pa_array , ’ b ’ , ’ LineWidth ’ , 2 )
88 s e t ( gca , ’ F o n t s i z e ’ , 2 8 , ’ C o l o r ’ , ’ White ’ ) ;
89 x l a b e l ( ’ $ \mathrm{ Tens \ t i l d e { a } o } $ [V] ’ , ’ I n t e r p r e t e r ’ , ’ l a t e x ’ ) ;
90 y l a b e l ( ’ $ \mathrm{ Pot \ hat { e } n c i a } $ [W] ’ , ’ F o n t s i z e ’ , 2 8 )
91 a x i s ( [ 0 40 0 3 0 0 ] )
92 box o f f
93
94 f o r G=y ;
95 I a = bp_sx150s2 (Va , G, TaC) ;
96 [ Pa_max , Imp , Vmp] = find_mpp ( Ia , Va) ;
97 p l o t (Vmp, Pa_max , ’ r ’ , ’ Marker ’ , ’+ ’ , ’ M a r k e r S i z e ’ , 4 ) ;
98
99 h o l d on
100 end
101
102 %e n e r g i a
103 E_PO_MEDIO= nansum ( Pa_array ) / 3 6 0 0 ; %Wh
14 %C a l c u l a na f u n c a o PV Modulo
15 I a = bp_sx150s2 (Va ,G, TaC) ;
16 %C a l c u l a P o t e n c i a
17 Pa = Va * I a ;
18 %C a l c u l a Nova T e n s o
19 Vref_new = Va + C ;
20
21 %Carrega i r r a d i a n c i a
22 l o a d G_bom
23 l o a d G_ruim
24 l o a d G_medio
25
26
27 y=G_bom/ 1 0 0 0 ; %ou G_ruim , ou G_medio
28 x = [1:60:43200];
29 xi = 1:1:43200;
30 y i = i n t e r p 1 ( x , y , xi , ’ p r e v i o u s ’ ) ; % i n t e r p o l a i r r a d i a n c i a s
31 %Algoritmo CI
32
33 f o r Sample = 1 : 4 3 2 0 0
34 G = y i ( Sample ) ; % l e i r r a d i a n c i a
35 Va_new = Vref_new ; % mede nova t e n s a o e c o r r e n t e
36 Ia_new = bp_sx150s2 ( Vref_new , G, TaC) ;
37 % Calcula delta tensao e corrente
38 deltaVa = Va_new − Va ;
39 d e l t a I a = Ia_new − I a ;
40 % CI c o m e a
41 i f deltaVa == 0
42 i f d e l t a I a == 0
43 Vref_new = Va_new ; %nao muda
44 e l s e i f deltaIa > 0
45 Vref_new = Va_new + C ; % Aumenta t e n s a o
46 else
47 Vref_new = Va_new − C ; % Aumenta t e n s a o
48 end
49 else
50 i f abs ( d e l t a I a / deltaVa + Ia_new/Va_new) <= E
51 Vref_new = Va_new ; % n o muda
52 else
53 i f d e l t a I a / deltaVa > −Ia_new/Va_new + E
54 Vref_new = Va_new + C ; % Aumenta t e n s a o
55 else
56 Vref_new = Va_new − C ; % Diminui t e n s a o
57 end
58 end
59 end
60 % atualiza vetores
APÊNDICE A. Códigos simulados 81
61 Va = Va_new ;
62 I a = Ia_new ;
63 Pa = Va_new * Ia_new ;
64 %s a l v a v e t o r e s com novos v a l o r e s
65 Va_array_CI = [ Va_array_CI Va ] ;
66 Pa_array_CI = [ Pa_array_CI Pa ] ;
67 end
68 %d e c l a r a t e n s a o
69 Va = l i n s p a c e ( 0 , 4 5 , 2 0 0 ) ;
70
71 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
72 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
73 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
74 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
75 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ )
76
77 f o r G=y
78 I a = bp_sx150s2 (Va , G, TaC) ;
79 Pa = I a . * Va ;
80 p l o t (Va , Pa , ’ C o l o r ’ , [ 0 . 6 0 . 6 0 . 6 ] ) ;
81 h o l d on
82 end
83
84 p l o t ( Va_array_CI , Pa_array_CI , ’ g ’ , ’ LineWidth ’ , 2 )
85 s e t ( gca , ’ F o n t s i z e ’ , 2 8 , ’ C o l o r ’ , ’ White ’ ) ;
86 x l a b e l ( ’ $ \mathrm{ Tens \ t i l d e { a } o } $ [V] ’ , ’ I n t e r p r e t e r ’ , ’ l a t e x ’ ) ;
87 y l a b e l ( ’ $ \mathrm{ Pot \ hat { e } n c i a } $ [W] ’ , ’ F o n t s i z e ’ , 2 8 )
88 a x i s ( [ 0 40 0 3 0 0 ] )
89 box o f f
90
91 f o r G=y ;
92 I a = bp_sx150s2 (Va , G, TaC) ;
93 [ Pa_max , Imp , Vmp] = find_mpp ( Ia , Va) ;
94 p l o t (Vmp, Pa_max , ’ r ’ , ’ Marker ’ , ’+ ’ , ’ M a r k e r S i z e ’ , 4 ) ;
95 h o l d on
96 end
97
98 x0 =1;
99 y0 =1;
100 width =700;
101 h e i g h t =500;
102 s e t ( g c f , ’ u n i t s ’ , ’ p o i n t s ’ , ’ p o s i t i o n ’ , [ x0 , y0 , width , h e i g h t ] )
103 s e t ( gca , ’ P o s i t i o n ’ , [ . 1 2 . 1 5 . 8 5 . 8 2 ] )
104 s e t ( g c f , ’ PaperPositionMode ’ , ’ auto ’ )
105 E_CI=nansum ( Pa_array_CI ) / 3 6 0 0 ;
APÊNDICE A. Códigos simulados 82
47 %c o r r e n t e e p o t e n c i a
48 f = @( x ) x − Rin * bp_sx150s2 ( x ,G, TaC) ;
49 Va_k = f z e r o ( f , [ 0 , 4 5 ] ) ;
50 Ia_k = bp_sx150s2 (Va_k ,G, TaC) ;
51 Pa_k = Va_k * Ia_k ;
52 % C a l c u l a s a i d a s do c o n v e r s o r i d e a l
53 Vo_k = D_k/(1−D_k) * Va_k ;
54 Io_k = (1−D_k) /D_k * Ia_k ;
55 Po_k = Vo_k * Io_k ;
56 %C a l c u l a o d e l t a e n t r e o s s a m p l e s
57 d e l t a P o = Po_k − Po_k_1 ;
58
59 % i n i c i o do a l g o r i t m o c o n d u t a n c i a i n c r e m e n t a l
60 i f deltaPo > 0
61 i f D_k > D_k_1
62 D = D_k + deltaD ; % aumenta c i c l o de t r a b a l h o
63
64 else
65 D = D_k − deltaD ; % d i m i n u i c i c l o de t r a b a l h o
66 end
67 e l s e i f deltaPo < 0
68 i f D_k > D_k_1
69 D = D_k − deltaD ; % aumenta c i c l o de t r a b a l h o
70 else
71 D = D_k + deltaD ; % d i m i n u i c i c l o de t r a b a l h o
72 end
73 else
74 D = D_k ; %sem m u d a n a
75 end
76
77 % a t u a l i z a v e t o r e s a cada sample
78 Va_k_1 = Va_k ;
79 Ia_k_1 = Ia_k ;
80 Pa_k_1 = Pa_k ;
81 Vo_k_1 = Vo_k ;
82 Io_k_1 = Io_k ;
83 Po_k_1 = Po_k ;
84 D_k_1 = D_k ;
85 % armazena v e t o r e s para p l o t s
86 Va_array = [ Va_array Va_k ] ;
87 Ia_array = [ Ia_array Ia_k ] ;
88 Pa_array = [ Pa_array Pa_k ] ;
89 Vo_array = [ Vo_array Vo_k ] ;
90 Io_array = [ Io_array Io_k ] ;
91 Po_array = [ Po_array Po_k ] ;
92 D_array = [ D_array D_k ] ;
93
APÊNDICE A. Códigos simulados 84
94 end
95
96 %D e c l a r a t e n s a o do PV modulo
97 Va = l i n s p a c e ( 0 , 4 5 , 2 0 0 ) ;
98
99 %%%%%%%%%%%%%%%%%%%%%%%FIGURA 1−PxV%%%%%%%%%%%%%%%%%%%%%%%%%%%
100 h1=f i g u r e ( 1 0 1 ) ;
101 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
102 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
103 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
104 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
105 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
106 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
107 s e t ( gca , ’ P o s i t i o n ’ , [ 0 . 1 2 0 . 1 4 0 . 5 6 0 . 7 1 ] )
108
109 f o r G= [ 0 . 8 0 . 6 1 . 0 0 . 9 0 . 7 0 . 5 0 . 3 0 . 4 ] ;
110 I a = bp_sx150s2 (Va , G, TaC) ;
111 Pa = I a . * Va ;
112 p l o t (Va , Pa , ’ k ’ ) ;
113 a x i s ( [ 0 45 0 3 5 0 ] )
114 h o l d on
115 end
116
117 p l o t ( Va_array ( 1 : 1 0 : end ) , Pa_array ( 1 : 1 0 : end ) , ’ b ’ , ’ LineWidth ’ , 2 , . . .
118 ’ Marker ’ , ’> ’ , ’ M a r k e r S i z e ’ , 6 , ’ MarkerFaceColor ’ , ’ Blue ’ ) ;
119 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
120 x l a b e l ( ’ $ \mathrm{ Tens \ t i l d e { a } o } $ [V] ’ , ’ I n t e r p r e t e r ’ , ’ l a t e x ’ ) ;
121 y l a b e l ( ’ $ \mathrm{ Pot \ hat { e } n c i a } $ [W] ’ , ’ F o n t s i z e ’ , 2 2 )
122 box o f f
123
124 f o r G= [ 0 . 8 0 . 6 1 . 0 0 . 9 0 . 7 0 . 5 0 . 3 0 . 4 ] ;
125 I a = bp_sx150s2 (Va , G, TaC) ;
126 [ Pa_max , Imp , Vmp] = find_mpp ( Ia , Va) ;
127 p l o t (Vmp, Pa_max , ’ r ’ , ’ Marker ’ , ’ s ’ , ’ M a r k e r S i z e ’ , 10 ,...
128 ’ MarkerFaceColor ’ , ’ Red ’ ) ;
129
130 h o l d on
131 end
132
133
134 %%%%%%%%%%%%%%%%%%%%%%% F i g u r a 2 − IxV %%%%%%%%%%%%%%%%%%%%%%%%%%%
135 h2=f i g u r e ( 1 0 2 ) ;
136 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
137 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
138 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
139 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
140 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
APÊNDICE A. Códigos simulados 85
282 s e t ( gca , ’ P o s i t i o n ’ , [ . 0 5 . 0 5 . 9 . 9 ] )
283 g r i d on
284 s e t ( gca , ’ F o n t s i z e ’ , 2 2 ) ;
285 s e t ( gca , ’ P o s i t i o n ’ , [ . 0 7 . 1 8 . 9 . 7 5 ] )
286 x0 =1;
287 y0 =1;
288 width =950;
289 h e i g h t =350;
290 s e t ( g c f , ’ u n i t s ’ , ’ p o i n t s ’ , ’ p o s i t i o n ’ , [ x0 , y0 , width , h e i g h t ] )
291 s e t ( gca , ’ XTickLabel ’ , [ 0 . 0 : 0 . 1 : 0 . 8 ] , ’ F o n t s i z e ’ , 2 2 )
292 x l a b e l ( ’Tempo [ s ] ’ , ’ F o n t S i z e ’ , 2 2 ) ;
293 y l a b e l ( ’ $ \mathrm{ Tens \ t i l d e { a } o } $ [V] ’ , ’ F o n t s i z e ’ , 2 5 )
294 t e x t ( 5 0 0 0 , 3 5 , ’$G = 800 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
295 t e x t ( 1 0 5 0 0 0 , 3 5 , ’$G = 600 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
296 t e x t ( 2 0 1 0 0 0 , 3 5 , ’$G = 1000 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
297 t e x t ( 3 0 5 0 0 0 , 3 5 , ’$G = 900 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
298 t e x t ( 4 0 5 0 0 0 , 3 5 , ’$G = 700 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
299 t e x t ( 5 0 5 0 0 0 , 3 5 , ’$G = 500 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
300 t e x t ( 6 0 5 0 0 0 , 3 5 , ’$G = 300 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
301 t e x t ( 7 0 5 0 0 0 , 3 5 , ’$G = 400 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
302 a x i s ( [ 0 800000 0 5 0 ] )
303 h o l d on
304 p l o t (TENSAO( : , 2 ) , ’ b ’ , ’ LineWidth ’ , 2 )
305 Vin=t e x t ( 7 3 0 0 0 0 , 2 7 . 6 , ’$V_{ e n t r a d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
306 Vout=t e x t ( 7 3 0 0 0 0 , 1 1 . 2 , ’$V_{ s a i d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
307
308 %v a l o r e s de p o t e n c i a do s i m u l i n k
309 PIN=z e r o s ;
310 POUT=z e r o s ;
311 PIN=(CORRENTE( : , 1 ) . *TENSAO( : , 1 ) ) ;
312 POUT =(CORRENTE( : , 2 ) . *TENSAO( : , 2 ) ) ;
313
314 %c a l c u l a e n e r g i a
315 E_IN_PO_IR=nansum ( PIN ) / ( 3 6 0 0 * 1 0 0 0 0 0 0 ) ;
316 E_OUT_PO_IR=nansum (POUT) / ( 3 6 0 0 * 1 0 0 0 0 0 0 ) ;
317 E_EF_PO_IR=(E_OUT_PO_IR/E_IN_PO_IR) * 1 0 0 ;
318
319 %%%%%%%%%%%%%%%%%%%%%%%F i g u r a 9 − POTENCIA CONVERSOR %%%%%%%%%%%%%%%%%%%
320 f i g u r e (109)
321 p l o t ( PIN ( : , 1 ) , ’ C o l o r ’ , [ 0 0 . 7 4 9 0 1 9 6 2 2 8 0 2 7 3 4 0 . 7 4 9 0 1 9 6 2 2 8 0 2 7 3 4 ] , . . .
322 ’ LineWidth ’ , 2 ) ;
323 g r i d on
324 s e t ( gca , ’ F o n t s i z e ’ , 2 2 ) ;
325 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
326 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
327 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
328 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
APÊNDICE A. Códigos simulados 89
329 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
330 x l a b e l ( ’Tempo [ s ] ’ , ’ F o n t S i z e ’ , 2 2 ) ;
331 a x i s ( [ 0 800000 0 3 5 0 ] )
332 y l a b e l ( ’ $ \mathrm{ Pot \ hat { e } n c i a } $ [W] ’ , ’ F o n t s i z e ’ , 2 2 )
333 s e t ( gca , ’ P o s i t i o n ’ , [ . 0 7 . 1 8 . 9 . 7 5 ] )
334 x0 =1;
335 y0 =1;
336 width =950;
337 h e i g h t =350;
338 s e t ( g c f , ’ u n i t s ’ , ’ p o i n t s ’ , ’ p o s i t i o n ’ , [ x0 , y0 , width , h e i g h t ] )
339 s e t ( gca , ’ XTickLabel ’ , [ 0 . 0 : 0 . 1 : 0 . 8 ] , ’ F o n t s i z e ’ , 2 2 )
340 t e x t ( 5 0 0 0 , 2 6 0 , ’$G = 800 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
341 t e x t ( 1 0 5 0 0 0 , 2 6 0 , ’$G = 600 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
342 t e x t ( 2 0 5 0 0 0 , 2 6 0 , ’$G = 1000 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
343 t e x t ( 3 0 5 0 0 0 , 2 6 0 , ’$G = 900 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
344 t e x t ( 4 0 5 0 0 0 , 2 6 0 , ’$G = 700 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
345 t e x t ( 5 0 5 0 0 0 , 2 6 0 , ’$G = 500 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
346 t e x t ( 6 0 5 0 0 0 , 2 6 0 , ’$G = 300 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
347 t e x t ( 7 0 5 0 0 0 , 2 6 0 , ’$G = 400 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
348 h o l d on
349 p l o t (POUT, ’ b ’ , ’ LineWidth ’ , 2 )
350 s e t ( gca , ’ XTickLabel ’ , [ 0 . 0 : 0 . 1 : 0 . 8 ] , ’ F o n t s i z e ’ , 2 2 )
351 p i n=t e x t ( 7 4 0 0 0 0 , 1 1 0 , ’$P_{ e n t r a d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
352 pout=t e x t ( 7 4 0 0 0 0 , 7 5 , ’$P_{ s a i d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
353 a x i s ( [ 0 800000 0 3 5 0 ] )
354 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
355 s e t ( gca , ’ XTickLabel ’ , [ 0 . 0 : 0 . 1 : 0 . 8 ] , ’ F o n t s i z e ’ , 2 2 )
356 y l a b e l ( ’ $ \mathrm{ Pot \ hat { e } n c i a } $ [W] ’ , ’ F o n t s i z e ’ , 2 2 )
357 x l a b e l ( ’Tempo [ s ] ’ , ’ F o n t S i z e ’ , 2 2 )
16 Vo_array = [ ] ;
17 Io_array = [ ] ;
18 Po_array = [ ] ;
19 D_array = [ ] ;
20
21 %I n t e r p o l a c o e s de v a l o r e s de i r r a d i ncia ( v a r i a n t e )
22 y =[0.8 0.6 1.0 0.9 0.7 0.5 0.3 0 . 4 ] ;
23 x = [1:10000:80000];
24 xi = 1:1:80000;
25 y i = i n t e r p 1 ( x , y , xi , ’ p r e v i o u s ’ , ’ e x t r a p ’ ) ;
26
27 %I n t e r p o l a c o e s de v a l o r e s de t e m p e r a t u r a ( f i x a )
28 x_1 = [ 1 : 1 0 0 0 0 : 8 0 0 0 0 ] ;
29 y_1=[25 25 25 25 25 25 25 2 5 ] ;
30 xi_1 = 1 : 1 : 8 0 0 0 0 ;
31 yi_1 = i n t e r p 1 ( x_1 , y_1 , xi_1 , ’ p r e v i o u s ’ , ’ e x t r a p ’ ) ;
32
33 %Algoritmo Condutancia I n c r e m e n t a l
34 f o r Sample = 1 : 8 0 0 0 0
35 %Pega v a l o r e s de i r r a d i a n c i a para s a m p l e s
36 G = y i ( Sample ) ;
37 TaC=yi_1 ( Sample ) ;
38 % Le o v a l o r p r e s e n t e de c i c l o de t r a b a l h o
39 D_k = D;
40 %C a l c u l a a r e s i s t e n c i a i n t e r n a para um c o n v e r s o r buck b o o s t i d e a l
41 Rin = (1−D_k) ^2/D_k^2 * Rload ;
42 %L o c a l i z a o ponto de o p e r a c a o do modulo PV e c a l c u l a sua t e n s a o ,
43 %c o r r e n t e e p o t e n c i a
44 f = @( x ) x − Rin * bp_sx150s2 ( x ,G, TaC) ;
45 Va_k = f z e r o ( f , [ 0 , 4 5 ] ) ;
46 Ia_k = bp_sx150s2 (Va_k ,G, TaC) ;
47 Pa_k = Va_k * Ia_k ;
48
49 % C a l c u l a s a i d a s do c o n v e r s o r i d e a l
50 Vo_k = D_k/(1−D_k) * Va_k ;
51 Io_k = (1−D_k) /D_k * Ia_k ;
52 Po_k = Vo_k * Io_k ;
53 %C a l c u l a o d e l t a e n t r e o s s a m p l e s
54 d e l t a P a = Pa_k − Pa_k_1 ;
55 deltaVa = Va_k − Va_k_1 ;
56 d e l t a I a = Ia_k − Ia_k_1 ;
57 % i n i c i o do a l g o r i t m o c o n d u t a n c i a i n c r e m e n t a l
58 i f deltaVa == 0
59 i f d e l t a P a == 0
60 D = D_k ; %sem m u d a n a
61 e l s e i f deltaIa > 0
62 D = D_k + deltaD ; % Aumenta D
APÊNDICE A. Códigos simulados 91
63 else
64 D = D_k − deltaD ; % Diminui D
65 end
66 else
67 i f abs ( d e l t a I a / deltaVa + Ia_k /Va_k) == 0
68 D = D_k ; % sem mudanca
69 else
70 i f d e l t a I a / deltaVa > −Ia_k /Va_k
71 D = D_k − deltaD ; % Diminui D
72 else
73 D= D_k + deltaD ; % Aumenta D
74 end
75 end
76 end
77
78 %A t u a l i z a v e t o r e s a cada sample
79 Va_k_1 = Va_k ;
80 Ia_k_1 = Ia_k ;
81 Pa_k_1 = Pa_k ;
82 Vo_k_1 = Vo_k ;
83 Io_k_1 = Io_k ;
84 Po_k_1 = Po_k ;
85 D_k_1 = D_k ;
86 % armazena v e t o r e s para p l o t s
87 Va_array_IC = [ Va_array_IC Va_k ] ;
88 Ia_array_IC = [ Ia_array_IC Ia_k ] ;
89 Pa_array_IC = [ Pa_array_IC Pa_k ] ;
90 Vo_array = [ Vo_array Vo_k ] ;
91 Io_array = [ Io_array Io_k ] ;
92 Po_array = [ Po_array Po_k ] ;
93 D_array = [ D_array D_k ] ;
94
95 i f ( Sample > 2 0 ) & (G < y i )
96 G = G + .0003;
97 end
98 % proximo sample
99 end
100
101 %D e c l a r a t e n s a o do PV module
102 Va = l i n s p a c e ( 0 , 4 5 , 2 0 0 ) ;
103
104 %%%%%%%%%%%%%%%%%%%%%%%FIGURA 1−PxV%%%%%%%%%%%%%%%%%%%%%%%%%%%
105 h1=f i g u r e ( 2 0 1 ) ;
106 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
107 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
108 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
109 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
APÊNDICE A. Códigos simulados 92
110 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;%
111 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
112 s e t ( gca , ’ P o s i t i o n ’ , [ 0 . 1 2 0 . 1 4 0 . 5 6 0 . 7 1 ] )
113
114 f o r G= [ 0 . 8 0 . 6 1 . 0 0 . 9 0 . 7 0 . 5 0 . 3 0 . 4 ] ;
115 I a = bp_sx150s2 (Va , G, TaC) ;
116 Pa = I a . * Va ;
117 p l o t (Va , Pa , ’ k ’ ) ;
118 a x i s ( [ 0 45 0 3 5 0 ] )
119 h o l d on
120 end
121
122 p l o t ( Va_array_IC ( 1 : 1 0 : end ) , Pa_array_IC ( 1 : 1 0 : end ) , ’g ’ , . . .
123 ’ LineWidth ’ , 2 , ’ Marker ’ , ’> ’ , ’ M a r k e r S i z e ’ , 6 , ’ MarkerFaceColor ’ , ’
Green ’ )
124 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
125 x l a b e l ( ’ $ \mathrm{ Tens \ t i l d e { a } o } $ [V] ’ , ’ I n t e r p r e t e r ’ , ’ l a t e x ’ ) ;
126 y l a b e l ( ’ $ \mathrm{ Pot \ hat { e } n c i a } $ [W] ’ , ’ F o n t s i z e ’ , 2 2 )
127 box o f f
128
129 f o r G= [ 0 . 8 0 . 6 1 . 0 0 . 9 0 . 7 0 . 5 0 . 3 0 . 4 ] ;
130 I a = bp_sx150s2 (Va , G, TaC) ;
131 [ Pa_max , Imp , Vmp] = find_mpp ( Ia , Va) ;
132 p l o t (Vmp, Pa_max , ’ r ’ , ’ Marker ’ , ’ s ’ , ’ M a r k e r S i z e ’ , . . .
133 10 , ’ MarkerFaceColor ’ , ’ Red ’ ) ;
134 h o l d on
135 end
136
137 %%%%%%%%%%%%%%%%%%%%%%%FIGURA 1−IxV%%%%%%%%%%%%%%%%%%%%%%%%%%%
138 h2=f i g u r e ( 2 0 2 ) ;
139 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
140 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
141 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
142 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
143 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
144 s e t ( gca , ’ F o n t s i z e ’ , 2 5 , ’ C o l o r ’ , ’ White ’ ) ;
145 s e t ( gca , ’ P o s i t i o n ’ , [ 0 . 1 1 0 . 1 5 0 . 6 5 0 . 7 ] )
146
147 f o r G= [ 0 . 8 0 . 6 1 . 0 0 . 9 0 . 7 0 . 5 0 . 3 0 . 4 ] ;
148 I a = bp_sx150s2 (Va , G, TaC) ;
149 p l o t (Va , Ia , ’ k ’ )
150 a x i s ( [ 0 45 0 1 2 ] )
151 h o l d on
152 end
153
154 p l o t ( Va_array_IC ( 1 : 2 0 : end ) , Ia_array_IC ( 1 : 2 0 : end ) , ’g ’ , . . .
155 ’ LineWidth ’ , 2 , ’ Marker ’ , ’> ’ , ’ M a r k e r S i z e ’ , 6 , ’ MarkerFaceColor ’ , ’
APÊNDICE A. Códigos simulados 93
Green ’ )
156 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
157 x l a b e l ( ’ $ \mathrm{ Tens \ t i l d e { a } o } $ [V] ’ , ’ F o n t s i z e ’ , 2 5 )
158 y l a b e l ( ’ $ \mathrm{ C o r r e n t e } $ [A] ’ , ’ F o n t S i z e ’ , 2 5 )
159 a x i s ( [ 0 45 0 1 2 ] )
160 box o f f
161
162 f o r G= [ 0 . 8 0 . 6 1 . 0 0 . 9 0 . 7 0 . 5 0 . 3 0 . 4 ] ;
163 I a = bp_sx150s2 (Va , G, TaC) ;
164 [ Pa_max , Imp , Vmp] = find_mpp ( Ia , Va) ;
165 p l o t (Vmp, Imp , ’ r ’ , ’ Marker ’ , ’ s ’ , ’ M a r k e r S i z e ’ , 10 ,...
166 ’ MarkerFaceColor ’ , ’ Red ’ ) ;
167 box o f f
168 h o l d on
169 end
170
171 %%%%%%%%%%%%%%%%%%%%%%%FIGURA 3−CTxP%%%%%%%%%%%%%%%%%%%%%%%%%%%
172 f i g u r e (203)
173 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
174 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
175 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
176 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
177 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
178 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
179 p l o t ( D_array , Po_array , ’ g ’ , ’ LineWidth ’ , 2 )
180 g r i d on
181 s e t ( gca , ’ F o n t s i z e ’ , 2 2 ) ;
182
183 %%%%%%%%%%%%%%%%%%%%%%%FIGURA 4−CTxTEMPO%%%%%%%%%%%%%%%%%%%%%%%%%%%
184 f i g u r e (204)
185 p l o t ( D_array , ’ g ’ , ’ LineWidth ’ , 2 )
186 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
187 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
188 x0 =1;
189 y0 =1;
190 width =950;
191 h e i g h t =350;
192 s e t ( g c f , ’ u n i t s ’ , ’ p o i n t s ’ , ’ p o s i t i o n ’ , [ x0 , y0 , width , h e i g h t ] )
193 s e t ( g c f , ’ PaperPositionMode ’ , ’ auto ’ )
194 s e t ( gca , ’ P o s i t i o n ’ , [ . 0 7 . 1 8 . 9 . 7 5 ] )
195 g r i d on
196 t e x t ( 5 0 0 , 0 . 5 , ’$G = 800 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
197 t e x t ( 1 0 5 0 0 , 0 . 5 , ’$G = 600 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
198 t e x t ( 2 0 2 0 0 , 0 . 5 , ’$G = 1000 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
199 t e x t ( 3 0 5 0 0 , 0 . 5 , ’$G = 900 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
200 t e x t ( 4 0 5 0 0 , 0 . 5 , ’$G = 700 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
201 t e x t ( 5 0 5 0 0 , 0 . 5 , ’$G = 500 $ $W/m^2$ ’ , ’ F o n t s i z e ’ , 1 5 )
APÊNDICE A. Códigos simulados 94
32 xi_1 = 1 : 1 : 8 0 0 0 0 ;
33 yi_1 = i n t e r p 1 ( x_1 , y_1 , xi_1 , ’ p r e v i o u s ’ , ’ e x t r a p ’ ) ;
34
35 f o r Sample = 1 : 8 0 0 0 0
36 %Pega v a l o r e s de i r r a d i a n c i a para s a m p l e s
37 G=y i ( Sample ) ;
38 %Pega v a l o r e s de t e m p e r a t u r a para s a m p l e s
39 TaC=yi_1 ( Sample ) ;
40 % Le o v a l o r p r e s e n t e de c i c l o de t r a b a l h o
41 D_k = D;
42 %C a l c u l a a r e s i s t e n c i a i n t e r n a para um c o n v e r s o r buck b o o s t i d e a l
43 Rin = (1−D_k) ^2/D_k^2 * Rload ;
44 %L o c a l i z a o ponto de o p e r a c a o do modulo PV e c a l c u l a sua t e n s a o ,
45 %c o r r e n t e e p o t e n c i a
46 f = @( x ) x − Rin * bp_sx150s2 ( x ,G, TaC) ;
47 Va_k = f z e r o ( f , [ 0 , 4 5 ] ) ;
48 Ia_k = bp_sx150s2 (Va_k ,G, TaC) ;
49 Pa_k = Va_k * Ia_k ;
50 % C a l c u l a s a i d a s do c o n v e r s o r i d e a l
51 Vo_k = D_k/(1−D_k) * Va_k ;
52 Io_k = (1−D_k) /D_k * Ia_k ;
53 Po_k = Vo_k * Io_k ;
54 %C a l c u l a o d e l t a e n t r e o s s a m p l e s
55 d e l t a P o = Po_k − Po_k_1 ;
56
57 % i n i c i o do a l g o r i t m o c o n d u t a n c i a i n c r e m e n t a l
58 i f deltaPo > 0
59 i f D_k > D_k_1
60 D = D_k + deltaD ; % aumenta c i c l o de t r a b a l h o
61
62 else
63 D = D_k − deltaD ; % d i m i n u i c i c l o de t r a b a l h o
64 end
65 e l s e i f deltaPo < 0
66 i f D_k > D_k_1
67 D = D_k − deltaD ; % aumenta c i c l o de t r a b a l h o
68 else
69 D = D_k + deltaD ; % d i m i n u i c i c l o de t r a b a l h o
70 end
71 else
72 D = D_k ; %sem m u d a n a
73 end
74
75 % a t u a l i z a v e t o r e s a cada sample
76 Va_k_1 = Va_k ;
77 Ia_k_1 = Ia_k ;
78 Pa_k_1 = Pa_k ;
APÊNDICE A. Códigos simulados 99
79 Vo_k_1 = Vo_k ;
80 Io_k_1 = Io_k ;
81 Po_k_1 = Po_k ;
82 D_k_1 = D_k ;
83 % armazena v e t o r e s para p l o t s
84 Va_array = [ Va_array Va_k ] ;
85 Ia_array = [ Ia_array Ia_k ] ;
86 Pa_array = [ Pa_array Pa_k ] ;
87 Vo_array = [ Vo_array Vo_k ] ;
88 Io_array = [ Io_array Io_k ] ;
89 Po_array = [ Po_array Po_k ] ;
90 D_array = [ D_array D_k ] ;
91
92 end
93 %D e c l a r a t e n s a o do PV modulo
94 Va = l i n s p a c e ( 0 , 4 5 , 2 0 0 ) ;
95
96 %%%%%%%%%%%%%%%%%%%%%%%FIGURA 1−PxV%%%%%%%%%%%%%%%%%%%%%%%%%%%
97 h1=f i g u r e ( 3 0 1 ) ;
98 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
99 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
100 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
101 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
102 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
103 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
104
105 h o l d on
106 f o r TaC=[25 65 35 15 5 45 55 7 5 ] ;
107 I a = bp_sx150s2 (Va , G, TaC) ;
108 Pa = I a . * Va ;
109 p l o t (Va , Pa , ’ k ’ ) ;
110 a x i s ( [ 0 40 0 3 0 0 ] )
111 hold a l l
112 h o l d on
113 end
114 p l o t ( Va_array ( 1 : 2 0 : end ) , Pa_array ( 1 : 2 0 : end ) , ’ b ’ , ’ LineWidth ’ , 2 , ’
Marker ’ , ’> ’ , ’ M a r k e r S i z e ’ , 6 , ’ MarkerFaceColor ’ , ’ Blue ’ )
115 box o f f
116 f o r TaC=[25 65 35 15 5 45 55 7 5 ] ;
117 I a = bp_sx150s2 (Va , G, TaC) ;
118 [ Pa_max , Imp , Vmp] = find_mpp ( Ia , Va) ;
119 p l o t (Vmp, Pa_max , ’ r ’ , ’ Marker ’ , ’+ ’ , ’ LineWidth ’ , 8 ) ;
120 h o l d on
121 end
122
123 h o l d on
124 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
APÊNDICE A. Códigos simulados 100
266 t e x t ( 6 1 0 0 0 0 , 5 , ’ $T = 55 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
267 t e x t ( 7 1 0 0 0 0 , 5 , ’ $T= 75 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
268 x l a b e l ( ’Tempo [ s ] ’ , ’ F o n t S i z e ’ , 2 2 ) ;
269 y l a b e l ( ’ $ \mathrm{ C o r r e n t e } $ [A] ’ , ’ F o n t S i z e ’ , 2 5 )
270 a x i s ( [ 0 800000 0 1 2 ] )
271 h o l d on
272 p l o t (CORRENTE( : , 2 ) , ’ b ’ , ’ LineWidth ’ , 2 )
273 I i n=t e x t ( 7 3 0 0 0 0 , 8 . 5 , ’ $I_{ e n t r a d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
274 I o u t=t e x t ( 7 3 0 0 0 0 , 9 . 7 , ’ $I_{ s a i d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
275
276 %%%%%%%%%%%%%F i g u r a 8 − TENSAO CONVERSOR %%%%%%%%%%%%%%%%%
277 f i g u r e (308)
278 p l o t (TENSAO( : , 1 ) , ’ C o l o r ’ , [ 0 0 . 7 4 9 0 1 9 6 2 2 8 0 2 7 3 4 0 . 7 4 9 0 1 9 6 2 2 8 0 2 7 3 4 ] , . . .
279 ’ LineWidth ’ , 2 )
280 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
281 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
282 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
283 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
284 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
285 s e t ( gca , ’ XTickLabel ’ , [ 0 . 0 : 0 . 1 : 0 . 8 ] , ’ F o n t s i z e ’ , 2 2 )
286 s e t ( gca , ’ P o s i t i o n ’ , [ . 0 7 . 1 8 . 9 . 7 5 ] )
287 x0 =1;
288 y0 =1;
289 width =950;
290 h e i g h t =350;
291 s e t ( g c f , ’ u n i t s ’ , ’ p o i n t s ’ , ’ p o s i t i o n ’ , [ x0 , y0 , width , h e i g h t ] )
292 g r i d on
293 s e t ( gca , ’ F o n t s i z e ’ , 2 2 ) ;
294 x l a b e l ( ’Tempo [ s ] ’ , ’ F o n t S i z e ’ , 2 2 ) ;
295 y l a b e l ( ’ $ \mathrm{ Tens \ t i l d e { a } o } $ [V] ’ , ’ F o n t s i z e ’ , 2 5 )
296 t e x t ( 1 0 0 0 0 , 1 2 , ’ $T = 25 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
297 t e x t ( 1 1 0 0 0 0 , 1 2 , ’ $T = 65 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
298 t e x t ( 2 1 0 0 0 0 , 1 2 , ’ $T = 35 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
299 t e x t ( 3 1 0 0 0 0 , 1 2 , ’ $T = 15 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
300 t e x t ( 4 1 0 0 0 0 , 1 2 , ’ $ T = 5 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
301 t e x t ( 5 1 0 0 0 0 , 1 2 , ’ $ T = 45 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
302 t e x t ( 6 1 0 0 0 0 , 1 2 , ’ $T = 55 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
303 t e x t ( 7 1 0 0 0 0 , 1 2 , ’ $T= 75 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
304 a x i s ( [ 0 800000 0 5 0 ] )
305 h o l d on
306 p l o t (TENSAO( : , 2 ) , ’ b ’ , ’ LineWidth ’ , 2 )
307 Vin=t e x t ( 7 3 0 0 0 0 , 2 0 , ’$V_{ s a i d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
308 Vout=t e x t ( 7 3 0 0 0 0 , 2 6 , ’$V_{ e n t r a d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
309
310 %v a l o r e s de p o t e n c i a do s i m u l i n k
311 PIN=z e r o s ;
312 POUT=z e r o s ;
APÊNDICE A. Códigos simulados 104
48
49 % C a l c u l a s a i d a s do c o n v e r s o r i d e a l
50 Vo_k = D_k/(1−D_k) * Va_k ;
51 Io_k = (1−D_k) /D_k * Ia_k ;
52 Po_k = Vo_k * Io_k ;
53 %C a l c u l a o d e l t a e n t r e o s s a m p l e s
54 d e l t a P a = Pa_k − Pa_k_1 ;
55 deltaVa = Va_k − Va_k_1 ;
56 d e l t a I a = Ia_k − Ia_k_1 ;
57 % i n i c i o do a l g o r i t m o c o n d u t a n c i a i n c r e m e n t a l
58 i f deltaVa == 0
59 i f d e l t a P a == 0
60 D = D_k ; %sem m u d a n a
61 e l s e i f deltaIa > 0
62 D = D_k + deltaD ; % Aumenta D
63 else
64 D = D_k − deltaD ; % Diminui D
65 end
66 else
67 i f abs ( d e l t a I a / deltaVa + Ia_k /Va_k) == 0
68 D = D_k ; % sem mudanca
69 else
70 i f d e l t a I a / deltaVa > −Ia_k /Va_k
71 D = D_k − deltaD ; % Diminui D
72 else
73 D= D_k + deltaD ; % Aumenta D
74 end
75 end
76 end
77
78 %A t u a l i z a v e t o r e s a cada sample
79 Va_k_1 = Va_k ;
80 Ia_k_1 = Ia_k ;
81 Pa_k_1 = Pa_k ;
82 Vo_k_1 = Vo_k ;
83 Io_k_1 = Io_k ;
84 Po_k_1 = Po_k ;
85 D_k_1 = D_k ;
86 % armazena v e t o r e s para p l o t s
87 Va_array_IC = [ Va_array_IC Va_k ] ;
88 Ia_array_IC = [ Ia_array_IC Ia_k ] ;
89 Pa_array_IC = [ Pa_array_IC Pa_k ] ;
90 Vo_array = [ Vo_array Vo_k ] ;
91 Io_array = [ Io_array Io_k ] ;
92 Po_array = [ Po_array Po_k ] ;
93 D_array = [ D_array D_k ] ;
94
APÊNDICE A. Códigos simulados 107
141 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
142 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
143 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
144 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
145
146 f o r TaC=[25 65 35 15 5 45 55 7 5 ] ;
147 I a = bp_sx150s2 (Va , G, TaC) ;
148 p l o t (Va , Ia , ’ k ’ )
149 hold a l l
150 end
151
152 p l o t ( Va_array_IC ( 1 : 2 0 : end ) , Ia_array_IC ( 1 : 2 0 : end ) , ’ g ’ , ’ LineWidth ’
,...
153 2 , ’ Marker ’ , ’> ’ , ’ M a r k e r S i z e ’ , 6 , ’ MarkerFaceColor ’ , ’ Green ’ )
154 a x i s ( [ 0 40 0 1 2 ] )
155 s e t ( gca , ’ F o n t s i z e ’ , 2 2 ) ;
156 box o f f
157
158 f o r TaC=[25 65 35 15 5 45 55 7 5 ] ;
159 I a = bp_sx150s2 (Va , G, TaC) ;
160 [ Pa_max , Imp , Vmp] = find_mpp ( Ia , Va) ;
161 p l o t (Vmp, Imp , ’ r ’ , ’ Marker ’ , ’+ ’ , ’ LineWidth ’ , 8 ) ;
162 h o l d on
163 end
164
165 t 1 i=t e x t ( 3 6 . 5 , 6 , ’ $T= 5 $ $^oC$ ’ , ’ F o n t S i z e ’ , 1 5 ) ;
166 s e t ( t1i , ’ r o t a t i o n ’ , 289)
167 t 2 i=t e x t ( 2 5 . 6 , 6 , ’ $T= 75 $ $^oC$ ’ , ’ F o n t S i z e ’ , 1 5 ) ;
168 s e t ( t2i , ’ r o t a t i o n ’ , 289)
169 h o l d on
170 x l a b e l ( ’ $ \mathrm{ Tens \ t i l d e { a } o } $ [V] ’ , ’ F o n t s i z e ’ , 2 5 )
171 y l a b e l ( ’ $ \mathrm{ C o r r e n t e } $ [A] ’ , ’ F o n t S i z e ’ , 2 5 )
172 a x i s ( [ 0 40 0 1 2 ] )
173
174 %%%%%%%%%%%%%%%%%%%%%%%FIGURA 3−CTxP%%%%%%%%%%%%%%%%%%%%%%%%%%%
175 f i g u r e (403)
176 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
177 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
178 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
179 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
180 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
181 s e t ( gca , ’ F o n t s i z e ’ , 2 2 , ’ C o l o r ’ , ’ White ’ ) ;
182 p l o t ( D_array , Po_array , ’ g ’ , ’ LineWidth ’ , 2 )
183 g r i d on
184 s e t ( gca , ’ F o n t s i z e ’ , 2 2 ) ;
185 x l a b e l ( ’ C i c l o de Trabalho ’ , ’ F o n t S i z e ’ , 2 2 )
186 y l a b e l ( ’ $ \mathrm{ Pot \ hat { e } n c i a } $ [W] ’ , ’ F o n t s i z e ’ , 2 2 )
APÊNDICE A. Códigos simulados 109
281 f i g u r e (408)
282 p l o t (TENSAO( : , 1 ) , ’ g ’ , ’ LineWidth ’ , 2 )
283 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
284 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
285 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
286 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
287 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
288 s e t ( gca , ’ XTickLabel ’ , [ 0 . 0 : 0 . 1 : 0 . 8 ] , ’ F o n t s i z e ’ , 2 2 )
289 s e t ( gca , ’ P o s i t i o n ’ , [ . 0 7 . 1 8 . 9 . 7 5 ] )
290 x0 =1;
291 y0 =1;
292 width =950;
293 h e i g h t =350;
294 s e t ( g c f , ’ u n i t s ’ , ’ p o i n t s ’ , ’ p o s i t i o n ’ , [ x0 , y0 , width , h e i g h t ] )
295 g r i d on
296 s e t ( gca , ’ F o n t s i z e ’ , 2 2 ) ;
297 x l a b e l ( ’Tempo [ s ] ’ , ’ F o n t S i z e ’ , 2 2 ) ;
298 y l a b e l ( ’ $ \mathrm{ Tens \ t i l d e { a } o } $ [V] ’ , ’ F o n t s i z e ’ , 2 5 )
299 t e x t ( 1 0 0 0 0 , 1 2 , ’ $T = 25 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
300 t e x t ( 1 1 0 0 0 0 , 1 2 , ’ $T = 65 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
301 t e x t ( 2 1 0 0 0 0 , 1 2 , ’ $T = 35 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
302 t e x t ( 3 1 0 0 0 0 , 1 2 , ’ $T = 15 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
303 t e x t ( 4 1 0 0 0 0 , 1 2 , ’ $ T = 5 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
304 t e x t ( 5 1 0 0 0 0 , 1 2 , ’ $ T = 45 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
305 t e x t ( 6 1 0 0 0 0 , 1 2 , ’ $T = 55 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
306 t e x t ( 7 1 0 0 0 0 , 1 2 , ’ $T= 75 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
307 a x i s ( [ 0 800000 0 5 0 ] )
308 h o l d on
309 p l o t (TENSAO( : , 2 ) , ’ C o l o r ’ , [ 0 0 . 5 0 ] , ’ LineWidth ’ , 2 )
310 Vin=t e x t ( 7 3 0 0 0 0 , 2 0 . 5 , ’$V_{ s a i d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
311 Vout=t e x t ( 7 3 0 0 0 0 , 2 7 , ’$V_{ e n t r a d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
312
313 %P o t e n c i a S i m u l i n k
314 PIN=z e r o s ;
315 POUT=z e r o s ;
316 PIN=(CORRENTE( : , 1 ) . *TENSAO( : , 1 ) ) ;
317 POUT =(CORRENTE( : , 2 ) . *TENSAO( : , 2 ) ) ;
318
319 %E n e r g i a S i m u l i n k
320 E_IN_CI_TE=nansum ( PIN ) / ( 3 6 0 0 * 1 0 0 0 0 0 0 ) ;
321 E_OUT_CI_TE=nansum (POUT) / ( 3 6 0 0 * 1 0 0 0 0 0 0 ) ;
322 E_EF_CI_TE=(E_OUT_CI_TE/E_IN_CI_TE) * 1 0 0 ;
323
324
325 %%%%%%%%%%%%F i g u r a 9− POTENCIA NO CONVERSOR %%%%%%%%%%%%
326 f i g u r e ( 4 0 9 )
327 p l o t ( PIN ( : , 1 ) , ’ g ’ , ’ LineWidth ’ , 2 )
APÊNDICE A. Códigos simulados 112
328 g r i d on
329 s e t ( gca , ’ F o n t s i z e ’ , 2 2 ) ;
330 s e t ( gcf , ’ c o l o r ’ , ’ white ’ )
331 s e t ( g r o o t , ’ D e f a u l t T e x t I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
332 s e t ( g r o o t , ’ D e f a u l t A x e s T i c k L a b e l I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
333 s e t ( g r o o t , ’ DefaultAxesFontName ’ , ’ LaTeX ’ ) ;
334 s e t ( g r o o t , ’ D e f a u l t L e g e n d I n t e r p r e t e r ’ , ’ LaTeX ’ ) ;
335 s e t ( gca , ’ P o s i t i o n ’ , [ . 0 7 . 1 8 . 9 . 7 5 ] )
336 x l a b e l ( ’Tempo [ s ] ’ , ’ F o n t S i z e ’ , 2 2 ) ;
337 x0 =1;
338 y0 =1;
339 width =950;
340 h e i g h t =350;
341 s e t ( g c f , ’ u n i t s ’ , ’ p o i n t s ’ , ’ p o s i t i o n ’ , [ x0 , y0 , width , h e i g h t ] )
342 a x i s ( [ 0 800000 0 3 5 0 ] )
343 y l a b e l ( ’ $ \mathrm{ Pot \ hat { e } n c i a } $ [W] ’ , ’ F o n t s i z e ’ , 2 2 )
344 t e x t ( 1 2 0 0 0 , 1 0 0 , ’ $T = 25 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
345 t e x t ( 1 1 0 0 0 0 , 1 0 0 , ’ $T = 65 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
346 t e x t ( 2 1 0 0 0 0 , 1 0 0 , ’ $T = 35 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
347 t e x t ( 3 1 0 0 0 0 , 1 0 0 , ’ $T = 15 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
348 t e x t ( 4 1 0 0 0 0 , 1 0 0 , ’ $ T = 5 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
349 t e x t ( 5 1 0 0 0 0 , 1 0 0 , ’ $ T = 45 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
350 t e x t ( 6 1 0 0 0 0 , 1 0 0 , ’ $T = 55 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
351 t e x t ( 7 1 0 0 0 0 , 1 0 0 , ’ $T= 75 $ $^oC$ ’ , ’ F o n t s i z e ’ , 1 5 )
352 h o l d on
353 p l o t (POUT, ’ C o l o r ’ , [ 0 0 . 5 0 ] , ’ LineWidth ’ , 2 )
354 s e t ( gca , ’ XTickLabel ’ , [ 0 . 0 : 0 . 1 : 0 . 8 ] , ’ F o n t s i z e ’ , 2 2 )
355 p i n=t e x t ( 7 3 0 0 0 0 , 2 1 0 , ’$P_{ e n t r a d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
356 pout=t e x t ( 7 3 0 0 0 0 , 1 5 5 , ’$P_{ s a i d a } $ ’ , ’ F o n t S i z e ’ , 2 0 ) ;
357
358 EN_SAIDA_CI=E_OUT( end ) / 3 6 0 0 ;
359 EF_EN_CI=100*E_OUT( end ) /E_IN( end ) ;