Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Inversor de Corrente: Características e Funcionalidades, Slides de Engenharia Elétrica

Este documento explica as características e funcionalidades do inversor de corrente elétrica, que difere do convencional inversor de tensão. O inversor de corrente é normalmente ligado a uma carga trifásica equilibrada e alimentado por uma fonte de tensão dc em série com uma bobina de alisamento. O trânsito de potência ativa e reactiva pode ser controlado independentemente um do outro através do índice de modulação e do esfasamento. No inversor de corrente, o controle das três fases deve ser feito em conjunto, e a forma de onda da corrente de saída depende apenas do controle do inversor e não da tensão existente na carga. O documento também discute a implementação do controle por pulsos de largo duração (pwm) e a importância do tempo de execução da rotação que implementa a mudança de estado do inversor.

Tipologia: Slides

2021

Compartilhado em 16/03/2021

itallo-pimentel-11
itallo-pimentel-11 🇧🇷

1 documento

1 / 59

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
51
Capítulo 4
Conversão de corrente contínua em alternada
A corrente quase contínua que o conjunto rectificador / bobina_alisamento fornece tem de ser
modificada de forma a possuir características que lhe permitam ser injectada na rede eléctrica
de distribuição pública.
As características impõem:
Corrente alternada de componente fundamental sinusoidal e com 50Hz.
Baixo conteúdo harmónico.
Para obter essas características a corrente passa por um inversor que a torna alternada e por
um filtro que lhe baixa o conteúdo harmónico de alta frequência.
L
C
filtro AC
inversor
corrente
fonte
corrente
I
dc
corrente
sinusoidal
Figura 4.1 - Esquema geral da conversão dc-ac.
A entrada em corrente do conversor DC/AC obriga ao uso de um inversor de corrente que tem
características e funcionalidades diferentes do convencional inversor de tensão.
Para minimizar o conteúdo harmónico o inversor de corrente é comandado através da técnica
de modulação de largura de impulsos (PWM). Esta técnica permite mudar os harmónicos
gerados pela comutação dos interruptores para frequências elevadas, simplificando assim a
sua filtragem. Simultaneamente o PWM permite regular a amplitude da componente
fundamental, evitando que a fonte de corrente contínua que alimenta o inversor tenha
necessidade de ser controlada.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b

Pré-visualização parcial do texto

Baixe Inversor de Corrente: Características e Funcionalidades e outras Slides em PDF para Engenharia Elétrica, somente na Docsity!

Capítulo 4

Conversão de corrente contínua em alternada

A corrente quase contínua que o conjunto rectificador / bobina_alisamento fornece tem de ser modificada de forma a possuir características que lhe permitam ser injectada na rede eléctrica de distribuição pública.

As características impõem:

  • Corrente alternada de componente fundamental sinusoidal e com 50Hz.
  • Baixo conteúdo harmónico.

Para obter essas características a corrente passa por um inversor que a torna alternada e por um filtro que lhe baixa o conteúdo harmónico de alta frequência.

L

C

inversor filtro AC corrente

fonte corrente

I (^) d c corrente sinusoidal

Figura 4.1 - Esquema geral da conversão dc-ac.

A entrada em corrente do conversor DC/AC obriga ao uso de um inversor de corrente que tem características e funcionalidades diferentes do convencional inversor de tensão.

Para minimizar o conteúdo harmónico o inversor de corrente é comandado através da técnica de modulação de largura de impulsos (PWM). Esta técnica permite mudar os harmónicos gerados pela comutação dos interruptores para frequências elevadas, simplificando assim a sua filtragem. Simultaneamente o PWM permite regular a amplitude da componente fundamental, evitando que a fonte de corrente contínua que alimenta o inversor tenha necessidade de ser controlada.

1 Inversor de corrente

1.1 Introdução

Como o próprio nome indica o inversor de corrente é um dispositivo que permite transformar a corrente contínua com que é alimentado, em corrente alternada com determinadas características. Para o efeito, a corrente DC à entrada é cortada em impulsos através dos interruptores que ligam a entrada às três fases da saída.

g1h g2h g3h

g1L g2L g3L

IR

IS

IT

Idc

Idc

Figura 4.2 - Esquema básico do inversor de corrente.

