Вы находитесь на странице: 1из 189
UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE ENGENHARIA ELÉTRICA LABORATÓRIO DE QUALIDADE DA ENERGIA ELÉTRICA

UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE ENGENHARIA ELÉTRICA LABORATÓRIO DE QUALIDADE DA ENERGIA ELÉTRICA

IINNTTRROODDUUÇÇÃÃOO ÀÀ LLIINNGGUUAAGGEEMM
IINNTTRROODDUUÇÇÃÃOO ÀÀ
LLIINNGGUUAAGGEEMM
ELÉTRICA IINNTTRROODDUUÇÇÃÃOO ÀÀ LLIINNGGUUAAGGEEMM M M O O D D E E L L S S

MMOODDEELLSS DDOO AATTPP

Uberlândia – MG 15 de Setembro de 2007

ii

ii UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE ENGENHARIA ELÉTRICA LABORATÓRIO DE QUALIDADE DA ENERGIA ELÉTRICA

UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE ENGENHARIA ELÉTRICA LABORATÓRIO DE QUALIDADE DA ENERGIA ELÉTRICA

IINNTTRROODDUUÇÇÃÃOO AA LLIINNGGUUAAGGEEMM MMOODDEELLSS DDOO AATTPP

Esta apostila visa fornecer uma introdução à linguagem MODELS do

software ATP. A linguagem MODELS permite, a partir de um algoritmo,

modelar dispositivos de controle e de sistema que podem ser usados no

ATP. A sua elaboração foi, principalmente, com base nas informações

(tradução) dos documentos [1], [2] e [3] indicados na referência

bibliográfica.

Ivandro Antonio Bacca

Uberlândia – MG 15 de Setembro de 2007

iii

SUMÁRIO

Capítulo 1

1

1

INTRODUÇÃO

1

Capítulo 2

2

2

OS GRUPOS PRINCIPAIS DA MODELS

2

2.1

DATA

3

2.2

CONST 3

2.3

VAR 4

2.4

HISTORY

5

2.5

DELAY CELLS

6

2.6

INIT 6

2.7

EXEC

7

2.8

USE e RECORD 8

2.9

UM ARQUIVO EQUIVALENTE TACS

8

Capítulo 3

11

3

FORMATO 11

3.1

COMENTÁRIO

11

3.2

NÚMEROS, VARIÁVEIS, VETORES

12

3.2.1 NÚMEROS 12

3.2.2 VARIÁVEIS 13

3.2.3 VETORES

13

3.3

DELIMITADORES

13

3.4

LINHAS EM BRANCO

14

3.5

SINAL DE IGUAL E ATRIBUIÇÃO DE VALORES

14

3.6

PARÊNTESES, COLCHETES E CHAVES

15

3.6.1 PARÊNTESES

15

3.6.2 COLCHETES

16

3.6.3 CHAVES

16

Capítulo 4

17

iv

17

4.2 OUTPUT 18

4.1

INPUT

4.3 Outras características do exemplo 2

19

Capítulo 5

23

5

MAIS A RESPEITO DAS DECLARAÇÕES

23

5.1

Declaração DATA e CONST 23

5.1.1 DATA 23

5.1.2 CONST

24

5.2

INPUT e OUTPUT 25

5.2.1 INPUT 25

5.2.2 OUTPUT

26

5.3

VAR 26

5.4

HISTORY e DELAY CELLS

27

5.4.1 HISTORY 28

5.4.2 Diretiva HISTORY em USE 29

5.4.3 HISTORY EM INIT 30

5.5

DELAY CELLS

30

5.6

Procedimento de inicialização – INIT

31

5.7

EXPRESSÕES E FUNÇÕES 32

5.7.1 EXPRESSÕES NUMÉRICAS E LÓGICAS

32

5.7.2 FUNÇÕES NUMÉRICAS

34

5.8

FUNÇÕES DE DECLARAÇÃO

34

5.9

FUNÇÕES POINTLIST 35

Capítulo 6

37

6

EXPRESSÕES DE SIMULAÇÃO E FUNÇÕES

37

6.1

FUNÇÕES

37

6.1.1 EXPRESSÃO DERIVADA COM POLINÔMIO LINEAR

37

6.1.2 Função DERIVADA

37

6.1.3 FUNÇÃO INTEGRAL

38

6.1.4 EXPRESSÃO SUM (SOMA)

40

6.2

EXPRESSÕES DE SIMULAÇÃO

41

v

 

6.2.2 FUNÇÃO PREVVAL

41

6.2.3 FUNÇÃO HISTDEF

41

6.2.4 CLAPLACE e LAPLACE função de transferência

42

Capítulo 7

45

7

ALGORITMO DE CONTROLE

45

7.1.1 IF – ENDIF (SE)

45

7.1.2 DO – REDO (FAÇA – REFAÇA)

46

7.1.3 WHILE – DO – ENDWHILE (ENQUANTO – FAÇA) 47

7.1.4 FOR – DO – ENDFOR (PARA – FAÇA)

48

7.2

COMBINE (COMBINAR) 51

7.3

TIMESTEP 53

7.4

RECORD – WRITE (REGISTRO – ESCREVER) 53

7.4.1 RECORD 53

7.4.2 WRITE

54

7.5

MULTIPLE MODELS 54

Capítulo 8

58

8

VERSÃO MODELS DE FONTES E DISPOSITIVOS DA TACS

58

8.1

INTRODUÇÃO 58

8.2

MODELOS EQUIVALENTS DE TACS E FONTES DE EMTP

58

8.2.1 SOURCE 11 - ‘LAVEL SIGNAL AND SINGLE PULSE’ 59

8.2.2 SOURCE 14 - ‘COSINE’

59

8.2.3 SOURCE 23 - ‘PULSE TRAIN’ 60

8.2.4 SOURCE 24 - ‘RAMP TRAIN’ 60

8.2.5 SOURCE 13 - ‘TWO SLOPE RAMP’ 61

8.2.6 SOURCE 15 - ‘DOUBLE EXPONENCIAL SURGE’

61

8.3

MODELOS EQUIVALENTS DE DISPOSITIVOS DE TACS 62

8.3.1 DEVICE 50 - ‘FREQUENCY METER’ 62

63

8.3.3 DEVICE 54 - ‘PULSE DELAY’ 63

8.3.4 DEVICE 55, 56, 57 - ‘DIGITIZER, POINT BY POINT

NONLINEARITY, TIME SEQUENCED SWITCH’

8.3.2 DEVICE 51, 52 - ‘RELAY SWITHCH’

64

vi

 

8.3.6 DEVICE 63 - ‘INSTANTENOUS MAXIMUM/MINIMUM

67

8.3.7 DEVICE 64 - ‘MAXIMUM/MINIMUM TACKING’

68

8.3.8 DEVICE 65 - ‘ACCUMULATOR – COUNTER’

 

69

8.3.9 DEVICE 66 - ‘RMS VALUE’

 

70

Capítulo 9

 

71

9

EXEMPLOS DE APLICAÇÕES DA MODELS

 

71

9.1

COMO

USAR

A

LINGUAGEM

MODELS

EM

COMPONENTES

DEFINIDOS PELO UTILIZÁRIO DA REDE NO ATP [6]

 

71

 

9.1.1 INTRODUÇÃO

 

71

9.1.2 COMPONENTE DE CONTROLE 72

 

9.1.3 COMPONENTE

DE

CIRCUITO

72

9.1.4 COMPONENTES TIPOS DE CONTROLE

72

9.2

MODELANDO UM CIRCUITO

RL PARALELO USANDO

COMPONENTE TIPO-94 ITERATED [4]

 

82

9.3 TRABALHO COM MODELOS ESTRANGEIROS NA MODELS [5] 85

9.3.1 CONCLUSÃO 88

APÊNDICE

1:

AMOSTRA

FGNMOD.FOR COM DE MODO

STANDARD

C-MODELOS UTILIZÁVEIS E INSCRIÇÃO DE C-

88

FUNÇÕES Apêndice 2: Exemplo de C-código ser usado com inscrição de módulo

como determinado em apêndice A, corpo dos "modelos

Standard

estrangeiros" ou "funções estrangeiras" C-função ser mudado pelo usuário .91 Apêndice 3: Dados Embalam exemplo para dados-produção de ATP por

MODELOS modelo de impressão estrangeiro (USER_C_MODEL_1_M)

94

9.4 BORNE QUE PROCESSA DADOS TRANSIENTES MEDIDOS USANDO

MODELOS NO ATP-EMTP [7]

 

95

9.4.1 INTRODUÇÃO

 

95

9.4.2 POSTPROCESS PLOT FILE Facility Using MODELS

95

9.4.3 Post

Processem

Usem

TACS-MODELS Interface

96

9.4.4 Post

Processem

Usem

MODELS

98

APÊNDICE 1. Processamento da medida do arco usando TACS-MODELS 99

vii

APÊNDICE 3. Computação dos coeficientes discretos da série de Fourier

(DFS_COEF. MDL) APÊNDICE 4. Computação da resistência e da reatância equivalentes em

alguma freqüência harmônica (IMPEDANZ.MDL)

102

103

9.5 CÁLCULO DO PLOT BODE COM ATP MODELS [8] 104

9.5.1 INTRODUÇÃO

9.5.2 CRIANDO UM ARQUIVO BODE PLOT POR MEIO DA

MODELS

104

105

9.6 ATP-EMTP COMO UMA FERRAMENTA PRÁTICA PARA A REDE

TÉRMICA QUE MODELA E SIMULAÇÃO DA TRANSFERÊNCIA

TÉRMICA [10]

109

9.6.1 CRIAÇÃO DE UMA RESISTÊNCIA TÉRMICA NA MODELS

109

9.6.2 RESISTÊNCIA TÉRMICA PARA A RADIAÇÃO 110

9.6.3 RESISTÊNCIA TÉRMICA PARA A TRANSMISSÃO

111

9.6.4 FONTES DE CALOR

113

9.7 CRIAÇÃO DE UM CAPACITOR DEPENDENTE DO TEMPO NA

MODELS 115

9.8 USO EDUCACIONAL DA MODELS DO EMTP PARA O ESTUDO DE

TRANSITÓRIOS EM MÁQUINAS ROTATIVAS

116

9.8.1 INTRODUÇÃO

116

9.8.2 EMTP MODELS

117

9.8.3 DESEMPENHO DO TORQUE DINÂMICO DE PARTIDA

120

9.8.4 EXEMPLO 1.2: ENERGIZAÇÃO DE UM MOTOR TRIFÁSICO

DE INDUÇÃO COM ROTOR GAIOLA DE ESQUILO

129

9.8.5 SIMULAÇÃO DE DRIVES ELÉTRICOS

141

9.8.6 EXEMPLO 2.1: SERVOMOTOR DC COM VELOCIDADE

AJUSTÁVEL 142 REFERÊNCIA BIBLIOGRÁFICA 145

APÊNDICE A - SINTAXE DO IDIOMA DE MODELOS

146

APÊNDICE B – PALAVRAS-CHAVES DA LINGUAGEM MODELS

156

APÊNDICE C – CONSTANTES PRÉ-DEFINIDAS E VARIÁVEIS 162

1

Capítulo 1

1

INTRODUÇÃO

MODELS é um idioma de descrição de uso geral apoiado por um jogo de ferramentas de simulação para a representação e estudo de sistemas que apresenta variação de tempo. O idioma MODELS provê um formato que focaliza na descrição da estrutura de um modelo e na função de seus elementos. É pretendido que a descrição de um modelo está ego - documentando e podem ser usados ambos então como o documento de descrição usado por representar o sistema e como os dados usados na simulação atual. Um sistema pode ser descrito em MODELS como um arranjo de submodels inter-relacionado, independente de um ao outro na descrição interna (por exemplo, selecionando os nomes das variáveis deles/delas) deles/delas e na simulação (por exemplo, selecionando o tamanho do passo de tempo de simulação individual deles/delas) deles/delas. Também há uma distinção clara em MODELS entre a descrição de um modelo e o uso de um modelo. Podem ser desenvolvidos modelos individuais separadamente, agrupados em uma ou mais bibliotecas de modelos e usado em outros modelos como blocos independentes na construção de um sistema. Finalmente, a descrição de cada modelo tem um livre-formato, sintaxe palavra chave-acumulada de contexto local, e não requer formato fixo em sua representação.

