Fevereiro de 2013
Resumo
Serve este documento para retratar o estudo e trabalho desenvolvido com o objetivo de efetuar
a modelao e controlo de um motor DC brushless com fora contraeletromotriz sinusoidal. Na
reviso da literatura so apresentados os conceitos fundamentais necessrios para desenvolver o
projeto. No estado da arte so revelados os mtodos de controlo e estimao mais utilizados na
atualidade. No captulo referente s simulaes comportamentais avaliado o desempenho do
motor e dos controladores desenvolvidos com diversos testes e os respetivos resultados discutidos.
No captulo referente implementao prtica apresentada e descrita a montagem efetuada assim
como a programao do DSP, so discutidos os resultados prticos e comparados com os resultados
tericos obtidos atravs das simulaes. Finalmente so apresentadas as concluses finais, as
dificuldades encontradas e os possveis trabalhos futuros.
ii
Abstract
The main goal of this document is to portray the research and work developed with the purpose
of modelling and control of a brushless DC motor with sinusoidal back EMF. In the literature
review the basic background concepts necessary to develop the project are presented. In the state
of the art the most commonly employed control and estimation methods are revealed. In the
chapter concerning the behavioural simulations, the performance of the motor itself, as well as the
designed controllers, is assessed with a variety of tests and the obtained results are discussed. In
the chapter concerning the practical implementation, the system physical layout is presented and
described, as well as the DSP programming, the practical results are discussed and compared with
the theoretical ones obtained through simulations. At last, the final conclusions are presented, the
main difficulties encountered are listed and the possible future work indicated.
iii
iv
Contedo
1
Introduo
1.1 Motivao do Projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Estrutura da Dissertao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
2
3
5
5
8
8
10
10
11
13
14
18
27
27
29
30
31
31
32
35
35
37
38
44
48
49
50
51
52
53
55
55
57
59
60
vi
CONTEDO
Simulao Comportamental
3.1 Parmetros do Motor Simulados . . . . . . . . . . . . . . . . . . . .
3.2 Sensores Hall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Inversor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1 Trifsico Convencional de Seis Interrutores . . . . . . . . . .
3.4 Malha Aberta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.1 Primeiro Teste em Malha Aberta . . . . . . . . . . . . . . . .
3.4.2 Segundo Teste em Malha Aberta . . . . . . . . . . . . . . . .
3.5 Malha Fechada . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.1 Estimao da Fora Contraeletromotriz . . . . . . . . . . . .
3.5.2 Deteo do Cruzamento no Zero da Fora Contraeletromotriz
3.5.3 Estimao dos Sinais dos Sensores Hall . . . . . . . . . . . .
3.5.4 Estimao do Binrio . . . . . . . . . . . . . . . . . . . . . .
3.5.5 Estimao da Velocidade . . . . . . . . . . . . . . . . . . . .
3.5.6 Estimao da Posio do Rotor . . . . . . . . . . . . . . . . .
3.5.7 Controladores PID e Difusos . . . . . . . . . . . . . . . . . .
3.6 Concluses da Simulao Comportamental . . . . . . . . . . . . . .
Parte Experimental
4.1 Bancada de Trabalho . . . . . . . . .
4.2 BLDC . . . . . . . . . . . . . . . . .
4.3 DSP TMS320F28035 . . . . . . . . .
4.4 Fonte CC . . . . . . . . . . . . . . .
4.5 Interface Sensores Hall/DSP . . . . .
4.6 Interface DSP/MOSFETs . . . . . . .
4.7 Interface Transdutor de Corrente/DSP
4.8 Interface Inversor/DSP . . . . . . . .
4.9 Programao do DSP . . . . . . . . .
4.9.1 Malha Aberta . . . . . . . . .
4.9.2 Malha Fechada . . . . . . . .
4.10 Concluses da Parte Experimental . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
65
. 65
. 65
. 66
. 66
. 67
. 67
. 68
. 71
. 71
. 76
. 78
. 79
. 83
. 88
. 96
. 105
.
.
.
.
.
.
.
.
.
.
.
.
107
107
107
108
109
109
110
112
113
114
114
115
120
.
.
.
.
.
.
.
.
.
.
.
.
123
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
125
125
126
126
128
131
139
147
147
147
148
CONTEDO
vii
E Estimaes - Simulao
149
E.0.4 Estimao da Fora Contraeletromotriz Sinusoidal . . . . . . . . . . . . 149
E.0.5 Estimao da Fora Contraeletromotriz Sinusoidal Entre Fases . . . . . . 149
E.0.6 Estimao do Cruzamento do Zero da Fora Contraeletromotriz Entre Fases149
E.0.7 Estimao do Binrio com a Potncia Fornecida Pela Fora Contraeletromotriz Sinsuoidal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
E.0.8 Estimao do Binrio com a Potncia Fornecida Pela Fora Contraeletromotriz Trapezoidal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
E.0.9 Estimao da Fora Contraeletromotriz Trapezoidal . . . . . . . . . . . . 150
E.0.10 Estimao do Binrio com a Potncia Fornecida Pela Fora Contraeletromotriz Sinusoidal Entre Fases . . . . . . . . . . . . . . . . . . . . . . . 151
E.0.11 Estimao da Velocidade Pelo Cruzamento no Zero da Fora Contraeletromotriz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
E.0.12 Estimao da Velocidade Pelos Sensores Hall . . . . . . . . . . . . . . . 152
E.0.13 Estimao da Velocidade Pela Fora Contraeletromotriz Entre Fases . . . 152
E.0.14 Estimao da Velocidade Pela Fora Contraeletromotriz Por Fase . . . . 152
E.0.15 Estimao dos Sinais dos Sensores Hall . . . . . . . . . . . . . . . . . . 153
F Programao do DSP
155
F.1 Malha Aberta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
F.2 Malha Fechada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Referncias
171
viii
CONTEDO
Lista de Figuras
1.1
2.1
2.2
2.3
6
6
2.4
2.5
2.6
2.7
2.8
2.9
2.10
2.11
2.12
2.13
2.14
2.15
2.16
2.17
2.18
2.19
2.20
2.21
2.22
2.23
2.24
2.25
2.26
ix
7
7
9
9
11
12
12
12
14
15
17
18
19
19
20
20
21
22
23
24
26
28
28
28
LISTA DE FIGURAS
2.27 (a) Caractersticas v-i de um MOSFET;(b) Caractersticas v-i ideais de um MOSFET [6]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.28 MOSFET com dodo em antiparalelo. . . . . . . . . . . . . . . . . . . . . . . .
2.29 (a) Caractersticas de v-i de um GTO;(b) Caractersticas v-i ideais de um GTO. .
2.30 (a) Caractersticas v-i de um IGBT;(b) Caractersticas v-i ideais de um IGBT. . .
2.31 Inversor trifsico convencional. . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.32 Formas de ondas num inversor trifsico convencional com diferentes referncias
de tenso com comando em onda quadrada. . . . . . . . . . . . . . . . . . . . .
2.33 Drive de regulao de velocidade de um motor BLDC. . . . . . . . . . . . . . .
2.34 Formas de onda do controlador por histerese. . . . . . . . . . . . . . . . . . . .
2.35 Formas de onda do SPWM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.36 Formas de onda pela sobremodulao. . . . . . . . . . . . . . . . . . . . . . . .
2.37 Formas de onda geradas pela injeo do 3o harmnico. . . . . . . . . . . . . . .
2.38 Diagrama fasorial de um PMSM [1]. . . . . . . . . . . . . . . . . . . . . . . .
2.39 Perspetiva geral do FOC de um PMSM. . . . . . . . . . . . . . . . . . . . . . .
2.40 Oito vetores possveis por SVM de um inversor trifsico. . . . . . . . . . . . . .
2.41 Sequncia de transio no SVM entre o setor 1 e setor 2 [7]. . . . . . . . . . . .
2.42 Perspetiva geral de um DTC [8]. . . . . . . . . . . . . . . . . . . . . . . . . . .
2.43 Viso global da lgica difusa. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.44 Diferentes formas das funoes de pertena. a) triangular, b) trapezoidal, c) gaussiana
2.45 Exemplo de trs sets triangulares. . . . . . . . . . . . . . . . . . . . . . . . . .
2.46 a)Resultado difuso da fuzzyficao com u=2, b)Resultado difuso da fuzzyficao
com u=2,5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.47 Viso detalhada da lgica difusa. . . . . . . . . . . . . . . . . . . . . . . . . . .
2.48 a)Resultado difuso da inferncia com u=2, b)Resultado difuso da inferncia com
u=2,75 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.49 Viso global de um DTC sem sensor de posio de um BLDC [8]. . . . . . . . .
2.50 Viso global de um FOC Sensorless de um PMSM. . . . . . . . . . . . . . . . .
2.51 Viso global de um DTC-SVM (adaptado de [9]). . . . . . . . . . . . . . . . . .
2.52 Formas de onda da funo F [10]. . . . . . . . . . . . . . . . . . . . . . . . . .
2.53 Formas de onda da fora contraeletromotriz com informao da velocidade (r >0)
[11]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.54 Formas de onda da fora contraeletromotriz com informao da velocidade (r <0)
[11]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.55 Controlador de velocidade Difuso PID [12]. . . . . . . . . . . . . . . . . . . . .
2.56 Simulao do controlador Difuso PID [12]. . . . . . . . . . . . . . . . . . . . .
2.57 Motores de manes permanentes integrados num veculo ligeiro [13]. . . . . . . .
2.58 Visao global de uma drive com DSP. . . . . . . . . . . . . . . . . . . . . . . . .
2.59 a) Exemplo de um snubber RC; b) Exemplo de um snubber RCD (adaptado de [14]).
2.60 Filtro IE (adaptado de [14]). . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
56
56
58
60
63
63
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
66
67
67
68
68
68
68
69
29
30
30
31
33
34
35
36
37
38
38
39
40
41
42
43
44
45
45
45
46
47
49
50
52
53
54
LISTA DE FIGURAS
3.9 Formas de onda das tenses entre fases obtidas no segundo teste em malha aberta.
3.10 Sinais dos MOSFETs 1, 2 e 3 no primeiro teste em malha aberta. . . . . . . . . .
3.11 Ampliao das formas de onda das correntes nas fases do segundo teste em malha
aberta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.12 Sinais gerados pelos MOSFETs ligados a +Vdc no segundo teste em malha aberta.
3.13 Sinais gerados pelos MOSFETs ligados massa no segundo teste em malha aberta.
3.14 Estimao da fora contraeletromotriz sinusoidal em Simulink. . . . . . . . . . .
3.15 Estimao da fora contraeletromotriz trapezoidal em Simulink. . . . . . . . . .
3.16 Resultado da estimao da fora contraeletromotriz sinusoidal. . . . . . . . . . .
3.17 Resultado da estimao da fora contraeletromotriz trapezoidal. . . . . . . . . .
3.18 Relao entre fora contraeletromotriz sinusoidal estimada e a corrente na fase A.
3.19 Relao entre fora contraeletromotriz trapezoidal estimada e a corrente na fase A.
3.20 Resultado da estimao da fora contraeletromotriz sinusoidal com erro mximo.
3.21 Resultado da estimao da fora contraeletromotriz trapezoidal com erro mximo.
3.22 Perspetiva geral da estimao da fora contraeletromotriz sinusoidal entre fases. .
3.23 Resultados da estimao da fora contraeletromotriz entre as fases A e B. . . . .
3.24 Perspetiva geral do mtodo de gerao da funo Y usada na estimao do cruzamento no zero da fora contraleletromotriz em Simulink. . . . . . . . . . . . . .
3.25 Resultados da funao Y do primeiro teste em malha aberta. . . . . . . . . . . . .
3.26 Trem de impulsos gerado pela funao Y no primeiro teste em malha aberta. . . .
3.27 Sinais dos sensores Hall gerados durante o primeiro teste em malha aberta. . . . .
3.28 Sinal estimado do sensor Hall A gerado durante o primeiro teste em malha aberta.
3.29 Sinal estimado do sensor Hall B gerado durante o primeiro teste em malha aberta.
3.30 Sinal estimado do sensor Hall C gerado durante o primeiro teste em malha aberta.
3.31 Estimao do binrio atravs da equao do movimento em Simulink. . . . . . .
3.32 Estimao do binrio atravs da equao vetorial em Simulink. . . . . . . . . . .
3.33 Estimao do binrio com corrente trapezoidal e fora contraeletromotriz sinusoidal em Simulink. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.34 Estimao do binrio com corrente e fora contraeletromotriz trapezoidais em Simulink. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.35 Estimao do binrio com corrente e fora contraeletromotriz sinusoidais entre
fases em Simulink. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.36 Resultado da estimao do binrio com fora contraeletromotriz sinusoidal. . . .
3.37 Resultado obtido para a estimaao do binrio virtual para uma carga em degrau de
1 N.m. durante o segundo teste em malha aberta. . . . . . . . . . . . . . . . . .
3.38 Estimao da velocidade atravs do cruzamento no zero da fora contraleletromotriz em Simulink. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.39 Estimao da velocidade atraves dos sinais gerados pelos sensors Hall em Simulink.
3.40 Estimao da velocidade atravs da relao entre a constante de velocidade e fora
contraeletromotriz entre fases em Simulink. . . . . . . . . . . . . . . . . . . . .
3.41 Estimao da velocidade atravs da relao entre a constante de velocidade e fora
contraeletromotriz por fase em Simulink. . . . . . . . . . . . . . . . . . . . . .
3.42 Estimao da velocidade pela equao do movimento em Simulink. . . . . . . .
3.43 Resultado obtido da estimao da velocidade pelo cruzamento no zero. . . . . . .
3.44 Resultado obtido da estimao da velocidade pelos sensores Hall. . . . . . . . .
3.45 Resultado obtido da estimao da velocidade pela fora contraeletromotriz entre
fases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.46 Resultado obtido da estimao da velocidade pela fora contraeletromotriz por fase.
xi
69
69
71
71
71
72
72
73
73
73
74
74
74
75
75
76
77
77
77
78
79
79
80
80
80
80
81
81
82
84
84
84
85
85
86
86
86
87
xii
LISTA DE FIGURAS
LISTA DE FIGURAS
xiii
3.76 Resultado global obtido pelo controlador PI convencional e difuso PI aps o teste
dinmico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.77 Perspetiva geral do controlador PID simulado. . . . . . . . . . . . . . . . . . . .
3.78 Perspetiva geral do controlador difuso PD+I simulado. . . . . . . . . . . . . . .
3.79 Resultado global obtido pelo controlador PID convencional e difuso PD+I aps o
teste dinmico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.80 Resultado obtido pelo o controlador PID convencional para o segundo teste dinmico com estimaes discretas de velocidade e binrio. . . . . . . . . . . . . . .
3.81 Resultado obtido pelo o controlador difuso PD+I para o segundo teste dinmico
com estimaes discretas de velocidade e binrio. . . . . . . . . . . . . . . . . .
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.15
4.16
4.17
4.18
4.19
4.20
4.21
4.22
4.23
4.24
101
102
102
102
104
104
. . .
pelo
. . .
. . .
. . . . . . 125
mtodo 1
. . . . . . 127
. . . . . . 127
xiv
LISTA DE FIGURAS
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
132
133
134
135
136
137
138
C.1
C.2
C.3
C.4
C.5
C.6
C.7
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
140
141
142
143
144
145
146
Lista de Tabelas
2.1
2.2
2.3
2.4
2.5
2.6
2.7
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.12
3.13
3.14
3.15
3.16
3.17
3.18
3.19
3.20
3.21
27
32
54
55
55
55
56
xvi
LISTA DE TABELAS
3.22 Resultados do integral do erro absoluto dos controladores PID e difuso PD+I convencional para o teste dinmico. . . . . . . . . . . . . . . . . . . . . . . . . . . 105
3.23 Quadro resumo das vantagens e desvantagens das estimaes simuladas. . . . . . 106
A.1 Resultados experimentais da estimao da constante de velocidade. . . . . . . . . 126
A.2 Resultados experimentais da estimao da indutncia de fugas pelo mtodo 2. . . 128
A.3 Resumo do modelo do motor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Abreviaturas e Smbolos
Abreviaturas
AC
A/D
BLDC
CA
CC
D/A
DC
DSP
DTC
ECS
EMC
EMI
FFT
FOC
FPGA
GTO
IE
IGBT
MEA
MOSFET
N/A
PMSM
PWM
RFI
SVM
UAV
Alternating Current
Analgico para Digital
Brushless DC
Corrente Alternada
Corrente Contnua
Digital para Analgico
Direct Current
Digital Signal Processor
Direct Torque Control
Environmental Control System
Electromagnetic Compatibility
Electromagnetic Interference
Fast Fourier Transform
Field Oriented Control
Field-Programmable Gate Array
Gate Turn-off Transistor
Interferncia Eletromagntica
Insulated Gate Bipolar Transistor
More Electric Aircraft
Metal-Oxide-Semiconductor Field Effect Transistor
No aplicvel
Permanent Magnet Synchronous Motor
Pulse Width Modulation
Radio Frequency Interference
Space Vector Modulation
Unmanned Aircraft Vehicle
Smbolos
Bg
Bi
Bm
Br
C
d
D
eas
xviii
ebs
ecs
E
Em
Econd
fas ( )
fbs ( )
fcs ( )
fcom
fds ( )
fqs ( )
G
H
Hc
Hg
Hm
ia
ias
ib
ibs
ic
ics
id
isd
isd r
ifr
is
is r
is
is
iqs
iqs r
Is at
k
Ke
Kt
KT
Kv
Von
lg
lm
L
Laa
Lab , Lba
Lac , Lca
Lbb
Lbc , Lcb
Lcc
ABREVIATURAS E SMBOLOS
ABREVIATURAS E SMBOLOS
Ld
Lm
Ls
Lq
M
p
P
Pcond
Qrr
Rd
Rq
Rs
S
t
t0
tcom
ton
to f f
trr
T
T BJ
Te
Te
Ts
Ts1
Ts2
Tsin
Ttrap
vas
vbs
vcs
vrds
vs
vs
vrqs
V0 ,V7
V /F
Vgs
Vgs (th)
Vab
Vbc
Vca
Vd
Vdc
Vds
Vr
Vs
i
xix
xx
ABREVIATURAS E SMBOLOS
e
r
a f
ds r
p
qs r
s r
s
s
0
rm
m
r
Captulo 1
Introduo
Devido observao de fenmenos naturais, tais como os relmpagos durante uma trovoada,
a humanidade j tem conhecimento da existncia da eletricidade h muitos sculos. O estudo da
eletricidade permaneceu uma curiosidade intelectual at ao sculo XVIII. Foi neste sculo que os
fenmenos eltricos comearam a ser compreendidos e que se conseguiu produzir e armazenar
energia com sucesso. Depois de dados estes primeiros passos, a evoluo tecnolgica deu um
salto. Comeou uma nova era!
A eletricidade enraizou-se de tal forma, que dois sculos depois vivemos numa sociedade
altamente tecnolgica, onde a dependncia de dispositivos eltricos e eletrnicos bastante significativa. Como tal, os motores eltricos esto presentes numa vasta gama de aplicaes. Algumas
bem conhecidas, como o caso dos sistemas de trao, acionamentos industriais e elevadores.
Mas tambm se encontram em aplicaes menos bvias, como discos rgidos, impressoras ou at
em caixas multibanco. Assim sendo, a sua importncia cresceu tanto, que hoje em dia os motores
eltricos tm um papel quase to fundamental como a prpria eletricidade.
O acionamento dos diferentes motores feito atravs da associao dos motores com conversores, que contm elementos de eletrnica de potncia. D-se o nome de drive ao controlador do
motor. Um exemplo de drive est mostrado na figura 1.1.
Tenso/Corrente
Referncia de
Presso/Temperatura
Controlador
Conversor de
Potncia
Binrio/Velocidade/Posio
Motor
Carga
Presso/Temperatura
Introduo
1.1
Motivao do Projeto
Os modernos manes permanentes apresentam uma densidade de energia que os torna particularmente vocacionados para utilizao em mquinas eltricas sem acesso eltrico ao circuito
do rotor. Mquinas mais compactas e fiveis e com melhor desempenho so o resultado da sua
utilizao. Assim, o conhecimento detalhado deste tipo de mquina eltrica bem como dos respetivos mtodos de controlo e caractersticas de aplicao torna-se importante no domnio dos
acionamentos eletromecnicos.
Por outro lado, a evoluo dos dispositivos semicondutores de potncia tornou possvel o desenvolvimento de conversores eletrnicos de potncia quer de muito reduzida dimenso e elevada
eficincia quer de conversores industriais com aplicao em elevadas potncias. As questes da
miniaturizao e da eficincia energtica so cada vez mais importantes nos sistemas de engenharia tornando a integrao de subsistemas uma necessidade.
Num outro domnio, a cada vez maior capacidade de clculo, de armazenamento e de velocidade, de plataformas de controlo baseadas em microprocessadores, microcontroladores, DSP
e FPGA, bem como a integrao de perifricos, nomeadamente conversores A/D e D/A de elevada resoluo e temporizadores com grande versatilidade resoluo temporal, tornou vivel a
implementao de algoritmos de controlo complexos, com processamento de grande volume de
dados adquiridos. Assim, possvel o controlo de mquinas eltricas com sistemas de converso
e algoritmos de controlo complexos.
Finalmente, a cada vez maior aplicao de atuadores eletromecnicos nos mais diversos domnios, em particular em veculos eltricos, faz com que a procura e o desenvolvimento da melhor
soluo para um acionamento capaz de satisfazer um determinado conjunto de critrios sejam,
ainda, atividades relevantes neste domnio.
1.2
Estrutura da Dissertao
Captulo 2:
Neste captulo apresentada a reviso da literatura. Inicia com uma breve introdu-
o s transformadas de Clarke e de Park, passando pela constituio e tipos de manes permanentes existentes.
Temas que envolvem o motor Brushless DC, tais como o modelo matemtico e mtodos de
controlo clssicos, so abordados com maior detalhe e acrescenta-se ainda uma comparao entre
o desempenho dos motores de manes permanentes tendo em conta a fora contraeletromotriz
produzida pelo motor e a corrente produzida por diferentes drives.
No sentido de conhecer os mtodos de controlo mais recentes, investigou-se o estado da arte
referente aos motores Brushless DC. So apresentados alguns exemplos de mtodos de controlo
retirados de artigos relativamente recentes.
Captulo 3: Aps a validao da estimao do modelo do motor, prosseguiu-se para a simulao
comportamental. Aqui, apresentada a simulao do sistema em malha aberta e malha fechada a
implementar e respetivos resultados e anlises.
Captulo 4:
Este captulo descreve todo o processo. Por fim, so comparados os resultados experimentais e os
simulados.
Captulo 5: Finalmente, o ltimo captulo menciona todas as concluses e reflexes de todo o
trabalho que foi elaborado ao longo da dissertao. So tambm mencionados possveis trabalhos
futuros.
Introduo
Captulo 2
Antes de serem apresentados os motores de manes permanentes, necessrio conhecer ferramentas matemticas muito teis no controlo de inversores com o fim de transformar trs variveis
temporais, como por exemplo tenso e corrente, em apenas duas. Estas transformaes so conseguidas atravs das transformaes direta e inversas de Clarke e de Park. A transformao de
Clarke envolve um referencial de eixos estacionrios, . As matrizes de transformao direta e
inversa so respetivamente:
12
1 12
i
i = T [iabc ] = 0 23
3 1
1
i0
2
2
1
ia
1
1
ib = T [i 0 ] = 2
ic
21
ia
3
2 ib
1
ic
2
(2.1)
i
1 i
i0
1
(2.2)
3
2
23
2
r
cos( )
cos( 2
)
cos(
+
)
id
ia
3
3
2
2
2
) sin( 3 ) sin( + 3 ) ib
iq = T [iabc ] =
sin(
3
2
2
2
i0
ic
2
2
2
cos( )
sin( )
ia
1
2
ib = T [idq0 ] = cos( 3 ) sin( 2
3 )
2
2
ic
cos( + 3 ) sin( + 3 )
2
id
2
2
iq
2
2
i0
2
(2.3)
(2.4)
I Ccos t +
I Acos ( t)
B
I Bcos t
A
B
C
Transformao
de Clarke Direta
Transformao
de Clarke Inversa
A
B
C
q
C
I Ccos t +
2
I Bcos t
3
A
B
C
B
Transformao
de Park Direta
I Acos ( t )
d
q
Transformao
de Park Inversa
A
B
C
Figura 2.3: Correntes nas fases com amplitude de 1A e frequencia de 100Hz (fase A a trao cheio,
fase B a trao mais grosso e fase C a tracejado).
Ia = Isin(200t);
(2.5)
Ib = Isin(200t 120 );
(2.6)
Ic = Isin(200t + 120 );
(2.7)
1
1
I = Ia Ib Ic = Isin(200t);
2
2
3
3
Ib
Ic = Isin(200t + 90 );
I =
2
2
(2.8)
(2.9)
Figura 2.4: Correntes no referencial para o exemplo apresentado (corrente no eixo a trao
cheio e corrente no eixo a tracejado).
2.2
manes Permanentes
2.2.1
(2.10)
(2.11)
(2.12)
A no linearidade da desmagnetizao implica que o fluxo intrnseco do man no seja constante. manes com desmagnetizao no linear so de qualidade mais fraca.
A figura 2.6 mostra as caractersticas B/H de alguns materiais de manes permanentes. Existem
essencialmente trs classes de manes permanentes:
Alnicos
Bi
Br
Bm
H ci
Hc
B
1.25
Alnico-5
Neodmio
Samrio-Cobalto
Ferrite
1
0.75
0.5
0.25
0.75
0.5
0.25
H , 10 A /m
Figura 2.6: Caractersticas B/H de alguns materiais de manes permanentes (adaptado de [1]).
As principais vantagens dos alnicos so a sua alta densidade de fluxo e baixos coeficientes
de temperatura. Isto permite que haja uma maior densidade de fluxo a altas temperaturas. Tem
como desvantagem a baixa fora coerciva e curva de desmagnetizao no linear. Estes manes
dominaram o mercado desde os meados de 1940 at fins de 1960.
As ferrites foram inventadas na dcada de 50. Tm uma maior fora coerciva que o alnico
mas menor densidade de fluxo, altos coeficientes de temperatura e alta resistncia eltrica. Tem a
principal vantagem de serem baratos.
Os materiais raros tm vindo a contribuir para o aumento da densidade de energia dos manes desde a dcada de 70. Para produzir um material raro, necessrio refinar outros que at
10
podem no estar disponveis no mercado (da o nome "raro"). Este material apresenta alta densidade de fluxo, alta fora coerciva, desmagnetizao linear e baixo coeficiente de temperatura. A
desvantagem deste tipo de material o seu elevado custo.
2.2.2
A densidade de energia, Em , de um man pode ser obtida pelo produto do campo magntico e
densidade de fluxo:
Em = Bm Hm = (Br + 0 rm Hm )Hm
(2.13)
(2.14)
2.2.3
B2r
40 rm
(2.15)
Um elemento muito importante que vai determinar o preo final da mquina que usufrua de
manes permanentes o volume dos prprios manes. Para alm de afetar o preo, tambm vai
contribuir para o peso e volume do rotor.
A fora magnetomotriz a fora que conduz o fluxo magntico pelos circuitos eltricos e
dada por:
Z
F=
H dl
(2.16)
Toma-se o exemplo da figura 2.7. O fluxo flui de um plo norte do rotor at ao entreferro e de
seguida para o estator, fechando o ciclo passando novamente pelo entreferro e terminando em um
plo sul do rotor. Neste processo, o fluxo atravessa o comprimento do entreferro e o comprimento
do man duas vezes.
Considerando que a fora magnetomotriz fornecida pelo man igual recebida pelo entreferro, tem-se:
Hm lm + Hg lg = 0
(2.17)
11
estator
lg
entreferro
lm rotor
(2.18)
(2.19)
A relao entre a rea do man, rea e fluxo do entreferro e densidade do fluxo no man dada
por:
Bm Am = Bg Ag Am =
Bg Ag
Bm
(2.20)
Por fim, usando as equaes 2.13, 2.19 e 2.20 e desprezando os fluxos de fugas entre manes,
o volume do man pode ser calculado por:
Bg Ag
Vm = Am lm =
Bm
2.3
B g lg
0 Hm
=
B2g (Ag lg )
B2gVg
=
0 |Bm Hm | 0 |Em |
(2.21)
Existem essencialmente trs tipos de motores de manes permanentes: CC, BLDC e CA sncrono. Os motores de manes permanentes so vastamente utilizados para atingir desempenhos
eficientes. Os manes so montados no rotor, o que permite ter um "isolamento"entre o rotor e
o estator. Motores com esta tecnologia resultam numa mquina eltrica mais compacta e mais
leve. No h necessidade de utilizar escovas para conduzir a corrente da armadura, o que leva a
uma reduo acentuada da manuteno. Uma outra vantagem de usufruir de manes permanentes
o facto de as perdas ocorrerem apenas no estator, onde facilmente se podem dissipar com um
sistema de arrefecimento [13]. Com a inveno do tirstor, a comutao mecnica foi substituda
por comutao eletrnica. Isto permitiu que se implementasse a armadura no estator e a excitao
do campo no rotor, ao contrrio dos motores CC da poca. Da, surgiu o nome "inside out DC
machine".
12
Considerando a disposio dos manes, ela pode classificar-se em trs categorias [2]:
Interior, onde os manes esto colocados no ncleo do rotor
Superficial, com os manes na superfcie do rotor;
Misto
A colocao superificial a categoria que fornece maior densidade de fluxo pois a que tem
maior contacto com o entreferro. A desvantagem a menor robustez. Esta categoria utilizada
em aplicaes com velocidade inferior a 3000rpm [3].
A categoria de manes interiores utilizada em aplicaes de velocidade mais elevada e so
mais robustos. A sua construo a mais difcil. A maioria dos motores de manes permanentes
no mercado so do tipo interior, pois fornecem proteo dos manes.
As figuras 2.8, 2.9 e 2.10 ilustram as diferentes categorias de colocao dos manes permanentes.
Figura 2.10: Corte longitudinal de um motor com colocao de manes do tipo misto [2].
2.3.1
13
Este motor produz fora contraeletromotriz sinusoidal e normalmente comutado sinusoidalmente por um inversor trifsico, produzindo assim correntes sinusoidais.
O modelo matemtico dos motores sncronos de manes permanentes muito semelhante ao
dos motores sncronos em geral. Quando so considerados os referenciais do rotor, o fluxo produzido pelo motor sncrono de manes permanentes (PMSM-Permanent Magnet Synchronous Motor)
concentrado ao longo do eixo d, o binrio eletromagntico ao longo do eixo q e o referencial roda
velocidade do rotor, obtendo-se assim uma relao fixa entre os campos magnticos do estator e
do rotor.
A equao de tenso do estator dada por:
vrs = Rs irs + psr + jr sr
(2.22)
r
r
vrqs = Rq irqs + pqs
+ jr ds
(2.23)
r
r
vrds = Rd irds + pds
jr qs
(2.24)
r
qs
= Ls irqs + Lm irqr
(2.25)
r
ds
(2.26)
Ls irds + Lm irdr
r
qs
= Lq irqs
(2.27)
r
ds
(2.28)
Ls irds + Lm irf r
vrqs
vrds
#
=
"
Rq + Lq p
r Ld
#"
r Lq
Rd + Ld p
irqs
irds
#
+
"
#
r a f
0
(2.29)
14
Figura 2.11: (a) Modelo equivalente de um PMSM no referencial q; (b) Modelo equivalente de
um PMSM no referencial d. [3]
O binrio eletromagntico dado por:
Te =
3P
3P r r
3P r r
r r
a f Is =
{ i qs
{ i + (Ld Lq ) irqs irds }
ids } =
22
2 2 ds qs
2 2 a f qs
(2.30)
(2.31)
E = Ke r cos(e );
(2.32)
2.3.2
Este motor basicamente um PMSM eletronicamente comutado, que sequencialmente alimentado em geral por um inversor trifsico, normalmente com correntes trapezoidais, e produz
fora contra eletromotriz trapezoidal.
Por fase, os enrolamentos do estator apresentam as seguintes equaes [1]:
vsa
Rs 0 0
isa
Laa Lab Lac ia
esa
vsb = 0 Rs 0 isb + p Lba Lbb Lbc ib + esb
vsc
0 0 Rs
isc
Lca Lcb Lcc
ic
esc
(2.33)
15
(2.34)
(2.35)
(2.36)
vsa
1 0 0 isa
ia
esa
LM
0
0
LM
0 ib + esb
vsb = Rs 0 1 0 isb + p 0
0
0
LM
ic
esc
vsc
0 0 1 isc
(2.37)
Fase A
Rs
Rs
LM
ea -
eb
Fase B
+ LM
ec
+
LM
Rs
Fase C
Figura 2.12: Modelo equivalente de um BLDC.
Tendo em conta a potncia ativa transformada por fase, pode obter-se ento o binrio eletromagntico:
Te =
(2.38)
A fora contraeletromotriz produzida por fase pode ser dada atravs das seguintes equaes:
esa = fsa (e ) Ke m
(2.39)
esb = fsb (e ) Ke m
(2.40)
esc = fsc (e ) Ke m
(2.41)
16
onde as funes fsa (e ), fsb (e ) e fsc (e ) tm a mesma forma que as foras contraeletromotrizes com a amplitude mxima de 1 ou -1. Essas formas de onda podem ser geradas pelas equaes
seguintes:
e 6
1
fsa (e ) =
6
e 3
3
e < 2
3
0 < e <
3 <
2
3 <
e <
4
3
e < 5
3
(2.42)
< e <
4
3
5
3
<
< e < 2
De modo semelhante:
2
fsb (e ) = fsa e +
3
2
fsc (e ) = fsa e
3
(2.43)
(2.44)
(2.45)
Como j foi mencionado, este motor comutado eletronicamente. Para acionar o motor, os
enrolamentos do estator tm que ser excitados numa determinada sequncia, e para isso, fulcral
conhecer a posio do rotor, posio essa que possvel obter atravs de sensores de efeito de
Hall. Normalmente, este tipo de motor tem trs sensores integrados no estator. Sempre que os
plos magnticos do rotor se aproximam dos sensores, so gerados sinais, indicando qual o plo
magntico que se encontra mais prximo. Combinando os trs sinais dos trs sensores, possvel
obter a posio atual do rotor, e da fornecer a sequncia certa para o acionamento.
O tipo de comutao mais utilizado para este motor denomina-se bifsica ou trapezoidal. Este
nome provm do facto de cada comutao envolver um enrolamento com alimentao positiva,
um com alimentao negativa e outro com alimentao nula, produzindo assim correntes trapezoidais. O binrio produzido devido interao entre o campo magntico gerado pelo estator e
pelos manes. Idealmente, o binrio de pico ocorre quando os dois campos se encontram com um
desfasamento de 90 . Para manter o motor em funcionamento, necessrio alterar a orientao
do campo magntico, de modo a que o rotor continue em rotao. Est apresentada na figura 2.13
um exemplo de comutao trapezoidal. Para cada conjunto de sinais dos sensores Hall, ABC,
aplica-se o conjunto de sinais T1T2T3T4T5T6 a enviar ao inversor de modo a rodar no sentido
horrio.
Cada ciclo eltrico pode no coincidir com uma rotao completa do rotor. O nmero de ciclos
eltricos necessrios para completar uma rotao mecnica do rotor depende do nmero de pares
17
A
T1
T2
T3
T4
T5
T6
Ia
r
N
C Ic
T2
T3
T4
T5
T6
Estado: 1
Sinais dos sensores Hall: 001
Sinais a enviar ao inversor: 100001
T1
r
N
Ib
Ic
A
T1
T2
T3
T4
T5
T6
Ia
r
N
T1
T2
T3
T4
T5
T6
Ib
Ia
Ic
Estado: 4
Sinais dos sensores Hall: 110
Sinais a enviar ao inversor: 001100
T2
T3
T4
T5
T6
Ic
A
r
A
Estado: 3
Sinais dos sensores Hall: 100
Sinais a enviar ao inversor: 010100
T1
Estado: 2
Sinais dos sensores Hall: 101
Sinais a enviar ao inversor: 010001
Ib
T1
T2
T3 Ia
T4
T5
T6
Estado: 5
Sinais dos sensores Hall: 010
Sinais a enviar ao inversor: 001010
r
N
Ib
Estado: 6
Sinais dos sensores Hall: 011
Sinais a enviar ao inversor: 100010
de plos do mesmo. Cada par de plos do rotor corresponde aos ciclos eltricos necessrios para
completar uma rotao mecnica. A figura 2.14 mostra um exemplo das formas de onda obtidas
dos sensores Hall para um motor com dois pares de plos.
A expresso geral para obter os ciclos mecnicos em funo dos ciclos eltricos dada por:
r =
sendo p o nmero de pares de plos do rotor.
e
p
(2.46)
18
Sensores Hall
0
1
0
0
C
60
120
180
240
300
C
360
420
480
540
600
660
720
Figura 2.14: Sinais dos sensores Hall num ciclo mecnico com dois pares de plos.
2.3.3
PMSM vs BLDC
Antes de prosseguir para a anlise das semelhanas e diferenas entre sistemas com PMSM e
BLDC, necessrio referir que as figuras contidas nesta seco no se encontram escala. Apenas
foram elaboradas para uma anlise mais simples da amplitude e das formas de onda das grandezas
analisadas.
Considera-se que a fase B a fase cuja corrente desfasada -120 eltricos em relao a A e
a da fase C desfasada +120 eltricos.
2.3.3.1
As definies de PMSM e BLDC so muitas vezes confundidas. Foi mencionado nos subcaptulos anteriores que a fora contraeletromotriz produzida pelos motores de manes permanentes
pode ser sinusoidal ou trapezoidal. A forma da fora contraeletromotriz definida por propriedades do motor e no pelo drive implementado. O drive apenas ir interferir na forma da corrente
e no nas propriedades do motor, ou seja, possvel obter combinaes de correntes e foras
contraeletromotrizes produzidas, como por exemplo sistemas com correntes sinusoidais e fora
contraeletromotriz trapezoidal e vice-versa.
Tanto no PMSM como BLDC a amplitude da fora contraeletromotriz produzida proporcional velocidade angular do rotor e a forma dependente da posio eltrica do rotor. A amplitude
mxima da fora contraeletromotriz em ambos os motores pode ser dada pela equao 2.47.
E pico = Ke r ;
(2.47)
A figura 2.15 ilustra as formas de onda das foras contraeletromotrizes trapezoidal e sinusoidal
ideais durante um ciclo eltrico.
possvel concluir que, com o mesmo valor rms, um motor com fora contraeletromotriz
sinusoidal tem uma amplitude maior que a trapezoidal. Relembrando os modelos matemticos
19
Sinusoidal
Sinusoidal
Trapezoidal
12
0
15
0
18
0
21
0
24
0
27
0
30
0
33
0
36
0
90
30
60
Figura 2.15: Fora contraeletromotriz trapezoidal vs sinusoidal ideais num ciclo eltrico (RMS=1)
(adaptado de [4]).
de ambos os motores e a equao 2.47, tira-se que para a mesma tenso CC, o motor com fora
contraeletromotriz trapezoidal consegue atingir velocidades mais elevadas que o de fora contraeletromotriz sinusoidal.
possvel gerar as foras contraeletromotrizes desejadas pela distribuio dos manes. A
figura 2.16 mostra um exemplo de distribuio sinusoidal para obter a forma de onda sinusoidal
da figura 2.15.
90
A
C'
N
B'
e
0
180
A'
270
2.3.3.2
20
entre as formas de onda ideais est ilustrada na figura 2.17. A figura 2.18 mostra as formas de
onda da corrente trapezoidal durante um ciclo eltrico para cada estado dos sensores Hall.
12
0
15
0
18
0
21
0
24
0
27
0
30
0
33
0
36
0
90
60
30
Corrente na Fase A
Sinusoidal
Sinusoidal
Trapezoidal
Figura 2.17: Corrente trapezoidal vs sinusoidal ideais num ciclo eltrico (RMS=1) (adaptado de
[4].
Sensores Hall
0
1
0
1
Ia
0
Corrente
-Ia
Ib
0
-Ib
Ic
0
-Ic
C
0
60
120
180
240
300
360
Figura 2.18: Forma de onda da corrente trapezoidal para um ciclo eltrico nas trs fases.
Verifica-se na figura 2.18 que para cada fase, a corrente tem amplitude mxima durante 120
eltricos e nula durante 60 eltricos. Entre fases, a corrente desfasada 120 eltricos. De
forma semelhante, a produo de corrente sinusoidal envolve um desfasamento de 120 eltricos
da corrente entre as diferentes fases.
2.3.3.3
21
Produo de Binrio
Corrente e Fora Contraeletromotriz Trapezoidais O binrio produzido proporcional potncia fornecida pela fora contraeletromotriz. Idealmente o binrio produzido num sistema com
correntes e fora contraeletromotrizes trapezoidais no tem ripple. Por fase, nos momentos em que
a corrente no nula, o binrio constante e nos momentos em que a corrente nula, o binrio
produzido nulo. Tal facto para uma fase do motor est apresentado na figura 2.19.
Fora Contraeletromotriz vs Corrente na Fase A
Corrente
Fora contraeletromotriz
E pico
I pico
I pico
E pico
12
0
15
0
18
0
21
0
24
0
27
0
30
0
33
0
36
0
90
60
30
Figura 2.19: Binrio ideal produzido durante um ciclo eltrico com correntes e foras contraeletromotrizes trapezoidais.
Relembrando as equaes 2.38 e 2.47, e que apenas duas fases conduzem corrente de cada vez
e iguais em magnitude (Ipico ), o binrio total produzido neste caso poder ser simplificado em:
Te = 2T
(2.48)
svel gerar com correntes e fora contraeletromotrizes sinusoidais. O binrio produzido por este
22
90
12
0
15
0
18
0
21
0
24
0
27
0
30
0
33
0
36
0
60
30
Figura 2.20: Forma de onda do bnrio produzido com correntes e foras contraeletromotrizes no
ideais.
Te = [Ke sin(e )][Ipico sin(e )] + [Ke sin(e 1200 )][Ipico sin(e 1200 )]
+ [Ke sin(e + 1200 )][Ipico sin(e + 1200 )] = T [sin2 (e ) + sin2 (e 1200 ) + sin2 (e + 1200 )]
Simplificando a expresso, obtm-se
3
Te = T
2
(2.49)
white
white
De seguida, foi feita uma breve anlise dos casos mistos de corrente e fora contraeletromotriz. Foi utilizado o Matlab em paralelo para analisar as ondas de binrio obtidas e confirmar os
resultados obtidos analticamente, pois estes casos envolvem mais cuidado no clculo.
Em ambos os
casos mistos, o binrio produzido tem algum ripple. As figuras 2.23 e 2.22 mostram dois exemplos.
23
I pico
E pico
0
E pico
I pico
12
0
15
0
18
0
21
0
24
0
27
0
30
0
33
0
36
0
90
60
30
Figura 2.21: Forma de onda do bnrio produzido com correntes e foras contraeletromotrizes
sinusoidais.
Com auxlio da figura 2.22, o binrio produzido na fase A no caso em que a corrente trapezoidal e a fora contraelemotriz sinusoidal, pode obter-se com a seguinte equao:
T sin(e )
Ta = 0
T sin(e )
0 e < 30
30 e < 150
150 e < 210
210 e < 330
330 e < 360
(2.50)
24
I pico
E pico
0
E pico
I pico
3 T
3
T
2
90
12
0
15
0
18
0
21
0
24
0
27
0
30
0
33
0
36
0
60
30
Figura 2.22: Forma de onda do bnrio produzido com correntes trapezoidais e foras contraeletromotrizes sinusoidais ideais.
Com IApico =IBpico =ICpico =I pico e EApico =EBpico =ECpico =E pico , somando os binrios produzidos por cada fase d:
0 e < 30
30 e < 90
90 e < 150
150 e < 210
(2.51)
. De maneira
O valor mnimo de Te ocorre em 30(2n+1) eltricos, com n={0,1,2,...} e vale 3T
2
3
Amp = 3T T = T
2
2 33
2
(2.52)
25
Z
0
5
6
0 de +
T sin(e ) de +
5
6
0 de
T
3
(2.53)
(2.54)
Amp
' 14%
Te
(2.55)
T sin(e )
T sin(e )
E I sin( )
a3 pico
e
0 e < 30
30 e < 150
150 e < 210
(2.56)
com
Ea1 = E pico
e
30
e
+ 6E pico
60
(2.58)
e
12E pico
60
(2.59)
Ea2 = 2E pico
Ea3 = 2E pico
(2.57)
Para as fases B e C, as equaes seguem o mesmo princpio, mas com e desfasado 120 .
Observando a figura 2.23, tem-se que o valor mnimo de Te ocorre em n60 eltricos, com
n={0,1,2,...}. De maneira semelhante, o valor mximo ocorre em 30(2n+1) eltricos, com n={0,1,2,...}.
A amplitude da onda do binrio produzido :
Amp = 2T 3T = T 2 3
(2.60)
26
E pico
I pico
0
I pico
E pico
3 T
90
12
0
15
0
18
0
21
0
24
0
27
0
30
0
33
0
36
0
60
30
Figura 2.23: Forma de onda do bnrio produzido com corrente sinusoidal e fora contraeletromotriz trapezoidal ideais.
Para simplificar a aproximao do valor mdio, considerou-se o binrio gerado pela fase A e
um intervalo de 0 a 2 :
2
Ta =
Z
0
Ea Ipico sin(e ) de +
T sin(e ) de
T
3
(2.61)
(2.62)
Amp
' 16, 2%
Te
(2.63)
text
text
Para encerrar este subcaptulo, a tabela 2.1 mostra um resumo do binrio que possvel gerar
com diferentes drives e motores de manes permanentes, desprezando a indutncia do motor:
27
Tabela 2.1: Comparao do binrio ideal produzido pelos diferentes drives e motores.
2.4
Corrente
Fora Contraeletromotriz
ripple%
Trapezoidal
Trapezoidal
2T
Sinusoidal
Sinsuoidal
3 T2
Sinusoidal
Trapezoidal
3T
16,2
Trapezoidal
Sinsuoidal
3T
14
Semicondutores de Potncia
Todos os drives utilizam semicondutores para converter e controlar a energia fornecida ao sistema. Infelizmente, ainda no existe nenhum semicondutor com capacidade de suportar elevadas
tenses, correntes e frequncias de comutao, controlados com um drive simples. As caractersticas de cada semicondutor limitam o seu uso em algumas aplicaes. Por exemplo, o MOSFET o
dispositivo que suporta maiores frequncias de comutao, mas em contrapartida o que suporta
menos tenso. So de seguida apresentados alguns dos semicondutores mais utilizados nos drives
de motores.
2.4.1
Dodo
(2.64)
onde Isat a corrente de saturao, q a carga do eletro (1.602x1019 C), Vd a queda de tenso
no dodo, k a constante de Boltzmann (1.38x1023 JK 1 ) e T a temperatura em Kelvin.
As caractersticas v-i podem ser idealizadas tal como mostra a figura 2.25, mas no devem ser
utilizadas.
Quando diretamente polarizado, pode ser considerado ideal, pois liga rapidamente. O mesmo
no se pode dizer quando inversamente polarizado. A corrente que atravessa o dodo atinge valores
negativos durante um intervalo de tempo trr (reverse recovery time) antes de atingir o valor nulo,
tal como mostra a figura 2.26. O elevado grau de gradiente da corrente de recuperao leva
28
I
Id
Vd
Regio de
bloqueio
inversa
a sobretenses nos circuitos indutivos. A carga contida no dodo representada por Qrr que
aproximada por [15]:
1
Qrr = irr trr
2
Id
(2.65)
t rr
q rr
irr
29
Os dodos que apresentam melhor eficincia so os Schottky, visto que a queda de tenso nos
seus terminais ronda os 0,3V. So utilizados em sistemas com potncias mais baixas. A tenso
limite de bloqueio dos dodos Schottky convencionais ronda os 100V [6].
Atualmente, a tenso limite de bloqueio dos dodos Schottky ronda os 1000V [17]. A introduo de carboneto de silcio permitiu reduzir as correntes de fugas e suportar elevadas densidades
de corrente devido sua melhor condutividade trmica e apresentam uma resistncia de conduo
muito menor face aos dodos de silcio convencionais.
Em comparao a todos os dodos do mercado, os dodos de SiC so os que apresentam caractersticas dinmicas mais prximas das do ideal. Tm uma corrente de recuperao muito mais
baixa, o que implica uma menor energia de recuperao. Esta energia praticamente independente
do gradiente da corrente. Isto permite uma reduo dos picos de corrente em transstores quando
usados em antiparalelo.
2.4.2
MOSFET
Trata-se de um interruptor controlado em tenso. As caractersticas de tenso e corrente esto apresentadas na figura 2.27(a). Apresenta-se em conduo quando a tenso gate-source se
encontra acima de um valor limiar, Vgs (th) (tenso de threshold gate-source do MOSFET). Na
figura 2.27(b), esto ilustradas as suas caractersticas ideais.
id
id
v gs=v a
v gs=v b
v gs=v c
desligado
v ds
(a)
ligado
v a >v b >v c
0
v ds
(b)
Figura 2.27: (a) Caractersticas v-i de um MOSFET;(b) Caractersticas v-i ideais de um MOSFET
[6].
Os MOSFETs necessitam de uma aplicao contnua de tenso para se manter em conduo. A corrente na gate pode ser considerada desprezvel, face corrente que atravessa o dreno.
Comporta-se como uma resistncia quando em conduo e pode ser utilizado como sensor de corrente. So aplicados em frequncias de comutao elevadas e potncias mais baixas. Apresentam
uma resistncia de conduo baixa e perdas por conduo menores. Contudo, devido s elevadas
frequncias de comutao, as perdas por comutao podero ser maiores, dependendo da tenso
aplicada. A tenso limite entre a gate e source de 20V [6]. Este interruptor acompanhado
sempre de um dodo em anti-paralelo, pois o MOSFET no possui a caracterstica de bloquear
tenses negativas. O MOSFET contm no interior um dodo parasita em anti-paralelo. Utilizando
30
este dodo, as perdas por comutao podero ser elevadas [15]. Normalmente, utilizado um
dodo rpido em anti-paralelo com o MOSFET de modo a impedir a corrente de circular nesse
dodo parasita como mostra a figura 2.28.
Dodo rpido
Dodo parasita
2.4.3
GTO
Este dispositivo ligado com um pulso de corrente na gate, mantendo-se ligado at que a
corrente seja nula e apresenta uma queda de tenso aos seus terminais de 1-3V. Tem a capacidade
de bloquear tenses negativas, mas a partir de um certo valor, conduz a corrente em sentido inverso,
comportando-se como dodo. A queda de tenso nos terminais ligeiramente maior que a dos
tirstores (2-3V). So utilizados em aplicaes de alta potncia e baixa frequncia de comutao
(at 2kHz) [6].
A vantagem do GTO face ao tirstor que pode ser desligado aplicando correntes negativas
apenas durante microsegundos, mas a corrente tem de ser cerca de um tero da corrente de gate
que atravessa o nodo. Os GTO mais recentes apresentam um gradiente de tenso muito alto,
sendo por isso necessrio um circuito snubber que consiste numa resistncia, condensador e dodo
para atenuar esse gradiente.
A figura 2.29 mostra as caractersticas de tenso-corrente e caractersticas ideais, respetivamente.
ia
ia
ligado
ligado
desligado
va
0
(a)
desligado
va
0
(b)
Figura 2.29: (a) Caractersticas de v-i de um GTO;(b) Caractersticas v-i ideais de um GTO.
2.4.4
31
IGBT
Este dispositivo tem as vantagens do MOSFET e do TBJ. Tem uma impedncia na gate alta
e necessita de pouca energia para comutar. Apresenta uma queda de tenso baixa, mesmo para
tenses do sistema mais altas. Os tempos de ligar e desligar so na ordem de microsegundos e
esto disponveis para tenses e correntes mais elevadas que as do MOSFET (alguns milhares de
volts e amperes). A frequncia de comutao menor que a do MOSFET, geralmente at 20kHz.
Para potncias mais altas dentro do limite do IGBT, a frequncia de comutao aconselhada a
ser menor, devido s perdas por comutao e interferncia eletromagntica gerada.
As caractersticas de tenso e corrente encontram-se a seguir, na figura 2.30.
id
id
v gs=v a
ligado
v gs=v b
v a >v b >v c
v gs=v c
v ds
0
(a)
desligado
v ds
0
(b)
Figura 2.30: (a) Caractersticas v-i de um IGBT;(b) Caractersticas v-i ideais de um IGBT.
A maior parte dos IGBT desenvolvidos para aplicaes de elevada potncia suportam curtos
circuitos sem se danificarem. Durante estas condies, a tempertura na juno pode exceder os
300 C e o drive da gate deve ser capaz de detetar o curto circuito e desligar o IGBT dentro de um
tempo limite para no danificar o IGBT. Casos tpicos suportam correntes na ordem de dez vezes
o Id durante 10s. Para reduzir a tenso indutiva de over-shoot aquando do desligar do IGBT, o
drive da gate deve aumentar esse tempo de desligar [15].
white
Para finalizar este subcaptulo de reviso dos semicondutores, apresenta-se por fim na tabela
2.2 um resumo de algumas caractersticas importantes que se devem ter em conta no projeto de
drives.
2.4.5
Sabendo as perdas nos semicondutores, possvel saber as perdas totais do conversor e ainda
o mtodo de arrefecimento a implementar. Como impossvel prever exatamente as perdas,
necessrio sobredimensionar o dispositivo de arrefecimento. Abordando o tema de uma forma
mais simples , e assumindo que o tempo de ligar igual ao tempo de desligar dos semicondutores
e que o tempo de conduo muito maior que a soma dos atrasos na variao de tenso e corrente,
as perdas de energia por conduo podem aproximar-se por [3]:
Econd ' Von Iton
(2.66)
32
Tirstor
No
5000
12000
30MVA
140
A
cm2 a 2
kV
GTO
Sim
2000
6000
6MVA
30 A cm2
a 4.5 kV
MOSFET
Sim
300
1500
200KVA
75 A cm2
a 200V ou
15 A cm2 a
800V
Temperatura mxima na
juno (o C)
Perdas por Conduo
Perdas por Comutao
Facilidade de Implementao
125
125
175
IGBT
Sim
2400
6500
7.8MVA
140
A
cm2
a
1.2kV ou
35 A cm2
a 3.3kV
150
Baixas
Muito altas
Mdia
Baixas
Muito altas
Mdia
Altas
Muito baixas
Muito boa
Mdias
Baixas
Muito boa
onde ton o tempo de conduo, Von a queda de tenso no semicondutor e I a corrente que flui
no mesmo. A potncia total dissipada pode ser dada por
Pcond =
Econd
= Von Id
ton + to f f
(2.67)
(2.68)
onde ts1 e ts2 so respetivamente os atrasos no ligar e desligar do semicondutor. Fazendo uma
mdia ao longo do tempo de conduo, a potncia dissipada
ts1 + ts2
1
1
= V I fcom (ts1 + ts2 )
Pcom = V I
2 ton + to f f
2
(2.69)
2.5
Inversor Trifsico
33
V dc
2
T1
T2
T3
V dc
V dc
2
T4
T6
T5
o
A
C
n
Vdc
2 .
as tenses vao , vbo e vco apenas podem tomar valores de Vdc e 0. Por exemplo, com T1 ligado e T4
desligado, vam vale
Vdc
2
e vao vale Vdc . Com T4 ligado e T1 desligado, vam vale V2dc e vao vale 0.
(2.70)
(2.71)
(2.72)
(2.73)
Assumindo que o sistema equilibrado, a relao entre as tenses simples nas fases do motor
e as tenses geradas pelo inversor so:
(2.74)
(2.75)
34
1
2
van = vao (vbo + vco )
3
3
2
1
vbn = vbo (vao + vco )
3
3
1
2
vcn = vco (vao + vbo )
3
3
(2.76)
(2.77)
(2.78)
A figura 2.32 mostra todas as formas de onda que so possveis obter com diferentes referncias num inversor trifsico convencional.
v dc
2
0
v dc
2 v
v dc bm
2
0
v dc
2
v dc
2
0
v dc
v an
v ab
v am
2v dc /3
v dc /3
v dc
t
v dc
v dc
t
v bc
v ca
v dc
t
t1
t2
t3
t4
t5
v dc0
t
t1
t6
v bn
2v dc /3
v dc /3
v dc
v cm
v dc /3
2v dc /3
t2
t3
t4
t5
t6
v dc /3
2v dc /3
v cn
2v dc /3
v dc /3
0
v dc /3
2v dc /3
t
t1
t2
t3
t4
t5
t6
Figura 2.32: Formas de ondas num inversor trifsico convencional com diferentes referncias de
tenso com comando em onda quadrada.
Para evitar o curto circuito entre interrutores do mesmo brao quando se liga um e de seguida o outro, necessrio criar um intervalo de tempo onde nenhum dos interrutores conduza,
denominado tempo morto. Resulta assim uma tenso na carga bem definida.
A potncia fornecida ao motor provm da potncia fornecida ao inversor pelo barramento CC.
Assumindo mais uma vez interrutores ideais e desprezando a potncia gerada por harmnicos, a
potncia ativa fornecida ao motor
P = Vdc Idc = 3VFaseRms IFaseRms cos( )
(2.79)
(2.80)
35
O inversor controla tanto a potncia ativa como reativa e combinando as duas, obtm-se a
potncia aparente. Este o fator que define o preo do inversor.
2.6
Mtodos de Controlo
Gerador de
referncia
*
+
-
*
r
PI
Te
1
2 p
i*
Gerador de
referncia
Gerador de
referncia
+ V DC
*
a
i*b
Inversor
3~
PWM
BLDC
i*c
ib
Carga
ic
d
dt
r
Encoder/Hall Sensors
2.6.1
Controlo Escalar
Controlo V/F Este tipo de controlo destina-se a aplicaes onde no necessrio uma resposta
muito rpida nem muito precisa. As variveis de controlo so a tenso de alimentao e a frequncia.
Consiste em gerar uma amplitude de tenso fundamental que ir manter o fluxo aproximadamente constante aquando da variao de frequncia. Esta variao faz com que a indutncia do
estator varie, e por sua vez, variar a corrente e fluxo produzidos. Para manter essa corrente inicial,
ser ento preciso variar a tenso de entrada. Resulta assim ento que a relao V/F ter que ser
sempre aproximadamente constante.
As vantagens deste mtodo so [18]:
36
Corrente de referncia
37
Desempenho dinmico excelente, visto que a tenso mxima aplicada at que o erro da
corrente esteja entre os limites pr-definidos;
A dependncia dos parmetros do motor muito reduzida.
As desvantagens deste mtodo de controlo so [19]:
A frequncia do PWM no fixa: o controlador gera sub-harmnicos de ordem baixa; O
erro da corrente no est estritamente limitado. O sinal pode sair da banda de histerese
devido aos nveis de tenso das outras duas fases;
Normalmente no h interao entre as 3 fases: no existe nenhuma estratgia para gerar
vetores nulos;
Frequncia de comutao elevada: elevadas perdas de comutao;
Qualidade inferior de modulao.
2.6.2
PWM Sinusoidal
Neste mtodo de controlo podemos encontrar trs referncias de amplitude e frequncia varivel. Estas so comparadas em trs comparadores separados com uma onda portadora comum de
amplitude e frequncia fixa. Cada sada do comparador corresponde ao estado de comutao (0 ou
1). A figura 2.35 ilustra as formas de onda na sada, de acordo com a onda moduladora aplicada.
Onda moduladora
Onda portadora
38
2.6.3
Controlo Vetorial
Este o tipo de controlo mais utilizado na indstria atual. Veio introduzir no controlo de
motores AC o controlo independente de fluxo e binrio. O controlo vetorial provm do modelo
dinmico do motor, apresentado na figura 2.38:
39
q axis
V rqs
Vs
is
irqs=iT
V rds
i =i f
d axis
af
r
ds
Stator
Reference
frame
Assumindo que conhecida a posio do fasor do fluxo no rotor e que r o ngulo a que o
mesmo se encontra no eixo estacionrio, as trs correntes e tenses nas fases do estator, podem ser
transformadas nas suas componentes dq. Considerando as correntes como:
isa = sin(r t + )
(2.81)
isb = sin(r t +
2
)
3
(2.82)
isc = sin(r t + +
2
)
3
(2.83)
"
2 sin(r t)
3 cos(r t)
# isa
isb
isc
sin(r t 2
3 )
2
cos(r t 3 )
sin(r t + 2
3 )
2
cos(r t + 3 )
(2.84)
Substituindo as equaes 2.81 a 2.83 na equao 2.84, pode obter-se as correntes no estator
como:
" #
isd
isq
"
= is
sin( )
cos( )
(2.85)
As correntes dq so constantes em regime permanente, j que constante para uma dada carga.
Sendo estas constantes, so semelhantes s correntes da armadura e do campo num motor CC
40
FOC Convencional
O mtodo de controlo por orientao de campo, FOC, muito semelhante ao DTC. O fluxo
e binrio produzidos pelo motor so estimados atravs das correntes e tenses nas fases e so
introduzidos fluxos e binrios de referncia. H principalmente duas diferenas entre o DTC e
o FOC. No FOC, so controladas as correntes produtoras de fluxo (isd ) e de binrio (isq ) com
controladores PI, e no controlado diretamente o binrio, com controladores de histerese como
acontece no DTC. A outra diferena reside no modo como gerado o PWM: O DTC utiliza uma
look-up table, enquanto que o FOC utiliza o SVM (space vector modulation). A figura 2.39 mostra
uma perspetiva geral da aplicao do FOC num PMSM:
Vdc
N ref
I sqref
PI
I sdref
PI
PI
V sqref
dq
V sdref
I sq
I sd
dq
Va
Vb
Va
SVPWM
Vb Vc
Vc Setor
Setor
abc
Inversor
3~
I sa
I sb
Sensor de
velocidade/posio
PMSM
2
1
1
3 VDC , 3 VDC , 3 VDC
e 23 VDC .
Os vetores que tomam valores no nulos so denominados de estados ativos. Pode dizer-se que
o SVM um pouco semelhante ao funcionamento da look-up table do DTC. Ambos os mtodos
procuram gerar um vetor que ir enviar o sinal de PWM de modo a satisfazer os requisitos de
binrio e fluxo, dependendo da posio (setor) em que se encontra o rotor, atravs de um vetor Vs .
41
A figura 2.40 mostra os oito vetores de tenso possveis de um SVM no plano e a sua relao
com o inversor trifsico:
Se
to
tor
Se
r3
Setor 2
Se
tor
6
tor
Se
Setor 5
Figura 2.40: Oito vetores possveis por SVM de um inversor trifsico.
Os vetores tenso representam os estados de conduo dos interrutores 1,3 e 5. Tomando como
exemplo a aplicao do vetor tenso (010) no inversor, os interrutores 2, 3 e 6 encontram-se ativos
e as tenses compostas Vab , Vbc e Vca tomam valores Vdc , Vdc e 0 respetivamente. O vetor Vs
calculase atravs das tenses simples atravs da seguinte expresso [20]:
v(t) =
com a = 12 + j.
3
2
2
va (t) + a.vb (t) + a2 .vc (t)
3
(2.86)
por dois vetores Vk+1 e Vk em que k indica o setor em que o vetor Vs se encontra. O tempo de
conduo dos vetores nulos apresentado por t0 e os tempos de conduo dos vetores Vk+1 e Vk
so apresentados por tk+1 e tk respetivamente. O clculo de cada tempo de conduo definido
por [20]:
Vs
3
Ts sin( )
Vdc
3
Vs
tk = 3
Ts sin( )
Vdc
tk+1 =
t0 = Ts tk+1 tk
sendo Ts o tempo de amostragem.
(2.87)
(2.88)
(2.89)
42
prefervel gerar pulsos centrados durante o tempo de amostragem para obter uma operao
sncrona do inversor. No exemplo da figura 2.41 uma sequncia de pulsos centrados, dependendo
se o setor par ou mpar.
2.6.3.2
43
DTC Convencional
44
2.6.4
Lgica Difusa
O uso de mtodos de controlo baseados em lgica difusa tem vindo a tornar-se muito popular.
Resulta em controladores simples e baratos e que conseguem controlar sistemas muito complexos.
Podem encontrar-se sistemas de lgica difusa em produtos desde cmaras fotogrficas, mquinas
de lavar e microondas at sistemas industriais e instrumentao mdica.
A lgica difusa tem vindo a apresentar resultados superiores aos controladores convencionais.
Embora os resultados tenham sido superiores, o processo de afinao pode mostrar-se um pouco
complexo se o sistema assim o exigir. Contudo, a lgica difusa traz:
Modelao de sistemas no lineares;
Modelao intuitiva via termos lingusticos;
Controlo adaptativo.
A figura 2.43 mostra um diagrama de blocos que esquematiza a relao entre as trs principais
fases de um controlador difuso.
Entrada
Fusificao
Inferncia
Desfusificao
Sada
2.6.4.1
Fusificao
Nesta primeira etapa, as variveis de entrada so mapeadas em intervalos de valores, denominados funes de pertena que podem tomar formas diferentes, como ilustra a figura 2.44.
45
a)
b)
u1
u2
u3
c)
u1 u2
u3 u4
u1
Figura 2.44: Diferentes formas das funoes de pertena. a) triangular, b) trapezoidal, c) gaussiana
G-Grande
M-Mdio
P-Pequeno
0,5
0
2,5
3,5
5 u
As entradas na lgica difusa adotam nveis lingusticos simples, como por exemplo grande
ou pequeno. Estes nveis so denominados sets.
A figura 2.45 mostra um exemplo com trs sets triangulares.
atribuda a cada entrada um valor de pertena que define a "probabilidade"de essa entrada
pertencer ao intervalo de valores de uma determinada funo de pertena. Tomando o exemplo
da figura 2.45, para uma entrada u=2, o valor de pertena G vale 100% e as restantes 0%, pois
o valor da entrada no se encontra nos intervalos definidos pelas funes de pertena N e P. Para
o caso de u=2,5, o valor de pertena distribudo pelas funes de pertena G e N valendo 50%
para cada uma e 0% para a funo P. A partir deste momento, as variveis tomam a forma difusa.
Esta forma consiste em intervalos de valores e funes de pertena que de seguida sero usados na
avaliao feita por regras. Para os exemplos apresentados com u=2 e u=2,5, os resultados difusos
assemelham-se aos da figura 2.46.
a)
G
0,5
0
b)
N
0,5
1
5 u
2,5
5 u
Figura 2.46: a)Resultado difuso da fuzzyficao com u=2, b)Resultado difuso da fuzzyficao
com u=2,5
46
2.6.4.2
Inferncias
Aps a fuzzyficao, a entrada mapeada em sets segue para etapa que envolve decises, geralmente exprimidas em regras se-ento (if-then). Na inferncia reside todo o conhecimento do
sistema numa base de dados e a lgica decisiva que, para uma dada entrada, resulta uma determinada sada, recorrendo s regras se-ento. A complexidade da lgica difusa determinada pelo
nmero de regras implementadas. H sistemas mais simples que envolvem por exemplo apenas
trs regras, como h sistemas com centenas de regras. Quanto maior o nmero de entradas, certamente maior o nmero de regras que sero necessrias. A figura 2.47 apresenta um diagrama de
blocos mais detalhado de um controlador difuso.
Inferncia
Base de dados
Entrada
Fuzzyficao
Regras
Deciso
Desfuzzyficao
Sada
47
Min
2,5
1
0,75
5 u
Or
0,25
0
b)
M
Min
2,75
5 u
2,5
5 u
0,25
0
5 u
Figura 2.48: a)Resultado difuso da inferncia com u=2, b)Resultado difuso da inferncia com
u=2,75
2.6.4.3
Desfuzzyficao
Finalmente, passando por esta fase, a sada difusa da inferncia convertida em valores que o
sistema pode usar. De certa forma, o inverso da fuzzyficao. H vrios mtodos de desfuzzyficao, sendo de destacar: mdia de mximos, mdia pesada e centride, sendo este ltimo o mais
utilizado.
O mais simples, mdia de mximos, consiste em calcular o valor mdio de u para a funo de
pertena com valor mximo. Imagine-se que o resultado da inferncia uma agregao semelhante
ao do grfico da esquerda da figura 2.48b). A funo de pertena com valor mximo N. Usando
o mtodo de desagregao de mdia de mximos, o resultado seria
umax =
2, 75 + 3, 25
=3
2
(2.90)
48
O mtodo da mdia pesada consiste em calcular o valor mdio u para cada uma das funes
de pertena e de seguida a mdia. Tomando ainda o exemplo da figura 2.48b), o resultado seria:
Valor mdio do trapezide da esquerda: 2
Valor mdio do trapezide da direita: 3
um =
2+3
= 2, 5
2
(2.91)
O ltimo mtodo, centride, calcula o ponto central da rea da agregaao das funes de
pertena. Pode ser calculado por
R
.u du
ucent = R
u du
Z 1,25
.u du =
Z 2,25
(u-1)u du +
1
(2.92)
Z 2,75
0,25u du +
1,25
Z 3,25
(u-2)u du +
2,25
Z 4
0,75u du +
2,75
(-u+4)u du =
3,25
Z 1,25
u du =
Z 2,25
u-1 du +
1
Z 2,75
0,25 du +
1,25
Z 3,25
u-2 du +
2,25
Z 4
0,75 du +
2,75
-u+4 du =
3,25
(2.94)
.u du
= 2, 71
ucent = R
u du
2.7
(2.95)
Drives Sensorless
Nos ltimos anos, a tentativa de elaborar drives avanadas tem vindo a aumentar. A indstria, juntamente com universidades, tm vindo a desenvolver drives sem qualquer tipo de sensor
mecnico.
No incio, o desenvolvimento destes drives de alta dinmica foi um pouco dificultada, devido
pouca capacidade de clculo computacional da poca e por isso no lhe foi dada maior prioridade.
Dispositivos de clculo mais rpido, como por exemplo o DSP, vieram revolucionar os mtodos
de controlo e a ambio por drives sem qualquer tipo de sensor est prestes a concretizar-se.
O mbito principal deste tipo de drive bem evidente: a reduo de custos. Tomando como
exemplo a sensorizao da posio do rotor, o encoder reduz a robustez do sistema, no s em
proteo, como tambm em compatibilidade eletromagntica e temperatura. Para alm disto, a
instalao de um encoder nem sempre mecanicamente ou economicamente vivel. Condies
49
como altas temperaturas, e altas velocidades so mais algumas razes pela qual se opta por estes
drives.
Estes drives tambm podem ser utilizados para operaes de emergncia no caso da falha dos
sensores. Um processo suave de troca permite manter o drive em funcionamento at o sensor ser
reparado ou substitudo [21].
2.7.1
DTC Sensorless
Figura 2.49: Viso global de um DTC sem sensor de posio de um BLDC [8].
Neste sistema, apenas so utilizadas duas constantes de fora eletromotriz na estimao do binrio, ao invs das trs utilizadas na equao 2.38. Com isto, possvel utilizar uma transformao
de Park mais simples, ficando numericamente mais eficiente:
" #
Xd
Xq
"
#" #
2 sin(e 6 ) sin(e + 6 ) Xba
=
3 cos(e 6 ) cos(e + 6 )
Xca
(2.96)
Este drive utiliza conduo trifsica e no bifsica, como se fazia inicialmente. Isto permite
obter uma look-up table semelhante dos motores sncronos de manes permanentes. A estimao
do fluxo da conduo trifsica igual ao do da conduo bifsica, mas a estimao de binrio
difere um pouco. A estimao do fluxo de um BLDC pode ser representada semelhantemente
dos motores sncronos de manes permanentes pelas seguintes equaes:
50
s =
Z
s =
(Vs Rs is )
(2.97)
(Vs Rs is )
(2.98)
3P
fsq (e )irsq + fsd (e )irsd
4r
(2.99)
2.7.2
s Ls is
s Ls is
(2.100)
FOC Sensorless
A figura 2.50 mostra um FOC de regulao de velocidade sem sensor de posio nem de
velocidade. O nico elemento novo introduzido, em relao ao FOC convencional, o observador
de velocidade e de posio. O resto do controlo semelhante ao do FOC convencional.
Inversor
3~
Estimao de
posio e
velocidade
51
is = isa
isa + 2isb
is =
3
(2.101)
(2.102)
(2.103)
(2.104)
(2.105)
(2.106)
Vsa = Vs
Vs + 3Vs
Vsb =
2
Vs 3Vs
Vsc =
2
2.7.3
(2.107)
(2.108)
(2.109)
52
SVM DTC
V dc
d s
Correo do
vetor d s
+-
PI
Te
Te
d s
Is
Inversor
3~
SVM
Estimao de
binrio e fluxo
I s
V dc
ia
ib
1
s
ia ib
PMSM
2.7.4
Estimao de Velocidade
Uma tcnica comum de estimao de velocidade envolve os sinais gerados pelos sensores Hall.
Os sinais comutam a cada 60 eltricos. Sabendo o tempo entre comutaes, e o nmero de plos
que o motor tem, a velocidade do rotor em RPM pode ser aproximada por
Vr =
60
10
=
360
tcom p
tcom p 60
(2.110)
onde tcom o tempo entre comutaes. O tempo para percorrer um ciclo eltrico tcom 360
60 .
Os sinais dos sensores Hall so discretos, o que apresenta erro na estimao da velocidade, nomeadamente a velocidades mais baixas. A velocidade apenas determinada se houver comutao
dos sinais. No caso extremo de o motor sofrer uma travagem brusca, a velocidade real do rotor
nula, mas a ltima amostragem da velocidade apresenta um valor diferente de zero.
Uma outra desvantagem o sensor propriamente dito, pois contribui para um maior custo e
maior nmero de elementos no sistema, e acrescenta ainda a possibilidade de falha. Uma outra
soluo, desenvolvida em [10], envolve o cruzamento no zero da fora contraeletromotriz entre
fases estimada que ser usada para substituir os sinais dos sensores Hall. A estimao da fora
contraeletromotriz feita com
d(ix iy )
dt
(2.111)
53
1
eab
1
Fbc =
ebc
1
Fca =
eca
Fab =
(2.112)
(2.113)
(2.114)
Ignorando os harmnicos de ordem maior, a fora contraeletromotriz por fase pode ser exprimida por [10]
3Ecos t
3
ebc = 3Ecos(t)
eca = 3Ecos t +
3
eab =
(2.115)
(2.116)
(2.117)
2.7.5
Estimao de Posio
A estimao da posio pelos sensores Hall leva a um erro mximo de 60 eltricos e no caso
extremo em que o motor tem apenas um par de plos, o erro mximo da posio de 60 .
54
Fases Ativas
A,B
A,C
B,C
B,A
C,A
C,B
Funo
Fbc
Fab
Fca
Fbc
Fab
Fca
Em [11], apresentada uma nova tcnica de estimao de posio para motores com fora
contraeletromotriz trapezoidal. usado uma varivel que envolve a fora contraeletromotriz por
fase, no de plos do rotor e a constante de velocidade. Tal varivel vale
Yx =
Vx R + (L M) dtd ix
P2 Ke
(2.118)
Figura 2.53: Formas de onda da fora contraeletromotriz com informao da velocidade (r >0)
[11].
Figura 2.54: Formas de onda da fora contraeletromotriz com informao da velocidade (r <0)
[11].
As tabelas 2.4 e 2.5 resumem a estimao da posio tendo em conta o sentido de rotao,
onde um parmetro de afinao da forma de onda da fora contraeletromotriz.
55
Modo
Valores de Y
Modo
Valores de Y
10
10
11
11
12
ya
r
yc
3 r
yc
3 r
yb
2
3 + r
yb
2
3 + r
a
y
r
a
y
r
yc
4
3 + r
yc
4
3 + r
yb
5
3 r
yb
5
3 r
a
2 + y
r
12
ya
r
yc
3 r
yc
3 r
yb
2
3 + r
yb
2
3 + r
a
y
r
a
y
r
yc
4
3 + r
yc
4
3 + r
yb
5
3 r
yb
5
3 r
a
2 + y
r
2.7.6
tr (ms)
N/A
<1-2
<1-2
<1
Binrio de Arranque
Baixo
Alto
Alto
Alto
Custo
Muito Baixo
Alto
Alto
Alto
Aplicaes
Baixa Dinmica
Elevada Dinmica
Elevada Dinmica
Elevada Dinmica
Constata-se que a introduo do SVM no DTC diminui ligeiramente a sua resposta em regime
transitrio, mas como j foi referido no subcaptulo anterior, a sua resposta em regime permanente
melhora.
2.7.7
Difuso PID
A figura 2.55 revela o controlador difuso apresentado em [12] e a figura 2.56 a implementao do mesmo em Simulink.
56
Voltage
Source
Inverter
Fuzzy PID/
PID Controller
BLDC
Triggering
Signal
Hall Effect
Sensor
Inner Loop
Position
Sensor
Outer Loop
NB
NM
NS
PS
PM
NB
NB
NB
NB
NB
NM
NS
NM
NB
NB
NB
NM
NS
PS
NS
NB
NB
NM
NS
PS
PM
PB
NB
NM
NS
PS
PM
PB
PS
NM
NS
PS
PM
PB
PB
PM
NS
PS
PM
PB
PB
PB
PB
PS
PM
PB
PB
PB
PB
2.8 Aplicaes
2.8
57
Aplicaes
A maior parte da energia eltrica produzida utilizada para alimentar motores eltricos. As
duas divises da eletrnica de potncia, processamento digital de sinal e semicondutores de potncia, tm conseguido substituir os motores CC com escovas por motores CA nos drives de alta
performance.
Drives de menor dimenso Estes motores podem ser encontrados em sistemas de uso domstico, tais como secadores, mquinas de lavar roupa, aspiradores e frigorficos.
A informtica uma outra rea que integra estes motores. Podemos encontr-los em pequenos
dispositivos como discos rgidos, impressoras e scanners.
As ventoinhas de refrigerao de computadores e instrumentos utilizam motores BLDC de
manes permanentes, polos interiores salientes e um anel magntico exterior no rotor. Normalmente, estas ventoinhas esto ligadas a tenses mais baixas, como por exemplo 12, 24 e 42V, o
que permite controlar a velocidade eletronicamente de forma mais fcil. Em alguns sistemas, utilizado apenas um transistor de comutao. Em sistemas mais complexos, so utilizados circuitos
integrados com sensores de temperatura [13].
Drives Industriais Nos sistemas industriais, os drives esto presentes em, por exemplo, bombas
de calor. Na construo de bombas de calor, um dos grandes problemas a enfrentar a pouca
capacidade de dissipar o calor gerado pelos drives, que esto cada vez mais poderosos computacionalmente e densos. A utilizao de manes permanentes, para este sistema, permite:
Dissipar melhor o calor, pois as perdas de Joule apenas ocorrem no estator;
Uma construo mais simples da bomba de calor, j que no necessrio fornecer energia
excitao do rotor;
Reduzir os contactos mecnicos devido ausncia de escovas.
No caso de centrifugadoras e ventoinhas industriais, estes motores so escolhidos pois estes
sistemas exigem:
Controlo direto de acelerao e desacelerao;
Elevada velocidade de rotao;
Durabilidade.
Drives para Veculos Eltricos
58
Figura 2.57: Motores de manes permanentes integrados num veculo ligeiro [13].
um pra-arranca frequente, elevada acelerao e desacelerao, elevado binrio e alta velocidade,
ao contrrio dos drives industriais que apenas operam em condies contnuas.
possvel distinguir os drives num outro aspeto: o desempenho. Os veculos eltricos exigem alta densidade de potncia e elevada eficincia enquanto que na industria, necessrio um
compromisso entre densidade de potncia, eficincia e custo. Acrescenta-se ainda que os veculos eltricos necessitam de controlabilidade elevada e boa performance em regime permanente e
transitrio.
No projeto de drives para veculos eltricos, do ponto de vista da tecnologia, indispensvel
ter em conta alguns fatores [22]:
Configuraes de apenas um motor ou mltiplos: A configurao de mltiplos motores
tem as vantagens de reduzir a potncia dispendida por cada drive, simular o diferencial
eletronicamente, reduzir o peso e aumentar o espao disponvel, j que cada roda de trao
tem o seu motor. Apresenta a desvantagem de possveis falhas no diferencial eletrnico.
Transmisses de apenas uma velocidade ou mais: Transmisses de mltiplas velocidades
permite obter elevado binrio de arranque e elevada velocidade mxima, mas em contrapartida apresenta maior peso, maior volume e maior custo. Nas transmisses de apenas uma
velocidade, utilizando os mais recentes drives, estas desvantagens podem ser vencidas, e
acrescenta ainda maior suavidade na conduo e maior eficincia.
Tenso do barramento: Este fator pode ser considerado como o mais importante no projeto. Com a tenso adequada, o custo e volume dos conversores atenuado. Tenses demasiado altas podero levar a um maior nmero de baterias ligadas em srie, seguindo-se uma
reduo do espao no veculo e aumento do peso.
Aeronutica/Aeroespacial Os sistemas aeronuticos utilizam energia pneumtica, mecnica e
hidrulica para controlar o seu sistema. A energia mecnica extrada do motor de propulso.
Essa energia transferida para uma caixa de velocidades que controla acessrios, tais como as
bombas de combustvel, um gerador que fornece energia aos sensores e bombas hidrulicas que
2.9 DSP
59
2.9
DSP
Na dcada de 70, a Texas Instruments desenvolveu o primeiro DSP. Este dispositivo foi sofrendo atualizaes e hoje uma poderosa ferramenta de clculo. Inicialmente, o design das
drives inclua dispositivos analgicos, pois eram fceis de integrar e relativamente baratos. Em
contrapartida, necessitavam de uma regulao constante e a sua fiabilidade decrescia com o passar
do tempo devido a fatores externos como por exemplo variao da temperatura e compatibilidade
eletromagntica. A introduo de sistemas digitais elimina a possibilidade de interferncia de fatores externos, j que grande nmero das funes so feitas digitalmente e qualquer atualizao
que se deseje fazer, possvel fazer via software.
Ao nivel dos drives, a introduo de DSPs trouxe [7]:
Menor custo do sistema, j que permite um controlo eficiente numa grande gama de velocidades;
Reduo do ripple de binrio, resultando assim menor vibrao mecnica e maior tempo de
vida;
Reduo de harmnicos de ordem menor e do ripple de binrio atravs de algoritmos mais
avanados;
Implementao de algoritmos de controlo sem o auxlio de sensores;
60
DSP
Comando
Digital
+-
Amplificador
Controlador
Digital
D/A
Motor
A/D
Filtro
Sensor
2.10
Compatibilidade Eletromagntica
61
de ondas rdio"(RFI- Radio Frequency Interference) (100 kHz at 100 MHz) um termo que est
a cair em desuso e a ser substitudo pelo termo IE.
A IE pode ser transmitida em circuitos eltricos via:
Fios ou cabos (conduo);
Radiao como campo eltrico ou magntico de um circuito para outro.
As duas principais fontes de IE so:
Interferncia natural: Relmpagos, descargas eletrostticas e csmicas;
Interferncia artificial: Provm de qualquer circuito que produza arcos, circuitos que geram tenses no sinusoidais (produzem campos eltricos) e circuitos que geram correntes
no sinusoidais (produzem campo magntico).
Todo os circuitos eltricos devem ser considerados como fonte de IE, nomeadamente circuitos
que envolvam comutaes indutivas ou capacitivas. Felizmente, a maior parte da IE baixa e
passa praticamente despercebida.
A compatibilidade eletromagntica (EMC) a capacidade de um equipamento suportar determinada EMI, mantendo o seu funcionamento normal. A maior necessidade de dispositivos
eletrnicos, como por exemplo nos drives para motores, tem contribudo para o aumento da IE na
indstria. Dispositivos de tenso mais baixa e de frequncias de comutao mais elevada so os
que mais sofrem com a IE.
As correntes harmnicas nos elementos primrios dos sistemas provocam distoro nas formas
de onda da tenso que por sua vez afetam o desempenho dos elementos secundrios. Por exemplo,
uma distoro de apenas 2,5% pode provocar um aumento da temperatura em 4 C nos motores de
induo. Um outro problema gerado pelos harmnicos o sobreaquecimento, e consequentemente
o aumento das perdas. Ao longo dos anos, a gerao de correntes aproximadamente sinusoidais
pelos conversores tem vindo a melhorar devido implementao de tcnicas de PWM e de elevadas frequncias de comutao (10 a 20 kHz). Contudo, o conversor de potncia tornou-se a
principal fonte de EMI nos drives para motores.
O campo magntico gerado pelos conversores relativamente alto para proximidades inferiores a 10 cm, mas rapidamente atenua para distncias maiores devido proporcionalidade inversa
com a distncia ao quadrado. Quando os conversores so montados em caixas metlicas, a radiao eletromagntica reduz drasticamente.
O conhecimento da distoro harmnica total permite obter a qualidade da potncia produzida
nos sistemas. A equao seguinte mostra como possvel calcular a distoro harmnica total, em
percentagem, na corrente.
100
IT =
I1
In2
n=2
(2.119)
62
63
a)
b)
Q2
L
Q1
IO
Ds
Rs
Cs
C R
Snubber
Snubber
Figura 2.59: a) Exemplo de um snubber RC; b) Exemplo de um snubber RCD (adaptado de [14]).
Os filtros para EMI consistem em resistncias e condensadores shunt e bobines em srie como
ilustra o exemplo simples da figura 2.60. So normalmente usados perto da entrada de inversores
PWM modernos.
Entrada A
Entrada B
Carga A
C
Carga B
C
Entrada C
Carga C
C
R
C
Terra
64
Captulo 3
Simulao Comportamental
3.1
R
(R2010A)
e Simulink
uti-
6.21
1e-5
1e-5
3
Varivel
3.2
Sensores Hall
Para a leitura da posio do rotor, foram utilizados sensores Hall. Para cada combinao de
sinais dos sensores, foi-lhe atribudo um estado, resultando assim em seis estados no total, listados
na tabela 3.2
65
66
Simulao Comportamental
3.3
Estado
1
2
3
4
5
6
Inversor
3.3.1
Trifsico Convencional de Seis Interrutores
Simulink Web View - Created by Simulink Report Generator
file:///media/Data/MyDocuments/FEUP/5/Disse
O inversor trifsico convencional de seis interrutores simulado est apresentado na figura 3.1.
D
S
MOS22
Vdc
1
Mosfet 1
S
Mosfet 5
12 V
1m
100
1
Os sinais das gates so guardados nas tags MOS1, MOS2, MOS3, MOS4, MOS5 e MOS6,
tags essas que identificam o MOSFET em causa. As fases A, B e C do motor esto ligadas nos
ports de sada 1, 2 e 3 respetivamente.
1 of 1
MOS55
MOS6
D
MOS5
Mosfet 3
m
Mosfet 2
g
m
MOS3
EMF Zero
Vdc Cross Detectio
EstimaoBEMFMOS4
Estimacao Ea
Estimacao Eb Mosfet 4
Estimacao Ec
EstimacaoBEMFSinusoid
EstimaoBinario
Embedded MATLAB Fun
Embedded MATLAB Fun
EstimaoPosioInicialRot
Teta Eletrico Estimado
Teta Inicial
EstimaoSinaisHallSensors
Embedded MATLAB Fun
EstimaoVelocidade
Embedded MATLAB Fun
Embedded MATLAB Fun
Embedded MATLAB Fun
Embedded MATLAB Fun
Embedded MATLAB Fun
Embedded MATLAB Fun
Full Bridge
Hall Sensors
Look up Table
Look up Table
Medies
Sadas Motor + Converses
MOS2
Simulink Root ?
Full Bridge
MalhaFechadaV20
MOS1
Controlador
Controlador
Look up Table V1
Look up Table V3 Mosfet
Look up Table V4
Definio de Parmetros
EMF Zero Cross Detection
Vdc
3.4
67
Malha Aberta
Vetor (T1,T2,T3,T4,T5,T6)
100001
010001
010100
001100
001010
100010
No Vetor
1
2
3
4
5
6
Foram efetuados dois testes simples para analisar as formas de onda da velocidade, tenses,
correntes e binrio gerados. O primeiro teste tem a durao de 30 ms e o binrio da carga nulo.
O segundo teste dura 50 ms e foi aplicado uma carga de 1 N.m. em degrau aos 20 ms.
3.4.1
As formas de onda obtidas para a velocidade, binrio, correntes nas fases e tenses entre fases
produzidos encontram-se nas figuras, 3.2, 3.3, 3.4 e 3.5 respetivamente.
Figura 3.2: Forma de onda da velocidade obtida no primeiro teste em malha aberta.
Figura 3.3: Forma de onda do binrio obtido no primeiro teste em malha aberta.
68
Simulao Comportamental
Figura 3.4: Formas de onda das correntes nas fases obtidas no primeiro teste em malha aberta.
Figura 3.5: Formas de onda das tenses entre fases obtidas no primeiro teste em malha aberta.
3.4.2
As formas de onda obtidas para as mesmas grandezas do teste anterior encontram-se nas figuras 3.6, 3.7, 3.8 e 3.9 respetivamente.
Figura 3.6: Forma de onda da velocidade obtida no segundo teste em malha aberta.
Figura 3.7: Forma de onda do binrio obtido no segundo teste em malha aberta.
69
Figura 3.8: Formas de onda das correntes nas fases obtidas no segundo teste em malha aberta.
Figura 3.9: Formas de onda das tenses entre fases obtidas no segundo teste em malha aberta.
3.4.2.1
70
Simulao Comportamental
A estimao da potncia pode ser feita tendo em conta o binrio mximo e velocidade mxima
do motor em rad/s com
P = TmaxVmax = 2, 81 350, 9 = 986 W
(3.1)
Analisando a fase inicial das figuras 3.3 e 3.4, possvel calcular a constante de binrio do
motor pela expresso
Tpico = Kt Ipico
(3.2)
O valor de pico da corrente da fase A e o valor de pico do binrio produzido foram 48,4 A e
2,8 N.m respetivamente. O valor de Kt obtido foi:
Kt =
3.4.2.2
2, 8
= 0, 058 N.A1
48, 4
Como seria de esperar, a introduo de uma carga resistiva provocou uma ligeira atenuao da
velocidade e um aumento da corrente, e como consequncia um aumento do binrio para manter
o motor em rotao.
A figura 3.11 mostra uma ampliao da corrente em regime permanente durante o segundo
teste e as figuras 3.12 e 3.13 contm os sinais gerados pelos MOSFETS no mesmo intervalo de
tempo da figura 3.11. possvel constatar que a comutao trapezoidal foi corretamente implementada. O perodo da forma de onda da corrente obtido cerca de 11,3 ms e o intervalo de tempo
em que a corrente tem valor diferente de 0 aproximadamente 2x3,8 ms, que se pode aproximar
em dois teros do perodo ou 240 eltricos. O intervalo de tempo em que a corrente nula cerca
de 2x1,48 ms, que prximo de um tero do perodo, ou seja, 120 eltricos.
A indutncia de fugas do motor no permite ter um gradiente de corrente infinito. Devido a
isto, as trs fases conduzem simultaneamente durante um curto intervalo de tempo (330 s) aps
os instantes de comutao, como possvel verficar na figura 3.11.
A corrente gerada pelas fases tem algum ripple. Obviamente, esse ripple visvel no binrio
produzido, tal como se apresenta na figura 3.7.
A polaridade das correntes por fase encontra-se tambm de acordo com os sinais gerados
pelos respetivos MOSFETS. Quando os MOSFETs ligados a +Vdc se encontram em conduo, a
corrente na fase respetiva positiva; quando ligados massa, a corrente negativa, e finalmente
quando nenhum MOSFET conduz, a corrente nula. Estendendo este princpio a todas as fases,
confirma-se o equlibrio das correntes ia +ib +ic =0.
71
Figura 3.11: Ampliao das formas de onda das correntes nas fases do segundo teste em malha
aberta.
Figura 3.12: Sinais gerados pelos MOSFETs ligados a +Vdc no segundo teste em malha aberta.
Figura 3.13: Sinais gerados pelos MOSFETs ligados massa no segundo teste em malha aberta.
3.5
Malha Fechada
3.5.1
3.5.1.1
72
EabEstimado
Add5
Goto7
EbcEstimado
Add4
Goto8
EacEstimado
Add6
Goto9
mado2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Simulao Comportamental
BEMF Sinusoidal
We
we
TetaEletricoFinal
Ke
fcn
Ke
Ea
EaEstimado2
Eb
EbEstimado2
EcEstimado2
Ec
EstimacaoBEMFSinusoidal
EabEstimado2
EbcEstimado2
EcaEstimado2
mado
Scope
s-function tem como entradas a posio eltrica do rotor, a constante Ke e a velocidade eltrica
?
EstimaoBEMF
do rotor. As foras
contraeletromotrizes
entre fases foram estimadas de maneira semelhante
|
|
estimao anterior. Mais uma vez, a estimao feita envolve o "desenho"da forma
de onda da
|
Trapezoidal
fora contraeletromotriz, baseando-se BEMF
na posio
eltrica do rotor.
TetaEletricoFinal
t
Ke
fcn
EbEstimado
We
Estimacao Eb
Ke
fcn
EcEstimado
We
EbcEstimado
Estimacao Ec
We
EacEstimado
t
Ke
fcn
We
Estimacao Ea
BE
We
01/22/2013
10:39 PM
EabEstimado
t
Ke
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
EaEstimado
TetaEletricoFinal
fcn
Ke
Eb
Ke
time
Ec
EstimacaoBEMFSinusoid
traeletromotriz trapezoidal virtual encontram-se nas figuras 3.16 e 3.17 respetivamente. O teste
aplicado foi o teste 1 da malha aberta.
Ea
we
Ia
EaEstimado
Scope
73
Figura 3.18: Relao entre fora contraeletromotriz sinusoidal estimada e a corrente na fase A.
Nesta ltima fase, variou-se a posio inicial do rotor de modo a obter um erro de 60 eltricos.
Os resultados obtidos para a estimao da fora contraeletromotriz sinusoidal e fora contraeletromotriz trapezoidal esto apresentados nas figuras 3.20 e 3.21 respetivamente. Novamente, para
elevar a percetibilidade, efetuou-se o teste 2 da malha aberta.
3.5.1.2
Foi simulada uma outra tcnica de estimao da fora contraeletromotriz usando valores de
grandezas entre fases, obtendo assim a fora contraeletromotriz entre fases. Com a equao 2.37,
podem obter-se as foras contraeletromotrizes. As expresses ficam
74
Simulao Comportamental
Figura 3.19: Relao entre fora contraeletromotriz trapezoidal estimada e a corrente na fase A.
Figura 3.20: Resultado da estimao da fora contraeletromotriz sinusoidal com erro mximo.
Figura 3.21: Resultado da estimao da fora contraeletromotriz trapezoidal com erro mximo.
diab
dt
dibc
ebc = vbc Ribc L
dt
dica
eca = vca Rica L
dt
eab = vab Riab L
(3.3)
(3.4)
(3.5)
A figura 3.22 revela a perspetiva geral da estimao implementada. O bloco s-function tem
como entradas as tenses, correntes e derivadas das correntes entre fases do motor e a resistncia
e indutncia por fase.
O resultado da estimao para as fases A e B est mostrado na figura 3.23. Foi usado como
referncia o resultado vindo da tag EabEstimado2. A posio do rotor no tem deslocamento
EabEstimado
Estimado
EbcEstimado
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ke
EcEstimado2
Ec
Add3
3.5 Malha
Fechada
EacEstimado
EaEstimado
_______________________________________________
Scope
Scope4
Add1
Goto2
EstimacaoBEMFSinusoidal
75
vab
K (z-1)
Ts z
Diab
Iab
EabEsti
Eab
EabEstimado3
Ebc
EbcEstimado3
Eca
EcaEstimado3
iab
94e-6
0.006
Vbc
vbc
K (z-1)
Ts z
Dibc
Ibc
fcn
ibc
Vca
vca
K (z-1)
Ts z
Dica
Ica
ica
EstimacaoBEMFSinusoidal2
Figura 3.22: Perspetiva geral da estimao da fora contraeletromotriz sinusoidal entre fases.
inicial. Os resultados apresentaram algum rudo e por isso foi necessrio colocar um filtro passa
baixo sada do bloco s-function. A constante de tempo de 50 s
3.5.1.3
76
Simulao Comportamental
sensores adicionais para obter a tenso das fases e ainda uma maior capacidade de clculo pois
envolve o operador derivativo.
3.5.2
lhante funo F apresentada em [10], que depois ir ser usada para detetar o cruzamento no zero
da fora contraeletromotriz.
EaEstimado2
ea
EbEstimado2
eb
EcEstimado2
ec
Y1
y1
fcn
y2
y3
Y2
Y1
Y3
>= 100
Y2
>= 100
Y3
>= 100
Y2
Scope2
Y3
Figura 3.24: Perspetiva geral do mtodo de gerao da funo Y usada na estimao do cruzamento no zero da fora contraleletromotriz em Simulink.
HallA
HallB
1
;
eab
1
;
Y2 =
ebc
1
Y3 =
;
eca
Y1 =
A deteo do cruzamento no zero envolve um valor limite relativamente alto, pois a funo
Y pode tomar valores relativamente altos quando cruza no zero. O valor de limite escolhido foi
de 100. Sempre que o valor da funo Y seja superior ao valor de limite, gerado um impulso,
criando assim um trem de impulsos que representam o cruzamento no zero das trs foras contraeletromotrizes entre fases. O resultado da funo Y e o trem de impulsos gerados durante o
primeiro teste em malha aberta esto mostrados nas figuras 3.25 e 3.26 respetivamente.
3.5.2.1
Usando como referncia a figura 3.23, pode concluir-se que a estimao foi bem efetuada. Pela
figura 3.23, constata-se que o cruzamento no zero ocorre nos instantes 2, 7, 12, 17, 22 e 27 ms
aproximadamente. Nesses mesmos instantes, a funo Y1 produziu um valor superior ao limite
imposto e gerou os impulsos a amarelo na figura 3.26.
HallC
77
Figura 3.26: Trem de impulsos gerado pela funao Y no primeiro teste em malha aberta.
necessrio ter algum cuidado na escolha do valor limite, pois um valor demasiado elevado
pode levar ao "salto"de impulsos pois a funo Y pode no gerar esse valor. A escolha de um valor
demasiado baixo pode levar gerao de impulsos "falsos"devido ao rudo. Esta situao agravase ainda mais a velocidades mais baixas, pois, a funo Y pode gerar sempre valores elevados e
superiores ao valor limite escolhido e no so gerados impulsos.
Os sinais gerados pelos sensores Hall durante o primeiro teste em malha aberta encontram-se
na figura 3.27.
Figura 3.27: Sinais dos sensores Hall gerados durante o primeiro teste em malha aberta.
Confirma-se facilmente que os impulsos gerados pela funo Y coincidem com as comutaes
dos sinais dos sensores Hall e que o cruzamento da funo Y1 indica a comutao do sensor
Hall da fase B, Y2 a comutao da fase C e Y3 a comutao do sensor da fase A. Concluindo,
este mtodo permite substituir os sinais gerados diretamente pelos sensores Hall, podendo assim
78
Simulao Comportamental
3.5.3
Analisando as formas de onda das funoes Y1, Y2 e Y3 na figura 3.25 e os sinais gerados na
figura 3.27, verifica-se que para cada estado dos sensores Hall, as funes Y1, Y2 e Y3 apresentam
polaridades diferentes. Com isto, foi possvel estimar os sinais dos sensores Hall de acordo com a
polaridade das funes Y1, Y2 e Y3. A tabela 3.5 mostra quais os sensores ativos tendo em conta
a polaridade da funo Y.
Tabela 3.5: Estimao dos sensores ativos de acordo com a polaridade da funao Y.
Y1
Y2
Y3
Sensor Ativo
A, C
A, B
B, C
Figura 3.28: Sinal estimado do sensor Hall A gerado durante o primeiro teste em malha aberta.
79
Figura 3.29: Sinal estimado do sensor Hall B gerado durante o primeiro teste em malha aberta.
Figura 3.30: Sinal estimado do sensor Hall C gerado durante o primeiro teste em malha aberta.
3.5.4
Estimao do Binrio
dr
+ Fr
dt
(3.6)
Para o mtodo 5, foi necessrio trabalhar a equao 2.38 para ser possvel us-la no sistema
da figura 3.35. Sendo o motor ligado em estrela, os valores de corrente e fora contraeletromotriz
Abs
|
Ib
|u|
|
|
Abs1
Ib
Ic
ib
|u|
|
|
Abs2
|
Ic
ic
|
|
W
w
|
|
_____________________________________________________________________________________________________________________________________________________________________________________________
|
|
|
|
EabEstimado2
ea
|
|
|
Carga
EbcEstimado2
eb
K (z-1)
|
W
BinarioEstimado4
Ts z
|
EcaEstimado2
ec
|
|
J
Iab
ia
fcn bina
|
|
W
|
Ibc
ib
|
|
F
Ica
ic
|
|
W
w
|
Ia
ia
fcn binario
BinarioEstimado2
80
Simulao Comportamental
Simulink
? Root
idal
EstimaoBinario
Figura
3.31: Estimao do binrio atravs da equao do movimento em Simulink.|
|
|
|
|
|
|
EaEstimado
|
|
|
|
FaseA
|
|
Ia
|
Ia
|
|
EaEstimado
|
ea
|
|
|
EbEstimado Ia
|
|
Ib
abc
|
EbEstimado
eb
|
|
Fas
dq0
|
Ib
|
|
Ib
|
sin_cos
|
|
Ic
EcEstimado
ec
|
BinarioEstimado1
o
|
|
EcEstimado
|
|
|
Ic
Iasin
BinarioEstimado1
ia
Fas
fcn binario
|
|
|
TetaEletrico
Ic
Ke
|
|
|
sin
|
|
BinarioEstimado3
|
Ib
ib
TetaEletrico
|
|
|
cos
|
|
|
Ic
ic
|
|
EaEstimado2
3/2*P
|
|
|
cos
|
|
|
____________________________________________________________________________________________________________________________________________________________________
W
w
|
Ia
|
|
|
|
|
|
_____________________________________________________________________________________________________________________________________________________________________________________
|
|
EbEstimado2
|
|
|
|
|
|
Ib
|
|
|
|
|
|
|
|
|
EcEstimado2
EaEstimado2
ea
|
|
|
|
|
|
Ia
Ic
|u|
EbEstimado2
eb
|
|
|
Abs
|
|
|
narioEstimado2
Ib
BinarioEstimado5
|u|
-K|
|
|
EcEstimado2
Ia
ec
|
|
Abs1
|
BinarioEstimado1
Ic
|u|
|
|
|
Ia
BinarioEstimado2
Ib
ia
fcn binario
|
|
|
Abs2
BinarioMedido
|
|
|
|
|
Ib
Ic
ib
|
BinarioEstimado2
|
|
|
|
|
|
Ic
ic
|
|
BinarioMedido
|
|
|
___________________________________________________________________________________________________________________________________________________________________
|
|
|
W
BinarioEstimado3
w
|
|
|
|
|
|
BinarioMedido
|
|
|
_____________________________________________________________________________________________________________________________________________________________________________________
|
|
|
BinarioEstimado4
|
|
al
Com
Equacao
Com
BEMFVetorial
Trapezoidal
Com
Co
file:///media/Dat
mento
|
Figura 3.33:| Estimao do binrio com corrente trapezoidal e fora contraeletromotriz sinusoidal
Simulink
|
|
? Root
EstimaoBinarioCom Equacao do Movimento
|
|
|
em Simulink.
BinarioEstimado4
0.5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TetaEletrico
BinarioMedido
BinarioEstimado5
|
|
|
BinarioMedido
|
BinarioEstimado4
0.5
EaEstimado
|
ea
Ia
J
|
|
EbEstimado
eb
|
Scope8
Ib
abc
WEstimado
|
EcEstimado
ec
|
sin_
|
Ic
F
Ia
BinarioEstimado1
ia
fcn binario
|
|
Scope8
sin
|
Ib
ib
|
|
Ic
ic
|
cos
|
W
w
|
|
|
__________________________________________________________________________________________________________________________________________________________________________________________________
|
|
|
|
|
EaEstimado2
ea
|
|
EbEstimado2
eb
|
|
|
EcEstimado2
Ia
ec
|u|
|
ff
Abs
|
Ia
BinarioEstimado2
Ib
ia
fcn binario
|u|
|
|
Abs1
Ib
Ic
ib
|u|
|
|
|
|
|
|
|
|
|
|
WEstimado
K (z-1)
Ts z
Carga
entre fases so
Com Equaca
Com Cons
a fora contraeletromotriz
|
Abs2
|
|
|
W
w
|
|
|
__________________________________________________________________________________________________________________________________________________________________________________________________
|
Ic
ic
|
|
|
|
Ia
|u|
|
|
Abs
|
|
BinarioEstimado2
Ib
BinarioEstimado5
ario
|u|
Kt
|
|
|
|
Abs1
Ic
|u|
|
|
|
|
Abs2
|
|
|
|
|
|
|
|
|
|
_________________________________________________________________________________________________________________________________________________________________________________
|
|
|
|
|
|
|
|
EabEstimado2
ea
|
|
|
|
|
|
EbcEstimado2
eb
|
|
BinarioEstimado4
|
|
EcaEstimado2
ec
|
|
|
|
Iab
BinarioEstimado6
ia
fcn binario
|
|
|
|
|
|
Ibc
ib
|
|
|
|
Ica
ic
|
|
|
|
W
w
|
|
Ic
BinarioEstimado1
BinarioMedido
do Movimento
81
BinarioMedido
BinarioEstimado3
BinarioMedido
BinarioEstimado4
BinarioMedido
BinarioEstimado5
BinarioMedido
BinarioEstimado6
(3.7)
Isto significa que, para manter a mesma relao exprimida na equao 2.38, a estimao de
binrio com fora contraeletromotriz e correntes entre fases pode ser feita com
Te =
(3.8)
Seguiu-se o segundo teste em malha aberta e o resultado gerado da estimao de binrio pelo
mtodo 3 est apresentado na figura 3.36. Os resultados de todas as estimaes, a nvel grfico,
foram muito semelhantes, com a bvia exceo do binrio virtual.
3.5.4.1
1/3
BinarioMedido
Figura 3.35: Estimao do binrio com corrente e fora contraeletromotriz sinusoidais entre fases
em Simulink.
ef f if f
Te =
=
r
BinarioEstimado2
Foi analisado o integral do erro absoluto para ter uma melhor noo do erro. O erro obtido por
cada estimao encontra-se na tabela 3.6.
Foi calculado o valor mdio do binrio produzido pelo motor e o do binrio virtual estimado
durante o mesmo teste para comparar os resultados. Foi aplicado novamente o segundo teste, mas
82
Simulao Comportamental
Erro (N.m/s)
3,8 103
23,8 103
23,8 103
23,8 103
com cargas diferentes. A figura 3.37 contm o resultado obtido para uma carga em degrau de 1
N.m. O sumrio dos resultados obtidos est mostrado na tabela 3.7.
Figura 3.37: Resultado obtido para a estimaao do binrio virtual para uma carga em degrau de 1
N.m. durante o segundo teste em malha aberta.
Tabela 3.7: Valores mdios obtidos de binrio estimado virtual e binrio medido para vrias cargas
em degrau durante o segundo teste em malha aberta.
Carga (N.m)
1
1,25
1,5
1,75
Binrio
Binrio Virtual
Binrio Medido
Binrio Virtual
Binrio Medido
Binrio Virtual
0,7796
0,6415
0,96
0,79
1,14
Binrio Medido
0,94
Binrio Virtual
1,32
Binrio Medido
1,09
Analisando a tabela 3.6, conclui-se que todas as estimaes apresentaram um erro muito baixo
e que o uso de qualquer uma uma boa opo. Quanto ao clculo envolvido, os piores casos
seriam o mtodo 2, pois h necessidade de transformar a representao das grandezas e o mtodo
1 em que necessrio conhecer bem os parmetros de inrcia e fator de perdas do motor e requer
ainda alguma capacidade de clculo computacional devido ao operador derivativo. Nos mtodos
3 e 4, o deslocamento inicial da posio eltrica do rotor um elemento crucial. A hiptese mais
83
simples de simular e implementar o terceiro caso, que envolve grandezas por fase e apenas dois
sensores de corrente.
Os valores da tabela 3.7 permitem concluir que, com a mesma amplitude de correntes trapezoidais e fora contraeletromotriz geradas, um motor com fora contraeletromotriz trapezoidal
produz mais binrio. Isto deve-se ao facto de o valor eficaz da fora contraeletromotriz trapezoidal
ser maior que o valor eficaz da sinusoidal. Recordando as equaes 2.48 e 2.54 e considerando
a mesma amplitude de correntes e fora contraeletromotriz usadas no segundo teste em malha
aberta, a relao ideal esperada entre a mdia do binrio virtual produzido e o medido :
Ttrap
2
= = 1, 21
3
3
Tsin
(3.9)
onde Ttrap e Tsin o binrio produzido com fora contraeletromotriz trapezoidal e com fora
contraeletromotriz sinusoidal, respetivamente. As relaes entre o binrio estimado virtual e o
binrio medido para cada teste esto resumidas na tabela 3.8.
Tabela 3.8: Resultados do integral do erro absoluto de cada estimao de binrio.
Carga (N.m)
Desvio (%)
1,215
0,4
1,25
1,215
0,4
1,5
1,213
0,25
1,75
1,211
0,08
Conclui-se que os resultados obtidos diferem muito pouco do esperado apesar da no idealidade das correntes produzidas.
3.5.5
Estimao da Velocidade
file:///medi
Simulao Comportamental
|
|
|
|
|
|
In
|
|
S/H
t1
|
|
Y1
>= 100
S
|
|
|
|
|
|
K (z-1)
EabEstimado2
|u|
|u
|
|
Ts z
In In
|
|
S/HS/H
VelocidadeRPMEstimada
t1 t2
|
fcn speed
|
Y1
Y2
>=
S S
>=100
100
|
|
|
|
|
K (z-1)
|
EabEstimado2
|u|
|u|
<= 10
|
Ts z
In
|
K (z-1)
In
|
EbcEstimado2
|u|
|u
S/H
VelocidadeRPMEstimada
t2
speed
|
fcn
Ts
z
|
S/H
Y2
t3
>= 100
S
|
|
Y3
>= 100
S
|
|
|
|
____________________________________________________________________________________________________________
|
K (z-1)
|
In
EbcEstimado2
|u|
|u|
<= 10
|
Ts z
S/H
|
t3
|
Y3
>= 100
S
|
|
K (z-1)
|
EcaEstimado2
|u|
|u
|
Ts z
|
____________________________________________________________________________________________________________
|
|
|
In
|
| __________________________________________________
S/H
max
K (z-1)
t1
|
| EcaEstimado2
|u|
|u|
<= 10
HallA
S
Ts z
|
|
|
|
In
____________________________________________________
|
|
S/H
max
t1
|
|
HallA
S In
|
S/H
|
VelocidadeRPMEstimada2
max
t2
speed
fcn
|
HallB
S
|
|
|
|
In
|
S/H
|
VelocidadeRPMEstimada2
max
t2
speed
fcn
HallB
S
|
|
In
K (z-1)
|
| EaEstimado2
|u|
|u|
S/H
max
t3
Ts z
|
|
HallC
S
|
|
In
K (z-1)
| EaEstimado2
|u|
|u|
<= 10
S/H
|
max
t3
Ts z
|
HallC
S
|
____________________________________________________________________________________________________________
|
|
|
|
|
____________________________________________________________________________________________________________
K (z-1)
| EbEstimado2
|u|
|u|
|
Ts z
|
|
|
BinarioEstimado2
K (z-1)
| EbEstimado2
|
|u|
|u|
<=
10
|
|
Ts z
| |
|
|
BinarioEstimado2
Carga
| |
|
|
| | VelocidadeRPM
VelocidadeRPMEstimada5
30/pi
|
|
Carga
| |
K Ts
|
|
VelocidadeRPMEstimada5
J
F
In 30/pi
|u|
| | VelocidadeRPMEstimada
|
z-1
S/H
|
K (z-1)
| |
eab
|
J
F
S
EcEstimado2
|u|
|u|
|
|
| | VelocidadeRPM
Ts z
K (z-1)
K
(z-1)
|
EcEstimado2
K<=
Ts10
|u|
|u|
|
|
|
In
Ts
z
|u|
K (z-1)Ts z
S/H
|
|
| | VelocidadeRPMEstimada2
K (z-1)
z-1
t1
EabEstimado2
S
|u|
|u| Ts z <= 10
|
____________________________________________________________________________________________________________
|
|
Ts z
|
| VelocidadeRPM
____________________________________________________________________________________________________________
|
|
|
In
K
Ts
|
|
| | VelocidadeRPMEstimada3
|u|
S/H
|
ebc
|
z-1
S
| |
|
|
VelocidadeRPMEstimada3|
fcn speed
| VelocidadeRPM
|
|
In
K Ts
| |
S/H
|
K (z-1)
|
|u|
t2
EbcEstimado2
VelocidadeRPMEstimada4
|
ZeroCrossDetection
Simulink
? Root
EstimaoVelocidade
ZeroCrossDetection
BEMF
HallSensors
Figura 3.38: Estimao da velocidade atravs
do cruzamento no zero da fora contraleletromotriz
em Simulink.
HallSensors
BEM
file:///media/Data/MyDocuments/FEUP/5/Dissertao
ocidade
Equao do Movimento
Equao
dodos
Movimento
Figura 3.39: Estimao da velocidade
atraves
sinais gerados pelos sensors Hall em Simulink.
BEMFEntreFases
VelocidadeRPMEstimada
S
|u|
|u|
<= 10
|
|
Ts z
|
|
| VelocidadeRPM
In
|
|
eca
S/H
|
______________________________________
| VelocidadeRPMEstimada5
S
|
|
|
|
In
|
t3
S/H
|
K (z-1)
VelocidadeRPMEstimada
|
EcaEstimado2
S
|u|
|u|
<= 10
|
Ts
z
|
|
|
VelocidadeRPM
|
_____________________________________________________________________________________________________________________________________
|
|
|
|
|
VelocidadeRPMEstimada2
|
|
|
|
|
|
|
|
VelocidadeRPMEstimada2
In
fcn speed
|
VelocidadeRPMEstimada3
S/H
|
eab
S
|
|
|
|
In
|
|
S/H
K (z-1)
|
t1
| EaEstimado2
S
|u|
|u|
<= 10
Ts
z
|
VelocidadeRPMEstimada4
|
|
|
In
|
S/H
|
ebc
S
|
|
______________________________________
VelocidadeRPMEstimada4
|
|
fcn speed
VelocidadeRPMEstimada5
In
|
|
S/H
K (z-1)
|
t2
| EbEstimado2
S
|u|
|u|
<= 10
Ts z
|
|
| pi/30
|
In
|
|
WEstimado
eca
S/H
|
|
S
VelocidadeRPMEstimada5
|
|
|
|
In
3
t3
|
|
S/H
K (z-1)
|
S
|u|
|u|
<= 10
| EcEstimado2
Ts z
1
|
|
s
|
|
______________________________________
|
|
|
|
f(u)
|
|
|
|
|
|
|
|
|
z-1
|u|
K Ts
z-1
Scope7
Figura 3.40: Estimao da velocidade atravs da relao entre a constante de velocidade e fora
BEMF por fase
contraeletromotriz entre fases em Simulink.
Scope1
Scope2
tempo entre os dois pulsos gerados mais recentemente calculado simplesmente pela subtrao
dos dois e finalmente estimada a velocidade tendo em conta esse tempo e pares de plos.
Scope3
A estimao de velocidade pelos sensores Hall muito semelhante estimao pelo cruza-
ento
mento no zero. So detetados os pulsos de subida e de descida de todos os sinais gerados pelos
Scope4
sensores. Quando detetados, os samples and hold amostram esse tempo. Esses tempos passam por
um bloco de mximo para obter o tempo da comutao mais recente para cada um dos sensores.
De seguida, dentro do bloco s-function, o processo exatamente o mesmo que o da estimao pelo
1 of 1
WEEstimado
Goto2
TetaEletricoEstimad
________________________________________
EbcEstimado2
S
|u|
|u|
<= 10
|
Ts z
|
In
|
eca
S/H
|
S
|
|
In
|
t3
S/H
K (z-1)
| EcaEstimado2
S
|u|
|u|
<= 10
Ts z
|
|
___________________________________________________________________________________________________________
|
|
|
|
|
|
|
In
|
S/H
ea
S
|
|
In
|
S/H
K (z-1)
t1
| EaEstimado2
S
|u|
|u|
<= 10
Ts z
|
|
In
S/H
|
eb
S
|
VelocidadeRPMEstimada4
|
fcn speed
In
|
S/H
K (z-1)
t2
| EbEstimado2
S
|u|
|u|
<= 10
Ts z
|
|
In
|
ec
S/H
|
S
|
|
In
t3
|
S/H
K (z-1)
S
|u|
|u|
<= 10
| EcEstimado2
Ts z
|
|
|
|
|
|
|
|
fcn speed
VelocidadeRPMEstimada2
_________________________________________
mento
VelocidadeRPMEstimada5
_________________________________________
Web
View - Created by Simulink Report Generator
| VelocidadeRPMEstimada4
|
| VelocidadeRPM
|
| VelocidadeRPMEstimada5
|
|
|
VelocidadeRPMEstimada
|
|
VelocidadeRPM
|
85
|
|
VelocidadeRPMEstimada2
|
|
|
|
|
VelocidadeRPMEstimada3
|
|
|
|
|
VelocidadeRPMEstimada4
|
|
|
|
VelocidadeRPMEstimada5
|
|
|
| pi/30
|
WEstimado
|
|
|
3
|
|
1
|
s
|
|
|
f(u)
|
|
|
|
|
file:///home/marc/untitled_slwebview_files/index.html
Figura 3.41: Estimao da velocidade atravs da relao entre a constante de velocidade e fora
contraeletromotriz por fase em Simulink.
Simulink Root
untitled
untitled
BinarioEstimado2
K Ts
1/J
Carga
z-1
30/pi
VelocidadeRPMEstimada5
cruzamento no zero.
Os seguintes processos, estimao pela equao 2.47, so muito semelhantes entre si, tirando
o facto que um utiliza a fora contraeletromotriz entre fases, mtodo 3 e outro a fora contraeletromotriz por fase, mtodo 4. Ambos os processos comeam por retificar as formas de onda.
O prximo passo derivar essas formas de onda e retificar esse resultado. O valor mximo das
formas de onda obtido quando a derivada zero, por isso, definiu-se um limite para detetar a
ocorrncia do valor mximo. Quando a derivada da forma de onda se encontra abaixo do valor
limite, so gerados pulsos. Cada forma de onda usa dois sample and hold. Quando recebidos os
pulsos, um amostra o tempo da ocorrncia doCarga
valor mximo e o outro amostra o valor mximo
1
da respetiva forma de onda. Dentro dos blocos s-function, os tempos amostrados so comparados
para determinar o mais recente.
Dependendo
desse tempo, o valor mximo da fora contraeletroBinarioEstimado2
1
motriz escolhido como sendo o valor mximo obtido mais recentemente e por fim calcula-se a
velocidade em RPM pela1 equao 2.47 usando [F]
esse valor mximo da fora contraeletromotriz, Ke
e pares de plos. No caso da fora contraeletromotriz entre fases, necessrio utilizar o fator de
[J]
converso 3 para obter valores por fase.
O ltimo mtodo, pela equao do movimento, simplesmente implementar a equao
Z
r =
Te TL Fr
J
30
.
|u|
(3.10)
WEEstimado
Goto2
86
Simulao Comportamental
Foi feito o segundo teste em malha aberta para visualizar os resultados de cada estimao.
Os resultados para a estimao pelo cruzamento no zero da fora contraeletromotriz, sensores
Hall, equao 2.47 usando a fora contraeletromotriz entre fases, equao 2.47 usando a fora
contraeletromotriz por fase e equao do movimento esto nas figuras 3.43, 3.44 3.45, 3.46 e 3.47
respetivamente.
Figura 3.45: Resultado obtido da estimao da velocidade pela fora contraeletromotriz entre
fases.
3.5.5.1
87
Figura 3.46: Resultado obtido da estimao da velocidade pela fora contraeletromotriz por fase.
88
Simulao Comportamental
Tabela 3.9: Resultados do integral do erro absoluto de cada mtodo estimao de velocidade.
Mtodo
Erro (RPM.s)
Mtodo 1
382
Mtodo 2
381,6
Mtodo 3
179,6
Mtodo 4
195,6
Mtodo 5
18,2
sensor/controlador. Por outro lado, o mais difcil de implementar provavelmente seria o mtodo
5. Neste mtodo imprescindvel conhecer os parmetros de inrcia e fator de perdas para ter
uma boa estimao, necessita de um operador derivativo e ainda dois sensores de corrente para
a estimao de binrio. Por outro lado, se for necessrio um sistema com uma estimao de
velocidade contnua, este seria o mtodo a escolher.
3.5.6
3.5.6.1
J foi mencionado anteriormente que o rotor constitudo por 3 pares de plos e que os sensores comutam a cada 60 eltricos. Tendo isto em conta, e que no possvel estimar com preciso
a posio eltrica do rotor com os sensores Hall, conclui-se que o erro na leitura da posio inicial
pode ser, no mximo, 60 eltricos, o que corresponde a
60
3
= 20 .
Uma tcnica de acionamento possvel para corrigir esta situao colocar o rotor numa posio inicial definida pelo utilizador. Antes de acionar o controlo implementado, envia-se um
determinado sinal para o inversor, o que far com que o rotor rode, pelo menor ngulo, para uma
determinada posio. Um plo norte do rotor encontrar equilbrio a meio das fases acionadas,
pois o campo gerado pelas duas fases igual.
O modo mais fcil de implementar esta tcnica ler os sinais iniciais dos sensores Hall e
enviar para o inversor o sinal correspondente ao que se enviaria caso se pretendesse rodar o rotor
num determinado sentido. Por exemplo, tendo em conta a tabela 3.4, se o estado inicial fosse o
estado 1, o sinal a enviar ao inversor seria o vetor 1. A posio final desta rotao inicial pode
ser definida como o ponto de partida do rotor, ou seja, 0 , tendo ento agora a referncia para a
estimao da fora contraeletromotriz. Outra hiptese considerar essa posio final sendo 30
eltricos, j que um plo norte do rotor fica em equilbrio a meio das fases acionadas.
A estimao da posio incial do rotor simulado consiste simplesmente num sample and hold
que amostra o estado inicial State e grava esse valor numa tag StateI, como mostra a figura 3.48.
O estado 1 considerado, corresponde por defeito no Matlab a um intervalo [0,20[ graus, ao
estado 2 corresponde o intervalo de [20,40[ graus e assim sucessivamente. Tendo isto em conta,
foram usados os valores apresentados na tabela 3.10 para a estimao da posio inicial do rotor.
O erro na estimao da posio inicial mantm-se em 60 eltricos, ou 20 .
file:///media/Data/MyDocuments/FEUP/
89
Simulink Root ?
EstimaoPosioInicialRotor
MalhaFechadaV20
Controlador
State
In
Controlador
S/H
< 4e-005
S
Look up Table V1
Look up Table V3
Clock
Look up Table V4
Definio de Parmetros
EMF Zero Cross Detection
StateI
3.5.6.2
TetaEletrico
6
2
6
3
6
4
6
5
6
3
4
5
6
do Rotor
rt Generator
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulacoes/Matlab/Malha_...
1 of 1
EabEstimado3
eab
EbcEstimado3
ebc
-K-
teste
TetaI
TetaEletricoEstimado2
fcn
EcaEstimado3
eca
state
VelocidadeRPMEstimada2
Scope
TetaEletricoFinalEstimado
pi/30*3
we
Figura 3.49: Perspetiva geral da estimao da posio do rotor atraves da analise das formas de
onda da fora contraeletromotriz entre fases.
O primeiro mtodo de estimao de posio simplesmente integra o resultado do mtodo 5 da
estimao da velocidade, mtodo esse que permite uma estimao da posio com maior rigor j
TetaEletricoMedido
Scope1
Scope3
WEEstimado
Display
Abs
Scope2
90
Simulao Comportamental
que um mtodo "contnuo". Efetuou-se o segundo teste em malha aberta primeiro sem deslocamento na posio inicial do rotor e a seguir com deslocamento mximo de 60 eltricos. Os
resultados esto apresentados nas figuras 3.50 e 3.51 respetivamente.
Figura 3.50: Estimao da posio do rotor com o mtodo 5 da estimao da velocidade sem
deslocamento inicial para r >0.
Figura 3.51: Estimao da posio do rotor com o mtodo 5 da estimao da velocidade com
deslocamento de 60 eltricos na posio inicial para r >0.
O segundo mtodo simulado para a estimao da posio semelhante ao apresentado em [11].
Apenas difere no facto de que o mtodo simulado utiliza a fora contraeletromotriz estimada entre
fases. As figuras 3.52 e 3.53 mostram as formas de onda da fora contraeletromotriz entre fases
estimada com velocidades positivas e negativas, respetivamente. Os pontos chave que permitiram
dividir um ciclo eltrico em divises de 30 eltricos e ainda obter dois pontos de referncia para
facilitar o clculo da posio foram o cruzamento no zero e quando duas formas de onda tm a
mesma amplitude. Assim, obtm-se doze estados diferentes para a velocidade dependentes da
amplitude relativa das formas de onda e tambm da sua polaridade contidas na tabela 3.11. Para
velocidades negativas, essa informao encontra-se na tabela 3.12.
O segundo mtodo tem como variveis a fora contraeletromotriz entre fases estimada e a
velocidade estimada. Foi possvel, atravs dos pontos chave apresentados anteriormente, estimar
a posio. Colocou-se sada do bloco s-function um filtro passa-baixo com constante de tempo
de 50 s para atenuar eventuais rudos.
Foi feita uma simulao com todos os mtodos de estimao de velocidade pelo segundo teste
em malha aberta sem e com deslocamento inicial. Os resultados das estimaes em radianos
91
10
11 12
Figura 3.52: Formas de onda da fora contraeletromotriz entre fases estimada e os respetivos
estados para r >0.
10
11
12
Figura 3.53: Formas de onda da fora contraeletromotriz entre fases estimada e os respetivos
estados para r <0.
Tabela 3.11: Informao da fora contraeletromotriz entre fases para r >0.
Estado
1
2
3
4
5
6
7
8
9
10
11
12
Amplitudes Relativas
eab > ebc > eca
ebc > eab > eca
ebc > eab > eca
ebc > eca > eab
ebc > eca > eab
eca > ebc > eab
eca > ebc > eab
eca > eab > ebc
eca > eab > ebc
eab > eca > ebc
eab > eca > ebc
eab > ebc > eca
Polaridades
eab > 0, ebc > 0, ec a < 0
eab > 0, ebc > 0, eca < 0
eab < 0, ebc > 0, eca < 0
eab < 0, ebc > 0, eca < 0
eab < 0, ebc > 0, eca > 0
eab < 0, ebc > 0, eca > 0
eab < 0, ebc < 0, eca > 0
eab < 0, ebc < 0, eca > 0
eab > 0, ebc < 0, eca > 0
eab > 0, ebc < 0, eca > 0
eab > 0, ebc < 0, eca < 0
eab > 0, ebc < 0, eca < 0
92
Simulao Comportamental
Amplitudes Relativas
eca > ebc > eab
ebc > eca > eab
ebc > eca > eab
ebc > eab > eca
ebc > eab > eca
eab > ebc > eca
eab > ebc > eca
eab > eca > ebc
eab > eca > ebc
eca > eab > ebc
eca > eab > ebc
eca > ebc > eab
Polaridades
eab < 0, ebc > 0, eca > 0
eab < 0, ebc > 0, eca > 0
eab < 0, ebc > 0, eca < 0
eab < 0, ebc > 0, eca < 0
eab > 0, ebc > 0, eca < 0
eab > 0, ebc > 0, eca < 0
eab > 0, ebc < 0, eca < 0
eab > 0, ebc < 0, eca < 0
eab > 0, ebc < 0, eca > 0
eab > 0, ebc < 0, eca > 0
eab < 0, ebc < 0, eca > 0
eab < 0, ebc < 0, eca > 0
Figura 3.54: Resultados da estimao da posio do rotor com o mtodo 1 da estimao da velocidade sem deslocamento inicial para r >0.
Figura 3.55: Resultados da estimao da posio do rotor com o mtodo 1 da estimao da velocidade com deslocamento inicial de 60 eltricos para r >0.
3.5.6.3
O erro do mtodo 1 foi analisado com maior detalhe atravs do integral do erro absoluto entre
a posio estimada e a posio medida. Os resultados encontram-se na tabela 3.13.
O primeiro mtodo simulado no permite obter a posio correta do rotor caso haja deslocamento inicial pois no envolve nenhuma referncia inicial. A realizao deste mtodo com as
restantes estimaes de velocidade apresentam um erro ainda maior que os da tabela 3.13 devido
93
Figura 3.56: Resultados da estimao da posio do rotor com o mtodo 2 da estimao da velocidade sem deslocamento inicial para r >0.
Figura 3.57: Resultados da estimao da posio do rotor com o mtodo 2 da estimao da velocidade com deslocamento inicial de 60 eltricos para r >0.
Figura 3.58: Resultados da estimao da posio do rotor com o mtodo 3 da estimao da velocidade sem deslocamento inicial para r >0.
Figura 3.59: Resultados da estimao da posio do rotor com o mtodo 3 da estimao da velocidade com deslocamento inicial de 60 eltricos para r >0.
94
Simulao Comportamental
Figura 3.60: Resultados da estimao da posio do rotor com o mtodo 4 da estimao da velocidade sem deslocamento inicial para r >0.
Figura 3.61: Resultados da estimao da posio do rotor com o mtodo 4 da estimao da velocidade com deslocamento inicial de 60 eltricos para r >0.
Figura 3.62: Resultados da estimao da posio do rotor com o mtodo 5 da estimao da velocidade sem deslocamento inicial para r >0.
Figura 3.63: Resultados da estimao da posio do rotor com o mtodo 5 da estimao da velocidade com deslocamento inicial de 60 eltricos para r >0.
95
Figura 3.64: Resultados da estimao da posio do rotor com o mtodo 5 da estimao da velocidade sem deslocamento inicial para r <0.
Figura 3.65: Resultados da estimao da posio do rotor com o mtodo 5 da estimao da velocidade com deslocamento inicial de 60 eltricos para r <0.
Tabela 3.13: Resultados do integral do erro absoluto para a estimao da posio do rotor pelo
mtodo 1.
Deslocamento Inicial (graus eltricos)
0
60
96
Simulao Comportamental
Tabela 3.15: Resultados do integral do erro absoluto para a estimao da posio do rotor pelo
mtodo 2 em graus eltricos num segundo para r <0.
Mtodo de Estimao
5
Como era de esperar, o mtodo 5 da estimao da velocidade contribui com o menor erro na
estimao da posio, sendo ele "contnuo". De certa forma, pode dizer-se que quanto maior a
frequncia de amostragem, menor ser o erro na estimao da posio. Apesar disso, este mtodo
mostra-se capaz de sintonizar automaticamente para qualquer posio, independentemente da posio inicial e da frequncia de amostragem. A desvantagem de utilizar mtodos discretos que a
estimao no arranque envolve velocidade nula ou muito prxima de zero durante um curto intervalo de tempo. Isto implica divises por 0 no cdigo implementado, o que gera valores elevados.
Devido a isso, colocou-se um saturador sada do bloco s-function. Uma tcnica para eliminar os
valores iniciais elevados seria comear a estimao da posio apenas quando as amplitudes das
formas de onda se encontrarem acima de um valor limite.
No domnio da implementao, a melhor escolha seria integrar o segundo mtodo da estimao
da posio com o quinto mtodo da estimao da velocidade. Apresentam-se mais eficientes que
os outros mtodos e so mais robustos posio inicial do rotor. Outra hiptese seria arrancar o
motor em modo sensorial e depois a determinado ponto mudar para o modo sensorless.
3.5.7
97
so limitadas em 0.01 e -0.01 N.m. Estes valores foram ajustados aps algumas simulaes de
modo a obter frequncias de comutao nos semicondutores do inversor na ordem de 35 a 60 kHz,
dependendo do controlador. Os controladores difusos com feed-forward contm uma componente
integrativa. Foi utilizado um feed-forward proporcional no controlador PD convencional com
objetivo de o adotar com mais alguma robustez carga.
Todas as funoes de pertena nos controladores difusos adotam os termos lingusticos: Negativo
(Neg), Negativo- (Neg-), Negativo (Neg), Nulo (N), Pos (Pos), Positivo+ (Pos+) e Positivo++
(Pos++). Foi escolhida a forma triangular para todas as funes de pertena devido sua simplicidade. A disposio das funes de pertena escolhidas para a sada permite obter um binrio mais
elevado para erros maiores.
Os controladores difusos PD envolvem 49 regras e como entradas o erro proporcional e o erro
derivativo da velocidade e sada o binrio de referncia. Aps vrias simulaes, as formas das
funes de pertena escolhidas para as entradas e sada do controlador difuso esto mostradas nas
figuras 3.66, 3.67 e 3.68. As regras para os controladores difuso PD encontram-se na tabela 3.16.
Figura 3.66: Formas das funes de pertena para o erro proporcional no controlador difuso PD.
Figura 3.67: Formas das funes de pertena para o erro derivativo no controlador difuso PD.
Figura 3.68: Formas das funes de pertena para o binrio de referncia no controlador difuso
PD.
98
Simulao Comportamental
Neg-
Neg
Nulo
Pos
Pos+
Pos++
Neg--
Neg--
Neg--
Neg-
Neg
Nulo
Neg--
Neg--
Neg-
Neg
Nulo
Pos
Neg--
Neg-
Neg
Nulo
Pos
Pos+
Neg-
Neg
Nulo
Pos
Pos+
Pos++
Neg
Nulo
Pos
Pos+
Pos++
Pos++
Nulo
Pos
Pos+
Pos++
Pos++
Pos++
Pos
Pos+
Pos++
Pos++
Pos++
Pos++
O controlador difuso P+I tem apenas uma entrada, o erro proporcional, e envolve as 7 regras
apresentadas na tabela 3.17. As formas das funes de pertena finais escolhidas para a entrada e
sada do controlador difuso P esto mostradas nas figuras 3.69 e 3.70.
Tabela 3.17: Regras do controlador difuso P.
e
Neg
NegNeg
Nulo
Pos
Pos+
Pos++
Binrio de Referncia
Neg
NegNeg
Nulo
Pos
Pos+
Pos++
Figura 3.69: Formas das funes de pertena para o erro proporcional no controlador difuso P.
99
Figura 3.70: Formas das funes de pertena para o binrio de referncia no controlador difuso P.
0 N.m.: t [0;5[ [20;25[ ms;
N.m.: t [5;10[
[25;30] ms;
ulink Web View - 1Created
bySimulink
Report Generator
file:///media/Da
Simulink Root
A?tabela 3.18 mostra os vetores
utilizados para
Controlador
V1aumentar (Tsinal=1) ou diminuir (Tsinal=0) o
MalhaFechadaVRelatorio
binrio consoante o desejado.
Co
Controlador PI
Controlador Tabela
V1 3.18: Tabela de
seleo do vetor consoante o sinal de binrio.
3
VelocidadeRPM
Tsinal
4 1
VelocidadeRef
0
BinarioEstimado6
Estado 1
1
4
Estado 2
0.004 2
5
Estado 3
3
6
Estado 4
4
1
K Ts
K Ts
4.1
z-1
Controlador V2
Nas subseces seguintes apresentam-se os resultados do desempenho dos controladores com
Controlador V3
o inversor trifsico convencional perante a realizao do teste descrito.
Controlador V4
EMF
Zero
Cross Detectio
3.5.7.1
Controladores
PD Convencional e Difuso
EstimaoBEMF
Os primeiros controladores simulados foram os controladores PD convencional e difuso PD,
EstimaoBinrio
PDe 3.72.
cujas perspetivas gerais se encontram Controlador
nas figuras 3.71
EstimaoPosioRotor
BinarioEstimado6
6
VelocidadeRPM
EstimaoSinaisHallSens
5
3
EstimaoVelocidade
VelocidadeRef
Sinal
Full Bridge
K (z-1)
0.0001
Ts z
Full Bridge1
0.001
Hall Sensors
Hall Sensors1
Figura 3.71: Perspetiva geral do controlador PD simulado.
Look up Table V1
LookOup
Tableglobal
V2 obtido aps o teste dinmico est apresentado na figura 3.73.
resultado
Look up Table V3
Look up Table V4
Medies
Medies1
z-1
K (z-1)
Ts z
BinarioRef2
bin
sta
State
0.4
state
Ic
Ib
ic
ib
Simulink
Root
100?
Controlador V2
Simulao Comportamental
BinarioEstimado6
2
VelocidadeRPM
70
1
VelocidadeRef
1
Sinal
5
K (z-1)
Ts z
0.001
Fuzzy Logic
Controller
with Ruleviewer
Fuzzy PD
BinarioRef2
Fuzzy PID
Figura 3.72: Perspetiva geral do controlador difuso PD simulado.
BinarioEstimado6
0.01
4
VelocidadeRPM
50
3
VelocidadeRef
10
K (z-1)
Ts z
0.002
2
Sinal
K Ts
z-1
Fuzzy Logic
Controller
with Ruleviewer
Fuzzy
6
VelocidadeRPM
K Ts
0.02
BinarioEstimado6
z-1
50
Figura
3.73: Resultado global obtido pelo controlador PD convencional
e difuso PD aps o teste
VelocidadeRef
1
dinmico.
Fuzzy Logic
K (z-1)
Ts z
0.002
3
Sinal
8
VelocidadeRPM
Controller
with Ruleviewer
7
VelocidadeRe
60
-K9
bos os controladores
facilmente satura
no valor mximo,
mas em
z-1 consequncia o erro em regime
VelocidadeRef
Fuzzy Logic
permanente e dinmico foi atenuado. O integral
do erro absoluto obtido para os controladores PD
Controller
with Ruleviewer
3.5.7.2
Erro (RPM.s)
80,25
111,22
4
Sinal
Fuzz
fcn
Sinal
sinalic
binrefc
Simulink Root
?
Ib
Controlador V1
3.5 Malha Fechada
MalhaFechadaVRelatorio
Ic
state
EbEstimado2
Controlador
V1
EcEstimado2
ic
eb
Controlador PI
fcn
ec
Tc
BinarioEstimado6
W 3
VelocidadeRPM
2
VelocidadeRPM
0.004
4
VelocidadeRef
Fuzzy
PID
Controlador
V2
Controlador V3
101
Tb
ib
2
Sinal
mos6
ic
State
o6
mos5
sinalib
ib
K Ts
z-1
2
Sinal
1
VelocidadeRef
4.1
3
Sinal
o6
4
Sinal
Controlador V4
EMF Zero Cross Detectio K Ts
0.0045
z-1
EstimaoBEMF
8
VelocidadeRPM
EstimaoBinrio
Controlador
PD
60
1
7
VelocidadeRef
Fuzzy Logic
EstimaoPosioRotor
Controller
6
with Ruleviewer
VelocidadeRPM
EstimaoSinaisHallSens
Binar
BinarioEstimado6
5
Sinal
BinarioEstimado6
5
3
EstimaoVelocidade
3.75: Perspetiva geral do controlador difuso P+I simulado.
Fuzzy PI Figura
VelocidadeRef
Sinal
Full Bridge
K (z-1)
0.0001
Ts z
Full Bridge1
0.001
Hall Sensors
Hall Sensors1
Look up Table V1
Look up Table V2
Look up Table V3
Figura
3.76:up
Resultado
Look
Table global
V4 obtido pelo controlador PI convencional e difuso PI aps o teste
State
0.4
dinmico.
Medies
Tabela
3.20: Resultados do integral do erro absoluto dos controladores PI e difuso P+I convenciMedies1
onal para o teste dinmico.
Parameter Definition
Controlador
Erro (RPM.s)
Saidas Motor + Converso
PI Convencional
227,44
Saidas Motor + Converso
Difuso P+I
147,52
3.5.7.3
As perspetivas gerais dos controladores PID convencional e difuso PD+I encontram-se nas
figuras 3.77 e 3.78.
Os resultados obtidos para os controladores PID esto mostrados na figura 3.79.
O controlador difuso PID gerou menos overshoot no arranque e um tempo de recuperao
ligeiramente maior que o controlador PID convencional aps a aplicao de uma carga negativa.
Apesar disso, o desempenho dos dois controladores foi muito semelhante. Tal facto verifica-se
Ic
Ib
Simulink
Root
?
Controlador V2
BinarioRef2M
BinarioEstimado6
2
VelocidadeRPM
102
1
Sinal
5
K (z-1)
Ts z
Fuzzy Logic
Controller
with Ruleviewer
0.001
2
VelocidadeRPM
2
Sinal
Simulao Comportamental
Controlador PID
70
1
VelocidadeRef
BinarioEstimado6
BinarioRef2
State
0.3
Fuzzy PID
1
VelocidadeRef
K Ts
4
VelocidadeRPM
EcEstimado2
z-1
Fuzzy Logic
K (z-1)
binref
6
VelocidadeRPM
binrefb
0.02
50
state
z-1
binref
state
Fuzzy PID
-T-
mos3
sinalbinfcn
BinarioEstimado6
sinalib
sinalic
-T-
mos2
-T-
mos5
mos6 3
-T-
Sinal
Fuzzy Logic
Controller
with Ruleviewer
0.002
state
K Ts
binrefc
State
State
SinalBinario
fcn
K (z-1)
Ts z
2
Sinal
K Ts
BinarioRef2
Controller do controlador PID simulado.
Figura
3.77:0.002
Perspetivawithgeral
Ts z
Ruleviewer
3
Sinal
EbEstimado2
50e-6
10
5
VelocidadeRef
Ic
BinarioEstimado6
0.01
K (z-1)
50 z
Ts
3
VelocidadeRef
Ib
1
Sinal
z-1
BinarioEstimado6
Fuzzy PD
8
VelocidadeRPM
7
VelocidadeRef
Tb
Ic
ic
fcn
BinarioEstimado6
Figura
3.78: Perspetiva
geral
0.0045 do controlador difuso PD+I simulado.
10
VelocidadeRPM
Ib
9
VelocidadeRef
ib
Tc
60
-K-
K Ts
z-1
Scope4
4
Sinal
Fuzzy Logic
Controller
with Ruleviewer
Figura 3.79: Resultado global obtido pelo controlador PID convencional e difuso PD+I aps o
teste dinmico.
com o integral do erro absoluto obtido para cada controlador obtido, apresentado na tabela 3.21.
Tabela 3.21: Resultados do integral do erro absoluto dos controladores PID e difuso PD+I convencional para o teste dinmico.
Controlador
PID Convencional
Difuso PID
3.5.7.4
Erro (RPM.s)
111,22
110,22
Depois de efetuados os testes, chegou-se a concluso que os controladores com melhor resposta foram os controladores PID.
Fuzzy PI
103
Para finalizar, foram inseridas nos controladores estimaes discretas de velocidade e binrio
que posteriori seriam implementadas fisicamente. O coeficiente de inrcia foi alterado para
1103 kg/m2 para se aproximar mais do motor real. Consequentemente, o tempo de simulao
teve que aumentar devido menor acelerao do motor. Um valor de inrcia demasiado baixo
leva a grandes oscilaes em regime permanente devido ao atraso nas estimaes. Um valor mais
elevado implica que o motor demore mais tempo a atingir a referncia nos instantes iniciais e
como resultado simulaes mais longas. O tempo de amostragem do solver foi alterado para
1 s para reduzir os tempos de simulao, mas em contrapartida o ripple de binrio obtido foi
ligeiramente maior. Esperavam-se tempos de simulao longos e por isso partiu-se do princpio
que, se o controlador apresentasse resultados satisfatrios com os mtodos de menor frequncia
de estimao, os resultados com os outros mtodos seriam tambm satisfatrios. As estimaes
usadas foram as que partida se usariam na implementao prtica:
Estimao da fora contraeletromotriz entre fases;
Estimao da velocidade pelo mtodo 2;
Estimao do binrio pelo mtodo 6;
104
Simulao Comportamental
Figura 3.80: Resultado obtido pelo o controlador PID convencional para o segundo teste dinmico
com estimaes discretas de velocidade e binrio.
Figura 3.81: Resultado obtido pelo o controlador difuso PD+I para o segundo teste dinmico com
estimaes discretas de velocidade e binrio.
Depois de gerados os primeiros dois sinais dos sensores Hall, ocorre a primeira estimao de
velocidade. Nesse momento o controlador consegue estimar momentaneamente o binrio e gera
determinado binrio de referncia.
O controlador difuso PD+I apresentou uma resposta mais pobre no incio da simulao mas
em regime permanente e dinmico gerou um erro muito menor. O integral do erro absoluto obtido
para cada um dos controladores esta resumido na tabela 3.22.
105
Tabela 3.22: Resultados do integral do erro absoluto dos controladores PID e difuso PD+I convencional para o teste dinmico.
Controlador
PID Convencional
Difuso PID
3.6
Erro (RPM.s)
1255,41
987,01
106
Simulao Comportamental
Tabela 3.23: Quadro resumo das vantagens e desvantagens das estimaes simuladas.
Mtodo
Por fase
Estimao da fora
contraeletromotriz
Entre fases
Estimao dos
sensores Hall
Cruzamento no
zero
Estimao da
posio
Desvantagens
- No robusto
posio eltrica do rotor;
- Intuitivo;
- Dois sensores de
- Robusto posio eltrica
tenso adicionais;
do rotor;
- Intuitivo;
- A gerao de sinais
complica-se a
velocidades mais
baixas;
- Sensvel a rudo;
- necessrio conhecer
os parmetros
coeficiente de inrcia e
- Robusto posio eltrica
de frico;
do rotor;
- Maior clculo
computacional
envolvido;
- No robusto
posio eltrica do rotor;
- necessria a
converso de
grandezas;
- No robusto
posio eltrica do rotor;
- Discreto;
- Permite substituir os sinais
- A gerao de sinais
dos sensores Hall,
complica-se a
reduzindo o custo do
velocidades mais
sistema;
baixas;
- Normalmente integrados
no motor;
-Implementao simples;
- Discreto;
- 3 sensores Hall
adicionais;
- Frequncia de
amostragem maior que a
dos outros mtodos de
estimao discretos
convencionais;
- Discreto;
- No muito robusto
pois envolve uma
grandeza arbitrria;
- Frequncia de
amostragem maior que a
dos outros mtodos de
estimao discretos
convencionais;
- Discreto;
- No muito robusto
pois envolve uma
grandeza arbitrria;
- No robusto
posio eltrica do rotor;
- Processo contnuo;
- necessrio conhecer
os parmetros
coeficiente de inrcia e
de frico;
- Intuitivo;
- No robusto
posio eltrica do rotor;
Estimao do binrio
Estimao da
velocidade
Vantagens
- Intuitivo;
Integral da
velocidade
Captulo 4
Parte Experimental
Esta seco destina-se apresentao de todo o processo prtico que decorreu durante o projeto. So apresentados os vrios circuitos de interface entre os elementos.
4.1
Bancada de Trabalho
4.2
BLDC
108
Parte Experimental
Adicionalmente, foi colocada uma fita refletora no veio do motor para auxiliar a leitura da
velocidade pelo tacmetro tico.
DC de Excitao Separada
Fita refletora
BLDC
1
3
5
7
2
4
6
8
A
B
C
Legenda:
1-Rel High
2-Rel Low
3-Sensores Hall GND
4-VStar
5-Sensores Hall Vdc
6-Sinal Hall C
7-Sinal Hall B
8-Sinal Hall A
A-Fase A
B-Fase B
C-Fase C
4.3
DSP TMS320F28035
O DSP usado no projeto foi o DSP TMS320F28035 da Texas Instruments. A leitura dos
sensores Hall foi realizada com trs portas I/O do DSP: 01, 03 e 05 do grupo A das portas I/O. O
envio dos sinais para o inversor foi efetuado por outras seis portas do DSP: 00, 02, 04, 06, 08 e 10
do grupo B das portas I/O. A corrente mxima contnua e a corrente mxima absoluta permitidas
pelo DSP de 2 e 20 mA respetivamente e a tenso mxima de entrada nas portas de +3,3
V [24]. A leitura das tenses necessrias para o mtodo de controlo foi realizada pelas portas do
conversor analgico/digital de 12 bits integrado no DSP. As portas utilizadas foram: A0, A1, A2
e A3 do grupo A do ADC.
A figura 4.3 ilustra os elementos do DSP utilizados no projeto.
4.4 Fonte CC
109
GND ADC A
IO A
USB
IO B
On/Off
4.4
Fonte CC
220/60
Cr Cr Cr Cr
Rede
Eltrica ~
22 k
Inversor
3~
Cr=2,2 mF
4.5
O primeiro circuito implementado foi a interface sensores Hall/DSP para colocar o motor em
rotao. Esta interface envolve uma tenso de alimentao de +3,3 V de forma a garantir que no
houvesse sobretenses que danificassem as portas I/O do DSP.
Os sinais dos sensores so lidos pelas portas I/O do DSP, considerando-os como high quanto a
tenso nas portas I/O superior a 2 V [24]. No foi disponibilizada documentao detalhada sobre
a ligao interna do motor, nomeadamente dos sensores Hall, e por isso a tenso de sada mostrouse uma incgnita. Com os sensores em modo high, a tenso proveniente dos sensores era baixa
('0,5 V) e foi necessria uma resistncia de pull-up. Os sinais dos sensores apresentavam-se sem
qualquer rudo.
110
Parte Experimental
3400
= 56, 7
60
Frequencia do sinal do sensor = 3 56, 7 ' 170 Hz
Rotaes por segundo =
Esta frequncia de comutao relativamente baixa e facilmente se encontrariam otocopladores que a suportassem.
O otocoplador escolhido foi o 6N136, disponvel no laboratrio I103. A corrente mxima
permitida entrada do otocoplador 6N136 de 50 mA e tenso de alimentao de -0,5 a +30 V
[25].
Foi implementado o circuito apresentado na figura 4.6. A resistncia de 560 m entrada do
otocoplador limita a corrente em 3,75 mA. sada, a corrente limitada em cerca de 0,3 mA,
gerando assim uma tenso na sada prxima de 3 V.
A implementao fsica do circuito est representada na figura 4.7.
4.6
Interface DSP/MOSFETs
Foi fornecido pelo orientador um PCB que contm o mdulo SK 115 MD 10 de MOSFETs e
respetivo isolamento via otocopladores HCPL3120, especialmente criados para drives de BLDC,
mostrado na figura 4.8. Estes otocopladores tm uma corrente de entrada recomendada de, no
mnimo, 7 mA e mximo de 16 mA. Sendo o DSP um elemento crucial e delicado para o projeto,
foi decidido implementar uma interface entre o DSP e os otocopladores HCPL3120.
O integrado escolhido foi o array de sete transstores Darlington, ULN2003A. Este integrado,
para uma tenso de entrada de 3,85 V, necessita apenas de 0,93 mA [26]. sada deste circuito
111
+3,3V
1 k
Sensores
Hall A,B,C
Vin
6N136
Iin
+3,3V
Iout
1 k
560
Vin=2,1 V
Iin=3,75 mA
Vout
10 k
3x
1 F
DSP
Portas 00,02,04
Iout=3,3/11k=0,3 mA
Vout= 3,3-(1k*0,3m)=3 V
Sensor Hall A
Sensor Hall B
Sensor Hall C
Porta 00
Porta 02
Porta 04
integrado, o sinal invertido. Com isto, haviam duas hipteses: inverter o sinal via software antes
de ser enviado para o HCPL3120, ou adicionar um outro circuito integrado que o invertesse de
novo e que fosse capaz de fornecer a corrente necessria para o HCPL3120. A opo escolhida foi
a segunda e o integrado encontrado foi o array de buffers CD4049. Este integrado com uma tenso
de alimentao de +5 V capaz de fornecer uma corrente de 3 mA [27]. A corrente mxima na
entrada dos HCPL3120 de 25 mA [28].
O circuito implementado encontra-se esquematizado na figura 4.9.
112
Parte Experimental
Fases do Motor
+12 V
GND
Otocopladores
Sinais
DSP
Inversor
ULN2003
DSP
F
E
D
C
B
A
R1
CD4049
16
R1
15
R1
14
R1
13
R1
12
R1
11
10
R2
R2
R2
R2
R2
B
A R2
+5V
F0
F
E0
E
D0
+5V
1
2
3
4
5
16
15
14
13
12
B0
11
10
B
A0
6
7
C0
Mdulo
SK 115 MD 10
Legenda:
Figura 4.9: Circuito de interface esquematizado entre o DSP e os circuitos integrados ULN2003A
e CD4049.
4.7
O transdutor de corrente escolhido foi o LA 55-P da LEM. Este transdutor suporta 55 A e tem
uma razo de espiras de 1:1000 [29]. Foi escolhida uma resistncia de 100 , o equivale na sada
do transdutor 100 mV por ampre de corrente, o que significa que possvel ler 33 A de amplitude
na escala de 0 a 3,3 V do conversor A/D do DSP.
O circuito implementado est esquematizado na figura 4.10. Foram medidas as correntes das
fases A e B do motor.
113
+15 V
Fase do motor LA 55-P
-15 V
vo
1:1000
io
100
v o =100io
4.8
Interface Inversor/DSP
Esta interface consiste simplesmente em dois amplificadores operacionais inversores em cadeia. Como a tenso nominal no inversor de 12 V, foi dado um ganho final cadeia dos amplificadores de 0,25 de modo a obter tenses de 0 a 3 V para o A/D do DSP.
Usando a configurao da figura 4.11 e sabendo que idealmente no entra corrente no amplificador
Iin1 =
Vin1
Vout1
Vout1
R2
=
=
R1
R2
Vin1
R1
Se Vin1 toma o valor mximo 12, com um ganho de 41 , obtm-se -3 V. Por fim, basta uma
outra configurao inversora de ganho -1 para obter o valor final de 3 V.
Fase
+ -
Vin1
Iin1
Vout1
V=0
R1
R2
Iin1
Vin1max=12 V
Vin1min=0 V
fc =
1
' 1, 6 kHz
2R2C
O circuito final implementado est ilustrado na figura 4.12. As tenses lidas foram as das fases
A e B do motor. A implementao fsica do circuito encontra-se na figura 4.13.
114
Parte Experimental
+5 V
Fase
4 k
+ -
Vin1
+ -
+5 V
Vout1
1 k
DSP
-5 V
-5 V
1 k
1 k
Vin1max=12 V
Vin1min=0 V
Vout2
0,1 F
Vout1min=-3V
Vout1max=0V
0,1 F
Vout2max=3V
Vout2min=0V
Legenda:
Vin1
Vout1
Vout2
Fase A Fase B
Figura 4.13: Circuito de interface entre o inversor e o DSP implementado.
4.9
Programao do DSP
TM
V5.2. Este
software baseado no software opensource Eclipse. Inclui compiladores para todas as famlias de
dispositivos da Texas Instruments, editor de cdigo fonte e debugger. As versoes superiores a 4
do Code Composer Studio (CCS) permitem visualizar em tempo real, sob a forma de grfico, as
variveis do programa, o que tornou este software atrativo.
Todo o cdigo implementado no CCS encontra-se no anexo F. O cdigo est comentado de
modo a que o leitor entenda todos os passos efetuados.
4.9.1
Malha Aberta
Os sinais dos sensores Hall eram gravados nas variveis HallA, HallB e HallC. Tal como na
simulao no Matlab, foi atribudo a cada combinao de sinais dos sensores Hall um estado,
state. Para cada estado, era enviado ao inversor determinado vetor para colocar o motor a rodar
num sentido, ou no outro. Os estados atribudos e respetivos vetores so os mesmos que os apresentados nas tabelas 3.2 e 3.4. O fluxograma da figura 4.14 mostra o funcionamento do cdigo
implementado.
115
Incio
4.9.2
Malha Fechada
Devido ao pouco tempo dedicado parte experimental, apenas foi possvel realizar a gerao
de tempo morto e estimao de velocidade.
Acoplou-se o motor CC de excitao separada de modo a obter um binrio resistivo um pouco
maior. Colocou-se o motor a rodar velocidade nominal e o resultado obtido encontra-se na
figura 4.19.
116
Parte Experimental
Figura 4.15: Sinais dos sensores Hall gerados a 200 RPM (fase A-amarelo, fase B-azul, fase
C-roxo).
Figura 4.16: Sinais dos sensores Hall gerados a 2000 RPM (fase A-amarelo, fase B-azul, fase
C-roxo).
De seguida foi imposta uma carga em degrau, com auxlio de um disjuntor, pelo motor CC de
excitao separada durante o regime permanente velocidade nominal. Obteve-se o resultado da
figura 4.20.
Como era de esperar, o binrio resistivo fez com que o motor BLDC perdesse alguma velocidade (pode ser confirmado pela frequncia do sinal do sensor Hall) e consequentemente, para
manter o motor a rodar, foi necessrio aumentar o binrio produzido, o que implicou um aumento
da corrente.
O proximo teste foi colocar o motor BLDC a rodar a metade da velocidade nominal e de
seguida impor tambm uma carga em degrau pelo motor CC. Os resultados obtidos encontram-se
nas figuras 4.21 e 4.22, respetivamente.
possvel verificar que a corrente produzida com o motor a rodar a metade da velocidade
nominal sem carga e a produzida mesma velocidade, mas com carga, so diferentes.
117
Figura 4.17: Tenses medidas entre as fases A, C e B, C (Vac -amarelo, Vbc -azul).
Figura 4.18: Tenses medidas nas fases A e B em relao massa do inversor e sinais dos MOSFETs 1e 2 (Vao -laranja, Vbo -azul, MOSFET1-roxo, MOSFET2-verde).
4.9.2.1
Foi criada uma funao delay() que recebe como parmetro de entrada o tempo morto desejado
em s. Nesta funo, implementado um ciclo for de modo a que o nmero de instrues (incermentos) efetuadas consumam o tempo desejado, de modo a atrasar o desenrolar do programa.
Sabendo que a frequencia do clock configurada no DSP foi de 10 MHz, so necessrios 10 incrementos no ciclo for para obter um atraso de 1 s. Esta funo chamada antes de ligar qualquer
MOSFET.
4.9.2.2
Estimao de Velocidade
Esta estimao requer uma varivel que indique o tempo entre comutaoes dos sensores Hall.
Essa varivel foi denominada time. Foi implementada uma interrupo de um timer com uma
frequncia de 200 kHz. Sabendo essa frequncia, e usando ainda uma outra varivel, count, que
118
Parte Experimental
Figura 4.19: Sinal do sensor Hall da fase A e corrente na fase B obtidos a velocidade nominal sem
carga imposta pelo motor CC.
Figura 4.20: Sinal do sensor Hall da fase A e corrente na fase B obtidos depois de imposta a carga
do motor CC velocidade nominal.
conta o nmero de interrupes que ocorreram, foi possvel obter uma base de tempo com alguma
preciso.
A figura 4.23 apresenta um resumo da malha fechada implementada, incluindo a estimao de
velocidade.
O funcionamento de ClosedLoop() muito semelhante ao do OpenLoop() exceto pelo facto
de ClosedLoop() ter a estimao de velocidade. A funo EstimateSpeedHallSensors() l o estado
dos sensores Hall no momento e o estado anterior e ainda converte os incrementos da varivel
count vindo do timer1 em segundos.
So usadas duas variveis temporrias para verificar se houve mudana de estado no sensores.
A primeira, TmpReadHallx, onde x pode ser A, B ou C, l o estado atual do sensor e no fim de
EstimateSpeedHallSensors(), a segunda varivel, TmpReadHallx2 atualizada. Se houve comutao de estado de algum dos sensores Hall, as variveis TmpReadHallx e TmpReadHallx2 so
119
Figura 4.21: Sinal do sensor Hall da fase A e corrente na fase B obtidos a metade da velocidade
nominal sem carga.
Figura 4.22: Sinal do sensor Hall da fase A e corrente na fase B obtidos depois da carga imposta
pelo motor CC a metade da velocidade nominal.
diferentes e o tempo em que isto ocorreu gravado numa varivel TmpTimeCommutation.
Na prxima comutao, o tempo referente a uma comutao anterior subtrado ao novo
instante de tempo de comutao, obtendo assim o tempo entre comutaes, gravado na varivel
TmpCommutationFinal. Por fim, a velocidade convertida em RPM tendo em conta que o motor
de trs pares de plos e as comutaes dos sensores Hall ocorrem a cada 60 eltricos com
RPM =
60
T mpCommutationFinal 6 3
(4.1)
e as variveis usadas nas leituras dos estados anteriores dos sensores Hall so atualizadas para
a prxima estimao.
Foi colocado o motor a rodar com tenso nominal. A estimao de velocidade obtida est
apresentada na figura 4.24.
A frequncia de amostragem mxima permitida pelo CCS na gerao de grficos de 10 Hz.
120
Parte Experimental
Incio
GetValues()
EstimateSpeedHallSensors()
sim
count++
VecSelectorClosedLoop()
PWMGenerator()
Timer1
trigger?
no
Interrupo
ClosedLoop()
main()
Figura 4.24: Grfico da velocidade estimada pelos sensores Hall obtido experimentalmente no
CCS em tempo real.
O eixo das abcissas do grfico da figura 4.24 representa 10 vezes mais o tempo real do teste em
segundos.
4.10
Com a observao do grfico da figura 4.24, conclui-se que o motor apresenta um coeficiente
de inrcia superior ao simulado. Demora cerca de dois segundos a atingir a velocidade nominal,
velocidade essa que prxima da obtida pela simulao. A frequncia de amostragem dos grficos
121
do CCS no permite que se obtenha uma viso detalhada da estimao, mas numa viso global
aparenta estar bem implementada. Um fator que certamente influenciou um pouco o ripple obtido
foram os graus de liberdade indesejados do BLDC que no foram completamente eliminados.
Na fase final do projeto, houve problemas associados memria fsica do DSP. Tentou-se
otimizar o cdigo de modo a reduzir o tamanho do ficheiro, mas de nada serviu. No foi possvel fechar completamente a malha devido a este facto, mas nada impediu de estudar uma forma
de completar o projeto. O controlador inicialmente pensado envolvia estimao de binrio e de
velocidade. O nico elemento que realmente faltou foi a estimao de binrio. Esta estimao
era dependente do bom funcionamento das interfaces transdutor de corrente/DSP e inversor/DSP,
interfaces que ficaram por completar a 100% e que tambm contribuiram para a no finalizao
do projeto.
A estimao de binrio requeria a leitura das formas de onda tanto das correntes positivas
como das negativas. Por isso, uma soluo encontrada foi adicionar um offset de
3,3
2
num amplifi-
cador operacional de modo a que o conversor A/D do DSP pudesse ler a forma de onda tanto da
polaridade positiva como da negativa. Por fim, era apenas necessrio subtrair o offset via software.
Esta soluo traria a desvantagem de perder resoluo na leitura das correntes, mas aparentava
ser o mais simples. Outro mtodo seria retificar a corrente sada do transdutor e utilizar a constante kt do motor. Com este mtodo, ganhar-se-ia resoluo na converso da corrente, mas no
permitiria estimar binrio negativo.
A interface inversor/DSP mostrou resultados bons para velocidades at cerca de 1000 RPM.
Foram comparadas as ondas entrada e sada da interface. Para velocidades superiores a 1000
RPM, a tenso apresentava distores nos momentos menos bvios. Quando a tenso entrada do
amplificador se encontrava constante em +12 V, a tenso sada da interface esperada seria +3 V
e o valor obtido foi prximo de 0 V.
Contudo, foi elaborado um cdigo mais completo para fechar a malha e pode ser encontrado
no anexo F. O cdigo no foi testado.
122
Parte Experimental
Captulo 5
123
124
Anexo A
A.1
Este parmetro pode ser obtido experimentalmente atravs de uma simples leitura de um ohmmetro. aconselhada uma medio a quatro fios, pois permite eliminar a resistncia dos fios
das pontas de prova do aparelho de mediao, evitando que sejam includas na leitura. A figura
A.1 mostra a medio experimental realizada.
V dc
R1
Force
Sense
R2
R2
R1
R pp
Figura A.1: Medio a quatro fios realizada.
125
126
Esta leitura envolve dois elementos denominados force e sense. O objetivo do force fornecer
corrente, sendo por isso, normalmente, os cabos do force de seco maior que os do sense. Na
presena desta corrente, a resistncia que se pretende medir (na figura, R pp ) provocar uma queda
de tenso. Essa queda de tenso ser lida pelo sense e por fim, pela lei de Ohm, possvel obter
apenas o valor da resistncia que interessa.
O motor no de neutro acessvel, e por isso apenas foi possvel efetuar a leitura da resistncia
entre fases. O valor obtido foi 12 m. Sendo o motor ligado em estrela, a resistncia por fase de
6 m.
A.2
Constante de Velocidade
Este parmetro foi estimado recorrendo a um ensaio em vazio. Este ensaio consiste em colocar o motor em rotao, neste caso o DC de excitao separada, e observar as formas de onda da
fora contraeletromotriz geradas entre fases no gerador, o Brushless DC. Tal como na estimao
da indutncia de fugas, este teste foi efetuado a velocidades diferentes para verificar a proporcionalidade entre a fora contraeletromotriz e a velocidade. Os resultados deste ensaio encontram-se
na tabela A.1.
Tabela A.1: Resultados experimentais da estimao da constante de velocidade.
VLLmax
1
2
3
4
5
6
7
10
RPM
164,5
316
476
631
787
946
1260
1557
Vmax ( f ase)
0,58
1,15
1,73
2,31
2,89
3,46
4,04
5,77
VLL /RPM
0,00608
0,00633
0,00630
0,00634
0,00635
0,00634
0,00556
0,00642
V/RPM
0,00351
0,00365
0,00364
0,00366
0,00367
0,00366
0,00321
0,00371
V/rad/s
0,01118
0,01164
0,01159
0,01166
0,01168
0,01166
0,01021
0,01181
Depois de registados estes valores, fez-se uma mdia e finalmente obteve-se Ke =0,011428
V /rad/s.
A.3
Indutncia de Fugas
A indutncia de fugas foi estimada por dois mtodos diferentes, ambos com uma carga resistiva. O primeiro consiste na determinao de uma constante de tempo da corrente. A figura A.2
apresenta a forma de onda da corrente obtida para uma carga resistiva de 1.3. Para este mtodo,
apenas necessrio medir o intervalo de tempo que a corrente demora a atingir 63,2% do seu valor
final.
O intervalo de tempo medido foi cerca de 0,25 ms. Tendo em conta o valor da resistncia por
fase do motor, a indutncia de fugas foi estimada pela expresso = RL . O valor obtido foi 1,5 H.
Este mtodo no muito preciso, pois apenas utilizado um fator.
127
100%
63%
0,25 ms
DC
I
BLDC
+
+V LL-
R L V DC
-
Figura A.3: Ensaio realizado com ponte trifsica de dodos e carga resistiva.
A estimao da indutncia de fugas foi obtida pela expresso [6]:
2VLL
L = [1 cos(t)]
.
2I
(A.1)
128
Vdc
2,83
2,85
2,43
4,94
4,26
7,08
6,01
9,12
VLLrms
3,43
3,42
3,26
5,08
4,80
6,70
6,28
8,32
T (s)
0,025
0,025
0,025
0,0168
0,0168
0,0168
0,0125
0,01
I (A)
2,13
2,13
5,50
3,75
9,25
5,25
13,00
7,00
t (s)
0,0008
0,0009
0,0014
0,0008
0,0012
0,0006
0,001
0,0006
R ()
1,33
1,34
0,44
1,32
0,46
1,35
0,46
1,30
L (H)
9,12E-5
1,15E-4
1,02E-4
9,98E-5
9,76E-5
8,08E-5
8,38E-5
7,88E-5
Por fim, fazendo uma mdia dos valores obtidos, estimou-se a indutncia de fugas em 94 H.
A.4
Por fim, para verificar a plausabilidade dos valores dos parmetros obtidos, simularam-se os
R
ensaios realizados em PSIM
atravs do sistema apresentado na figura A.4.
129
12
3
6
94
0,011428
Sinusoidal
Estrela
Para aprofundar ainda mais o modelo, estimou-se a velocidade mxima a que o motor pode
rodar. velocidade mxima, o motor no produz binrio, o que implica corrente nula. Relembrando a equao 2.37, nesta situao a fora contraeletromotriz e tenso nas fases so iguais em
amplitude. A velocidade mxima pode ser aproximada ento usando a constante Ke e o valor
mximo de 12 V para a fora contraeletromotriz, obtendo assim
max =
12
= 1052, 6 rad/s eltricos = 350, 9 rad/s ' 3351 RPM
Ke
(A.2)
130
Anexo B
131
132
133
134
135
136
137
138
Anexo C
139
140
Figura C.1: Formas de onda obtidas para 800 RPM e carga de 1,3
Figura C.2: Formas de onda obtidas para 800 RPM e carga de 0,4
141
142
Figura C.3: Formas de onda obtidas para 1200 RPM e carga de 1,3
Figura C.4: Formas de onda obtidas para 1200 RPM e carga de 0,4
143
144
Figura C.5: Formas de onda obtidas para 1600 RPM e carga de 1,3
Figura C.6: Formas de onda obtidas para 1600 RPM e carga de 0,4
145
146
Figura C.7: Formas de onda obtidas para 2000 RPM e carga de 1,3
Anexo D
D.0.1
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulac...
MalhaAberta
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simula
D.0.2
%------------------------ Comutao trapezoidal------------------------if (vec==1) mos1=1; mos2=0; mos3=0; mos4=0; mos5=0; mos6=1;
else if (vec==2) mos1=0; mos2=1; mos3=0; mos4=0; mos5=0; mos6=1;
else if (vec==3) mos1=0; mos2=1; mos3=0; mos4=1; mos5=0; mos6=0;
else if (vec==4) mos1=0; mos2=0; mos3=1; mos4=1; mos5=0; mos6=0;
else if (vec==5) mos1=0; mos2=0; mos3=1; mos4=0; mos5=1; mos6=0;
else if (vec==6) mos1=1; mos2=0; mos3=0; mos4=0; mos5=1; mos6=0;
else mos1=0; mos2=0; mos3=0; mos4=0; mos5=0; mos6=0; end
end
end
end
end
end
147
Published with MATLAB 7.10
148
MalhaFechada
D.0.3
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulac...
%------------------------ Comutao trapezoidal------------------------if (vec==1) mos1=1; mos2=0; mos3=0; mos4=0; mos5=0; mos6=1;
else if (vec==2) mos1=0; mos2=1; mos3=0; mos4=0; mos5=0; mos6=1;
else if (vec==3) mos1=0; mos2=1; mos3=0; mos4=1; mos5=0; mos6=0;
else if (vec==4) mos1=0; mos2=0; mos3=1; mos4=1; mos5=0; mos6=0;
else if (vec==5) mos1=0; mos2=0; mos3=1; mos4=0; mos5=1; mos6=0;
else if (vec==6) mos1=1; mos2=0; mos3=0; mos4=0; mos5=1; mos6=0;
else mos1=0; mos2=0; mos3=0; mos4=0; mos5=0; mos6=0; end
end
end
end
end
end
1 of 1
01/30/2013 10:45 PM
Anexo E
Estimaes - Simulao
EMFSin
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulac...
E.0.4
EMFEntreFases
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulac...
E.0.5
Eab=vab-R*iab-L*Diab;
Ebc=vbc-R*ibc-L*Dibc;
Eca=vca-R*ica-L*Dica;
ZeroCross
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulac...
E.0.6
do Cruzamento
do Zero da Fora Contraeletromotriz Entre Fases
Error in Estimao
==> EMFEntreFases
at 3
Eab=vab-R*iab-L*Diab;
function [y1,y2,y3]= fcn(ea,eb,ec)
Eab=ea-eb;
Ebc=eb-ec;
Eca=ec-ea;
y1=1/Eab;
y2=1/Ebc;
y3=1/Eca;
EstimacaoBinEMFTrap
Not enough input
E.0.7
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulac...
Estimao do Binrio com a Potncia Fornecida
Pela Fora Contraeletromotriz Sinsuoidal
binario = ((ea*ia)+(eb*ib)+(ec*ic))/w;
149
Published with MATLAB 7.10
150
Estimaes - Simulao
EstimacaoBinEMFTrap
E.0.8 Estimao
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulac...
do Binrio com a Potncia Fornecida
Pela Fora Contraeletromotriz Trapezoidal
EMF
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulac...
%-------------------- Ea ---------------------
function y = fcn(t,Ke,We)
if (t>=0 && t<2* pi/6) || (t<=0 && t> -2*pi/6) || (t>=10*pi/6 && t< 2*pi) || (t<=-10*pi/6 && t> -2*pi)
y=Ke*We;
else if (t>=2*pi/6 && t< 4*pi/6) || (t<=-2*pi/6 && t>-4*pi/6)
y=(-6/pi*t*Ke*We)+(3*Ke*We);
else if (t>=4*pi/6 && t< 8*pi/6) || (t<=-4*pi/6 && t> -8*pi/6)
y=-Ke*We;
else
y=(6/pi*t*Ke*We)-(9*Ke*We); end
end
end
%-------------------- Eb --------------------function y = fcn(t,Ke,We)
if ((t>=2*pi/6 && t<pi))
y=Ke*We;
else if (t>=pi && t < 8*pi/6) || (t<=-pi && t > -8*pi/6)
y=(-6/pi*t*Ke*We)+(7*Ke*We);
else if (t>=8*pi/6 && t< 2*pi) || (t<=-8*pi/6 && t > -2*pi)
y=-Ke*We;
else
y=(6/pi*t*Ke*We)-(Ke*We); end
end
end
1 of 1
01/25/2013 04:54 AM
Error using EMF (line 5)
Not enough input arguments.
151
E.0.10 Estimao
EstimacaoBinEMFEntreFases
1 of 1
01/22/2013 11:40 PM
binario = ((eab*iab)+(ebc*ibc)+(ec*ica))/(3*w);
E.0.11
da Velocidade Pelo Cruzamento no Zero da Fora Contraeletrobinario =Estimao
((eab*iab)+(ebc*ibc)+(ec*ica))/(3*w);
EstimacaoVelHallSensors
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulacoes/M
motriz
Published with MATLAB 7.10
152
Estimaes - Simulao
EstimacaoVelHallSensors
E.0.12
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulacoes/Matlab/Ma
EstimacaoVelEMFEntreFases
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulac...
E.0.13
1 of 1
EstimacaoVelEMFPorFase
Input argument
"t1" is undefined.
file:///media/Data/MyDocuments/FEUP/5/Dissertao/Simulac...
E.0.14
Estimao
da Velocidade
Pela Fora Contraeletromotriz Por Fase
Error in ==>
EstimacaoVelEMFEntreFases
at 5
if ((t1>t2) && (t1>t3))
01/26/2013 09
Estimaes - Simulao
153
EstimacaoHallSensors
E.0.15
file:///media/Data/MyDocuments/FEUP/5/Disse
Hb=0;
Hb=0;
Hb=1;
Hb=1;
Hb=1;
Hc=1;
Hc=0;
Hc=0;
Hc=0;
Hc=1;
1 of 1
154
Estimaes - Simulao
Anexo F
Programao do DSP
F.1
Malha Aberta
156
Programao do DSP
int TmpReadHallC=0,TmpReadHallC2=0,HallA;
int HallB,HallC;
white
white
//
white
void InitProgram(void){
InitSysCtrl(); //inciar DSP
DINT; //desligar interrupes
InitPieCtrl();
IER = 0x0000; //desliga interrupes do CPU
IFR = 0x0000; //reinicia as flags das interrupes
InitPieVectTable(); //carregar a lista de interrupes.
EINT; //iniciar interrupo global
ERTM; //inciar interrupo em tempo real
GPIOConfig(); //configurar as portas I/O
}
white
//
white
void InitialConditions(void){ //esta funo coloca todas as portas em low
GpioDataRegs.GPACLEAR.bit.GPIO0=1;
GpioDataRegs.GPACLEAR.bit.GPIO2=1;
GpioDataRegs.GPACLEAR.bit.GPIO4=1;
GpioDataRegs.GPACLEAR.bit.GPIO6=1;
GpioDataRegs.GPACLEAR.bit.GPIO8=1;
GpioDataRegs.GPACLEAR.bit.GPIO10=1; }
white
//white
void GPIOConfig(void) {
// mos1 - gpio01, mos2 - gpio03, mos3 - gpio05, mos4 - gpio07,
// mos5 - gpio09, mos6 - gpio10
EALLOW;
GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 0; //o valor 0 indica que as portas
//funcionaro como I/O
GpioCtrlRegs.GPAMUX1.bit.GPIO1 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO2 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO3 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO4 = 0;
157
GpioCtrlRegs.GPAMUX1.bit.GPIO5 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO6 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO7 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO9 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO10 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO11 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO12 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO14 = 0;
GpioCtrlRegs.GPADIR.bit.GPIO0 = 1; //o valor 1 configura a porta como sada.
//Esta porta destina-se ao mosfet1
GpioCtrlRegs.GPADIR.bit.GPIO1 = 0; //o valor 0 configura a porta como entrada.
//Esta porta l o HallA
GpioCtrlRegs.GPADIR.bit.GPIO2 = 1; //Esta porta destina-se ao mosfet2
GpioCtrlRegs.GPADIR.bit.GPIO3 = 0; //Esta porta l o HallB
GpioCtrlRegs.GPADIR.bit.GPIO4 = 1; //Esta porta destina-se ao mosfet3
GpioCtrlRegs.GPADIR.bit.GPIO5 = 0; //Esta porta l o HallC
GpioCtrlRegs.GPADIR.bit.GPIO6 = 1; //Esta porta destina-se ao mosfet4
GpioCtrlRegs.GPADIR.bit.GPIO7 = 1; //usada apenas para debug
GpioCtrlRegs.GPADIR.bit.GPIO8 = 1; //Esta porta destina-se ao mosfet5
GpioCtrlRegs.GPADIR.bit.GPIO9 = 1; //usada apenas para debug
GpioCtrlRegs.GPADIR.bit.GPIO10 = 1; //Esta porta destina-se ao mosfet6
GpioCtrlRegs.GPADIR.bit.GPIO11 = 1; //usada apenas para debug
EDIS;
return; }
white
white
//***********************************************************************
//****************************** Main ***********************************
//***********************************************************************
white void main(void)
{
InitProgram();
InitialConditions();
for(;;){ //ciclo infinito
GetValues(); //l os sinais dos sensores Hall
OpenLoop(HallA,HallB,HallC); //gera os estados e pwm a enviar ao inversor
//GpioDataRegs.GPATOGGLE.bit.GPIO9=1; //debug
}
}
158
Programao do DSP
white
white
//***********************************************************************
//*************************** Malha Aberta *******************************
//***********************************************************************
white
//
white
void GetValues(){ //l os sinais dos sensores Hall nas portas 1,3 e 5
if (GpioDataRegs.GPADAT.bit.GPIO1==1) HallA=1; else HallA=0;
if (GpioDataRegs.GPADAT.bit.GPIO3==1) HallB=1; else HallB=0;
if (GpioDataRegs.GPADAT.bit.GPIO5==1) HallC=1; else HallC=0;
}
white
white
//white
void OpenLoop() { //a cada combinao dos sensores Hall lhe atribudo um estado
if (HallA ==0 & & HallB==1 & & HallC==0) state=5;
else if (HallA ==0 & & HallB==1 & & HallC==1) state=6;
else if (HallA ==0 & & HallB==0 & & HallC==1) state=1;
else if (HallA ==1 & & HallB==0 & & HallC==1) state=2;
else if (HallA ==1 & & HallB==0 & & HallC==0) state=3;
else if (HallA ==1 & & HallB==1 & & HallC==0) state=4;
else state=7; //nenhum dos estados anteriores. Se for o caso, o vetor gerado nulo.
VecSelectorOpenLoop(state);
return;
}
white
//white
void VecSelectorOpenLoop(state) { //a cada estado lhe atribudo um vetor
if (state==5) vec=5;
else if (state==6) vec=6;
else if (state==1) vec=1;
else if (state==2) vec=2;
else if (state==3) vec=3;
else if (state==4) vec=4;
else vec=7; //vetor nulo
PWMGenerator(vec);
159
return;
}
white
//
white
void PWMGenerator(vec) //com set=1, a porta encontra-se em high. Com clear=1,
//a porta fica low
// mos1 - gpio00, mos2 - gpio02, mos3 - gpio04, mos4 - gpio06, mos5 - gpio08,
//mos6 - gpio10
white
if (vec==1) //vetor 100001
{GpioDataRegs.GPASET.bit.GPIO0=1;GpioDataRegs.GPASET.bit.GPIO10=1;
GpioDataRegs.GPACLEAR.bit.GPIO2=1;GpioDataRegs.GPACLEAR.bit.GPIO4=1;
GpioDataRegs.GPACLEAR.bit.GPIO6=1;GpioDataRegs.GPACLEAR.bit.GPIO8=1;}
white
else if (vec==2) //vetor 010001
{GpioDataRegs.GPASET.bit.GPIO2=1;GpioDataRegs.GPASET.bit.GPIO10=1;
GpioDataRegs.GPACLEAR.bit.GPIO0=1;GpioDataRegs.GPACLEAR.bit.GPIO4=1;
GpioDataRegs.GPACLEAR.bit.GPIO6=1;GpioDataRegs.GPACLEAR.bit.GPIO8=1;}
white
else if (vec==3) //vetor 010100
{GpioDataRegs.GPASET.bit.GPIO2=1;GpioDataRegs.GPASET.bit.GPIO6=1;
GpioDataRegs.GPACLEAR.bit.GPIO0=1;GpioDataRegs.GPACLEAR.bit.GPIO4=1;
GpioDataRegs.GPACLEAR.bit.GPIO8=1;GpioDataRegs.GPACLEAR.bit.GPIO10=1;}
white
else if (vec==4) //vetor 001100
{GpioDataRegs.GPASET.bit.GPIO4=1;GpioDataRegs.GPASET.bit.GPIO6=1;
GpioDataRegs.GPACLEAR.bit.GPIO0=1;GpioDataRegs.GPACLEAR.bit.GPIO2=1;
GpioDataRegs.GPACLEAR.bit.GPIO8=1;GpioDataRegs.GPACLEAR.bit.GPIO10=1;}
white
else if (vec==5) //vetor 001010
{GpioDataRegs.GPASET.bit.GPIO4=1;GpioDataRegs.GPASET.bit.GPIO8=1;
GpioDataRegs.GPACLEAR.bit.GPIO0=1;GpioDataRegs.GPACLEAR.bit.GPIO2=1;
GpioDataRegs.GPACLEAR.bit.GPIO6=1;GpioDataRegs.GPACLEAR.bit.GPIO10=1;
white
else if (vec==6) //100010
{GpioDataRegs.GPASET.bit.GPIO0=1;GpioDataRegs.GPASET.bit.GPIO8=1;
GpioDataRegs.GPACLEAR.bit.GPIO2=1;GpioDataRegs.GPACLEAR.bit.GPIO4=1;
GpioDataRegs.GPACLEAR.bit.GPIO6=1;GpioDataRegs.GPACLEAR.bit.GPIO10=1;}
white
160
Programao do DSP
F.2
Malha Fechada
161
// Global Variables
white
white
double count=0,Speed=0, time=0,TmpTimeComutation=0;
double TmpTimeComutationFinal=0,Ia=0,Ib=0,Ic=0,IaAn=0;
double IbAn=0,IcAn=0,TorqueRef=0,Torque=0,SpeedTmp=0,SpeedTmp2=0;
double SpeedRef=0,Va=0,Vb=0,VaAn=0;
double VbAn=0,VcAn=0,Eab=0,Ebc=0,Eca=0,Iab=0,Ibc=0,Vab=0,Vbc=0;
double TmpReadCurrentAB=0,TmpReadCurrentAB2=0,TmpReadCurrentBC=0;
double TmpReadCurrentBC2=0;
long int DSpeed=0,DIab=0,DIbc=0;
int state,vec,TmpReadHallA=0,TmpReadHallA2=0,TmpReadHallB=0,TmpReadHallB2=0;
int TmpReadHallC=0,TmpReadHallC2=0,HallA,HallB,HallC,TSignal;
Uint16 count2=0;
white
// PID Gains
white
double Kp=0.2,Kd=0.00000001,Ki=0;
white
//- Deadtime
white
int DeadtimeUs=5; //in us
white
//
white
void InitProgram(void){
InitSysCtrl();
DINT;
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable();
EALLOW;
PieVectTable.TINT0 = & cpu_ timer0_ isr;
EDIS;
InitCpuTimers();
InitAdc();
ConfigCpuTimer(& CpuTimer0, 60, 5);
CpuTimer0Regs.TCR.all = 0x4001;
IER |= M_ INT1;
162
Programao do DSP
PieCtrlRegs.PIEIER1.bit.INTx7 = 1;
EINT;
ERTM;
ADConfig(); //configura o a/d do dsp
GPIOConfig();
}
white
//
white
void InitialConditions(void){
GpioDataRegs.GPACLEAR.bit.GPIO0=1;
GpioDataRegs.GPACLEAR.bit.GPIO2=1;
GpioDataRegs.GPACLEAR.bit.GPIO4=1;
GpioDataRegs.GPACLEAR.bit.GPIO6=1;
GpioDataRegs.GPACLEAR.bit.GPIO7=1;
GpioDataRegs.GPACLEAR.bit.GPIO8=1;
GpioDataRegs.GPACLEAR.bit.GPIO9=1;
GpioDataRegs.GPACLEAR.bit.GPIO10=1;
}
white
//white
void GPIOConfig(void) {
// mos1 - gpio01, mos2 - gpio03, mos3 - gpio05, mos4 - gpio07,
// mos5 - gpio09, mos6 - gpio10
EALLOW;
GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 0; //o valor 0 indica que as portas
//funcionaro como I/O
GpioCtrlRegs.GPAMUX1.bit.GPIO1 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO2 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO3 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO4 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO5 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO6 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO7 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO9 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO10 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO11 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO12 = 0;
163
GpioCtrlRegs.GPAMUX1.bit.GPIO14 = 0;
GpioCtrlRegs.GPADIR.bit.GPIO0 = 1; //o valor 1 configura a porta como sada.
//Esta porta destina-se ao mosfet1
GpioCtrlRegs.GPADIR.bit.GPIO1 = 0; //o valor 0 configura a porta como entrada.
//Esta porta l o HallA
GpioCtrlRegs.GPADIR.bit.GPIO2 = 1; //Esta porta destina-se ao mosfet2
GpioCtrlRegs.GPADIR.bit.GPIO3 = 0; //Esta porta l o HallB
GpioCtrlRegs.GPADIR.bit.GPIO4 = 1; //Esta porta destina-se ao mosfet3
GpioCtrlRegs.GPADIR.bit.GPIO5 = 0; //Esta porta l o HallC
GpioCtrlRegs.GPADIR.bit.GPIO6 = 1; //Esta porta destina-se ao mosfet4
GpioCtrlRegs.GPADIR.bit.GPIO7 = 1; //usada apenas para debug
GpioCtrlRegs.GPADIR.bit.GPIO8 = 1; //Esta porta destina-se ao mosfet5
GpioCtrlRegs.GPADIR.bit.GPIO9 = 1; //usada apenas para debug
GpioCtrlRegs.GPADIR.bit.GPIO10 = 1; //Esta porta destina-se ao mosfet6
GpioCtrlRegs.GPADIR.bit.GPIO11 = 1; //usada apenas para debug
EDIS;
return; }
white
//white
void ADConfig(void){
EALLOW;
AdcRegs.ADCCTL1.bit.INTPULSEPOS = 1;
AdcRegs.INTSEL1N2.bit.INT1E = 1; //iniciar ADCINT1
AdcRegs.INTSEL1N2.bit.INT1CONT = 0; //desligar ADCINT1 Continuous mode
AdcRegs.INTSEL1N2.bit.INT1SEL = 1;
AdcRegs.ADCSOC0CTL.bit.CHSEL = 0; //converso ocorre na porta 0
AdcRegs.ADCSOC1CTL.bit.CHSEL = 1; //converso ocorre na porta 1
AdcRegs.ADCSOC2CTL.bit.CHSEL = 2; //converso ocorre na porta 2
AdcRegs.ADCSOC3CTL.bit.CHSEL = 3; //converso ocorre na porta 3
AdcRegs.ADCSOC0CTL.bit.TRIGSEL = 1; //interrupo ocorre pelo timer0
AdcRegs.ADCSOC1CTL.bit.TRIGSEL = 1;
AdcRegs.ADCSOC2CTL.bit.TRIGSEL = 1;
AdcRegs.ADCSOC3CTL.bit.TRIGSEL = 1;
AdcRegs.ADCSOC0CTL.bit.ACQPS = 6; //sample & hold de seis clocks
AdcRegs.ADCSOC1CTL.bit.ACQPS = 6;
AdcRegs.ADCSOC2CTL.bit.ACQPS = 6;
AdcRegs.ADCSOC3CTL.bit.ACQPS = 6;
}
white
164
Programao do DSP
white
//***********************************************************************
//****************************** Main ***********************************
//***********************************************************************
white void main(void)
{
InitProgram();
InitialConditions();
SpeedRef=700; //referencia de velocidade em RPM
for(;;){
ClosedLoop();
}}
white
//*************************************************************
//*********************** Malha Fechada *************************
//**************************************************************
white
interrupt void cpu_ timer0_ isr(void){
count++; //conta o numero de interrupes
if(count==65534) count=0; count2++; //evita overflow de count
Ia=AdcResult.ADCRESULT0; // lida a tensao na porta 0 do a/d
Ib=AdcResult.ADCRESULT1; // lida a tensao na porta 1 do a/d
Va=AdcResult.ADCRESULT3; // lida a tensao na porta 2 do a/d
Vb=AdcResult.ADCRESULT2; // lida a tensao na porta 3 do a/d
GpioDataRegs.GPATOGGLE.bit.GPIO7=1;
PieCtrlRegs.PIEACK.all = PIEACK_ GROUP1; // Acknowledge interrupt to PIE
return;
}
white
//
white
void delay(deadtime){
int i=0;
for(i=0;i<deadtime;i++); //clock de 10 MHz - 10 clocks para 1 us de atraso
return;
}
white
//
white
void ClosedLoop(){
165
GetValues();
EstimateSpeedHallSensors(); //esimao de velocidade
EstimateEMF(); //estimao da fora contraeletromotriz
EstimateTorque(); //estimao do binrio
SpeedPIDController(); //controlador PID
VecSelectorClosedLoop();
PWMGenerator(vec);
return;
}
white
//
white
void GetValues(){
if (GpioDataRegs.GPADAT.bit.GPIO1==1) HallA=1; else HallA=0;
if (GpioDataRegs.GPADAT.bit.GPIO3==1) HallB=1; else HallB=0;
if (GpioDataRegs.GPADAT.bit.GPIO5==1) HallC=1; else HallC=0;
if (HallA ==0 & & HallB==0 & & HallC==1) state=1;
else if (HallA ==1 & & HallB==0 & & HallC==1) state=2;
else if (HallA ==1 & & HallB==0 & & HallC==0) state=3;
else if (HallA ==1 & & HallB==1 & & HallC==0) state=4;
else if (HallA ==0 & & HallB==1 & & HallC==0) state=5;
else if (HallA ==0 & & HallB==1 & & HallC==1) state=6;
else state=7;
white
TmpReadHallA=HallA; //os sinais mais recentes dos sensores sao gravados nestas
//variaveis
TmpReadHallB=HallB;
TmpReadHallC=HallC;
white
IaAn=((Ia/4095*3.3)-1.5)*10; //conversao D/A.... 1.5 V offset, ratio transdutor de
//corrente:10
IbAn=((Ib/4095*3.3)-1.5)*10;
IcAn=-IaAn-IbAn;
Iab=(IaAn-IbAn);
Ibc=(IbAn-IcAn);
TmpReadCurrentAB=Iab; //os valores mais recentes da corrente sao gravados nestas
//variaveis
TmpReadCurrentBC=Ibc;
DIab=(TmpReadCurrentAB-TmpReadCurrentAB2)*200000; //frequencia da
//interrupcao: 200khz.calculo da derivada
166
Programao do DSP
DIbc=(TmpReadCurrentBC-TmpReadCurrentBC2)*200000;
VaAn=(Va/4095*3.3)*4; //conversao D/A... ganho dos ampops=1/4
VbAn=(Vb/4095*3.3)*4;
VcAn=-VaAn-VbAn;
Vab=VaAn-VbAn;
Vbc=VbAn-VcAn;
TmpReadCurrentAB2=TmpReadCurrentAB; //as variaveis sao atualizadas para o
//proximo calculo da derivada
TmpReadCurrentBC2=TmpReadCurrentBC;
return;
}
white
//
white
void VecSelectorClosedLoop() { //tabela de seleo dos vetores em malha fechada
if (state==5 & & TSignal==1) vec=5;
else if (state==5 & & TSignal==0) vec=2;
else if (state==6 & & TSignal==1) vec=6;
else if (state==6 & & TSignal==0) vec=3;
else if (state==1 & & TSignal==1) vec=1;
else if (state==1 & & TSignal==0) vec=4;
else if (state==2 & & TSignal==1) vec=2;
else if (state==2 & & TSignal==0) vec=5;
else if (state==3 & & TSignal==1) vec=3;
else if (state==3 & & TSignal==0) vec=6;
else if (state==4 & & TSignal==1) vec=4;
else if (state==4 & & TSignal==0) vec=1;
else vec=7;
return;
}
white
//white void PWMGenerator(vec) //com set=1, a porta encontra-se em high. Com clear=1,
//a porta fica low
// mos1 - gpio00, mos2 - gpio02, mos3 - gpio04, mos4 - gpio06, mos5 - gpio08,
//mos6 - gpio10
white
if (vec==1) //vetor 100001
{GpioDataRegs.GPASET.bit.GPIO0=1;GpioDataRegs.GPASET.bit.GPIO10=1;
GpioDataRegs.GPACLEAR.bit.GPIO2=1;GpioDataRegs.GPACLEAR.bit.GPIO4=1;
167
GpioDataRegs.GPACLEAR.bit.GPIO6=1;GpioDataRegs.GPACLEAR.bit.GPIO8=1;}
white
else if (vec==2) //vetor 010001
{GpioDataRegs.GPASET.bit.GPIO2=1;GpioDataRegs.GPASET.bit.GPIO10=1;
GpioDataRegs.GPACLEAR.bit.GPIO0=1;GpioDataRegs.GPACLEAR.bit.GPIO4=1;
GpioDataRegs.GPACLEAR.bit.GPIO6=1;GpioDataRegs.GPACLEAR.bit.GPIO8=1;}
white
else if (vec==3) //vetor 010100
{GpioDataRegs.GPASET.bit.GPIO2=1;GpioDataRegs.GPASET.bit.GPIO6=1;
GpioDataRegs.GPACLEAR.bit.GPIO0=1;GpioDataRegs.GPACLEAR.bit.GPIO4=1;
GpioDataRegs.GPACLEAR.bit.GPIO8=1;GpioDataRegs.GPACLEAR.bit.GPIO10=1;}
white
else if (vec==4) //vetor 001100
{GpioDataRegs.GPASET.bit.GPIO4=1;GpioDataRegs.GPASET.bit.GPIO6=1;
GpioDataRegs.GPACLEAR.bit.GPIO0=1;GpioDataRegs.GPACLEAR.bit.GPIO2=1;
GpioDataRegs.GPACLEAR.bit.GPIO8=1;GpioDataRegs.GPACLEAR.bit.GPIO10=1;}
white
else if (vec==5) //vetor 001010
{GpioDataRegs.GPASET.bit.GPIO4=1;GpioDataRegs.GPASET.bit.GPIO8=1;
GpioDataRegs.GPACLEAR.bit.GPIO0=1;GpioDataRegs.GPACLEAR.bit.GPIO2=1;
GpioDataRegs.GPACLEAR.bit.GPIO6=1;GpioDataRegs.GPACLEAR.bit.GPIO10=1;
white
else if (vec==6) //100010
{GpioDataRegs.GPASET.bit.GPIO0=1;GpioDataRegs.GPASET.bit.GPIO8=1;
GpioDataRegs.GPACLEAR.bit.GPIO2=1;GpioDataRegs.GPACLEAR.bit.GPIO4=1;
GpioDataRegs.GPACLEAR.bit.GPIO6=1;GpioDataRegs.GPACLEAR.bit.GPIO10=1;}
white
else //vetor 000000
{GpioDataRegs.GPACLEAR.bit.GPIO0=1;GpioDataRegs.GPACLEAR.bit.GPIO2=1;
GpioDataRegs.GPACLEAR.bit.GPIO4=1;GpioDataRegs.GPACLEAR.bit.GPIO6=1;
GpioDataRegs.GPACLEAR.bit.GPIO8=1;GpioDataRegs.GPACLEAR.bit.GPIO10=1;}
return;
}
white
//
white
void EstimateSpeedHallSensors(){
if(count2!=0) time=(count2*65534*0.000005) +(count*0.000005);
else time=count*0.000005;
168
Programao do DSP
169
170
Programao do DSP
Referncias
[1] R.Krishnan. Em Electric Motor Drives - Modelling, Analysis and Control, pginas 3
6,8,514518,527528,579. Prentice Hall, 2001.
[2] M. A. Rahman. Chapter 5: Permanent magnet machines. Em The Industrial Electronics
Handbook. Second Edition. Power Electronics and Motor Drives. CRC Press, 2011.
[3] R.Krishnan. Em Permanent Magnet Synchronous and Brushless DC Motor Drives, pginas
37, 1013, 3437, 136146, 155162, 252. CRC Press, 2010.
[4] Shane W. Colton. Design and prototyping methods for brushless motors and motor control.
Tese de mestrado, Massachusetts Institute of Technology, 2008.
[5] James Robert Mevey. Sensorless field oriented control of brushless permanent magnet synchronous motors. Tese de mestrado, Kansas State University, 2006.
[6] Ned Mohan, Tore M. Undeland, e William P.Robbins. Em Power Electronics Converters,
Applications and Design, pginas 1631, 143146. 1995.
[7] S. Kouro, J. I. Len, L. G. Franquelo, J. Rodrguez, e B. Wu. Chapter 14: Dcac converters.
Em The Industrial Electronics Handbook. Second Edition. Power Electronics and Motor
Drives, pginas 914,16. CRC Press, 2011.
[8] S.B.Ozturk. Direct Torque Control of Permanent Magnet Synchronous Motors with NonSinusoidal Back-EMF. Tese de doutoramento, Texas A&M University, 2008.
[9] D. Sun, J. G. Zhu, e Y. K. He. A space vector modulation direct torque control for permanent
magnet synchronous motor drive systems. Em The Fifth International Conference on Power
Electronics and Drive Systems, pgina 693. 2003.
[10] Zicheng Li, Shanmei Cheng, Yi Qin, e Kai Cai. A novel line-to-line back emf calculation
for sensorless brushless dc motor drives. 2008.
[11] Jaebok Lee e Swamidoss Sathiakumarand Yash Shrivastava. A novel speed and position
estimation of the brushless dc motor at low speed. Em Australian Universities Power Engineering Conference, 2008.
[12] R. Arulmozhiyal e R. Kandiban. Design of fuzzy pid controller for brushless dc motor. Em
2012 International Conference on Computer Communication and Informatics, 2012.
[13] J.F.Gieras e M.Wing. Em Permanent Magnet Motor Technology - Design and Applications,
pginas 12,1820,22,4551,5255,283284,415417. Terceira edio, 2002.
[14] Malcolm Barnes. Chapter 4: Electromagnetic compatibility. Em Variable Speed Drives and
Power Electronics. Newnes.
171
172
REFERNCIAS
[15] Bill Drury. Chapter a3: power semiconductor devices. Em The Controls Techniques Drives
and Controls Handbook, pginas 109135,137159, 411431. Segunda edio, 2009.
[16] K. Marian, F. Leopoldo, M. Jose Rodriguez, A. Perez, e J. I. Leon. High-performance motor
drives. Em IEEE Industrial Electronics Magazine, volume 5, pgina 18. 2011.
[17] Dr. Christian Miesner, Dr. Roland Rupp, Holger Kapels, Michael Krach, e Dr. Ilia Zverev.
Silicon carbide schottky diodes: An smps circuit designers dream comes true!
[18] C. A. Martins e A. S. Carvalho. Technological trends in induction motor electrical drives.
Em IEEE Porto Power Tech Conference, pginas 24. IEEE, 2001.
[19] B.K.Bose. Chapter 4: Voltage-fed converters and pwm techniques. Em Power Electronics
And Motor Drives. Advances and Trends, pgina 204. Elsevier, 2006.
[20] D. O. Neacsu. Space vector modulation - an introduction. Em IECON01: The 27th Annual
Conference of the IEEE Industrial Electronics Society, pginas 1584,1587. IEEE, 2011.
[21] M. Pacas. Sensorless drives in industrial applications. Em IEEE Industrial Electronics
Magazine, volume 5, pgina 18. IEEE, 2011.
[22] C.C.Chan, K.T.Chau, W.Xia, Meiling Zhu, e Ruoju Zhang. Novel permanent magnet motor
drives for electric vehicles. Em IEEE Transactions on Industrial Electronics, volume 43,
pginas 331332, 1996.
[23] JA Weimer. The role of electric machines and drives in the more electric aircraft. Em Int
Electr Machines and Drives Conf,IEMDC03, pginas 1112. 2003.
[24] Texas Instruments. Tms320f2803x mcus. Data sheet, Texas Instruments, 2011.
[25] Optoeletronics. High speed transistor optocoupler. Data sheet, Optoeletronics.
[26] STMicroeletronics. Seven darlington arrays - uln2003a. Data sheet, STMicroeletronics,
2002.
[27] Texas Instruments. Cmos hex buffer/converters - cd4049. Data sheet, Texas Instruments,
2004.
[28] Hewlett Packard. 2.0 amp output current igbt gate drive optocoupler. Data sheet, Hewlett
Packard, 2004.
[29] LEM. Current transducer la 55-p. Data sheet, LEM, 2011.