O comando dos interruptores tem de ser efectuado de modo a que as componentes espectrais sejam as desejáveis. O uso de interruptores rápidos e com capacidade de serem comandados nos dois estados (corte e condução) permite o uso da técnica de modulação de largura de impulsos (PWM - Pulse Width Modulation). Esta técnica permite o controlo da amplitude da componente fundamental da corrente de saída e afastar os harmónicos para frequências elevadas, simplificando a filtragem.

Normalmente o inversor de corrente é ligado a uma carga que pode ser modelizada por um sistema de tensões trifásico equilibrado, e alimentado por uma fonte que consiste numa fonte de tensão DC em série com uma bobina de alisamento.

g1h g2h g3h

g1L g2L g3L

V (^) R

V (^) S

V (^) T

IR

IS

IT

L (^) alisamento

V (^) dc fonte

Idc

V (^) dc inv

Figura 4.3 - Utilização normal do inversor de corrente.

1.2 Regras para o controlo

Ao contrário do inversor de tensão onde cada fase do inversor pode ser controlada individualmente e independentemente das outras duas 1 , no inversor de corrente o controlo das três fases tem de ser feito em conjunto.

A primeira regra surge pela necessidade de haver sempre um caminho por onde a corrente da bobina de alisamento circular. Se em algum instante a corrente não tiver um circuito por onde fluir, criará uma sobretensão aos terminais do inversor de modo a ‘abrir caminho’ para a corrente fluir e dissipar a energia armazenada na bobina. Naturalmente esta sobretensão levará à destruição do inversor.

Por este facto a primeira regra indica que em cada instante pelo menos um dos três interruptores superiores (g1h, g2h e g3h) e pelo menos um dos três interruptores inferiores (g1L, g2L e g3L) devem estar ligados para permitir um caminho à corrente.

A segunda regra surge pela necessidade de se garantir que a forma de onda da corrente de saída das três fases depende unicamente do controlo do inversor, e não da tensão existente e criada pela carga nas fases.

Suponha-se que num dado instante os interruptores g1h e g2L estão ligados e que na bobina passa a corrente Idc. Neste caso a corrente nas fases R, S e T está bem definida e vale respectivamente Idc, -Idc e zero.

g 1 h g 2 h g 3 h

g 1 L g 2 L g 3 L

V (^) R V (^) S V (^) T

IR IS IT

Id c

Id c

I (^) R = - I (^) S = I (^) dc

g 1 h g 2 h g 3 h

g 1 L g 2 L g 3 L

V (^) R V (^) S V (^) T

IR IS IT

Id c

Id c

I (^) R - I (^) S = I (^) dc I (^) R e I (^) S desconhecidos pelo controlador Dependem das tensões V (^) S e V (^) T

??

Figura 4.5 - Demonstração da necessidade de haver apenas 1 interruptor a conduzir nos grupos superior e inferior.

Suponha-se agora que o interruptor g3L também está ligado. Neste caso a repartição da corrente Idc pelas fases R e T depende das tensões Vrs e Vts fluindo maioritariamente pela fase que oferecer menor resistência (menor tensão). Neste caso o comando do inversor nunca poderia garantir qual a corrente que está a circular nas 3 fases, uma vez que a distribuição de correntes dependeria também das tensões de carga.

Realmente, se não fossem os díodos em serie (ver secção 3), neste caso onde estão 3 interruptores ligados, poderia inclusive, dar-se o caso de haver uma corrente de circulação da fase com maior tensão para a fase com menor tensão.

(^1) Na realidade a única regra a cumprir no caso do inversor de tensão é garantir que os dois interruptores de cada

fase nunca estão simultaneamente ligados, de forma a evitar que a fonte de tensão DC seja curto-circuitada.

Assim a segunda regra indica que apenas um interruptor de cada grupo superior e inferior pode estar a conduzir num dado instante.

Estas duas regras combinam-se para gerar a regra de ‘ouro’ para o inversor de corrente: Em cada instante deve estar um e um só interruptor ligado em cada grupo, superior e inferior.

Para se controlar a potência entregue à carga, em vez de se abrirem os 6 interruptores como no caso do inversor de tensão, fecham-se alternadamente os dois interruptores de cada fase efectuado assim uma ‘roda livre’ na corrente da bobina e isolando a corrente de carga da corrente de entrada DC.

1.3 Base de PWM

O PWM usado neste trabalho baseia-se no método descrito por Ohnishi e Okitsu [ 8 ].

Segundo os autores, este PWM melhora a eliminação dos harmónicos de ordens mais baixas e o ganho para o lado DC (a tensão rectificada obtida é mais elevada e o “ripple” mais baixo) em relação às outras técnicas existentes.

