7/28/2019 Eduardo Leandro Delp Up Po
1/56
UNIVERSIDADE FEDERAL DO ESPRITO SANTOCENTRO TECNOLGICO
DEPARTAMENTO DE ENGENHARIA ELTRICAPROJETO DE GRADUAO
ACIONAMENTO MICROCONTROLADO DE UM MOTOR CC
COM FRENAGEM REGENERATIVA
EDUARDO LEANDRO DEL-PUPPO
VITRIA ESAGOSTO/2007
7/28/2019 Eduardo Leandro Delp Up Po
2/56
EDUARDO LEANDRO DEL-PUPPO
ACIONAMENTO MICROCONTROLADO DE UM MOTOR CCCOM FRENAGEM REGENERATIVA
Parte manuscrita do Projeto de Graduaodo aluno Eduardo Leandro Del-Puppo,apresentado ao Departamento de
Engenharia Eltrica do CentroTecnolgico da Universidade Federal doEsprito Santo, para obteno do grau deEngenheiro Eletricista.
VITRIA ESAGOSTO/2007
7/28/2019 Eduardo Leandro Delp Up Po
3/56
EDUARDO LEANDRO DEL-PUPPO
ACIONAMENTO MICROCONTROLADO DE UM MOTOR CCCOM FRENAGEM REGENERATIVA
COMISSO EXAMINADORA:
___________________________________Prof. Dr. Gilberto Costa Drumond SouzaOrientador
___________________________________Prof. Dr. Paulo Faria Santos Amaral
Co-orientador
___________________________________Prof. Dr. Jos Luiz de Freitas VieiraExaminador
___________________________________Eng. Alex Teixeira PradoExaminador
Vitria - ES, 31 de agosto de 2007
7/28/2019 Eduardo Leandro Delp Up Po
4/56
AGRADECIMENTOS
Agradeo a todos que de alguma forma ajudaram e acreditaram na realizaodeste projeto, por mais complicado que tenho sido. Agradeo ao professor Gilberto
pela orientao e aos professores Paulo Amaral, Jos Luiz, Arago e todos que de
alguma forma contriburam com dicas e material didtico. Agradeo ao Engenheiro
Pedro Federici Coelho pela grande ajuda no entendimento de microcontroladores.
Agradeo tambm a todos na empresa onde trabalho que sempre incentivaram
e me apoiaram em todos os momentos que eu precisava sair para fazer meu projeto.
Enfim, agradeo a Deus por mais essa etapa vencida, e minha famlia pelo
apoio em todos os momentos difceis.
7/28/2019 Eduardo Leandro Delp Up Po
5/56
LISTA DE FIGURAS
Figura 2-1- Circuito do motor CC de excitao separada ......................................... 12
Figura 2-2 - Caracterstica Velocidade x Torque ......................................................13Figura 3-1 (a) Chopper abaixador com carga RLE. (b) Circuitos equivalentes. .....15
Figura 3-2 Formas de onda para conduo contnua de corrente.............................16
Figura 3-3 Potncia mdia na carga normalizada em funo da razo cclica. .......18
Figura 3-4 Chopper elevador circuito equivalente. .............................................18
Figura 3-5 Formas de onda................................................................................... 19
Figura 3-6 Chopper classe C - circuito bsico ....................................................... 21
Figura 3-7 Chopper classe C formas de onda e conduo das chaves e diodos....22
Figura 4-1 Circuito simplificado para controle do acionamento.............................26
Figura 4-2 Diagrama de blocos ............................................................................. 28
Figura 5-1 Algoritmo ............................................................................................33
Figura 6-1 - Bancada com prottipo em funcionamento ...........................................34
Figura 6-2 - Prottipo 1) Placa de fora 2) Placa de controle................................35
Figura 6-3 - Operao em modo buck ciclo de trabalho em 50% (carga RL)......36
Figura 6-4 - Operao em modo buck ciclo de trabalho em 100% (RL).............37
Figura 6-5 - Operao em modo buck ciclo de trabalho em 50% (carga motor) .38
Figura 6-6 - Operao em modo buck ciclo de trabalho em 100% (carga motor)38
Figura 6-7 - Operao em modo boost frenagem ...............................................39
7/28/2019 Eduardo Leandro Delp Up Po
6/56
SIMBOLOGIA
= fluxo por plo, Webers
=aI corrente de armadura, A=V tenso de armadura, V
=aR resitncia do enrolamento de armadura,
=m
velocidade da armadura, rad/seg
=eT torque desenvolvido pelo motor, N.m
=eK constante construtiva do motor
SV = tenso de alimentao
OV = tenso mdia na carga
I = corrente na carga
CHT = perodo de chaveamento
CH= chave
ontdTt ==1 = intervalo de tempo com CH fechada
2t = intervalo de tempo com CH aberta
OI = corrente mdia na armadurad= razo cclica
7/28/2019 Eduardo Leandro Delp Up Po
7/56
GLOSSRIO
CC Corrente contnua, DC:Direct Current.
Chopper CC conversor de corrente contnuaChopper elevador conversor de corrente contnua que produz na sada uma
tenso que maior que a tenso de alimentao, baseado na carga e desgarga de um
indutor.
Chopper abaixador conversor de corrente contnua que produz uma tenso na
sada que varia de 0 a 100% da tenso de entrada atravs de uma chave comandada.
Conversor buck - Chopper abaixador
Conversor boost - Chopper elevador
7/28/2019 Eduardo Leandro Delp Up Po
8/56
RESUMO
O objetivo deste trabalho foi projetar e construir um prottipo de um
conversor CC-CC microcontrolado, capaz de produzir na sada uma tenso varivel de
0 a 100% da tenso de entrada, produzindo ao motora direta, e que seja capaz derealizar frenagem regenerativa direta, ou seja, operao em dois quadrantes. O
conversor utiliza um microcontrolador para receber os sinais de referncia e de
controle, para ento controlar a tenso na sada do conversor que resulte na corrente de
armadura desejada. O circuito utiliza semicondutores do tipo MOSFET, e a estrutura
de controle empregou, para permitir desenvolvimento e testes com segurana, uma
malha externa de velocidade, com malha interna de corrente. Numa aplicao real de
um veculo eltrico, usual que o controle seja de torque, o que corresponderia a
malha de corrente, e neste caso, quem fecha a malha de velocidade o usurio.
O processamento de informaes foi feito por um microcontrolador da
Microchip, e o software foi desenvolvido em linguagem C utilizando o compilador
PIC C compiler para transformar o programa em arquivo .hex compatvel com o
microcontrolador.
Com o projeto concludo, obteve-se o controle de torque, e consequentemente
a velocidade de um motor CC, e realizao de frenagem regenerativa com o mximo
possvel de recuperao de energia.
7/28/2019 Eduardo Leandro Delp Up Po
9/56
SUMRIO
1. INTRODUO...........................................................................................11 2. O MOTOR CC............................................................................................12
2.1. Equaes de velocidade e torque.........................................................12
2.2. Mtodos de Controle de Velocidade....................................................13
3. CONTROLE POR TENSO DE ARMADURA CHOPPERS..........14
3.1. Chopper Abaixador (Buck) com carga RLE - Princpio de Operao ..14
3.1.1. Normalizao: ..................................................................................17
3.2. Chopper elevador (Boost) Princpio de Operao .............................18
3.3. Chopper abaixador/elevador Operao em dois quadrantes .............. 20
4. O ACIONAMENTO PROPOSTO.............................................................25
4.1. O circuito simplificado........................................................................25
4.1.1. Drive de tenso:................................................................................27
4.1.2. Filtros passa-baixa (FPB):.................................................................27
4.1.3. Amplificador: ...................................................................................27
4.1.4. Somador: ..........................................................................................27
4.1.5. Gate-drive IR2104:........................................................................27
4.2. O sistema de controle ..........................................................................28
4.3. Operao do conversor........................................................................29
4.3.1 Acelerando Operao Buck............................................................29
4.3.2 Velocidade de cruzeiro - Cruise control ............................................29
4.3.3 Desacelerando Operao Boost (frenagem)....................................29
5. O SOFTWARE DE CONTROLE..........................................................31
6. O PROTTIPO ..........................................................................................34
6.1. Formas de onda...................................................................................35
6.1.1 Modo Buck com carga RL ................................................................35
6.1.2 Modo Buck com motor operando a vazio..........................................37
6.1.3 Modo Boost (frenagem)....................................................................39
7. CONCLUSO.............................................................................................40
7/28/2019 Eduardo Leandro Delp Up Po
10/56
ANEXO A...............................................................................................................41
ANEXO B...............................................................................................................53
ANEXO C...............................................................................................................54
REFERNCIAS BIBLIOGRFICAS..................................................................56
7/28/2019 Eduardo Leandro Delp Up Po
11/56
1. INTRODUOO motor de corrente contnua muito usado em aplicaes onde ocorrem
freqentes partidas e paradas, e que requerem um bom controle de velocidade. Por
esses motivos e pela possibilidade de variar o torque de 0 a 100% do torque nominal
em quaisquer faixas de velocidade, o motor CC muito utilizado em trao eltrica,
em aplicaes tais como: locomotivas, carros eltricos, bondes, bicicletas eltricas,
walk machines e outros.
Neste projeto foi desenvolvido um prottipo de um conversor CC-CC que
opera em dois quadrantes: ao motora direta e frenagem direta. O projeto utiliza uma
configurao clssica desse tipo de conversor (buck-boost), e um sistema de controle
baseado na operao simultnea das duas chaves tipo MOSFETS, possibilitando uma
transio suave entre a ao motora e a frenagem.
Inicialmente foi feito um apanhado geral sobre o motor CC de excitao
separada com fluxo de campo constante, pois o caso que se assemelha a um motor
CC de m permanente muito utilizado em veculos eltricos de baixa potncia. Em
seguida foi mostrado as formas de controle do motor CC por variao da tenso,
mostrando a operao dos dois tipos bsicos de conversores, buck-abaixador e
boost-elevador, e do terceiro tipo (buck-boost) que incorpora os dois tipos citados.O buck-boost compe o conversor proposto no captulo3.
No captulo 4 apresentado o software de controle, que utiliza um PIC16F876
como processador de informaes. O software foi desenvolvido utilizando o conceito
de aritmtica fracionria e controle por ponto fixo.
No ltimo captulo so mostrados os resultados obtidos e as formas de onda. O
conversor dever ser capaz de controlar o torque e por conseqncia a velocidade
desenvolvida pelo motor, e dever fazer frenagem regenerativa e dissipar a potncia dafrenagem em um resistor atravs do chaveamento de um MOSFET, pois no h
disponibilidade de uma fonte receptora para utilizar nos testes. Os testes foram feitos
com uma carga RL e com um motor de 220 Vcc /0,9A/1800rpm.
7/28/2019 Eduardo Leandro Delp Up Po
12/56
2. O MOTOR CC2.1. Equaes de velocidade e torque
Tomou-se como base um motor CC de excitao separada (fig.2.1), mas com
o fluxo de campo mantido constante para simular um motor CC de m permanente,
muito usado em bicicletas eltricas e walk machines. A seguir sero apresentadas as
equaes do motor CC sob esta condio de operao.
A fig. 2.1 mostra o circuito do motor CC de excitao separada.
EV
IaR La a I
V
f
f
Figura 2-1- Circuito do motor CC de excitao separada
As equaes bsicas so:
meKE = (2.1)
aaIREV += (2.2)
aeeIKT = (2.3)
Para o motor de excitao separada considerando-se fluxo constante, tem-se:
KKe = (constante) (2.4)
Das equaes (2.1), (2.3) e (2.4), resulta:
mKE = (2.5)
ae KIT = (2.6)
Usando as equaes (2.2), (2.5) e (2.6), obtm-se:
a
a
mI
K
R
K
V= (2.7)
7/28/2019 Eduardo Leandro Delp Up Po
13/56
13
e
a
m TK
R
K
V2
= (2.8)
De acordo com (2.8) pode-se observar que a caracterstica Velocidade x Torque
do motor CC com excitao separada uma linha reta, como mostrado na fig. 2.2. Na
equao (2.6), pode-se observar que o torque varia linearmente com a corrente,
portanto a caracterstica Velocidade x Corrente equivalente caracterstica
Velocidade x Torque. Pode-se ento ter ampla variao de torque numa pequena faixa
de velocidade.
ex TmW Motor CC de excitaseparada1
0.5
0 0.5 1
Torque, p.u.
Velocidade,p.u.
Figura 2-2 - Caracterstica Velocidade x Torque
2.2. Mtodos de Controle de VelocidadeA relao de Velocidade x Torque para fluxo constante, equao (2.8) mostra
que a velocidade pode ser controlada de duas formas:
- Controle por tenso de armadura.
- Controle por resistncia de armadura.
O controle por resistncia de armadura apesar de ser simples e barato, no
muito utilizado, pois dissipa muita potncia e, portanto, tem baixa eficincia. O
controle por tenso de armadura o mais utilizado, j que a dissipao de potncia
mnima e existem diversas tcnicas de controle.
7/28/2019 Eduardo Leandro Delp Up Po
14/56
14
3. CONTROLE POR TENSO DE ARMADURA CHOPPERSPara a aplicao pretendida, onde a fonte de potncia uma bateria, faz-se
necessrio o uso de um conversor CC-CC, denominado chopper. Um chopper pode
ser considerado um equivalente do transformador em corrente contnua, porm com
uma variao contnua da tenso de sada. Assim como o transformador, um chopper
usado para abaixar ou aumentar a tenso.
Os choppers, muito usados em controle de motores CC, possibilitam um
controle de acelerao suave, tm alta eficincia, rpida resposta dinmica, so leves e
de tamanho reduzido, e possibilitam realizar a frenagem regenerativa mesmo em
baixas velocidades. So muito usados em frenagem regenerativa de motores CC,
devolvendo energia para a fonte nas freqentes paradas, e nas aceleraes foradas por
agentes externos. Tambm so usados em reguladores de tenso CC (fontes
chaveadas).
Para o controle de motores CC em malha aberta e em malha fechada, o
chopper oferece uma grande vantagem em relao aos retificadores controlados: a alta
freqncia de chaveamento da tenso de sada faz com que o ripple na corrente de
armadura seja pequeno, e a regio de conduo descontnua no grfico Velocidade x
Torque (proporcional tenso x corrente) tambm seja muito pequena.
3.1. Chopper Abaixador (Buck) com carga RLE - Princpio de OperaoO chopper abaixador, tambm conhecido como chopper classe A, produz
uma tenso na sada que varia de 0 a 100% da tenso de entrada e muito usado em
fontes reguladas de potncia e principalmente no controle de velocidade de motores
CC. O circuito do conversor buck mostrado na fig. 3.1. Quando a chave CH est
fechada (intervalo de tempo t1) a tenso Vs alimenta a carga, e a corrente I1 cresce.Quando a chave CH est aberta (intervalo de tempo t2) a tenso na carga igual a zero,
e a corrente (I2) de descarga do indutor flui pelo diodo de roda-livre. A figura 3.2
mostra as formas de onda para conduo contnua. Imn e Imx so determinadas em
funo do mximo ripple de corrente desejado.
A Tenso mdia na sada dada por:
7/28/2019 Eduardo Leandro Delp Up Po
15/56
15
=11 t
OOO dtv
TV =
SVT
t1 =S
kV (3.1)
Mas tambm pode ser escrita da seguinte forma:
OO
IREV .+= (j que a tenso mdia no indutor zero) (3.2)
Corrente mdia:
k
II S
O = (3.3)
(a) Chopper abaixador com carga RLE
R
--
++CH
I
V
L
E
E
L
+
-
I 1
R
(b) Circuitos equivalentes
R
2I
L
E
D
D
Modo 1 Modo 2
+
-
-++
-
VS
SV
I
O
S
Figura 3-1 (a) Chopper abaixador com carga RLE. (b) Circuitos equivalentes.
Mximo ripple de corrente:
mnmxIII = (3.4)
fL
V
I
S
mx 4=
(3.5)
Razo cclica:
S
O
V
V
T
tk == 1 (3.6)
7/28/2019 Eduardo Leandro Delp Up Po
16/56
16
0 t
I
t0 kT T
kT T
TkT
0
0 t
t
VO
SV
t1 2t
IS = 1I
mxIImn
I 2
mnIImx
mxIImnOI
T
Figura 3-2 Formas de onda para conduo contnua de corrente.
A razo cclica k, pode variar de 0 a 1 variando-se t1 ou T. Consequentemente, a
tenso de sada Vo pode variar de 0 a VS atravs da variao de k, controlando o fluxo
de potncia.
Existem duas formas de variao da razo cclica k: operao com freqnciaconstante e operao comfreqncia varivel.
Freqncia constante a freqncia f (ou perodo T ) de operao do chopper
mantida constante, e o tempo de chave fechada (t1) variado. A largura de pulso
variada e esse tipo de controle chamado Pulse-Width-Modulation (PWM).
7/28/2019 Eduardo Leandro Delp Up Po
17/56
17
Freqncia varivel a freqncia f de operao do chopper variada, e
ambos os tempos t1 e t2 so mantidos constantes. chamada modulao por
freqncia. Esse tipo de controle gera muitas harmnicas e a implementao de filtros
dificultada.Neste projeto ser utilizado o mtodo de modulao por largura de pulso-PWM.
3.1.1. Normalizao:
Dividindo a equao 3.2 por Vs:
S
o
SS
o
V
IR
V
E
V
V .+= (3.7)
Onde:
kV
V
S
o= ; a
V
E
S
= ; NS I
R
V= ; NI corrente mdia de normalizao (3.8)
Da:
akI
I
N
o= (3.9)
Da equao de potncia (P=VI) e das equaes 3.8 e 3.9, a potncia mdia
normalizada pode ser escrita da seguinte forma:
)(.
.
.akk
IV
IV
IV
P
NS
oo
NS
o== (3.10)
Com base na anlise das equaes 3.7 a 3.10, conclui-se que:
1a para funcionamento correto do circuito. (3.11) ak Para que se tenha corrente mdia no circuito. (3.12)
Portanto:
1 ka (3.13)E a potncia mdia na carga satisfaz a seguinte equao, que representada
graficamente na figura 3.3:
)1(.
0 aIV
P
NS
o (3.14)
7/28/2019 Eduardo Leandro Delp Up Po
18/56
18
a
1,0
(1-a)
1,0a
k
Po/Vs.In
Figura 3-3 Potncia mdia na carga normalizada em funo da razo cclica.
3.2. Chopper elevador (Boost) Princpio de OperaoO Chopper elevador da figura 3.4, tambm conhecido como chopper classe B
ou boost, produz na sada uma tenso que maior que a tenso de alimentao,
baseado na carga e descarga do indutor L atravs do chaveamento da chave CH. As
formas de onda so mostradas na figura 3.5.
DI
ICH
_
+
aV
b
aL
Carga
I
-
+
CH
Io
VS
S D1
C1
Figura 3-4 Chopper elevador circuito equivalente.
7/28/2019 Eduardo Leandro Delp Up Po
19/56
19
T
TkT
oV
SV
CH
0 t
V
I
t0
D
I1
I2
kT T
T
T
TkT
2I
1I
CH
I1
I2
S
kT T0
0
t
t
T
I
IS
I
t1 t2
1t t2
1t t2
1t t2
Figura 3-5 Formas de onda.
Durante o intervalo de tempo t1, a chave CH est fechada e ICH = IS a corrente
de magnetizao do indutor. Durante o intervalo de tempo t2, a chave CH est aberta e
IS=ID a corrente que flui pelo circuito formado pelo capacitor e pela carga. Devido s
caractersticas da indutncia, a tenso se eleva rapidamente no momento que a chave
CH abre, e a corrente decai de acordo com uma exponencial. No instante que a chave
CH estiver abrindo, a corrente da fonte IS e a corrente da carga no so iguais. Na
7/28/2019 Eduardo Leandro Delp Up Po
20/56
20
ausncia do capacitor C1, o turn-off da chave CH forar as duas correntes terem o
mesmo valor, ou seja, durante o turn-off o capacitor drena essa diferena de corrente.
O capacitor C1 tambm serve para reduzir o ripple de tenso na carga. O diodo D1
previne contra correntes reversas que possam vir da carga para a fonte ou para a chaveCH.
Para entender melhor a ao step-up (elevador), o capacitor C1 assume um valor
suficientemente grande para manter constante a tenso Va na carga.
A tenso mdia na carga ser dada por:
)1( k
VV Sa
= (3.15)
De acordo com a equao 3.15, teoricamente a tenso de sada Va pode ser
escolhida de VS at , variando k de 0 a 1. Na prtica Va pode ser controlado de VS
at uma tenso muito superior a VS, e este limite mximo para a tenso V a vai
depender do capacitor C1, das caractersticas da carga e do prprio chopper (chaves,
diodos, etc.).
A ondulao de corrente dada por:
L
kTV
L
tVI SS
... 1== (3.16)
Uma das grandes vantagens do chopper elevador o baixo ripple na corrente dafonte. muito utilizado nos carregadores de baterias de veculos eltricos, no
acionamento de motores de corrente contnua de tenso maior que a da fonte
disponvel, e em freios regenerativos de veculos eltricos como carros de golfe,
trolleys, bicicletas eltricas e outros.
3.3. Chopper abaixador/elevador Operao em dois quadrantes
Tambm conhecido como chopper classe C, o chopper abaixador/elevador
muito utilizado no controle de servo motores e nas situaes que requerem uma
transio suave entre a ao motora e a frenagem, e vice-versa. Uma estrutura muito
utilizada a mostrada na figura 3.6. A chave CH1 e o diodo D2 constituem um
chopper abaixador (chopper classe A) que opera durante a ao motora direta. A
7/28/2019 Eduardo Leandro Delp Up Po
21/56
21
chave CH2 e o diodo D1 constituem um chopper elevador (chopper classe B) que
opera durante a frenagem regenerativa direta. Portanto o chopper classe C opera em
dois quadrantes: ao motora direta (+V e +I) e frenagem regenerativa direta (+V e -I).
Ambos os choppers so controlados simultaneamente, de forma que o fluxo depotncia pode ser invertido suavemente. Para isso as chaves CH1 e CH2 so fechadas
alternadamente. As principais formas de onda so mostradas na figura 3.7, onde
tambm so mostrados os intervalos de conduo de cada chave e de cada diodo.
Durante o perodo T de chaveamento, CH1 est fechada no intervalo de tempo
que vai de zero a kT, e a chave CH2 est fechada no intervalo de tempo que vai de kT
a T. Para que no ocorra curto-circuito, as chaves CH1 e CH2 nunca podero estar
fechadas no mesmo instante, por esse motivo introduzido um atraso (delay) entre o
turn-off da chave CH1 e o turn-on da chave CH2, e vice-versa.
+
-
Figura 3-6 Chopper classe C - circuito bsico
Na figura 3.7, foi desconsiderado o intervalo de tempo entre o turn-off de
uma chave o turn-on da chave complementar, visto que muito pequeno para ser
representado nesta figura. Os sinais de controle das chaves CH1 e CH2 so
respectivamente Vc1 e Vc2 , e assumido que as chaves conduzem somente quando o
sinal de controle est em nvel alto. Esta figura mostra as formas de onda para
operao motora (corrente positiva), e frenagem (corrente negativa) senda esta ltima
7/28/2019 Eduardo Leandro Delp Up Po
22/56
22
causada por um aumento de velocidade do motor, por exemplo, durante um declive, o
que resulta numa diminuio da razo cclica.
V
t1
T
t0 TkT
t2
c1
c2
kT T0 t
V
I
t0kT
a
o
t
V
CH1Conduo dos diodose das chaves
VSE EVS
D2 CH1 D2 D2 D1
t3
T T T
Figura 3-7 Chopper classe C formas de onda e conduo das chaves e diodos
Com relao ao chopper classe C, para este modo de controle PWM, pode-se
destacar quatro pontos:
1) Neste circuito a conduo descontnua no acontece, independentementeda freqncia de operao. A circulao da corrente de roda-livre se d no
momento que CH1 est desligada e o diodo D2 est conduzindo, e isto
esperado no intervalo de tempo TtkT , que tambm o intervalo de
tempo que a chave CH2 recebe o sinal de controle. Se a corrente Ia chegar
7/28/2019 Eduardo Leandro Delp Up Po
23/56
23
a zero no intervalo de roda livre, a fora contra-eletromotriz ir
imediatamente fazer com que a corrente flua na direo reversa passando
pela chave CH2. Similarmente, quando CH2 est desligada e D1
conduzindo e a corrente chegar a zero, CH1 conduzir imediatamenteporque Vc1 est em nvel alto e VS > E.
2) Desde que no exista conduo descontinua, a corrente estar fluindo todoo tempo. Assim, durante o intervalo de tempo t1, a armadura estar
conectada fonte atravs de CH1 ou D1, consequentemente, a tenso
aplicada nos terminais do motor ser igual a Vs e a taxa de variao de Ia
ser positiva porque VS > E. Similarmente, durante o intervalo de tempo
t3, a armadura do motor estar conectada a CH2 ou D2, consequentemente,
a tenso aplicada nos terminais do motor ser zero e a taxa de variao de
Ia ser negativa. Isso explica a natureza das formas de onda de VO e Ia.
3) Durante o intervalo de tempo t1, a corrente Ia que positiva flui por CH1,equando D1 est em conduo a corrente negativa. A corrente na fonte
flui somente nesses intervalos de tempo e igual a Ia. Durante o intervalo
de tempo t3, a parte da corrente Ia que positiva flui por D2 e a parte que
negativa flui por CH2.
4) A partir das formas de onda da figura 3.7:So kVV = (3.21)
E da equao bsicaaa
IRE+=oV , pode-se obter:
a
S
aR
EkVI
= (3.22)
A equao 3.22 pode ser expressa da seguinte forma:
SS
aa
V
Ek
V
RI=
S
a
V
ERaIk
+=
)((3.23)
7/28/2019 Eduardo Leandro Delp Up Po
24/56
24
A equao 3.22 mostra que a operao motora direta ocorre quando
kV
E
S
< , e que a frenagem regenerativa ocorre quando kV
E
S
> . A operao
a vazio acontece quandoSV
Ek = .
O mximo ripple de corrente pode ser dado pela equao 3.5, e no depende
da velocidade do motor. Uma mudana na velocidade para um dado valor de k,
somente muda o valor da corrente e no muda o ripple.
Supondo que o conversor esteja operando a vazio, ento Ia mdio ser zero e
sua forma de onda ser simtrica ao eixo do tempo. Um decrscimo na velocidade
causar um acrscimo na corrente e a forma de onda de Ia se deslocar para cima.
Quando Ia for maior que o mximo ripple, Ia ser sempre positiva e somente D2 ou
CH1 estaro conduzindo. Embora CH2 esteja recendo sinal de controle em nvel alto,
CH2 no conduzir devido polarizao reversa aplicada pelo diodo D2 em conduo.
Desde que o ripple seja at 5% da corrente nominal, CH2 e D1 tero que conduzir
somente quando o motor estiver operando em carga baixa.
Similarmente, um incremento na velocidade poder produzir uma corrente Ia
negativa e a forma de onda da corrente se deslocar para baixo. Enquanto a corrente
for negativa, esta estar fluindo por CH2 e D1, e ento, CH1 e D2 no tem nenhumachance de conduzir (aps o intervalo de tempo t3 fig.3.7).
A discusso precedente mostra que durante a ao motora direta a corrente flui
por CH1 ou por D2, e durante a frenagem regenerativa a corrente flui por CH2 ou D1.
7/28/2019 Eduardo Leandro Delp Up Po
25/56
25
4. O ACIONAMENTO PROPOSTOO acionamento CC-CC proposto uma implementao do chopper
abaixador/elevador ou chopper classe C, sendo as chaves do tipo MOSFETs, e o
controle destas, feito pelo microcontrolador PIC16F876 da microchip. O
microcontrolador recebe o sinal de referncia de velocidade e os sinais dos sensores de
corrente e de tenso, previamente filtrados por filtros passa - baixa, para ento, usando
um controlador PI digital, comandar o chaveamento dos MOSFETs via sadas PWM
do PIC, fechando assim as malhas do circuito.
4.1. O circuito simplificadoNa figura 4.1 mostrado o circuito simplificado do acionamento proposto. O
capacitor C1 alisa a tenso da fonte. Os resistores R1 e R2 formam um divisor de
tenso para monitorao da tenso no capacitor C1, de forma que a energia a ser
transferida do motor para a fonte, durante a frenagem, possa ser dissipada pelo resistor
Rd atravs do comando da chave CH3. Esta monitorao da tenso no capacitor e
dissipao de potncia pelo resistor R6 se d pelo fato da no disponibilidade de uma
fonte receptora para testes do conversor. No momento que a tenso comear a subir
alm da tenso na fonte, o divisor de tenso formado por R1 e R2 manda um sinalanalgico que equivale a uma tenso ligeiramente acima da tenso da fonte e desta
forma o microcontrolador comanda o fechamento da chave CH3 via sada digital a ser
amplificada pelo drive de tenso.
Os MOSFETs CH1 e CH2 possuem diodos intrnsecos D1 e D2, e constituem o
conversor abaixador/elevador (chopper classe C) mostrado na figura 3.6 e descrito no
item 3.3.
Os resistores R3 e R4 formam um divisor de tenso para leitura da tenso nosterminais do motor (sensor de velocidade), que proporciona uma boa estimativa da
velocidade como mostrado na equao 2.5.
7/28/2019 Eduardo Leandro Delp Up Po
26/56
26
10
tensoDrive de
5
D2
D1
+
-
PWM1
CLK
9
21 13
8,1920
+5V
PIC16F876
C1
-
+ MCC
Vs
Vo
+
-
-
R6
+
CH1
CH2D3CH3
Gate driveIR2104
FPB1
FPB2
AMPLIFICADOR
SOMADOR0-5V
0-5V0-5V
2
4
FPB3
+5V
3FPB4R7velocidade
Referncia de
POT1
C2
R8
Figura 4-1 Circuito simplificado para controle do acionamento.
O resistor R5 um resistor shunt de 0,05 Ohms e 3W, que constitui o sensor
de corrente. Ele produz uma queda de tenso proporcional corrente, que devidamente
amplificada e filtrada, proporcionar uma boa preciso quanto leitura da corrente.
O capacitor C2 filtra as altas freqncias que podem influenciar no
funcionamento dos MOSFETS CH1 e CH2.
O resistor R8 utilizado para fins de teste do conversor durante o
desenvolvimento do prottipo, limitando a corrente que pode fluir pelos MOSFETSprotegendo o circuito contra altas correntes de falta. No entanto para uma boa
proteo, se faz necessrio o uso de um circuito que detecte o curto-circuito e desligue
a fonte num intervalo de tempo suficientemente pequeno, para que no ocorra a
queima de algum componente. Essa proteo no foi implementada neste projeto.
7/28/2019 Eduardo Leandro Delp Up Po
27/56
27
4.1.1. Drive de tenso:O drive de tenso constitudo por um transistor BC548 pnp, funcionando
em corte ou em saturao. Quando em corte o transistor aplica 15V de uma fonte
externa, no gate do MOSFET CH3 e este entra em saturao. Quando em saturao, otransistor aplica 0V e o MOSFET entra em corte. Desta forma, ser necessria uma
lgica invertida para comandar o MOSFET CH3. D3 o diodo intrnseco do MOSFET
CH3.
4.1.2. Filtros passa-baixa (FPB):Os filtros passa-baixa utilizados tm freqncia de corte de 1,2kHz, e so
necessrios para filtrar as altas freqncias da tenso e da corrente, de forma que o
microcontrolador leia apenas a componente CC.
4.1.3. Amplificador: usado para amplificar o sinal de corrente (na forma de tenso) para um
patamar compatvel com o microcontrolador, j que o sinal lido nos terminais do
resistor R5 varia de zero a aproximadamente 130mV e amplificado este varia de -2,5 a
+2,5V.
4.1.4. Somador:Utilizado para somar cerca de 2,5V ao sinal de corrente, j que este pode ter
valores negativos, e o microcontrolador no recebe sinais negativos. O sinal de
corrente que pode variar -2,5 a +2,5V, passa a variar de 0 a 5V, que agora
compatvel com o microcontrolador e passa a ser tratado em software, em que 2,5V
significa que a corrente igual a zero.
4.1.5. Gate-drive IR2104:O gate-drive utilizado para acionamento dos MOSFETS o IR2104 da
International Rectifier, que comanda os dois MOSFETS de uma s vez,
permitindo nesse caso especfico, gerar o segundo sinal PWM que vai comandar o
7/28/2019 Eduardo Leandro Delp Up Po
28/56
28
MOSFET CH2 a partir do PWM1 e de uma entrada shutdown que estar sempre
em nvel alto. Isso se deve ao fato que o segundo PWM simplesmente o
complementar do primeiro com um tempo morto introduzido entre a descida de um e a
subida do outro. O tempo morto introduzido pelo gate drive IR2104 e tem umvalor fixo tpico de 520ns.
4.2. O sistema de controleO sistema de controle ser composto de uma malha interna de corrente e uma
malha externa de velocidade, como mostra a figura 4.2.
m
H (s)
aVV*aeIaaI*e I*a
afImf
mMOTORK
Vmx
Vmin
Kp+
-Imin
Imx
-
+Kp+K /s
*1 2
1
cim
Ke
+
c
2H (s)
Ia
mf
E
Figura 4-2 Diagrama de blocos
*m a referncia de velocidade e mf a velocidade medida na forma de
tenso nos terminais do motor, filtrada por um filtro passa-baixa ativo de segunda
ordem H2(s). O erro de velocidade em passa por um controlador PI e produz a
corrente de referncia I*a , que devidamente limitada por software. Iaf a corrente
medida em forma de tenso na sada do motor atravs de um resistor shunt de alta
preciso, e filtrada por um filtro passa-baixa ativo de segunda ordem H1(s). Kp2 forma
um controlador proporcional, que a partir do erro de corrente e Ia somado tenso de
armadura calculada, produz a tenso de referncia, que devidamente limitada via
software e com a qual calculada a razo cclica de operao do conversor. K c o
ganho do conversor.
7/28/2019 Eduardo Leandro Delp Up Po
29/56
29
4.3. Operao do conversorA principal aplicao do conversor proposto o acionamento de veculos
eltricos, portanto, sero apresentadas a seguir as vrias situaes de operao do
conversor de acordo com a figura 4.2 e com as situaes possveis para veculosmotorizados.
4.3.1 Acelerando Operao Buck
mm >* e 0aI
Neste caso, o erro de velocidademe ser positivo e a corrente de referncia
*aI
ser positiva, indicando assim operao motora direta. O erro de correnteIa
e tambm
ser positivo e multiplicado por uma constante determinar a tenso de referncia a
partir da qual calculada a razo cclica.
4.3.2 Velocidade de cruzeiro - Cruise control
mm =* e 0>aI
Nesta situao o erro de velocidadem
e
zero e o conversor opera com razo
cclica constante.
4.3.3 Desacelerando Operao Boost (frenagem)
mm
7/28/2019 Eduardo Leandro Delp Up Po
30/56
30
porm essa situao fisicamente distinta daquela descrita anteriormente. Neste caso
no a referncia que trazida para um patamar inferior velocidade do motor, mas
sim a velocidade do motor que aumenta, aumentando a fora contra-eletromotriz e
invertendo o fluxo de potncia.
7/28/2019 Eduardo Leandro Delp Up Po
31/56
31
5. O SOFTWARE DE CONTROLEO software foi implementado em linguagem de programao C, utilizando o
compilador PCW C compiler IDE verso 3.32, prprio para programao de
microcontroladores das famlias 16F e 18C da microchip. Para a descarga do
programa .hex no microcontrolador foi utilizado o software MPLAB IDE verso 7.5
e o programador PIC START Plus. A figura 4.1 mostra o algoritmo do software
implementado.
Inicializao Parte do software que inicializa o PIC configurando as sadas
PWM, as entradas analgicas, sada digital e o timer de interrupo, alm de zerar
todas as variveis e fazer uma pr-leitura das portas analgicas. A pr-leitura analgica
necessria na inicializao, pois ao inicializar o programa propriamente dito feito
uma mdia dos valores analgicos lidos anteriormente com os atuais, desta forma, se
no fosse feita essa pr-leitura, o primeiro valor seria irreal e esse erro se propagaria
medida que fossem feitas novas leituras.
Background Loop Janela de tempo do software. Neste estgio o PIC
fica esperando por um timer de interrupo interna para que todo o software seja
executado. Depois que o software executado, o PIC espera at a prxima interrupo
para execut-lo novamente. O timer de interrupo gerado internamente no PIC enesse caso foi configurado para 1ms, e define tambm o tempo de amostragem dos
sinais, j que os sinais sero lidos uma vez a cada execuo do software. Por uma
questo de simplicidade, optou-se por utilizar um nico tempo de amostragem de 1 ms
para ambas as malhas corrente e velocidade. A separao dinmica foi obtida com a
seleo adequada dos ganhos dos controladores.
(1) Leitura das variveis analgicas.
(2)
Clculo da mdia. A mdia feita com os valores atuais e os valores daexecuo anterior do software, exceto na primeira execuo, como j descrito na
inicializao.
(3) Clculo da tenso de armadura. Neste estgio calculada a tenso de
armadura utilizando o valor da corrente de armadura lida e devidamente tratada em
software, o valor da tenso nos terminais do motor e o valor de software da resistncia
7/28/2019 Eduardo Leandro Delp Up Po
32/56
32
da armadura. Para realizao dos clculos foi utilizado o conceito de aritmtica
fracionria.
(4) Clculo da velocidade do motor. Neste estgio, o clculo da velocidade
feito multiplicando-se o valor da tenso calculado anteriormente pelo inverso daconstante eltrica do motor. Para realizao dos clculos foi utilizado o conceito de
aritmtica fracionria.
(5) Clculo do erro de velocidade. a diferena entre a velocidade de
referncia (valor lido) e a velocidade calculada em (4).
(6) Controlador PI. Faz o controle proporcional e integral da corrente a
partir do erro de velocidade, ou seja, um controle de corrente (torque) comandado
por tenso (velocidade). composto por duas partes: controle proporcional (constante
Kp1 multiplicada pelo erro de velocidade) e pelo controle integral (constante Ki
multiplicada pelo tempo de amostragem e pelo erro de velocidade). O controle integral
acumula seu valor anterior, de forma que a segunda parcela do PI torna-se um
somatrio do valor atual com os valores anteriores.
(7) Limitao por software da corrente de armadura.
(8) Clculo do erro de corrente.
(9) Clculo da tenso de referncia da armadura. um controlador
proporcional (constante Kp2 multiplicada pelo erro de corrente e somada com a tenso
de armadura calculada) utilizado para obter-se a tenso de armadura que resulte na
corrente desejada.
(10) Limitao da tenso de armadura por software.
(11) Clculo da razo cclica.
(12) Clculo do tempo em nvel alto do PWM. Essa a varivel necessria
para habilitar o PWM.
(13) Habilita o PWM(14) Teste da tenso Vs nos terminais da fonte. Caso Vs seja maior que o
valor nominal, condio prevista quando ocorre a frenagem, comandado o
fechamento da chave CH3 (via sada digital) dissipando desta forma a energia da
frenagem no resistor R6.
7/28/2019 Eduardo Leandro Delp Up Po
33/56
33
(15) Atualizao das variveis para ser feita a mdia na execuo seguinte, e
atualizao do erro de velocidade para clculo da parte integral do controlador PI na
prxima execuo.
E =
* -
* , V,
* , V,
PW MAtualiza
CHt = d.fon
. 1Vad=V
kaV * > Va m x
m naV * < Va
k
N
N
m xaV* = Va k
kaV * = Va m n
S
S
aV * =k Kp .e +E2 I a k a k
ka
S
S
a
m naI* = Ia k
kaI* = I am x
N
N
aIe = aI* - Ik k k
kaI* < I a m n
m xaI* > Ia k
kaI* =
Tint
SmmaI ,
kkkk
kkk m m=e m
Smma
Clculo da mdiaI ,
Ler entradas analgicas
Inicializao
V
V
V -R .mk a
Ia k
km a k= E
k
variveisAtualiza
N
m x
N
S
SfrenagemS kV SV>
liga
frenagemdesliga
< VSVkS m n
R E S E T
"BackgroundLoop"
(1 )
(2 )
(3 )
(4 )
(5 )
(6 ) Kp .e1 m k km
Ki.T .e+k= 0 am
(7 )
(8 )
(9 )
(10)
(11)
(12)
(13)
(14)
(15)
8
Figura 5-1 Algoritmo
7/28/2019 Eduardo Leandro Delp Up Po
34/56
34
6. O PROTTIPONa figura 6.1 so mostrados os equipamentos utilizados para a realizao de
testes com o prottipo:
1 Fonte de potncia;
2 Motor ;
3 Ampermetro para medio de corrente no resistor de frenagem;
4 Placa de controle;
5 Placa de fora;
6 Ponteira de tenso isolada;
7 Ampermetro para medio de corrente na carga;
8 Mdulo ponteira de corrente;
9 Carga RL utilizada para testes iniciais;
10 Programador PICstart plus;
11 Fonte simtrica -12V +12V;
12 Osciloscpio;
13 Computador;
Figura 6-1 - Bancada com prottipo em funcionamento
7/28/2019 Eduardo Leandro Delp Up Po
35/56
35
Figura 6-2 - Prottipo 1) Placa de fora 2) Placa de controle
6.1. Formas de onda6.1.1 Modo Buck com carga RL
Teste feito com uma carga RL, onde:
R=0 a 200; L=59mH; RL=18
A tenso de alimentao da fonte de 120Vcc.
No caso do conversor operando em 50% do ciclo de trabalho (figura 6.3),variou-se a carga R de 200 a 40 (do ponto de vista da rede isso significa aumentar
a carga) e observou-se a corrente variando de 0,6 a 3A sem variao no ciclo de
trabalho do conversor. Isso mostra que a malha de corrente no funciona nessa
situao, com qualquer ganho dos controladores, pois no h regulao de corrente.
No entanto, para operao prxima aos 100% do ciclo de trabalho foi possvel
observar uma resposta do sistema de controle da seguinte forma: com a referncia de
velocidade em 100% observou-se o ciclo de trabalho em 100% e corrente na carga emtorno de 2A (carga R com aproximadamente 60 ). Ao aumentar a carga R a razo
cclica diminui, e ao diminuir novamente a carga R a razo cclica aumenta
novamente, tentando manter constante a corrente na carga.
7/28/2019 Eduardo Leandro Delp Up Po
36/56
36
O sistema de controle perde capacidade de resposta com aumento da carga R
acima da nominal, e quando o conversor est operando em 50% do ciclo de trabalho,
devido s limitaes do controlador tipo P na ausncia de fcem .
Os pequenos picos de corrente e tenso durante o chaveamento se devem corrente de recuperao reversa dos diodos intrnsecos dos MOSFETS.
Figura 6-3 - Operao em modo buck ciclo de trabalho em 50% (carga RL)
7/28/2019 Eduardo Leandro Delp Up Po
37/56
37
Figura 6-4 - Operao em modo buck ciclo de trabalho em 100% (RL)
6.1.2 Modo Buck com motor operando a vazio
Motor utilizado:
VN=220Vcc; IN=0,9A; Ra=40; Ivazio=0,1A;
Neste teste no foi possvel realizar uma variao de carga, pela no
disponibilidade de equipamento adequado para teste com este motor. O teste foi feito
com o motor operando a vazio com ciclo de trabalho em 50% (figura 6.5) e 100%
(figura 6.6).
7/28/2019 Eduardo Leandro Delp Up Po
38/56
38
Figura 6-5 - Operao em modo buck ciclo de trabalho em 50% (carga motor)
Figura 6-6 - Operao em modo buck ciclo de trabalho em 100% (carga motor)
7/28/2019 Eduardo Leandro Delp Up Po
39/56
39
6.1.3 Modo Boost (frenagem)
Motor utilizado:
VN=220Vcc; IN=0,9A; Ra=40; Ivazio=0,1A;
Neste caso, o motor estava operando no modo buck com ciclo de trabalhoem 100%, quando a referncia de velocidade trazida para prximo de zero. A figura
6.7 mostra a forma de onda obtida. No canal 1 mostrada a tenso no capacitor de
entrada e o canal 2 mostra a corrente no motor. A forma de onda no alto da figura no
canal 1 (tenso). Pode-se observar uma pequena variao da tenso no capacitor de
entrada de 120Vcc para cerca de 125Vcc instantaneamente. Tambm pode-se observar
a corrente negativa no motor em aproximadamente 0,5A.
Os resultados obtidos com este teste foram satisfatrios, visto que uma
variao de carga era impraticvel, e que o conversor foi projetado para operar com
um motor de 120Vcc, IN=2,8A e Ra=3.
Figura 6-7 - Operao em modo boost frenagem
7/28/2019 Eduardo Leandro Delp Up Po
40/56
40
7. CONCLUSOOs testes realizados no laboratrio de mquinas com o motor para o qual o
prottipo foi projetado, no foram bem sucedidos pois existe alguma interferncia
somente no laboratrio de mquinas. Os testes no LEPAC foram muito bons,
mostrando o funcionamento do conversor buck durante a ao motora direta, e do
conversor boost durante a frenagem regenerativa direta. Apenas foi possvel a
realizao de testes com o motor operando a vazio e metade de sua velocidade
nominal.
Para operao do conversor no modo buck com carga RL e ciclo de trabalho
em 50%, variou-se a carga e a razo cclica no variou, mostrando que para esta
situao o sistema de controle no responde. No entanto, para operao prxima aos
100% do ciclo de trabalho foi possvel observar uma resposta do sistema conforme
6.1.1. No era de se esperar que houvesse uma boa resposta com carga RL, j que o
conversor proposto para acionamento de um motor (carga RLE).
Para testes do conversor em modo boost, a referncia de velocidade foi
levada a 100% (com o motor operando a vazio) e depois de o motor estar com
velocidade mxima a referncia foi trazida para prximo de zero. Desta forma
observou-se uma corrente negativa fluindo do motor para a resistncia de dissipaoconforme 6.1.3.
Considerando a no disponibilidade de uma fonte receptora e interferncias
existentes somente no laboratrio de mquinas, os resultados foram satisfatrios e so
suficientes para demonstrar o funcionamento do prottipo, apenas no foi possvel
fazer um ajuste fino de ganho do controlador PI e do controlador Proporcional.
7/28/2019 Eduardo Leandro Delp Up Po
41/56
41
ANEXO A
O software de controle em linguagem C que foi compilado e implementado
no PIC.
PARTE 1 Inicializao ("adress_v1+.h")
#ifndef _ADRESSES__PIC__H__#define _ADRESSES__PIC__H__
// Timer2
#locate TMR2=0x11#locate T2CON=0x12
#locate PR2=0x92// CCP1#locate CCPR1L=0x15#locate CCPR1H=0x16#locate CCP1CON=0x17
// ADC#locate ADRESH=0x1E#locate ADCON0=0x1F#locate ADRESL=0x9E#locate ADCON1=0x9F#locate TXREG=0x19
#define Wait_Conversion() while(ADCON0 & 4)#define Start_Conversion() ADCON0 |= 4
unsigned int8 Vm_now, omega_mx_now, Ia_now, Vs_now;unsigned int8 Vm_ant, omega_mx_ant, Ia_ant, Vs_ant;unsigned int8 Vm_med, omega_mx_med, Ia_med, Vs_med;
unsigned int8 Ia_ref, omega_m, Ia;unsigned int8 erro_omega, erro_Ia;unsigned int8 acao_proporcional, Ra_x_Ia_8, acao_integral_8;unsigned int8 Ea, Va_ref;
unsigned int8 ton, Va_ref_aux;unsigned int16 Ra_x_Ia, Ia_16, Ea_16, omega_m_16, erro_Ia_16, Va_ref_16,ton_16;unsigned int16 erro_omega_16, acao_integral_16, erro_omega_ant_16;unsigned int16 acao_proporcional_16, acao_integral_ant, acao_integral,acao_integral_aux;
#define POSITIVO 0
7/28/2019 Eduardo Leandro Delp Up Po
42/56
42
#define NEGATIVO 1
unsigned int8 sinais;#bit sinal_erro_omega = sinais.0#bit sinal_erro_Ia = sinais.1#bit sinal_Ia = sinais.2#bit sinal_acao_integral_ant = sinais.3#bit sinal_acao_integral = sinais.4#bit sinal_Ia_ref = sinais.5
#define Ra 50#define Kix 80#define Kp1 130#define Kp2 255
#define IA_MAX 235 //positivo#define IA_MIN 235 //negativo
#define VA_MAX 255#define VA_MIN 0
#define VS_MAX 225#define VS_MIN 223
void Zera_Tudo(){
Vm_now = 0;omega_mx_now = 0;Ia_now = 0;Vs_now = 0;Vm_ant = 0;omega_mx_ant = 0;Ia_ant = 0;Vs_ant = 0;Vm_med = 0;omega_mx_med = 0;Ia_med = 0;
Vs_med = 0;omega_m = 0;acao_proporcional = 0;
Ra_x_Ia_8 = 0 ;Ra_x_Ia = 0 ;Ia_16 = 0 ;Ea_16 = 0 ;
7/28/2019 Eduardo Leandro Delp Up Po
43/56
43
omega_m_16 = 0 ;erro_Ia_16 = 0 ;Va_ref_16 = 0 ;ton_16 = 0 ;erro_omega_16 = 0 ;acao_integral_16 = 0 ;erro_omega_ant_16 = 0 ;acao_proporcional_16 = 0 ;acao_integral_aux = 0;acao_integral_ant = 0;Va_ref_aux = 0;acao_integral = 0;
sinal_erro_omega = POSITIVO;sinal_acao_integral_ant = POSITIVO;sinal_acao_integral = POSITIVO;sinal_Ia_ref = POSITIVO;sinal_Ia = POSITIVO;sinal_erro_Ia = POSITIVO;
}
void primeira_leitura(){
SET_ADC_CHANNEL(0); delay_us(10);Start_Conversion(); Wait_Conversion();
Ia_ant = ADRESH >> 1;SET_ADC_CHANNEL(1); delay_us(10);Start_Conversion(); Wait_Conversion();Vm_ant = ADRESH >> 1;SET_ADC_CHANNEL(2); delay_us(10);Start_Conversion(); Wait_Conversion();Vs_ant = ADRESH >> 1;SET_ADC_CHANNEL(3); delay_us(10);Start_Conversion(); Wait_Conversion();omega_mx_ant = ADRESH >> 1;
}
#endif //_ADRESSES__PIC__H__
PARTE 2 Programa principal// Acionamento Microcontrolado de um motor DC com frenagem regenerativa
7/28/2019 Eduardo Leandro Delp Up Po
44/56
44
#include #fuses HS,NOWDT,NOPROTECT,NOBROWNOUT#use delay(clock=20000000)#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7, BRGH1OK) //Jumpers:8to11, 7to12#include "adress_v1+.h"
#define RESOLUTION 128
int8 ciclos=0;
main(){
setup_ccp1(CCP_PWM); // Configure CCP1 as a PWM. The cycle timewill be
// (1/clock)*4*TMR2*(PR2+1).In this program// clock=20MHz and PR2=63(below) 63=003Fh. For the// possible selections the cycle time is:// (1/20000000)*4*1*256=51,2us or 19,531kHz// (1/20000000)*4*4*127=us or 9,692kHz ************
setup_timer_2(T2_DIV_BY_4, RESOLUTION, 1);setup_ADC_ports (RA0_RA1_RA3_ANALOG); // RA2 tambemsetup_ADC (ADC_CLOCK_INTERNAL);set_tris_b(0);output_high(pin_b0); // inciar com frenagem desligadaZera_Tudo();
primeira_leitura();set_pwm1_duty(0);
setup_timer_1(T1_INTERNAL|T1_DIV_BY_8);enable_interrupts(INT_TIMER1);enable_interrupts(GLOBAL);
while(1){}
}
#INT_TIMER1 //timer de interrupo em 1msvoid timer1_isr(){
set_timer1(64910); // Nint = 5.000.000 / (1/Tint) / 8// ciclos_T1 = 65535 - Nint
// set_timer1(ciclos_T1)
output_high(pin_b7); // para ver a janela de tempo
7/28/2019 Eduardo Leandro Delp Up Po
45/56
45
// LEITURAS DAS VARIVEIS ATUAISSET_ADC_CHANNEL(0); delay_us(10);Start_Conversion(); Wait_Conversion();Ia_now = ADRESH >> 1;SET_ADC_CHANNEL(1); delay_us(10);Start_Conversion(); Wait_Conversion();Vm_now = ADRESH >> 1;SET_ADC_CHANNEL(2); delay_us(10);Start_Conversion(); Wait_Conversion();Vs_now = ADRESH >> 1;SET_ADC_CHANNEL(3); delay_us(10);Start_Conversion(); Wait_Conversion();omega_mx_now = ADRESH >> 1;
// Clculo da mdiaIa_med = Ia_ant + Ia_now;Vm_med = Vm_ant + Vm_now;Vs_med = Vs_ant + Vs_now;omega_mx_med = omega_mx_ant + omega_mx_now;
// ACERTO DA CORRENTEif (Ia_med >= 130){
Ia = Ia_med - 130;sinal_Ia = POSITIVO;
}else{
Ia = 130 - Ia_med;sinal_Ia = NEGATIVO;
}
// CLCULO DA TENSO DE ARMADURAIa_16 = (int16) Ia; // Casting (mudana de tipo)Ra_x_Ia = Ia_16*Ra;Ra_x_Ia = Ra_x_Ia >> 8;
Ra_x_Ia_8 = (int8) Ra_x_Ia; // Castingif (sinal_Ia == POSITIVO){
if (Vm_med >= Ra_x_Ia_8){Ea = Vm_med - Ra_x_Ia_8;
}
7/28/2019 Eduardo Leandro Delp Up Po
46/56
46
else{Ea=5;}
}else{Ea=255;}
// CLCULO DA VELOCIDADE DO MOTORomega_m = Ea;
// CLCULO DO ERRO DA VELOCIDADE DO MOTORif (omega_mx_med >= omega_m){
erro_omega = omega_mx_med - omega_m;sinal_erro_omega = POSITIVO;
}else{
erro_omega = omega_m - omega_mx_med;sinal_erro_omega = NEGATIVO;
}
// CONTROLE PROPORCIONAL E INTEGRAL
//proporcionalerro_omega_16 = (int16) erro_omega;acao_proporcional_16 = erro_omega_16 * Kp1;acao_proporcional_16 = acao_proporcional_16 >> 8 ;acao_proporcional = (int8) acao_proporcional_16;
acao_integral_16 = erro_omega_16 * Kix;
// aao integral // sinal de erro_omega = sinal de acao_integral_16
if ((sinal_erro_omega == POSITIVO) && (sinal_acao_integral_ant ==POSITIVO)){acao_integral = acao_integral_ant + acao_integral_16;sinal_acao_integral = POSITIVO;//Teste de overflow positivo
if ((acao_integral < acao_integral_ant) || (acao_integral = acao_integral_ant){acao_integral = acao_integral_16 - acao_integral_ant;sinal_acao_integral = POSITIVO;}else{acao_integral = acao_integral_ant - acao_integral_16;sinal_acao_integral = NEGATIVO;}
}
if ((sinal_erro_omega == NEGATIVO) && (sinal_acao_integral_ant ==POSITIVO))
{if (acao_integral_16
7/28/2019 Eduardo Leandro Delp Up Po
48/56
48
}}
acao_integral_aux = acao_integral >> 8;acao_integral_8 = (int8) acao_integral_aux;
sinal_acao_integral_ant = sinal_acao_integral;acao_integral_ant = acao_integral;
//PI Ia_ref = acao_integral + acao_proporcional// sinal de erro_omega = sinal_acao_proporcional
if ((sinal_acao_integral == POSITIVO) && (sinal_erro_omega ==POSITIVO))
{Ia_ref = acao_integral_8 + acao_proporcional;sinal_Ia_ref = POSITIVO;//Teste de overflow positivo
if ((Ia_ref < acao_integral_8) || (Ia_ref < acao_proporcional)){
Ia_ref = 255;}
}
if ((sinal_acao_integral == POSITIVO) && (sinal_erro_omega ==NEGATIVO))
{if (acao_integral_8 >= acao_proporcional){Ia_ref = acao_integral_8 - acao_proporcional;sinal_Ia_ref = POSITIVO;}else{
Ia_ref = acao_proporcional - acao_integral_8;sinal_Ia_ref = NEGATIVO;}
}
if ((sinal_acao_integral == NEGATIVO) && (sinal_erro_omega ==POSITIVO))
7/28/2019 Eduardo Leandro Delp Up Po
49/56
49
{if (acao_integral_8 > 1;//PI
erro_omega_16 = (int16) erro_omega;acao_integral_16 = erro_omega_16 * Kix;acao_integral_16 = acao_integral_16 >> 8 ;acao_integral = (int8)acao_integral_16;
erro_omega_ant_16 = (int16) erro_omega_ant;acao_proporcional_16 = erro_omega_ant_16 * Kp1;acao_proporcional_16 = acao_proporcional_16 >> 8 ;
acao_proporcional = (int8) acao_proporcional_16;Ia_ref = Ia_acumulado;
// Clculo da ao INTEGRALif (sinal_erro_omega == POSITIVO){
Ia_ref_aux = Ia_ref + acao_integral;
7/28/2019 Eduardo Leandro Delp Up Po
50/56
50
//Teste de overflow positivoif ((Ia_ref_aux < Ia_ref) || (Ia_ref_aux < acao_integral))
Ia_ref_aux = 255;}
else // sinal negativo{
Ia_ref_aux = Ia_ref - acao_integral;//Teste de overflow negativoif ((Ia_ref_aux > Ia_ref) || (Ia_ref_aux > acao_integral))
Ia_ref_aux = 0;}
Ia_ref = Ia_ref_aux;
// Clculo da acao PROPORCIONALif (sinal_erro_omega_ant == POSITIVO){
Ia_ref_aux = Ia_ref - acao_proporcional;//Teste de overflow negativoif ((Ia_ref_aux > Ia_ref) || (Ia_ref_aux > acao_proporcional))
Ia_ref_aux = 0;}else // sinal negativo{
Ia_ref_aux = Ia_ref + acao_proporcional;
//Teste de overflow positivoif ((Ia_ref_aux < Ia_ref) || (Ia_ref_aux < acao_proporcional))Ia_ref_aux = 255;
}Ia_ref = Ia_ref_aux;
// LIMITADOR DA CORRENTE DE REFERNCIA DA ARMADURAif (Ia_ref > IA_MAX) Ia_ref = IA_MAX;
// if (Ia_ref < IA_MIN) Ia_ref = IA_MIN;
// CLCULO DO ERRO DA CORRENTE DE ARMADURAif ((sinal_Ia == POSITIVO) && (sinal_Ia_ref == POSITIVO)){
if (Ia_ref >= Ia){
erro_Ia = Ia_ref - Ia;sinal_erro_Ia = POSITIVO;
}
7/28/2019 Eduardo Leandro Delp Up Po
51/56
51
else{
erro_Ia = Ia - Ia_ref;sinal_erro_Ia = NEGATIVO;
}}
if ((sinal_Ia == NEGATIVO) && (sinal_Ia_ref == NEGATIVO)){
if (Ia_ref
7/28/2019 Eduardo Leandro Delp Up Po
52/56
52
Va_ref_16 = Va_ref_16 >> 8;Va_ref_aux = (int8) Va_ref_16;
if (sinal_erro_Ia == POSITIVO) //sinal_erro_Ia = sinal_Va_ref_aux{
Va_ref = Va_ref_aux + Ea;//Teste de overflow positivoif ((Va_ref < Va_ref_aux) || (Va_ref < Ea)){Va_ref = 255;
}}
if (sinal_erro_Ia == NEGATIVO){
if (Ea >= Va_ref_aux){Va_ref = Ea - Va_ref_aux;}else{Va_ref = 0;}
}// LIMITADOR DA TENSO DE REFERNCIA DA ARMADURA
if (Va_ref > VA_MAX) Va_ref = VA_MAX;if (Va_ref < VA_MIN) Va_ref = VA_MIN;// ATUALIZA PWM
ton = Va_ref >> 1; //Alternativa mais rpidaif (ton > 127) ton=127;set_pwm1_duty(ton);
// FRENAGEMif (Vs_med > VS_MAX) output_low(pin_b0);if (Vs_med < VS_MIN) output_high(pin_b0);
// ATUALIZA VALORES ANTERIORESIa_ant = Ia_med >> 1;
Vm_ant = Vm_med >> 1;Vs_ant = Vs_med >> 1;omega_mx_ant = omega_mx_med >> 1;output_low(pin_b7); // para ver a janela de tempo
}
7/28/2019 Eduardo Leandro Delp Up Po
53/56
53
ANEXO B
Esquemtico feito no software Eagle 4.11 para roteamento das trilhas e
confeco da placa de circuito impresso (somente para a placa de controle).
7/28/2019 Eduardo Leandro Delp Up Po
54/56
54
ANEXO C
Trilhas roteadas pelo Eagle 4.11 placa de controle.
Trilhas Lado dos componentes (lado de cima)
7/28/2019 Eduardo Leandro Delp Up Po
55/56
55
Trilhas Lado das soldas (lado de baixo)
7/28/2019 Eduardo Leandro Delp Up Po
56/56
56
REFERNCIAS BIBLIOGRFICAS
[1] DUBEY, Gopal K. Power Semiconductor Controlled Drives. Prentice-Hall
International. U.S.A.[2] MOHAN, Ned UNDELAND Tore M. ROBBINS Willian P. Power
electronics, Converters, Applications and Design, 2 ed. John Willey & Sons,
Inc. U.S.A, 1995.
[3] BERLIN, Howard M. OP-Amp Circuits and principles. 1 ed. SAMS, U.S.A,
1991.
[4] BARBI, Ivo Apostila do professor
[5] BOSE B. K. Introduction to Microcomputer Control. General ElectricCompany
[6] MICROCHIP Datasheet microcontrolador PIC16F87X - [on line].
Disponvel em URL: http://www.microchip.com/. [capturado em outubro de
2006].
[7] MICROCHIP Datasheet gate drive IR2104 [on line]. Disponvel em
URL: http://www.microchip.com/. [capturado em outubro de 2006].
[8] KOSOW, Irving L. Mquinas Eltricas e Transformadores. 8 ed. Globo.
So Paulo, 1989.
[9] UNIVERSIDADE FEDERAL DO ESPRITO SANTO. Biblioteca Central.
Normalizao e apresentao de trabalhos cientficos e acadmicos:guia
para alunos, professores e pesquisadores da UFES. 2. ed. Vitria, 1997.
[10] UNIVERSIDADE FEDERAL DO ESPRITO SANTO. Biblioteca Central.
Guia para normalizao de referncias bibliogrficas: NBR 6023. 2. ed.
Vitria, 1997.
Top Related