Sunteți pe pagina 1din 78

UNIVERSIDADE CATÓLICA DE PELOTAS

DANIEL FLORES CORTEZ

ESTUDO E IMPLEMENTAÇÃO DE UM INVERSOR DE


FREQÜÊNCIA BASEADO EM PROCESSADOR DE SINAIS

PELOTAS
2009
DANIEL FLORES CORTEZ

ESTUDO E IMPLEMENTAÇÃO DE UM INVERSOR DE


FREQÜÊNCIA BASEADO EM PROCESSADOR DE SINAIS

Trabalho Final de Graduação


apresentado como requisito parcial
para a obtenção do grau de Engenheiro
Eletricista, pelo Centro Politécnico da
Universidade Católica de Pelotas.

Orientador: Prof. Sérgio José Melo de Almeida


Co-Orientador: Prof. Cláudio Manoel da Cunha Duarte

PELOTAS
2009
ii
ESTUDO E IMPLEMENTAÇÃO DE UM INVERSOR DE FREQÜÊNCIA
BASEADO EM PROCESSADOR DE SINAIS

BANCA EXAMINADORA

Presidente e Orientador Dr. Sérgio José Melo de Almeida.

1º Examinador Profª. Carla Diniz Lopes

2º Examinador Prof. Vinicius Alves

Pelotas, 4 de dezembro de 2009

iii
Dedicatória:
À minha mãe Maria Clarisse e a
minha avó Daura, pelo constante
incentivo e apoio

iv
Agradecimentos

Aos professores Sérgio José Melo de Almeida e Cláudio Manoel da Cunha


Duarte pela orientação durante o desenvolvimento deste trabalho, e pelo incentivo à
continuação deste.

Ao Sociólogo André Luis Pereira pela amizade e o constante incentivo


durante o período acadêmico.

Aos colegas Delvanei Bandeira Jr. e Edevaldo Braga pela amizade, apoio e
colaboração.

Ao colega Gustavo Ott pelos esclarecimentos acerca uso do


microprocessador utilizado.

Ao colega Tiago Schiavon pela imensurável ajuda no desenvolvimento da


parte física do projeto, layout, pelo companheirismo e amizade.

Ao laboratorista Yuri Gayer pelo esforço na aquisição de componentes


eletrônicos para o desenvolvimento do projeto e companheirismo.

Aos professores das disciplinas cursadas, que de forma direta ou indireta


contribuíram para o desenvolvimento deste trabalho.

Por fim, agradeço ao Programa Universidade Para Todos (PROUNI) pela


bolsa integral e à Universidade Católica de Pelotas por ter aderido a este programa.

v
Resumo
O presente trabalho visa o estudo, projeto e implementação de um inversor de
freqüência, através do uso de um controlador digital de sinais (DSC) 56F8013. Este trabalho
também tem por efeito, contribuir para implementação das técnicas de modulação senoidal
e vetorial, concebidas de forma digital e controladas a partir de uma interface gráfica para o
computador (PC). A interface gráfica aqui desenvolvida, tem por finalidade realizar o
controle escalar de velocidade do motor de indução, através do ajuste de tensão e
freqüência de maneira manual e automática, além de monitorar as temperaturas e sobre-
correntes presentes no estágio de potência. A comunicação entre o computador e o estágio
de potência dá-se através de um kit didático, no qual está contido o DSC e é concebida de
maneira serial. A função do DSC, além de monitorar eventos, é de também interpretar os
comandos vindos do PC, e traduzi-los em forma de tensão e freqüência, a partir do emprego
das técnicas de modulação, para após serem aplicadas à carga. Por meio dos resultados
obtidos, este trabalho também propõe uma avaliação do aproveitamento de tensão,
propiciado pelo uso das técnicas de modulação antes citadas, mostrando que a modulação
vetorial disponibiliza um melhor emprego da tensão contínua a ser convertida, frente à
modulação senoidal.

Palavras-chave: Inversor de freqüência, modulação senoidal, modulação vetorial, DSC.

vi
Abstract
This work aims to study, design and implementation of an inverter frequency, using
a digital signal controller (DSC) 56F8013. This work also aims to contribute to
implementation the sinusoidal modulation techniques and space vector, designed digitally
and controlled from a graphical interface to the computer (PC). The graphical interface
developed, is to make the scale speed control of induction motor, by adjusting voltage and
frequency to manually or automatically, monitor temperatures and over-current present in
the power stage. The communication between the computer and the power stage is given
by a didactical kit, which contain the DSC and is made in a serial mode. The function of the
DSC, and monitoring events, is also to interpret the commands from the PC, and translate
them into a voltage and frequency from the use of modulation techniques to be applied
after the load. Through the results, this work also proposes an evaluation of the use of
tension brought about by the use of modulation techniques, mentioned before, showing
that the space vector modulation offers a better use of voltage to be converted, compared
to sinusoidal modulation.

Key words: Inverter frequency, Sinusoidal modulation, Space vector, DSC.

vii
LISTA DE FIGURAS
Figura 2.1 Representação do circuito equivalente do rotor do motor de indução 4
Figura 2.2 Representação do modelo equivalente por fase do motor de indução 5
Figura 2.3 Modelo equivalente com o referimento do rotor para o estator 5
Figura 2.4 Curva do torque do motor de indução para varias faixas de velocidade 7
Figura 2.5 Curva V/F para o controle em malha aberta 8
Figura 3.1 Diagrama esquemático de um inversor de tensão 9
Figura 3.2 Ponte inversora trifásica de três braços como uso de IGBT’s e diodos em 10
antiparalelo
Figura 3.3 (a) Braço de um inversor referenciado a ponto “o”. 11
(b) Sinais de referência e portadora variando no tempo.
(c) Sinal resultante da intersecção da portadora com o sinal de
referência, tomando como referência o ponto “o”

Figura 3.4 Esquema de funcionamento dos sinais de comando de um inversor 12


trifásico

Figura 3.5 (a) Intersecção dos sinais de referência e portadora para analise 12
matemática
(b) Tensão de fase da saída do inversor referenciada ao ponto “o”.
Figura 3.6 (a) região de sobremodulação 14
(b) região de onda quadrada
Figura 3.7 Variação da amplitude da fundamental em relação à 15
Figura 3.8 Representa o espectro harmônico da tensão de linha do inversor trifásico 17
para o exemplo
Figura 3.9 Configuração básica de inclusão do temo morto 18
Figura 3.10 (a) Instantes ideais dos sinais de comandos dos interruptores do inversor 29
(b) Sinais de comando com a inclusão do tempo
(c) Ganho e perdas nos sinais de comando com a inclusão do tempo
morto, de acordo com o sentido da corrente
(d) Flutuações na componente fundamental de linha, devido ao sentido
da corrente, referente à inclusão do tempo morto
Figura 3.11 Representação do principio de modulação regular simétrico 21
Figura 3.12 Representa o k-ésimo e o k-ésimo+1 pulso da modulação regular 22
simétrico
Figura 3.13 Ilustra em detalhes as larguras dos pulsos para as três fases em função 23
das palavras digitais
Figura 3.14 Fluxograma representando o algoritmo básico para o método dos 24
quatro-timer
Figura 3.15 Inversor de freqüência trifásico alimentando uma carga trifásica 27
Figura 3.16 Inversor de freqüência representando o estado 27
Figura 3.17 Todas as oito possíveis combinações dos interruptores de um inversor de 28
freqüência
Figura 3.18 Vetores espaciais de tensão do inversor trifásico, formando um hexágono 29
no plano complexo
Figura 3.19 Detalhe do deslocamento do vetor de referência sobre o primeiro setor 29
viii
Figura 3.20 Seqüência de comutação para os seis setores do plano complexo 31
Figura 3.21 Algoritmo básico para implementação da modulação vetorial 32
Figura 4.1 Imagem o kit de desenvolvimento utilizado no projeto 34
Figura 4.2 Tela do ambiente de desenvolvimento do 56F8013, CodeWarrior® 35
Figura 4.3 Utilização dos optoacopladores no projeto 37
Figura 4.4 Circuito de driver utilizado no projeto contendo o IR2110 37
Figura 4.5 Circuito de proteção contra sobre-corrente empregado 38
Figura 4.6 Estágio de potência, com todos os componentes empregados 40
Figura 5.1 Fluxograma representando o funcionamento do software desenvolvido e 42
o encadeamento das funções
Figura 5.2 Tela principal do programa desenvolvido (DFC inverter frequency) 43
Figura 5.3 Imagem da mensagem de aviso que surge antes da partida 45
Figura 5.4 Imagem do gráfico de aceleração de partida para uma curva logarítmica 45
Figura 5.5 Mensagem de aviso quando a tensão atual ultrapassa o valor nominal do 45
motor
Figura 5.6 Tela de temperaturas nos dissipadores da ponte inversora 46
Figura 5.7 Tela de gráficos relacionado a tensão, freqüência e temperatura 47
Figura 5.8 Imagem da tela de relatórios 48
Figura 6.1 Ilustração da metodologia empregada para obtenção dos resultados 49
Figura 6.2 (a) Sinal PWM obtido no pino de saída do 56F8013 para: f = 50 Hz e m = 51
0.8
(b) Espectro de freqüência do sinal da figura 6.2 (a) 51
Figura 6.3 (a) Sinal PWM obtido no pino de saída do 56F8013 para: f = 50 Hz e m = 51
0.8
(b) Espectro de freqüência do sinal da figura 6.3 (a). 51
Figura 6.4 (a) Tensão entre fases para: m = 0.5, f = 2 Vertical: 100 V/div, Horizontal: 51
5ms/div
(b) Espectro de freqüência do sinal da figura 6.4 (a) 52
Figura 6.5 (a) Tensão entre fases para: m = 0.5, f = 20 Hz Vertical:
100V/div,Horizontal: 5ms/div 51
(b) Espectro de freqüência do sinal da figura 6.5 (a) 52
Figura 6.6 (a) Tensão de linha aplicada ao motor para: m = 0.9, f = 50 Hz. Vert:
200V/div, Horiz:5ms/div
(b) Corrente de linha no motor para a tensão da figura 6.6 (a). Vert:
1A/div, Horiz: 5ms/div
(c) Espectro de freqüência da tensão da figura 6.6(a). 52
(d) Espectro de freqüência da corrente da figura 6.6 (b). 53
Figura 6.7 (a) Tensão de linha aplicada ao motor para: m = 0.9, f = 50 Hz. Vert: 200
V/div, Horiz: 5 ms/div
(b) Corrente de linha no motor para a tensão da figura 6.7 (a). Vert: 1
A/div, Horiz: 5 ms/div
(c) Espectro de freqüência da tensão da figura 6.7(a). 52
(d) Espectro de freqüência da corrente da figura 6.7(b). 53
Figura 6.8 (a) Tensão entre fase e neutro de uma carga ligada em estrela para: m =
0.9, f = 50 Hz. Vert: 100 V/div, Horiz: 5ms/div

ix
(b) Espectro de freqüência do sinal da figura 6.8(a). 53
Figura 6.9 (a) Tensão entre fase e neutro de uma carga ligada em estrela para:m =
0.9, f = 50 Hz. Vert: 100 V/div, Horiz: 5ms/div
(b) Espectro de freqüência do sinal da figura 6.9(a). 53
Figura 6.10 Variação da tensão de linha em relação ao índice de modulação para as 54
técnicas de modulação senoidal e vetorial

x
LISTA DE SÍMBOLOS E ABREVEATURAS

Símbolo Descrição Unidade

Número de pólos -
Freqüência angular Rad/s
Freqüência síncrona Rad/s
Velocidade síncrona do estator Rpm
Freqüência do estator Hz
Escorregamento -
Velocidade angular mecânica do eixo do motor Rad/s
Freqüência do rotor Hz
Tensão induzida no rotor V
Reatância do rotor Ohms
Resistência do rotor Ohms
Corrente nos condutores do rotor A
Tensão induzida pelo fluxo no entreferro. V
Reatância do estator Ohms
Resistência do estator Ohms
Tensão aplicada ao estator/ Sinal da portadora V
Número de espiras do estator -
Número de espiras do rotor -
Resistência do ramo de magnetização Ohms
Impedância de Thevenin vista do ponto a-b Ohms
Resistência de Thevenin vista do ponto a-b Ohms
Reatância de Thevenin vista do ponto a-b Ohms
Tensão de Thevenin vista do ponto a-b V
Corrente do rotor A
Potência presente no entreferro da máquina W
Torque desenvolvido pelo motor de indução Nm
CC Corrente Contínua -
CA Corrente Alternada -
IGBT Insulated Gate Bipolar Transistor -
MOSFET Metal Oxide Semiconductor Field Effect Transistors -
PWM Pulse Whidth Modulation -
SPWM Sinusoidal pulse width modulation -
Sinal de referência V
Tensão entre o ponto A e o ponto 0 V
Tensão do barramento CC V
QA Designação para o interruptor superior da fase A do inversor -

xi
Símbolo Descrição Unidade

QB Designação para o interruptor inferior da fase A do inversor -


, , Tensão de referência para a fase A, B e C V
Tensão de referência para a fase C V
Período de comutação s
Instante em que o interruptor QA está ligado s
Instante em que o interruptor QB está ligado s
Razão cíclica do interruptor A -
Valor médio da tensão de fase V
Freqüência fundamental do sinal de referência Hz
Índice de modulação em amplitude -
Componente fundamental da tensão de fase -
Tensão de linha da componente fundamental V
, , Tensão entre a fase A, B e C e o ponto neutro da carga em V
estrela
Índice de modulação em freqüência -
Freqüência do sinal da portadora Hz
Freqüência do sinal de referência Hz
Número do harmônico -
Tempo morto s
Variação de tensão entre os pontos A e N V
, Tempo de subida e descida respectivamente s
ROM Memória de programa -
Largura do pulso dentro do período de s
amostragem
Número de pulsos dentro do período de amostragem -
Período do contador do Timer (clock) s
Período de contagem do Timer s
Instante da k-ésima amostra do sinal de referência s
, , Palavra digital que armazena a largura do pulso para fase A, B -
eC
, Amostra do seno para a fase A, B e C -
N Módulo do contador -
, , Palavra digital que armazena o tempo em que o interruptor -
deve permanecer desligado para fase A,B e C
MCU Microcontrolador (Microcontroller unit) -
SVPWM Space Vector Pulse Width Modulation -
, , Tensões trifásicas V
Tensão de pico V
Freqüência angular Rad/s
Tensão de referência para modulação vetorial V

xii
Símbolo Descrição Unidade

Componente da abscissa do plano complexo V


Componente da ordenada do plano complexo V
Coeficiente da transformada de Clarke -
Ângulo entre e Graus
, Vetores ativos -
, Vetores nulos -
Tempo de aplicação dos interruptores do inversor s
CPU Unidade Central de Processamento -
DSC Controlado Digital de Sinais -
DSP Processador Digital de Sinais -
JTAG Protocolo de comunicação para programação do DSC -
PESL Processor Expert System Library -
TLP621 Optoacoplador de dois canais -
CI Circuito integrado -
IR2110 Drivers para IGBT -
Resistência em série com o barramento CC Ohms
Potenciômetro de ajuste da corrente de curtocircuito Ohms
Tensão de sensibilização do 6N137 V
Corrente do barramento CC A
HGTG12N60C3D IGBT empregado na ponte inversora -
LM7815 Regulador de tensão de 15 V -
Tensão de entrada do regulador de tensão -
LM35 Sensor de temperatura -
PC Computador pessoal -
C++ Linguagem de programação orientada a objetos -
C Linguagem de programação utilizada no 56F8013 -
56F8013 Controlador digital de sinais de 16 bits -
Tensão do sinal PWM V
Tensão de 3,3 V do 56F8013 V
Tensão de linha V
Corrente de linha no motor A
Corrente nominal do motor A
Tensão entre fase e neutro de uma carga ligada em estrela V

xiii
Sumário

Capítulo 1 : Introdução .......................................................................................................... 1