O PWM baseia-se no facto de apenas duas das três referências da corrente de saída serem independentes, uma vez que a soma das 3 correntes deve ser nula em cada instante de tempo.

I R

I
S
I
T

( ) t (^) + ( ) t (^) + ( ) t = 0 (4.3)

Isto significa que depois de se definirem os pulsos de PWM para duas correntes, os pulsos para a terceira ficam automaticamente definidos.

A construção do PWM desenvolve-se pela composição de duas moduladoras ( M 1 e M 2 ) obtidas a partir das três correntes pretendidas ( I (^) R , I (^) S e I (^) T ). Os sinais M 1 e M 2 são obtidos dividindo o período das correntes I (^) R , I (^) S e I (^) T em seis intervalos iguais. Em cada intervalo, S 1 e S 2 são compostos tomando o valor absoluto dos sinais^ I (^) R ,^ I (^) S e^ I (^) T de menor valor absoluto.

t

t

t

IR IS IT

T 1 T 2 T 3 T 4 T 5 T 6

M 1

M 2

M t

IR se t T IS se t T IS se t T IT se t T IT se t T IR se t T

1

1 2 3 4 5 6

( ) =

∈ − ∈ ∈ − ∈ ∈ − ∈

  

   

M t

IT se t T IT se t T IR se t T I R se t T IS se t T IS se t T

2

1 2 3 4 5 6

( ) =

∈ − ∈ ∈ − ∈ ∈ − ∈

  

   

Figura 4.6 - Construção das moduladoras M 1 e M 2.

As moduladoras obtidas vão modular duas portadoras ( P 1 e P 2 ) com frequência:

f P = (^6. m + 3 ). fr (4.4)

g 2 h

g 1 L g 2 L

g 3 h

g 3 L

g 1 h I (^) Rs

IDC

I (^) Ss I (^) Ts

Figura 4.8 - Inversor de corrente.

Os sinais de comando dos interruptores ( g1h , g2h , g3h , g1l , g2l , g3l ) são calculados a partir dos sinais S 1 , S 2 e S 3 e a partir do intervalo de tempo T 1 ..T 6 correspondente ao momento, a partir das seguintes expressões lógicas:

g1h T S T T S T S g2h T S T S T T S g3h T S T S T S T g1l T S T S T T S g2l T T S T S T S g3l T S T T S T S

1 1 2 3 2 5 3 1 3 3 1 4 5 2 1 2 3 3 5 1 6 2 3 4 2 5 6 1 1 2 1 4 3 6 2 2 2 3 4 1 6 3

Analisando as expressões anteriores é possível verificar que este PWM garante o respeito das regras indicadas na Secção (1.2). Em cada instante de tempo existe sempre um e apenas um IGBT a conduzir nos ramos superior ( g1h , g2h , g3h ) e inferior ( g1l , g2l , g3l ) do inversor.

Em cada intervalo de tempo os sinais (^) S 1 e (^) S 2 dão os instantes em que o inversor injecta corrente na saída. O sinal S 3 dá os instantes em que o inversor desliga as saídas, ligando o IGBT superior e inferior do mesmo ramo, fazendo a corrente de entrada circular em roda livre. Verifica-se assim que este PWM controla a “quantidade” de corrente injectada na carga, variando o tempo em que o inversor está em roda livre. Para índices de modulação próximos da unidade S 3 é pequeno, crescendo à medida que o im desce, ficando o inversor permanentemente em roda livre com o im igual a zero.

As correntes de saída I (^) Rs , I (^) Ss e I (^) Ts são obtidas a partir do comando das gates e da corrente de entrada I (^) DC.

( ) ( ) ( )

I I g h g l I I g h g l I I g h g l

Rs DC Ss DC Ts DC

Para controlar a fase das correntes de saída toma-se como referência a fase R da tensão da rede ( VR ) para a qual o inversor debita corrente. O esfasamento entre a tensão da rede e a corrente de referência I (^) R, impõe a fase das correntes debitadas pelo inversor ( I (^) Rs , I (^) Ss e I (^) Ts ) em relação à tensão da rede.

As figuras seguintes exemplificam o processo de construção do PWM. Para que os impulsos consigam ser visualizados com clareza no gráfico, optou-se por fazer m =3. Isto significa que

as portadoras têm uma frequência de 21 vezes a frequência das correntes de referência (eq.4.4).