2

Capítulo 2

2 OS GRUPOS PRINCIPAIS DA MODELS

A linguagem MODELS é usada como parte de um arquivo de dados do ATP-EMTP. A seção MODELS de um arquivo de dados do ATP deve ter pelo menos três grupos MODELS principais de códigos, cada um introduzido por uma palavra-chave, bem como as palavras chaves ou palavra pedida no EMTP. Os três grupos são encabeçados por MODELS, MODEL e USE. A palavra-chave MODELS começa um arquivo de dados da MODELS no ATP. Os grupos MODEL e USE são terminados por ENDMODEL e ENDUSE, respectivamente. Em seguida um quarto grupo, opcional, encabeçado pela palavra-chave RECORD pode ser inserido para mostrar a saída e plotar as variáveis. A parte MODELS de um arquivo de dados do ATP é terminada pela palavra-chave ENDMODELS. MODELS é inserida no arquivo ATP exatamente da mesma maneira que a TACS, seguindo a mesma estrutura dos miscellaneous. A estrutura principal da MODELS é:

da mesma maneira que a TACS, seguindo a mesm a estrutura dos miscellaneous. A estrutura principal

3

2.1 DATA

DATA é a declaração para a primeira seção da MODEL. O arquivo entrado aqui permite ao usuário atribuir valores aos elementos. Estes valores podem ser atribuídos no grupo USE, sem ter a mudança da MODEL. No exemplo 1/M o arquivo entrado é:

a mudança da MODEL. No exemplo 1/M o arquivo entrado é: Onde ‘tperiod’ e ‘ton’ são

Onde ‘tperiod’ e ‘ton’ são parâmetros do impulse train, ‘vin’, entrada para o primeiro bloco no modelo. Note que estes parâmetros são escritos abaixo da diretiva DATA no grupo USE com o valor atual a ser usado, tperiod = 50ms e ton = 30ms. Note que o grupo USE não contem uma seção DATA, o valor padrão entrado na MODEL mal seja usado. Se o usuário quer mudar o valor padrão em DATA deve proceder da seguinte forma:

o valor padrão em DATA deve proceder da seguinte forma: Abaixo temos outros arquivos onde foi

Abaixo temos outros arquivos onde foi utilizada a declaração DATA.

outros arquivos onde foi utilizada a d eclaração DATA. 2.2 CONST CONST é a declaração para

2.2 CONST

CONST é a declaração para a segunda seção da MODEL. O arquivo entrado é uma constate fixada no modelo, e não pode ser modificada dentro do grupo USE. No exemplo 1/M a entrada é:

4

4 Onde ‘kgain’ é o ganho da função de transferência do primeiro bloco, e ‘kt’ é

Onde ‘kgain’ é o ganho da função de transferência do primeiro bloco, e ‘kt’ é o coeficiente do termo S no denominador. A seguir temos outro arquivo que utilizou a declaração CONST.

temos outro arquivo que utilizou a declar ação CONST. 2.3 VAR VAR é a declaração para

2.3 VAR

VAR é a declaração para a próxima seção da MODEL. Esta seção serve para declarar todas as variáveis usadas no grupo MODEL, exceto para aqueles declarados em INPUT, DATA e CONST. Diferente da TACS, MODELS não identifica automaticamente as variáveis utilizadas, e omissão de incorporá-la abaixo de VAR ou outra diretiva listada. No exemplo 1/M as seguintes variáveis são declaradas:

No exemplo 1/M as seguintes variáveis são declaradas: Onde: ‘vin’ é o sinal de entrada; ‘vout’

Onde:

‘vin’ é o sinal de entrada; ‘vout’ é a saída do primeiro bloco; ‘vdel’ é o atraso da saída; ‘dela’ é o delay de tempo no bloco delay; ‘tcount’ é contador para geração do sinal de entrada pulse train. A seguir temos outro arquivo no qual utilizou a declaração VAR.

para geração do sinal de entrada pulse train. A seguir temos outro arquivo no qual utilizou

5

5 2.4 HISTORY HISTORY é a diretiva para a próxi ma seção. Um número de funções

2.4 HISTORY

HISTORY é a diretiva para a próxima seção. Um número de funções simuladas exige o conhecimento da história passada das variáveis envolvidas. Um exemplo óbvio é o delay de um sinal. No exemplo1, as variáveis de entrada e saída da Transformada de Laplace e a função do sinal de delay requerem o mantimento da trilha dos valores de tempo passado. Consequentemente, HISTORY é requerida para as seguintes variáveis:

HISTORY é requerida para as seguintes variáveis: A seguir temos outra forma na qual foi utilizada

A seguir temos outra forma na qual foi utilizada da declaração HISTORY.

é requerida para as seguintes variáveis: A seguir temos outra forma na qual foi utilizada da

6

2.5 DELAY CELLS

A diretiva DELAY CELLS instrui MODELS para por de lado um número de celas de memória da MODELS para recordar os valores passados das variáveis. Isto pode ser feito em declaração de valor padrão para todas as variáveis declaradas sob HISTORY, ou para variáveis individuais. No exemplo

1/M:

HISTORY, ou pa ra variáveis individuais. No exemplo 1/M: Um outro exemplo da utilização da declaração

Um outro exemplo da utilização da declaração DELAY CELLS esta ilustrada abaixo:

da declaração DE LAY CELLS esta ilustrada abaixo: 2.6 INIT INIT é o procedimento para iniciali

2.6 INIT

INIT é o procedimento para inicializar a seção, terminando pela palavra- chave ENDINIT. Todas as variáveis usadas na seção EXEC da MODEL devem ser inicializadas, exceto para as variáveis declaradas em DATA, HISTORY, CONST e INPUT. Nenhuma inicialização de uma variável pode produzir resultados incorretos. Em adição para inicialização, a seção INIT também reserva ao usuário para definir constantes em termos de constantes de entrada ou definidas nas seções DATA e CONST. O primeiro tempo usado na MODELS pode inicializar todas as variáveis usadas em EXEC, exceto as entradas nas seções DATA e CONST, para evitar qualquer erro potencial. No exemplo 1/M:

7

7 2.7 EXEC EXEC é a palavra-chave que define a seção onde a simulação é executada

2.7 EXEC

EXEC é a palavra-chave que define a seção onde a simulação é executada pela simulação do algoritmo. Esta seção deve ser terminada pela palavra-chave

ENDEXEC. No exemplo 1/M é ilustrado um sistema simples de controle consistindo de dois blocos em série. O primeiro bloco é ‘kgain/ (1+kts)’ com uma entrada ‘vin’ e uma saída ‘vout’. A saída do primeiro bloco é alimentada através de um delay de 10ms, dando uma saída final ‘vdel’.

A entrada ‘vin’ é um “trem de pulso” de amplitude 100, começando em t

= 20ms, um período de tempo de 50ms e um pulso ON de 30ms. O primeiro bloco de controle é descrito por MODELS ‘Laplace function’:

de controle é descrito por MODELS ‘Laplace function’: O segundo bloco, que é um simp les

O segundo bloco, que é um simples delay, é entrado como:

O segundo bloco, que é um simp les delay, é entrado como: O uso de um

O uso de um ‘IF’ no bloco para a geração do trem de pulso ‘vin’ é

explicado no exemplo. O exemplo também mostra a geração mais simples de um trem de pulso por uma expressão lógica. As indicações disponíveis na MODELS para desenvolver um algoritmo de simulação, seus usos e sintaxes são discutidas nos próximos capítulos.

8

2.8 USE e RECORD

O grupo USE no exemplo 1/M no modelo ‘model_1’ é usado no contexto

deste arquivo de dados sob o nome ‘test’. A seção DATA no grupo USE, especifica o período do ‘pulse train’ como 50ms, o comprimento do sinal em nível alto, ‘ton’ como 30ms e o tempo de início como 20ms. Esta especificação cancela o valor padrão especificado no grupo MODEL.

O grupo RECORD no exemplo 1/M especifica ‘vin’, ‘vout’ e ‘vdel’ como

três variáveis em MODEL ‘test’ para serem visualizadas como saída.

Um exemplo da utilização da declaração USE está ilustrado abaixo:

da utilização da declar ação USE está ilustrado abaixo: 2.9 UM ARQUIVO EQUIVALENTE TACS Para aqueles

2.9 UM ARQUIVO EQUIVALENTE TACS

Para aqueles que são familiares com a TACS o exemplo 1/T mostra a parcela da TACS em um arquivo ATP, para a simulação de um bloco de controle como no exemplo 1/M. É possível fazer alguns pontos de comparação entre os dois arquivos.

9

9

10

10

11

Capítulo 3

3

FORMATO

A sintaxe da MODELS reserva um estilo livre de formatação. Nenhum das palavras-chaves, declarações ou indicações devem ser especificados em um local certo de coluna, como na TACS. As entradas não são diferenciadas em maiúsculas e minúsculas, mas é recomendável que as palavras-chaves sejam especificadas com letras maiúsculas, como MODEL, INPUT, VAR, USE, etc. fazendo com que a estrutura do arquivo apresente certa facilidade de editar e ler. Somente existe a restrição que não é possível deixar linhas em branco, uma vez que isso será rejeitado pelo ATP.

3.1 COMENTÁRIO

O usuário pode, entretanto colocar uma linha em branco utilizando a letra ‘C’ na coluna 1 (um). Existem três caminhos para entrar com linhas de comentário:

Tipo ‘C’ na primeira coluna seguido por uma linha em branco; Tipo ‘--‘ em qualquer lugar da linha seguido por um comentário; Utilizando a palavra-chave COMMENT seguida de um comentário, que pode estar compreendidos em diversas linhas. A palavra-chave ENDCOMMENTS é utilizada para terminar a seção COMMENT.

O exemplo seguinte ilustra a utilização dos comandos para a inserção de um comentário:

12

12 Uma outra forma de se utilizar os comentários está ilustrado abaixo: 3.2 NÚMEROS, VARIÁVEIS, VETORES.

Uma outra forma de se utilizar os comentários está ilustrado abaixo:

de se utilizar os comentários está ilustrado abaixo: 3.2 NÚMEROS, VARIÁVEIS, VETORES. 3.2.1 NÚMEROS Um

3.2 NÚMEROS, VARIÁVEIS, VETORES.

3.2.1 NÚMEROS

Um número (valor numérico) tem que ser uma série de dígitos decimais, com sinal positivo ou negativo. O primeiro caractere de um número deve ser um dígito.

Para a notação científica, o valor numérico é seguido, sem um espaço, pela letra ‘E’ seguida do valor do coeficiente inteiro. O seguinte exemplo esclarece isto.

do coeficiente inteiro. O seguinte exemplo esclarece isto. Note que um número com a condição ponto

Note que um número com a condição ponto .4 não deve ser especificado e sim utilizando um 0 (zero) antes, isto é, 0.4.

13

3.2.2 VARIÁVEIS

Variáveis são consultadas por seus nomes. Nomes são para ser digitados como um vetor de caracteres contínuos. O primeiro caractere de um nome não deve ser um dígito. Qualquer outro caractere que tem uma letra, dígito ou outra forma, é interpretado como final de um nome. Um nome pode ser de qualquer comprimento, não é limitado em 6 (seis) caracteres como no EMTP. Ao passar nomes para o EMTP ou para plotar via o RECORD, a limitação de seis caracteres se aplica a:

via o RECORD, a limitação de seis caracteres se aplica a: 3.2.3 VETORES As variáveis dos

3.2.3 VETORES

As variáveis dos vetores são especificadas pelo nome do vetor, seguida pela faixa de variação do vetor especificada dentro dos colchetes, como mostra o exemplo a seguir:

dentro dos colchetes, como mostra o exemplo a seguir: 3.3 DELIMITADORES A linguagem MODELS utiliza espaço

3.3 DELIMITADORES