1.1 Introdução.................................................................................................................... 1
1.2 Objetivos ...................................................................................................................... 2
1.3 Justificativa e importância ............................................................................................ 2
Capítulo 2 : Modelo e Controle do Motor de Indução ........................................................... 3
2.1 Introdução.................................................................................................................... 3
2.2 Modelo matemático ..................................................................................................... 3
Capítulo 3 : O inversor de freqüência e as técnicas de modulação........................................ 9
3.1 Inversor de freqüência ................................................................................................. 9
3.2 Modulação em largura de pulso senoidal (SPWM) ...................................................... 10
3.3 Efeito do tempo morto ............................................................................................... 17
3.4 Implementação digital da SPWM ................................................................................ 20
3.4 Modulação Vetorial (SVPWM) .................................................................................... 24
3.5.1 Relação entre teoria dos vetores espaciais e o inversor de freqüência ................. 26
Capítulo 4 : Descrição do hardware..................................................................................... 33
4.1 Introdução.................................................................................................................. 33
4.2 Controlador Digital de Sinais (DSC) ............................................................................. 33
4.3 Kit de desenvolvimento .............................................................................................. 34
4.4 Ambiente de desenvolvimento ................................................................................... 34
4.5 Interfaceamento entre o 56F8013 e o estágio de potência ......................................... 36
4.5.1 Isolamento .......................................................................................................... 36
4.5.2 Circuitos de Drivers .............................................................................................. 37
4.6 Circuito de proteção ................................................................................................... 38
4.7 Estágio de potência: ponte inversora e alimentação geral .......................................... 39
Capítulo 5 : Descrição da interface gráfica .......................................................................... 41
5.1 Estrutura e descrição básica do software proposto .................................................... 41
5.2 Interface gráfica ......................................................................................................... 42
5.2.1 Modos de partida (setor 1) .................................................................................. 43
5.2.2 Ajustes manuais (Setor 2) .................................................................................... 44
5.2.3 Dados principais do motor e sentido de rotação (setor 3) .................................... 44
xiv
5.2.4 Botão de início (setor 4) ....................................................................................... 44
5.2.5 Gráfico de aceleração de partida (setor 5) ........................................................... 45
5.2.6 Barra de mensagens (setor 6) .............................................................................. 45
5.3 Tela de temperaturas ................................................................................................. 46
5.4 Tela de gráficos .......................................................................................................... 46
5.5 Tela de relatórios ....................................................................................................... 47
5.6 Protocolo de comunicação ......................................................................................... 48
Capítulo 6 : Resultados Experimentais ................................................................................ 49
6.1 Introdução.................................................................................................................. 49
6.2 Conceitos de avaliação ............................................................................................... 49
6.3 Metodologia empregada ............................................................................................ 49
6.4 Limitações do protótipo ............................................................................................. 50
6.5 Resultados Obtidos .................................................................................................... 50
Capítulo 7 : Conclusões e Sugestões para Trabalhos Futuros .............................................. 55
Capítulo 8 : Referências Bibliográficas ................................................................................ 57
Capítulo 9 : Anexos .............................................................................................................. 60

xv
1

Capítulo 1 : Introdução

1.1 Introdução

Na atualidade, os microcontroladores e DSP’s têm uma grande aceitação por parte


da eletrônica de potência, motivada pelo ganho de eficiência e também, em virtude da
integração dos componentes eletrônicos oferecidos por estes dispositivos. Uma das áreas do
conhecimento que se beneficiou com os avanços dos microprocessadores, é a que estuda o
acionamento de maquinas elétricas, mais precisamente o inversor de freqüência. Este
dispositivo vem desempenhando um papel cada vez mais significante, fundamental nos
processos de conversão de energia, tal como ocorre no ajuste de freqüência de fontes de
energia renováveis. Nessas, na maioria dos casos, não há possibilidade de manter a
freqüência num valor fixo, tornando-se necessário o uso de baterias para o armazenamento.
Para estas situações o inversor de freqüência é extremamente útil, visto que ele é capaz de
converter um sinal contínuo em um sinal alternado, possibilitando o consumo adequado da
energia.
Devido às suas características, os inversores de freqüência são também
amplamente utilizados no controle de velocidade de motores de indução. Estes motores,
devido a sua simplicidade e robustez têm cada vez mais aplicações em atividades que exijam
um controle fino de velocidade, atividades antes somente realizadas por motores de
corrente contínua.
O controle de velocidade de um motor de indução pode ser obtido com o uso de
técnicas de modulação apropriadas, aplicadas a inversores de freqüência, através da
variação da tensão e freqüência. Dentre estas técnicas, a modulação senoidal e vetorial
tiveram grande aceitação, conseqüente ao relativo aproveitamento do barramento de
tensão contínua e o baixo conteúdo harmônico. Estas consistem basicamente, na
sintetização de um sinal de referência, através da abertura e fechamento de dispositivos de
estado sólido, de forma a obter o ajuste integral da tensão e freqüência. A grande vantagem
destas técnicas está na possibilidade da implementação digital haja vista que são
fundamentadas em expressões matemáticas, sendo possível à aplicação em software e em
tempo real, por meio de microprocessadores.
2

A implementação digital do inversor de freqüência será alvo de estudo no decorrer


deste trabalho, onde, por meio do capítulo 2 será apresentado o funcionamento do motor
de indução. Durante o terceiro capítulo será visto os princípios de funcionamento do
inversor de freqüência e às técnicas de modulação utilizadas por este. Já no capítulo 4, serão
apresentados os blocos constituintes da implementação do protótipo experimental. Da
mesma forma, no capítulo 5 serão expostos os recursos do software para o computador (PC)
desenvolvido, cuja finalidade é o controle e monitoramento do protótipo apresentado
durante do quarto capítulo. No capítulo 6 serão explanados os resultados obtidos através
dos ensaios em bancada, por meio das formas de onda obtidas pelo osciloscópio e também,
a partir da visualização dos espectros de freqüência. Por fim, no capítulo 7 serão tiradas às
conclusões do trabalho.

1.2 Objetivos

Este trabalho tem como objetivo dar uma contribuição a implementação digital das
técnicas de modulação para inversores de freqüência mais discutidas na literatura através (i)
implementação de um protótipo experimental (ii) desenvolvimento de um software para o
PC, com a função de monitorar e controlar o protótipo de forma remota a partir de uma
conexão serial (iii) avaliação do desempenho das técnicas de modulação senoidal e vetorial
por meio dos ensaios obtido em bancada.

1.3 Justificativa e importância

A necessidade deste trabalho justifica-se, pois é preciso um melhor esclarecimento


das técnicas de modulação apresentadas em nível acadêmico, visto que as implementações
digitais destas não são abordadas. Este trabalho promove o entendimento do
funcionamento das técnicas de modulação digitais mais utilizadas, por meio de deduções
matemáticas, implementação prática e também, uma vasta pesquisa bibliográfica.
3

Capítulo 2 : Modelo e Controle do Motor de Indução

2.1 Introdução

O objetivo deste capítulo é apresentar uma abordagem detalhada das


características principais do motor de indução trifásico, através da apresentação de
parâmetros que interferem diretamente no funcionamento do torque, e que estão
relacionados com o controle de velocidade do motor.
Através do modelo equivalente por fase, será possível entender a relação entre as
grandezas de tensão e freqüência no desempenho dinâmico do motor, tornando o estudo
destas variáveis de fundamental importância para compreensão dos demais capítulos.

2.2 Modelo matemático

Uma máquina de indução funciona pelo principio da transformação, nas quais a


partir de uma tensão alternada aplicadas nos enrolamentos do estator gera-se um fluxo que
induz correntes no rotor, de modo que a interação de ambos os campos magnéticos produza
um torque que levará a rotação do rotor [1].
Para que exista indução de correntes no rotor, é necessário que ocorra o
cruzamento das linhas de força do campo produzido pelo estator, com os condutores do
rotor, ou seja, a velocidade do campo girante do estator deverá sempre ser diferente do
rotor para que haja produção de torque.
A velocidade angular do campo girante depende da freqüência de alimentação e do
número de pólos da máquina. Sendo o número de pólos e a freqüência angular (em
rad/s) das tensões de alimentação da máquina, a velocidade de rotação do campo girante
, chamada de velocidade síncrona, é dada por [1]:

A velocidade síncrona do motor também pode ser expressa em termos de


rotações por minuto. Assim,

onde é a velocidade síncrona do estator em rpm, e é a freqüência do estator.


Considerando que a velocidade do estator é diferente do rotor, pode-se definir o
escorregamento do motor, pela expressão:
4

onde é a velocidade angular mecânica do eixo do motor.


Embora o motor de indução se comporte como um transformador, no qual o
primário (estator) induz tensões no secundário (rotor), a freqüência do rotor não é
necessariamente a mesmo do estator. A freqüência das tensões induzidas no rotor varia
inversamente com a velocidade do rotor, desde um máximo (rotor em repouso) até a
freqüência zero na velocidade síncrona [2]. Logo,

onde é a freqüência do rotor.


A partir das considerações definidas pela equação (2.4), pode-se chegar a um
circuito equivalente que represente o rotor do motor de indução, conforme ilustra a figura
2.1.

Figura 2.1 – Representação do circuito equivalente do rotor do


motor de indução
Onde:
: Tensão induzida no rotor.
: Reatância do rotor.
: Resistência do rotor.
A partir da figura 2.1 é possível obter a corrente que circula pelos condutores do
rotor, conforme expressão abaixo:

Se estendermos a idéia de que o motor de indução funciona como um


transformador, pode-se chegar a seu circuito equivalente por fase, figura 2.2, que permite
simular seu comportamento em regime permanente.
5

Figura 2.2 – Representação do modelo equivalente por fase do motor de indução

Os parâmetros apresentados na figura 2.2 são definidos como se segue:


: Tensão induzida pelo fluxo no entreferro;
: Reatância do estator;
: Resistência do rotor;
: Tensão aplicada ao estator;
: Número de espiras do estator;
: Número de espiras do rotor.
Na figura 2.3 é observado o circuito que equivale a todo o lado do rotor para o
estator. Pode-se analisar a semelhança com o circuito equivalente de um transformador,
onde e representam, respectivamente, a resistência e reatância de dispersão.

b
Figura 2.3 – Modelo equivalente com o referimento do rotor para o estator

Se for desprezada a resistência do ramo de magnetização , e aplicarmos o


teorema de Thévenin, visto dos pontos a-b, figura 2.3, se obtém as seguintes expressões
relacionadas:

A corrente é encontrada por:


6

A potência presente no entreferro da máquina, no qual transfere energia para o


rotor, é dada por:

O torque desenvolvido pela máquina de indução é dado por:

Substituindo (2.8) em (2.9), e esta substituída (2.10), resulta em:

Na literatura, alguns autores [1][5] expressam a equação (2.12) de uma forma


modificada, ignorando a queda de tensão na impedância do estator para freqüências abaixo
de 30 Hz, argumentando que esta é muito pequena quando comparada à queda de tensão
no ramo de magnetização. Essa consideração leva a uma expressão mais simples, já que
neste caso, a tensão de magnetização é considerada a mesma que aquela aplica ao
estator , resultando na seguinte expressão:

Analisando a equação (2.13), pode-se concluir que o torque do motor de indução


depende das suas impedâncias internas, do quadrado da tensão, e do inverso da freqüência,
além do escorregamento. De acordo com [3], a redução da freqüência de alimentação
mantendo a tensão constante, causará um aumento do fluxo magnético presente no
entreferro. Segundo [3], como os motores de indução são projetados para operarem no
joelho da curva de magnetização, o aumento do fluxo irá saturar o núcleo, resultando em
um aumento da corrente de magnetização, distorção da corrente e tensões de linha, ruídos
de alta intensidade, além das perdas no material magnético.
A partir de (2.13) é possível observar que, se for mantido a relação entre tensão e
freqüência constante, é possível que o torque também se mantenha. Esta regra será válida
até a freqüência nominal da máquina, pois nesta freqüência deve ser aplicada a tensão
nominal. Para o aumento da freqüência além do nominal, à tensão se manterá constante no
7

seu valor máximo, e com isso se obtém um decréscimo gradual do torque conforme o
aumento da freqüência. Esta região é chamada de enfraquecimento de campo, ou região de
potência constante (Ver figura 2.4).

Torque constante

Região de
potência constante

Figura 2.4 – Curva do torque do motor de indução para varias faixas de velocidade

2.3 Controle de velocidade escalar

A técnica que utiliza a variação da tensão e freqüência dentro de uma relação fixa
com o intuito de manter o fluxo magnético no entreferro constante, é conhecida como
controle escalar, ou V/F. Este pode ser realizado em malha aberta ou em malha fechada.
Quando realizado em malha fechada, é utilizado um encoder posicionado no eixo do motor,
de forma a fazer a leitura do posicionamento e velocidade do eixo, e a partir destas leituras
fazer compensações na tensão ou na freqüência.
Os sistemas de controle quando utilizam encoders, apresentam ótima regulação de
velocidade e desempenho dinâmico. Entretanto, apresentam a desvantagem de serem mais
caros que os controles em malha aberta. Dessa forma, são mais utilizados em aplicações
onde se requer um maior desempenho, ou valor agregado, justificando assim o seu uso.
Um dos métodos de controle de velocidade com maior aceitação na indústria é o
controle escalar em malha aberta. Isto se deve ao fato de ser extremamente barato, e de
possuírem relativa simplicidade em sua implementação. Neste tipo de acionamento o
escorregamento é desprezado e a velocidade mecânica do eixo só é igual à referência para
operações a vazio [4]. Nesta técnica não é mais utilizado o encoder sobre o eixo do motor.
O controle é feito através de uma velocidade de referência, e a partir desta são feitas a
aplicação de tensão e freqüência. A figura 2.5 representa a variação da tensão em função da
8

freqüência para o controle escalar em malha aberta. Deve-se observar que há um acréscimo
da tensão para freqüências consideradas baixas, a fim de compensar a queda de tensão na
impedância da estator.

curva
ajustada

curva
ideal

Figura 2.5 – Curva V/F para o controle em malha aberta

O controle escalar em malha aberta, devido a sua simplicidade e robustez, acabou


sendo adotada por este trabalho. Conforme poderá ser observado no capítulo seguinte, as
técnicas de modulação apresentadas são introdutórias para as implementações que serão
empregadas durante a seqüência deste trabalho, onde através do desenvolvimento de um
software para o PC, será possível realizar o controle escalar através da variação da tensão e
freqüência aplicadas ao motor, de maneira remota.
9

Capítulo 3 : O inversor de freqüência e as técnicas de modulação

3.1 Inversor de freqüência

Como mencionado anteriormente, o controle de velocidade do motor de indução


pode ser facilmente realizado através da variação da freqüência, e se esta for aplicada com
uma tensão de alimentação adequada ao estator, pode se obter como resultado um torque
constante sobre uma larga faixa de velocidade. Tal variação pode ser realizada com o auxilio
de um inversor de freqüência, também chamado de inversor de tensão. Este dispositivo é
capaz de converter um sinal contínuo (CC) em um sinal alternado (CA) com freqüência e
amplitude variáveis. A figura 3.1 ilustra o processo de conversão de sinal de um inversor do
tipo fonte de tensão. Primeiramente utiliza-se um conversor CA-CC (normalmente realizado
com uma ponte de diodo), a seguir filtra-se o sinal de forma a obter um sinal contínuo. Após
este estágio, o sinal passa por um bloco de potência com finalidade única de fornecer um
sinal alternado na saída através da abertura e fechamento dos interruptores estáticos
(geralmente IGBT’s ou MOSFET) com freqüência definida pela técnica de modulação
adotada.

Retificador Filtro Inversor

Rede elétrica Saída modulada

Figura 3.1– Diagrama esquemático de um inversor de tensão

Idealmente um inversor de freqüência deveria fornecer um sinal senoidal na saída.


Porém na prática isto não ocorre, isto em virtude de que às técnicas mais avançadas em
aplicação de controle de velocidade de motores CA, utilizam o principio da modulação, que é
proveniente do princípio de comunicação. Portanto, apresentam uma componente
fundamental e uma série de harmônicos, que dependendo da técnica de modulação
adotada, podem diminuir ou acentuar o número de harmônicas na saída, resultando em
problemas de sobreaquecimento [5], pulsações no torque e fadiga no isolamento das espiras
[6].
O nome dado a técnica que utiliza a modulação como principio de funcionamento
10

de um inversor, é o chamado PWM (do inglês Pulse Whidth Modulation). Esta se baseia no
comando ordenado dos interruptores estáticos do modulo de potência, através da variação
da largura do pulso de tensão aplicado à carga, de modo a obter na saída um controle sobre
a tensão e freqüência da componente fundamental. Geralmente os interruptores são
abertos e fechados com freqüência da ordem de kHertz, freqüência que pode ser fixa ou não
durante o período de funcionamento, dependendo da técnica aplicada. A figura 3.2
representa uma ponte trifásica real de três braços com o uso de IGBT’s no lugar da chave
ilustrada na figura 3.1; os diodos em antiparalelo são usados para desviar a energia
regenerativa do motor no momento da frenagem, quando este passa a atuar como gerador,
momento na qual o inversor passa a funcionar como um retificador [7]. Para o controle dos
interruptores IGBT’s, a bibliografia disponibiliza uma diversidade de técnicas, cada uma com
uma particularidade e vantagem. Dentre as técnicas mais utilizadas podem-se citar a
modulação escalar ou senoidal e a modulação vetorial [8].
Retificador Inversor
Vcc +