Figura 4.9 - Geração dos sinais de comando do inversor e correntes obtidas na saída para im =

Figura 4.11 - Geração dos sinais de comando do inversor e correntes obtidas na saída para im =0.

1.4 Implementação do PWM

O controlo dos interruptores é feito directamente a partir do μC. Como não é possível obter fórmulas explícitas, simples e rápidas de calcular os impulsos de controlo, optou-se por tabelar os sinais de comando.

Uma definição que ajuda a compreender a forma de controlo do inversor implementada e a construção das tabelas de comando é o “estado de inversor” ( est_inv ). O est_inv indica se os interruptores estão ligados ou desligados e durante quanto tempo assim permanecem.

A forma escolhida para representar o estado do inversor é a seguinte:

estado g h g h g h g l g l g l tempo estado estado gates tempo estado

_ ; _

onde g ij assume os valores 1 ou 0 consoante o respectivo interruptor está ligado ou desligado, e tempo representa a duração temporal do estado. O termo “estado_gates” tem origem no sinal que comanda o interruptor utilizado: o IGBT.

Como é óbvio, é possível representar todo o comando de um inversor a partir de uma sequência de estados. Como exemplo, mostra-se a sequência de estados para o controlo em onda quadrada.

Figura 4.12 - Forma de onda das correntes de saída para um controlo em onda quadrada e respectiva sequência de estados de controlo.

Das Figuras 4.9 a 4.11 verifica-se que os sinais S 1 , S 2 e S 3 repetem-se a cada 1/6 de período das ondas de referência. O sinal S 2 pode ser obtido se invertermos S1 no tempo, isto é: S 2 (t) = S 1 (-t). O sinal S 3 é obtido a partir de S 1 e S 2 segundo a equação 4.7. Isto quer dizer que todo o controlo do inversor fica definido a partir do sinal S 1 durante o primeiro 1/6 de período ( T 1 ).

As transições do sinal S 1 (durante T 1 ) são dadas pelos pontos de intersecção dos sinais P 1 e M 1 , conforme pode ser visto na figura seguinte.

m im T

(^1) t

sin 

π

Os tempos de cruzamento t 1 .. t 14 são calculados por processos numéricos.

Figura 4.13 - Transições do sinal S 1 em função de P 1 e M 1.

Os pontos de transição são obtidos resolvendo numericamente para x, equações da forma:

Tabela 4.2 - Constituição da tabela de controlo do inversor para o PWM usado neste trabalho. A frequência das portadoras é de 45 vezes a frequência das correntes de referência. Os tempos d 1 .. d 15 são função do índice de modulação.

Cada índice de modulação ( im ) possui uma tabela de controlo. Como é óbvio a sequência do comando dos interruptores é igual para todos os im. O que varia é o tempo de permanência em cada estado. Por outras palavras: o que varia com o im são os tempos d 1 .. d 15.

A redundância de informação na tabela é grande. Para 174 “tempos” de estado, apenas 15 são diferentes e colocados por uma ordem perfeitamente definida.

Isto sugere que se crie apenas uma tabela com a sequência do comando dos interruptores para todos os im , e uma tabela com os valores d 1 .. d 15 para cada im.

No entanto, para o μC conseguir controlar o inversor com eficiência e para que a rotina que executa a mudança de estado seja executada no menor tempo possível, a construção das tabelas é feita de uma forma ligeiramente diferente, ficando com alguma redundância de informação.

Durante o cálculo dos valores d 1 .. d 15 não se coloca nenhuma restrição ao seu valor. No entanto a duração de um estado está restringida às seguintes condições:

  • O tempo de um estado está limitado inferiormente pelo tempo mínimo de condução ou corte dos interruptores. Optou-se por fazer a duração mínima de condução ou corte dos IGBTs de 10μs.
  • O tempo de um estado está limitado inferiormente pelo tempo que a rotina do μC que executa a mudança de estado demora a ser executada. Esta rotina demora no máximo 8.6μs a ser executada.
  • A resolução do tempo de um estado está limitada à resolução do contador que implementa o controlo do tempo. Como o contador tem uma resolução de 200ns ( rct ), o tempo tem de respeitar a seguinte fórmula:

tempo = nc. 200 ns , n inteiro (4.12)

onde nc representa o valor colocado no contador do μC.

Como é óbvio as duas primeiras restrições são combinadas numa só, limitando a duração mínima a 10μs. Isto significa que o valor mínimo de (^) nc é 50 (10μs/200ns).