A linguagem MODELS utiliza espaços em branco, vírgulas, ponto e vírgula, ‘carriage return’ e ‘line feeds’ como delimitadores ou separadores. A única exceção é o ‘carriage return’ e ‘line feeds’ que deve ser seguido de um comentário, introduzido pelo símbolo ‘--‘. Exemplos:

14

A declaração de variáveis usadas na MODEL na seção VAR pode ser de vários tipos como, por exemplo:

na seção VAR pode ser de vários tipos como, por exemplo: A declaração HISTORY das variávei

A declaração HISTORY das variáveis pode ser das seguintes formas:

HISTORY das variávei s pode ser das seguintes formas: Enquanto espaços em branco são reservados como

Enquanto espaços em branco são reservados como separadores (delimitadores) como mostram acima, seu uso não é recomendado porque pode conduzir a erros de datilografia que não são facilmente detectados.

3.4 LINHAS EM BRANCO

As linhas em branco não devem ser especificadas na linguagem MODELS,

assim como acontece com os cartões do ATP. A especificação de tais linhas leva

a erro da execução do algoritmo. A forma de implementar essas linhas em

branco é utilizando os comandos de comentário, como já explicado acima.

3.5 SINAL DE IGUAL E ATRIBUIÇÃO DE VALORES

Na linguagem MODELS existe uma diferença entre sinal de igual e símbolo de atribuição, que pode causar certa confusão entre usuários do FORTRAN ou BASIC. O símbolo de atribuição usado na MODELS é ‘ : ‘, usado por exemplo em declarações DATA ou HISTORY, a atribuição de um valor e fazer a variável

15

igual a este valor é ‘ := ‘, e o para igualar uma expressão a um determinado valor é ‘ = ‘. Sendo assim, quando se quer fazer uma atribuição a uma variável deve-se utilizar o comando ‘ := ‘, já quando se quer igualar uma variável a algum valor utiliza-se o comando ‘ = ‘. Por exemplo:

algum valor utiliza-se o comando ‘ = ‘ . Por exemplo: A seguir temos outras formas

A seguir temos outras formas de se utilizar esses sinais:

A seguir temos outras formas de se utilizar esses sinais: 3.6 PARÊNTESES, COLCHETES E CHAVES 3.6.1

3.6 PARÊNTESES, COLCHETES E CHAVES

3.6.1 PARÊNTESES

O parêntese ‘ ( ) ‘, o colchete ‘ [ ] ‘ e as chaves ‘ { } ‘ podem ser utilizadas na MODELS. Parêntese ‘ ( ) ‘ são usados na MODELS da mesma maneira como este tipo de parêntese como são comumente utilizados em matemática. MODELS utiliza parênteses nas expressões lógicas e numéricas, funções de argumentos etc., mas não para denotar índices ou faixa de variação de vetores. Por exemplo:

índices ou faixa de variação de vetores. Por exemplo: Parênteses circulares são também usados igualmente em

Parênteses circulares são também usados igualmente em algumas das indicações relativas declaração, como as abaixo da diretiva INIT.

são também usados igualmente em algumas das indicações relativas declaração, co mo as abaixo da diretiva

16

Uma outra forma de se utilizar os parênteses é:

16 Uma outra forma de se u tilizar os parênteses é: 3.6.2 COLCHETES Colchetes ‘ [

3.6.2 COLCHETES

Colchetes ‘ [ ] ‘ são usados apenas em vetores, para denotar um elemento ou faixa de variação do vetor. Por exemplo:

um elemento ou faixa de variação do vetor. Por exemplo: Outro exemplo da utilização dos colchetes

Outro exemplo da utilização dos colchetes é:

Por exemplo: Outro exemplo da utilização dos colchetes é: 3.6.3 CHAVES Chaves ‘ { } ‘

3.6.3 CHAVES

Chaves

{

}

são

usados

nas

atribuições. Por exemplo:

declarações,

definindo

limites

ou

usados nas atribuições. Por exemplo: declarações, definindo limites ou Uma outra forma de se utilizar as

Uma outra forma de se utilizar as chaves é:

usados nas atribuições. Por exemplo: declarações, definindo limites ou Uma outra forma de se utilizar as

17

Capítulo 4

4 MODELS NO ATP

O modelo do exemplo 1 não teve conexão para o EMTP. A única conexão do Model_1 para fora foi à definição dos parâmetros da função de transferência na declaração DATA no grupo USE. No exemplo 2/M é demonstrado como MODELS é conectado para o EMTP. A rede mostra que no EMTP parte do exemplo 2 é uma fonte AC – GENA de freqüência 50Hz conectada para BUSA, a chave de medição de BUSA para BUSB, um tiristor entre BUSB e BUSC e uma carga de 100MW, 10 MVAr representada por um ramo r+jx entre BUSC e o terra. MODEL tem o nome Model_2, é exigido para fazer duas coisas. Para conectar a carga através da descarga do tiristor em t = 50ms, e então calcular a potência ativa absorvida pelo resistor. Recordar que a saída tipo 4 no EMTP fornece somente o valor instantâneo da potência aparente S = V*I Model_2 determina a potência de fluxo ativo através da chave de medição localizada entre BUSA e BUSB. As variáveis para serem passadas para o EMTP são as tensões de BUSA e as correntes de BUSA para BUSB. MODELS necessita de três etapas para realizar o algoritmo.

4.1 INPUT

No exemplo analisado a entrada que recebe o sinal de tensão do ponto BUSA é usado como ‘volt’, e a corrente que é medida através da chave de medição BUSA-BUSB em BUSB pode ser usada como ‘cur’, como mostrado abaixo.

e que é medida através da chave de medição BUSA-BUSB em BU SB pode ser usada

18

MODEL tem que saber se as variáveis usadas em Model_2 são entradas do sinal externas de Model_2. Isto é feito pela diretiva (ou declaração) INPUT na MODEL.

é feito pela diretiva (ou declaração) INPUT na MODEL. No grupo USE, é declarado que as

No grupo USE, é declarado que as variáveis ‘volt’ e ‘cur’ importadas de uma fonte externa são usadas como variáveis ‘vv’ e ‘ii’ respectivamente.

usadas como va riáveis ‘vv’ e ‘ii’ respectivamente. Uma outra forma de se u tilizar à

Uma outra forma de se utilizar à diretiva INPUT é:

Uma outra forma de se u tilizar à diretiva INPUT é: 4.2 OUTPUT No exemplo 2,

4.2 OUTPUT

No exemplo 2, uma saída do Model_2 é requerida para ser o sinal de gatilho

do tiristor no EMTP. A variável para fazer isto é ‘aa’. Como para as entradas na MODEL as saídas são declaradas como segue:

a) Abaixo da palavra MODELS é declarado que FIRE será usado no EMTP;

b) Model_2 é informado que a variável ‘aa’ será usada como saída da MODEL

que a variável ‘aa’ será usada como saída da MODEL A diretiva OUTPUT também pode ser

A diretiva OUTPUT também pode ser usada da seguinte forma:

que a variável ‘aa’ será usada como saída da MODEL A diretiva OUTPUT também pode ser

19

4.3 Outras características do exemplo 2

A declaração DATA tem somente uma variável ‘freq’, sendo pedido ‘freq’ em USE, abaixo de DATA; Abaixo da declaração VAR, todas as variáveis usadas na MODEL são listadas com exceção das variáveis declaradas em INPUT e DATA; HISTORY informa o passado das variáveis ‘vv’ e ‘ii’ para que elas possam ser requeridas na simulação; Na seção INIT o valor de ‘tper’ e ‘tmult’ são definidos, que serão usados como constantes na simulação. Além disso, ‘pavg’ e ‘aa’ são inicializado com 0 (zero); A declaração DELAY CELLS especifica a quantidade de células de memória para a história dos valores passados; A simulação, na seção EXEC, é explicada pela codificação própria. A energia é atualizada e somada para cada passo de tempo (1/period) (u.i.) para o valor corrente de energia e subtraída da soma do produto de ‘t- tperiod’. O sinal para o gatilho dos tiristores no EMTP é gerado pelo bloco IF. O exemplo 2/T mostra a versem TACS do exemplo 2/M.

20

20

21

21

22

22

23

Capítulo 5

5 MAIS A RESPEITO DAS DECLARAÇÕES

Alguns comentários sobre o uso de diretivas e declarações serão dadas a seguir.

5.1 Declaração DATA e CONST

Para o dado de entrada que não são de uma fonte externa da MODEL, que é proveniente de outra MODEL ou EMTP, pode ser entrado também abaixo de DATA ou CONST. Estas entradas podem ser números ou expressões que contém algumas das constantes já conhecidas da MODELS. A importante diferença entre DATA e CONST é que os valores entrados abaixo de DATA podem ser cancelados na diretiva DATA no grupo USE, enquanto que os valores entrados em CONST não podem ser modificados externamente.

5.1.1 DATA

A seguinte entrada são aceitáveis como arquivos de DATA:

A seguinte entrada são aceitáveis como arquivos de DATA: No exemplo acima, ‘pi’ é uma cons

No exemplo acima, ‘pi’ é uma constante residente (já definida na linguagem MODELS), cujo valor é 3.14 Se o usuário desejar usar no modelo diferentes freqüências, ele pode fazer da seguinte forma:

24

24 Note que ‘frequency DATA ’ ou ‘DATA frequency’ {dflt: 0} são entradas equivalentes. É recomendado

Note que ‘frequency DATA’ ou ‘DATA frequency’ {dflt: 0} são entradas equivalentes. É recomendado que a especificação do valor padrão {dflt:0} seja sempre usada para relembrar o valor usado em USE –DATA. Uma outra forma de se utilizar a diretiva DATA é:

Uma outra forma de se u tilizar a diretiva DATA é: 5.1.2 CONST A sintaxe para

5.1.2 CONST

A sintaxe para entrada de uma constante em CONST é:

CONST A sintaxe para entrada de uma constante em CONST é: Os valores das constantes decl

Os valores das constantes declaradas em CONST não podem ser modificados externamente. A declaração CONST não inclui uma variável declarada em outra declaração ou sinal externo da MODEL. As constantes residentes são:

não inclui uma variável declarada em outra declaração ou sinal externo da MODEL. As constantes residentes

25

Uma outra forma de se aplicar a diretiva CONST é:

25 Uma outra forma de se ap licar a diretiva CONST é: 5.2 INPUT e OUTPUT

5.2 INPUT e OUTPUT

5.2.1 INPUT

Sinais INPUT para a MODEL são variáveis declaradas que são informadas para a MODEL como um sinal externo da MODEL, proveniente de outro modelo ou do EMTP. Sua sintaxe é:

proveniente de outro modelo ou do EMTP. Sua sintaxe é: Vamos supor que o modelo preciso

Vamos supor que o modelo preciso de uma entrada ‘volts’ e ‘current’, o nome do modelo é ‘Mary’. As variáveis do EMTP que podem ser usadas por ‘Mary’ são chamadas ‘voltout’ e ‘curout’ para serem usadas, respectivamente, como ‘volt’ e ‘current’. As declarações para ‘Mary’ tem o seguinte formato:

serem usadas, respectivamente, como ‘volt’ e ‘current’. As declarações para ‘Mary’ tem o seguinte formato:

26

5.2.2 OUTPUT

A declaração OUTPUT informa a MODEL que a variável pode ser passada para outra MODEL ou EMTP. Assim como INPUT, a declaração OUTPUT dentro da MODEL tem uma correspondência com a diretiva USE, onde o usuário pode definir o nome que a saída será passada para outra MODEL. No exemplo abaixo é assumido que a variável ‘fia’ e ‘fib’, geradas no modelo ‘John’ são passadas para a MODEL ‘Mary’ com os nomes ‘ftxa’ e ‘ftxb’. Os dois modelos são usados em algum arquivo MODELS. O procedimento é:

são usados em algum arquivo MODELS. O procedimento é: Deve ser notado que as variáveis que

Deve ser notado que as variáveis que aparecem nas diretivas INPUT e OUTPUT e qualquer grupo MODEL de um arquivo MODELS.

5.3 VAR