AH BH CH

o A B C
o
AL BL CL

Vcc -

Figura 3.2 – Ponte inversora trifásica de três braços como uso de IGBT’s e diodos em
antiparalelo

3.2 Modulação em largura de pulso senoidal (SPWM)

A técnica SPWM (do inglês sinusoidal pulse width modulation) é a mais popular,
difundida e discutida na literatura [5], e comumente utilizada em aplicações industriais [9]. A
implementação desta técnica em circuitos trifásicos analógicos consiste em comparar um
sinal triangular de alta freqüência (chamada de portadora , com três senoides defasadas
em 120° elétricos (chamadas de tensões de controle ou de referência . A partir destas
comparações são gerados os comandos que irão determinar os instantes de bloqueio e
condução dos interruptores do inversor (Ver figuras 3.3 (a) e 3.3(b)). Analisando a figura 3.3
(a) e tomando o ponto “o” como referência, é possível chegar as seguintes relações sobre a
11

técnica:

Referência Portadora
Vcc +

AH
+
QA
-
o A (b)
+
AL
-
QB

(a)
(C)
Figura 3.3 (a) Braço de um inversor referenciado a ponto “o”.
(b) Sinais de referência e portadora variando no tempo.
(c) Sinal resultante da intersecção da portadora com o sinal de referência,
tomando como referência o ponto “o”.

O interruptor QA está ligado, logo

O interruptor QB está ligado, logo

A designação “ligado” para os interruptores QA e QB significa que estes estão


conduzindo. Portanto, as tensões de fase referenciadas ao ponto “o” assumem tanto valores
positivos quando negativos e com metade do valor do barramento CC, tal como ilustrado na
figura 3.3 (c). Dessa forma, na saída do inversor tem-se um sinal alternado, porém não
senoidal. Deve-se observar que os interruptores de um mesmo braço nunca devem conduzir
simultaneamente, sob o risco de por o barramento CC em curto-circuito. Assim, quando é
referenciado que o interruptor QA está aberto, subtende-se que QB está fechado e vice-
versa.
Na figura 3.4 é ilustrada a representação das comparações e geração dos sinais de
comando para um sistema trifásico. Neste caso as tensões de referência devem refletir o
que se espera que se obtenha na saída do inversor, ou seja, tensões balanceadas e
defasadas de 120°. Ainda nesta mesma figura é ilustrado o componente inversor digital (not)
no qual é responsável por realizar o complemento dos sinais de comando dos braços do
inversor.
12

vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
]k~~kkkkkkkk

vvvvvvvvvvv
vvvvvvvvvvv
vvvvvvvvvv
-
]k~~kkkkkkk
k

vvvvvvvvvvvvvvvvvvvvvvvvv vvvvvvvvvvv
vvvvvvv ]k~~kkkkkkkk vvvvvvvvvvv
vvvvvvvvvv
-
]k~~kkkkkkk
k

vvvvvvvvvvv
vvvvvvvvvvv
vvvvvvvvvv -
]k~~kkkkkkk
k

vvvvvvvvvvvvvvvvvv
vvvvvvvvvvv vvvvvvvvvvvvvv
vvvvvvvvvvv
vvvvvvvvvv ]k~~kkkkkkkk
]k~~kkkkkkk
k
Figura 3.4 – Esquema de funcionamento dos sinais de comando de um inversor trifásico

Se considerarmos que o sinal de referência varia senoidalmente, porém com


freqüência muito inferior à , a ponto de poder ser considerada constante dentro de um
período de comutação, conforme figura 3.5 (a). Então se pode chegar às seguintes relações:

(a)

(b)

Figura 3.5 – (a) Intersecção dos sinais de referência e portadora para analise matemática
(b) Tensão de fase da saída do inversor referenciada ao ponto “o”.

Onde:
: período de comutação.
: instante em que o interruptor QA está ligado
13

: instante em que o interruptor QB esta ligado


Substituindo (3.5) em (3.4):

Definindo a razão cíclica (também chamado de ciclo de trabalho) do interruptor QA


como:

Substituindo (3.6) em (3.7), se obtém:

O cálculo do valor médio da tensão de fase ( ) dentro do período de comutação


pode ser escrito da seguinte forma:

Solucionando (3.9), tem-se:

Substituindo (3.7) em (3.10), obtém-se:

Considerando que a tensão de referência varia senoidalmente no tempo, logo:

Sendo , onde é a freqüência fundamental do sinal de referência.


A razão entre a amplitude do sinal da portadora com o sinal de referência
estabelece o índice de modulação em amplitude ( ). Esta relação é apresentada na
equação (3.13). Este índice relaciona a taxa de variação da amplitude de em relação à ,
com a amplitude da componente fundamental. Para , a amplitude da componente
de freqüência fundamental da tensão de fase varia linearmente com e em fase
com o sinal de referência, como pode ser observado em (3.14).
14

Onde:

Quando passa a ser maior que significa que há eliminação de pulsos


dentro do período de comutação, com isso a freqüência fundamental é aumentada e o
conteúdo harmônico é acentuado, aparecendo componente de baixa ordem, o que não
ocorre na região linear. A região onde é caracterizada pela não linearidade entre
e a componente fundamental de saída do inversor, chamada de sobremodulação. Em
acionamento de máquinas CA a sobremodulação é comumente utilizada devido às restrições
da amplitude na faixa linear [7]. Quando for tão maior que a ponto de haver somente
intersecção na passagem pelo zero, diz-se que o inversor opera na região de onda quadrada.
Esta região é onde a componente fundamental atinge seu maior valor em torno de 78% da
tensão do barramento CC [7]. Contudo, é nesta região onde aparecem componentes
harmônicas características de uma onda quadrada. Nesta região o inversor é incapaz de
controlar a tensão de saída, devido à saturação da amplitude da componente fundamental,
controlando somente a freqüência fundamental. A figura 3.6 (a) representa o estado de
sobremodulação e 3.6 (b) a região de onda quadrada. A figura 3.7 ilustra a variação da
tensão de linha da componente fundamental , em relação à nas três regiões de
operação de um inversor trifásico.

Figura 3.6 – (a) região de sobremodulação

(b) região de onda quadrada


15

Onda quadrada

Sobre-
modulação

Linear

Figura 3.7 – Variação da amplitude da fundamental em relação à .

Analisando a figura 3.7, observa-se que a máxima amplitude atingível na região


linear fica entorno de 61,2% da tensão do barramento CC. Isto significa que nesta região a
tensão de entrada está obtendo um baixo aproveitamento. Esta é uma grande desvantagem
da modulação SPWM em comparação com técnicas mais avançadas, como no caso da
modulação vetorial. Contudo, este fato pode ser amenizado com injeção de terceiro
harmônico no sinal de referência.
De acordo com [10], a injeção de 16,7% de terceiro harmônico pode incrementar a
amplitude da tensão de fase em 15,5%. Já em [11], se sugere que além de ampliar a
componente fundamental de fase, o conteúdo harmônico seja reduzido com a injeção de
25% da terceira harmônica no sinal de referência. Deve ficar claro que a injeção de terceira
harmônica no sinal de referência não inclui componente de mesma ordem na tensão de
linha, já que estas nas tensões , e ( ponto de neutro de uma carga ligada em
estrela) estão em fase, resultando em uma componente nula nas tensões de linha.
Existe na modulação SPWM outro índice importante, o fator que relaciona a
freqüência da componente fundamental com a freqüência de comutação, chamado de
índice de modulação em freqüência ( ), definido em (3.16). Este índice guarda a
informação do numero de pulso dentro do período de comutação. Logo, ele está
diretamente relacionado com o conteúdo harmônico na saída do inversor.

Uma das vantagens da SPWM é a possibilidade de “controlar” as componentes


harmônicas, já que, elas ficam em torno da freqüência de comutação e seus múltiplos, ,
2 ,3 , e assim por diante [9]. Portanto é desejável ter uma freqüência de comutação
16

mais alta possível, já que altas freqüências são mais fáceis de filtrar, sendo que a própria
indutância do enrolamento do estator se encarregará de filtrar as componentes harmônicas
de ordem elevada, deixando a corrente do estator mais próxima de uma senoide. Um fator
limitante em trabalhar com altas freqüências é o aumento das perdas nos interruptores
estáticos. Portanto deve se buscar um compromisso entre perdas e qualidade na corrente
do motor [3]. De acordo com [7], é desejável que na maior parte das aplicações esteja
fora da faixa audível, isto é, abaixo de 6 kHz ou acima de 20 kHz.
Segundo [7], para o sinal da triangular e o de controle devem estar em
fase, ou seja, em sincronismo. Para isso, deve ser um numero inteiro. Portanto, para que
o inversor opere de modo sincronizado é necessário que a freqüência de comutação não
seja fixa, caso a freqüência de referência varie. Para os efeitos causados por sub-
harmônicos gerados quando o inversor opera de modo assíncrono ( não inteiro) são
desprezíveis, contanto que a freqüência de comutação seja muito maior que a fundamental,
entorno de 30 a 40 vezes [12]. Caso isto não ocorra, aparecerão sub-harmônicos próximos a
freqüência zero. Estes mesmo com amplitude baixa, causam correntes altas, resultando em
uma operação indesejável [7]. Deve-se salientar que embora a modulação assíncrona tenha
diversas desvantagens frente à modulação síncrona, ela é mais simples de se implementar,
pois não é necessário variar a freqüência de comutação com a variação da fundamental.
Com isso, dispensa-se atenção em tentar manter em um número inteiro.
Portanto a escolha da relação influi diretamente no desempenho harmônico.
Sempre que possível deve ser sincronizado e de preferência um número impar. Assim, a
tensão apresentará simetria de meia e quarto de onda, o que eliminará os harmônicos
pares. Se além de impar for múltiplo de três, as componentes harmônicas dessa ordem
serão eliminadas da tensão de linha pelo fato da impossibilidade das correntes dessa ordem
fluir pela carga ligada em estrela [13]. Assim, algumas harmônicas dominantes podem ser
eliminadas das tensões de linha.
Os componentes harmônicos da tensão de linha podem ser calculados a partir da
expressão (3.17).

Onde:
Numero do harmônico
Quando “i”for impar “j” deve ser par
17

Quando “i” for par ”j” será impar


Por exemplo, para uma tensão de referência de 50 Hz e um sinal de 1050 Hz
(considerando ) obtêm-se os seguintes harmônicos da tensão de linha:

A figura 3.8 representa o espectro harmônico do exemplo acima. Deve-se observar


que as harmônicas múltiplas de são nulas, já que é inteiro e múltiplo de três.

19 23
41 43

37 47 59 61 65 67
17 25

(harmônico)

Figura 3.8 – Representação do espectro harmônico da tensão de linha do


inversor trifásico para o exemplo

3.3 Efeito do tempo morto

De acordo com [14] um dos principais problemas encontrados em inversores de


freqüência operados em malha aberta é a não linearidade do ganho de tensão. Isto acontece
em virtude das características não ideais do estágio de potência. Segundo a referência [14],
uma das mais importantes não-linearidades acontece devido à introdução de um tempo de
18

atraso que deve ser inserido intencionalmente entre a abertura e o fechamento dos
interruptores de um mesmo braço. Este procedimento garante que estas nunca conduzam
simultaneamente. Este tempo ao qual deve ser incluído nos sinais de controle é chamado de
“tempo morto” (também chamado “dead-time”) *15+.
A introdução do tempo morto causa redução amplitude da componente
fundamental da saída do inversor e introduzem componentes de baixa ordem, o que não
ocorre na modulação ideal [15]. Além da redução da amplitude fundamental, a inclusão do
tempo morto também produz instabilidade na máquina através de pulsações no torque [15].
Embora individualmente o tempo morto seja pequeno (geralmente de 1 a 5us), este somado
num ciclo completo da tensão pode ocasionar nos problemas citados anteriormente. Para
amenizar estes problemas [14] e [15] propõem técnicas com a finalidade de reduzir os
efeitos oriundos do tempo morto. Entretanto, este trabalho não visa à implementação
prática destas. A figura 3.9 representa a configuração da inclusão do tempo morto nos sinais
de comando.
Vcc +

AH
+
-
Lógica A
Sinal PWM Tempo morto
+
Carga
AL
-

Figura 3.9 – Configuração básica de inclusão do temo morto

Tomando como base o braço do inversor da figura 3.9 e assumindo o ponto N como
referencia pode-se chegar às seguintes relações:
- Como ambos interruptores estão no estado “off” (interruptores bloqueados) no
momento da inserção do tempo morto o valor de dependerá do sentido da
corrente que fluirá pelos diodos em antiparalelo.
- Tomando o valor médio de dentro de pode se obter a diferença de tensão
devido a :

Analisando a equação (3.18) observa-se que não depende da magnitude da


corrente, mas sim, da polaridade e direção desta. Assim, é proporcional a ea .
19

Portanto devem ser utilizados dispositivos semicondutores rápidos e operando com


freqüência de comutação elevadas, com a finalidade de reduzir os efeitos de [7].

Figura 3.10 – (a) Instantes ideais dos sinais de comandos das chaves do inversor
(b) Sinais de comando com a inclusão do tempo
(c) Ganho e perdas nos sinais de comando com a inclusão do tempo morto, de acordo com o sentido da
corrente
(d) Flutuações na componente fundamental de linha, devido ao sentido da corrente, referente à inclusão do
tempo morto.

Na figura 3.10(a) são representados os instantes ideais de operação dos


interruptores estáticos. Já a figura 3.10(b), é ilustrada os sinais dos interruptores com a
inclusão do tempo morto. A figura 3.10 (c) representa os ganhos e perdas da tensão do
braço “A” (tomando como referência o ponto “N”) para as polaridades da corrente na carga.
A figura 3.10 (d) ilustra as flutuações da tensão de saída em função do tempo e da
polaridade da corrente. De acordo com [7] a distorção da tensão de saída nos cruzamentos
da corrente pelo zero resulta em harmônicos de baixa ordem, segundo a relação (m
= 1,2,3...) ao redor da fundamental.
Para escolha do tempo morto adequado é necessário conhecer as características
dos interruptores semicondutores, tais como: o tempo de subida ( ) e de descida ( ). A
partir disto, tem-se o tempo mínimo para , devendo apenas incluir uma margem de
segurança. Portanto a equação para pode ser expressa por:
20

Atualmente, os interruptores IGBT’s podem operar com freqüência de até 20 kHz.


Com isso, têm-se tempos e da ordem de nano-segundos. Dessa forma, um de 1us já é
suficiente para maioria das aplicações.

3.4 Implementação digital da SPWM

O método de SPWM é relativamente simples quando implementado em hardware


analógico. Para isto, é apenas necessário um gerador de funções senoidais, triangulares e
circuitos comparadores, realizado com amplificadores operacionais. Neste tipo de
implementação, freqüências da ordem de dezenas de hertz são facilmente conseguidas [16].
Contudo, implementações analógicas oferecem uma série de desvantagens se comparadas
às digitais, tais como tolerância dos componentes, efeito térmico e interferência
eletromagnética externa [17]. Devido a estes problemas, desde a década de 70 as
implementações analógicas vêm sendo maciçamente substituídas por técnicas focadas na
implementação em microprocessadores [18], estas consistem basicamente na geração das
larguras de pulsos em tempo real, visando à redução do esforço computacional e a
minimização do conteúdo harmônico [11].
Umas das técnicas que obteve grande aceitação na implementação em
microprocessadores é a chamada modulação regular simétrica; esta se baseia na
amostragem da tensão de referência em intervalos regulares, através da busca direta de
uma tabela pré-armazenada na memória ROM do microprocessador. Esta técnica vem sendo
utilizada desde 1975. Somente em 1981 ela foi empregada em microprocessadores de 8 bits
e em 1983 para microprocessadores de 16 bits, e ainda hoje é utilizada tanto em aplicações
acadêmicas quando industriais [19]. Neste tipo de procedimento a portadora triangular é
substituída pelo período de amostragem ( ). As equações que regem este tipo de
modulação podem ser encontradas por inspeção da figura 3.11. Nesta figura observa-se que
o pulso fica centralizado dentro do período de amostragem e não em locais aleatórios como
ocorre com a SPWM analógica.
21

Amostra de tensão (referência)

Figura 3.11– Representação do principio de modulação regular simétrico

O valor médio da tensão de fase pode ser calculado como

Igualando a equação (3.23) com (3.14), se chega:

(3.25)

Multiplicando-se ambos os lados da equação (3.25) por , se obtém:

Da figura 3.11 pode-se observar que:


22

Onde corresponde à largura do pulso dentro do período de


amostragem.
Substituindo (3.27) em (3.26), e colocando em função do numero de amostra ,
tem-se:

onde corresponde ao número de pulsos dentro do período de amostragem, ou seja,


.
A modulação regular simétrica mostra que no processo de amostragem, as posições
dos pulsos são regularmente espaçadas e a largura destes são precisamente definidas, tal
que é possível escrever expressões trigonométricas simples que definem tais larguras [3].
Isto torna este tipo de modulação ideal para implementações em software e em tempo real
de execução, devido sua simplicidade algébrica.
A figura 3.12 ilustra a largura de dois pulsos a título de demonstração do método;
nesta quando ocorrer a k-ésima interrupção do timer é iniciado o contador ( ), na qual deve
ser múltiplo de . Quando o contador alcança o instante é feita amostra do sinal de
referência . Depois de realizada a amostra, é feito o cálculo da largura do
pulso . Deve-se observar que o cálculo de deve ser feito num período em
avanço, pois caso contrário poderia não haver tempo suficiente para realizar todas as tarefas
envolvidas dentro do período de amostragem. Portanto no instante deve ser calculada a
largura do pulso do período . A seguir, este valor deve ser armazenado na memória
RAM e utilizada no momento da ( ) interrupção do microprocessador.
Amostras do sinal de referência

Interrupções do
microprocessador

Figura 3.12 – Representa o k-ésimo e o k-ésimo+1 pulso da modulação regular simétrico


23

A equação (3.28) precisa ser reescrita para forma digital para ser utilizada em um
microprocessador. De acordo com [20], tal equação pode ser escrita como

Onde , , correspondem a palavra digital que armazena a largura do pulso.


Os tempos dos interruptores desligados , e podem ser calculados por:

onde é a constante que armazena o modulo do contador. Portando, supondo que o


microprocessador seja de 8 bits e que dentro de um período de amostragem existam 256
contagens, logo . , , são as amostras do seno para as fases A, B e C
respectivamente, previamente calculadas e armazenadas na memória do MCU [3]. A figura
3.13 ilustra em detalhes as larguras dos pulsos para as três fases.

Instante da k-ésima Instante da k-ésima


Carga do contador amostra de tensão

Figura 3.13 – Ilustra em detalhes as larguras dos pulsos para as três fases em função das palavras digitais

De acordo com [11], a técnica de modulação regular simétrica pode ser


implementada digitalmente com o auxilio do método chamado de “método dos quatro
timers” (Four-Timer Carrier Cycle PWM). Segundo o autor, a técnica consiste em utilizar
quatro temporizados, sendo que três deste são utilizados para temporizar as larguras dos
24

pulsos das três fases respectivamente, e o quarto timer para o período de amostragem,
determinando assim o período de comutação. A técnica também pode ser implementada
somente com um único timer, esta tem a vantagem de necessitar de menos hardware do
microcontrolador (Timer), porém existem mais interrupções dentro do período de
amostragem, o que acaba sendo uma grande desvantagem em aplicações em tempo real. A
figura 3.14 representa um fluxograma, onde neste contem o algoritmo básico para
implementação do método dos quatro timers.

Atualiza
Programa principal
Interrupção próximo ciclo
Wa, Wb e Wc Fim
T0

Inicializações
Timer T1 Timer T2 Timer T3

Atualiza e

Chegou à Chegou à Chegou à


contagem contagem contagem
corresponde corresponde a corresponde
Cálculo da fase
a Wa Wb a Wc
A, B e C

Terminou Terminou Terminou


Aguarda contagem T1 contagem T2 contagem T3
interrupção
T0

Zera contagem Zera contagem Zera contagem

Figura 3.14 – Fluxograma representando o algoritmo básico para o método dos quatro-timer

3.5 Modulação Vetorial (SVPWM)

A busca incessante pela diminuição do conteúdo harmônico e do melhor


aproveitamento do barramento CC, junto com os avanços dos microprocessadores digitais,
fizeram com que em 1986, Van der Broek propusesse uma técnica avançada de modulação,
baseada na teoria dos vetores espaciais para máquinas CA, chamada de Modulação Vetorial
ou SVPWM (do inglês Space Vector Pulse Width Modulation) [21]. Com esta técnica foi
possível obter um acréscimo de 15% de aproveitamento do barramento CC da componente
fundamental da tensão de saída, através do cálculo dos tempos de aplicação dos
interruptores estáticos do inversor, e não mais através da comparação de um sinal de
referência com uma onda triangular, como acontece com a modulação senoidal.
25

A partir desta técnica, além do alto aproveitamento do barramento de tensão CC,


foi possível um baixo conteúdo harmônico, minimização das comutações dos interruptores,
além de ser adequada para implementações digitais [22].
De acordo com [23], o conceito de vetores espaciais é derivado do campo girante da
máquina CA a qual é acionada por um inversor de saída modulada. Neste tipo de modulação
as grandezas trifásicas podem ser transformadas para equivalentes bifásicas em
componentes síncronas com referencial girante ou estacionário [23].
Considere um sistema de tensões balanceadas trifásicas representadas por:

Para análise do controle vetorial, é preferível expressar um sistema trifásico de


tensões em função do cosseno, a fim de obter equações mais simples [24], portanto:

Quando as tensões descritas em (3.36) são aplicadas em uma máquina CA, é


produzido fluxo girante no entreferro desta máquina CA. Este componente de fluxo girante
pode ser representado como sendo um vetor que gira a velocidade síncrona. A amplitude e
o ângulo deste vetor podem ser encontrados através da transformada de Clarke em um
referencial estacionário [23], conforme descrito em (3.37).

Onde:
26

Separando em partes reais e imaginárias:

Colocando na forma matricial:

A equação (3.46) representa a matriz de transformação de Clarke, à qual transforma


um sistema de tensões trifásicas em um equivalente bifásico.
Agora escrevendo as funções trigonométricas na forma exponencial, baseadas na
identidade trigonométrica de Euller, como:

E substituindo (3.47) em (3.37), se obtém:

Pela equação (3.52) chega-se que, o vetor de referência gira em um plano


complexo com módulo e velocidade síncrona constante, ou seja, a transformação de Clarke
não alterou as características fundamentais do sistema trifásico, como a amplitude e
freqüência angular.

3.5.1 Relação entre teoria dos vetores espaciais e o inversor de freqüência

Considere o inversor trifásico alimentando uma carga genérica, conforme ilustrado


na figura 3.15. Nesta figura pode-se observar que para um inversor trifásico com três braços,
27

existem somente oito possibilidades de combinações de comutação, considerando que os


interruptores de um mesmo braço devem funcionar como pares complementados.

Figura 3.15 – Inversor de freqüência trifásico alimentando uma carga trifásica

Agora considerando o estado dos interruptores, conforme figura 3.16. Para se


identificar um estado especifico de condução, é necessário observar os estados dos
interruptores superiores da ponte trifásica, onde 1 (um) indica que o interruptor está em
condução e 0 (zero) que o interruptor está bloqueado. Para o estado particular da figura
3.16, será chamado de .

+
1 0 0

Figura 3.16 – Inversor de frequencia representando o estado

Escrevendo as equações das tensões aplicadas à carga, tomando como referência o


ponto “o” para o estado , se obtém:

Substituindo (3.51) em (3.37) obtém-se o vetor espacial no plano complexo para o


estado . Conforme (3.52).

Para obter as equações dos demais estados do inversor, é preciso analisar os


estados dos interruptores de cada uma das oito possibilidades da figura 3.17. A seguir,
28

reescrever o processo descrito para obtenção da equação (3.52), conforme exposto nas
equações de (3.53) à (3.60).

+ + + +
0 0 0 1 0 0 1 1 0 0 1 0

- - - -

+ + + +
0 1 1 0 0 1 1 0 1 1 1 1

- - - -

Figura 3.17 – Todas as oito possíveis combinações das chaves de um inversor de freqüência

Analisando as equações de (3.55) à (3.62) conclui-se que existem seis combinações


que resultam em transferência de energia da fonte para a carga. Para estas combinações é
dado o nome de vetores ativos. As duas demais combinações, das quais não existe nenhum
fluxo de energia entre a fonte e a carga, são chamados de vetores nulos ( e
).
29

A aplicação das combinações dos interruptores da figura 3.17 na equação (3.37)


resulta em oito vetores, chamados de vetores básicos. Estes são os únicos vetores que se
pode gerar em um inversor trifásico e, portanto são vetores fixos em um plano complexo,
localizando-se conforme figura 3.18. Os seis vetores ativos têm o mesmo módulo e estão
defasados 60° em si. Os dois vetores nulos estão representados no centro do plano
complexo, pois não apresentam magnitude [24]. A representação dos seis vetores ativos no
plano complexo resulta em um hexágono eqüilátero encerrado por um circulo. Cada parte
do hexágono é chamada de setores, resultando num total de seis setores. O ponto de
tangência do circulo com os lados do hexágono, determina o valor de máximo que o vetor
de referência pode obter, a fim de manter uma relação linear com a componente
fundamental da tensão de saída do inversor; tomando o primeiro setor como referência este
ponto corresponde ao ângulo de 30°

2
3

1
4

6
5

Figura 3.18 – Vetores espaciais de tensão do inversor trifásico, formando um hexágono no plano
complexo

Figura 3.19 – Detalhe do deslocamento do vetor de referência sobre o primeiro setor


30

Para que seja utilizada adequadamente a modulação vetorial em um inversor de


freqüência, é preciso que passe pelos seis setores do plano complexo - . Para isso, o
inversor deverá proceder da de tal forma que, dentro de um período de amostragem seja
aplica à carga os vetores ativos e e os vetores nulos e , figura 3.19. A aplicação
dos vetores ativos e nulos deve ser tal que, o valor médio da tensão aplica à carga
corresponda exatamente à amostra do vetor de referência, dentro de um período de
amostragem. Então:

A soma desses tempos deverá ser:

Levando-se em conta que , Logo:

Decompondo o vetor de referência em parte real e imaginária nos eixos do plano


complexo, figura 3.18, se obtém:

Solucionando as equações para , chegam-se as expressões:

Após a determinação do setor onde o vetor de referência se encontra e, do cálculo


do tempo de aplicação dos interruptores, é preciso determinar a seqüência de aplicação dos
interruptores do inversor. De acordo com [22], embora a seqüência de aplicação dos vetores
de tensão à carga não altere o valor médio dentro do período de comutação, ela tem um
grande impacto nas perdas de potência por comutação e no conteúdo harmônico. Uma
maneira possível de se realizar tal seqüência de comutação é apresentada na figura 3.20,
31

nesta é ilustrado a uma das maneiras de como pode ser feita a comutação para cada setor.
Conforme [25], este padrão de seqüenciamento dos interruptores propicia uma melhor
distribuição das componentes harmônicas, devido à simetria que apresenta a forma de
onda. Este padrão também tem por conseqüência a redução o número de comutações dos
interruptores, aumentando assim, o ciclo de vida útil dos interruptores estáticos.

Fase A Fase A
Fase B Fase B
Fase C Fase C

Setor 1 Setor 2

Fase A Fase A
Fase B Fase B
Fase C Fase C

Setor 3 Setor 4

Fase A Fase A
Fase B Fase B
Fase C Fase C

Setor 5 Setor 6
Figura 3.20 – Seqüência de chaveamento para os seis setores do plano complexo

Enquanto o vetor de referência estiver situado dentro de um determinado setor, o


inversor deverá repetir o padrão de comutação referente a este setor, até que este avance
para o setor seguinte.
Seguindo o processo de comutação durante o tempo, o inversor desenvolverá uma
tensão de fase muito semelhante com a tensão de fase obtida com a técnica de modulação
senoidal, entretanto quando analisado seu espectro (tensão de fase), nota-se a presença de
uma componente de terceira harmônica, o que não ocorre com a modulação senoidal em
sua concepção original. Assim como na técnica de injeção de terceiro harmônico, discutida
32

na seção 3.2, esta componente eleva a componente fundamental e reduz o conteúdo


harmônico.
Em resumo, a SVPWM consiste em construir um vetor espacial , aplicando
alternativamente os vetores espaciais adjacentes que definem o setor onde se situa
[25]. Em malha aberta, a SVPWM pode ser realizada a cada período de amostragem,
seguindo estes passos:

1) Identificação do setor: pode ser realizado a partir do cálculo do ângulo entre o


vetor de referência e o eixo estacionário .
2) Cálculo dos tempos: realizado utilizando as expressões (3.66) à (3.78).
3) Seqüência de comutação: deve corresponder ao setor onde o vetor de referência
de encontra.

A figura 3.21 representa o algoritmo básico para implementação da SVPWM de


acordo com os passos descritos anteriormente e o exposto nesta seção.

Obtenção Determinação Cálculo Seqüência de Aguarda sincronismo


Setor chaveamento para o próximo ciclo

Figura 3.21 – Algoritmo básico para implementação da modulação vetorial

Tirando as vantagens citadas no início desta seção, a SVPWM tem alguns


inconvenientes. Observando as equações (3.66) à (3.68), percebe-se que a SVPWM quando
implementada digitalmente requer um maior esforço computacional, se comparada à
modulação SPWM, pois exige que seja determinada a localização do vetor de referência,
cálculo dos tempos de aplicação dos interruptores e finalmente, a seqüência de comutação
correta [17]. Tudo isso dentro do período de comutação. Devido a isto, existem diversos
estudos a fim de desenvolver algoritmos cada vez mais rápidos, tais como apresentados em
[22] e [17], possibilitando assim a execução de outras instruções dentro do período de
amostragem, e também o aumento da freqüência de comutação. Ainda relacionado com a
eficiência da técnica, foi possível reduzir significativamente o tempo de execução dos
algoritmos, com a aparição dos processadores digitais específicos para aplicações em
eletrônica de potência, nas quais podem executar algoritmos de controle SVPWM em
paralelo com a CPU, reduzindo também o custo econômico do projeto [25].
33

Capítulo 4 : Descrição do hardware

4.1 Introdução

Neste capítulo será apresentado todo o desenvolvimento do hardware, e a


metodologia empregada necessária para implementação do inversor de freqüência proposto
no início deste trabalho.

4.2 Controlador Digital de Sinais (DSC)

Uma das necessidades quando se trabalha com projetos de eletrônica de potência,


é o ganho de eficiência e otimização de recursos de hardware, além da redução de custos e
confiabilidade do projeto. Tomando isto como base, desde a década de 80 os projetos
envolvendo implementações de inversores de freqüência vêm se inclinando para topologias
que utilizem o controle e monitoramento de forma digital, ou seja, utilizando processadores
digital de sinais (DSP’s) ou microcontroladores, para o gerenciamento das tarefas realizadas
em tempo de execução.
Conforme visto no capítulo anterior, as duas técnicas à qual este trabalho pretende
implementar são exclusivas de implementações em softwares e em tempo real, das quais
devem ser executadas por um dispositivo microprocessado. A escolha de tal dispositivo ficou
pendente aos existentes no laboratório, logo se optou por utilizar o dispositivo fabricado
pela empresa Freescale™, o MC56F8013.
O MC56F8013 é um dispositivo de 16 bits chamado de Hibrid Core, na qual é tanto
composto de unidades funcionais específicas para o processamento de códigos focados em
aplicações de processamento de sinais, como também para unidades focadas em aplicações
de controle de periféricos, típico dos microcontroladores [26]. Por estas características é
dado nome de Digital Signal Controllers – DSC ao 56F8013.
Dentre as diversas características do MC56F8013, pode-se destacar:

 Clock máximo de operação de 32 MHz


 Memória flash de programa com 16 kbytes
 Memória unificada para dados/ instruções com capacidade de 4 kbytes (RAM)
 Seis canais para conversão analógico/digital de 12 bits.
 Comunicação serial.
34

 Programação via JTAG


 Quatro Timers de 16 bits.
 Módulo PWM com seis canais e quatro entradas programáveis de erro.
 Alimentação em 3.3V

4.3 Kit de desenvolvimento

O uso do 56F8013 foi concebido através do kit de desenvolvimento, desenvolvido


pelo Laboratório de Engenharia Biomédica da Universidade Católica de Pelotas. Este tem por
finalidade propiciar a utilização de seus periféricos de maneira simples, tais como o acesso
aos pinos de entrada/saída, entradas analógicas e saídas PWM, além de já ter incorporado
conector para programação do DSC, e comunicação serial. A figura 4.1 representa a imagem
do kit utilizado no projeto, com a descrição básica de seus componentes.

MC56F8013
Alimentação Entradas
analógicas

Conexão
serial Programação
JTAG