A influência destas restrições no tempo de duração dos estados de PWM é analisada na secção (1.7).

1.5 Comando do inversor

O módulo de software responsável pelo comando do inversor recebe o índice de modulação através da variável global G_pwm_im e da função muda_im_pwm(). A fase é indicada através da função muda_fase_pwm(fase). Depois de receber estes dois valores, o módulo é responsável por todos os acontecimentos relativos ao comando do inversor.

  • 2 bancos de registos ( pwm_regs e sync1_regs ) - Para processamento e armazenamento de dados entre chamadas de rotinas. A utilização de registos para armazenamento de informação entre chamadas de rotinas permite tornar essas rotinas mais rápidas uma vez que não é feito acesso à memória convencional.
  • Apontador DPP0 (“ data page pointer 0 ”) - É utilizado para aceder à informação das tabelas do PWM como se fossem variáveis do tipo “ near ”. O acesso a variáveis através dos “ data page pointer ” (variáveis “ near ”) é mais rápido do que o acesso tipo “ extended page ” ou “ extended segment ”.

A maior parte das rotinas responsáveis pelo comando do inversor foram escritas em assembly de modo a optimizar o tempo de execução. O código está descrito no Anexo C e encontra-se documentado. No entanto a sua total compreensão exige o conhecimento da arquitectura do C167 e do seu assembly.

1.5.1 Organização e armazenamento das tabelas de PWM

A rotina que executa a mudança de estado do inversor utiliza o apontador DPP0 para aceder à informação necessária a cada estado: o estado dos interruptores ( gates ) e a duração do respectivo estado ( tempos ).

Na Secção 1.4 foi visto que 15 valores ( d 1 .. d 15 ) são suficientes para indicar o tempo de duração dos estados para cada índice de modulação ( im ). Aparentemente a melhor forma de construir as tabelas seria formar uma tabela de 15 valores para cada im. Esta tabela seria alternadamente percorrida nos dois sentidos sendo assim obtida a sequência correcta dos tempos.

No entanto, isto leva a que a rotina que executa a mudança de estado tenha de incluir uma condição para verificar em que sentido está a percorrer a tabela. Isto significa um tempo de execução que pode ser poupado se a tabela for percorrida apenas num sentido.

Desta forma, a tabela de (^) tempos para cada (^) im é constituída por 29 valores correspondentes a 1/6 de período das correntes de saída. Cada valor da tabela é armazenado em 16 bits. Para indicar o fim da tabela é colocado o valor FFFFh (valor negativo em complemento para dois).

Embora 8 bits fossem suficientes, é mais rápido mover e operar 16 bits neste μC do que 8 bits. Alem disso para se usar 8 bits seria necessário baixar a resolução do contador de 200ns para 400ns, o que levaria a piorar a linearidade entre Vdc e im conforme é exposto na Secção 1.7.

Atendendo a que o tamanho das tabelas de tempo é sempre o mesmo para cada im , o valor que indica o fim da tabela é dispensável se a rotina que executa a mudança de estado possuir um contador que sinalize que chegou ao fim da tabela. No entanto, incrementar e verificar o contador demora tempo.

Assim cada tabela de tempo ocupa (29+1)∗2 = 60bytes.

Deve ser notado que a tabela de tempos pode possuir valores com zero, correspondentes aos estados eliminados por terem uma duração inferior ao limite imposto.

d d d ...... d d d ...... d d d FFFFh Figura 4.16 - Tabela com a duração dos estados do PWM. Os 29 valores correspondem aos estados durante 1/6 de período que depois se repetem para os restantes 5/6. A tabela é percorrida no sentido descendente e o seu final é sinalizado com o valor FFFFh. Cada im possui uma tabela deste tipo que ocupa 60bytes.

Como a sequência de gates é sempre a mesma, aparentemente apenas seria necessário uma tabela de gates para todos os índices de modulação. No entanto a informação necessária a cada estado deve estar contida dentro do alcance do apontador DPP0. O DDP0 permite aceder apenas a uma página (16kb) de memória do μC. Como é óbvio as tabelas de tempo para os 1000 im não cabem em 16kb.

Assim em cada página de memória onde existam tabelas de tempo , tem de existir uma tabela com a sequência de gates.

A posição de gates relativamente ao início de cada página tem de ser a mesma, de modo a que o apontador que mantêm a posição actual de gates esteja sempre certo, independentemente da página a ser usada.