MODELS requer que todas as variáveis sejam declaradas uma vez, mas não mais que uma vez. A não declaração ou declaração incorreta de uma variável resulta em erros. Variáveis podem ser declaradas em DATA, CONST e

27

INPUT. Variáveis usadas na MODEL, mas não declaradas nestas seções devem ser entradas nas declarações como VAR. O nome das variáveis de saída como usados em outros modelos ou externamente, não será declarado em VAR. A sintaxe da declaração VAR é mostrada no seguinte exemplo:

da declaração VAR é mo strada no seguinte exemplo: MODELS tem um número de variávei s

MODELS tem um número de variáveis residentes. Frequentemente as seguintes variáveis são usadas:

t - valor presente do tempo de simulação em segundos; prevtime - valor prévio do tempo de simulação em segundos timestep - intervalo de ponta da simulação em segundos; startime - tempo inicial da simulação em segundos; stoptime - tempo final da simulação em segundos Outra forma de se utilizar à diretiva VAR é:

em segundos Outra forma de se utili zar à diretiva VAR é: 5.4 HISTORY e DELAY

5.4 HISTORY e DELAY CELLS

Existem algumas funções na MODELS, assim como na TACS, que precisam primeiramente conhecer a história das variáveis para então executarem o passo de tempo. Estas variáveis podem precisar para de certo passo de tempo para sua evolução. HISTORY não é gerada pela MODELS sem a intervenção do

28

usuário como acontece com a TACS. O usuário tem que definir a história requerida pela variável.

5.4.1 HISTORY

MODELS tem três caminhos para informar uma história. Na diretiva HISTORY na MODEL, na diretiva HISTORY em USE ou a atribuição da história com ‘histdef’ em INIT na MODEL. MODELS nomeiam uma prioridade a estas tarefas de história. Primeiro o diretiva de HISTORY em MODEL é esquadrinhado, então o diretiva de HISTORY em uso que anula as definições na diretiva de HISTORY em MODEL. Terceiro, são examinadas as tarefas de histdef em INIT, que anulam as duas tarefas prévias. A primeira vez de MODELS de tempo não deveria usar a tarefa de histdef que pode causar confusão e raramente seria requerida. História deve ser definida para variáveis em funções de demora, integrais, Funções de Laplace, equações diferenciais, etc. A exigência deveria ser óbvia do uso de uma variável. Onde o usuário pode não estar claro na exigência, história pode ser definida como uma precaução. Se for omitido quando exigido, MODELS enviarão uma mensagem de MATANÇA para ensinar que o usuário sobre a definição de história. A sintaxe da definição da história é:

de MATANÇA para ensi nar que o usuário sobre a definição de história. A sintaxe da

29

É importante notar aquele cuidado extremo deveria ser exercitado em história definível em termos de outra função, ou até mesmo em termos da mesma função. Neste caso a história passada da função para a qual história é declarada pode ser substituída com a história da outra função. Por exemplo:

da com a história da out ra função. Por exemplo: Causará a história de y para

Causará a história de y para em cima de - escrito por y.cos (ômega.t) ou x.sin (t) respectivamente. Isto é, na maioria dos casos, não é o que o usuário quer fazer. É por isto que na maioria de casos HISTÓRY de y {dflt:0} é a declaração segura para usar. O usuário avançado deveria estudar o manual para aplicações mais sofisticadas. Uma outra forma de se utilizar à diretiva HISTORY é:

Uma outra forma de se utili zar à diretiva HISTORY é: 5.4.2 Diretiva HISTORY em USE

5.4.2 Diretiva HISTORY em USE

Como notado sobre HISTORY declarada em MODEL pode ser reentrada em USE e será a história administrativa. O benefício para o usuário é que o próprio MODEL precisa que não seja mudado pelo usuário, ao re-usar um modelo particular. A declaração de história segue as mesmas regras em uso como a declaração de história debaixo de MODEL, exclua a sintaxe é diferente e não há nenhuma opção de default. A sintaxe é:

de história debaixo de MODEL, exclua a sintaxe é diferente e não há nenhuma opção de

30

5.4.3 HISTORY EM INIT

Ambas as declarações de história em MODEL e em USE é substituído pela declaração de história em INIT. Como notado acima, esta não é uma opção freqüentemente usada e deveria ser evitado pela primeira vez de MODELS de tempo. A sintaxe é

evita do pela primeira vez de MODELS de tempo. A sintaxe é 5.5 DELAY CELLS De

5.5 DELAY CELLS

De mãos dadas com a declaração HISTORY vai à declaração de DELAY CELLS. Em TACS a tarefa de celas para história passada é interna a ATP contanto que o tamanho de mesas de TACS não seja excedido em qual embala uma MATANÇA diz para o usuário o que fazer. Em MODELS, o usuário tem que contar ATP quantas celas de memória de MODELS são requeridas. Esta exigência é governada pelo delay máximo e, é especificada em qualquer função de delay usado na MODEL, tipicamente y: = delay (x, td) onde td é o delay em segundos. Por exemplo: y: = delay (x, 0.03) que é pedido o valor de x de cada vez 30 ms atrás do tempo de simulação atual, ou y = x (t-td). O número de celas de memória que a MODELS tem que apartar para a simulação é então 30 ms divididos pelo passo usado na simulação. Se o passo de tempo for 0.1 ms, então no anterior exemplo o número de celas de demora requerido são 300. DELAY CELLS podem ser pedidas individualmente para uma variável, ou globalmente por uma declaração de falta para todas as variáveis para as quais são requeridas delay cells. Formas alternativas de declaração são:

31

31 Note que o valor padrão especifica do aplica a todas as variáveis que requerem delay

Note que o valor padrão especificado aplica a todas as variáveis que requerem delay cells, mas para qual nenhum número específico de celas é entrado. Uma outra forma de se utilizar à diretiva DELAY CELLS é:

Uma outra forma de se utilizar à diretiva DELAY CELLS é: 5.6 Procedimento de inic ialização

5.6 Procedimento de inicialização – INIT

Inicialização de variáveis é realizada no procedimento INIT. Esta seção é encabeçada pela palavra chave INIT e terminada por ENDINIT. MODELS requerem que todas as variáveis usadas na simulação sejam inicializadas antes da execução do algoritmo. MODELS não inicializará para zerar. Isto é feito na seção de INIT, com exceção das variáveis definidas em DATA, CONST e HISTORY. Inicialização pode ser feita em termos de uma constante entrada em DATA ou CONST como mostrada em Exemplo 2/M. Inicialização de uma variável pode estar nomeando um valor (inclusive zero) simplesmente à variável ou nomeando uma expressão ou história que usa o histdef como notada acima. A primeira vez o usuário de MODELS deveria usar só tarefa de valores numéricos. Por exemplo:

32

32 No anterior exemplo o valor de 'ôme ga' ou foi declarado debaixo de DATA ou

No anterior exemplo o valor de 'ômega' ou foi declarado debaixo de DATA ou CONST.

5.7 EXPRESSÕES E FUNÇÕES

O tipo seguinte de funções é usado na MODEL Expressões Numéricas e lógicas e funções; Funções de Simulação; Funções Estrangeiras; Funções Externas.

5.7.1 EXPRESSÕES NUMÉRICAS E LÓGICAS

Expressões numéricas e lógicas são bem parecidas a esses usadas por FORTRAN ou BASIC. Por exemplo:

parecidas a esses usadas por FORTRAN ou BASIC. Por exemplo: Note o uso novamente do ‘

Note o uso novamente do ‘ : = ‘ (símbolo de tarefa) indicando que a expressão dá à direita que lado é 'nomeou a x.' (No sentido exato, em termos do idioma de MODELS, os anteriores não são expressões mas expressões de tarefas). Uma expressão numérica é seguido por um limite posto dentro ‘ { } ‘ seguindo a expressão como segue:

33

33 Expressões lógicas e numéricas podem ser combinadas como no exemplo seguinte que mostra um trem

Expressões lógicas e numéricas podem ser combinadas como no exemplo seguinte que mostra um trem de pulsos:

ser combinadas como no exemplo seguinte que mostra um trem de pulsos: A seguir temos a

A seguir temos a principais funções lógicas:

ser combinadas como no exemplo seguinte que mostra um trem de pulsos: A seguir temos a

34

5.7.2 FUNÇÕES NUMÉRICAS

Funções numéricas em MODELOS, como expressões, são muito iguais às funções numéricas em Fortran ou Basic. Existem algumas funções que são próprias da MODELS. As funções residentes seguintes estão disponíveis:

As funções residentes seguintes estão disponíveis: 5.8 FUNÇÕES DE DECLARAÇÃO O usuário pode definir uma

5.8 FUNÇÕES DE DECLARAÇÃO

O usuário pode definir uma função e usar isto como no exemplo simples seguinte:

uma função e usar isto como no exemplo simples seguinte: Os argumentos da FUNCTION são loca

Os argumentos da FUNCTION são locais (falsos argumentos), eles não têm que ser declarados debaixo de VAR. Os falsos argumentos não são visíveis fora da função. Os nomes deles/delas são permitidos ser idêntico a esses fora da função. Duplicação de nomes de constantes residentes e variáveis de MODELS é proibida. Outra forma de se utilizar à diretiva FUNCTION é:

35

35 5.9 FUNÇÕES POINTLIST O usuário pode definir uma função de y=f (x) entrando em uma

5.9 FUNÇÕES POINTLIST

O usuário pode definir uma função de y=f (x) entrando em uma tabulação

de y e x em ordem crescente de x. A sintaxe é:

tabulação de y e x em ordem crescen te de x. A sintaxe é: O pointlist

O pointlist funciona da seguinte maneira:

z: = nome (xi, pol); 'pol' provê o modo de interpolação entre os valores de x. pol=0, 1, 2 proverão o valor de y como interpolação descontínua, linear ou quadrática. Omitindo pol dará interpolação linear como falta.

O exemplo seguinte é a relação normalizada entre o disparado de ângulo e

atual por um thyristor, dando só cinco pontos na curva:

é a relação norma lizada entre o disparado de ângulo e atual por um thyristor, dando

36

Então adquirir o valor a um dela de ângulo de demora

36 Então adquirir o valor a um dela de ângulo de demora Outra maneira de se

Outra maneira de se utilizar à diretiva POINT LIST é:

36 Então adquirir o valor a um dela de ângulo de demora Outra maneira de se

37

Capítulo 6

6 EXPRESSÕES DE SIMULAÇÃO E FUNÇÕES

6.1 FUNÇÕES

6.1.1 EXPRESSÃO DERIVADA COM POLINÔMIO LINEAR

Será usado por avançado MODELA os usuários

LINEAR Será usado por avançado MODELA os usuários Outra utilização da diretiva DIFFEQ é: 6.1.2 Função

Outra utilização da diretiva DIFFEQ é:

os usuários Outra utilização da diretiva DIFFEQ é: 6.1.2 Função DERIVADA A sintaxe da derivada de

6.1.2 Função DERIVADA

A sintaxe da derivada de primeira ordem é:

DERIVADA A sintaxe da derivada de primeira ordem é: Onde ‘x’ é a variável e ‘dmax’

Onde ‘x’ é a variável e ‘dmax’ e ‘dmin’ são limites dinâmicos

A sintaxe da derivada de segunda ordem é:

Onde ‘x’ é a variável e ‘dmax’ e ‘dmin’ são limites dinâmicos A sintaxe da derivada

38

38 6.1.3 FUNÇÃO INTEGRAL A sintaxe da expressão integral é: Onde ‘x’ é a variável e

6.1.3 FUNÇÃO INTEGRAL

A sintaxe da expressão integral é:

FUNÇÃO INTEGRAL A sintaxe da expressão integral é: Onde ‘x’ é a variável e ‘dmax’ e

Onde ‘x’ é a variável e ‘dmax’ e ‘dmin’ são limites dinâmicos Podem ser usados só limites dinâmicos com integrais da MODELS. Isto

significa que o integral não é cortado, mas limitou pelo processo de integração.

O usuário tem que declarar x e integral (x) debaixo de HISTORY e tais

declarações podem não ser triviais. Exemplos:

Deixe o integral de x = a seja calculado

Exemplos: Deixe o integral de x = a seja calculado Pode ser reajustado o valor de

Pode ser reajustado o valor de integral durante a simulação pelo integral reajuste da expressão da integral:

Pode ser reajustado o valor de integral durante a simulação pelo integral reajuste da expressão da

39

Exemplo:

39 Exemplo: Outra forma de se utilizar a diretiva INTEGRAL é:

Outra forma de se utilizar a diretiva INTEGRAL é:

39 Exemplo: Outra forma de se utilizar a diretiva INTEGRAL é:
39 Exemplo: Outra forma de se utilizar a diretiva INTEGRAL é:

40

40 6.1.4 EXPRESSÃO SUM (SOMA) A expressão de SUM avalia o va lor numérico de um

6.1.4 EXPRESSÃO SUM (SOMA)

A expressão de SUM avalia o valor numérico de um polinômio.

de SUM avalia o va lor numérico de um polinômio. A sintaxe da expressão é: Exemplo:

A sintaxe da expressão é:

lor numérico de um polinômio. A sintaxe da expressão é: Exemplo: Avalie o k polinomial =

Exemplo:

Avalie o k polinomial = um + bx + cx 2

é: Exemplo: Avalie o k polinomial = um + bx + cx 2 Note que o

Note que o que é terminado pela expressão de SUM pode ser feito sem

isto escrever uma declaração de expressão numérica simplesmente. A razão para

a expressão de SUM é que pode ser usado dentro de um grupo COMBINE para

a solução simultânea de declarações.

41

6.2 EXPRESSÕES DE SIMULAÇÃO

6.2.1 EXPRESSÕES DE SIMULAÇÃO RESIDENTES

MODELS provêem várias funções de simulação. Freqüentemente as mais usadas são:

de simulação. Freqüentemente as mais usadas são: O valor da variável um de cada vez t-d.

O valor da variável um de cada vez t-d. 'pol' é o indicador de interpolação opcional. Se 'pol' é omitida a interpolação é linear. pol = 0,1,2 posto para interpolação discreta, linear e quadrática respectivamente. Advertindo: A função de delay provê a história da variável ‘x‘, a um intervalo discreto atrás do tempo atual, e não necessariamente ao ‘td’ de intervalo preciso. Lá está um erro que depende do tamanho do passo de tempo usado no modelo. Alguns modelos podem ser extremamente sensíveis a isto, enquanto resultando em um erro grande na produção do modelo.

6.2.2 FUNÇÃO PREVVAL

grande na produção do modelo. 6.2.2 FUNÇÃO PREVVAL O valor de x no momento de simulação

O valor de x no momento de simulação prévio

6.2.3 FUNÇÃO HISTDEF

x no momento de simulação prévio 6.2.3 FUNÇÃO HISTDEF Declaração de história usada debaixo do processo

Declaração de história usada debaixo do processo de INIT

42

6.2.4 CLAPLACE e LAPLACE função de transferência

MODELS provêem duas versões da função de Laplace (transferência). O geralmente usado é uma função de transferência com coeficientes constantes. O segundo é a função de Laplace onde os coeficientes são variáveis. Com coeficientes variáveis a função que LAPLACE deve ser usado. Com coeficientes constantes deveria ser usado CLAPLACE porque é mais rápido que LAPLACE. Com CLAPLACE são avaliados só uma vez os coeficientes da função de transferência ao começo de simulação, considerando que com LAPLACE eles são avaliados no começo de cada passo de tempo. A sintaxe do LAPLACE ou função de CLAPLACE é determinada para CLAPLACE só como isto seria usada principalmente pela primeira vez de MODELS de tempo:

usada principalmente pela primeira vez de MODELS de tempo: Onde: x = variável de entrada; y

Onde:

x = variável de entrada; y = saída;

k0 de produção

l0

É s0 de coeficientes constantes, s1, s2, s3

simbolizam o operador de s para a energia.

A função de Laplace pode ser usada com limites estáticos e dinâmicos. Com limites estáticos é cortada à produção, com limites dinâmicos a produção está limitada pelo processo de avaliar a função.

é co rtada à produção, com lim ites dinâmicos a produção está limitada pelo proce sso

43

Devem ser declarados y e x em uma declaração de história. Na maioria dos casos será suficiente para entrar na história com dflt:0 Exemplo 1/M espetáculos uma função de Laplace simples. A versão de

LAPLACE estava lá usada, mas baseado nas anteriores discussões, o CLAPLACE seria preferido com os coeficientes da função constante ao longo da simulação. Resultados serão os mesmos, mas solução é mais rápida com CLAPLACE.

O exemplo seguinte ilustra parte de um sistema de controle. O sinal de

contribuição para o primeiro bloco é a soma de um sinal de referência 'sref', um sinal 'sin', e um sinal de avaliação derivado 'sfeed', levado do sinal de produção 'sed.' O sinal de produção 'sout' é cortado + /- 0.05.

A função de transferência para o bloco dianteiro é:

+ /- 0.05. A função de transferência para o bloco dianteiro é: A função de transferênci

A função de transferência para a avaliação é:

+ /- 0.05. A função de transferência para o bloco dianteiro é: A função de transferênci
+ /- 0.05. A função de transferência para o bloco dianteiro é: A função de transferênci

44

44 Note que para a 'correta ' avaliação de uma ava liação, a opção COMBINE tem

Note que para a 'correta' avaliação de uma avaliação, a opção COMBINE tem que ser usada como explicada no próximo Capítulo. Outra forma de se usar as funções de transferência é:

Y(S)

=

b

o

+

b s

1

+

b s

2

2

X(S)

a

o

+

a s

1

+

a s

2

2