Portas de
Saídas PWM Entrada/Saída
Figura 4.1 – Imagem o kit de desenvolvimento utilizado no projeto

4.4 Ambiente de desenvolvimento

Para que se possa empregar o uso do kit apresentado na seção anterior, é


necessário que exista um programa dentro na memória flash do 56F8013, e para que esse
programa chegue até esta, é necessária uma ferramenta que seja capaz de compilar e de
fazer o download de tal programa. Para isso, a Freescale™ disponibiliza um avançado e
integrado ambiente de desenvolvimento, capaz de realizar a programação, simulação,
depuração e gravação de projetos, chamado de CodeWarrior ®, desenvolvido pela
Metrowerks®, empresa associada da Freescale™ [26]. Através do CodeWarrior ® é possível
desenvolver códigos em Assembly, C ou ambos. Dentre estas três possibilidades, foi adotada
35

a linguagem C, como linguagem de programação para a escrita dos códigos do DSC. Após
gravar o código do programa no DSC é possível realizar depurações em tempo real através
da conexão JTAG do kit, recurso este que facilita em muito no desenvolvimento de projetos,
já que ajuda na procura de falhas no código, caso estas ocorram. A figura 4.2 representa a
imagem da tela principal do CodeWarrior ®.

Figura 4.2– Tela do ambiente de desenvolvimento do 56F8013, CodeWarrior®

O CodeWarrior ®, disponibiliza uma série de bibliotecas para aplicações especificas,


nas quais é possível ter acesso aos registradores de forma direta, através de macros; a esta
biblioteca é dado o nome de PESL (Processor Expert System Library). Ainda existem os
chamados Embedded Beans, onde através de janelas de configurações, é possível configurar
métodos, eventos e propriedades de qualquer periférico, tudo isso sem precisar ter
conhecimento sobre os registradores internos do DSC. Tarefas relativamente complicadas
como configurar um Timer, podem ser realizadas rapidamente, bastando apenas ajustar
alguns parâmetros do Bean, ficando para o CodeWarrior ® a tarefa de configuração dos
registradores do DSC, tornando esta ferramenta ideal para aqueles não tem possuem
experiência com uso de microprocessadores ou DSP’s.
Embora a PESL e os Beans facilitem e acelere o desenvolvimento, eles trazem um
grande inconveniente para aplicações de que exijam muito processamento em tempo real,
36

que é a não otimização do código gerado, devido ao alto nível da programação, devendo
ficar para experiência do programador saber otimizar os códigos, e assim ter um maior
aproveitamento do dispositivo microprocessado que esteja sendo utilizado.

4.5 Interfaceamento entre o 56F8013 e o estágio de potência

Devido ao 56F8013 operar com tensões de 3,3 Volts, fica inviável utilizar esses
níveis de tensão de PWM para colocar os IGBT’s em condução. Primeiro pelo fato dos IGBT’s
utilizarem tensões em torno de 15 V entre gate e emissor para disparo. Segundo, que não é
seguro interligar o sistema de comando (pinos do 56F8013) com a parte de potência (ponte
inversora), devido a possíveis diferenças de potenciais e o risco inerente de curto-circuito no
estágio de potencia, acarretando na destruição do DSC. Terceiro, que os pinos do 56F8013
não têm capacidade de drenar corrente para os IGBTs, apesar destes, serem disparados por
tensão. Por isso foi necessário desenvolver uma topologia que garantisse a isolação dos
comandos do DSC, adequasse o sinal para disparo, e por fim, que suprisse capacidade de
corrente necessária para colocar o IGBT em condução.

4.5.1 Isolamento

Para prover o isolamento entre o DSC e o estágio de potência, optou-se pelo uso de
optoacopladores, pois estes não possuem ligação elétrica entre a entrada e saída, além de
serem extremamente rápidos e, principalmente pelo fato de conseguirem responder a toda
faixa de razão cíclica. A função dos optoacopladores também é adequar o sinal de 3.3 V
vindos das saídas PWM do DSC para 15 V, para após irem para o estágio de Driver. O
optoacoplador utilizado é o circuito integrado TLP621, este foi escolhido devido a relativa
fidelidade da largura de pulso da saída em relação à entrada, e também por ter em um único
encapsulamento dois canais individuais, sendo então necessário apenas três CI’s para suprir
os seis canais do DSC. A figura 4.3 ilustra a utilização dos optoacopladores no projeto.
37

Saídas PWM Optoacopladores 15V Entrada


do 56F8013 TLP621 Drivers

PWM0

HIN 1
PWM1

LIN 1

1.5kΩ 1.5kΩ
PWM2

HIN 2
PWM3

LIN 2

1.5kΩ 1.5kΩ
PWM4

HIN 3
PWM5

LIN 3

Terra dos sinais Terra do estágio 1.5kΩ 1.5kΩ


de controle de potência

Figura 4.3 – Utilização dos optoacopladores no projeto

4.5.2 Circuitos de Drivers

Uma vez que isoladas a etapa digital e de potência, torna-se necessário o uso de um
dispositivo que seja capaz de drenar a corrente requerida pelo gate do IGBT, e que também
seja capaz de disparar os IGBT’s superiores da ponte inversora, já que estes têm seus
emissores conectados a potenciais diferentes. Para suprir esses fatores, foi utilizado o
circuito integrado IR2110 fabricado pela International Rectifier. Este CI é capaz de comandar
um braço do inversor utilizando a técnica de boot-strap, desenvolvida pelo próprio
fabricante, na qual utiliza a carga armazenada no capacitor (C1) (ver figura 4.4) para atuar
como fonte auxiliar e assim garantir o disparo dos IGBT’S superiores. A figura 4.4 representa
a utilização do IR2110 no comando de um braço da ponte inversora, sendo necessário mais
dois circuitos para a ponte completa.
Vcc (barramento)
Diodos Resistores
15V 1N4148 39Ω
D1

Rg(on)

HO
VDD
VB C1 Rg(off)
HIN HIN
Vc
SD SD Rg(on)
Vcc 15V
LIN LIN C
LO
Vss COM Rg(off)
IR2110

Figura 4.4 – Circuito de driver utilizado no projeto contendo o IR2110


38

Na figura 4.4, o diodo D1 tem a função de permitir o carregamento do capacitor


(C1) através da fonte de 15 V quando o IGBT inferior estiver conduzindo; este diodo deve ser
dimensionado para suportar a tensão do barramento CC, pois quando o IGBT superior
estiver conduzindo, a tensão do barramento CC irá polarizá-lo reversamente, havendo a
necessidade do seu correto dimensionamento. O diodo D1 também deve possuir um tempo
de recuperação reversa o menor possível, pois o processo de carga e descarga do capacitor
C1 se dá a cada período de comutação.
Ainda na figura 4.4, pode-se verificar os pinos de entradas (HIN) e (LIN)
representando as entradas PWM do interruptor superior e inferior respectivamente. O pino
(SD) quando colocado em nível alto ignora os sinais de entrada, bloqueando a saída do CI,
podendo ser utilizado como dispositivo de proteção, inibindo a saída. As resistências R g(on)
são utilizadas para reduzir a injeção de corrente dentro do circuito de comando através das
capacitâncias entre coletor-gate, devidos das altas taxas de variações da tensão entre
coletor-emissor [27]. As resistências Rg(off) servem para propiciar um caminho de descarga da
capacitância gate-emissor, permitindo o bloqueio do IGBT [27]. De acordo com [27], tanto as
resistência Rg(on) como Rg(off) devem ficar sempre num valor abaixo de 50 ohms.

4.6 Circuito de proteção

Um dos circuitos periféricos mais importantes de um inversor de freqüência é o que


provê a proteção dos IGBT’s, pois não é possível a utilização de fusíveis como proteção
deste, devido ao IGBT ser extremamente sensível e rápido à sua destruição, em comparação
a um fusível. Por este motivo é importante prever um circuito dentro do estágio de potência
que promova a proteção dos IGBT’s durante um curto-circuito, e que seja extremamente
rápido na ocorrência deste. Diante disto, optou-se pela solução ilustrada na figura 4.5, na
qual é bastante simples. Porém, eficiente, segura e rápida.

3.3 V
6N137 Pino de entrada
do 56F8013
+

Figura 4.5 – Circuito de proteção contra sobre-corrente empregado


39

O circuito da figura 4.5 tem a função de monitorar a corrente que circula pelo
barramento de tensão contínua ( ), através da diferença de potencial sobre um resistor de
1 (um) ohm ( ) em serie com o barramento. A tensão sobre o resistor é utilizada como
sensor, já que esta é proporcional a corrente que circula pelo mesmo. Acima de um
determinado nível de tensão ( ) o diodo emitirá um sinal de luz para o transistor do
optoacoplador, e este por conseqüência colocará a saída em nível baixo. A saída coletor do
optoacoplador é conectada diretamente a um pino de entrada do 56F8013, no qual fica
constantemente monitorado. Na ocorrência de uma transição de nível alto para baixo, o
56F8013 interpretará que houve uma sobrecarga ou curto-circuito, interrompendo
imediatamente a geração dos pulsos PWM, protegendo toda etapa de potencia,
principalmente os IGBT’s. Junto com a interrupção dos sinais PWM, o 56F8013 emitirá um
comando pela porta serial para o PC, avisando ao usuário a ocorrência do fato, através de
uma mensagem.
O optoacoplador empregado no circuito da figura 4.5 é o 6N137, este foi utilizado
devido ser bastante rápido, tornado-se ideal para esta aplicação. Através de ensaios
concluiu-se que uma tensão de aproximadamente 1,5 V é suficiente para colocar a
saída do opto em nível baixo. Portanto se considerar que a corrente máxima de sobrecarga é
de 5 A, quando esta estiver circulando pelo resistor em série, causará 5 V de queda de
tensão. Para que ocorra a sensibilização do optoacoplador, o potenciômetro ( ) deverá
ser ajustado de forma que a queda de tensão neste seja de 3,5 V, resultado em 1,5 V na
entrada do 6N137, colocando a saída deste em nível baixo, na ocorrência da sobre corrente
mínima.

4.7 Estágio de potência: ponte inversora e alimentação geral

Para implementação da ponte inversora foi utilizado o componente IGBT fabricado


pela Intersil o HGTG12N60C3D na quantidade de seis, este foi empregado devido ser
extremamente barato em comparação a outros de mesma classe, e por ser de fácil aquisição
no mercado. O HGTG12N60C3D já tem incorporado diodos em antiparalelo, opera com
tensões até 600 V, suporta corrente no coletor até 24 A, temperatura máxima de junção de
150 °C, e tem tempo de subida e descida de 270 ns e 210 ns respectivamente. A colocação
dos IGBT’s na ponte inversora pode ser visualizada através da figura 4.6, onde nesta,
40

também é possível analisar todo o estágio de potência implementado, desde a ponte de


diodos retificadores, até os capacitores de filtragem.

Circuito
proteção
corrente Dissipadores
Barramento CC

15.8k Ω 440uF
Rede Elétrica
220 V
440uF ~20V A B C
1.1k Ω o
440uF

Entradas analógicas
56F8013
15 V 2 Sensores de
Regulador temperatura
LM7815 3,3 V
0,33 uF LM35
0,33 uF
1 uF Filtro

Figura 4.6 – Estágio de potência, com todos os componentes empregados

Para retirar a alimentação dos optoacopladores e Drivers dos sinais PWM


apresentados anteriormente, foi utilizado um divisor resistivo entre o barramento CC, com a
finalidade de retirar 20 V para alimentação do regulador de tensão LM7815, tendo assim os
15 V necessários para alimentação de tais CI’s.
Ainda na figura 4.6, é observado o uso de dois dissipadores colocados nos IGBT’s
superiores e inferiores da ponte inversora. Nestes, foram instalados os sensores de
temperatura LM35, no qual fornecem 10 mV para cada grau centigrado registrado. Estes
sinais são conectados a duas portas analógicas do 56F8013, para após serem convertidas
para dados digitais, e enviadas para o computador (PC). Para alimentação dos sensores de
temperatura, foram aproveitados os 3,3 V disponíveis no kit de desenvolvimento, assim
pode ser mantida a isolação entre o estágio de potência e a parte digital.
41

Capítulo 5 : Descrição da interface gráfica

5.1 Estrutura e descrição básica do software proposto

Conforme mencionado no primeiro capítulo, um dos objetivos deste trabalho é a


criação de uma interface gráfica que permita o controle e monitoramento do inversor de
freqüência, através de uma comunicação serial entre o microcomputador (PC) e o kit de
desenvolvimento. A interface gráfica, desenvolvida em linguagem C++ orientada a objetos,
foi concebida com o auxilio da ferramenta de desenvolvimento de softwares, o Borland C++
Builder™ versão 6, da empresa CodeGear™ RAD Studio.
A interface que será apresentada a seguir é capaz de controlar a tensão e
freqüência de saída do inversor de modo independente, ou através de curvas de aceleração,
por meio de simples controles pelo teclado ou pelo mouse.
O programa também está apto para realizar aquisições de temperaturas nos
dissipadores da ponte inversora, mostrando para o usuário em tempo real a variação desta
em função das tensões e freqüências aplicadas pelo inversor. Todas as variações podem ser
visualizadas através de gráficos. Estes, além de registrarem todos os eventos, também
podem armazenar o horário em que ocorrem. Além disso, a interface poderá elaborar
relatórios a partir de dados fornecidos pelo usuário e de dados coletados durante o período
de funcionamento do programa, podendo ser salvos, abertos ou impressos.
Esta seção tem por objetivo apresentar a estruturação do software, no que diz
respeito às partes principais e ilustrar o encadeamento entre as funções básica do programa
desenvolvido através de fluxogramas, conforme pode ser observado na figura 5.1.
42

Visualizar Visualizar
Início
Tela principal Temperaturas Gráficos Relatório

Modulação
Curvas de partida SPWM/ SVPWM
Abrir Salvar Imprimir

Ajuste de partida Ajuste manual Ponte inversora


(Tensão/Freqüência/Tempo) (Tensão/ freqüência) Sensores de temperatura

°C

Acionar/ Desligar
(inversor)
Não
Sim

Kit de desenvolvimento
Cabo serial

Fluxo de dados

Figura 5.1 – Fluxograma representando o funcionamento do software desenvolvido e o encadeamento das funções

5.2 Interface gráfica

Esta seção tem por finalidade apresentar a interface gráfica desenvolvida neste
trabalho, a qual foi nomeada de DFC inverter frequency.
Quando o usuário executa o programa, é apresentada a ele, a tela ilustrada na
figura 5.2. Esta tela foi nomeada de tela principal, pois contem todas as funcionalidades de
controle do inversor e acesso a parâmetros de inicialização do mesmo. A figura 5.2 está
dividida em setores numerados nas quais circundam funções especificas do programa, cuja
finalidade é o melhor esclarecimento das mesmas.
43

Abas

5 4
1

2 3

6
Figura 5.2 – Tela principal do programa desenvolvido (DFC inverter frequency)

5.2.1 Modos de partida (setor 1)

Quando ativado o checkbox do canto superior esquerdo (ver figura 5.2), o usuário
terá a opção de escolher um modo de partida especifico, ou seja, a curva de aceleração.
Estão disponíveis quatro tipos de curvas, linear, exponencial, logarítmica e relação fixa, onde
cada curva representa a variação da tensão em função da freqüência, resultando em uma
relação diferente entre tensão e freqüência para cada curva, interferindo assim, no torque
desenvolvido pelo motor, conforme visto no capítulo 2.
Após o usuário escolher a curva de aceleração ele deverá preencher os campos de
edição, tais como o tempo de duração da partida, tensão na qual o inversor irá começar
aplicar na carga, tensão final, freqüência inicial e a freqüência final que terá o inversor após
o período de partida. A partir dos dados preenchidos, o programa irá fazer uma interpolação
para obter uma função que corresponda à curva escolhida e que passe pelos dados
fornecidos. Por exemplo, caso o usuário escolha uma curva de aceleração exponencial, o
programa irá obter dois pares ordenados referente à (freqüência inicial, tensão inicial) e
(freqüência final, tensão final). A partir desses dois pontos o programa irá fazer um ajuste de
curva de modo que a curva intercepte estes pontos, no caso do exemplo, uma curva
44

exponencial. Conforme ocorre o incremento da freqüência o software calculará para cada,


uma tensão que corresponda a esta, gerando no decorrer da partida, a curva escolhida.

5.2.2 Ajustes manuais (Setor 2)

Antes de dar início ao funcionamento do inversor o usuário deverá selecionar tipo