4 páginas são suficientes para guardar as tabelas de PWM, pelo que a tabela de gates é repetida 4 vezes no início dessas 4 páginas.

A tabela de gates indica se os interruptores estão ligados ou desligados em cada estado do inversor. Como o sinal da porta do μC que controla os interruptores é invertido no condicionamento de sinal, um “0” indica que interruptor está fechado e um “1” indica que está aberto.

Como existem 6 interruptores no inversor, seriam necessários apenas 6 bits para codificar o seu estado. No entanto a organização ao byte da memória do μC e atendendo a que neste μC é mais rápido mover e operar 16bits do que 8bits leva a que cada estado de gates ocupe 16bits.

A tabela de gates é terminada com um zero. Desta forma a tabela ocupa (29∗6+1) ∗2=350bytes.

Para localizar a tabela correspondente a um determinado im existem dois vectores que estão ordenados por ordem crescente do im a que se referem. Um dos vectores indica a página de memória, e o outro indica o deslocamento da tabela de tempos do respectivo im.

Sempre que o contador T6 chega a zero, alem de gerar a interrupção, é recarregado automaticamente por hardware com o valor guardado no registo T6RELOAD (correspondente à duração do próximo estado), começando uma nova contagem decrescente.

A rotina gera_pwm() quando for chamada devido ao tempo do estado i-1 ter expirado, deve efectuar a sobreposição de condução entre os estados i-1 e i , colocar o inversor no estado i e actualizar o registo T6RELOAD com o tempo de duração do estado i+1. Deve ser reparado que quando a rotina é chamada, já o (^) T6 foi carregado com a duração do estado (^) i que estava no registo T6RELOAD.

O tempo do estado i que a rotina coloca em T6RELOAD , é corrigido através da soma de um valor de correcção ( CORRIGE_TEMPO ) ao valor retirado da tabela de tempos ( tmp ) (ver Secções 1.5.4.1 e 1.5.4.2).

No caso do valor de tmp ser zero (devido ao seu tempo calculado ser inferior ao mínimo imposto) a rotina salta para o próximo estado e soma 2 vezes o valor de CORRIGE_TEMPO ao novo tmp de forma a que a correcção global aos 174 estados de um período se mantenha igual. Deve-se notar que a correcção do período do PWM vale 174* CORRIGE_TEMPO *200ns.

A sobreposição de condução é conseguida efectuando um “and” entre o estado dos interruptores do estado i-1 e do estado i. É efectuado um “and” e não um “or” porque a lógica de comando dos interruptores é negada.

Sequência de valores na tabela gates Gates(x)= - - g3L g2L g1L g3H g2H g1H Gates(1)= - - 1 0 1 1 0 1 Gates(2)= - - 1 1 0 1 0 1

Sequência de valores na porta P7 do yC P7 -> 7 6 5 4 3 2 1 0

    • 1 0 1 1 0 1 <-> valor antes da rotina gera_pwm ser chamada
    • 1 0 0 1 0 1 <-> valor de sobreposição
    • 1 1 0 1 0 1 <-> valor depois da rotina acabar

Figura 4.18 - Esquema para realizar a sobreposição de condução.

Os apontadores para o início das tabelas gates e tempos são mudados pela rotina que muda o índice de modulação. O valor de correcção do período é mudado pelas rotinas de sincronização com a rede. Os apontadores actuais para as tabelas gates e tempos também são mudados pelas rotinas que mudam o índice de modulação e que sincronizam com a rede.

A rotina foi escrita em assembly e foi optimizada de forma a correr no menor tempo possível. Para o efeito todas as variáveis foram mantidas num banco de registos ( pwm_regs ) e acedidas com o apontador DPP0 que é usado exclusivamente^1 na síntese do PWM.

(^1) Deve-se ter muito cuidado em garantir, que as eventuais rotinas fornecidas por terceiros, não utilizem o

apontador DPP0.

Em regime normal, a rotina é executada em 7,10μs com uma sobreposição de condução de 1,95μs. Se a rotina encontrar um estado de duração nula, ou efectuar o reload^1 da tabela de tempos é executada em 7.85μs com uma sobreposição de 2,70μs. Se a rotina efectuar um reload simultâneo às tabelas de^ tempos e^ gates é executada em 8,60μs com 2,70μs de sobreposição.

(^1) O reload de tabela significa que o ultimo valor foi obtido, pelo que é necessário voltar ao

início da tabela.