2 2 X(S) a o + a s 1 + a s 2 2 Y (

Y(z)

=

b

o

+ b z

1

1 b z

− −

+

2

2

+

X(z)

a

o

+ a z

1

1 a z

− −

+

2

2

+

o + b z 1 1 b z − − + 2 2 + X(z) a
o + b z 1 1 b z − − + 2 2 + X(z) a
o + b z 1 1 b z − − + 2 2 + X(z) a

45

Capítulo 7

7 ALGORITMO DE CONTROLE

MODELS uso vários algoritmos para controle de declarações semelhante aos usados em outras linguagens de programação, como o Fortran e Basic. Os controles de algoritmo seguintes são possíveis:

Os controles de algoritmo seguintes são possíveis: 7.1.1 IF – ENDIF (SE) A estrutura desse controle

7.1.1 IF – ENDIF (SE)

A estrutura desse controle é:

possíveis: 7.1.1 IF – ENDIF (SE) A estrutura desse controle é: Por exemplo: Outra forma de

Por exemplo:

possíveis: 7.1.1 IF – ENDIF (SE) A estrutura desse controle é: Por exemplo: Outra forma de

Outra forma de se utilizar o laço IF é:

46

46 7.1.2 DO – REDO (FAÇA – REFAÇA) A declaração DO ensina MODELS a exec utar

7.1.2 DO – REDO (FAÇA – REFAÇA)

A declaração DO ensina MODELS a executar um conjunto de instruções entre o DO e a terminação ENDDO. Se qualquer laço é requerido dentro de DO, pode ser feito por uma declaração ou diretiva REDO. REDO é uma expressão lógica satisfeita, reiniciará a execução de ordens depois DO e adiante REDO.

47

47 Uma outra forma de se utilizar o laço DO é: 7.1.3 WHILE – DO –

Uma outra forma de se utilizar o laço DO é:

47 Uma outra forma de se utilizar o laço DO é: 7.1.3 WHILE – DO –

7.1.3 WHILE – DO – ENDWHILE (ENQUANTO – FAÇA)

A declaração WHILE ensina MODELS para executar a instrução depois WHILE e antes de ENDWHILE sujeitassem a uma expressão lógica que está satisfeito. Exemplo:

sujeitasse m a uma expressão lógica que está satisfeito. Exemplo: Outro exemplo pode ser para o

Outro exemplo pode ser para o uso de WHILE:

sujeitasse m a uma expressão lógica que está satisfeito. Exemplo: Outro exemplo pode ser para o

48

48 7.1.4 FOR – DO – ENDFOR (PARA – FAÇA) FOR permite a repetição de um

7.1.4 FOR – DO – ENDFOR (PARA – FAÇA)

FOR permite a repetição de um conjunto de ordens controlada um aumentando monotonamente ou índice decrescente, em passos definidos, e onde a gama do índice está definida por um TO expressão de k. Isto é semelhante para o FOR - NEXT volta em BASIC. A sintaxe é:

semelhante para o FOR - NEXT volta em BASIC. A sintaxe é: BY é opcional com

BY é opcional com uma valor padrão de 1 (um). Como em BASIC, FOR podem ser aninhadas voltas, a declaração de ENDFOR tem que só ser dada uma vez.

ser ani nhadas voltas, a declaração de ENDFOR tem que só ser dada uma vez. Outra

Outra forma de se utilizar o laço FOR é:

ser ani nhadas voltas, a declaração de ENDFOR tem que só ser dada uma vez. Outra

49

49 Exemplo 3 ilustra a geração de três voltagens senoidais com 120 graus realize em fases
49 Exemplo 3 ilustra a geração de três voltagens senoidais com 120 graus realize em fases

Exemplo 3 ilustra a geração de três voltagens senoidais com 120 graus realize em fases troca e a geração de incendiar 500 microsec. pulsos sincronizaram com a zero transição das voltagens.

50

50

51

7.2 COMBINE (COMBINAR)

Como em TACS, MODELS executarão a instrução na seção de EXEC na seqüência de entrada. Em muitas aplicações de sistema de controle é desejável para maior precisão, executar algumas das declarações, ou controle de blocos, simultaneamente. Um exemplo típico seria uma volta de controle de avaliação. COMBINE - ENDCOMBINE provê os meios dentro de MODELS fazer isto. A sintaxe é:

ovê os meios dentro de MODELS fazer isto. A sintaxe é: A significação de 'groupx' é

A significação de 'groupx' é permitir mais que um COMBINE seção em um MODELO. O exemplo simples é:

permitir mais que um COMBINE seção em um MODELO. O exemplo simples é: Outra forma de

Outra forma de se usar a diretiva COMBINE é:

permitir mais que um COMBINE seção em um MODELO. O exemplo simples é: Outra forma de

52

52

53

7.3 TIMESTEP

MODELS permite ao usuário ter um passo de tempo de execução em MODELS diferente do usado no EMTP. A diretiva TIMESTEP pode ser entrada ou no grupo MODEL, ou no grupo de USE. A sintaxe é:

ou no grupo MODEL, ou no grupo de USE. A sintaxe é: Isto pode acelerar a

Isto pode acelerar a execução de um arquivo de ATP onde um passo de tempo muito pequeno é usado para acomodar exigências da rede elétrica substancialmente, mas a solução em MODELS não requer este passo de tempo pequeno. Uma forma de se usar a diretiva TIMESTEP é:

pequeno. Uma forma de se usar a diretiva TIMESTEP é: 7.4 RECORD – WRITE (REGISTRO –

7.4 RECORD – WRITE (REGISTRO – ESCREVER)

7.4.1 RECORD

A declaração de RECORD é colocada ao término dos MODELS sendo o último grupo em MODELS, enquanto seguindo os grupos de USE. A palavra de pedido de RECORD é seguida pelo pedido de variáveis para ser produzida na forma de:

pelo pedido de variáveis para ser produzida na forma de: Onde 'modelname' é o nome do

Onde 'modelname' é o nome do MODEL que contém a variável nomeada 'varnamex' e 'outnam' é o nome determinado para esta variável para a gravação da produção em disco. A razão para esta duplicação aparente é que MODELS permitem nomes de qualquer comprimento, considerando que ATP permite nomes muito tempo só 6 (seis) caráter. Além disto, a produção pedida de

54

variáveis é tratada exatamente por ATP o mesmo modo como eles estão em EMTP ou no 33 código TACS produziu pedido. O uso de RECORD permite que seja plotado o sinal escolhido.

7.4.2 WRITE

Para a prova e depurando modelos, o usuário pode pôr a declaração 'write' no EXEC separado do modelo, monitorar a operação do passo a passo e execução do modelo. A informação exigida será escrita no arquivo .lis durante a execução do modelo em cada passo de tempo a menos que caso contrário dirigisse por um se declaração. A sintaxe desta declaração é:

por um se declaração. A sintaxe desta declaração é: Onde 'qualquer texto' é uma descrição da

Onde 'qualquer texto' é uma descrição das variáveis ser registrado e ‘x1’, ‘x2’ etc. são as variáveis a ser monitoradas. Note aquele ‘x1’, ‘x2’ etc. não só possa ser variáveis, mas também expressões como delay (x, t).

7.5 MULTIPLE MODELS

Pode haver mais de um MODEL em um arquivo de MODELS. Por exemplo:

e xpressões como delay (x, t). 7.5 MULTIPLE MODELS Pode haver mais de um MODEL em

55

Assuma que o usuário desenvolveu dois modelos, um para o cálculo de única fase de energia ativa em um sistema de CA, e para energia reativa. Estes modelos são nomeados 'powerr' e 'reactive' respectivamente.

O modelo ‘power’ e o seguinte: O modelo ‘reactive’ e o seguinte:
O
modelo ‘power’ e o seguinte:
O
modelo ‘reactive’ e o seguinte:
e o seguinte: O modelo ‘reactive’ e o seguinte: Em Exemplo 4, serão calculadas ener gia

Em Exemplo 4, serão calculadas energia ativa e energia reativa por um ramo na rede de EMTP, passando a voltagem e corrente ao MODEL ' model_3 ',

e integrando em model_3 os modelos 'power' e 'reactive' por declarações $ INCLUDE.

56

Note que a inclusão dos dois grupos MODEL nos arquivos MODELS por $ INCLUDE é há pouco uma característica de edição, economiza copia dos arquivos completos em MODELS. USE declarações têm que ser acrescentadas a cada MODEL. Eles têm que especificar as entradas ao grupo MODELO.

USE d eclarações têm que ser acrescentadas a cada MODEL. Eles têm que especificar as entradas

57

57

58

Capítulo 8

8

VERSÃO

MODELS

DE

FONTES

E

DISPOSITIVOS

DA

TACS

8.1 INTRODUÇÃO

Este capítulo visa ajudar os usuários da MODELS que TACS previamente usado e é acostumado para usar as fontes de TACS e dispositivos em arquivos de dados em desenvolvimento, a versão de MODELS equivalente destas fontes e dispositivos esteve preparada. Isto também proverá ajuda a usuários que não têm TACS usado previamente para desenvolver MODELS arquivos. São apresentadas as fontes e dispositivos na forma de Modelo individual que o usuário pode integrar em um arquivo de MODELS, ou por um MODEL separado, ou copiando a codificação do MODEL em um arquivo de MODELS que contém só um único MODEL. Dependendo do método de uso, a declaração de DATA no MODEL, ou diretiva de DATA na seção de USE tem que ser completado pelo usuário. O usuário é aconselhado para estudar o Livro de leitura antes de tentar usar estes modelos.

8.2 MODELOS EMTP

EQUIVALENTS

DE

TACS

E

FONTES

DE

para estudar o Li vro de leitura antes de tentar usar estes modelos. 8.2 MODELOS EMTP

59

8.2.1 SOURCE 11 - ‘LAVEL SIGNAL AND SINGLE PULSE’

59 8.2.1 SOURCE 11 - ‘LAVEL SIGNAL AND SINGLE PULSE’ 8.2.2 SOURCE 14 - ‘COSINE’

8.2.2 SOURCE 14 - ‘COSINE’

59 8.2.1 SOURCE 11 - ‘LAVEL SIGNAL AND SINGLE PULSE’ 8.2.2 SOURCE 14 - ‘COSINE’

60

8.2.3 SOURCE 23 - ‘PULSE TRAIN’

60 8.2.3 SOURCE 23 - ‘PULSE TRAIN’ 8.2.4 SOURCE 24 - ‘RAMP TRAIN’

8.2.4 SOURCE 24 - ‘RAMP TRAIN’

60 8.2.3 SOURCE 23 - ‘PULSE TRAIN’ 8.2.4 SOURCE 24 - ‘RAMP TRAIN’

61

8.2.5 SOURCE 13 - ‘TWO SLOPE RAMP’

61 8.2.5 SOURCE 13 - ‘TWO SLOPE RAMP’ 8.2.6 SOURCE 15 - ‘DOUBLE EXPONENCIAL SURGE’

8.2.6 SOURCE 15 - ‘DOUBLE EXPONENCIAL SURGE’

61 8.2.5 SOURCE 13 - ‘TWO SLOPE RAMP’ 8.2.6 SOURCE 15 - ‘DOUBLE EXPONENCIAL SURGE’

62

8.3 MODELOS EQUIVALENTS DE DISPOSITIVOS DE TACS

62 8.3 MODELOS EQUIVALENTS DE DISPOSITIVOS DE TACS 8.3.1 DEVICE 50 - ‘FREQUENCY METER’

8.3.1 DEVICE 50 - ‘FREQUENCY METER’

62 8.3 MODELOS EQUIVALENTS DE DISPOSITIVOS DE TACS 8.3.1 DEVICE 50 - ‘FREQUENCY METER’

63

8.3.2 DEVICE 51, 52 - ‘RELAY SWITHCH’

63 8.3.2 DEVICE 51, 52 - ‘R ELAY SWITHCH’ 8.3.3 DEVICE 54 - ‘PULSE DELAY’

8.3.3 DEVICE 54 - ‘PULSE DELAY’

63 8.3.2 DEVICE 51, 52 - ‘R ELAY SWITHCH’ 8.3.3 DEVICE 54 - ‘PULSE DELAY’

64

8.3.4 DEVICE

55,

56,

57

‘DIGITIZER,

POINT

- NONLINEARITY, TIME SEQUENCED SWITCH’

BY

POINT

64 8.3.4 DEVICE 55, 56, 57 ‘DIGITIZER, POINT - NONLINEARITY, TIME SEQUENCED SWITCH’ BY POINT

65

65

66

8.3.5 DEVICE 61 - ‘SIGNAL SELECTOR’

66 8.3.5 DEVICE 61 - ‘SIGNAL SELECTOR’

67

8.3.6 DEVICE 63 - ‘INSTANTENOUS MAXIMUM/MINIMUM

67 8.3.6 DEVICE 63 - ‘INSTANTENOUS MAXIMUM/MINIMUM

68

8.3.7 DEVICE 64 - ‘MAXIMUM/MINIMUM TACKING’

68 8.3.7 DEVICE 64 - ‘MAXIMUM/MINIMUM TACKING’

69

8.3.8 DEVICE 65 - ‘ACCUMULATOR – COUNTER’

69 8.3.8 DEVICE 65 - ‘ACCUMULATOR – COUNTER’

70

8.3.9 DEVICE 66 - ‘RMS VALUE’

70 8.3.9 DEVICE 66 - ‘RMS VALUE’

71

Capítulo 9

9 EXEMPLOS DE APLICAÇÕES DA MODELS

Neste capítulo serão ilustrados vários tipos de exemplos de utilização da linguagem MODELS, tanto em controle como em dispositivos do sistema.

9.1 COMO USAR A LINGUAGEM MODELS EM COMPONENTES DEFINIDOS PELO UTILIZÁRIO DA REDE NO ATP [6]

9.1.1 INTRODUÇÃO

O usuário pode definir modelos que podem ser adicionado a um circuito

de duas formas:

Como componente de controle;

Como componente de circuito.

A diferença entre as duas formas está na maneira que os componentes

modelados são conectados ao circuito, e na maneira que o usuário descreve estas

conexões. Em alguns casos, um modelo é definido com um conjunto de entradas, de saídas, de dados, de constantes, e de variáveis, e com os procedimentos que descrevem como o modelo opera. Também, em um alguns casos, mais de um exemplo do mesmo modelo pode ser usado, cada um que mantêm automaticamente um conjunto separado dos valores para suas entradas, saídas, dados, etc.

72

9.1.2 COMPONENTE DE CONTROLE

Quando construído como um componente do controle, um modelo pode usar, no cálculo de seus valores da entrada e vários tipos de informação disponíveis em qualquer lugar dentro do exemplo de dados. Similarmente, suas saídas podem controlar a operação de tipos diferentes de componentes do circuito, em qualquer lugar no circuito (veja listas abaixo). As conexões e as diretrizes orientadoras da simulação que afetam o tipo de controle do modelo são fornecidas pelo usuário na seção da MODELS de um exemplo dos dados, onde cada exemplo de cada tipo de controle do modelo seja especificado por uma indicação do tipo USE.

9.1.3 COMPONENTE DE CIRCUITO

Na outra mão, quando construído como um componente do circuito type- 94, um modelo usa um conjunto pré-determinado de entradas e de saídas, definido nos termos das quantidades elétricas (tensão, corrente, condutância) que se apresenta nos terminais onde o componente é conectado ao circuito. A conexão de cada exemplo de um tipo de circuito de componente do circuito é descrita pelo usuário no formulário de um ramo do type-94 na seção de circuito de um exemplo de dados. A posição do componente no circuito determina automaticamente que valores das tensões, das correntes, etc. serão passados entre o ATP e o modelo durante a simulação.

9.1.4 COMPONENTES TIPOS DE CONTROLE

Enquanto um componente de controle, um modelo pode se usar, no cálculo dos valores de sua entrada:

73

Medidas da tensão, da corrente, e da posição de interruptor;

Os valores das variáveis de máquinas rotativas;

Os valores das variáveis da seção de TACS do exemplo dos dados;

Pontos da curva obtidos de um arquivo plot PL4;

O valor de variáveis ou de elementos de disposição internos do programa do ATP;

As saídas de outro tipo de controle de modelos;

Valores arbitrários descritos por expressões numéricas e lógicas.

Um modelo de controle pode ser usado para calcular, como saída:

O valor de uma tensão controlada ou de uma fonte de corrente;

A operação de um interruptor controlado ou de uma porta;

O valor de uma resistência controlada;

O valor de um ramo não-linear;

O valor das variáveis de máquinas rotativas;

O valor de uma variável da seção da MODELS, aquela pode então ser usado calculando o valor das entradas de outros modelos.

Uma aplicação comum de um tipo de controle do modelo deve descrever o comportamento elétrico de um elemento do circuito representado no circuito por um equivalente controlado de Norton. O equivalente controlado de Norton é construído colocando um ramo controlado type-91 da resistência conectada na paralela a uma fonte de corrente controlada type-60. Os valores de um ou outro ou resistência e fonte de corrente são calculados pelo modelo a fim representar a operação dinâmica do componente. Esta aproximação pode ser estendida aos elementos polifásicos.

74

9.1.4.1 COMPONENTE THÉVENIN 94

O componente Thévenin recebe a informação sobre o circuito no formulário de um equivalente de Thévenin. O circuito de entrada é uma fonte de tensão de Thévenin em série com uma resistência equivalente de Thévenin do circuito visto pelo componente. O modelo calcula como saída o valor da corrente que percorre o componente. Para calcular este valor, é o modelo, não o ATP, que deve resolver a equação do circuito de uma fonte (a fonte de Thévenin) em série com a resistência de Thévenin e a resistência dinâmica calculadas pelo modelo. O ATP sobrepõe este excesso da corrente a solução já-calculada do

circuito linear, e ajusta os valores das tensões do nó conformemente. O valor de corrente fornecido pelo modelo é usado na etapa do circuito ao mesmo tempo em que se calculou.

O ATP calcula um equivalente de Thévenin do linear do circuito, como

visto do componente não-linear. Se este componente não-linear é um ramo type- 94 ou esse dos outros tipos de ramos não-lineares do ATP, somente um componente não-linear de cada vez pode usar este método em cada rede do circuito. Se não, a iteração entre muitos componentes não-lineares seria preciso chegar a um ponto comum da solução. O uso das disposições no modelo faz possível usar toda a versão do componente type-94 em aplicações polifásicos ou de multiramos.

9.1.4.2 COMPONENTE TYPE-94 ITERADO

O componente iterado não recebe nenhuma informação sobre o resto do

circuito, e não a necessita para resolver uma equação do circuito. Recebe do ATP um valor estimado da tensão em seus terminais, e calcula como a saída um

75

valor correspondente da corrente. O ATP usa esta corrente dentro seu algoritmo de iteração para encontrar um ponto convergente da solução entre um ou mais elemento não-linear e a peça linear do circuito. A fim de guiar a iteração de Newton no sentido correto, o modelo deve também fornecer como a saída uma aproximação razoável do valor de di/dv, o valor instantâneo da condutância do componente. Durante a iteração, o modelo é chamado mais de uma vez em cada ‘time step’, cada vez com possivelmente um valor diferente da entrada da tensão. Entretanto, o usuário não é requerido a fazer a chamada repetida ao construir o modelo. A MODELS toma automaticamente cuidado de retornar o ponto operando-se do modelo a seu estado precedente antes de repetir a execução do modelo em qualquer altura que na etapa. Isto é equivalente ao USE ITERATE da característica da MODELS.

9.1.4.3 COMPONENTE NORTON TYPE 94

Ao contrário de Thévenin e dos tipos iterados, o type-94 Norton não confia em nenhum cálculo especial do ATP para alguma de sua operação. Não requer o ATP para preparar um equivalente de Thévenin, nem para fazer nenhuma iteração. Embora se declare como um ramo é conectado internamente ao circuito como um circuito equivalente de Norton que consiste em uma condutância variável a terra, na paralela com uma fonte de corrente variável. Para a entrada, lê cada vez que da etapa o valor da tensão em seus terminais, como calculado pela solução do ATP. O modelo calcula como saída os valores da condutância e da fonte de corrente que dirigem o circuito de Norton, representando o comportamento dinâmico do componente. O valor da condutância é depositado diretamente na matriz da solução do circuito. O valor

76

da fonte da corrente controla uma fonte de corrente introduzida no circuito pelo componente type-94. Uma terceira saída é um ‘flag’ que indica se o valor da condutância mudou desde a etapa da última vez. Isto é usado para provocar um re- triangularização - triangularização da matriz do circuito cada vez que o valor da condutância muda, e evitar este trabalho extra quando o valor não mudou. Como no exemplo do modelo de tipo de controle, os valores calculados são aplicados à solução da etapa seguinte do circuito. Quando usado para representar uma voz passiva o elemento, a etapa atrasa pode completamente ser removido do valor da corrente da fonte, porque a fonte de Norton é calculada com valores passados das correntes e das tensões do componente, que pode ser predito exatamente para a próxima vez a etapa. Nos casos onde o valor da condutância de Norton não pode ser predito exatamente para seu uso a próxima vez na etapa, a solução do circuito do componente pode ser substituída por uma etapa do tempo, mas não instável. Em muitas aplicações, atrasa de uma etapa do tempo que afeta o valor em mudança da condutância de um elemento é inconsequêncial.

9.1.4.4 COMPONENTE DA TRANSMISSÃO TYPE-94 DE NORTON

O type-94 Norton, discutido acima, representa um componente como um equivalente de Norton colocado no circuito entre os terminais do componente e a terra. Ao especificar as conexões do nó deste type-94 somente os nós esquerdos são conectados, e os nós direitos não são usados. A conexão a terra é feita automaticamente.

77

9.1.4.5 OS MODELOS EXTRANGEIROS

A descrição acima dos tipos de componentes diferentes implicou que o comportamento dinâmico do componente está descrito em um modelo escrito na linguagem da MODELS. Mas não há nenhuma limitação. Que se o usuário necessitar representar um componente usando um procedimento escrito em uma outra língua de programação? A MODELS fornece acesso interno aos modelos e às funções "estrangeiros" que podem ser chamados no modelo. Isto permite que o usuário conecte toda a representação "estrangeira" de um componente em um circuito do ATP através de um modelo intermediário da relação, como type-94.

78

Type-94 Norton

78 ⇒ Type-94 Norton

79

Controle Norton

79 ⇒ Controle Norton

80

Type-94 Iterated

80 ⇒ Type-94 Iterated

81

Type-94 Thévenin

81 ⇒ Type-94 Thévenin

82

9.2 MODELANDO UM CIRCUITO RL PARALELO USANDO COMPONENTE TIPO-94 ITERATED [4]

Uma aplicação útil do componente tipo-94 iterated é representar um componente por elementos de circuito onde os valores dos elementos precisam variar durante a simulação. Esta nota descreve como representar em um modelo um circuito de R//L que usa um componente iterado tipo-94. As entradas para o tipo-94 são:

v: Uma estimativa da voltagem do ramo provido pelo ATP;

v0 e i0: A voltagem e corrente no ramo para o tempo t = 0.

O modelo tem que calcular:

i: A correspondente corrente no ramo;

didv: A condutância instantânea .

É simples para expressar i/v como transformada de Laplace, enquanto

usando admitância-s do circuito.

de Laplace, enquanto usando admitância-s do circuito. Para calcular a condutância instantân ea G, nós podemos

Para calcular a condutância instantânea G, nós podemos aplicar a equação de transformação bi linear de que usa a regra trapezoidal de integração:

ea G, nós podemos aplicar a equação de transformação bi linear de que usa a regra

83

Reescrevendo a equação para IL como L.di L / dt = v ou L.di L = v dt e usando:

t 0 : Valor presente de tempo;

t 1 : Valor prévio de tempo (t - t).

E integrando ambos os lados de t 1 para t 0 que usa a regra trapezoidal para

v dt nós temos:

0 que usa a regra trapezoidal para v d t nós temos: Substituindo (t 0 -t

Substituindo (t 0 -t 1 ) através de ‘time step’ t e re-organizando, nós temos:

através de ‘time step’ t e re-organizando, nós temos: A condutância instantânea é a soma das

A condutância instantânea é a soma das condutâncias de R e L:

instantânea é a soma das condutâncias de R e L: Que é equivalente a substituir ‘

Que é equivalente a substituir ‘S’ antes das 2 / t em Y.

O modelo chamado pelo componente tipo-94 no circuito de ATP poderia

ser escrito então como segue:

84

84

85

9.3 TRABALHO

COM

MODELOS

MODELS DO ATP [5]

ESTRANGEIROS

NA

MODELS que é parte do ATP / EMTP é conhecida para apoiar de um modo muito confortável o usuário com modelos estrangeiros. Este era o caso para a versão de Salford do ATP e, como descrito neste artigo, também é o caso para a versão de WATCOM para MS-WINDONS NT e o OS2 da IBM que é mantido pela Nova Iorque Power. O Salford e versões de WATCOM oferecem possibilidades iguais para desenvolvimento de modelos, mas a versão de WATCOM como está agora disponível apóia MS-WINDONS melhores ou integração de OS2 relativo à multitasking e junção de programa com programas externos populares. A maioria dos programas de hoje vem como versões do MS- WINDONS assim há a necessidade para concordar apertado com este desenvolvimento e apoio. Adicionalmente o desenvolvimento de C-modelos aparecem como uma alternativa muito barata na versão de WATCOM. Este papel quer dar ajuda para os usuários que começam com o desenvolvimento de C-modelos estrangeiros na versão de WATCOM de ATP e mostrar alguns conceitos para uso útil de características que são especial aos MS-WINDONS de sistema operacional de multitasking NT. Fundamentos para codificar C-modelos estrangeiros dentro do ambiente de WATCOM. O usuário de modelos estrangeiros, independente do idioma do código de fonte, tem que ser registrado no arquivo FGNMOD.FOR, como é conhecido por Laurent Dubé, documentação e informação de cursos de MODELS. Lá você provê os nomes de funções e um sinônimo para chamar o modelo. Isto é documentado bem no próprio arquivo. A desvantagem é a necessidade para compilar este arquivo de FORTRAN com o WATCOM FORTRAN o compilador. Este Compilador é equipamento caro, Considerando que o preço do WATCOM C / o compilador de C++ compilador é baixo. Um therefor deveria

86

pensar que em prover i.eprovê modelo-desenvolvimento estrangeiro barato. Oito entradas Standards para C-modelos e oito entradas Standards para C-funções com os arquivos de objeto-código de ATP. Adicionalmente o código das C- funções integradas deveriam ser providas. Concentrando todas as padrão-C- funções integradas em um arquivo de .OBJ o usuário só precisa reencher um ou mais do de modo Standard contanto usuário-C - funções com o próprio código dele, compile com WATCOM C / C++ e ligação novamente ATP com o conector que vem com o pacote de C / C++. De nenhum equipamento de FORTRAN seria precisado. Este conceito evitaria a necessidade pelo usuário comprar equipamento de FORTRAN caro ou contar com a ajuda de alguém que tem isto ao só querer codificar em C / C++. Especialmente quando começando com tal codificação isto seria útil para ter um FGNMOD realmente corrente, pronto-compilado. FOR com determinadas interfaces. O C-código porque isto modela poderia existir de falsas declarações que o usuário que pode encher de modelos-conteúdo ou com definições de produção como mostrado em apêndice A. Para a coexistência de WATCOM C / C++ e FORTRAN a pessoa tem que notar algumas sugestões sobre nomear convenção, detalhes são determinados no WATCOM ajuda on-line. Por codificar estes meios a pessoa tem que pôr algumas diretivas de programa no código para fazer os módulos de FORTRAN e C / C++ entender um ao outro. O primeiro pode ser achado na interface-arquivo FGNMOD.FOR.

O primeiro pode ser achado na interface-arquivo FGNMOD.FOR. Isto é porque um nome de funções quando

Isto é porque um nome de funções quando codificado e compilado em WATCOM C / C++ é traçado no .OBJ-arquivo com um _ adicional juntou.

87

Istotem que ser mostrado para o Compilador de FORTRAN por isso * $ pragma diretiva. Um segundo comando é uma #diretiva de pragma ser usado no C-código ao chamar funções Standards como printf ou fprintf:

ao chamar funções Standards como printf ou fprintf: Este diretiva diz para o compilador converter as

Este diretiva diz para o compilador converter as funções nomeie a letra maiúscula e evitar adição uma sublinha, porque para acoplamento aplica o FORTRAN que nomeia convenções. Outro detalhe importante é a parametrização do compilador correto. Uma linha de comando apropriada como usado para os exemplos é determinado aqui:

wcc386 - i=C:\WATCOM\h;C:\WATCOM\H\NT -5s - fp5 -7 - bt=nt% 1.c.

Com as sugestões dadas o usuário deveria poder conectar MODELOS C- modelos estrangeiros ou MODELOS C-funções estrangeiras sem conhecimento mais fundo de detalhes de compilador. Nos olhos de autores isto é importante, porque a maioria dos usuários de ATP não é nenhum especialista de compilador e deveria ser dada uma diretriz para isto. Como conhecido hoje, com a finalidade de modelos de MODELS estrangeiros o ambiente de WATCOM é o mais barato desses que estão disponíveis e fáceis controlar. Apêndice 2 dá um exemplo de modo Standard de acordo com a sugestão de oito registrada e funções de C-modelos / C definidas. O primeiro modelo está cheio com real código ao vivo imprimir ATP - dados em vários arquivos diferentes.

88

9.3.1 CONCLUSÃO

A versão de WATCOM de ATP / EMTP para MS-JANELA NT / OS2offers uma alternativa barata para desenvolver MODELOS módulos de C estrangeiros A integração em um real sistema operacional de multitasking como MS- WINDONS NT ou OS2 oferece possibilidades adicionais para desenvolver modelos executáveis independentes que também podem ser juntados com programas de terceiro.

APÊNDICE 1: AMOSTRA FGNMOD.FOR COM DE MODO STANDARD C-MODELOS UTILIZÁVEIS E INSCRIÇÃO DE C- FUNÇÕES

89

89

90

90

91

Apêndice 2: Exemplo de C-código ser usado com inscrição de módulo Standard como determinado em apêndice A, corpo dos "modelos estrangeiros" ou "funções estrangeiras" C-função ser mudado pelo usuário

A, corpo dos "modelos estrangeiros" ou "funções estrangeiras " C-função ser mudado pelo usuário

92

92

93

93

94

Apêndice 3: Dados Embalam exemplo para dados-produção de ATP por MODELOS modelo de impressão estrangeiro (USER_C_MODEL_1_M).

3: Dados Embalam exempl o para dados-produção de ATP por MODELOS modelo de impressão es trangeiro

95

9.4 BORNE

QUE

PROCESSA

DADOS

TRANSIENTES

MEDIDOS USANDO MODELOS NO ATP-EMTP [7]

9.4.1 INTRODUÇÃO

MODELS é um idioma de simulação com capacidades de analisar e processar dados passageiros. Além de desenvolvimento de modelos definidos pêlos usuários de componentes de sistema que são representados então na rede elétrica por resistência que varia no tempo ou componente tipo-94, MODELS freqüentemente são usados para processar dados de simulação criados pelo ATP-EMTP. Computação de fluxo magnético em é um de tais aplicações. Em alguns casos é desejável executar primeiro a simulação primeira e posteriormente processar os dados. Normalmente, são executadas dimensões acompanhantes para comparar resultados medidos e resultados computados para verificar a suficiência do modelo usado. Neste respeito, seria vantajoso para usar o mesmo método de análise e ferramenta para processar dados medidos e computados. Em termos de ATP-EMTP, as rotinas escritas em idioma de MODELS para processar no ATP podem ser usadas como dados do EMTP para analisar valores medidos e digitalmente registrar sinais. Os dados medidos deveriam estar disponíveis dentro tabelar e no formato ASCII com período de amostragem fixo que é convertido em PL4 arquivo formato que usa um programa de conversão disponível.

9.4.2 POSTPROCESS PLOT FILE Facility Using MODELS

Foram implementados dois modos diferentes para Postprocess. Considerando que o primeiro método habilita acesso dados de enredo por interface de TACS-MODELOS, o segundo método implementado muito

96

recentemente permite a MODELS processar arquivos PL4 diretamente na MODELS STAND ALONE . São explicados ambos os métodos abaixo.

9.4.3 Post Processem Usem TACS-MODELS Interface

A característica para incluir uma seção de TACS e uma seção de MODELS no mesmo caso de dados permite os usuários para postar processo PL4 delineiam arquivo que usa TACS e MODELOS. Dados de enredo são acessados primeiro através de seção de TACS e pode ser passada a seção MODELS. A conexão da MODELS para o .PL4 delineiam arquivo por seção de TACS é terminado em passos seguintes:

1. Um arquivo de enredo existente a ser processado por ATP-EMTP é indicado através de dados de pedido especiais revista POSTPROCESS PLOT ARQUIVO com três parâmetros como explicado;

PLOT ARQUIVO com três parâ metros como explicado; MULPPF define em que múltiplo os pontos do

MULPPF define em que múltiplo os pontos do plot originais serão usados. 1 significa que todos os pontos serão usados, n quer dizer todo ponto de n-th é usado. Se usando um valor múltiplo, o passo de tempo deveria ser ajustado para manter a balança de tempo da simulação inalterado adequadamente.

LUNPPF indica a unidade de I/O alocada a conexão do arquivo PL4. Se deixar espaço em branco, um valor de falta de 63 é nomeado.

97

Selecionando uma unidade diferente já pode estar em conflito com unidades usadas por ATP

L63TYP indica o tipo de formatar do arquivo de PL4. Se deixou espaço em branco, um valor de falta de 1 é nomeado.

1=UNFORMATTED, 2=FORMATTED, 3=C – LIKE

2. Uma declaração $OPEN segue este pedido para acessar o arquivo de PL4. Por exemplo:

$ABRA, UNIT=63 FILE=lv130_92.pl4 STATUS=OLD FORM=UNFORMATTED

3. Variáveis plot são acessadas por tipo-25 fontes de TACS na seção de TACS que começa com TACS HÍBRIDO

4. A seção de TACS é seguida através de seção de MODELS onde qualquer variável da TACS, i.e. tipo-25 fontes, pode ser passado a MODELS por variável INPUT. Por exemplo, uma variável de TACS nomeada seria feito disponível na seção de MODELOS debaixo do local_name de nome como mostrado abaixo:

INPUT local_name {TACS (signal)}

A seção de TACS precede a seção de MODELS em um caso de dados:

98

98 A cada passo de tempo, a solução da s eção TACS é seguida através de

A cada passo de tempo, a solução da seção TACS é seguida através de solução de seção da MODELS.

5

Seguindo a seção de MODELS um falso circuito elétrico deve ser incluído para satisfazer regras de contribuição de dados de ATP.

9.4.4

Post Processem Usem MODELS

Esta característica nova foi acrescentada muito recentemente a MODELS no ATP-EMTP acessar e postar sinais de processo armazenados diretamente em um arquivo PL4 na seção de MODELS. A conexão para o arquivo de PL4 e processo subseqüente é terminado em cinco passos:

1. Mesmo como explicado na seção 1, acima;

2. Mesmo como explicado na seção acima;

3. A seção MODELS precisar ser do tipo MODELS STAND ALONE.

4. Qualquer número de sinais armazenado no arquivo de PL4 é declarado como contribuições a MODELOS:

INPUT arc_current {PL4 (1)}, arc_voltage {PL4 (2)}

99

APÊNDICE 1. Processamento da medida do arco usando TACS-MODELS

99 APÊNDICE 1. Processamento da medida do arco usando TACS-MODELS

100

100

101

APÊNDICE 2. Processamento da medida do arco usando MODELS.

101 APÊNDICE 2. Processamento da me dida do arco usando MODELS.

102

APÊNDICE 3. Computação dos coeficientes discretos da série de Fourier (DFS_COEF. MDL).

102 APÊNDICE 3. Computação dos coeficie ntes discretos da série de Fourier (DFS_COEF. MDL).

103

APÊNDICE 4. Computação da resistência e da reatância equivalentes em alguma freqüência harmônica (IMPEDANZ.MDL)

APÊNDICE 4. Computação da resistênc ia e da reatância equivalentes em alguma freqüência harmônica (IMPEDANZ.MDL)

104

9.5 CÁLCULO DO PLOT BODE COM ATP MODELS [8]

9.5.1 INTRODUÇÃO

O arquivo do ATP analisado descreve um circuito de RLC simples dirigido por uma fonte senoidal de 1 Volts e o modelo de bode para calcular o ganho e fase daquele circuito em decibel [dB] usando MODELS. A parte real e imaginária do fasores de tensão (VIN, VOUT) é a contribuição ao modelo, à produção avalia ganho e a fase são escritas o.arquivo de pl4 por meio da declaração de RECORD da MODELS.

à produção avalia ganho e a fase são escritas o.arquivo de pl4 por meio da declaração

105

105 Como pode ser visto sobre os valores complexos de tensão do nó pode ser passado

Como pode ser visto sobre os valores complexos de tensão do nó pode ser passado a MODELS pelos comandos {v (VOUT)} e {imssv (VOUT)}.

9.5.2 CRIANDO UM ARQUIVO BODE PLOT POR MEIO DA MODELS

O ATPDraw provê ao usuário uma interface amigável para a MODELS. O usuário tem que especificar a operação do modelo por meio do arquivo de descrição .Mod. Conectando o objeto modelo com o resto do circuito pode que

seja feito graficamente de modo amigável, como mostrado em Figura 1 e Figura

2.

106

106 Se o arquivo de descrição do objet o dos modelos for relativamente simples, as seções

Se o arquivo de descrição do objeto dos modelos for relativamente simples, as seções de interface dos MODELOS separam de um ATP contribuição arquivo faz uma parte significante do código. Usando ATPDraw esta parte de interface é gerada automaticamente e o usuário precisa entrar em há pouco a parte de descrição.

precisa entrar em há pouco a parte de descrição. O arquivo de descrição de objet o

O arquivo de descrição de objeto da MODELS é mostrado logo:

O arquivo de descrição de objet o da MODELS é mostrado logo: O resto do ATP

O resto do ATP - arquivo é gerado por ATPDraw:

107

107

108

108

109

9.6 ATP-EMTP COMO UMA FERRAMENTA PRÁTICA PARA A REDE TÉRMICA QUE MODELA E SIMULAÇÃO DA TRANSFERÊNCIA TÉRMICA [10]

O programa ATPDraw (Interface alternativa do programa ATP) pode ser usado para a criação de componentes da linguagem MODELS. MODELS criam um ambiente específico, onde interação com circuito de ATP está disponível e executado por tipo de avaliação. A idéia principal de interação mútua é mostrada em Figura XXX onde, como um exemplo, corrente e tensão é levada do circuito e usada para determinar uma resistência não linear R. Este tipo de uso de MODELOS junto com type91 R (t) será aplicada amplamente em modelagem de TNM dinâmica.

será ap licada amplamente em modelagem de TNM dinâmica. 9.6.1 CRIAÇÃO DE UMA RESISTÊ NCIA TÉRMICA

9.6.1 CRIAÇÃO DE UMA RESISTÊNCIA TÉRMICA NA MODELS

A condução de calor é observada em sólidos e fluidos. Está baseado no transporte de energia para partículas menos aquecidas e é governado pela lei de Fourier. Permite a determinar uma resistência térmica pela condução que praticamente não depende de temperatura. Então sua descrição matemática é muito simples, como é mostrada no apêndice 1. A descrição do modelo em idioma de MODELOS é listada abaixo.

110

ENDEXEC permanece vazio, desde

que só um cálculo é requerido durante todo o processo de simulação. Para este

propósito, o INIT

Vale para mencionar aquele EXEC

Parte de ENDINIT é bastante suficiente.

aquele EXEC Parte de ENDINIT é bastante suficiente. 9.6.2 RESISTÊNCIA TÉRMICA PARA A RADIAÇÃO

9.6.2 RESISTÊNCIA TÉRMICA PARA A RADIAÇÃO

Transferência de calor por meio de radiação não precisa de qualquer meio para propagação, porque energia é dissipada por emissão de ondas eletromagnéticas. É governado por Stefan-Boltzmann fórmula

É governado por Stefan-Boltzmann fórmula Para adquirir a fórmula de lei de Ohm. = PR r

Para adquirir a fórmula de lei de Ohm. = PR rd é necessário excluir uma

parte linear de elevação de temperatura

resistência térmica por radiação, como a pessoa pode notar esta função é fortemente não linear de temperatura.

Quantidades restantes criarão

fortemente não linear de temperatura. Quantidades restantes criarão A descrição em idioma de MODELOS é fixa

A descrição em idioma de MODELOS é fixa abaixo:

111

111 Parâmetros como um emitir efetivo / área absorvente S p 1 , S p 2

Parâmetros como um emitir efetivo / área absorvente S p1 , S p2 e são qualificados como uma seção DATA do modelo e podem ser mudados facilmente dentro de ambiente de ATPDraw. Coeficiente de emissão é resultante de uma função de ambos .1 e .2, como também geometria de radiar superfícies. Se a superfície de corpo refletor é superfície então radiando muito maior, enquanto seguindo fórmula então pode ser aplicada:

maior, enquanto seguindo fórmula então pode ser aplicada: 9.6.3 RESISTÊNCIA TÉRMICA PARA A TRANSMISSÃO

9.6.3 RESISTÊNCIA TÉRMICA PARA A TRANSMISSÃO

Transferência de calor, ou, simplesmente, transmissão, é o processo de transferência de calor que é executado pelo fluxo de um fluido. Os atos fluidos como portador ou correia de transporte para a energia que tira de (ou entrega) uma parede sólida. Transmissão é aquele especial calor transferência mecanismo nos quais as características do fluxo (por exemplo, distribuição de velocidade e turbulência) grandemente afetam a taxa de transferência de calor entre a parede e o fluxo. A taxa de energia transferida por transmissão também pode ser expressa no estilo de lei de Ohm e é governada pela lei de Newton

112

112 Onde: ⇒ Sp - área de superfície condutora de calor. ⇒ α - a coeficiente

Onde:

Sp - área de superfície condutora de calor.