de modulação que deseja utilizar. Estão disponíveis os dois tipos de modulação, de acordo
com os estudados no capítulo 2, a modulação regular simétrica (senoidal) e a vetorial. Após
isto, deverá preencher o campo correspondente a tensão do barramento de tensão
contínua. Este campo é necessário, pois na modulação vetorial ele é usado para o cálculo
dos tempos, conforme visto na seção 3.5.1.
Após o preenchimento dos campos, tipo de modulação, tensão do barramento e
dos modos de partida, o usuário estará apto a dar início à partida do inversor, que terá
duração correspondente ao tempo de aceleração preenchido no (setor 1). Durante este
período, o programa irá fazer automaticamente o ajuste da tensão e freqüência, de acordo
com os dados fornecidos e da curva escolhida. Logo encerrado o instante da partida, é
habilitado ao usuário o controle manual da tensão e freqüência. Nestes controles o usuário
poderá tanto aumentar, quanto diminuir as duas grandezas de modo independente, e assim
poder observar as variações no torque de acordo com a combinação destas, podendo fazer
compensações tanto em freqüência, quanto na tensão aplicada à carga.

5.2.3 Dados principais do motor e sentido de rotação (setor 3)

Este setor é utilizado para o preenchimento dos valores nominais do motor, onde
são usados para elaboração de relatórios. Os dados fornecidos também são usados como
referência para mensagens alertas em tempo de execução, caso ocorra o aumento da tensão
e freqüência durante o funcionamento do inversor (ver setor 6). Também o usuário poderá
escolher o sentido de rotação do eixo do motor antes da partida. Este recurso torna-se
interessante, pois não é necessário a trocas das fases para inverter o sentido de rotação,
bastando apenas clicar num botão para obter o mesmo resultado.

5.2.4 Botão de início (setor 4)

Depois de preenchidos os dados essenciais para a partida, o usuário deverá clicar no


botão de início, presente no canto superior direito da tela principal. Após clicar neste,
45

surgirá à mensagem de aviso, certificando-se que tenha certeza da partida do inversor, e


alertando ao risco que isto irá impor. A figura 5.3 representa a imagem da mensagem de
aviso que surgirá após clicar no botão de início.

Figura 5.3 – Imagem da mensagem de aviso que surge antes da partida

5.2.5 Gráfico de aceleração de partida (setor 5)

Este gráfico tem a finalidade única de mostrar ao usuário a variação da tensão em


função da freqüência durante o período em que ocorre a partida. A figura 5.4 representa o
gráfico de aceleração de partida para um tipo de curva logarítmica.

Figura 5.4 – Imagem do grafico de aceleração de partida para uma curva logaritmica

5.2.6 Barra de mensagens (setor 6)

Esta barra auxilia o usuário no alerta de possíveis problemas que venham a ocorrer
durante o funcionamento, avisando-o, por exemplo, da tensão atual aplicada ao inversor ser
maior que o valor nominal deste, caso isto ocorra. A figura 5.5 ilustra uma mensagem caso a
tensão ultrapasse o valor nominal do motor.

Figura 5.5 – Mensagem de aviso quando a tensão atual ultrapassa o valor nominal do motor
46

5.3 Tela de temperaturas

Após o inversor entrar em operação o usuário poderá monitora os eventos, como as


temperaturas presente nos dissipadores dos IGBT’s, e visualizar estas através de uma
ilustração da ponte inversora. Este recurso pode ser acessado através da aba de
temperaturas, na parte superior do programa (ver Figura 5.6).

Figura 5.6 – Tela de temperaturas nos dissipadores da ponte inversora

5.4 Tela de gráficos

Passando para a aba seguinte, o usuário encontrará uma tela contendo quatro
gráficos, onde a função destes é relacionar todas as grandezas de uma forma gráfica. As
relações são as seguintes: tensão em função da freqüência, temperatura em função da
freqüência, temperatura em função da tensão e todas as grandezas em função do horário.
Com isso o usuário poderá saber exatamente o tempo de início e duração de qualquer
variação entre as grandezas envolvidas (Figura 5.7).
47

Figura 5.7 – Tela de gráficos relacionado a tensão, freqüência e temperatura

5.5 Tela de relatórios

A última aba que o programa disponibiliza é referente à geração de relatórios.


Nesta, o usuário poderá editar campos com dados pessoais e informações do motor que
estiver utilizando. O relatório tem a finalidade de armazenar os dados coletados durante o
período de funcionamento do inversor, de modo que possa ser acessado posteriormente à
sua elaboração. Dentro do relatório contém informações como temperatura, tensão e
freqüência média, máxima e mínima. Na parte final do relatório gerado é apresentado um
gráfico que relaciona todas as grandezas em função do horário em que elas variam, tal como
mostrado no gráfico da figura 5.7. Após a geração do relatório o usuário terá a opção de
salvar e impressão em tamanho A4. A figura 5.8 apresenta a imagem da tela de relatórios.
48

Figura 5.8 – Imagem da tela de relatórios

5.6 Protocolo de comunicação

Após a apresentação de toda interface gráfica desenvolvida, faz-se necessário


descrever o funcionamento do protocolo de comunicação desenvolvido entre o DFC inverter
frequency e o kit de desenvolvimento. O protocolo empregado é bastante simples e
intuitivo, pois consiste no envio e recebimento de grupos de três bytes por vez, a uma taxa
de 57600 bits/s. Onde o primeiro byte consiste no caractere de identificação do comando,
por exemplo, para o envio do comando de mudança de freqüência é usado o caractere “F”,
como identificação. Já o segundo e terceiro byte são correspondentes ao byte menos e mais
significativo do valor a grandeza que esteja sendo alterada. Para o caso a freqüência,
corresponderá ao valor numérico desta. Exceto para os comandos de ligar/desligar, tipo de
modulação, tipo de curva, sentido de rotação, é somente utilizado um caractere para
identificação, já que estas não têm valor numérico associado. Para implementação do
protocolo não foram utilizados recursos de verificação de validação (checksum) dos dados
enviados ou recebidos.
49

Capítulo 6 : Resultados Experimentais

6.1 Introdução

Durante este capítulo serão apresentados os resultados obtidos através dos

experimentos em bancada do protótipo implementado (ver anexo A). E também, a avaliação

do desempenho técnicas apresentadas no capítulo 3, por meio das formas de onda, dos

dados fornecidos pelo osciloscópio de dois canais HP 54600B, e da análise espectral dos

sinais, através da ferramenta MATLAB®.

6.2 Conceitos de avaliação

Para proceder à análise e comparada da SPWM e SVPWM, serão sempre utilizados


os mesmos índices de modulação em amplitude ( ), conforme visto no capítulo 3, e
reescritos de forma conveniente em (6.2) e (6.3), possibilitando assim, a comparação da
contribuição da componente fundamental de cada técnica em relação a este índice.
SPWM:

SVPWM:

6.3 Metodologia empregada

A metodologia consiste (i) no ajuste de tensão e freqüência por meio do DFC


inverter frequency (ii) na aquisição das formas de onda em diversos pontos do protótipo
construído, (iii) aquisição dos dados digitais oriundos do osciloscópio através do PC, (iv)
análise espectral dos dados através da ferramenta MATLAB®, tal como ilustra a figura 6.1.

Matlab®

Protótipo Osciloscópio
Implementado Análise de dados

Matlab

Kit de desenvolvimento
Figura Ajuste
6.1 – Ilustração da metodologia V/F para obtenção dos resultados
empregada
DFC inverter frequency
50

6.4 Limitações do protótipo

Como este trabalho tem fins acadêmicos optou-se por utilizar uma freqüência de
comutação relativamente baixa se comparada a inversores comerciais, operando a 1 kHz.
Com isso, é possível observar claramente a contribuição da largura de cada pulso, já que
existem poucos pulsos dentro de um período da componente fundamental, se comparada a
freqüências de comutação mais elevadas.
Através dos experimentos conclui-se que a freqüência mínima de operação
conseguida foi de 5 Hz e a máxima, por motivos de segurança ficou fixada em 120 Hz.
Também por motivos de segurança, as proteções contra sobre-correntes ficaram ajustadas
para 5 A.
A tensão obtida no barramento CC durante os ensaios com o motor se manteve em
torno de 305 V. O tempo entre as comutações dos interruptores (tempo morto) ficou
estabelecido em 1,5 us, o que se mostrou suficiente para que não ocorressem os
cruzamentos dos interruptores de um mesmo braço.

6.5 Resultados Obtidos

Os ensaios foram realizados com aplicação de tensão e freqüência, oriundas do


protótipo, num motor de 1 cv de 6 pólos operando a vazio e numa carga resistência de 7,5
kΩ ligada em estrela.
Para que se pudesse ser comparada as duas técnicas de modulação, optou-se por
dividir as figuras abaixo em duas colunas, onde na primeira, estão representadas todas as
formas de onda referentes à modulação senoidal, e a segunda referente à modulação
vetorial respectivamente.
As figuras 6.2(a) e 6.3(a) representam os sinais adquiridos dos pinos das saídas
PWM do 56F8013 ( ), para os tipos de modulação senoidal e vetorial. Já as figuras 6.2(b)
e 6.3(b) representam os espectros de freqüências dos sinais das figuras 6.2(a) e 6.3(b) em
pu, tomando como base o sinal de 3,3 V ( ). Na Figura 6.3(b) é observada a presença da
componente de terceira harmônica, conforme discutido na seção 3.5.1 para modulação
vetorial; componente que não está presente nas tensões de linha.
51

Modulação Senoidal (SPWM) Modulação Vetorial (SVPWM)

Figura 6.2(a) – Sinal PWM obtido no pino de saída do 56F8013 Figura 6.3(a) – Sinal PWM obtido no pino de saída do 56F8013
para: f = 50 Hz e m = 0.8 para: f = 50 Hz e m = 0.8

Figura 6.2 (b) – Espectro de freqüência do sinal da figura 6.2(a) Figura 6.3(b) – Espectro de freqüência do sinal da figura 6.3(a).

A figura 6.4(a) e 6.4(b) representam o sinal e espectro de freqüência da tensão entre


fases ( ) da saida do inveror para o uso da modulação senoidal, com frequencia de 20 Hz
e m = 0.9. Já em 6.5(a) e 6.5(b) é observado a tensão entre fases ( ) e o espectro de
frequencia para operação com 20 Hz e m = 0.9 com uso da modulação vetorial.
Modulação Senoidal (SPWM) Modulação Vetorial (SVPWM)

Figura 6.4(a) – Tensão entre fases para: m = 0.5, f = 20 Hz Figura 6.5 (a) – Tensão entre fases para: m = 0.5, f = 20 Hz
Vertical: 100 V/div, Horizontal: 5ms/div Vertical: 100 V/div, Horizontal: 5ms/div
52

Figura 6.4 (b) – Espectro de freqüência do sinal da figura 6.4 (a) Figura 6.5(b) – Espectro de freqüência do sinal da figura 6.5 (a)

As figuras 6.6 (a) e 6.6(b) representam a imagem adquirida pelo osciloscópio da


tensão ( ) e corrente de linha ( ) do estator do motor de 1 cv, para operação com 50 Hz
e m = 0.9 com o uso da SPWM. A figura 6.6(c) Ilustra o espectro de freqüência do sinal da
figura 6.6 (a) com base na tensão do barramento CC ( ). Já a figura 6.6(d) representa o
espectro de freqüência da figura 6.6 (b), tomando como base a corrente nominal do motor
( ). As figuras de 6.7(a) a 6.7(d) representam as mesmas condições das figuras 6.6(a) a
6.6(d) exceto pelo uso da SVPWM.
Modulação Senoidal (SPWM) Modulação Vetorial (SVPWM)

(a) (a)

(b) (b)
Figura 6.6 (a) – Tensão de linha aplicada ao motor para: m = Figura 6.7 (a) – Tensão de linha aplicada ao motor para: m =
0.9, f = 50 Hz. Vert: 200 V/div, Horiz: 5 ms/div 0.9, f = 50 Hz. Vert: 200 V/div, Horiz:5ms/div
(b) – Corrente de linha no motor para a tensão da (b) – Corrente de linha no motor para a tensão da
figura 6.6 (a). Vert: 1 A/div, Horiz: 5 ms/div figura 6.7 (a). Vert:1A/div, Horiz: 5ms/div
Vertical: 100V/div,Horizontal: 5ms/div Vertical: 100V/div,Horizontal: 5ms/div

Figura 6.6(c) – Espectro de freqüência da tensão da figura 6.6(a) Figura 6.7 (c) – Espectro de freqüência da tensão da figura
6.7(a)
53

Figura 6.6 (d) – Espectro de freqüência da corrente da figura Figura 6.7 (d) – Espectro de freqüência da corrente da figura
6.6(b). 6.7(b).

A figura 6.8(a) é obervada a tensão entre a fase e o neutro ( ) de uma carga


resistiva ligada em estrela para o uso da modulação senoidal. Na figura 6.8(b) representa o
espectro de freqüência da figura 6.8(a), tomando como base a tensão do barramento CC,
para m = 0.9 e f = 50 Hz. Já 6.9(a) e (b) repesentam as mesmas situações das figuras 6.8(a) e
6.8(b), exceto pelo uso da modulação vetorial.

Modulação Senoidal (SPWM) Modulação Vetorial (SVPWM)

Figura 6.8 (a) – Tensão entre fase e neutro de uma carga ligada Figura 6.9(a) – Tensão entre fase e neutro de uma carga ligada
em estrela para: m = 0.9, f = 50 Hz. em estrela para:m = 0.9, f = 50 Hz.
Vert: 100 V/div, Horiz: 5 ms/div Vert: 100 V/div, Horiz: 5 ms/div

Figura 6.8 (b) – Espectro de freqüência do sinal da figura 6.8(a). Figura 6.9 (b) – Espectro de freqüência do sinal da figura 6.9(a).
54

Os ensaios que dão origem ao gráfico da figura 6.10 foram realizados variando o
índice de modulação de 0 a 1 (região linear) de ambas as técnicas, SPWM e SVPWM. Ao
mesmo tempo, foi realizada a análise do espectro de freqüência, cuja finalidade foi obter o
valor eficaz da tensão de linha. Neste gráfico pode ser observado claramente o ganho de
tensão de linha propiciada pelo uso da SVPWM para qualquer ponto da região
linear, comprovando o comentado durante o capítulo 3. Pode também ser notado, o
aproveitamento máximo da modulação senoidal para região linear (m=1) em relação ao
barramento cc, em torno de 60%, concordando com o ilustrado na figura 3.7, apesar das não
linearidades inerentes da aplicação real, tais como a inclusão de tempo morto.

Figura 6.10 – Variação da amplitude da tensão de linha em relação ao índice de


modulação para as técnicas de modulação senoidal e vetorial
55

Capítulo 7 : Conclusões e Sugestões para Trabalhos Futuros

A topologia de um inversor de freqüência mostra que é possível transformar um


sinal contínuo em um sinal alternado, mesmo que não senoidal. Esta conversão baseada no
controle, adequação de freqüência e nível da tensão de saída, leva a excelentes resultados,
desde que sejam utilizadas técnicas especificas de modulação, levando o inversor de
freqüência a um status importante dentro da família dos conversores de energia.
Este trabalho propôs a implementação prática e didática de um inversor de
freqüência operando a 1 kHz, a partir das técnicas de modulação mais difundidas da
atualidade, e também a criação de uma interface gráfica para o PC com a finalidade de
realizar o controle escalar de velocidade do motor de indução, por meio do ajuste manual e
automático da tensão e freqüência aplicadas a este. Tudo isso por meio de uma interface
digital com o uso DSC 56F8013.
Através do estudo detalhado das técnicas de modulação senoidal e vetorial,
apresentadas durante o capítulo 3, este trabalho deu sua contribuição para implementação
digital destas, mostrando que elas podem ser executadas em tempo real e com relativa
simplicidade, desde que sejam executadas por um dispositivo microprocessado dedicado ao
acionamento de maquinas elétricas, tal como o 56F8013.
Durante o capítulo 4 foram apresentados os recursos de hardware necessários para
implementação física do inversor de freqüência proposto, como o uso do kit didático para
geração dos pulsos PWM, circuitos optoacopladores, circuitos de drivers, circuito de
proteção, e por fim, o estágio de potência.
Por meio dos espectros de freqüência apresentados no decorrer do capítulo 6,
oriundos dos testes em bancada, pôde ser visualizado que além de menor conteúdo
harmônico, a modulação vetorial propicia um melhor aproveitamento do barramento de
tensão contínua, se comparada à modulação senoidal, através do ganho da amplitude da
componente fundamental da tensão de linha. Devido a estas vantagens, a modulação
vetorial é alvo de inúmeros estudos na atualidade, cuja finalidade é a busca de um algoritmo
cada vez mais rápido, que possibilite a diminuição do período de amostragem e
conseqüentemente, a elevação da freqüência de comutação.
56

Embora a modulação senoidal tenha um menor aproveitamento, frente à


modulação vetorial, ela ainda tem grande aceitação e aplicação, devido sua simplicidade de
implementação, e por isso foi também objeto de estudo no decorrer deste trabalho.
Como sugestões para trabalhos futuros, pode-se citar o desenvolvimento de um
sistema em malha fechada para ambas as técnicas de modulação apresentadas. Para o caso
da modulação vetorial, será exigido um estudo mais aprofundado, haja vista que o controle
em malha fechada desse tipo não é abordado em nível de graduação. Pode-se também,
propor o aumento da freqüência de comutação, assim como aprimorar o circuito elétrico
desenvolvido, melhorando assim, a sua eficiência e o custo final do projeto.
Por fim, cabe citar algo acerca do imenso conhecimento absorvido no decorrer do
curso de graduação em Engenharia Elétrica, conhecimento esse que provou ter inestimável
importância durante a execução desse trabalho, e que sem dúvida alguma terá grande
relevância, tanto no segmento da vida acadêmica, quanto na vida profissional.
57

Capítulo 8 : Referências Bibliográficas

[1] Antenor Pomilio, J. Apostila de Eletrônica de Potência. Universidade Estadual de


Campinas - Faculdade de Engenharia Elétrica e de Computação. Campinas. 2002.
[2] Lafitte Vega, Jorge Leonidas, Avaliação das Condições de Segurança de Tensão na
Presença de Motores de Indução e Capacitores Chaveáveis. 2005. Dissertação de
Mestrado em Engenhária Elétrica – Programa de Pós Graduação em Engenharia
Elétrica da PUC-Rio. Pontifícia Universidade Católica do Rio de Janeiro, Rio de Janeiro
2005

[3] Botêga JR., Mário Luis. Análise de desempenho de processadores digitais aplicados
ao controle de baixo custo de máquinas elétricas trifásicas. 2005. 175 f. Dissertação
(Mestrado em Engenharia Elétrica) – Faculdade de Engenharia Elétrica e de
Computação, Universidade de Campinas, Campinas. 2005.
[4] Araujo Silva, Leonardo de. Avaliação de Uma Nova Proposta de Controle V/F em
Malha Aberta. 2000. 143 f. Dissertação (Mestrado em Engenharia Elétrica) –
Faculdade de Engenharia Elétrica e de Computação, Universidade de Campinas,
Campinas. 2000.
[5] Reis Fontes, Ivo. Controle de Velocidade de Motores de Indução Trifásico
Alimentado por Inversor PWM através de Microcomputador. 1993. 146 f. Tese de
Mestrado – Faculdade de Engenharia Elétrica, Universidade Estadual de Campinas,
Campinas. 1993.
[6] Célio Contin, Mario. Motores Alimentados por Inversores de Freqüência: O
Isolamento resiste?. Depto. Pesquisa e Desenvolvimento (P&D) WEG Motores Ltda.
[7] Moham, N.; M. Undeland, T.; P. Robbins, W. Power Electronics - Converters,
Applications and Design. 2ª ed. [S.l.]: John Wiley & Sons, Inc, 1995.
[8] Z. Yu, D. Figoli, Using Constant V/Hz Principle and Space Vector PWM
Technique for AC Induction Motor Control with TMS320C24, Texas Instruments
Application Note, SPRA284A, Abr. 1998
[9] H. Rashid, M. Power Electronics Handbook. 1ª. ed. [S.l.]: ACADEMIC PRESS, 2001.

[10] L.A. El – Kassas, L.N.Hulley, Microprocessor Based PWM Inverter Whith Thid
Harmonic Injection, IEEE Transactions on Industrial.
[11] R. Bowes, Sidney, Advanced Regular-Sampled PWM Control Techniques for Drivers
and Static Power Converters, IEEE Transactions on Industrial Electronics, vol. 42, NO.
4, 1995
[12] F. Labrique, J. Santana, Eletrônica de Potência. Primeira Edição, Fundação Calouste
Gulbenkian, 1991
[13] Moreno Martinez, Rodolfo Manuel. Uma contribuição ao estudo e projeto de tenão
a três níveis. 1997. 188 f. Dissertação de Mestrado – Falculdade de Engenharia
Elétrica e de Computação, Universidade Estadual de Campinas, Campinas. 1997.
58

[14] A. Muñoz-García; T.A. Lipo, On-lines Dead Time Compensation Technique for Open-
Loop PWM – VSI Drives, IEEE Transactions on Industrial Electronics, 1998.
[15] M. Cardenas, Víctor; M Horta, Sergio; S. Echavarría, Rodolfo, Elimination of Dead
Time Effects in Three Phase Inverters, CIEP, Cuernavaca, MÉXICO, 1996.
[16] Nunes, N. Motores de Corrente Alternada Relatório do Trabalho Experimental. [S.l.],
p. 57. 2001.
[17] Nascimento Irmão do, S. J. Estudo e Desenvolvimento de um Sistema Digital para o
Acionamento de Motores com Alimentação PWM. 2002. 87 f. Dissetação de
Mestrado em Engenharia Elétrica – Centro de Tecnologia e Geociências. Universidade
Federal de Pernambuco, Recife. 2002.
[18] Ho Kim, Y.; Ehsani, M. An Algebraic Algorithm for Microcomputer-Based (direct)
Inverter Pulsewidth Modulation, IEEE Transactions on Industrial Electronics, vol. JA-
23, NO. 4, pp. 654-660, Jun/Aug, 1987.
[19] R. Bowes, Sidney. Discussion of “An Algebraic Algorithm for Microcomputer-Based
(Direct) Inverter Pulsewhidth Modulation”, IEEE Transactions on Industrial
Electronics, vol. 24, NO. 6, pp. 998-1004, Nov/Dez, 1988.
[20] Bose, Bimal K.; Sutherland, Hunt A.; A High-Performance Pulsewidth Modulator for
an Inverter-Fed Driver System Using a Microcomputer, IEEE Transactions on
Industrial Applications, vol. IA-19, NO. 2, pp. 235-243, Mar/Abr, 1983.
[21] Cortés, Rodrígues R; “Aportaciones a los acondicionadores activos de corriente em
derivación para redes trifásicas de cuatro hilos”, 2005. Tese de Doutorado em
Engenharia Elétrica – Departament d’Enginyeria Elèctrica, Universidade Politècnica de
Catalunya, Barcelona 2005.
[22] Pereira Filho, Nicolau; Técnicas de Modulação por Largura de Pulso Vetorial para
Inversores Fonte de Tensão, 2007. 250 f. Tese de Doutorado em Engenharia Elétrica –
Programa de Pós-Graduação em Engenharia Elétrica, Universidade Federal de Itajubá,
Itajubá. 2007.
[23] Giffoni da Silva, Fernando José; Estudo do Chaveamento por Vetores Espaciais em
Modulação Por Largura de Pulso em Conversores Multiníveis, 2008. 142 f.
Dissertação de Mestrado em Ciências em Engenharia Elétrica – Programa de Pós-
Graduação em Engenharia Elétrica, Universidade Federal do Rio de Janeiro, Rio de
Janeiro. 2008.
[24] Vernavá, Angel. et al; Controle PWM Trifasico – Control Vectorial Del Motor
Asincronico (SVM - FOC) – Segunda Parte, Facultad de Ciencias Exactas Ingeniería y
Agrimensura - Universidad Nacional de Rosario. Disponivel em:
http://eie.fceia.unr.edu.ar/~potencia/
[25] Segui Chilet, Salvador; Gimeno Sales, Francisco J.; Masot Peris, Rafael; Control
Vectorial de inversores trifásicos / y 2, Control de Potencia. Julio, 2003.
[26] Souza Junior, J.C.D.; Rodrigues Paixão, R. Controlador Digital de Sinais - Família
56F800/E Baseado no MC56F8013 Microarquitetura e Prática. 1ª Edição. ed. São
Paulo: Érica Ltda, 2005.
59

[27] Circuitos de comando para IGBTs, Apostila de Eletrônica de Potência, Capítulo 7. INEP
- Instituto de Eletrônica de Potência - EEL - CTC – UFSC.
[28] Lye Kwong loong, Kelvin; Micro-Controller Based Space Vector Modulation (SVM)
Signal Generator, 2008. 102 f. Dissertação de Bacharelado em Engenharia Elétrica –
Faculty of Electrical Engineering, Universit Teknologi Malaysia, Malásia. 2008.
[29] Parekh, Rakesh; VF Controlo f 3-Phase Induction Motor Using Space Vector
Modulation, Microchip Technology, AN955, 2005.
[30] Pinheiro, Humberto. et al. Modulação Space Vector para Inversores Alimentados em
Tensão: Uma Abordagem Unificada. Revista Controle & Automação, Vol. 16, no. 1,
Jan/Fer/Mar 2005.
[31] Edris, Abdel-Aty Dr. et al. Space Vector (PWM) Digital Control and Sine (PWM) Pulse
Width Modulation modelling, simulations Techniques & Analysis by MATLAB and
PSIM (Powersys).
[32] Space vector modulation using 8-bit ST7MC microcontroller and ST7MC-KIT/BLDC
starter kit, Application note, AN2154, Rev 3. Nov 2007.
[33] K. Bose, B. Power Electronics and Motor Drivers - Advances and Trends. [S.l.]:
Elsevier Inc, 2006.
[34] AVR495: AC induction Motor Control Using the Constant V/f Principle and a Space-
vector PWM Algorithm, ATMEL application note, AVR495, Dez 2005.
[35] AVR32710: Space Vector Modulation using AVR32 UC3 Microcontroller, ATMEL
application note, Rev 32094B, Mar 2009.
[36] Jung, Jin-Woo, Project #2 Space Vector PWM Inverter,Mechatronic Systems
Laboratory – Departament of Electrical and Computer Engineering, The Ohio State
University, Fer 2005.
[37] Rockenbach, Fabrício et al. Manual Kit Didático 56F8013, Laboratório de Engenharia
Biomédica da Univeridade Católica de Pelotas, Rev. 0, Nov 2006.
[38] 3-Phase AC Motor Control with V/Hz Speed Closed Loop Using the DSP56F80X,
Motorola Semiconductor Application Note, AN1910/D, Rev. 1.0, Abr 2001.
[39] 56F801X Peripheral Reference Manual, 16-bit Digital Signal Controllers (DSC),
Freescale, Rev. 3, Jul 2006.
[40] Barroso de Freitas Pereira, Ivo Filipe; Projectar, Simular e Implementar um inversor
Multinível, 2008, 109 f. Disertação de Mestrado em Engenharia Electrotécnica e de
Computadores, Faculdade de Engenharia da Universidade do Porto, Portugual 2008.
[41] Barros Oliveira, José Carlos; Modulação de Largura de Impulsos no Controlo de
Inversores de Tensão Trifásicos, 1996. 153 f. Dissertação de Mestrado, Departamento
de Engenharia Electrotécnica e de Computadores, Faculdade de Engenharia da
Universidade do Porto, Portugual 1996.
[42] Alves Teixeira, Henrique José; Sistema Electrónico de Instrumentação para Comando
e Protecção de um Inversor de Tensão, 2005. 108 f. Dissetação de Mestrado em
Engenharia Electrotécnica e de Computadores, Faculdade de Engenharia da
Universidade do Porto, Portugual 2005.
60

Capítulo 9 : Anexos
Anexo A – Imagem do protótipo implementado

2
3

4 6
5
1: Kit de desenvolvimento
2: Optoacopladores
3: Circuito de drivers
4: Saída trifásica 8
5: Dissipadores da ponte IGBT
6: Sensor de temperatura 7
7: Ajuste sobre-corrente
8: Alimentação rede elétrica

Protótipo em bancada
61

Anexo B
Codigo fonte (56F8013 codewarrior)
O código abaixo é parte do software desenvolvido para o
56F8013, estando presente apenas suas rotinas principais.

//******************** Declaração das variáveis *********************// graus = graus-120; }


unsigned int p = 20,p_novo = 20,dado_final,tempo_aceleracao,tensao_inicial, if((graus > 180)&&(graus <= 240)) {
tensao_final,freq_inicial,freq_final,habilit_linear = 0,habilit_exponencial = 0, setor = 4;
habilit_logaritmo = 0,habilit_relacao_fixa = 0,freq_atual ,ADC_buffer[1],byte_mais_sig, graus = graus – 180; }
byte_LSB,byte_MSB,Vcc = 311,envia_curto_circuito = 0,vetorial = 0,senoidal = 1,fs = if((graus > 240)&&(graus <= 300)) {
3200, habilit_freq = 0 , habilit_tensao =0,habilit_byte1 = 0, habilit_byte2 = setor = 5;
0,habilit_dado_num = 0,habilit_tempo_aceleracao = 0,habilit_modo_partida = graus = graus - 240;}
0,habilit_tensao_inic = 0,habilit_tensao_final =0,habilit_freq_inic = 0,habilit_freq_final if((graus > 300)&&(graus <= 360)) {
= 0,envia_caracter =1,cont_timer = 0,cont_ADC = 0,habilit_ADC = 0,timer_status = setor = 6;
0,envia_freq = 0,setor; graus = graus - 300; }
//******** Cálculo dos tempos **********//
int x1,x2,y1,y2,f_amostra = 0,i = 1,graus,k = 0,fim_transmissao = 0, ta = (amplitude*tab_seno[60-graus]/10000)*16000;
rotacao_A = 1,rotacao_B = 0,flag_rotacao = 1; tb = (amplitude*tab_seno[graus]/10000)*16000;
to = (16000-ta-tb)/2
float freq,calc_seno,larg_pulso,razao_ciclica,ma = 0.5,mod_timer,beta,C, //********* Escolha do padrão de chaveamento conforme o setor *********//
alfa,B,amplitude; if(rotacao_A)// sentido de rotação normal {
switch (setor){
void main(void) case 1:
{ setReg16(PWM_PWMVAL0,(to));// registrador referente a chave superior da fase A
PE_low_level_init(); setReg16(PWM_PWMVAL2,(ta+to));//registrador referente a chave superior da
// Inicializações fase B
TI1_Disable();// desativa o timer responsável setReg16(PWM_PWMVAL4,(ta+tb+to));//registrador referente a chave C
// pelo calculo das larguras de pulsos case 2:
PESL(GPIO_A, GPIO_SETAS_PERIPHERAL, setReg16(PWM_PWMVAL0,(tb+to));
BIT_0 | BIT_1 | BIT_2 | BIT_3 | BIT_4 | BIT_5); setReg16(PWM_PWMVAL2,(to));
/*Utiliza a freqüência do barramento (32Mz) setReg16(PWM_PWMVAL4,(ta+tb+to));
PESL(PWM, PWM_SET_PRESCALER,PWM_PRESCALER_DIV_1); case 3:
/*Modulo de contagem do PWM (determina a freqüência de chaveamento) setReg16(PWM_PWMVAL0,(ta+tb+to));
Modulo -> 32MHz * 0.001s / 2 = 16000 */ setReg16(PWM_PWMVAL2,(to));
PESL(PWM, PWM_SET_MODULO, 16000); setReg16(PWM_PWMVAL4,(ta+to));
/* Inclusão do tempo morto. Este valor corresponde a 1.5us (tempo morto case 4:
medido nas saídas dos optoacopladores*/ setReg16(PWM_PWMVAL0,(ta+tb+to));
PESL(PWM, PWM_SET_DEADTIME0, 600); setReg16(PWM_PWMVAL2,(tb+to));
PESL(PWM, PWM_SET_DEADTIME1, 600); setReg16(PWM_PWMVAL4,(to));
/* Disable all faults */ case 5:
PESL(PWM, PWM_WRITE_DISABLE_MAPPING_REG1, 0); setReg16(PWM_PWMVAL0,(ta+to));
PESL(PWM, PWM_WRITE_DISABLE_MAPPING_REG2, 0); setReg16(PWM_PWMVAL0,(ta+to));
/* Start PWM count */ setReg16(PWM_PWMVAL4,(to));
PESL(PWM, PWM_DEVICE, PWM_ENABLE); case 6:
PESL(PWM, PWM_HARDWARE_ACCELERATION, setReg16(PWM_PWMVAL0,(to));
PWM_ENABLE); setReg16(PWM_PWMVAL2,(ta+tb+to));
/* Carrega os registradores a cada período */ setReg16(PWM_PWMVAL4,(tb+to}
PESL(PWM, PWM_SET_RELOAD_FREQUENCY, PWM_RELOAD_OPPORTUNITY_1); // fim switch(setor)
// habilita alinhamento ao centro }// fim if(rotacao_A)
PESL(PWM, PWM_SET_ALIGNMENT,PWM_ALIGN_CENTER); if(rotacao_B)// inverte o sentido de rotação trocando a fase A pela B
PESL( PWM, PWM_HALF_CYCLE_RELOAD, PWM_DISABLE ); {
//PESL( PWM, PWM_OUTPUT_SOFTWARE_CONTROL, 0 ); switch (setor)
/* Configura para os braço do inversor para operarem em modo complementar {
PESL( PWM, PWM_SET_COMPLEMENTARY_MODE, PWM_CHANNEL_01 ); case 1:
PESL( PWM, PWM_SET_COMPLEMENTARY_MODE, PWM_CHANNEL_23 ); setReg16(PWM_PWMVAL2,(to));
PESL( PWM, PWM_SET_COMPLEMENTARY_MODE, PWM_CHANNEL_45 ); setReg16(PWM_PWMVAL0,(ta+to));
PESL( PWM, PWM_SET_NEG_BOTTOM_SIDE_POLARITY, PWM_CHANNEL_01); setReg16(PWM_PWMVAL4,(ta+tb+to));
PESL( PWM, PWM_SET_NEG_BOTTOM_SIDE_POLARITY, PWM_CHANNEL_23); case 2:
PESL( PWM, PWM_SET_NEG_BOTTOM_SIDE_POLARITY, PWM_CHANNEL_45); setReg16(PWM_PWMVAL2,(tb+to));
setReg16(PWM_PMCFG, 0x00); setReg16(PWM_PWMVAL0,(to));
PESL(PWM, PWM_LOAD_OK, NULL); setReg16(PWM_PWMVAL4,(ta+tb+to));
/* Desabilita as saidas pwm */ case 3:
PESL(PWM, PWM_OUTPUT_PAD, PWM_DISABLE); setReg16(PWM_PWMVAL2,(ta+tb+to));
TI1_Enable(); setReg16(PWM_PWMVAL0,(to));
Timer_modo_partida_Disable(); setReg16(PWM_PWMVAL4,(ta+to));
AD1_Disable();// desativado temporiarmente case 4:
for(sempre) setReg16(PWM_PWMVAL2,(ta+tb+to));
{ setReg16(PWM_PWMVAL0,(tb+to));
} setReg16(PWM_PWMVAL4,(to));
}//fim main case 5:
void TI1_OnInterrupt(void) setReg16(PWM_PWMVAL2,(ta+to));
{ setReg16(PWM_PWMVAL0,(ta+tb+to));
/* Este Timer é interrupido a cada 1 ms, ele guarda a informação da freqüência de setReg16(PWM_PWMVAL4,(to));
chaveamento (1 KHz). A cada interrupção é realizada à amostra do seno, e calculada a case 6:
largura dos pulsos para as três fases. Por questões de tamanho de arquivo, a tabela setReg16(PWM_PWMVAL2,(to));
contendo os valores dos graus do seno foi suprimida. Esta basicamente consiste no setReg16(PWM_PWMVAL0,(ta+tb+to));
valor do seno para todos os graus e multiplicada por 10000, assim é possível trabalhar setReg16(PWM_PWMVAL4,(tb+to));
com números inteiros*/ }// fim switch(setor)
graus = 360*k/p // ( a variavel graus é incrementada de acordo com o número de }// fim if(rotacao_B)
amostras//
if(vetorial){ }// fim if(vetorial)
//******* Determinação do setor *********// if(senoidal)
if(graus <= 60) { {
setor = 1; } calc_seno = (tab_seno[graus]);
if((graus>60)&&(graus <=120)) { calc_seno = calc_seno/10000;
setor = 2; /* Calculo da largura de pulso **
graus = graus-60; } larg_pulso = 0.5*N*(ma*calc_seno + 1), onde "ma" é o fator de modulação em
if((graus > 120)&&(graus <= 180) { amplitude
setor = 3; e "N" é modulo do contador que no caso de 1kHz é 1600
62

modulo = 32MHz * 0.001s / 2 = 16000 habilit_tempo_aceleracao = 0;//desabilita a entrada de tempo


larg_pulso = 0.5*1600*(ma*calc_seno + 1) de aceleração,já que este já foi computado
larg_pulso = 8000*(ma*calc_seno + 1) */ habilit_byte1 = 1;// habilita a entrada e um novo byte que
//************** Fase A **********************/ será para tensão inicial
larg_pulso = 8000*(ma*calc_seno +1); habilit_tensao_inic = 1;//habilita a entrada da tensão inicial
setReg16(PWM_PWMVAL0,larg_pulso);
if(rotacao_A) }
{ else if(habilit_tensao_inic == 1)// caso esteja habilitado a
setReg16(PWM_PWMVAL0,larg_pulso);// não ha troca de fase, condição normal de entrada da tensão inicial...
rotação {
} tensao_inicial = dado_final;// pega o valor para a
if(rotacao_B) tensão final
{ habilit_tensao_inic = 0;// desabilita a entrada da
setReg16(PWM_PWMVAL2,larg_pulso);// troca a fase A pela B tensão inicia, já que está computada
} habilit_byte1 = 1;// habilita a entrada e um novo byte que será
//************** Fase B ***********************/ para tensão final
graus = graus - 120; habilit_tensao_final = 1;// o proximo byte que chegar será para tensão final
if(graus < 0)
{ }
graus = 360+graus; else if(habilit_tensao_final == 1)// caso esteja habilitado para tensão final...
} {
calc_seno = (tab_seno[graus]); tensao_final = dado_final;// pega o valor da tensão final
habilit_tensao_final = 0;// desabilita a entrada da tensão final,pois o mesmo já foi
calc_seno = calc_seno/10000; armazenado
larg_pulso = 8000*(ma*calc_seno +1); habilit_byte1 = 1;// habilita para o proximo byte que será frequencia inicial
if(rotacao_A){ habilit_freq_inic = 1;// habilita a entrada da frequencia inicial
setReg16(PWM_PWMVAL2,larg_pulso);// não ha troca de fase } }
if(rotacao_B) { else if(habilit_freq_inic == 1)// caso esteja habilitado para frequencia inicial...
setReg16(PWM_PWMVAL0,larg_pulso);// troca a fase B pela A } {
//************** Fase C **********************/ freq_inicial = dado_final;// pega o valor da frequencia inicial
graus = graus - 120; habilit_freq_inic = 0; //desabilita a entrada da freq. inicial, pois a mesma já foi
if(graus < 0) computada
{ habilit_byte1 = 1;// habilita o proximo byte que será a frequencia final
graus = 360 + graus; } habilit_freq_final = 1;
calc_seno = (tab_seno[graus]); }
calc_seno = calc_seno/10000; else if(habilit_freq_final == 1)
larg_pulso = 8000*(ma*calc_seno +1); {
setReg16(PWM_PWMVAL4,larg_pulso); freq_final = dado_final;// pega o valor da frequencia final
//*********************************************/ habilit_freq_final = 0; //desabilita a entrada da frequenci final, pois a mesma já foi
} computada
/* Atualiza os registradores PWM para o próximo ciclo ///habilit_byte1 = 1; NÃO É NECESSÁRIO, POIS ESTE É O ULTIMO DADO.!!!!
setRegBit(PWM_PMCTL,LDOK); habilit_dado_num = 0;
if(k >= p)// caso tenha chegado na ultima amostra…. //***************************************************
{ //* depois de pegos os valos necessários para o modo *
k=0;// retorna a 1° amostra //* de partida, começa o cálculo do modulo de tempo *
p = p_novo; //* e das equações tipo linear, exponencial, logarítima/
} //****************************************************
k = k+1; // contador das amostras //* calculo do modulo de tempo */
mod_timer = (float)tempo_aceleracao/((float)freq_final - (float)freq_inicial);
mod_timer = (mod_timer/10)*1000;
void AS1_OnRxChar(void)// função recepção serial
Timer_modo_partida_SetPeriodMS((word)mod_timer);// seta o modulo do timer
{
freq_atual =freq_inicial;
/* Esta função foi configurada no Codewarrior com uma taxa de transferência de
//**** Modo Linear *****//
57600 bits/seg.
if(habilit_linear == 1)// caso o modo de partida seja o linear...
AS1_RecvChar(&caracter[0]);// recebe o dado findo do PC
{
if(habilit_dado_num == 1)// caso seja dado numérico...
Timer_modo_partida_Enable();
{
}
if(habilit_byte1 == 1)
//**** Modo exponencial
{
if(habilit_exponencial == 1)
byte_LSB = caracter[0]&0xFFFF;
{
habilit_byte1 = 0;
//*** Calculo das constante para o modo exponecial
habilit_byte2 = 1;
y1 = tensao_inicial;
}
y2 = tensao_final;
else if(habilit_byte2 == 1)
x1 = (float)freq_inicial;
{
x2 = (float)freq_final;
byte_MSB = caracter[0]&0xFF;
beta = (log(y2) - log(y1))/(x2 -x1);
dado_final = ((byte_MSB<<8)|(byte_LSB))&0xFFFF;
B = log(y1)-x1*(log(y2)- log(y1))/(x2 - x1) ;
if(habilit_freq == 1)
alfa = exp(B);
{
Timer_modo_partida_Enable();// habilita o timer para iniciar a partida
p_novo = fs/dado_final;
}
//k = 0;
//***** Modo logaritmo *****//
habilit_freq = 0;// desabilita a entrada de frequencia, já que
if(habilit_logaritmo == 1) {
esta já foi computada
y1 = tensao_inicial;
habilit_dado_num = 0;
y2 = tensao_final;
}
x1 = (float)freq_inicial;
if(habilit_tensao == 1)
x2 = (float)freq_final;
{
alfa = (y2 - y1)/(log(x2) - log(x1));
if(vetorial)
C = -log(x1)*(y2 - y1)/(log(x2) - log(x1)) + y1 ;
{
Timer_modo_partida_Enable();// habilita o timer para iniciar a partida
amplitude = (float)dado_final/10000;// atualiza o fator de
}
modulção em amplitude
//******* Modo relação fixa *******//
}
if(habilit_relacao_fixa == 1) {
else// caso seja modulação senoidal
Timer_modo_partida_Enable(); }
{
}// fim else if(habilit_freq_final == 1)
ma = (float)dado_final/Vcc;
}
}
}
habilit_tensao =0;
}
habilit_dado_num = 0;
PESL(PWM, PWM_OUTPUT_PAD, PWM_ENABLE);// liga o pwm
}
if(caracter[0] == 'F') {
if(habilit_modo_partida == 1)
if(habilit_dado_num == 0) {
{
habilit_freq = 1;
if(habilit_tempo_aceleracao == 1)// caso esteja habilitado a
habilit_byte1 = 1;
entrada do tempo de aceleracao...
habilit_dado_num = 1;//habilita a entrada do dado numérico}
{
}
tempo_aceleracao = dado_final;// pega o valor para o tempo
}
de aceleracao
63

if(caracter[0] == 'V') { TI2_Enable();// habilita o timer para envio da frequencia


if(habilit_dado_num == 0) { if(freq_atual >= freq_final) {
habilit_tensao = 1;// habilita a entrada de tensão Timer_modo_partida_Disable();
habilit_byte1 = 1; habilit_linear = 0;//encerra a partida pelo método linear
habilit_dado_num = 1;//habilita a entrada do dado numérico habilit_modo_partida = 0;//desabilita o modo de partida
} envia_ADC = 1;
} envia_freq = 0;
if(caracter[0] == 'v')// 'v' é referente ao protocolo para modulação vetorial habilit_dado_num = 0;// (caso não tenha essa linha, apos terminar o modo de
{ partida não é possivel ajustar a frequencia pela serial)
if(habilit_dado_num == 0)// garantia que não entrará dado numérico }
{ freq_atual++;
senoidal = 0; }
vetorial = 1; // habilita a modulação vetorial if( habilit_exponencial == 1)// caso tenha sido uma escolha pelo método
} exponencial...
} {
if(caracter[0] == 's')// 's' é referente ao protocolo para modulação senoidal tensao_atual = (float)alfa*exp(beta*freq_atual);// equação
{ exponencial
if(habilit_dado_num == 0)// garantia que não entrará dado numérico //ma = tensao_atual/220;
{ //** Envio da frequencia **//
vetorial = 0; TI2_Enable();// habilita o timer para envio da frequencia
senoidal = 1; // habilita a modulação senoidal if(freq_atual >= freq_final) {
} Timer_modo_partida_Disable();
} habilit_exponencial = 0;//encerra a partida pelo método exponencial
if(caracter[0] == 'A'){ habilit_modo_partida = 0;//desabilita o modo de partida
if(habilit_dado_num == 0)// garantia que não entrará dado numérico envia_ADC = 1;
{ envia_freq = 0;
rotacao_A = 1;//sentido de rotação A habilit_dado_num = 0;// (caso não tenha essa linha, apos terminar o modo de
rotacao_B = 0; partida não é possivel ajustar a frequencia pela serial)
} }
} freq_atual++;
}
if(caracter[0] == 'B') { if(habilit_logaritmo == 1)
if(habilit_dado_num == 0)// garantia que não entrará dado numérico {
{ tensao_atual = alfa*log((float)freq_atual) + C;// equação logaritma
rotacao_B = 1;//sentido de rotação B if(freq_atual >= freq_final) {
rotacao_A = 0; Timer_modo_partida_Disable();
} habilit_logaritmo = 0;//encerra a partida pelo método exponencial
} habilit_modo_partida = 0;//desabilita o modo de partida
if(caracter[0] == 'D')// desliga o pwm envia_ADC = 1;
{ envia_freq = 0;
PESL(PWM, PWM_OUTPUT_PAD, PWM_DISABLE); habilit_dado_num = 0;// (caso não tenha essa linha, apos terminar o modo de
} partida não é possivel ajustar a frequencia pela serial)
//************** Modos de partida *************************** }
if(caracter[0] == 'L')// referente ao modo de partida linear freq_atual++;
{ }
if(habilit_dado_num == 0) { if(habilit_relacao_fixa == 1) {
habilit_linear = 1; tensao_atual = tensao_inicial;
habilit_byte1 = 1;// habilita a entrada do LSB TI2_Enable();// habilita o timer para envio da freqüência
habilit_tempo_aceleracao = 1;// habilita a entrada do tempo de aceleração if(freq_atual >= freq_final) {
Timer_modo_partida_Disable();
habilit_modo_partida = 1; habilit_relacao_fixa = 0;//encerra a partida pelo método exponencial
habilit_dado_num = 1 } habilit_modo_partida = 0;//desabilita o modo de partida
} envia_ADC = 1;
if(caracter[0] == 'E')// referente ao modo de partida expoencial envia_freq = 0;
{ habilit_dado_num = 0;// (caso não tenha essa linha, apos terminar o modo de
if(habilit_dado_num == 0) { partida não é possivel ajustar a frequencia pela serial)
habilit_exponencial = 1; }
habilit_byte1 =1; freq_atual++;
habilit_tempo_aceleracao =1; }
habilit_modo_partida =1; if(senoidal){
habilit_dado_num = 1;} ma = (tensao_atual*1.414214)/Vcc; }
} else // caso seja vetorial...{
if(caracter[0] == 'G')//referente ao modo de partida logaritma //amplitude=sqrt(3)*tensao_atual*sqrt(2)/(2*Vcc)= 1.2247*tensao_atual/vcc
{ amplitude = 1.2247*tensao_atual/(Vcc);
if(habilit_dado_num == 0) { }
habilit_logaritmo =1;
habilit_byte1 =1; }// fim if(cont_timer == 10)
habilit_tempo_aceleracao =1; cont_timer++;// incrementa a contagem do timer até chega 10, pois o modulo do
habilit_modo_partida =1; timer está dividido por 10
habilit_dado_num = 1;}
}
if(caracter[0] == 'R')// referente ao modo de partida com relação fixa
{
if(habilit_dado_num == 0) {
habilit_relacao_fixa = 1;
habilit_byte1 = 1;
habilit_tempo_aceleracao = 1;
habilit_modo_partida = 1;
habilit_dado_num = 1;}
}
}
void Timer_modo_partida_OnInterrupt(void)// função para os modos de partida
{
static int i;
float tensao_atual;
word freq_envia;
if(cont_timer == 10) {
cont_timer = 0;
//********* Calculo do fator de modulação em frequencia "p" **********//
p_novo = fs/freq_atual; // onde 1000 é a frequencia de chaveamento
envia_freq = 1;
if( habilit_linear == 1)
{
tensao_atual = ((tensao_final - tensao_inicial)*(float)(freq_atual -
freq_inicial))/(float)(freq_final - freq_inicial) + tensao_inicial;

S-ar putea să vă placă și