Você está na página 1de 166

SAGE

SISTEMA ABERTO DE GERENCIAMENTO DE ENERGIA

Manual de Administração

Administração do SAGE

SAGE_ManAdm_SageAdmin.doc

Outubro de 2014
Quadro de Revisão

Nº Data Descrição Versão


00 22/01/2010 Revisão de Formato
01 17/09/2010 Inclusão do Capítulo 13 – Instalação e Uso do som no SAGE
Atualização Capítulo 9 - Controle de Processo via Linha de
02 03/01/2011
Comando (GCD_SHELL)
03 04/01/2011 Atualizações Capítulo 1 - Introdução
Atualizações Capítulo 10 – Codificação binária de PA.dat e
04 01/03/2011
Cl.dat
Atualização do capitulo 10 (Aquisição de Dados de Sistemas
05 26/08/2011
Externos)
06 20/09/2011 Criado o capítulo para descrição do SAC (sac.conf e a1_flags)
07 21/09/2011 Atualização do texto do capítulo 8
08 23/09/2011 Atualização do Capítulo 3 (Base Historica)
Criação do Capítulo de Descrição de Aplicativos e de um
09 27/10/2011 capítulo de descrição do procedimento de update do SAGE.
Criação do item Comandos (capítulo SAC)
10 22/11/2011 Atualização do item Tabular
Criação do Capítulo de Variáveis de Ambiente;
11 27/03/2012 Atualização do capítulo Tabular para a versão 1.07 (upd 23-8);
Revisão do capítulo de ajuste de limites por patamares de carga.
12 10/04/2012 Atualização de texto no capítulo 6.
Atualização do aplicativo Tabular;
13 12/04/2012 Atualização da listagem de a1_flags;
Variáveis de ambiente - OTS
Chamada do script de ativação do Ade e inclusão de parâmetro
14 27/06/2012
em sac.conf
Atualização do nome do arquivo segundo padronização do
15 28/08/2012
SAGE
Atualização do parâmetro HORA_ALARME_ORIGEM de
16 27/12/2012
configuração do SAC
Criação de PDU_KFOLGA no capítulo “Variáveis de Ambiente
17 04/04/2013 do SAGE”; Criação do capítulo “Monitores de Mensagem” com
os itens MMD, MMF (pré-existente) e MML
18 05/07/2013 Atualização do texto do script AtualizaBD
Atualização dos procedimentos de “update do SAGE em
Ambiente Linux X86”, atualização da listagem de a1_flags;
19 31/07/2013 inclusão e descrição da variável de Ambiente
DNP_K_ON_TIME; inclusão do parâmetro JANELA_ATLZ na
configuração do sac.
20 09/10/2013 Descrição da variável de ambiente DEVICE_SOM
Atualização do texto do script AtualizaBD e Configuração da
21 25/10/2013 Tabela de Tempo de Patamares de Carga atendendo ao início e
término do horário de verão.
22 08/11/2013 Definição da variácel de ambiente $ARQUSR.
Novos parâmetros gerais em sac.conf evariável de ambiente
23 27/02/2014
MODB_MULT_REG.
Atualização da descrição do script zipconfig e inserção do script
instala_aplicacao; Definição da variável de ambiente
24 22/05/2014
CIC_ARQMON3; atualização do comando Tabular. atualização
de GeraDatsNHS
25 11/07/2014 Atualização do capítulo “GeraDatsNHS”
Atualização do Item “Codificação do Estado e dos Flags” do
26 16/07/2014
capítulo do ADS
Inclusão das variáveis de ambiente <id-LSC>_DETTI_E_MS0 e
SS_OFFSET; inclusão do parâmetro BLOQ_SEL_CTRL_TAC
27 10/09/2014
em sac.conf; Atualização do DumpBD; Atualização de
GeraDatsNHS
Inclusão de PROFILE_ALR no capítulo “Variáveis de Ambiente
28 16/10/2014
do SAGE”

Preparado por:

21.941-911 • Av. Horácio de Macedo, 354 • Rio de Janeiro - RJ


Tel.: (021) 2598-6000 • Fax: (021) 2260-1340

A informação contida neste documento é de propriedade do CEPEL, tendo se originado de trabalho desenvolvido nesta empresa para consulta e
referência dos usuários do sistema SAGE, e não poderá ser reproduzida ou utilizada para quaisquer outros fins sem autorização prévia e
expressa do CEPEL. Este documento baseia-se em informação disponível na data de sua publicação. Embora sejam feitos esforços para
torná-lo preciso, este não se propõe a cobrir todos os detalhes ou particularidades apresentadas pelo sistema. O CEPEL não se responsabiliza
por notificar os usuários deste documento de possíveis alterações feitas posteriormente.
Conteúdo
1 INTRODUÇÃO....................................................................................................... 1

2 DUMP DA BASE DE DADOS .................................................................................. 3


2.1 O PROCESSO DUMPBD ............................................................................................................ 3
2.1.1 Preservação de Dados da Base ........................................................................................ 3
2.1.1.1 Configuração da Preservação na Base Fonte ........................................................................ 4
2.1.1.1.1 Entidade de Preservação de Dados (Tabela PSV) ............................................................ 4
2.2 CONFIGURAÇÃO DO DUMPBD NA BASE FONTE........................................................................... 4
2.2.1 Entidade de Processos (Tabela PRO) .............................................................................. 5
2.2.2 Entidade de Relacionamento de Severidade X Classe de Processos (Tabela SXP) ....... 5
2.2.3 Entidade de Instância de Processo (Tabela INP) ............................................................. 6
2.3 CONFIGURAÇÃO DO DUMPBD.................................................................................................... 6
2.4 UTILIZANDO O PROCESSO DUMPBD .......................................................................................... 8
2.4.1 Selecionando uma Classe de MCD para DUMP ............................................................... 9
2.4.1.1 Seqüência de operações para marcar/desmarcar MCDs para Dump .................................. 10
2.4.2 MCD’S do SAGE ............................................................................................................. 11
2.4.3 Alterando a Periodicidade para DUMP Automático ........................................................ 13
2.4.3.1 Seqüência de operações para alterar a periodicidade do DumpBd ...................................... 13
2.4.4 Executando o DUMPBD Manualmente ........................................................................... 14
2.4.4.1 Seqüência de operações para executar o DumpBd a qualquer momento ........................... 15

3 MANUAL DA BASE HISTÓRICA .......................................................................... 17


3.1 INTRODUÇÃO.......................................................................................................................... 17
3.2 BASES DO SAGE ................................................................................................................... 17
3.2.1 Base FONTE ................................................................................................................... 18
3.2.2 Base REFERÊNCIA ........................................................................................................ 18
3.2.3 Base ON-LINE ................................................................................................................. 18
3.2.4 Base HISTÓRICA ............................................................................................................ 19
3.3 SISTEMA DE GERENCIAMENTO DA BASE HISTÓRICA GBH ......................................................... 19
3.4 ENTIDADE TEMPO REAL X TABELA BASE HISTÓRICA ................................................................ 20
3.5 TABELAS DE REFERÊNCIA ....................................................................................................... 21
3.5.1 Tabelas de referência no PI ............................................................................................ 23
3.6 TABELAS DINÂMICAS .............................................................................................................. 23
3.6.1 Tabelas Dinâmicas no PI ................................................................................................. 24
3.6.1.1 Compressão e exceção ........................................................................................................ 24
3.6.2 Esquemas de Gravação .................................................................................................. 25
3.6.2.1 Esquema Síncrono ............................................................................................................... 25
3.6.2.2 Esquema Assíncrono ........................................................................................................... 26
3.6.3 Particionamento ............................................................................................................... 26
3.6.3.1 Nomenclatura das Tabelas Dinâmicas ................................................................................. 27
3.6.3.2 Tabelas de Controle ............................................................................................................. 27
3.6.4 Arquivamento................................................................................................................... 28
3.6.5 Seleção de Instâncias Historiadas .................................................................................. 28
3.7 CONFIGURANDO A BASE HISTÓRICA DO SAGE ........................................................................ 28
3.7.1 Configurando Entidades e Atributos da Base HISTÓRICA ............................................. 29
3.7.1.1 Configurando Tabelas de Referência ................................................................................... 29
3.7.1.2 Configurando Tabelas Dinâmicas ......................................................................................... 30
3.7.1.2.1 Exemplo de uso de máscara ........................................................................................... 31
3.8 PROGRAMA STI_DCATBH........................................................................................................ 32
3.8.1 O script habilita_gbh ........................................................................................................ 33
3.9 ESQUEMA EXEMPLO ............................................................................................................... 33
3.10 CONSOLIDAÇÃO ..................................................................................................................... 34
3.10.1 Configuração da Consolidação ................................................................................... 34
3.10.2 Consolidação de Medidas Analógicas ........................................................................ 35
3.10.3 Consolidação de Valores Digitais ............................................................................... 36

i
CONTEÚDO

3.10.4 Instalação da Consolidação ........................................................................................ 37


3.11 CÁLCULO TAMANHO DA BASE DE DADOS HISTÓRICA ............................................................ 38
3.11.1 Tamanho de Tabelas DINÂMICAS ............................................................................. 38
3.12 PARÂMETROS DE ATIVAÇÃO DO GBH_XXX ................................................................................ 40
4 SIMULAÇÃO DO TRÁFEGO DE DADOS DE TEMPO REAL NO SAGE (SIM-TR) ... 41
4.1 SINTAXE DE ATIVAÇÃO............................................................................................................ 41
4.2 CONSTRUÇÃO DE CENÁRIOS DE SIMULAÇÃO............................................................................ 42
4.2.1 Subcomandos .................................................................................................................. 43
4.2.2 Comandos ....................................................................................................................... 44
4.2.3 Simulação de Controle Supervisório ............................................................................... 48
5 MONITORES DE MENSAGEM ............................................................................. 51
5.1 MMD – MONITOR DE MENSAGENS DE DISTRIBUIÇÃO ............................................................... 51
5.2 MMF – MONITOR DE MENSAGENS FÍSICAS .............................................................................. 52
5.3 MML – MONITOR DE MENSAGENS LÓGICAS ............................................................................ 53
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG) ......................... 59
6.1 EXECUÇÃO DA FUNÇÃO – PATAMARES NORMAIS ..................................................................... 59
6.2 CONJUNTOS DE LIMITES – NORMAIS E INTERVENÇÃO ............................................................... 61
6.3 ENTRADA MANUAL EM CLM E LIMITES CADASTRAIS ................................................................. 62
6.4 PATAMARES EMERGENCIAIS – INEQUAÇÕES ............................................................................ 62
6.5 CONFIGURAÇÃO DA FUNÇÃO NA BASE FONTE ........................................................................ 62
6.6 AUTO-CONFIGURAÇÃO DA FUNÇÃO NA BASE REFERÊNCIA ................................................... 66
6.7 OPERAÇÃO EM TEMPO REAL – TELAS DA FUNÇÃO.................................................................... 66
7 SCRIPTS DE MANUTENÇÃO DO SAGE .............................................................. 71
7.1 INTRODUÇÃO.......................................................................................................................... 71
7.2 RELAÇÃO DOS SCRIPTS .......................................................................................................... 71
7.3 DESCRIÇÃO DOS SCRIPTS ....................................................................................................... 72
7.3.1 sincconfig ......................................................................................................................... 72
7.3.1.1 Exemplos: ............................................................................................................................. 72
7.3.2 AtualizaBD ....................................................................................................................... 73
7.3.2.1 Parâmetros do Script ............................................................................................................ 73
7.3.2.2 Formas de Uso: .................................................................................................................... 74
7.3.2.3 Exemplos: ............................................................................................................................. 76
7.3.3 ativasage ......................................................................................................................... 77
7.3.3.1 Exemplos: ............................................................................................................................. 77
7.3.4 rligador ............................................................................................................................. 77
7.3.4.1 Exemplos: ............................................................................................................................. 78
7.3.5 rvisoracesso ..................................................................................................................... 78
7.3.5.1 Exemplo:............................................................................................................................... 78
7.3.6 geralog ............................................................................................................................. 79
7.3.6.1 Exemplos: ............................................................................................................................. 79
7.3.7 cria_base ......................................................................................................................... 80
7.3.7.1 Exemplos: ............................................................................................................................. 80
7.3.8 remove_base ................................................................................................................... 80
7.3.8.1 Exemplos: ............................................................................................................................. 80
7.3.9 habilita_base .................................................................................................................... 81
7.3.9.1 Exemplos: ............................................................................................................................. 81
7.3.10 instala_aplicacao ......................................................................................................... 81
7.3.11 instala_sage ................................................................................................................ 81
7.3.11.1 Exemplos: ............................................................................................................................. 82
7.3.12 instala_update ............................................................................................................. 82
7.3.12.1 Exemplos: ............................................................................................................................. 83
7.3.13 remove_update ........................................................................................................... 83
7.3.13.1 Exemplo:............................................................................................................................... 83
7.3.14 zipconfig ...................................................................................................................... 83
7.3.14.1 Exemplos: ............................................................................................................................. 84
7.3.15 criasagecnf .................................................................................................................. 85
7.3.15.1 Exemplos: ............................................................................................................................. 85

ii
CONTEÚDO

7.3.16 criasageexe ................................................................................................................. 85


7.3.16.1 Exemplos: ............................................................................................................................. 86
7.3.17 habilita_postgres ......................................................................................................... 86
7.3.17.1 Exemplos: ............................................................................................................................. 87
7.3.18 habilita_gbh ................................................................................................................. 87
7.3.19 TrocaIdentTelas .......................................................................................................... 88
7.3.19.1 Exemplos: ............................................................................................................................. 88

8 PLANILHA DE LEITURAS PERIÓDICAS.............................................................. 89

9 CONTROLE DE PROCESSO VIA LINHA DE COMANDO (GCD_SHELL) ............... 93


9.1 SINTAXE DE ATIVAÇÃO............................................................................................................ 93
9.1.1 Comandos ....................................................................................................................... 94
10 AQUISIÇÃO DE DADOS DE SISTEMAS EXTERNOS (ADS) .............................. 97
10.1 FUNCIONAMENTO ................................................................................................................... 98
10.2 CONFIGURAÇÃO PARA UTILIZAÇÃO ADS .................................................................................. 99
10.2.1 Variáveis de Ambiente do ADS no SSC_Amb ............................................................ 99
10.2.2 Base de Dados ............................................................................................................ 99
10.2.2.1 Tabela PRO - Classe de Processos ..................................................................................... 99
10.2.2.2 Tabela SXP - Relacionamento Severidade x Classe de Processos ................................... 100
10.2.2.3 Entidade Instância de Processo ......................................................................................... 100
10.2.3 Script de Ativação ADS: ............................................................................................ 101
10.2.4 Script de Ativação ADE: ............................................................................................ 102
10.2.5 Configuração de Ativação do Servidor ADSL no Boot .............................................. 102
10.3 ARQUIVOS CL.REF , PA.REF, PA.DAT, PE.DAT E CL.DAT ................................................ 103
10.3.1 CL.REF e PA.REF (codificação ASCII) ..................................................................... 104
10.3.2 PA.DAT ou PE.DAT (codificação binária) ................................................................. 104
10.3.3 CL.DAT (codificação binária) .................................................................................... 105
10.3.4 Codificação do Estado e dos Flags ........................................................................... 105
11 SUPERVISÃO VIA LINHA DE COMANDO (INFO-TR) ..................................... 107

12 FAILOVER DE GATEWAYS ........................................................................... 111

13 INSTALAÇÃO E USO DO SOM NO SAGE ...................................................... 113


13.1 INTRODUÇÃO........................................................................................................................ 113
13.2 INSTALAÇÃO DO SERVIDOR DE SOM LOCAL – SERVSOM ...................................................... 113
13.2.1 Em Ambiente Windows ............................................................................................. 113
13.2.2 Em Ambiente Linux ................................................................................................... 122
13.3 HABILITAÇÃO, INIBIÇÃO E SILENCIAMENTO DO SOM LOCAL ..................................................... 125
13.4 DEFINIÇÃO DE SONS LOCAIS CUSTOMIZADOS ........................................................................ 127
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC) ............................................. 129
14.1 CONFIGURAÇÃO DO SAC ...................................................................................................... 129
14.1.1 Parâmetros Gerais .................................................................................................... 129
14.1.1.1 DIF_PP ............................................................................................................................... 129
14.1.1.2 STAT_BND ......................................................................................................................... 129
14.1.1.3 TEMPO_MAX_INIB_ALR ................................................................................................... 130
14.1.1.4 JANELA_SOE_VALIDO ..................................................................................................... 130
14.1.1.5 HORA_ALARME_ORIGEM ................................................................................................ 130
14.1.1.6 AUTO_REST_VARR .......................................................................................................... 130
14.1.1.7 ALR_VALID ........................................................................................................................ 131
14.1.1.8 IND_RAZOAB..................................................................................................................... 131
14.1.1.9 IGN_ALINT ......................................................................................................................... 131
14.1.1.10 INIB_ALR_AOI_IMPORT ............................................................................................... 131
14.1.1.11 JANELA_ATLZ .............................................................................................................. 131
14.1.1.12 RAZOAB_IVORG .......................................................................................................... 132
14.1.1.13 ALR_ACD_APENAS_LOG ............................................................................................ 132
14.1.1.14 BLOQ_SEL_CTRL_TAC ................................................................................................ 132
14.1.2 Parâmetros de Ajuste da Banda Morta ..................................................................... 132
14.1.2.1 freq ..................................................................................................................................... 132

iii
CONTEÚDO

14.1.2.2 outros.................................................................................................................................. 132


14.1.2.3 kv ........................................................................................................................................ 132
14.1.2.4 eca ...................................................................................................................................... 133
14.1.2.5 mw ...................................................................................................................................... 133
14.1.2.6 mvar ................................................................................................................................... 133
14.1.2.7 amp .................................................................................................................................... 133
14.1.2.8 tmp ..................................................................................................................................... 133
14.1.2.9 bias ..................................................................................................................................... 133
14.1.2.10 nivel ............................................................................................................................... 133
14.1.2.11 harmonicas .................................................................................................................... 133
14.1.2.12 tap .................................................................................................................................. 133
14.1.2.13 tempo ............................................................................................................................. 133
14.1.2.14 vazao ............................................................................................................................. 133
14.1.2.15 default ............................................................................................................................ 134
14.2 DESCRIÇÃO DE A1_FLAGS .................................................................................................... 134
14.2.1 a1_flags para pontos de controle .............................................................................. 134
14.2.2 a1_flags para pontos analógicos .............................................................................. 134
14.2.3 a1_flags para pontos digitais .................................................................................... 135
14.2.4 a1_flags para pontos totalizados .............................................................................. 136
14.3 COMANDOS .......................................................................................................................... 136
14.3.1 rst_stat_cnv ............................................................................................................... 136
14.3.2 sage_ctrl .................................................................................................................... 137
14.3.3 mon_pas .................................................................................................................... 138
14.3.4 mon_pds .................................................................................................................... 138
14.3.5 sage_alr ..................................................................................................................... 138
14.3.6 alr_lista ...................................................................................................................... 138
15 APLICATIVOS ............................................................................................... 141
15.1 TABULAR ............................................................................................................................. 141
15.1.1 Sintaxe do Comando ................................................................................................. 141
15.1.1.1 Sintaxe 1............................................................................................................................. 142
15.1.1.1.1 -atr <atributo> ............................................................................................................... 142
15.1.1.1.2 -atr FLAGS:a1_flags ..................................................................................................... 142
15.1.1.1.3 -grep <filtro> ................................................................................................................. 142
15.1.1.1.4 -grep: <atributo> <filtro> ............................................................................................... 142
15.1.1.1.5 –simb ............................................................................................................................ 143
15.1.1.1.6 –apont <atrib> .............................................................................................................. 143
15.1.1.1.7 -conta <conta> .............................................................................................................. 143
15.1.1.1.8 –time <formato> ........................................................................................................... 143
15.1.1.1.9 –cos <cos> ................................................................................................................... 143
15.1.1.1.10 –page <lines> ............................................................................................................. 143
15.1.1.1.11 –sort <atrib>[:desc] ..................................................................................................... 143
15.1.1.1.12 -d <delimitador CSV> ................................................................................................. 143
15.1.1.2 Sintaxe 2............................................................................................................................. 143
15.1.1.3 Sintaxe 3............................................................................................................................. 144
15.1.1.4 Sintaxe 4............................................................................................................................. 144
15.1.1.5 Sintaxe 5............................................................................................................................. 145
15.1.1.6 Sintaxe 6............................................................................................................................. 145
15.1.2 Exemplos do comando .............................................................................................. 145
15.2 GERADATSNHS................................................................................................................... 146
16 PROCEDIMENTO DE ATUALIZAÇÃO DO SAGE ............................................ 149
16.1 UPDATE DO SAGE EM AMBIENTE LINUX X86 ......................................................................... 149
17 VARIÁVEIS DE AMBIENTE DO SAGE ........................................................... 151
17.1 SSC, SCD E SIG................................................................................................................. 151
17.2 BASE DE DADOS HISTÓRICOS ............................................................................................... 156
17.3 SIM ..................................................................................................................................... 158

iv
1
Capítulo

1 Introdução
Este manual tem por objetivo reunir informações que são utilizadas pelo usuário do SAGE em
diversas tarefas de administração do sistema, tanto para aquelas realizadas no ambiente de tempo-
real quanto para as realizadas em ambiente off-line. É composto pelos seguintes módulos:
▪ Capítulo 2 - Manual do DumpBd: apresenta o funcionamento e a configuração deste módulo,
obtendo através deste uma cópia preservada da base de dados tempo real.

▪ Capítulo 3 - Manual da Base Histórica: é descrito o sistema de Gerenciamento da Base


Histórica do SAGE, GBH-SAGE, que permite o armazenamento de informações de tempo-
real previamente selecionadas pelo usuário em um banco de dados relacional
possibilitando a recuperação de séries temporais representativas do comportamento do
sistema elétrico monitorado.

▪ Capítulo 4 - Simulador do Tráfego de Mensagens de Tempo Real (SIM-TR): é descrito o


processo que permite o envio de mensagens ao SAC, simulando a atividade dos
conversores de protocolo, na aquisição.

▪ Capítulo 5 - Monitor de Mensagens Físicas MMF: utilitário que monitora o tráfego de


mensagens transmitidas e recebidas pelas linhas de comunicação ligadas ao SAGE em
qualquer protocolo utilizado.

▪ Capítulo 6 - Ajuste de Limites por Patamares de Carga: trata de uma função de ajuste
automático de limites operativos de medidas analógicas por monitoração de patamares de
carga, também chamada no SAGE de PCARG.

▪ Capítulo 7 – Scripts de Manutenção do SAGE: lista os scripts desenvolvidos a fim de facilitar


as tarefas relacionadas à manutenção da configuração do SAGE.

▪ Capítulo 8 - Planilha de Leituras Periódicas: descreve uma funcionalidade que gera arquivos
contendo um histórico de valores de pontos analógicos.

▪ Capítulo 9 – Controle de Processo Via Linha de Comando (GCSD_SHELL): apresenta o utilitário


que permite a interação com o módulo do GCD (gerente de controle distribuído) para
habilitar/desabilitar processos em um nó da rede para fins de manutenção;

1
1 INTRODUÇÃO

▪ Capítulo 10 - ADS: descreve o módulo ADS (Aquisição de Dados de Sistemas Externos) que
funciona como um conversor de protocolo, aquisitando os dados analógicos e digitais
vindos de outros sistemas ou de outro SAGE.

▪ Capítulo 11 – INFO-TR: descreve o utilitário INFO_TR para consulta interativa de dados de


tempo real.

▪ Capítulo 12 – Failover de Gateways: descreve a funcionalidade de failover de gateways


apresentada pelo SAC;

▪ Capítulo 13 – Instalação e Uso do Som no SAGE : descreve a configuração do esquema de


“som local em console”.

▪ Capítulo 14 –Serviço de Aquisição e Controle (SAC) –descreve os parâmetros de


configuração que podem ser indicados no arquivo sac.conf e descreve os bits de a1_flags
para pontos de controle, digitais, analógicos e totalizados.

2
2
Capítulo

2 Dump da Base de Dados

2.1 O Processo DumpBd


O módulo DumpBd faz uma cópia selecionada dos dados da memória para arquivos XDR em
$BD, diretório a partir do qual a base de dados do SAGE é carregada no processo de ativação do
sistema. Garante-se assim que, em condições normais, sempre que houver uma nova ativação do
SAGE, a base de tempo real terá dados atualizados.
A informação dos dados a serem incluídos no processo de dump é lida na base referência. Há
uma seleção inicial na distribuição do SAGE (item 2.4.2), mas tal seleção pode ser alterada pelo
usuário (ver item 2.4.1). As MCDs podem ter versões diferentes para os contextos existentes no
sistema. Neste caso, se a MCD estiver selecionada para Dump, todas as suas versões serão salvas
pelo processo DumpBd, com o sufixo do nome da MCD indicando o contexto ao que ela pertence..
O DumpBd é executado de duas formas distintas: automaticamente, em um ciclo periódico de
tempo, ou de forma manual por meio de um botão de execução na IHM do SAGE. O intervalo de
tempo mínimo de execução automática é de 10 minutos, podendo ser aumentado pelo usuário (ver
item 2.4.3.1).

2.1.1 Preservação de Dados da Base

O conceito de preservação é diferente do de dump, e o processo de preservação depende, mas


não é de responsabilidade do DumpBd. Enquanto “dumpear” é simplesmente copiar dados
selecionados na memória para arquivos XDR, preservar dados da base significa que o usuário
indicou que quer aproveitar determinados elementos de sua base de tempo real, como listas de
alarmes, pontos alterados manualmente pelo operador, cálculos dinâmicos etc., quando esta base for
substituída por uma nova versão.
As informações marcadas para serem preservadas são determinadas na configuração da base de
dados Fonte (ver item 2.1.1.1), e as MCDs associadas a essas informações são normalmente
marcadas pelo sistema para serem “dumpeadas” Porém, como a lista de MCDs a serem
“dumpeadas” pode ser alterada pelo usuário, este deve ficar atento para não retirar do processo de
Dump as MCDs que contêm informações que serão utilizadas posteriormente no processo de
preservação.

3
2 DUMP DA BASE DE DADOS

O processo de carga da base é feito pelo script AualizaBD (ver item 7.3.2, neste manual). Se,
neste script, o usuário optar por carregar uma base preservada, o STI faz um merge dos arquivos
XDR salvos pelo DumpBd em $BD com os arquivos XDR da base fria, gerada em $BD/fria, e coloca
os arquivos XDR resultantes em $BD, sobrescrevendo os anteriores. Para mais informações sobre a
geração da base fria, consulte o manual de Geração de Base do SAGE -
SAGE_ManGer_BaseSAGE.pdf. Antes da operação de merge, é feito um backup da base anterior
em $BD/old. Em caso de problemas com a nova base, é possível voltar com a base anterior através
do comando “Retroceder Base” da Interface Gráfica (ver manual de Geração de Base do SAGE) ou
ativar o sistema com a base fria, através do script AtualizaBD.

2.1.1.1 Configuração da Preservação na Base Fonte

Para configurar os dados a serem preservados quando houver o dump da base, deve-se
configurar a tabela PSV.

2.1.1.1.1 Entidade de Preservação de Dados (Tabela PSV)

Esta entidade configura informações para preservação dos dados de tempo real através dos
atributos GRUPO e PRESERV.
Em casos onde mais de uma informação esteja contida em uma única MCD, basta que uma delas
esteja marcada para que toda MCD seja dumpeada, mas só será feita a preservação das
informações que estiverem marcadas, conforme o exemplo abaixo:

PSV
GRUPO= LIM_URG
PRESERV= SIM
PSV
GRUPO= LIM_ADV
PRESERV= NÃO

No caso acima, os dois grupos de informação estão na mesma MCD (SCD_ClasSac), portanto
toda esta MCD será “dumpeada”, mas somente a informação de limite de urgência será preservada,
os limites de advertência não serão preservados, pois seu atributo PRESERV está definido como
NAO.

PSV
GRUPO= ALARME
PRESERV= SIM

Neste segundo caso, toda a MCD SSC_ClasAlr será “dumpeada”, e todas as informações serão
preservadas.

2.2 Configuração do DumpBd na Base Fonte


Para utilizar o processo DumpBd, é necessária sua inclusão na base de dados fonte do SAGE,
mediante o preenchimento das tabelas PRO, SXP e INP. A seguir veremos um exemplo, que

4
2 DUMP DA BASE DE DADOS

assume uma configuração com dois nós na rede SAGE (sage1 e sage2) funcionando como gateway
e IHM.

2.2.1 Entidade de Processos (Tabela PRO)

Esta tabela configura os processos do SAGE. O seguinte registro deve ser acrescentado em
pro.dat:

PRO
ATIVA= CAD ou PRS*
ATVAT= AUT
ESSEN= NES
HORAA= 0
ID= DumpBd
MONIT= MON
NOME= Dump da Base Tempo Real
NUATV= 4
SCRAT= DumpBd_on.rc
SCRDE= DumpBd_off.rc
TINIC= nn**
TIPPR= INSP

* Use CAD para configuração padrão e PRS para cluster. Na configuração padrão (ATIVA=CAD),
o processo DumpBd é executado em todas as máquinas em que foi configurado (através do
preenchimento da tabela INP). A configuração cluster (ATIVA=PRS), por sua vez, deve ser utilizada
quando existe um serviço de armazenamento de arquivos centralizado (NFS). Nesse caso, o
DumpBd é executado em apenas no nó da rede que foi configurado como o nó prioritário (tabela
INP).

** O ideal é que o DumpBd seja o último processo a ser lançado. Para tanto, este deve ter o maior
TINIC configurado, somando a ele 10 segundos a mais no caso de configuração por tempo, e 1 a
mais no caso de configuração por ordem.
Obs.: Para obter o significado dos demais atributos, consulte o Manual de Configuração da base
de dados do SAGE.

2.2.2 Entidade de Relacionamento de Severidade X Classe de


Processos (Tabela SXP)

Esta tabela define, para cada processo, um limite tolerado de erros e eventos que ele pode gerar,
classificados por severidade. Os seguintes registros devem ser acrescentados em sxp.dat:

SXP
NFALS= 4
PRO= DumpBd
SEV= SNULA
SXP
NFALS= 4
PRO= DumpBd
SEV= NORML

5
2 DUMP DA BASE DE DADOS

SXP
NFALS= 4
PRO= DumpBd
SEV= ADVER
SXP
NFALS= 4
PRO= DumpBd
SEV= URGEN
SXP
NFALS= 4
PRO= DumpBd
SEV= FATAL
SXP
NFALS= 4
PRO= DumpBd
SEV= PANIC

Obs.: Para obter o significado dos atributos, consulte o Manual de Configuração da base de dados
do SAGE.

2.2.3 Entidade de Instância de Processo (Tabela INP)

Um processo pode ser ativado em vários nós e cada uma dessas ativações define uma instância
do processo. Esta entidade configura as instâncias de todos os processos do SAGE.
O DumpBd deve ser cadastrado para os nós da rede em que irá rodar. Segue o exemplo de
preenchimento de inp.dat para os nós sage1 e sage2 :
Ao fim da configuração do sage1:

INP
NOH= sage1
ORDEM= 1
PRO= DumpBd
...
... Demais Processos no sage1
...

Ao fim da configuração do sage2:

INP
NOH= sage2
ORDEM= 2
PRO= DumpBd

Obs.: Para obter o significado dos atributos, consulte o Manual de Configuração da base de dados
do SAGE.

2.3 Configuração do DumpBd


A configuração do DumpBd na IHM do SAGE é bem simples e requer apenas três passos.

6
2 DUMP DA BASE DE DADOS

O primeiro é a confecção de uma tela que permita configurar alguns parâmetros de funcionamento
do DumpBd. Abaixo, vemos um modelo de tela contemplando tais funcionalidades, que serão
posteriormente detalhadas. Esta tela está disponível na base demo, distribuída no CD de instalação
do SAGE e pode ser aberta pelo Visor de Telas ($TELAS/SISTEMA/DumpBD).

Figura 2 - 1 - Tela Exemplo Encontrada na Base Demo.

O segundo passo é a criação de uma licença especifica para esta tela a fim de se criar uma
política de acesso a esta ferramenta. Isto é feito através da edição do arquivo Licencas.dat em $IHM
(\home\sage\sage\config\$BASE\ihm) acrescentando-se as seguintes linhas:
LIC_Conv_Dump {
{ ACAO_EntrarDadoTempoReal_Valor 1 PRIV_Supervisor }
{ ACAO_EntrarDadoNaoTempoReal 1 PRIV_Supervisor }
{ ACAO_VerTela 1 PRIV_Operador }
{ ACAO_EntradaGenerica 1 PRIV_Supervisor }
{ ACAO_EntrarDadoPorClick 1 PRIV_Supervisor }
}

Como podemos observar, os usuários com privilégio de “Supervisor” poderão executar as


operações avançadas nesta tela, cabendo aos usuários com privilégio de “Operador”, somente a sua
visualização. Vale lembrar que a tela em questão deverá estar associada a esta licença, operação
que é feita no editor de telas, o SigDraw, utilizando a opção Licença do menu Tela, selecionando na
Lista a LIC_Conv_Dump (para mais informações sobre privilégio e licenças, consulte o Manual de
Configuração da Interface Gráfica do SAGE - SAGE_ManCfg_InterfaceGraf.pdf).
O terceiro passo (opcional), está relacionado à alteração do período de ativação default do
DumpBd, que pode ser modificado através do script de ativação $SAGE/bin/scripts/DumpBd_on.rc.

7
2 DUMP DA BASE DE DADOS

O tempo do ciclo em minutos deve ser inserido após o parâmetro $CONTEXTO na linha de ativação do
processo, como no exemplo a seguir:

Script de Ativação Original (DumpBd_on.rc)


#*
# Ativação do Serviço de dump da base
#
echo “SAGE: Ativando o Serviço de Dump da Base de Dados (DumpBd)...”
mv $LOG/DumBd.log $LOG/DumpBd.old
nohup $SAGE/bin/$SAGE_SO/$MODELO/DumpBd $CONTEXTO > $LOG/DumpBd.log &
sleep 5
echo “SAGE: Serviço DumpBd ativado.”
exit

Para ciclo de 30 minutos, a linha deverá ser alterada para:


nohup $SAGE/bin/$SAGE_SO/$MODELO/DumpBd $CONTEXTO 30 >$LOG/DumpBd.log &

Feita esta alteração, o Dump será executado a cada 30 minutos na próxima ativação.

2.4 Utilizando o Processo DumpBd


As operações básicas possíveis através da tela do DumpBd são as seguintes:
▪ Alteração da periodicidade de execução;

▪ Seleção das classes de MCD para dump;

▪ Execução imediata (manual) do processo.

Estas operações são descritas passo a passo abaixo:

8
2 DUMP DA BASE DE DADOS

Figura 2 - 2 – Operações possíveis na Tela Exemplo

2.4.1 Selecionando uma Classe de MCD para DUMP

Para administrar a seleção das classes de MCD para dump, siga a seqüência de operações
apresentada no item 2.4.1.1.
Logo após, no item 2.4.2, veremos a tabela de MCDs, feita através de informações retiradas do
catálogo da base referência (base demo), que contém o nome, descrição e a coluna DUMP. Esta
coluna indica se uma MCD está selecionada ou não para ser “dumpeada”. O usuário pode alterar
essa seleção, mas, antes de fazê-lo, precisa verificar se não vai desmarcar uma MCD que contenha
dados a serem preservados, o que pode ser verificado através do catálogo da base referência. Se um
dado marcado para ser preservado não for dumpeado, a preservação não poderá ser efetuada
quando pedida.

9
2 DUMP DA BASE DE DADOS

2.4.1.1 Seqüência de operações para marcar/desmarcar MCDs para


Dump

10
2 DUMP DA BASE DE DADOS

Figura 2 - 3 - Sequência de operações para marcar/desmarcar MCDs para Dump

2.4.2 MCD’S do SAGE

Classe de MCD Descrição da Classe DUMP


STI_ClasCadastro Dados de cadastro de uso geral NAO
STI_ClasHist Dados para o Histórico NAO
STI_ClasIdent Dados de cadastro de uso geral - identificadores e NAO
nomes
STI_ClasPrsv Dados auxiliares na preservação da base de dados NAO

11
2 DUMP DA BASE DE DADOS

Classe de MCD Descrição da Classe DUMP


SCD_ClasCod Dados de comunicacao do SCADA NAO
SCD_ClasDcp Descrição complementar de pontos SCADA NAO
SCD_ClasFis Dados da configuração física do SCADA NAO
SCD_ClasIdd Identificadores das entidades do SDD NAO
SCD_ClasIdf Identificadores dos pontos físicos SCADA NAO
SCD_ClasIds Identificadores do serviço de aquisição e controle NAO
SCD_ClasSac Dados do serviço de aquisição e controle SIM
SCD_ClasSdd Dados do serviço de distribuição de dados NAO
SSC_ClasAlr Dados do serviço de tratamento de alarmes SIM
SSC_ClasAoi Indicadores de exportação e importação da Área de NAO
Informação
SSC_ClasCat Catálogo da base referência SIM
SSC_ClasEve Dados do serviço de controle de eventos SIM
SSC_ClasSsc Dados do serviço de suporte computacional NÃO **
SSC_ClasTbm Dados de instancias de MCD`s NÃO **
SSC_ClasTbv Dados de vistas de MCD`s NÃO **
SSC_ClasTnd Dados de tendências de medidas SIM
SAR_ClasAcor Dados do Ações Corretivas SIM
SAR_ClasAnacon Dados do Análise de Contingências SIM
SAR_ClasConfig Dados do Configurador da Rede SIM
SAR_ClasContem Dados do Controle de Emergencia NAO
SAR_ClasEstab Dados do programa de estabilidade de tensão NAO
SAR_ClasEstado Dados relacionados com o estado do sistema NAO
SAR_ClasEstmon Dados do Estimador de Estado SIM
SAR_ClasFasores Dados para Aplicativos de Prova de Conceito do uso de NAO
Medidas Fasoriais
SAR_ClasFluxop Dados do Fluxo de Potência NAO
SAR_ClasGcases Área de armazenamento dos casos de estudo NAO
SAR_ClasGxanat Dados e resultados do programa de controle do SIM
Anatem
SAR_ClasLimite Limites dos equipamentos NAO
SAR_ClasOrganon Dados e resultados da região de segurança SIM
SAR_ClasPa Dados da Adaptação de Parâmetros (PA) NAO
SCG_ClasCagC Configuração do Controle Automático de Geração SIM
SCG_ClasCagD Saída Dinâmica e Performance do Controle Automático SIM
de Geração
SCG_ClasCagI Interface CAG com a Programação de Intercâmbio SIM
SCG_ClasCagT Tunning e Interface IHM do Controle Automático de SIM
Geração
SCG_ClasIts Dados para o gerenciador de programações de SIM
geração e intercâmbio
SCG_ClasPrevcarga Dados do Previsor de Carga NAO
SCG_ClasScg Dados para aplicativos de controle de geração NAO
SIA_ClasRec Dados do Sistema de Recomposição NAO
SIG_ClasConf Dados de Configuração do Subsistema de Interface SIM
Gráfica
SIG_ClasGeral Dados utilizados pelo Subsistema de Interface Gráfica SIM
SIG_ClasLogin Usuário em que máquina NAO
SIM_ClasOts Dados da Interface SAGE-OTS NAO
SOA_ClasIntegra Dados de integração com Sistemas Externos via SOA NAO

** IMPORTANTE ! Estas classes de MCD nunca devem ser marcadas para Dump pois isso pode
gerar mal funcionamento do sistema.

12
2 DUMP DA BASE DE DADOS

2.4.3 Alterando a Periodicidade para DUMP Automático

Para alterar a periodicidade de execução do DumpBd, siga a seqüência que se segue. É


importante ressaltar que a periodicidade mínima de execução é de 10 minutos. Mesmo quando é
definido um valor inferior, o processo assume automaticamente o valor mínimo de 10 minutos.

2.4.3.1 Seqüência de operações para alterar a periodicidade do DumpBd

13
2 DUMP DA BASE DE DADOS

Figura 2 - 4 - Seqüência de operações para alterar a periodicidade do DumpBd

2.4.4 Executando o DUMPBD Manualmente

Para executar o DumpBd a qualquer momento, siga a seqüência abaixo. É importante lembrar que
qualquer tentativa de execução imediata, quando já existe uma execução automática de dump em
andamento, será descartada.

14
2 DUMP DA BASE DE DADOS

2.4.4.1 Seqüência de operações para executar o DumpBd a qualquer


momento

Figura 2 - 5 -Seqüência de operações para executar o DumpBd a qualquer momento

15
2 DUMP DA BASE DE DADOS

16
3
Capítulo

3 Manual da Base Histórica

3.1 Introdução
A informação no SAGE flui a partir de duas fontes específicas. A primeira é feita através da
configuração do sistema, é feita de forma off-line através do carregamento da base fonte. A segunda
é proveniente da monitoração do sistema elétrico pelas aplicações do SAGE, ou seja, são
informações de tempo real que variam durante o processo de supervisão e controle, de forma on-line.
A Figura 3 - 1 descreve o fluxo da informação do SAGE.

Figura 3 - 1- Fluxo da informação no SAGE.

3.2 Bases do SAGE


A informação no SAGE está organizada em bases de dados, cada qual com características
próprias para atender a uma etapa do processo de supervisão e controle de sistemas elétricos em
tempo real.
As bases de dados do SAGE são as seguintes:
▪ Base Fonte

17
3 MANUAL DA BASE HISTÓRICA

▪ Base Referência

▪ Base On–line

▪ Base Histórica

3.2.1 Base FONTE

A base fonte é responsável pela configuração do SAGE. É preenchida a partir de arquivos texto
(.dat) ou interface gráfica. Nela são descritas todas as características do sistema de supervisão e
controle.
Suas principais características são:
▪ Configuração do SAGE

▪ Cadastro do sistema monitorado

▪ Residente em bancos de dados relacional

▪ Preenchida manualmente pelo usuário

3.2.2 Base REFERÊNCIA

A base referência é um estágio intermediário entre as bases fonte e on-line. É residente em disco,
organizada em MDC’s, Memória Compartilhada e Distribuída. E gerada durante o processo de
configuração do SAGE pelo programa STI_cargbf, e atualizada durante a operação em tempo real
pelo processo do SAGE, DumpBd.
Suas principais características são:
▪ Interface entre a Base Fonte e a Base On-line

▪ Contêm dados cadastrais e provenientes do tempo real.

▪ Utilizada durante a ativação do SAGE

▪ Armazenada em disco

▪ Distribuída, entidades organizadas em classes de MCD’s (Memória Compartilhada


Distribuída).

▪ Base fria x Base preservada

3.2.3 Base ON-LINE

É a instância em memória da base de referência. É gerenciada pelo GMCD que inicializa a partir
da base referência durante a ativação do SAGE. Através da base on-line as aplicações do SAGE
trocam informações em tempo real.

18
3 MANUAL DA BASE HISTÓRICA

Suas principais características são:


▪ Base de Operação do SAGE

▪ Residente em memória

▪ Distribuída, organizada em MCD´s.

▪ Informação em tempo real.

▪ Arquitetura proprietária

3.2.4 Base HISTÓRICA

A base histórica do SAGE é responsável pelo armazenamento histórico sobre a operação do


sistema elétrico monitorado. Armazena tanto informações provenientes da operação do sistema
monitorado, quanto provenientes da evolução deste. Suas estruturas basicamente armazenam séries
temporais e são gerenciadas pelo GBH, sistema de Gerenciamento da Base Histórica. O GBH é
configurável e permite que qualquer atributo da base on-line seja historiado como veremos a seguir.
Suas principais características são:
▪ Histórico do sistema monitorado

▪ Armazena a evolução da topologia e informações de tempo real

▪ Preenchida a partir da base de dados on-line

▪ Residente em bancos de dados relacional ou não-relacional (banco PI)

▪ Objeto deste trabalho

3.3 Sistema de Gerenciamento da Base Histórica


GBH
O sistema de Gerenciamento da Base Histórica do SAGE, GBH-SAGE, é formado por um conjunto
de aplicativos que permite o armazenamento de informações de tempo-real previamente
selecionadas pelo usuário em um banco de dados relacional de forma a possibilitar a recuperação de
séries temporais representativas do comportamento do sistema elétrico monitorado.
O procedimento de carga da base histórica é feito através do aplicativo gbh_xxx, onde xxx é o
nome do banco de dados utilizado, que pode ser Oracle, Postgres, Informix ou PI. O aplicativo se
conecta simultaneamente à base on-line do SAGE e ao banco de dados, e grava nesse banco os
dados provenientes do tempo real.

19
3 MANUAL DA BASE HISTÓRICA

Figura 3 - 2 - Processo de Carga da Base Histórica.

Como veremos adiante o programa gbh_xxx é gerado automaticamente a partir da seleção de que
entidades do tempo real serão armazenadas na base histórica. Sua ativação é feita junto com os
outros processos que compõe o SAGE.
No caso de falha na conexão com o banco de dados relacional, o programa passa
automaticamente a armazenar os dados do tempo real em arquivos locais localizados em diretório
predeterminado. Após a correção do problema ocorrido na conexão com o banco de dados, o
programa detecta a disponibilidade e imediatamente inicia a recuperação das informações para o
banco de dados relacional.

3.4 Entidade Tempo Real x Tabela Base Histórica


Os recursos do sistema elétrico monitorado são representados no SAGE através de entidades que
agregam atributos que descrevem as características e o comportamento em tempo real do referido
recurso. Por exemplo, o recurso ponto de medição analógica é representado no SAGE através da
entidade PAS, que contém atributos que descrevem suas características com unidade da medida,
equipamento associado, identificador, etc. Outros atributos da entidade PAS representam o
comportamento em tempo real do ponto de medição, por exemplo, valor medido, indicador de
qualidade da medida, etc. Outros exemplos de recursos representados através de entidades no
SAGE são: PDS, ponto digital do SAGE; EQP, Equipamento elétrico. As entidades do SAGE são
todas descritas catalogo de definição da base de dados referência que pode ser encontrado no
arquivo: $SAGE/config/demo_ems/sti/gbr/lis/STI_dcatbr.lis.
Na base histórica, as entidades são organizadas em dois tipos de tabela: referência e dinâmica.
As tabelas de referência têm como função manter um histórico da configuração do sistema
elétrico. Ela armazena a informações cadastrais. Seus atributos representam uma determinada
característica do sistema tal como unidade medida, tipo de equipamento, identificador, etc. As
entidades da base on-line só podem ter uma e somente uma tabela de referência.

20
3 MANUAL DA BASE HISTÓRICA

Figura 3 - 3 - Relação entre as entidades da base on-line e as tabelas da base histórica

Tabelas dinâmicas armazenam as informações provenientes do processamento do sistema como,


por exemplo, valores medidos, estados digitais, etc. Seus atributos representam valores do sistema
que variam em tempo real. Uma importante característica das tabelas dinâmicas é que elas crescem
continuamente, o que leva a necessidade, por questão de desempenho, de estabelecer políticas de
particionamento em várias tabelas físicas cada uma representando um período de tempo (dia,
semana, mês). Outra característica importante é a forma com que são gravados os dados nas tabelas
dinâmicas que denominamos esquema de gravação. Os esquemas de gravação podem ser
classificados em dois grupos: síncrono e assíncrono. No esquema síncrono os valores do tempo real
são varridos periodicamente e no esquema assíncrono a varredura se dá sempre que a base tempo-
real identifica que ocorreram mudanças nos dados relacionados.
A configuração das entidades e atributos da base histórica do SAGE é feita através dos arquivos
de configuração localizados em $SAGE/config/$BASE/sti/gbh/dados, no arquivo entidade.bh
descrevemos as entidades da base histórica. No arquivo atributo.bh descrevemos os atributos.

3.5 Tabelas de Referência


Responsáveis pelo armazenamento das informações cadastrais do sistema de supervisão e
controle, as tabelas de referência evoluem a cada geração de uma nova “base” do SAGE. Toda vez
que um novo recurso é inserido no sistema é gerada uma nova chave de ligação com as tabelas
dinâmicas, associada ao recurso por toda sua vida útil.
Principais características das tabelas de Referência:
▪ Formam um histórico da evolução do sistema monitorado

▪ Atualizadas durante a ativação do programa gbh_xxx

21
3 MANUAL DA BASE HISTÓRICA

▪ Crescimento lento, só cresce quando é gerada uma nova configuração do SAGE

▪ Contém dois atributos indicando inicio e fim de operação do recurso

▪ Armazena identificadores das tabelas dinâmicas

▪ São ligadas às tabelas dinâmicas através do atributo bh_chave

As tabelas de referência são constituídas de pelo menos seis atributos, as data/hora de inicio e fim
de operação do recurso, chave de ligação com as tabelas dinâmicas, o índice do recurso na base on-
line, o identificador do recurso na base on-line, e um atributo auxiliarem para manutenção de
alterações nas características do recurso e rastreamento.

Campo Tipo Descrição


BH_CHAVE INT Chave de ligação com a tabela de dinâmica
BH_DTHR_INI DATA Data/hora de início de operação do recurso.
BH_DTHR_FIM DATA Data/hora de fim de operação do recurso. Assume valor
NULO se o recurso está em operação.
BH_INDTR INT Índice do recurso na base on-line do SAGE. Alterado toda
vez que é gerada uma nova “base” do SAGE. Uso interno
do programa gbh_xxx.
BH_SINONIMO INT Utilizado para indicar alterações nas características
ID CHAR Identificador do recurso na base on-line do SAGE.
PROP1 XXX Propriedade um .do recurso
PROP2 XXX Propriedade dois .do recurso
. . .
. . .
. . .
PROPN XXX Propriedade N .do recurso
Tabela 3- 1

Exemplo de tabela de referência:

PAS_R : Ponto Analógico do SAGE


Campo Tipo Descrição
BH_CHAVE INT Chave de ligação com a tabela de dinâmica
BH_DTHR_INI DATA Data/hora de início de operação.
BH_DTHR_FIM DATA Data/hora de fim de operação.
BH_INDTR INT Índice do recurso na base on-line do SAGE.
BH_SINONIMO INT Utilizado para indicar alterações nas características
ID CHAR Identificador do ponto analógico.
IDEQP CHAR Equipamento associado.
ESTACAO CHAR Estação associada à medida.
HISTPER INT Período de exportação para base histórica.
NOME CHAR Nome do ponto.
TIPOE INT Tipo de grandeza.
TPEQP INT Tipo do equipamento.
EQP CHAR Equipamento associado.
TAC CHAR TAC do ponto.
Tabela 3- 2 exemplo de tabela de referência

22
3 MANUAL DA BASE HISTÓRICA

3.5.1 Tabelas de referência no PI

O histórico de dados cadastrais no servidor PI da OSIsoft é feito em duas partes. Os dados


estáticos das entidades historiadas com relacionamento com os dados do esquema Clássico da base
de pontos do PI são mapeados, configurando o atributo da base do SAGE com o mesmo nome do
respectivo parâmetro definição da tag. Por exemplo, o atributo UNIDADE de PAS que contém a
unidade da medida, é configurado para ser armazenado com o nome EngUnits no PI, que é o
parâmetro nesse servidor que indica a unidade. A topologia do sistema elétrico é armazenada na
ferramenta PI-Asset Framework ou PI-AF, que entre outras funcionalidades permite uma
navegabilidade hieráquica pelo sistema életrico monitorado. A infertace com o PI-AF encontra-se em
desenvolvimento

3.6 Tabelas Dinâmicas


Armazena os dados históricos. O número de registros vai sempre crescendo. Cada registro
contém, além dos valores históricos, a data e hora de inserção na tabela e a chave de acesso ao
registro.
Estas tabelas podem crescer muito rapidamente, dependendo do período de exportação e da
quantidade de dados exportados. Desta forma, o sistema dispõe de mecanismos para particionar este
tipo de tabela em tabelas menores para facilitar sua manutenção. A política de particionamento é
definida pelo usuário em tempo de configuração do ambiente de exportação. Esta política pode ser
diária, semanal ou mensal (banco relacional).
▪ Principais características das tabelas Dinâmicas:

▪ Grande volume de dados, crescimento continuo

▪ Esquemas de gravação conforme natureza dos dados

▪ Particionadas em várias tabelas.

▪ Armazenam séries temporais.

▪ Possuem dois tipos de registros: integridade e variação.

Uma tabela dinâmica armazena séries temporais, composta de pelo menos três atributos básicos,
um identificador, uma data/hora e um ou mais valores associados.
A tabela a seguir mostra a estrutura básica de uma tabela dinâmica:

Campo Tipo Descrição


BH_CHAVE INT Chave de ligação com a tabela de referência que possui o
identificador do recurso.
BH_DTHR DATA Data/hora da medida e/ou evento relacionado ao recurso
monitorado.
BH_VARIACAO INT Indica se o registro foi inserido devido a uma integridade
(bh_variacao=0) ou variação (bh_variacao=1).
(OPCIONAL)
VALOR1 XXX Valor medido ou estado digital.

23
3 MANUAL DA BASE HISTÓRICA

VALOR2 XXX Valor medido ou estado digital.


. . .
. . .
. . .
VALORN XXX Valor medido ou estado digital.
Tabela 3- 3 - Estrutura básica de uma tabela histórica dinâmica.

Exemplo de tabela dinâmica:

PAS_H : Ponto Analógico do SAGE


Campo Tipo Descrição
BH_DTHR DATA/HORA Data e hora de gravação da ocorrência
BH_CHAVE DATA/HORA Chave de ligação com a tabela de referência
BH_VARIACAO INT*2 Indica se a ocorrência foi gravada devido à integridade (0)
ou variação (1)
FLAG INT*4 Indicadores do ponto
FLAGEST INT*2 Indicadores do ponto para valor estimado
RESNORM REAL*4 Resíduo normalizado
RGALR UINT*1 Região de alarme
VALEST REAL*4 Valor estimado da medida
VALOR REAL*4 Valor medido
Tabela 3- 4 exemplo de tabela dinâmica

3.6.1 Tabelas Dinâmicas no PI

Para cada atributo configurado na tabela dinâmica, será gerada uma tag no PI.
Os dados da tabela de referência associada à tabela dinâmica serão utilizados na definição da tag,
e o nome do atributo especificado será utilizado como sufixo adicionado ao identificador do recurso
historiado.
Por exemplo, se configurarmos para serem historiados de uma medida analógica os valores
estimado e considerado com o nomes “v” e “e”, então para o ponto SPEMG_440_TR9_P_AMPI_1
serão criadas duas tags:
SPEMG_440_TR9_P_AMPI_1.v e SPEMG_440_TR9_P_AMPI_1.e

3.6.1.1 Compressão e exceção

Uma das caracteristicas mais marcantes do histórico em servidores PI é a possibilidade de


compressão dos dados numéricos historiados. Para ativar essa funcionalidade em um determinado
valor historiado basta configurar as tags com os campos PCOMP e PEXCP com valor igual a SIM,
como veremos mais adiante, e as taxas de compressão e exceção serão aplicadas com valores
default do PI.
Para medidas analógicas (PAS) foram criados os atributos COMPDEV e EXCDEV que permitem a
configuração das taxas de compreção e exceção por ponto de medição e apresentam default em
unidades de engenharia conforme a tabela abaixo.

24
3 MANUAL DA BASE HISTÓRICA

Tipo de Medida CompDev ExcDev


Tensão 0,2% do valor nominal 0,1% do valor nominal
Frequência 0,005 0,0025
Outras 0,1 0,2
Tabela 3- 5

3.6.2 Esquemas de Gravação

Os esquemas de gravação de tabelas dinâmicas podem ser classificados em dois grupos:


Síncronos, Assíncronos. O esquema de gravação é definido para cada tabela dinâmica através do
atributo ESQGRV no arquivo de configuração de entidades da base histórica entidade.bh.

3.6.2.1 Esquema Síncrono

O esquema síncrono é utilizado para historiar valores analógicos, isto é, que variam de forma
continua, por exemplo, medidas de tensão, potência, etc. Nesse esquema todos os valores
monitorados são varridos periodicamente e armazenados ou não no histórico conforme a modalidade
de gravação como veremos a seguir.
O período entre duas varreduras é denominado de tempo de varredura, que é um valor constante
a ser aplicado a todas as tabelas dinâmicas de esquema de gravação síncrono, que é configurado no
script de ativação do programa gbh_xxx.
O esquema está organizado em três modalidades de gravação de dados:
▪ INTEGRIDADE: Nessa modalidade todas as medidas são armazenadas a cada varredura. É
configurada através do mnemônico INTGR no campo ESQGRV de entidade.bh.

▪ INTEGRIDADE COM VARIAÇÃO: A cada varredura são testados todos os atributos da


entidade. E caso tenham variado em relação à última varredura são gravados no banco.
Em períodos predeterminados são gravados todos os valores medidos independentemente
de terem variado ou não, essas gravações são denominadas integridades e são
configuradas através do campo PEREXP da definição da entidade. O esquema pode ser
configurado através do mnemônico INTVAR. Tabelas dessa modalidade de gravação
possuem um campo denominado bh_variacao que indica se o registro foi armazenado
devido a uma integridade (bh_variacao) ou a uma variação (bh_variacao=1).

▪ INTEGRIDADE EXTERNA: Esse modelo permite a criação de lógicas de carregamento de


dados históricos definidas pelo usuário através da função filtra_<nom entidade>.cxx, que é
“acordada” periodicamente. O esquema pode ser configurado através do mnemônico
EXTINT.

25
3 MANUAL DA BASE HISTÓRICA

3.6.2.2 Esquema Assíncrono

No esquema de gravação assíncrono, alteração de valor nos atributos da entidade historiada


dispara uma varredura das informações. . É o esquema típico utilizados para historiar estados digitais
como, por exemplo, de equipamentos (ligado/desligado), chaves e disjuntores (aberto/fechado).
O esquema está organizado em duas principais modalidades de gravação:
▪ VARIAÇÃO: Toda a vez que o atributo variar na base de tempo real, e iniciada uma
varredura onde são gravados todos os estados que variaram em relação à varredura
anterior. os Em períodos predeterminados são gravados todos os estados digitais
independentemente de terem variado ou não, essas gravações são denominadas
integridades e são configuradas através do campo PEREXP da definição da entidade.
Tabelas dessa modalidade de gravação possuem um campo denominado bh_variacao que
indica se o registro foi armazenado devido a uma integridade (bh_variacao) ou a uma
variação (bh_variacao=1). O esquema pode ser configurado através do mnemônico
VARIAC.

▪ VARIAÇÃO EXTERNA: Esse modelo permite a criação de lógicas de carregamento de


dados históricos definidas pelo usuário através da função filtra_<nom entidade>.cxx, que é
“acordada” toda vez que o atributo variar na base on-line do SAGE. O esquema pode ser
configurado através do mnemônico EXTVAR.

3.6.3 Particionamento

Devido ao grande volume de dados históricos o sistema possibilita o particionamento em várias


tabelas conforme a necessidade do usuário. A política de particionamento é feita em função do
período que se deseje armazenar em cada tabela, um dia, uma semana ou um mês. No caso de não
ser definida uma política de particionamento todos os dados serão armazenado em uma única tabela.
A política de particionamento é definida através do atributo PART do arquivo entidade.bh que pode
assumir os valores DIA,SEM e MES que especificam particionamento diário, semanal e mensal
respectivamente.
A gerência das tabelas históricas é feita através de tabelas de controle como mostra a Figura 3 - 4.

26
3 MANUAL DA BASE HISTÓRICA

Figura 3 - 4- Organização dos dados históricos com política de particionamento.

O particionamento não é implementado em históricos em PI.

3.6.3.1 Nomenclatura das Tabelas Dinâmicas

O nome das tabelas históricas depende da política de particionamento definida conforme tabela a
seguir:

Partição Nome
Diária BH_<nome da entidade>_aaaa_mm_dd
Onde aaaa = Ano, mm = Mês, dd = Dia
Semanal BH_<nome da entidade>_aaaa_ss
Onde aaaa = Ano, ss = s1 a s53
Mensal BH_<nome da entidade>_aaaa_mm
Onde aaaa = Ano, mm = Mês
Tabela 3- 6

3.6.3.2 Tabelas de Controle

As tabelas de controle têm a seguinte regra para formação do nome:


BH_<nome da entidade>_CTL
Por exemplo, a tabela de controle da entidade histórica PAS_H que representa os dados de PAS
na base tempo real irá se chamar BH_PAS_H_CTL.
As tabelas de controle têm a seguinte estrutura:

27
3 MANUAL DA BASE HISTÓRICA

Campo Tipo Descrição


BH_NOME CHAR Nome da tabela que armazena a partição
BH_ESTADO CHAR Estado da partição. Pode assumir os seguintes valores:
▪ CARGA – Tabela em carga de dados.

▪ INDEX – Tabela carregada.

▪ ONLINE – Tabela carregada e disponível.

▪ OFFLINE – Tabela arquivada.

BH_DTHR DATA Data/hora de criação ou restauração da partição.


BH_DTHR_INICIO DATA Data/hora de inicio da partição.
BH_DTHR_FIM DATA Data/hora de fim da partição.
BH_ARQUIVO CHAR Estado de arquivamento da partição.
Tabela 3- 7

3.6.4 Arquivamento

Sempre que uma partição é fechada ao fim de seu período, sua tabela é exportada para um
arquivo do texto junto com os scripts SQL necessários para sua recuperação. O arquivo é gerado no
diretório especificado através da variável de ambientes $BHARQS (ver 17.1). Toda vez que uma
partição atingir a idade especificada pelo campo HORIZONTE definido em entidade.bh, em
partições, a tabela é excluída da base histórica e colocada do estado OFFLINE.

3.6.5 Seleção de Instâncias Historiadas

A fim de permitir a seleção de quais instâncias das entidades historiadas serão efetivamente
armazenadas no histórico, foi definido um mecanismo genérico para que seja possível durante a
configuração da base fonte do SAGE indicarmos se aquele recurso será ou não historiado.
Por exemplo, durante a definição do histórico de pontos de medição analógica (PAS) foi definido
que o atributo HISTSLC definido na base fonte pode assumir os valores SIM e NAO o que indica se o
ponto deve ser historiado ou não.
Essa funcionalidade é muito importante no caso de historicos no PI uma vez que a licença do
servidor é baseada no número de tags historiadas

3.7 Configurando a Base Histórica do SAGE


Como vimos anteriormente o programa de carga e a estrutura da base histórica são configuráveis
através dos arquivos texto entidade.bh e atributo.bh, onde são descritas as entidades e atributos da
base histórica.
O processo de configuração da base histórica é composto de duas etapas, a carga do catálogo da
base histórica e a geração da base histórica e configuração do programa gbh_xxx.

28
3 MANUAL DA BASE HISTÓRICA

Na primeira etapa os arquivos texto contendo a descrição da base histórica são lidos e criticados,
gerando o catálogo da base histórica.
Na segunda etapa a partir do catálogo da base histórica são gerados o programa de carga,
gbh_xxx e as estruturas da base histórica. Caso já exista uma base histórica preexistente nenhuma
alteração é feita nesta, sendo o programa de gbh_xxx responsável por eventuais alterações
necessárias na base de dados no momento de sua ativação.

Figura 3 - 5 Processo de configuração da base histórica do SAGE.

3.7.1 Configurando Entidades e Atributos da Base HISTÓRICA

A base histórica do SAGE foi desenvolvida de forma a permitir ao usuário escolher que dados do
tempo-real serão historiados, e a qualquer momento alterar a estrutura da base e os processos de
gravação sem perder a compatibilidade com os dados armazenados. A configuração é feita através
dos arquivos texto entidade.bh e atributo.bh, onde são descritas as entidades e atributos da base
histórica. Para configurar as tabelas da base histórica, devemos inicialmente selecionar que
entidades da base on-line e quais os atributos dessa base interessam a ser historiados.
Após o levantamento devem ser definidos:

▪ Tabelas de referência e seus atributos

▪ Tabelas dinâmicas e seus atributos

▪ Método de gravação das tabelas dinâmicas

▪ Período de particionamento das tabelas dinâmicas

3.7.1.1 Configurando Tabelas de Referência

Como já vimos, as tabelas de referência armazenam informações cadastrais do ambiente de


tempo real.p. Inicialmente devemos cadastrar a entidade no arquivo entidade.bh, mostrado a seguir.

ENT
NOME= <nome da entidade na base histórica>

29
3 MANUAL DA BASE HISTÓRICA

IDEN = <atributos chave (identificadores) da tabela. Permite chave múltipla.


Campos devem ser separados por espaço>
ENTBD = <entidade da base on-line associada>
LCLTABL = <nome da tablespace onde será criada a tabela. O valor default é
SAGEBHREF (Utilizado somente para histórico em banco
relacional)>
LCLINDX= <nome da tablespace onde serão criados os índices. O valor
default é SAGEBHIND (Utilizado somente para histórico em banco
relacional)>
DESCR = <descrição da tabela>

Em seguida devemos editar o arquivo atributo.bh para cadastrar os atributos das entidades que
desejamos que sejam armazenados na base histórica. Devem ser cadastrados pelo menos os
atributos indicados como chave no campo IDEN da definição da tabela.

ATR
*
NOME = <nome do atributo na base histórica>
ENT = <nome da tabela na base histórica>
ATRBD = <nome do atributo da base on-line associado>
DESCR = <descrição do atributo. Quando não fornecida obtém descrição da
entidade da base on-line.>
TIPO = <tipo do atributo. O valor default é o tipo do dado na base on-line>
TAM = <tamanho do atributo. O valor default é o tamanho do dado na base
on-line>

3.7.1.2 Configurando Tabelas Dinâmicas

As tabelas dinâmicas que contêm dados que variam durante o funcionamento do SAGE, da
mesma forma que as tabelas de referência, são configuradas nos arquivos entidade.bh e atributo.bh.
Então para inserir uma entidade dinâmica devemos inicialmente cadastrá-la no arquivo entidade.bh
da seguinte forma:

ENT
NOME= <nome da entidade na base histórica>
PEREXP = <período de integridade em segundos>
ENTID = < entidade de referencia que contem os identificadores da entidade
dinâmica >
DESCR = <descrição da entidade>
PART = < política de particionamento pode ser DIA (diária), SEM (semanal),
MÊS (mensal) ou sem particionamento caso o campo não seja
definido (Utilizado somente para histórico em banco relacional)>
ESQGRV= < esquema de gravação INTEGR (grava todas medidas a cada
varredura ), INTVAR (varreduras periódicas ), VARIAC (Varredura
por evento ), EXTINT (Lógica externa de carregamento por
varredura), EXTVAR (Lógica externa de carregamento por evento).
Ver seção referente a esquema de gravação para descrição
detalhada de cada esquema.>
LCLTABL= <nome da tablespace onde será criada a tabela. O valor default é
SAGEBHREF(Utilizado somente para histórico em banco
relacional)>
LCLINDX= < nome da tablespace onde serão criados os índices. O valor default
é SAGEBHIND (Utilizado somente para histórico em banco
relacional)>

*
Para banco de dados PI deve ser idêntico ao parâmetro da tag que se deseja mapear.

30
3 MANUAL DA BASE HISTÓRICA

HISTSLC = <atributo da entidade de referencia indicador de seleção para


histórico>
ENTBD = <entidade associada na base de dados on-line.>
HORIZONTE= <período em dias que uma partição deve ser mantida on-line
(Utilizado somente para histórico em banco relacional)>

Em seguida devemos editar o arquivo atributo.bh para cadastrar os atributos da entidade que
desejamos que sejam armazenados na base histórica. Devem ser cadastrados pelo menos um
atributo para a tabela. No banco de dados PI cada atributo representa um novo sufixo de tag. Os
atributos das tabelas dinâmicas são definidos no arquivo atributo.bh da seguinte forma:

ATR
NOME= <Nome do atributo da base histórica (ou sufixo das tags no banco
PI)>
ENT = <entidade do atributo da base histórica>
ATRBD = <Atributo associado na base online obrigatório a não ser que
ESQGRV da entidade seja EXTVAR e EXTINT>
MASCARA = <máscara a ser aplicada ao atributo antes de ser feita a
verificação de alteração. Essa máscara é utilizada no caso de
atributos do tipo WORD onde cada bit tem um significado específico
e somente desejamos gravar no banco o registro quando algum
determinado bit variar.Ver exemplo a seguir>
DESCR = <descrição do atributo>
TIPO = <tipo do atributo na base histórica (obrigatório quando ATRBD não
preenchido)>
TAM = <tamanho do atributo na base histórica (obrigatório quando ATRBD
não preenchido)>
PEXCP = <Indica que atributo vai ser historiado por exceção no PI.
(SIM,NÃO)>
PCOMP = <Indica que atributo vai ser historiado com compressão no PI.
(SIM,NÃO)>
DESTINO= <destino do atributo, Valores : TODOS[default] , RELACIONAL, PI ,
DUMMY>

3.7.1.2.1 Exemplo de uso de máscara

Como exemplo de uso de máscara temos o atributo a1_flags da entidade PDS da base de tempo
real. O atributo é do tipo WORD de 16 bits onde cada bit é representado por um nome simbólico e
informa uma característica do estado do ponto digital monitorado, conforme mostrado na tabela
abaixo que pode ser obtida a partir do arquivo $SAGE/config/$BASE/sti/gbh/lis/STI_dcatbh.html.

Simbólico Significado
K_PDS_FLG_ESTAD Estado considerado do ponto digital
K_PDS_FLG_FOVAR Fora de varredura
K_PDS_FLG_FALHA Falha de aquisição local
K_PDS_FLG_IVORG Inválido na origem
K_PDS_FLG_MAORG Manual na origem
K_PDS_FLG_MANUA Manual local
K_PDS_FLG_NINCI Não inicializado local
K_PDS_FLG_ANREC Evento de alarme não reconhecido
K_PDS_FLG_NOSUP Ponto não supervisionado
K_PDS_FLG_AINIB Alarme inibido
K_PDS_FLG_SECAL Selecionado para cálculos
K_PDS_FLG_SACOK SAC operacional neste nó
K_PDS_FLG_INVAL Inválido local

31
3 MANUAL DA BASE HISTÓRICA

K_PDS_FLG_FVORG Fora de varredura na origem


K_PDS_FLG_ALINT Gera alarme na iniciação e na integridade
K_PDS_FLG_SELAR Selecionado para análise de redes
K_PDS_FLG_SELSD Selecionado para distribuição
K_PDS_FLG_AUREC Habilitação de auto-reconhecimento
K_PDS_FLG_APLUS Selecionado para aplic. do usuário
K_PDS_FLG_ESTAQ Estado aquisitado
K_PDS_FLG_ESINI Estado inicial do ponto
K_PDS_FLG_ESREF Estado de referência do ponto - IHM
K_PDS_FLG_TRANS Indicador de trânsito /dupla transição
K_PDS_FLG_EVCAL Indicador de evento para cálculo
Tabela 3- 8

Caso desejemos gravar no histórico, somente às mudanças de estado digital do ponto, devemos
definir o atributo com o seguinte valor para o campo MASCARA:

MASCARA= K_PDS_FLG_ESTAD

Caso desejemos, além das mudanças de estado, gravar no histórico sempre que houver uma
falha de aquisição local, o campo MASCARA deverá ser definido da seguinte forma:

MASCARA= K_PDS_FLG_ESTAD K_PDS_FLG_FALHA

Qualquer combinação de valores pode ser utilizada na especificação da máscara de forma a filtrar
os eventos de gravação dos dados de PDS na base histórica.

3.8 Programa STI_dcatbh


O programa STI_dcatbh é a ferramenta utilizada para manutenção da base histórica do SAGE. O
aplicativo implementa três operações:
▪ Carga do catálogo da base histórica, os arquivos de configuração (entidade.bh e atributo.bh)
são lidos, criticados e, caso estejam corretos, armazenados no catálogo da base histórica.

▪ Configurar Base Histórica, nesse passo são geradas as estruturas da base histórica e o
programa gbh_xxx para carregamento dessas estruturas.

▪ Listar Catálogo Base Histórica, gera o dicionário de dados da base histórica em:
$SAGE/config/$BASE/sti/ghh/lis/STI_dcatbh.html.

O programa pode ser ativado através de linha de comando na conta em que foi instalado o SAGE.
Uso:
> STI_dcatbh <operação> [opções]

Onde operação inclui:


C -> Carga do catálogo da base histórica.
B -> Gera base histórica e configura programa de carga.
L -> Gera dicionário de dados da base histórica

32
3 MANUAL DA BASE HISTÓRICA

Opções:
-senha <senha> : Senha do catálogo da base histórica.
-server_bh <servidor> : Nome do servidor da base histórica.
-user_bh <usuário> : Nome do usuário da base histórica.
-senha_bh <senha> : Senha da base histórica.
-bashist <b. histórica> : Nome da base histórica
-local: Quando especificado assume que a validação para base
histórica será feita via sistema operacional, assume o
servidor especificado na variável de ambiente
SGBD_SERVER (ver 17.2) e o nome da base na variável
BASE.Caso a operação seja de configuração (B) e não
forem fornecidos o nome do servidor, nome da base,
usuário e senha da base histórica e também não for
especificado o parâmetro -local, os valores serão pedidos
pelo programa.

3.8.1 O script habilita_gbh

Com a finalidade de simplificar o processo de configuração da base histórica foi criado o script
shell “habilita_gbh” localizado em $SAGE/config/<$BASE>/sys, que contém as chamadas ao
aplicativo STI_dcatbh embutidas. O script pode ser customizado conforme a arquitetura a arquitetura
de histórico adotada.

3.9 Esquema Exemplo


A Figura 3 - 6 ilustra o esquema de histórico sugerido pelo CEPEL.

Figura 3 - 6

33
3 MANUAL DA BASE HISTÓRICA

3.10 Consolidação
Orientada principalmente para a aquisição e armazenamento de dados com precisão e robustez a
base histórica do SAGE por si só carece de uma estrutura orientada a consultas, tornado árdua a
tarefa de desenvolvimento de relatórios. Além do grande volume de informações nela contida outros
aspectos contribuem para essa dificuldade. O primeiro aspecto é que como é um retrato fiel do que
ocorreu em tempo real a base histórica está sujeita a armazenar valores inválidos decorrentes de
diversas situações corriqueiras no processo de supervisão e controle, tais como falhas de
comunicação na origem etc.
A fim de facilitar o acesso às informações da base histórica foi desenvolvido um processo de
consolidação, onde são filtradas as medidas com erro de aquisição, e também são efetuados cálculos
de forma a obter valores médios mínimos e máximos em períodos predefinidos. O resultado deste
processo é armazenado em uma base de dados consolidada. O processo de consolidação
normalmente é configurado para executar no mesmo servidor da base histórica de forma a evitar
trafego desnecessário de dados pela rede. Nada impede porém que essas configurações sejam
alteradas para atender melhor às necessidade/disponibilidades da instalação. As tabelas de
referência da base histórica são acessadas diretamente na base consolidada através de vistas e/ou
sinônimos sem que haja necessidade de duplicação dessas tabelas.

3.10.1 Configuração da Consolidação

Apesar de não ter uma configuração tão flexível quanto à da base histórica, alguns aspectos do
funcionamento da base consolidada podem ser configurados através da tabela
TABELAS_CONSOLIDACAO que é descrita a seguir.

NOME TIPO TAM DESCRIÇÃO


nome char 30 Nome da tabela consolidada.
precisão int 2 Precisao dos dados em unidades.
unidade char 30 Unidade da precisão pode ser: segundo , minuto,
hora , dia, mês ou ano.
horizonte int 2 Horizonte em dias mantido no histórico, não
preenchimento significa que os dados nunca serão
excluídos automaticamente.
origem char 30 Tabela histórica de origem pode ser: pas_h, pds_h,
eqp_h ou lia_h.
ultima_varredura data - Data da última atualização.
Tabela 3- 9

Através da tabela TABELAS_CONSOLIDACAO é possível configurar a partir das tabelas


históricas pas_h, pds_h, eqp_h ou lia_h tabelas contendo informações consolidadas e livres de
valores com inválidos com várias precisões e horizontes.

34
3 MANUAL DA BASE HISTÓRICA

3.10.2 Consolidação de Medidas Analógicas

O processo de consolidação de medidas analógicas além de eliminar valores inválidos existentes


da base histórica, determina os valores instantâneos em instantes pré-determinados no tempo,
definidos através da combinação dos campos precisão e unidade da tabela
TABELAS_DE_CONSOLIDACAO. Também são calculados os valores máximo, médio e mínimo no
período e para os valores máximos e mínimos são armazenadas as datas e horas de suas
ocorrências. Também é armazenado o número de medidas válidas no período. No caso de não existir
nenhuma medida válida no período, o ultimo valor válido é repetido e o campo total medidas é
zerado.
A Figura 3 - 7 mostra um exemplo de configuração consolidação de medidas analógicas onde
foram definidas três tabelas de medidas analógicas com precisões horária, diária e mensal.

Figura 3 - 7

A estrutura das tabelas consolidadas é mostrada a seguir:

35
3 MANUAL DA BASE HISTÓRICA

Atributo Descrição
BH_CHAVE Chave ligação com tabela de referência
BH_DTHR Data
VALOR Valor instantâneo
MAX Valor máximo no período
MAX_DTHR Data de ocorrência do máximo do período com
precisão de segundos
MIN Valor mínimo no período
MIN_DTHR Data de ocorrência do mínimo do período com
precisão de segundos
MED Valor médio no período
TOTAL_MEDIDAS Total de medidas válidas no período
Tabela 3- 10

3.10.3 Consolidação de Valores Digitais

A consolidação de valores digitais na qual se incluem PDS_H, EQP_H e LIA_H, além de eliminar
os valores inválidos gera tabelas que indicam os estados dos recursos historiados por períodos,
diferentemente da base histórica onde são armazenados os eventos de mudança de estado dos
referidos recursos. A estrutura típica desse tipo de consolidação e constituída de dois campos do tipo
data/hora indicando os momentos de início e fim do estado como mostra a tabela abaixo. A precisão
dessas tabelas é sempre de um segundo.

Atributo Descrição
BH_CHAVE Chave ligação com tabela de referência
BH_INICIO Data da transição para estado com precisão de
segundos
BH_FIM Data de transição para outro do estado com
precisão de segundos
ESTADO Estado digital.
Tabela 3- 11

Além de conseguir uma grande compactação nos dados a consolidação de valores digitais permite
através de consultas simples obter-se o estado de um recurso e um determinado momento, ou
quanto tempo o recurso permaneceu ligado ou desligado. A consolidação transforma um conjunto de
registros de eventos esparsos no tempo em uma estrutura mais amigável conforme mostrada na
Figura 3 - 8.

36
3 MANUAL DA BASE HISTÓRICA

Figura 3 - 8

3.10.4 Instalação da Consolidação

A base de dados histórica consolidada atualmente está disponível para os bancos de dados
Postgresql e Oracle. Como deve ser executada junto com o servidor de banco de dados, sua
distribuição é feita através dos fontes para que possam ser compiladas em qualquer ambiente
independe do sistema operacional utilizado. Os pré-requisitos para sua instalação além da base
histórica estar operacional, são necessários estar instalados no servidor um compilador C, um
utilitário de construção de sistemas semelhante ao GMAKE e o pré-compilador SQL Embutido do
banco (Proc para o Oracle e ECPG para Postgresql). Para instalar siga os seguintes passos:
1. Criar uma conta sage no servidor, tanto faz os shell utilizado.

2. Verificar se o compilador C e o MAKE estão acessíveis na conta sage, talvez seja


necessário configurar variáveis de ambiente PATH, LD_LIBRARY_PATH entre outras,
verifique a documentação do sistema operacional.

3. Verificar se os utilitários do banco de dados estão acessíveis na conta sage, talvez


seja necessário configurar variáveis de ambiente PATH, LD_LIBRARY_PATH entre
outras, verifique a documentação do banco de dados.

4. Expandir/descompactar na conta recém criada o arquivo com os arquivos fonte da


consolidação, fornecido pelo CEPEL.

5. Entrar no subdiretório consbh criado no passo anterior e executar o comando make


para gerar os binários da consolidação. Se tudo correr bem terá sido criado o binário
consolida_bh no subdiretório ~sage/consbh/bin.

6. Editar o arquivo gera_base.sql para alterar a base do sage no default que é


demo_ems para a base desejada, instruções no próprio script.

7. Criar estruturas da base consolidadas, executando o script gera_base.sql modificado


no passo anterior.

8. Uma vez criada a estrutura da base consolidada, alterar a tabela


TABELAS_CONSOLIDACAO definindo os horizontes e precisões desejados.

37
3 MANUAL DA BASE HISTÓRICA

9. Programar o crontab para executar o script ~sage/consbh/executa_consolida_bh a


cada hora ou período desejado, instruções no próprio script.

3.11 Cálculo Tamanho da Base de Dados


HISTÓRICA
Uma questão muito importante na implementação de uma base de dados histórica é a definição do
espaço em disco necessário para armazenar os dados no período desejado.
Como já vimos anteriormente, a base de dados histórica do SAGE é constituída basicamente de
dois tipos de tabelas, as de referência e as dinâmicas.
As tabelas de referência crescem somente quando uma nova versão de base on-line é gerada, ou
seja, a sua expansão acompanha o crescimento do sistema elétrico monitorado. Já as tabelas
dinâmicas crescem continuamente, pois armazenam os valores medidos em um determinado
instante.
De uma forma geral podemos dizer que o tamanho total da base histórica do SAGE é igual à soma
do espaço necessário para o armazenamento das tabelas dinâmicas e seus índices com o espaço
necessário para as tabelas de referência e seus índices.
Tamanho total = Tabelas de Referência + Tabelas Dinâmicas
Como o tamanho das tabelas de referência é insignificante em relação ao tamanho das tabelas
dinâmicas, e pouco influencia no tamanho total da base histórica, podemos estipular um espaço de
100MB para seu armazenamento. Donde temos:
Tamanho total = 100 + Tabelas Dinâmicas

3.11.1 Tamanho de Tabelas DINÂMICAS

O espaço total requerido para o armazenamento das tabelas dinâmicas é composto do somatório
dos tamanhos das tabelas dinâmicas no período que desejamos manter disponível no banco de
dados.

Tamanho Total Tabelas Dinâmicas = ∑ TTD


Onde:
▪ TTD: Tamanho Tabela Dinâmica

Anteriormente vimos que uma tabela dinâmica, na verdade, é composta por várias tabelas que
armazenam os dados de um determinado período ao qual chamamos de partição. Então para
determinar o espaço necessário para o armazenamento dos dados de uma determinada tabela
dinâmica devemos multiplicar o tamanho de uma partição pelo número de partições contidas no
período disponível no banco. Ou seja:

TTD = (Período / Período Partição) * Tamanho Partição


Onde:
▪ Período: Período que desejamos manter disponível no banco de dados em segundos.

▪ Período Partição: Período em segundos da partição que pode ser diária, semanal ou mensal.

38
3 MANUAL DA BASE HISTÓRICA

▪ Tamanho Partição: É o espaço em disco necessário para armazenamento dos dados no


período de partição definido. O tamanho de uma partição é calculado baseado na seguinte
fórmula:

Tamanho Partição = Integridade + Variação


Onde:
▪ Integridade: Espaço necessário para gravar registros de integridade. É calculado pela
fórmula:

Integridade = (Período Partição / Período Integr.) * npontos * tamreg


e
▪ Variação: Espaço necessário para armazenamento dos registros gravados devido à
variação de valor ou estado. O seu valor é obtido conforme o esquema de gravação
definido para a tabela histórica.

Para esquemas de gravação baseados em varreduras periódicas temos a seguinte fórmula:

Variação = (Período Partição / varredura) * npontos * tamreg * txvar

Para esquemas de gravação baseados em eventos temos a fórmula:

Variação = (Período Partição) * npontos * tamreg * txvar

Onde:
▪ npontos: Número de registros na tabela de referência relativa à tabela histórica.

▪ txvar: Taxa de variação. É a razão entre o total de medidas gravadas devido à variação e o
total de medidas gravadas na tabela. O valor inicial default para entidades com esquema
de gravação por varredura é 0,5 e para as de esquema baseado em eventos é 0,000007.
Esse valor é atualizado automaticamente pelo gbh_xxx baseado no comportamento do
sistema elétrico monitorado.

▪ varredura: Período de varredura em segundos.

▪ tamreg: Tamanho do registro da tabela histórica em bytes. O tamanho do registro é


calculado através da soma dos tamanhos dos seus campos que são obtidos através da
seguinte tabela:

Tipo Campo Tamanho no Oracle Tamanho no Informix


CHAR Número de caracteres Número de caracteres
INT 4 4
FLOAT 4 4
DATE 7 8
Tabela 3- 12

39
3 MANUAL DA BASE HISTÓRICA

3.12 Parâmetros de Ativação do gbh_xxx


Alguns comportamentos do programa de carga da base histórica são definidos como parâmetros
de ativação do programa. Para alterá-los basta editar o arquivo $SAGE/bin/scripts/gbh_xxx_on.rc e
modificar a linha de ativação do programa.

Parâmetro Descrição
-tmsgalr Período, em segundos, para reenvio de mensagens de alarme. Valor
default 1800 segundos.
-dadv <valor> Percentual de ocupação do disco de salvaguarda a partir do qual será
emitido alarme de advertência. Valor default 85%.
-dmin <valor> Percentual de ocupação do disco de salvaguarda a partir do qual será
emitido alarme de urgência, e a salvaguarda será interrompida. Valor
default 95%.
-varred <período> Período de varredura em segundos. Valor default 60 segundos. Valor
mínimo 60 segundos.
-debug Ativa o programa no modo de depuração.
-stat <período> Período em horas para atualização de estatísticas do banco de
dados. Valor default 6 horas.
-não_busca_rede Desabilita busca de arquivos de salvaguarda na rede do SAGE
-nao_arquiva Desabilita arquivamento
-caractere_separador ‘,’ Caractere separador utilizado no arquivamento
Tabela 3- 13

40
4
Capítulo

4 Simulação do Tráfego de Dados de


Tempo Real no SAGE (sim-tr)

O Simulador do Tráfego de Mensagens de Tempo Real (SIM-TR) permite o envio de mensagens


ao SAC, simulando a atividade dos conversores de protocolo, na aquisição.
O SIM-TR trabalha a partir de um arquivo de simulação no formato ASCII, construído sob regras
pré-definidas, para um determinado “noh” da base de dados do SAGE, podendo-se escolher a opção
de execução contínua ou passo a passo das instruções deste arquivo.
Logo, ao ser executado, o SIM-TR interpreta o arquivo de simulação e envia ao SAC as
mensagens no formato preconizado pelo protocolo TAC do SAC (protocolo de terminais virtuais de
aquisição e controle).
Outra função do SIM-TR, associada à simulação do comportamento dos conversores de
protocolos, é responder ao SAC os pedidos de controle supervisório originados na interface homem-
máquina do Subsistema de Interface Gráfica (SIG).

4.1 Sintaxe de Ativação


O utilitário é ativado pela seguinte sintaxe:
sim-tr <arq_de_sim> <nome_nó> [passo] [usaMm]

Onde:
▪ arq_de_sim → é o nome do arquivo de simulação que contém os comandos a serem
enviados para o SAC em protocolo TAC;

▪ nome_nó → é o nome do nó da base de dados cuja configuração será considerada para


efeito de validação dos nomes e índices utilizados e para geração automática de tráfego;

▪ [passo] → keyword usada para executar o programa de simulação passo a passo.

▪ [usaMm] → opção que admite o uso de letras maiúsculas e minúsculas nos identificadores
usados no script, utilizada para simulações do protocolo 61850. Quando esta opção é
usada é preciso escrever todos os comando e subcomandos do script utilizando letras
maiúsculas. Exemplo: substituir VAR méd i1 por VAR MED i1.

41
4 SIMULAÇÃO DO TRÁFEGO DE DADOS DE TEMPO REAL NO SAGE (SIM-TR)

Ao ser ativado o utilitário exibe a tela mostrada a seguir:

Figura 4- 1 - Simulação em andamento.

4.2 Construção de Cenários de Simulação


Toda simulação é feita considerando a configuração do banco de dados de tempo real que
determina uma relação hierárquica entre as entidades:
▪ NÓ - Estações da rede de difusão confiável do banco de dados de tempo real.

▪ LIG - Ligações de dados existentes entre o sistema SAGE e outros Centros de Controle,
Unidades Terminais Remotas ou Controladores Lógicos Programáveis, vinculadas à
operacionalização de um NÓ.

▪ TAC - Terminais Virtuais de Aquisição e Controle que agrupam logicamente pontos de


aquisição e controle vinculados a uma Ligação LIG.

▪ DIG - Ponto de aquisição digital pertencente a uma TAC.

42
4 SIMULAÇÃO DO TRÁFEGO DE DADOS DE TEMPO REAL NO SAGE (SIM-TR)

▪ MED - Ponto de aquisição de medida analógica, pertencente a uma TAC.

▪ TOT - Ponto de aquisição de medida totalizada, pertencente a uma TAC.

Na análise sintática das linhas do arquivo de simulação, o SIM-TR procura pelo símbolo > (menor
que). Após esse símbolo deve existir um comando que pode ser acompanhado de um ou mais
parâmetros e um ou mais subcomandos. Cada subcomando também pode ser acompanhado de um
parâmetro.
A seguir serão descritas as diretivas para arquivos de simulação do SIM_TR:

4.2.1 Subcomandos

TAC(s) - Requer o parâmetro ind que especifica o índice da TAC (1 a "n") para a qual a
mensagem será simulada. Só serão considerados válidos os números que indicam as TACs
configuradas no nó que se está simulando. É aconselhável a utilização de nomes de TACs ao invés
desse comando, para que uma reconfiguração do banco de dados não afete a validade do arquivo de
simulação.
Sintax > TAC ind
e:

PTO(s) - Requer o parâmetro ipt que especifica o índice relativo do ponto (1 a "n") na TAC. Tanto
o índice ipt do ponto, quanto o índice ind da TAC, podem ser informados pelo INFO-TR a partir do
nome do ponto. É aconselhável a utilização de nomes de pontos ao invés desse comando, para que
uma reconfiguração do banco de dados não afete a validade do arquivo de simulação.
Sintax > PTO ipt
e:

VAL(s) - Requer o parâmetro val que especifica o novo valor de uma medida ou totalizador, ou o
novo estado de um ponto digital.
Sintax > VAL val
e:

REL(s) - Requer o parâmetro val que especifica o valor que será somado (ou subtraído se
precedido do sinal "menos") ao valor corrente de uma medida, totalizador ou estado digital.
Sintax > REL val
e:

PCT(s) - Requer o parâmetro val que especifica o valor percentual sobre a escala que será
somado (ou subtraído se precedido do sinal "menos") ao valor corrente de uma medida ou totalizador.
Sintax > PCT val
e:

43
4 SIMULAÇÃO DO TRÁFEGO DE DADOS DE TEMPO REAL NO SAGE (SIM-TR)

INI(s) - Requer o parâmetro val que especifica o valor que será somado (ou subtraído se
precedido do sinal "menos") ao valor médio dos limites de advertência de uma medida ou totalizador.
Sintax > INI val
e:

INV(s) - Requer o parâmetro stat que especifica a nova condição de validade (valor zero) ou
invalidade (valor diferente de zero) do ponto aquisitado.
Sintax > INV stat
e:

MAN(s) - Requer o parâmetro val que especifica o novo valor de uma medida ou totalizador, ou o
novo estado de um ponto digital que será recebido pelo SAC como inserido manualmente na origem.
Sintax > MAN val
e:

QNT(s) Requer o parâmetro nptos que especifica o número de pontos que serão assinalados
como pontos que sofreram variação.
Sintax > QNT nptos
e:

SEG(s) - Requer o parâmetro sg que especifica a quantos segundos passados da hora corrente
ocorreu o evento reportado no comando SDE.
Sintax > SEG sg
e:

MIL(s) - Requer o parâmetro ml que especifica qual o milisegundo relativo ao segundo definido
pelo subcomando SEG em que ocorreu o evento especificado no comando SDE.
Sintax > MIL ml
e:

4.2.2 Comandos

PER(c) - Requer o parâmetro tmp que especifica a periodicidade, em segundos, que o simulador
usará para efetuar o envio automático de mensagens de varredura de integridade digital, analógica e
de pontos totalizadores. Nessas mensagens são atualizados todos os pontos de todas as TACs de
todas as ligações atendidas pelo nó que se está simulando. Esse comando não requer subcomandos.
Sintax > PER tmp
e:

ESP(c) - Requer o parâmetro tmp que especifica o tempo em segundos que o simulador
aguardará para prosseguir com a simulação. Caso esse valor seja zero, o SIM-TR aguardará a

44
4 SIMULAÇÃO DO TRÁFEGO DE DADOS DE TEMPO REAL NO SAGE (SIM-TR)

digitação da tecla <ENTER> para continuar com a execução do programa de simulação. Esse
comando não requer subcomandos.
Sintax > ESP tmp
e:

LGN(c) - Requer o subcomando TAC ou o parâmetro nome_tac que especifica o nome de uma
TAC pertencente a uma ligação do nó que se está simulando. Esse comando é usado para
especificar qual das TACs atendidas nesse nó ficou com a ligação de dados inoperante.
Sintax > LGN TAC ind
e: > LGN nome_tac

LGO(c) - Requer o subcomando TAC ou o parâmetro nome_tac que especifica o nome de uma
TAC pertencente a uma ligação do nó que se está simulando. Esse comando é usado para
especificar qual das TACs teve a ligação de dados restabelecida.
Sintax > LGO TAC ind
e: > LGO nome_tac

INT(c) - Requer o parâmetro tip e o parâmetro nome_tac. O parâmetro tip especifica o tipo dos
pontos reportados na mensagem de integridade que será enviada. Uma das keywords dig, med ou tot
deve ser usada para especificar se os dados são respectivamente relativos aos pontos digitais,
analógicos ou totalizadores da TAC. O parâmetro nome_tac especifica o nome da TAC a ser
simulada e pode ser substituído pelo comando TAC. Na mensagem de integridade são atualizados
todos os dados do tipo e TAC especificados.
Sintax > INT tip TAC ind
e: > INT tip nome_tac

VAR(c) - Requer os parâmetros tip, nome_ponto, e um dos subcomandos dentre VAL, REL, INV,
PCT, INI ou MAN. O parâmetro tip é idêntico ao usado no comando INT. O parâmetro nome_ponto
especifica o nome do ponto para o qual é simulada uma variação e pode ser substituído pelos
subcomandos TAC e PTO. Os subcomandos especificam qual será o valor da variação e a alteração
ou não dos atributos de qualidade do ponto.
Sintax > VAR tip nome_ponto VAL val
e: > VAR tip PTO ipt VAL val
> VAR tip nome_ponto REL val
> VAR tip nome_ponto INV val
> VAR tip nome_ponto PCT val
> VAR tip nome_ponto INI val
> VAR tip nome_ponto MAN val

45
4 SIMULAÇÃO DO TRÁFEGO DE DADOS DE TEMPO REAL NO SAGE (SIM-TR)

NVR(c) - Requer os mesmos parâmetros e subcomandos do comando VAR e mais o subcomando


QNT para especificar a quantidade de pontos, a partir do ponto especificado no comando, para os
quais serão simuladas as variações.
Sintax > NVR tip nome_ponto VAL val QNT nptos
e: > NVR tip PTO ipt VAL val QNT nptos
> NVR tip nome_ponto INV val QNT nptos

Obs.: O comando NVR baseia-se na ordem e na quantidade dos pontos dentro da TAC, logo,
nptos deve ser determinado de forma coerente com estas informações.

SDE(c) - Requer parâmetro nome_ponto ou o subcomando PTO e os subcomandos VAL, SEG e


MIL, para especificar a transição para o estado especificado em VAL de um evento da seqüência de
eventos, no instante especificado pelos subcomandos SEG e MIL.
Sintax > SDE nome_ponto VAL val SEG sg MIL ml
e: > SDE PTO ipt VAL val SEG sg MIL ml

CIC(c) - Requer o parâmetro pc que marca uma linha do arquivo de simulação como início de um
ciclo.
Sintax > CIC pc l
e:

LOP(c) - Requer os parâmetros num e pc que determinam a execução de num ciclos do código de
simulação a partir do ponto de ciclo pc previamente marcado até o comando LOP.
Sintax > LOP num pc
e:

GRV(c) - Requer o parâmetro 'nome_do_arquivo' que especifica em que arquivo será gravado o
conteúdo traduzido do cenário de simulação. A tradução efetuada nesse arquivo é a substituição dos
nomes de pontos e TAC existentes por seus respectivos índices. Essa tradução aumenta o
desempenho do simulador já que evita pesquisas sobre nome dos pontos.
Sintax > GRV nome_do_arquivo
e:

Obs.: Caso um arquivo de simulação tenha um número muito grande de nomes de pontos ou
TAC, é preferível criar uma versão traduzida colocando-se o comando GRV antes do comando FIM.
Para isso o usuário deverá deixar sempre depois de um nome de TAC ou de ponto, um espaço em
branco a ser utilizado por ocasião da substituição dos nomes pelos índices.

FIM(c) - Não requer parâmetro ou subcomandos, e é usado para encerrar o programa de


simulação.

46
4 SIMULAÇÃO DO TRÁFEGO DE DADOS DE TEMPO REAL NO SAGE (SIM-TR)

Sintax > FIM


e:

A seguir é apresentado um exemplo de arquivo de simulação.


No exemplo, o usuário define um cenário onde o valor de duas medidas de potencia aumenta,
diminui e retorna ao valor inicial, num formato dente-de-serra de 40 MW pico-a-pico em passos de 2
MW a cada 1 segundo, quando uma variação de estado digital com SOE associado a um
desligamento altera o valor da mesma para zero. Em seguida, 20 segundos depois, um religamento
daquele estado digital faz com que o valor retorne novamente ao estado inicial. Esse cenário se
repete 1000 vezes.
# *************************************************************
# * Programa 1 de Simulacao do Trafego de Aquisicao *
# * Simulacao de Pontos da Base demo_ems *
# *************************************************************
#
> LGO US01 ; coloca TAC operacional
> INT med US01 ; coloca dados como validos
> INT dig US01 ;
> VAR dig C2E02ADB1B VAL 1 ; (disjuntor fechado)
> VAR med C2E02AE03ALT1MW VAL 500.0 ; coloca valores iniciais
> VAR med C2E02AE03ALT1MR VAL 200.0 ;
> ESP 0 ; aguarda <ENTER>
> CIC 1 ; marca ponto 1 de ciclo
#
> CIC 2 ; marca ponto 2 de ciclo
> VAR med C2E02AE03ALT1MW REL 2.0 ; rampa de mais 20 MW
> VAR med C2E02AE03ALT1MR REL 2.0 ; ... em steps de 2.0 MW
> ESP 1 ; espera 1 seg
> LOP 10 2 ; cicla 10 vezes em 2
#
> CIC 3 ; marca ponto 3 de ciclo
> VAR med C2E02AE03ALT1MW REL -2.0 ; rampa de menos 40 MW
> VAR med C2E02AE03ALT1MR REL -2.0 ; . em steps de 2.0 MW
> ESP 1 ; espera 1 seg
> LOP 20 3 ; cicla 20 vezes em 3
#
> CIC 4 ; marca ponto 4 de ciclo
> VAR med C2E02AE03ALT1MW REL 2.0 ; rampa de mais 20 MW
> VAR med C2E02AE03ALT1MR REL 2.0 ; ... em steps de 2.0 MW
> ESP 1 ; espera 1 seg
> LOP 10 4 ; cicla 10 vezes em 4

47
4 SIMULAÇÃO DO TRÁFEGO DE DADOS DE TEMPO REAL NO SAGE (SIM-TR)

#
> SDE C2E02ADB1B VAL 0 SEG 1 MIL 123 ; disjuntor abriu !
> VAR med C2E02AE03ALT1MW VAL 0.0 ; medidas zeraram
> VAR med C2E02AE03ALT1MR VAL 0.0 ;
> ESP 20 ; aguarda 20 seg
> SDE C2E02ADB1B VAL 0 SEG 1 MIL 345 ; disjuntor fechou
> VAR med C2E02AE03ALT1MW VAL 500.0; recoloca valores iniciais
> VAR med C2E02AE03ALT1MR VAL 200.0 ;
> ESP 1 ; espera 1 seg
> LOP 1000 1 cicla 1000 vezes em 1
> FIM

Caso um arquivo de simulação tenha um número muito grande de nomes de pontos ou TAC,
sugere-se criar uma versão traduzida colocando-se o comando GRV antes do comando FIM.
Na versão traduzida os nomes serão substituídos por índices o que aumentará o desempenho da
simulação. Para isso o usuário deverá deixar sempre depois de um nome de tac ou de ponto um
espaço em branco a ser utilizado por ocasião da substituição dos nomes pelos índices.

4.2.3 Simulação de Controle Supervisório

Para utilizar comandos de controle supervisório da IHM do SAGE no ambiente de teste onde é
utilizado o SIM-TR, deve-se criar um script-shell de simulação residente no diretório
$SAGE/config/$BASE/simul com o nome exec_ctrl_<identificador_do_ponto_CGS>.
Esse script-shell será ativado com o parâmetro 'trip', 'close' ou o valor de um set-point sempre que
o controle do ponto <nome_do_ponto_CGS> for acionado, e a variável de ambiente TREINAMENTO
(ver capítulo 17) tiver sido carregada com o valor 'sim' no arquivo SSC_Amb.
O script poderá conter qualquer comando shell (ex: execução de um fluxo de potência) e,
principalmente, comandos sim-tr para arquivos que simulem cenários compatíveis com o ponto de
controle acionado.
A seguir é apresentado um exemplo de script-shell acionado por comando de controle
supervisório da IHM do SAGE no ambiente do SIM-TR.
No exemplo, o script testa o valor do comando e, baseado nele vai ativar um ou outro cenário de
simulação.
#!/bin/sh
#
# Simulacao de controle Raise Lower
#
sagelog sim-tr "Ativacao de simulacao com parametro $1"
cd $BD/../simul
##if [ $1 -gt 0 ]
if [ "$1" == "0.00" ]

48
4 SIMULAÇÃO DO TRÁFEGO DE DADOS DE TEMPO REAL NO SAGE (SIM-TR)

then
sim-tr sim_uge_lower srv1
else
sim-tr sim_uge_raise srv1
fi
exit

49
4 SIMULAÇÃO DO TRÁFEGO DE DADOS DE TEMPO REAL NO SAGE (SIM-TR)

50
5
Capítulo

5 Monitores de Mensagem

5.1 MMD – Monitor de Mensagens de Distribuição


O utilitário MMD permite monitorar o tráfego de mensagens e eventos transmitidos e recebidos
pelo SDD aos/dos Conversores de Protocolo, no protocolo interno do SAGE, protocolo TAC.
O utilitário é ativado pela seguinte sintaxe: mmd [-t], onde, o parâmetro -t é opcional.
Ao ser ativado, sem a utilização do parâmetro -t, o utilitário exibe uma tela, exteriorizando
mensagens, enviadas pelo SDD aos conversores
Caso o utilitário fosse chamado com a opção -t, mostraria também, os pedidos dos conversores
que geraram o envio dessas mensagens, uma vez que o SDD não envia nada aos conversores
espontaneamente, apenas mediante pedido por parte dos mesmos. Esses pedidos apareceriam com
uma seta no sentido contrário às do exemplo.
As mensagens contendo pedidos que são enviadas pelos conversores de protocolo ao SDD,
provocam a exteriorização no seguinte formato:
Msg no <i> `as <t> <- pedido AÇÃO_TIPO da TDD <e>

As mensagens contendo respostas , que são enviadas pelo SDD ao conversor de protocolo que
as solicitou, provocam a exteriorização no seguinte formato:
Msg no <i> `as <t> -> <n> grupos AÇÃO_TIPO da TDD <e>

Onde:
▪ <i> informa o número seqüencial da mensagem, desde o início da monitoração;

▪ <t> informa a hora em que a mensagem foi transmitida ou recebida pelo SDD no formato
hora:minuto:segundo;

▪ <n> informa o número de grupos de pontos incluídos nas mensagens de resposta, onde
cada grupo é composto de 16 pontos;

▪ <e> informa o endereço absoluto (1-n) da TDD.

Nesses formatos exteriorizados, a seta para esquerda indica o sentido da chegada de um pedido
ao SDD, e a seta para a direita indica o sentido do envio de uma resposta transmitida pelo SDD para
o conversor de protocolos.

51
5 MONITORES DE MENSAGEM

Logo, cada mensagem transmitida pelo SDD provoca a exteriorização pelo MMD de uma
mensagem, contendo sempre o número seqüencial da mensagem a partir do início da monitoração, a
hora em que a mensagem foi transmitida pelo SDD, o número de grupos de pontos transmitidos na
mensagem, onde cada grupo é composto de 16 pontos e o endereço absoluto do TDD, ao qual a
mensagem se refere.
Além disso, as mensagens possuem uma ação e um tipo, descritos abaixo.

Tipos

Os tipos possíveis são listados a seguir:


▪ IDIG - Informa que a mensagem contém dados de integridade ou inicialização de pontos
digitais da TDD. Nessas mensagens são reportados todos os dados digitais da TDD;

▪ IMED - Idem para pontos analógicos;

▪ ITOT - Idem para pontos totalizados;

▪ VDIG - Informa que a mensagem contém dados reportando variações de valor ou de


qualquer atributo de qualidade de pontos digitais;

▪ VMED - Idem para pontos analógicos;

▪ VTOT - Idem para pontos totalizados;

▪ SQEV - Idem para reportes de seqüência de eventos com atributo de tempo para cada
ocorrência de variação de ponto na mensagem.

Ações

As ações possíveis são listadas a seguir:


▪ ATLZ - Informa que está sendo feita uma atualização de inicialização, de integridade, ou de
variação para dados digitais, analógicos ou totalizadores distribuídos.

O MMD reporta atualizações (ATLZ) de inicialização, integridade e variação para pontos digitais,
analógicos e totalizadores distribuídos e atualizações de seqüência de eventos (ATLZ_SQEV) para
pontos digitais, e os pedidos que originam essas atualizações.

5.2 MMF – Monitor de Mensagens Físicas


O utilitário MMF é um Monitor de Mensagens Físicas transmitidas/recebidas pelos Conversores de
Protocolo, o qual permite monitorar o tráfego de mensagens transmitidas e recebidas pelas linhas de
comunicação ligadas ao SAGE em qualquer protocolo utilizado. Na chamada deste monitor passam-
se como parâmetros: o conversor a ser monitorado, se é desejado monitorar tanto transmissão (tx)
como recepção (rx) ou apenas uma delas, e a partir de que índice de ponto reportado na mensagem
se deseja que a monitoração seja iniciada.

52
5 MONITORES DE MENSAGEM

O utilitário é ativado pela seguinte sintaxe: mmf conv [[tx][rx] [índice]]


Onde:
con indica o conversor de protocolo cujas mensagens serão monitoradas, e
v- pode assumir os seguintes valores:
▪ cno para o Conversor SINSC Modo Mestre;

▪ cos para o Conversor SINSC Modo Escravo;

▪ c32 para o Conversor do Protocolo Conitel;

▪ rdac para o Conversor de Protocolo Redac 70F da Westinghouse;

▪ ln57 para o Conversor de Protocolo LN57 da Leeds & Northrup;

▪ i101 para o Conversor de Protocolo IEC 870-5-101;

▪ dnp3 para o Conversor de Protocolo DNP 3.0 da Harris;

▪ modb para o Conversor de Protocolo MODBUS.

Para qualquer protocolo monitorado, o MMF apresenta a hora da transmissão ou recepção da


mensagem e uma seta para direita se a mensagem é de transmissão ou uma seta para esquerda se
a mensagem foi recebida. A partir daí é exteriorizada a mensagem cujo formato varia de acordo com
o protocolo sendo monitorado.
A exteriorização das mensagens é feita em um terminal (xterm do sistema operacional), mas
também pode ser gravada em disco. Por exemplo, a chamada para monitoração de mensagens
apenas de transmissão, a partir do índice 100, para o protocolo IEC 870-5-101, sendo gravada no
arquivo i101.log, a ser localizado no diretório $LOG, ficaria assim:
\mmf i101 tx 100 | tee $LOG/i101.log
O arquivo gerado pela monitoração pode ser posteriormente manipulado através do Visor de Logs
do SIG, podendo, portanto, ser utilizadas todas as facilidades fornecidas por este módulo para
procura, seleção, compactação, impressão etc.

5.3 MML – Monitor de Mensagens Lógicas


O utilitário MML permite monitorar o tráfego de mensagens e eventos recebidos pelo SAC, no
protocolo interno do SAGE, protocolo TAC.
O utilitário é ativado pela seguinte sintaxe: mml e exibe uma tela, exteriorizando mensagens.
Cada mensagem ou pedido recebido pelo SAC provoca a exteriorização pelo MML de uma
mensagem em um dos formatos abaixo:
Msg no <i> `as <t> <- <n> grupos AÇÃO_TIPO da TAC <e>
Msg no <i> `as <t> <- ponto <p> AÇÃO_TIPO na TAC <e>
Msg no <i> `as <t> <- contrl <h> AÇÃO_TIPO na TAC <e>
Msg no <i> `as <t> <- AÇÃO_TIPO da TAC <e>

53
5 MONITORES DE MENSAGEM

Onde:
▪ <i> informa o número seqüencial da mensagem a partir do início da monitoração;

▪ <t> informa a hora em que a mensagem começou a ser tratada pelo SAC no formato
hora:minuto:segundo.milissegundo;

▪ <n>informa o número de grupos de pontos recebidos na mensagem, onde cada grupo é


composto de 16 pontos;

▪ <p> informa o índice relativo (1-n) na TAC do ponto individual que está sendo reportado;

▪ <h> informa a hora da ação de controle que está sendo reportada;

▪ <e> informa o endereço absoluto (1-n) da TAC.

Logo, cada mensagem ou pedido recebido pelo SAC provoca a exteriorização pelo MML de uma
mensagem, contendo sempre seu número seqüencial a partir do início da monitoração, a hora em
que a mensagem começou a ser tratada pelo SAC, o número de grupos de pontos recebidos na
mensagem, onde cada grupo é composto de 16 pontos, se for o caso, e o endereço absoluto da TAC,
a qual a mensagem se refere.
Além disso, as mensagens possuem uma ação e um tipo, descritos abaixo.

Tipos

Os tipos possíveis são listados a seguir:


▪ NPRI - Informa que o SAC detectou uma transição de estado do nó na qual ele passou do
estado secundário para o estado primário;

▪ TRON - Informa que o SAC detectou o estado do outro nó em secundário ou falha;

▪ SINI - Informa que o SAC detectou a operacionalização do nó local;

▪ EPRC - Informa que o SAC detectou erro no subprocesso de recepção de comandos;

▪ LIGC - Informa que a mensagem reporta um evento associado a uma transição de estado
da conexão de dados existente com a TAC;

▪ IDIG - Informa que a mensagem contém dados de integridade ou inicialização de pontos


digitais da TAC. Durante uma inicialização, assume-se que os dados anteriores não têm
vínculo de comparação com os dados que estão sendo reportados. Durante uma
integridade exige-se que os dados reportados sejam iguais aos dados armazenados no
banco de dados;

▪ IMED - idem para pontos analógicos;

▪ ITOT - idem para pontos totalizados;

54
5 MONITORES DE MENSAGEM

▪ VDIG - Informa que a mensagem contém dados reportando variações de valor ou de


qualquer atributo de qualidade de pontos digitais;

▪ VMED - Idem para pontos analógicos;

▪ VTOT - Idem para pontos totalizados;

▪ SQEV - Idem para reportes de seqüência de eventos com atributo de tempo para cada
ocorrência de variação de ponto na mensagem;

▪ ATVC - Informa que foi solicitada a ativação de uma sessão de controle supervisório;

▪ SUCC - Informa que a sessão de controle supervisório terminou com sucesso;

▪ ERRC - Informa que a sessão de controle supervisório terminou sem sucesso.

Ações

As ações possíveis são listadas a seguir:


▪ ATLZ - Informa que está sendo feita uma atualização de inicialização, de integridade ou de
variação para dados digitais, analógicos ou totalizadores, de acordo com o tipo reportado
na mensagem;

▪ CTRL - Informa que a mensagem contém uma das etapas da sessão de controle
supervisório;

▪ OPER - Informa que a conexão de dados com a TAC ficou operacional, isto é, a
comunicação de dados que serve à aquisição dos dados dessa TAC entrou em serviço;

▪ INOP - Informa que a conexão de dados com a TAC ficou inoperante, isto é, a comunicação
de dados que serve à aquisição dos dados dessa TAC saiu de serviço;

▪ EMVR - Informa que o ponto reportado foi colocado "em varredura", ou seja, os valores
relativos a sua aquisição voltaram a ser considerados para armazenamento no banco de
dados;

▪ FOVR - Informa que o ponto reportado foi retirado de varredura, ou seja, os valores relativos
a sua aquisição passaram a ser desconsiderados para armazenamento no banco de
dados;

▪ HALR - Informa que o ponto reportado teve restaurada a sua capacidade de provocar
alarmes;

▪ IALR - Informa que o ponto reportado não mais causará registro de alarme, ou seja, a
geração de alarmes para este ponto está inibida;

55
5 MONITORES DE MENSAGEM

▪ HAUR - Informa que o ponto reportado teve restaurada a sua capacidade de auto-
reconhecimento;

▪ IAUR - Informa que o ponto reportado teve inibida a sua capacidade de auto-
reconhecimento, ou seja, o auto-reconhecimento foi inibido;

▪ RCNH - Informa que o registro de alarme, reportado pelo sistema para o ponto, foi
reconhecido pelo operador do sistema;

▪ NEST - Informa que o valor aquisitado para a medição voltou a ser considerado aceitável
pelo programa "Estimador de Estado";

▪ ESTI - Informa que a medição reportada foi considerada com erro grosseiro de aquisição de
dados e passou a ser estimada pelo programa "Estimador de Estado";

▪ DSUB - Informa que o valor aquisitado para a medição voltou a ser considerado, deixando
de ser substituído pelo programa "Estimador de Estado".

▪ SSUB - Informa que o valor da medição passou a ser substituído pelo programa "Estimador
de Estado" no lugar do valor aquisitado.

▪ CDIN - Informa que foi enviado ao SAC um pedido de alteração de cálculo dinâmico.

▪ MANU - Informa que o valor do ponto está sendo inserido manualmente pelo operador;

▪ LADV - Informa que foi enviado ao SAC um pedido de alteração dos limites de advertência
da medida;

▪ LURG - Informa que foi enviado ao SAC um pedido de alteração dos limites de urgência da
medida;

▪ TAXA - Informa que foi enviado ao SAC um pedido de alteração da taxa de variação da
medida;

▪ HIST - Informa que foi enviado ao SAC um pedido de alteração da histeresis da medida;

▪ SELC - Informa que foi enviado ao SAC um pedido para bloquear (selecionar) um ponto
para controle supervisório;

▪ DSEL - Informa que foi enviado ao SAC um pedido para desbloquear (tirar de seleção) um
ponto para controle supervisório.

Juntando-se as diversas ações e os diversos tipos nos três formatos de mensagens possíveis, o
MML reporta:
▪ Vários tipos de atualizações em dados digitais, tais como, integridade (ATLZ_IDIG),
variação (ATLZ_VDIG) e seqüência de eventos (ATLZ_SQEV), atualizações, também,

56
5 MONITORES DE MENSAGEM

referentes a medidas analógicas (ATLZ_IMED, ATLZ_VMED) e a totalizadores


(ATLZ_ITOT, ATLZ_VTOT);

▪ Para todos os tipos de pontos, a retirada de varredura ou a inserção de valor manual


(FOVR_VDIG, FOVR_VMED, FOVR_VTOT, MANU_VDIG, MANU_VMED e MANU_VTOT)
e a colocação em varredura (EMVR_VDIG, EMVR_VMED e EMVR_VTOT), a inibição
(IALR_VDIG, IALR_VMED e IALR_VTOT) e a restauração da geração de alarmes
(HALR_VDIG, HALR_VMED e HALR_VTOT), a inibição do auto-reconhecimento
(IAUR_VDIG, IAUR_VMED e IAUR_VTOT) e a restauração do auto-reconhecimento
(HAUR_VDIG, HAUR_VMED e HAUR_VTOT), o reconhecimento de alarmes
(RCNH_VDIG, RCNH_VMED e RCNH_VTOT);

▪ Para medidas analógicas e totalizadores, os pedidos de alteração de limites (LADV_VMED,


LADV_VTOT, LURG_VMED, LURG_VTOT) e os pedidos de alteração da taxa de variação
ou da histeresis das medidas (TAXA_VMED, HIST_VMED);

▪ As transições das ligações de dados, isto é, a entrada em serviço da comunicação de dados


que serve à aquisição de dados das TAC, ligação operacional (OPER_LIGC), e a saída
de serviço, ligação inoperante (INOP_LIGC);

▪ Erro grosseiro de aquisição de dados, indicando que a medida passou a ser estimada pelo
Estimador de Estados (ESTI_VMED), e retorno ao valor aquisitado da medida quando a
mesma é considerada pelo Estimador de Estados aceitável (NEST_VMED);

▪ Substituição do valor aquisitado da medida pelo estimado através do Estimador de Estados


(SSUB_VMED), e retorno ao valor aquisitado da medida (DSUB_VMED);

▪ Bloqueio (seleção) de ponto para controle (SELC_ATVC), pedido de execução de controle


(CTRL_ATVC), desbloqueio de ponto para controle (DSEL_ATVC) e o resultado de
sucesso (CTRL_SUCC) ou fracasso (CTRL_ERRC) do controle;

▪ As transições de estado dos nós de secundário para primário (OPER_NPRI), detecção do


estado do outro nó em secundário ou falha (OPER_TRON), operacionalização do nó local
(OPER_SINI) e detecção de falha do subprocesso de recepção de comandos
(OPER_EPRC).

57
5 MONITORES DE MENSAGEM

58
6
Capítulo

6 Ajustes de Limites por Patamares


de Carga (Pcarg)

A função de ajuste automático de limites operativos de medidas analógicas por monitoração de


patamares de carga, também chamada no SAGE de PCARG, tem por objetivo alterar
automaticamente os limites de advertência, de urgência e de emergência (escala) de medidas
analógicas - PAS, a partir da determinação de condições monitoradas para uma ou mais ocorrências
da entidade patamar de carga – PTC.

6.1 Execução da Função – Patamares Normais


A função PCARG é executada internamente pelo próprio Serviço de Aquisição e Controle - SAC
como uma de suas funções nativas, visando obter assim um melhor desempenho na realização da
função.
A Figura 6- 1 mostra um diagrama geral da função configurada no âmbito do Subsistema de
Tratamento de Informação - STI e executada em tempo-real pelo SAC.

59
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

Figura 6- 1 - Diagrama Geral da função PCARG

No diagrama estão identificadas as entidades PTC, CLM e PAS que são utilizadas para
implementação da função, a entidade TGL utilizada para a configuração dos critérios de
relacionamento entre PTC/CLM e CLM/PAS para medidas de equipamentos, e a entidade TEMPO
usada para definir uma tabela de horários e de feriados. Observa-se aqui que a entidade CLM não é
uma entidade da Base Fonte, existindo apenas na Base Referência (ver item 6.6).
A entidade PTC contém itens (ocorrências de PTC) que são usados para agrupar, indiretamente
via CLM, pontos analógicos PAS que terão os seus limites alterados automaticamente pela função.
Ao determinar que uma ocorrência de PTC migrou de um patamar para outro, o SAC atualiza, em
todos os pontos analógicos PAS vinculados àquele PTC, os seis limites (dois de advertência, dois de
urgência e dois de emergência/escala) definidos para o novo patamar nas ocorrências
correspondentes da entidade CLM. Deve-se ressaltar que uma ocorrência da entidade PTC é
exclusivamente associada à alteração de limites de tensão (nesse caso é definido um PAS de
monitoração cujo valor é utilizado para verificar a migração de patamar) ou à alteração de limites de
equipamento (MW, MVAR, MVA, AMP).
Hipoteticamente, suponha que a configuração do SAGE indica que o sistema tem 4 ocorrências de
PTC, relacionadas com a atualização automática de limites de tensão. Suponha ainda que as
instalações (ou estações) foram agrupadas em PTCs segundo as regiões do sistema (norte, sul, leste
e oeste). O SAC, ao determinar que um desses PTCs mudou de patamar, por exemplo, o PAS de
monitoração do PTC das instalações da região norte migrou do patamar de carga leve para o de
carga média, as ocorrências de CLM vinculadas ao PTC das instalações da região norte serão
pesquisadas, e os seis limites definidos nessas CLM para a carga média serão carregados em todos

60
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

os pontos analógicos associados a essas CLM, nesse caso pontos analógicos de tensão dessa
região.
Para determinar a mudança de patamar de um PTC, as três seguintes condições são monitoradas
na ordem inversa de prioridade apresentada abaixo:
▪ Monitoração do valor corrente de medidas analógicas PAS, designadas como ‘medidas
monitoradas’ dos PTC (geralmente, medidas calculadas configuradas para esta finalidade
de monitoração do PTC), onde o valor corrente de uma ‘medida monitorada’ determina em
que patamar de carga o seu PTC associado será considerado naquele momento;

▪ Atendimento da data-hora corrente a uma das entradas da tabela de tempo, onde cada
entrada define uma faixa de tempo designando um PTC associado e o patamar de carga
que será considerado para o PTC naquela faixa horária;

▪ Imposição manual do operador que determinará em que patamar de carga o PTC será
considerado naquele momento.

Por exemplo, segundo a ordem de prioridade mencionada acima, caso o operador imponha
manualmente a um determinado PTC que as medidas vinculadas a ele deverão estar operando em
carga leve, mesmo que a tabela de tempo esteja determinando que, naquele momento, esse PTC
deveria estar operando em carga pesada, os limites dos pontos analógicos vinculados a este PTC
serão ajustados para a carga leve.
Igualmente, mesmo que o valor corrente de uma ‘medida monitorada’ de um PTC esteja indicando
para esse PTC a operação em carga média, caso exista uma entrada da tabela de tempo sendo
atendida, indicando que naquele horário o PTC deve operar em carga pesada esta será a condição
que prevalecerá fazendo com que os limites dos pontos analógicos deste PTC sejam ajustados para
a carga pesada.

6.2 Conjuntos de Limites – Normais e Intervenção


Como foi visto no item anterior, em cada ocorrência da tabela CLM foi definido um conjunto
formado por 30 limites, resultante da definição de 6 limites para cada um dos 5 patamares de carga.
Contudo, este conjunto denominado “conjunto de limites normais”, por ser utilizado pela função em
“condições normais de operação”, não é o único conjunto associado a uma ocorrência da tabela CLM.
Outro conjunto de 30 limites, de estrutura similar, denominado “conjunto de limites de intervenção”,
também está associado a uma ocorrência da tabela CLM, sendo este utilizado no lugar do “conjunto
de limites normais” quando o equipamento ou nível de tensão relacionado àquela entrada da tabela
CLM se encontra em “condição de intervenção”. A condição de intervenção é caracterizada pelo
assinalamento de um atributo booleano da tabela CLM. Esse atributo pode ser
assinalado/desassinalado pelo operador ou pelo programa responsável pela “Programação de
Desligamentos”.

61
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

6.3 Entrada Manual em CLM e Limites Cadastrais


Qualquer dos 60 limites (30 normais + 30 de intervenção) associados a uma entrada da tabela
CLM pode ser alterado pelo operador em tempo real. Dois indicadores, um para o “conjunto de limites
normais” e outro para o “conjunto de limites de intervenção”, indicarão na tela se o conjunto contém
entrada manual. Uma ação de click sobre algum desses indicadores assinalados, provoca a
restauração dos limites cadastrais originais que foram carregados na geração da base fonte.

6.4 Patamares Emergenciais – Inequações


No item 6.1, foi descrito o esquema de alteração de limites de pontos analógicos agrupados por
PTC. Esse esquema, que utiliza a granularização do controle de patamares por PTC, e os critérios de
controle por (1) ‘tabela de tempo’, (2) ‘monitoração de medida’ ou (3) ‘entrada manual’, é chamado de
“controle de patamares normais”. Contudo, além desse esquema, um outro esquema pode ser
utilizado de forma particular para uma única entrada da tabela CLM: o de “controle de patamares
emergenciais”.
Além de utilizar a granularização do controle por CLM (e não por PTC) o critério adotado no
“controle de patamares emergenciais” não é nenhum dos três utilizados anteriormente. Nesse caso, o
patamar é determinado por uma inequação representada por um ponto PTS (discreto/totalizado) de
cálculo dinâmico definido no Visor de Cálculos Dinâmicos e referenciado ao CLM pelo operador.
Em condições normais, não existe referência da entrada da tabela CLM com um PTS de cálculo
dinâmico (inequação), fazendo com que essa entrada de CLM obedeça ao patamar definido pelo seu
PTC, juntamente com as outras CLMs daquele PTC. Mas, se o operador relaciona uma determinada
entrada da tabela CLM com um PTS de cálculo dinâmico, essa entrada da tabela CLM deixa de ser
comandada pelo seu PTC e o seu patamar de carga passa a ser determinado pela inequação
associada ao ponto PTS de cálculo dinâmico. O resultado dssa inquação deverá ser um valor de 1 a
5 ou de 6 a 10. Os valores de 1 a 5 implicam nas cargas (1) mínima, (2) leve, (3) média, (4) pesada e
(5) máxima para “condição normal de operação” ou de 6 a 10 para “condição de intervenção”.

6.5 Configuração da Função na Base FONTE


Para configurar a função PCARG, o usuário deve preencher os atributos correlatos nas seguintes
entidades da base fonte do SAGE:
PTC – Patamar de carga para atualização automática de limites. Através desta tabela, o usuário
definirá quantos e quais os conjuntos independentes de pontos analógicos existirão para serem
submetidos à avaliação do patamar de carga. Nessa entidade, o usuário configura a identificação do
PTC. O atributo PAS dessa tabela deve ser obrigatoriamente preenchido (medida monitorada) para
os PTCs associados à atualização automática de limites de tensão. A existência de uma ‘medida
monitorada’ vinculada ao PTC implica que ele será monitorado podendo ser ajustado para as cargas
‘mínima’, ‘leve’, ‘média’, ‘pesada’ ou ‘máxima’ segundo qualquer um dos três critérios listados no item
anterior.

62
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

Para os PTCs associados à atualização automática de limites de equipamento, o atributo PAS não
pode ser preenchido. Nesse caso, o ajuste de limites será definido em função do horário ‘diurno’ e
‘noturno’, por dois dos três critérios listados acima; o critério da tabela de tempo e o de imposição
manual. Além disso, as medidas analógicas que terão os limites ajustados segundo esses PTC
poderão ser de diferentes tipos (MW, MVAR, MVA e AMP) de equipamentos (LTR, CAR, TR2 etc) em
agrupamentos (SIS, REG, ACO, CIA) do sistema elétrico.
INS – Instalação. É utilizada para agrupar os pontos analógicos de tensão cujos limites serão
ajustados automaticamente. Esse agrupamento é realizado associando um conjunto de instalações a
um mesmo PTC. Os PTC’s relacionados com o ajuste automático de limites de tensão necessitam da
definição de um ponto analógico, cujo valor será monitorado para verificar a migração de patamar de
carga.
EST – Estação. Também é utilizada para agrupar os pontos analógicos de tensão cujos limites
serão ajustados automaticamente. Esse agrupamento é realizado associando um conjunto de
instalações a um mesmo PTC. Permite uma configuração mais refinada do que a configuração por
Instalação. Nesse caso, estações de uma mesma instalação podem ser associadas à PTC’s
diferentes. O usuário pode configurar uma parte do sistema por instalação, quando todas as estações
da instalação devem estar associadas a um mesmo PTC; e outra parte do sistema por estação, no
caso em que as estações de uma instalação devem ser associadas à PTC’s diferentes. Os limites
relativos às medições de tensão de cada patamar de carga podem ser configurados nessa tabela.
Consulte o catálogo da base fonte para identificar esses atributos.
TGL – Tipo de grandeza para atualização automática de limites de equipamentos. Nesta tabela,
serão definidos os critérios que permitirão associar os PTC (indiretamente através da entidade CLM)
aos pontos analógicos em PAS que terão os seus limites gerenciados pelo PTC.
Essa configuração é feita através de três atributos que definem [1] o tipo de grandeza do ponto
(GRAND= AMP, MVA, MVAR, MW), [2] o tipo de equipamento ao qual ela pertence (TPEQP= LTR,
CAR, UGE, TR2 etc) e [3] o agrupamento ou grupo em que ela reside (GRUPO= SIS, REG, ACO,
CIA).
O usuário pode, por exemplo, projetar que os itens definidos na entidade PTC se relacionarão com
os pontos analógicos que eles vão controlar segundo três critérios, sendo um para controlar limites de
medidas de potência ativa (GRAND=MW) de linhas de transmissão (TPEQP=LTR) em companhias
(GRUPO=CIA), outro para controlar limites de medidas de potência reativa (GRAND=MVA) de
transformadores (TPEQP=TR2/TR3) em áreas de controle (GRUPO=ACO).
Deve ser observado ainda, que na tabela PAS, os atributos TIPO e TPEQP devem ser
preenchidos corretamente para que a configuração dos CLM’s e PAS’s que terão os limites alterados
automaticamente possa ser realizada.
SIS/REG/ACO/CIA – Na base de dados fonte do SAGE, as entidades Sistema Interligado (SIS),
Região (REG), Área de Controle (ACO) e Companhia (CIA) definem agrupamentos de dados que
podem ser relacionados a um PTC, quando se deseja que as medidas (MW, MVAR, MVA ou AMP)
daquele agrupamento tenham os limites definidos por aquele PTC relacionado. Esse relacionamento
é estabelecido pela utilização do atributo opcional ‘PTC’ presente em cada uma dessas entidades. As

63
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

medidas que serão controladas pelo PTC serão aquelas que atenderem aos critérios definidos
anteriormente em TGL, conforme descrito acima. Um mesmo PTC pode ser referenciado por vários
agrupamentos que podem ser do mesmo tipo (ex: várias Companhias) ou de tipos diferentes (ex:
algumas Companhias e algumas Regiões). Deve-se observar, entretanto, que não é permitido que as
tabelas SIS, REG, ACO ou CIA (utilizadas para configurar a atualização de limites de equipamentos)
referenciem um PTC que também é referenciado pela tabela INS ou EST (utilizadas para configurar a
atualização de limites de tensão) e vice-versa.
CAR/LTR/RAM/TR2/TR3 – Permite configurar os limites relativos às medições de MW, MVAR,
MVA ou AMP desses equipamentos nos patamares de carga diurna e noturna. Consulte o catálogo
da base fonte para identificar esses atributos.
TEMPO – Nessa entidade, o usuário especifica faixas de tempo, associa cada faixa a um PTC, e
determina qual patamar será assumido por aquele PTC quando a data-hora corrente se encontrar
naquela faixa de tempo.
As sintaxes detalhadas para especificar a faixa de tempo, o PTC associado e o patamar para o
qual ele será forçado estão listadas na Tabela 6- 1.
Para descrever a faixa de tempo podem ser integralmente especificadas as data-horas de início e
fim com dia, mês, ano, hora e minuto, ou com o ano genérico ao se utilizar o caractere ‘*’ para
especificá-lo. Também se pode- descrever a faixa de tempo especificando um dia genérico da
semana (domingo=1, segunda=2, ..., sábado=7) ou ainda utilizar o caractere “v” para caracterizar
esse dia dentro do período do horário de verão, ‘u’ para os ‘dias-úteis-de-semana’ ou o caractere ‘f’
para os ‘dias-do-fim-de-semana’. A definição de quais dias são considerados ‘dias-úteis-de-semana’ e
quais são considerados ‘dias-do-fim-de-semana’ é feita na entidade DTS descrita abaixo.
FRD – Essa entidade permite configurar os dias que serão considerados feriados. Ao considerar
um determinado dia como feriado, o SAC ignora a sua identificação de dia da semana e passa a
tratá-lo como ‘domingo’.
DTS – Essa entidade permite configurar os dias que serão considerados ‘dias-úteis-de-semana’ e
os que serão considerados ‘dias-do-fim-de-semana’.
O CEPEL recomenda a utilização do exemplo distribuído com a base ‘demo_ems’ como base para
a configuração inicial dessas entidades.
Com relação à definição de entradas da Tabela de Tempo específicas para os períodos de
entrada e saída do horário de verão, é importante observar os requisitos necessários para essas duas
situações.
Entrada no Horário de Verão – A entrada da Tabela que utilizar o dia típico “D1v 00:00 xx:xx”
não será atendida no dia da entrada do horário de verão porque a faixa de tempo de 00:00 à 01:00
não existe nesse domingo específico. Para garantir o atendimento a uma entrada da Tabela de
Tempo nesse dia e faixa horária, deve existir uma outra entrada usando o dia especial da entrada no
horário de verão, como por exemplo, “20/10/13-01:00 20/10/13-xx:xx”. Essa entrada da Tabela pode
se localizar em qualquer posição T_NNN e permanecer na base de dados para ser renovada a cada
ano com entrada manual prévia.

64
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

Saída do Horário de Verão – A entrada da Tabela que utiliza o dia típico “D7v xx:xx 23:59” é
atendida normalmente na primeira ocorrência da faixa horária de 23:00 às 23:59 do sábado que
encerra o horário de verão. Já durante a segunda ocorrência desta mesma faixa horária, agora fora
do horário de verão, a entrada que utiliza o dia típico “D7 xx:xx 23:59” não é atendida. Nesse caso, é
necessário existir uma outra entrada usando o dia especial da saída do horário de verão, como por
exemplo, “15/02/14-23:00 15/02/14-23:59”, para esta segunda faixa horária deste sábado específico.
Caso esta entrada específica, defina o mesmo patamar indicado na entrada que utiliza o dia típico
“D7v xx:xx 23:59”, esta entrada específica pode se localizar em qualquer posição T_nnn. Mas caso o
patamar definido em “15/02/14-23:00 15/02/14-23:59” seja diferente do patamar definido em “D7v
xx:xx 23:59” ele deve se localizar em uma posição T_nnn de menor prioridade que a T_NNN de maior
prioridade utilizada para o D7v que executou anteriormente. Como ocorreu com a entrada da Tabela
utilizada especificamente na entrada do horário de verão, esta entrada da Tabela utilizada
especificamente para a saída do horário de verão também pode permanecer na base de dados para
ser renovada a cada ano com entrada manual prévia.

T_xxx_yy
Define a ordenação de pesquisa nas entradas da tabela de
ID
tempo onde ‘xxx’ está no formato 001 a 999 e ‘yy’ no formato
01 a 99
Dia Típico: DXv HH:MM HH:MM
Para especificar uma faixa de tempo genérica baseada em
hora e minuto de início e fim em qualquer ano, mês e dia de
um determinado dia da semana, onde ‘X’ é 1 para o domingo,
2 para segunda ... até 7 para o sábado, ou a letra ‘u’ para os
dias úteis, ou a letra ‘f’ para os dias do fim de semana, e ‘v’ é
HORÁRIO uma letra opcional para especificar que a entrada só é válida
em horário de verão.
Dia Especial: DD/MM/AA-HH:MM DD/MM/AA-HH:MM
Para especificar uma faixa de tempo específica baseada em
dia, mês, ano, hora e minuto para início e fim. Pode ser usado
o caractere ‘*’ para especificar o ano, significando assim que
o dia e mês serão considerados em qualquer ano.
Identificação do PTC associado ou o caractere ‘*’ indicando
PTC que a entrada da tabela de tempo está associada a todos os
PTC.
Define o valor do patamar de carga dentre as palavras chave
MIN, LEV, MED, PES, MAX para os patamares de carga
PATAMAR mínima, leve, média, pesada e máxima, respectivamente ou
DIA e NOT para os patamares de carga diurna e noturna
respectivamente.
Tabela 6- 1 - Especificação da Tabela de Tempo.

65
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

6.6 Auto-Configuração da função na Base


REFERÊNCIA
É importante observar que a entidade CLM não é configurada na base fonte. O complemento da
configuração da função PCARG com o carregamento de CLM é realizado automaticamente pelo STI
durante a execução da lógica de carregamento da base referência.
Quando carrega a base referência, o STI cria as CLM necessárias e estabelece os
relacionamentos PTC/CLM e CLM/PAS com base nos critérios definidos na entidade TGL da base
fonte e das informações preenchidas na entidade PTC e nos atributos PTC das entidades SIS, REG,
ACO, CIA , INS e EST.
A configuração pode ser completada com o carregamento dos conjuntos de limites iniciais de CLM
para todos os cinco patamares, baseando-se na média dos limites dos pontos PAS associados ao
CLM, caso esses limites não sejam definidos nas tabelas EST, LTR, CAR, RAM, TR2, etc.
Durante a operação em tempo-real, o despachante pode ajustar diferentes valores para os limites
desses patamares através de entrada de dados nas telas de conjuntos de limites mostradas no
próximo item. Essas entradas de dados deverão ser preservadas durante o procedimento de carga
das próximas versões da base de dados optando-se pelo carregamento com preservação
disponibilizado pelo STI. A escolha de quais limites devem ser preservados é definida na entidade
PSV através dos grupos ATL_V_ADV, ATL_V_URG, ATL_V_ESC, ATL_E_ADV, ATL_E_URG e
ATL_E_ESC.

6.7 Operação em Tempo Real – Telas da função


A função é operada através das seguintes telas:
▪ Tela de Patamares de Carga;

▪ Tela com as Tabelas de Tempo e Feriados;

▪ Tela com os Conjuntos de Limites;

▪ Lista de Alarmes de ‘Ações do Despachante’ e de ‘Suporte Computacional’.

A Figura 6- 2 mostra a tela Patamares de Carga - PTC. Essa tela permite ao operador ativar ou
desativar a função e monitorar o estado da cada um dos PTCs definidos na base de dados.
Na coluna ‘Status’, o operador é informado em qual patamar de carga o PTC se encontra com as
palavras-chave ‘MIN’, ‘LEV’, ‘MED’, ‘PES’, ‘MAX’ ou ‘DIA’, ‘NOT’, seguidas de uma letra minúscula ‘m’
para indicar se a causa da escolha foi à imposição manual feita pelo operador (através de entrada de
dados nessa coluna), ‘t’ para indicar se a causa foi o atendimento a uma entrada da tabela de tempo,
ou ‘c’ para indicar se a causa foi o valor de carga verificada pela ‘medida monitorada’, cuja
identificação é mostrada na coluna ‘Identificador Ponto Analógico’ e o valor corrente é mostrado na
coluna ‘Valor’.

66
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

Nas colunas de ‘Prioridade’ (Carga e Tempo), quando o botão da prioridade de Carga é acionado,
mesmo que uma entrada da tabela de tempo (por default – mais prioritária) esteja sendo atendida, o
patamar será controlado pela carga e um indicador de cor laranja circundará o valor da medida de
monitoração da carga. Para retornar a condição default, deve-se apertar o botão da prioridade de
Tempo.
Nas quatro colunas de limites que se seguem são mostrados e/ou entrados manualmente os
valores dos limites que são comparados ao valor da ‘medida monitorada’ (coluna “Valor") para
determinar o patamar no qual o PTC se encontra, nos casos onde ele não é atendido pela tabela de
tempo ou forçado por imposição manual.

Figura 6- 2 - Patamares de Carga.

A Figura 6- 3 mostra a tela com as tabelas de tempo (horária e feriados). Essa tela permite ao
operador visualizar na coluna ‘Status’ da tabela horária, através da palavra-chave ‘OPER’, quais das
suas entradas estão sendo atendidas e, conseqüentemente, qual o PTC teve o patamar
reprogramado e para que carga.

67
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

Figura 6- 3 - Tabela de Tempo.

Como todas as outras colunas da tabela horária permitem a entrada de dados para alterar linhas
existentes ou inserir novas, a palavra-chave ‘OK’ na coluna “Status" indica que as sintaxes estão
corretas e o PTC escolhido existe, caso contrário será exibida a palavra-chave "ERRO".
A tela permite também visualizar e efetuar entradas de dados na tabela de feriados.
A Figura 6- 4 mostra uma das telas Conjuntos de Limites - CLM, nesse caso os conjuntos de
limites para a “carga média em operação normal”. Essa tela permite ao operador visualizar e alterar
com entrada de dados os limites que serão aplicados aos pontos analógicos quando o PTC
relacionado estiver em carga média. A coluna ‘Status’ informa se os limites são coerentes com a
palavra-chave ‘OK’ ou se existe algum erro com a palavra-chave ‘ERRO’. A coluna ‘Term’ é usada
para completar a identificação (‘Localização’) do CLM no caso de CLMs referentes a equipamentos
com mais de um terminal. A coluna ‘Aoi’ informa se a área de informação (AOI) determina importação
ou exportação para os dados do CLM. A coluna ‘Valor’ informa o valor corrente da primeira medição
do conjunto. A coluna ‘Manual/BDT’ informa se o CLM possui limites entrados manualmente pelo
operador ou se são todos originais da base fonte cadastral (BDT). Se esse campo estiver assinalado,
ao se efetuar um click no mesmo, é feita a restauração dos limites cadastrais sobre os limites que
estavam com entrada manual. A coluna ‘Intervenção’ coloca/retira e informa o estado de ‘intervenção’
do CLM. Se o indicador estiver ligado, isso significa que os limites válidos são os da tela equivalente
para “limites de operação em intervenção”. A coluna ‘Patamar Emergencial’ informa qual o patamar
emergencial corrente (Min, Lev, Med, Pes, Max), caso seja designado um ponto PTS de cálculo
diâmico como inequação na coluna ‘Inequação para Patamar Emergencial’.

68
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

Figura 6- 4 - Conjunto de Medidas para Alteração de Limites.

Outras seis telas equivalentes são utilizadas para os patamares de carga mínima, leve, média,
máxima, diurna e noturna, perfazendo um total de sete telas de “limites em operação normal”.
Completam esse conjunto, outras sete telas de “limites de operação em intervenção”, perfazendo
então quatorze telas de “limites de operação”. De forma análoga, existem mais quatorze telas de
“limites de cadastrais”, sobre as quais não é permitida a entrada de dados.
A Figura 6- 5 mostra a lista de alarmes de ações do despachante onde são registradas as
ocorrências de entradas de dados e validação das telas apresentadas anteriormente.
A Figura 6- 6 mostra a lista de alarmes de processos e suporte computacional onde são
registrados os eventos de migração de patamar feitos em tempo-real pelo processo SAC.

Figura 6- 5 - Lista de Alarmes de Ações do Despachante.

Figura 6- 6 - Lista de Alarmes de Processos e Suporte Computacional.

69
6 AJUSTES DE LIMITES POR PATAMARES DE CARGA (PCARG)

70
7
Capítulo

7 Scripts de Manutenção do SAGE

7.1 Introdução
Os scripts descritos a seguir foram desenvolvidos a fim de facilitar as tarefas relacionadas à
manutenção da configuração do SAGE.
Os scripts (rligador, rvisoracesso, convbase, sincconfig, ativasage e desativasage) são baseados
nos comandos rsh (remote shell) e rcp (remote file copy) e para seu funcionamento é necessário que
o arquivo $HOME/.rhosts das máquinas envolvidas no processo, estejam devidamente configurado.
O comando habilita_base se encarregará de criar e/ou atualizar este arquivo a partir do arquivo
$BD/sti_hosts que contém a relação de sites configurados na tabela NOH da base de dados (com
exceção das máquinas transportadoras de protocolo). Os scripts estão disponibilizados no diretório
$SAGE/bin/sys e poderão ser executados a partir de qualquer sub-diretório da conta SAGE.
Utilizaremos a seguinte convenção para os parâmetros dos scripts:
Convenção: <x - parâmetros obrigatórios;
xx>
[x - parâmetros opcionais.
xx]

7.2 Relação dos scripts


10. sincconfig <arq> [-x] [-h host | -s arq] [-d dir] [-u user]

11. AtualizaBD [] [fonte] [fria] [fria fonte] [user <nome user>] [user <nome user> fonte]
[path <path arq xdr] [path <path arq xdr> fonte]

12. ativasage [-h host | -s arq]

13. rligador [-h host | -s arq]

14. rvisoracesso <-h host>

15. geralog [-l lin] [-gz|-bz2]

16. cria_base <base> [padrao]

17. remove_base [base]

18. habilita_base [base]

71
7 SCRIPTS DE MANUTENÇÃO DO SAGE

19. instala_sage <base> [src]

20. instala_update <num_updI> [num_updF] [-h host | -s arq] [-u user]

21. remove_update <num_upd>

22. zipconfig < base| [-l|u|x arq] > [-b] [-i] [-t] [-s] [-c] [-m] [-v] [-zip | -tgz]

23. criasagecnf [base]

24. criasageexe [sage_so] [modelo]

25. habilita_postgres [servidor] [porta]

26. habilita_gbh

27. TrocaIdentTelas <planilha_x.csv> <planilha_z.csv> <tela1> <tela2> <tela3> ....

7.3 Descrição dos scripts

7.3.1 sincconfig

Este procedimento faz a cópia de arquivos para computadores remotos, possibilitando a expansão
de arquivo nos formatos .tar.Z, .tar.gz e .tar.bz2. A expansão vale apenas para um único arquivo
copiado. A cópia de vários arquivos se dá por meio da máscara * aplicada com aspas junto ao nome
do arquivo <arq>. Sua forma de uso e os opcionais estão descritos abaixo.
Uso
sincconfig <arq> <-h host | -s [arq]> [-d dir] [-u user] [-x]

Onde:
arq Nome do arquivo para copia e/ou expansão, é permitido o uso da mascara “*”
para cópia de múltiplos arquivos.
-h host Sincroniza o site especificado em host.
-s Sincroniza os sites configurados no arquivo $BD/sti_hosts.
-s arq Sincroniza os sites configurados no arquivo “arq”.
-d dir Diretório destino do arquivo copiado. Default:($SAGE).
-u user Faz a sincronização do arquivo na conta do usuário user.
-x Expande o arquivo copiado (formatos: tar.Z, tar.gz, tar.bz2).
-h Para exibir as opções de uso.

7.3.1.1 Exemplos:

sincconfig SSC_Amb –h piracicaba

→ Copia o arquivo SSC_Amb para o diretório $SAGE da máquina piracicaba

sincconfig “$TELAS/SB*” –s –d $TELAS

→ Copia todos os arquivos iniciados com SB do diretório $TELAS para o diretório $TELAS de
todas as máquinas configuradas em $BD/sti_hosts.

72
7 SCRIPTS DE MANUTENÇÃO DO SAGE

sincconfig $TELAS/telas.tar.Z –h piracicaba –d $TELAS -x

→ Copia o arquivo telas.tar.Z para o diretório $TELAS da máquina piracicaba e faz a expansão.

sincconfig $TELAS/telas.tar.Z –s $BD/arq_sites –d $TELAS

→ Copia o arquivo telas.tar.Z para o diretório $TELAS da(s) máquina(s) relacionadas no arquivo
$BD/arq_sites.

sincconfig sagecnf_demo_ems.tar.Z -s –x

→ Copia o arquivo ./sagecnf_demo_ems.tar.Z para o diretório $SAGE da(s) máquina(s)


relacionadas no arquivo $BD/sti_hosts e faz a expansão.

sincconfig SSC_Amb –h piracicaba –u xpto

→ Copia o arquivo SSC_Amb para o diretório $SAGE da máquina piracicaba na conta do usuário
xpto.

7.3.2 AtualizaBD

Este script faz a atualização da base de dados do SAGE preparando-a para que possa ser
utilizada no ambiente de tempo-real. A sintaxe do comando é:
AtualizaBD [fria] [fonte] [fonte_bd] [user <username>] [path <raiz do
sage>] [mcd <nome da mcd>] [help]

7.3.2.1 Parâmetros do Script

[fria]

Gera uma base fria em disco (sem preservação).

[fonte]

A partir do update 25 do SAGE, Este parâmetro indica que as informações de base fonte serão
armazenadas em memória, como passo intermediário para a criação da base referência. Para os
updates anteriores, este parâmetro pressupõe a existência de um servidor de base de dados
relacional configurado no ambiente Unix (Postgresql, Informix ou Oracle).

[fonte_bd]

Este parâmetro, disponível a partir do update 25 do SAGE, é indicado para os procedimentos


de geração de bases de dados que utilizam programas que automatizam o processo de geração, e
dependem da base fonte armazenada em banco de dados relacional, tais como o GeraDatsNHS e
outros.

73
7 SCRIPTS DE MANUTENÇÃO DO SAGE

[user <user name>]

Preserva a partir da base online do SAGE que está em execução na conta do usuario
especificado.
Obs: Este parâmetro é incompatível com os parâmetros [fria] e [path].

[path <raiz do sage>]

Preserva a partir da base referência (arquivos xdr) residente no diretório fornecido.


Obs: Este parâmetro é incompatível com os parâmetros [fria] e [user].

[mcd]

Quando especificada, só preserva a mcd indicada no parâmetro, inibindo a gravação das demais.
Podem ser selecionadas mais de uma mcd.
Obs: Este parâmetro é incompatível com o parâmetro [fria].

[help]

Exibe ajuda.

7.3.2.2 Formas de Uso:

Os procedimentos realizados pelo script serão descritos para cada uma das formas de utilização.
AtualizaBD

▪ Executa o procedimento de preservação da versão anterior da base. Nesse caso, é


pressuposto que a versão anterior se encontra no diretório $BD da mesma árvore do
SAGE onde se encontra a base nova (fria). Para efeito de salvaguarda, a base anterior é
copiada para o diretório $BD/old.

AtualizaBD fonte ; até o update 23 do SAGE

ou
AtualizaBD fonte_bd ; a partir do update 25 do SAGE

▪ Carrega a base fonte a partir dos arquivos de configuração localizados em


$SAGE/config/$BASE/bd/dados ($BD/dados) localizados na árvore do SAGE no
ambiente Unix. A base fonte é armazenada no servidor de base de dados relacional.

▪ Carrega a base referência (base fria) no diretório $BD/fria já no formato XDR.

▪ Executa o procedimento de preservação da versão anterior da base. Nesse caso, é


pressuposto que a versão anterior se encontra no diretório $BD da mesma árvore do
SAGE onde se encontra a base nova (fria). Para efeito de salvaguarda, a base anterior é
copiada para o diretório $BD/old.

74
7 SCRIPTS DE MANUTENÇÃO DO SAGE

AtualizaBD fonte ; A partir do update 25 do SAGE

▪ Carrega a base referência (base fria) no diretório $BD/fria, já no formato XDR, a partir dos
arquivos de configuração localizados em $SAGE/config/$BASE/bd/dados ($BD/dados)
localizados na árvore do SAGE no ambiente Unix. Nesse caso, a base fonte é gerada em
memória como um passo intermediário para a geração da base referência.

▪ Executa o procedimento de preservação da versão anterior da base. Nesse caso, é


pressuposto que a versão anterior se encontra no diretório $BD da mesma árvore do
SAGE onde se encontra a base nova (fria). Para efeito de salvaguarda, a base anterior é
copiada para o diretório $BD/old.

AtualizaBD fria

▪ Copia os arquivos XDR do diretório $BD/fria para o diretório $BD. Nesse caso, não é
executado o procedimento de preservação.

AtualizaBD fria fonte ;até o update 23 do SAGE

ou
AtualizaBD fria fonte_bd ;a partir do update 25 do SAGE

▪ Carrega a base fonte a partir dos arquivos de configuração localizados em


$SAGE/config/$BASE/bd/dados ($BD/dados) localizados na árvore do SAGE no
ambiente Unix. A base fonte é armazenada no servidor de base de dados relacional.

▪ Carrega a base referência (base fria) no diretório $BD/fria já no formato XDR.

▪ Copia os arquivos XDR do diretório $BD/fria para o diretório $BD. Nesse caso, não é
executado o procedimento de preservação.

AtualizaBD user <nome user>

▪ Executa o procedimento de preservação da versão anterior da base. Nesse caso, a


preservação é realizada a partir da base online do SAGE que está em execução na conta
do usuario especificado. Para efeito de salvaguarda, a base anterior é copiada para o
diretório $BD/old.

AtualizaBD user <nome user> fonte ;até o update 23 do SAGE

ou
AtualizaBD user <nome user> fonte_bd ;a partir do update 25 do
;SAGE

▪ Carrega a base fonte a partir dos arquivos de configuração localizados em


$SAGE/config/$BASE/bd/dados ($BD/dados) localizados na árvore do SAGE no
ambiente Unix. A base fonte é armazenada no servidor de base de dados relacional.

75
7 SCRIPTS DE MANUTENÇÃO DO SAGE

▪ Carrega a base referência (base fria) no diretório $BD/fria já no formato XDR.

▪ Executa o procedimento de preservação da versão anterior da base. Nesse caso, a


preservação é realizada a partir da base online do SAGE que está em execução na conta
do usuario especificado. Para efeito de salvaguarda, a base anterior é copiada para o
diretório $BD/old.

AtualizaBD path <path arq xdr>

▪ Executa o procedimento de preservação da versão anterior da base. Nesse caso, é


pressuposto que os arquivos XDR da versão anterior se encontram no diretório <path arq
xdr>. Esse diretório pode ser local ou remoto. Para efeito de salvaguarda, a base anterior é
copiada para o diretório $BD/old.

AtualizaBD path <path arq xdr> fonte ;até o update 23 do SAGE

ou
AtualizaBD path <path arq xdr> fonte_bd ;a partir do update 25
;do SAGE

▪ Carrega a base fonte a partir dos arquivos de configuração localizados em


$SAGE/config/$BASE/bd/dados ($BD/dados) localizados na árvore do SAGE no
ambiente Unix. A base fonte é armazenada no servidor de base de dados relacional.

▪ Carrega a base referência (base fria) no diretório $BD/fria já no formato XDR.

▪ Executa o procedimento de preservação da versão anterior da base. Nesse caso, é


pressuposto que os arquivos XDR da versão anterior se encontram no diretório <path arq
xdr>. Esse diretório pode ser local ou remoto. Para efeito de salvaguarda, a base anterior é
copiada para o diretório $BD/old.

7.3.2.3 Exemplos:

AtualizaBD

→Executa a preservação a partir de $BD da conta local.

AtualizaBD fria fonte_bd

→ Comando válido a partir do update 25 do SAGE. Carrega a Base Fonte no servidor relacional,
Carrega a Base Referência e copia os arquivos XDR de $BD/fria para $BD.

AtualizaBD user sageold

→ Executa a preservação a partir da conta sageold.

AtualizaBD path /home/sage/tmp fonte

76
7 SCRIPTS DE MANUTENÇÃO DO SAGE

→ Até o update 23 do SAGE, este comando Carrega a Base Fonte no servidor relacional; Carrega
a Base Referência e faz a preservação a partir dos arquivos XDR localizados no diretório
/home/sage/tmp.

7.3.3 ativasage

Este procedimento ativa o SAGE seqüencialmente na rede e/ou localmente (com intervalos de 30
segundos entre as ativações), com a exibição dos resultados em janelas independentes na máquina
local (syslog). Se nenhum parâmetro for utilizado, a ativação será na maquina local, para o parâmetro
–s, a seqüência de ativação será determinada pela ordem das máquinas no arquivo $BD/sti_hosts
ou no arquivo informado no parâmetro opcional –s arq. Sua forma de uso e os opcionais estão
descritos abaixo.
Uso
ativasage [-h host | -s [arq]]

Onde:
-h host Ativa o SAGE no site especificado em host.
-s Ativa o SAGE nos sites configurados no arquivo $BD/sti_hosts.
-s arq Ativa o SAGE nos sites configurados no arquivo "arq".
-h Para exibir as opções de uso.

7.3.3.1 Exemplos:

ativasage

→ Ativa o SAGE na máquina local ($HOST).

ativasage -s

→ Ativa o SAGE na(s) máquina(s) relacionada(s) no arquivo $BD/sti_hosts.

ativasage –h piracicaba

→ Ativa o SAGE na máquina piracicaba.

ativasage –s $BD/arq_sites

→ Ativa o SAGE na(s) máquina(s) relacionadas no arquivo $BD/arq_sites.

7.3.4 rligador

Este procedimento executa o Ligador de telas em computadores remotos (ou localmente) com a
exibição dos resultados na máquina local. Se nenhum parâmetro for utilizado, a ligação de telas se
dará somente na maquina local. Para o parâmetro –s, a seqüência de ligação será determinada pela

77
7 SCRIPTS DE MANUTENÇÃO DO SAGE

ordem das máquinas no arquivo $BD/sti_hosts ou no arquivo informado no parâmetro opcional –s


arq. Sua forma de uso e os opcionais estão descritos abaixo.
Uso:
rligador [-h host | -s [arq]]

Onde:
-h host Executa o Ligador no site especificado em host.
-s Executa o Ligador nos sites configurados no arquivo $BD/sti_hosts.
-s arq Executa o Ligador nos sites configurados no arquivo “arq”.
-h Para exibir as opções de uso.

7.3.4.1 Exemplos:

rligador

→ Executa o ligador de telas na máquina local.

rligador -s

→ Executa o ligador de telas na(s) máquina(s) relacionada(s) no arquivo $BD/sti_hosts.

rligador –h piracicaba

→ Executa o ligador de telas na máquina piracicaba.

rligador –s arq_sites

→ Executa o ligador de telas na(s) máquina(s) relacionada(s) no arquivo ./arq_sites.

7.3.5 rvisoracesso

Este procedimento executa o visor de acesso em um computador remoto com exibição na


máquina local. Sua forma de uso e os opcionais estão descritos abaixo.
Uso:
rvisoracesso <-h host>

Onde:
-h host Executa o visor no site especificado em host.

7.3.5.1 Exemplo:

rvisoracesso –h piracicaba

→ Executa o visor acesso na máquina piracicaba, com display local.

78
7 SCRIPTS DE MANUTENÇÃO DO SAGE

7.3.6 geralog

Cria 3 arquivos de log, em $SAGE, com os seguintes formatos e conteúdo:


logS_$HOST_ddmmaahhmm.tar.? $LOG/*.log
$SAGE/SSC_Amb
$BD/dc.conf

logSo_$HOST_ddmmaahhmm.tar.? $LOG/*.old
logSy_$HOST_ddmmaahhmm.tar.? /var/??/messages

Uso:
geralog [-l lin] [-gz|-bz2]

Onde:
-l lin Seleciona as n linhas finais do arquivo messages
-gz|bz2 Seleciona o comando de compactação. Default:compress
-h Para exibir as opções de uso.

7.3.6.1 Exemplos:

geralog –l 1000

→ Captura os arquivos de log, e as 1000 linhas finais do arquivo de log do sistema operacional
(messages) no formato messages1000l, gerando os arquivos:
▪ logS_srv1_dd_mm_aa_hhmm.tar.Z ($LOG/*.log + dc.conf + SSC_Amb)

▪ logSo_srv1_dd_mm_aa_hhmm.tar.Z ($LOG/*.old)

▪ logSy_srv1_dd_mm_aa_hhmm.tar.Z (arquivo messages ou syslog)

geralog –bz2 –l 500

→ Captura os arquivos de log, utilizando o comando de compactação bzip2 e seleciona as 500


linhas finais do arquivo de log do sistema operacional (messages) no formato messages500l.
▪ logS_srv1_dd_mm_aa_hhmm.tar.bz2

▪ logSo_srv1_dd_mm_aa_hhmm.tar.bz2

▪ logSy_srv1_dd_mm_aa_hhmm.tar.bz2

geralog –gz

→ Captura os arquivos de log, utilizando o comando de compactação gzip.


▪ logS_srv1_dd_mm_aa_hhmm.tar.gz

▪ logSo_srv1_dd_mm_aa_hhmm.tar.gz

▪ logSy_srv1_dd_mm_aa_hhmm.tar.gz

79
7 SCRIPTS DE MANUTENÇÃO DO SAGE

7.3.7 cria_base

Este procedimento cria os diretórios e arquivos necessários para uma nova configuração do
SAGE, a partir de uma configuração padrão. Sua forma de uso e os opcionais estão descritos abaixo.
Uso:
cria_base <base> [padrao]

Onde:
base É o nome da base a ser criada.
padrao É o nome da base origem (configuração) que será utilizada como referencia para
a criação da nova base, caso não seja especificado, será utilizado o conteúdo da
variável de ambiente $PADRAO.

7.3.7.1 Exemplos:

cria_base uhett

→ Cria a estrutura de diretórios para a base uhett, baseada em $PADRAO.

cria_base uhett xpto

→ Cria a estrutura de diretórios para a base uhett, baseada na estrutura da base xpto

7.3.8 remove_base

Este procedimento remove os diretórios e arquivos pertencentes a uma configuração do SAGE.


Sua forma de uso e os opcionais estão descritos abaixo.
Uso:
remove_base [base]

Onde:
base É o nome da base que será removida.
ATENÇÃO: caso não seja especificado, será utilizado o conteúdo da variável de
ambiente $BASE, portanto a base que está atualmente habilitada será removida.

7.3.8.1 Exemplos:

remove_base

→ Remove a estrutura de diretórios da configuração indicada em $BASE

remove_base uhett

80
7 SCRIPTS DE MANUTENÇÃO DO SAGE

→ Remove a estrutura de diretórios da configuração uhett.

7.3.9 habilita_base

Este procedimento permite colocar qualquer base de dados do SAGE (instalada) como default.
Ele prepara todo o ambiente com as características da nova configuração. Sua forma de uso e os
opcionais estão descritos abaixo.
Uso:
habilita_base [base]

Onde:
base É o nome da base que será habilitada como default. Caso não seja especificado,
será utilizado o conteúdo da variável de ambiente $BASE.

7.3.9.1 Exemplos:

habilita_base

→ Coloca como default a configuração indicada em $BASE

habilita_base uhett

→ Coloca como default a configuração indicada em uhett

Obs.: As modificações feitas pelo script habilita_base só terão efeito após efetuar logout e login.

7.3.10 instala_aplicacao

Gera o código executável dos programas desenvolvidos pelo usuário em código "C" que tenham
sido colocados no diretório $SAGE/config/$BASE/sys. Caso o usuário não tenha desenvolvido
programas próprios em código "C" para serem executados dentro do SAGE, o comando
instala_aplicação não é necessário.
Uso:
instala_aplicacao

7.3.11 instala_sage

Este procedimento permite instalar o SAGE de forma simples e interativa. Com ele, podemos
instalar uma base, os binários, os fontes e também configurar todo o ambiente operacional, no que
diz respeito a variáveis de ambiente e parametrização do sistema operacional. Sua forma de uso e
os opcionais estão descritos abaixo.
Uso:

81
7 SCRIPTS DE MANUTENÇÃO DO SAGE

instala_sage <base> [src]

Onde:
base É o nome da base que será instalada e habilitada a partir do arquivo
sagecnf_$BASE.tar.Z;
src É um mnemônico que indica que os fontes do SAGE também devem ser
instalados, esta instalação é feita a partir do arquivo sagesrc.tar.Z.

7.3.11.1 Exemplos:

instala_sage demo_ems

→ Instala os binários do sistema SAGE e expande o arquivo sagecnf_demo_ems.tar.Z que


contem toda a configuração da base demo_ems, colocando-a como default.

instala_sage demo_ems src

→ Instala os binários e os fontes do sistema SAGE e expande o arquivo


sagecnf_demo_ems.tar.Z que contem toda a configuração da base demo_ems, colocando-a como
default.

7.3.12 instala_update

Este procedimento permite instalar os updates do SAGE localmente ou em rede de forma simples
e com algumas vantagens, como por exemplo, a criação de um arquivo de log ($LOG/update.log)
que registra as datas de todas as atualizações efetuadas no sistema. Além disto, uma cópia dos
arquivos alterados é salva no arquivo antes_updnnn_$CPU_$MODELO.tar.Z, (em
$SAGE/updates), permitindo-se, assim, que se retorne a uma situação anterior aos updates, usando
o comando “remove_update <num_upd>”, que irá expandir os arquivos
antes_updnnn_$CPU_$MODELO.tar.Z, na ordem inversa em que foram instalados,
Sua forma de uso e os opcionais estão descritos abaixo.
Uso:
instala_update <num_updI> [num_updF] [-h host | -s [arq]] [-u user]

Onde:
-num_updI Número inicial do update a ser instalado.
-num_updF Número final do update a ser instalado.
-h host Instala o(s) update(s) no site especificado em host.
-s Instala o(s) update(s) nos sites configurados no arquivo $BD/sti_hosts.
-s arq Instala o(s) update(s) nos sites configurados no arquivo “arq”.
-u user Instala o(s) update(s) na conta do usuário user.
-h Para exibir as opções de uso.

82
7 SCRIPTS DE MANUTENÇÃO DO SAGE

7.3.12.1 Exemplos:

instala_update 001

→ Instala o update de nome upd001_$SAGE_SO_ems.tar.Z na máquina local

instala_update 001 010

→ Instala do update 1 ao update 10 na máquina local.

instala_update 010 –s arq_sites

→ Instala o update 10 na(s) máquina(s) relacionada(s) no arquivo ./arq_sites

instala_update 010 –h piracicba

→ Instala o update 10 na máquina piracicaba.

instala_update 010 –s piracicaba –u xpto

→ Instala o update 10 na máquina piracicaba na conta do usuário xpto.

7.3.13 remove_update

Este procedimento permite remover os updates do SAGE e restaurar a versão anterior a partir do
arquivo antes_updnnn_$CPU_$MODELO.tar.Z. Sua forma de uso e os opcionais estão descritos
abaixo.
Uso:
remove_update <num_upd>

Onde:
Num_upd é o número do update a ser removido.

7.3.13.1 Exemplo:

remove_update 10

→remove o update número 10 e restaura o arquivo de backup


antes_upd010_Linux_x86_ems.tar.Z.

7.3.14 zipconfig

Para criar backups da configuração, devemos utilizar o script zipconfig. Este script criará
arquivo(s) de backup nos formatos tar.gz ou .tar.bz2 para uma configuração. Se nenhum parâmetro
opcional for selecionado, será criado o arquivo cnf_”$BASE”_ddmmaa.tar.?, com a configuração
completa da base (idem ao criasagecnf).

83
7 SCRIPTS DE MANUTENÇÃO DO SAGE

Veja abaixo os exemplos:


Uso:
zipconfig < base| [-l|u|x arq] > [-b] [-i] [-t] [-s] [-c] [-m] [-v]
[-zip | -tgz]

O parâmetro [base] é obrigatório para a operações de compactação, enquanto que os parâmetros


[-l arq], [-u arq] e [-x arq] devem obrigatoriamente ser usados em operações de expansão. Os
demais parâmetros são opcionais.
Os parâmetros de zipconfig são definidos da seguinte forma:
Parâmetros Obrigatórios:
base Nome da configuração para a execução dos procedimentos.
-x arq Expande arquivo no diretório local à execução.
-u arq Atualiza somente arquivos mais novos (só para zip).
-l arq Lista os arquivos do empacotamento.
Parâmetros Opcionais:
-b Empacota diretórios bd e bd/fria.
-i Empacota diretório ihm.
-t Empacota diretório telas.
-s Empacota diretório sys.
-c Empacota diretório calculos.
-m Cria múltiplos arquivos (válido para –b, -i, -t, -s e –c)
-v Lista arquivos durante o empacotamento.
-zip Empacotamento e compressão com zip. (default tar e bzip2)
-tgz Empacotamento com tar e compressão gzip.

7.3.14.1 Exemplos:

zipconfig demo_ems

→ Cria em $SAGE o arquivo cnf_demo_ems_ddmmaa.tar.bz2

zipconfig demo_ems -i

→ Cria em $SAGE o arquivo ihm_demo_ems_ddmmaa.tar.bz2

zipconfig demo_ems –i -gz

→ Cria em $SAGE o arquivo ihm_demo_ems_ddmmaa.tar.gz

zipconfig demo_ems –i –t -b

→ Cria em $SAGE o arquivo bd_ihm_tel_demo_ems_ddmmaa.tar.bz2

zipconfig demo_ems –i –t –b –m

→ Cria em $SAGE os arquivos: bd_demo_ems_ddmmaa.tar.bz2


ihm_demo_ems_ddmmaa.tar.bz2
tel_demo_ems_ddmmaa.tar.bz2

zipconfig -x xpto.tar.gz

84
7 SCRIPTS DE MANUTENÇÃO DO SAGE

→ Expande o arquivo xpto, no formato gz, no local de execução do comando.

zipconfig demo_ems –t –i –c -zip

→ Empacota diretório de telas, ihm e calculos com zip.

zipconfig -u arq.zip

→ Expande arquivos de arq.zip mais recentes e/ou novos no diretório corrente (só para formatos
zip).

7.3.15 criasagecnf

Para criar backup da configuração completa, podemos utilizar o script criasagecnf. Este script
criará um arquivo de backup no formato .tar.Z para uma configuração. Será criado o arquivo
sagecnf_“$BASE”.tar.Z.
Uso:
criasagecnf [base] [zip]

Onde
:
base É o nome da configuração para a execução do processo.
zip Utiliza o método de empacotamento e compressão zip.

7.3.15.1 Exemplos:

criasagecnf

→ Cria em $SAGE o arquivo sage_cnf_$BASE.tar.Z (base habilitada)

criasagecnf demo_ems

→ Cria em $SAGE o arquivo sage_cnf_demo_ems.tar.Z

7.3.16 criasageexe

Este procedimento cria em $SAGE, um arquivo binário de distribuição do SAGE e tem o seguinte
formato: sageexe_$SAGE_SO_$MODELO.tar.Z. Sua forma de uso e os opcionais estão descritos
abaixo.
Uso:
criasageexe [sage_so] [modelo]

Onde:
sage_so É o nome da variável de ambiente que indica para qual sistema

85
7 SCRIPTS DE MANUTENÇÃO DO SAGE

operacional e hardware será criado o binário do SAGE (ex.: Linux_x86,


SunOs_sparc). Caso não seja especificado, será utilizado o conteúdo da
variável de ambiente $SAGE_SO;
modelo É o nome da variável de ambiente que indica qual modelo será utilizado
para criar o binário do SAGE. Caso não seja especificado, será utilizado
o conteúdo da variável de ambiente $MODELO.

7.3.16.1 Exemplos:

criasageexe

→ Cria o arquivo sageexe_$SAGE_SO_$MODELO.tar.Z em $SAGE

criasageexe Linux_x86

→ Cria o arquivo sageexe_ Linux_x86_$MODELO.tar.Z em $SAGE

criasageexe Linux_x86 ems

→ Cria o arquivo sageexe_ Linux_x86_ems.tar.Z em $SAGE

7.3.17 habilita_postgres

Este script cria as bases de dados utilizadas pelo SAGE, no servidor de base de dados relacional
postgresql.
O nome das bases de dados depende do valor das variáveis de ambiente $MODELO (nome do
modelo de dados), $BASE (nome da base de dados de tempo real do SAGE) e $USER (conta do Unix
que será a proprietária das bases).
Na lista abaixo os nomes entre parênteses referem-se às bases criadas para o modelo “ems”,
base “demo_ems” e usuário “sage”, que correspondem à distribuição Padrão do CEPEL.
cf$MODELO_$USER (cfems_sage): Catálogo da Base Fonte;
cr$MODELO_$USER (crems_sage): Catálogo da Base Referência;
ch$MODELO_$USER (crems_sage): Catálogo da Base Histórica;
bf$BASE_$USER (bfdemo_ems_sage): Base Fonte;
bh$BASE_$USER (bhdemo_ems_sage): Base Histórica;
bc$BASE_$USER (bcdemo_ems_sage): Base Histórica Consolidada);
sapre: Base para o Ambiente de Estudos do SAGE.

O script cria ainda as tabelas e atributos para a base histórica consolidada e para a base sapre.
Obs.: Este script só deve ser utilizado se o servidor de base de dados relacional, a ser utilizado
pelo SAGE, for o Postgresql. Para os outros servidores de bancos de dados suportados pelo SAGE
(Informix e Oracle) o procedimento executado por este script deverá ser realizado manualmente pelo
usuário.

Uso :
habilita_postgres [-h <hostname> ] [-p <porta>] [-f] [-m] [-help]

86
7 SCRIPTS DE MANUTENÇÃO DO SAGE

Onde:
-h<hostname> Nome ou endereço IP do servidor postgresql na rede.
Valor default = localhost
-p <porta> Porta de serviço do servidor postgresql na rede.
Valor default = 5432.
-f Força a criação das estruturas das bases de dados do SAGE (default)
-m Para a execução do comando sem a recriação das estruturas das bases
de dados do SAGE.
- help Exibe ajuda.

Obs.: A opção –f apaga todas as informações pré-existentes. Não apaga a Base Histórica.

7.3.17.1 Exemplos:

habilita_postgres

→ Cria as bases utilizando o servidor postgresql instalado em localhost utilizando a porta 5432.

habilita_postgres serv1

→ Cria as bases utilizando o servidor postgresql instalado na máquina serv1 utilizando a porta
5432.

habilita_postgres -f

→ Faz com que as estruturas das bases de dados do SAGE sejam recriadas. Esta opção deve ser
utilizada quando há mudança da estrutura de dados da Base Fonte e/ou da Base de Tempo-Real do
SAGE. A partir do update 16 passou a ser a opção default.

habilita_postgres -m

→ Deve ser utilizada caso usuário desejar executar o comando habilita_postgres sem recriar as
estruturas das bases de dados.

7.3.18 habilita_gbh

Este script cria as tabelas e atributos da base histórica a partir dos arquivos de configuração
preparados pelo usuário. Os arquivos de configuração (entidade.bh e atributo.bh) estão localizados
no diretório $SAGE/config/$BASE/sti/gbh/dados. Caso o usuário deseje utilizar a configuração
padrão do CEPEL, esses arquivos já estão preparados no diretório
$SAGE/config/demo_ems/sti/gbh/dados.
Ao fazer a criação de uma nova base através do script cria_base (veja referência neste manual) os
arquivos de configuração da base histórica são automaticamente copiados da base PADRAO para o
diretório correspondente na nova árvore do SAGE.

87
7 SCRIPTS DE MANUTENÇÃO DO SAGE

Antes de executar o script habilita_bh, o usuário deve fazer as alterações que desejar nos
arquivos de configuração relacionados com a estrutura da base histórica fornecida pelo CEPEL. Para
maiores detalhes sobre esse procedimento consulte o Manual de Configuração da Base Histórica.
Uso :
habilita_gbh

7.3.19 TrocaIdentTelas

Este script executa a troca dos identificadores de pontos analógicos e digitais nas telas segundo
orientação dada em planilhas csv. Estas planilhas são a conversão de-para que se pretende fazer,
tendo na primeira coluna os identificadores “de” e na segunda coluna os identificadores “para”.

Uso:
TrocaIdentTelas <planilha_pas.csv> <planilha_pds.csv> <tela1> <tela2>

Como resultado, o script gera no diretório corrente as novas telas, tendo o nome do arquivo
seguido de _ID.
Onde:
planilha_pas.csv Planilha com pontos analógicos
planilha_pds.csv Planilha com pontos digitais
tela1 Tela utilizada
tela2 Tela utilizada

Os seguintes cuidados devem ser tomados ao construir as planilhas CSV necessárias ao uso do
script:
▪ Não pode haver espaços entre as duas colunas, apenas o caractere “ponto-e-vírgula”;

▪ Um identificador não pode aparecer duas vezes na mesma planilha.

7.3.19.1 Exemplos:

TrocaIdentTelas <planilha_pas.csv> <planilha_pds.csv> <tela1> <tela2>

→ Troca nas telas 1 e 2 os identificadores dos pontos analógicos contidos na primeira planilha
pelos identificadores dos pontos digitais contidos na segunda planilha. Como resultado no diretório
corrente, temos:
<tela1>_ID <tela2>_ID

88
8
Capítulo

8 Planilha de Leituras Periódicas

O SAGE oferece uma funcionalidade provida pelo processo hist, através da qual são gerados
arquivos em formato CSV do MicroSoft-EXCEL, contendo um histórico de valores de pontos
analógicos pertencentes à entidade PAS do SAGE.
Esses pontos analógicos podem ser selecionados estaticamente na entidade PAS da Base Fonte
atribuindo o valor SIM ao atributo UAPL, ou dinamicamente através do diálogo desse tipo de ponto no
VisorTelas com o botão ‘seleção para exportação’. O número máximo de pontos que podem ser
selecionados é de 256.
A periodicidade de gravação de XX segundos é determinada com:

“setenv TMP_PLAN XX”

no SSC_Amb, onde o valor mínimo de XX é 2 segundos.


No SAGE, a periodicidade de aquisição analógica pode variar segundo os protocolos utilizados
(IEC/60870-5-104, DNP V3.0, IEC/61850, TASE.2 etc.), os parâmetros utilizados na base de dados
para ajuste desses protocolos, e a própria velocidade das linhas de comunicação. Sendo assim, a
periodicidade de gravação escolhida em TMP_PLAN deverá estar compatível com a taxa de
aquisição analógica possível de se obter no 0sistema configurado.
São gerados quatro arquivos diários "mmmddaa-p.csv" onde:
"mmm” é o mês
"dd" é o dia
"aa" é o ano
"p" é o período
para 00:00/06:00 p=1
06:00/12:00 p=2
12:00/18:00 p=3
18:00/24:00 p=4

Quando são feitas alterações na base de dados que afetam esta função, como, por exemplo, a
remoção de um ponto anteriormente selecionado para gravação, ou quando, por algum motivo, um
dos arquivos foi corrompido ou danificado, é feito um backup da planilha corrente e uma nova planilha
começa a ser escrita. As planilhas backup têm a mesma formação de nome, exceto pelo fato de que
em vez dos números 1, 2, 3 e 4 para designar os períodos, são usadas as letras a, b, c e d
respectivamente:

89
8 PLANILHA DE LEITURAS PERIÓDICAS

para 00:00/06:00 p=a


06:00/12:00 p=b
12:00/18:00 p=c
18:00/24:00 p=d

Os arquivos "csv" são lidos diretamente no EXCEL, e ficam em $ARQS pelo período definido na
variável de ambiente $NDIAS, assim como todos os outros desse diretório.
Ao lado de cada valor de medida registrado, pode existir um caracter de atributo de qualidade,
indicando medição inválida ("@") ou medição manual ("%").
No Windows deve ser configurado:
- o separador ";" em ControlPanel-RegionalSetings-Number-ListSeparator
- símbolo "." em ControlPanel-RegionalSetings-Number-DecimalSimbol

Na Figura 8- 1 pode ser visto um exemplo da planilha gerada:

Figura 8- 1 - Arquivo out2606-3.csv.

Observações:
28. Quando um ponto é selecionado ou tem sua seleção cancelada dinamicamente, ou
seja, através do VisorTelas, suas medidas só são incluídas ou excluídas no arquivo
csv do próximo período a ser gerado.

29. A aquisição dos valores é feita de acordo com a periodicidade de gravação estipulada,
porém, os registros só aparecerão na tabela caso ocorra variação no valor de pelo
menos uma medida.

90
8 PLANILHA DE LEITURAS PERIÓDICAS

30. No caso de queda do sistema, este evento ficará registrado na tabela apresentando os
valores da suas medidas zerados e acompanhados do caracter “ #”, como pode ser
visto na linha 19 na planilha do exemplo acima.

91
8 PLANILHA DE LEITURAS PERIÓDICAS

31.

92
9
Capítulo

9 Controle de Processo via linha de


comando (gcd_shell)

O gcd_shell é um utilitário que permite a interação com o módulo do GCD (gerente de controle
distribuído) para habilitar/desabilitar processos em um nó da rede para fins de manutenção. Esta
funcionalidade também está presente no Visor de Processos.
A sua ativação pode ser feita diretamente através de uma única linha de comando com a
especificação dos parâmetros, ou de modo de interativo.

9.1 Sintaxe de Ativação


O utilitário é ativado pela seguinte sintaxe: gcd_shell -c [comando] [processo] <noh> <-u user>
Onde:
-c  Executa o utilitário em linha de comando;
comando  Número ou mnemônico que indica qual comando será realizado sobre o
processo;
processo  Nome do processo (cadastrado na base de dados) sobre o qual será realizada o
comando;
noh  É o nome do nó (cadastrado na base de dados) onde será realizada o
comando. A especificação do nó é opcional já que depende do comando a ser
executado;
-u user  Executa o utilitário em outra conta de tempo-real.

Caso não seja especificado nenhum parâmetro, será exibida a janela ilustrada a seguir, para a
seleção dos comandos:

93
9 CONTROLE DE PROCESSO VIA LINHA DE COMANDO (GCD_SHELL)

Figura 9- 1 – Opções do utilitário gcd_shell.

Após a exibição desta tela, o usuário deverá informar a função desejada seguindo a sintaxe
especificada ao lado do comando conforme na Figura 9- 2.

9.1.1 Comandos

O GCD-Shell possui os seguintes comandos:

INPR_NO Inibição de um processo em um nó. Após esta chamada o processo será


desativado neste nó.
Exemplo:
gcd_shell INPR_NO calc srv1

INPR_GLO Inibição de um processo globalmente. Após esta chamada o processo será


desativado em toda a rede de tempo real. Este procedimento é equivalente a
usar a funcionalidade INPR_NO para todos os nós em que o processo está
cadastrado para rodar.
Exemplo:
gcd_shell INPR_GLO calc

DEPR_NO Habilitação de um processo em um nó. Após esta chamada o processo será


ativado neste nó. É o procedimento contrário ao item INPR_NO.
Exemplo:
gcd_shell DEPR_NO alr ihm3

DEPR_GLO Habilitação de um processo globalmente. Após esta chamada o processo


será ativado em toda a rede de tempo real. É o procedimento contrário ao
INPR_GLO.
Exemplo:
gcd_shell DEPR_GLO hist

FIM Sai do utilitário. Após esta chamada o gcd_shell é encerrado.

Para executar as ações acima, o usuário pode utilizar o nome da ação ou seu número,
respeitando a sintaxe de cada uma destas.

94
9 CONTROLE DE PROCESSO VIA LINHA DE COMANDO (GCD_SHELL)

Obs.1:: O gcd_shell funciona somente quando a ativação do SAGE é automática, visto que na
ativação manual o GCD não é lançado e os processos são ativados um a um pelo usuário.

95
9 CONTROLE DE PROCESSO VIA LINHA DE COMANDO (GCD_SHELL)

96
Capítulo

10
10 Aquisição de Dados de Sistemas
externos (ADS)

O módulo ADS (Aquisição de Dados de Sistemas Externos) foi desenvolvido originalmente para
que o SAGE recebesse dados do primeiro sistema EMS instalado no CNOS (fornecido pela empresa
francesa SODETEG TAI.) criando dessa forma um ambiente de supervisão paralela com esse
sistema. Posteriormente foram acrescentadas funcionalidades que permitiram colocar dois SAGEs
em paralelo.
O serviço ADS integra o servidor ADS_LOC se comunicando com dois tipos de clientes: o ADS
para dados SCADA e o ADE para dados estimados. Esses clientes são independentes e podem
funcionar ambos no mesmo sistema ou individualmente.
O cliente ADS funciona no SAGE como um conversor de protocolo para comunicação com outros
sistemas ou com um outro SAGE, aquisitando os dados analógicos e digitais e executando controles
supervisórios. O cliente ADE atualiza a base do SAGE com os dados do Estimador de Estado ativo
no sistema COS.
O ADS tem sido amplamente utilizado na migração de sistemas antigos para o SAGE, também
para a disponibilização de plataformas de Tempo Real para fins corporativos e para disponibilização
de dados reais para ambientes de simulação e testes de bases de dados e aplicativos, sem
interferência no sistema e riscos operacionais.

Figura 10- 1 - Aplicação do ADS.

O ADE tem sido utilizado para sistemas locais poderem exibir localmente os dados estimados no
Sistema COS.

97
10 AQUISIÇÃO DE DADOS DE SISTEMAS EXTERNOS (ADS)

10.1 Funcionamento
Os processos clientes residem em $SAGE/bin/$SAGE_SO/$MODELO, e o servidor em
$SAGE/bin/$SAGE_SO.
Os dados do SAGE de Tempo-Real são disponibilizados para o Servidor ADS (asd_loc) pelo
processo hist que roda nos servidores de tempo-real. Estes arquivos são lidos pelo ads_loc (servidor)
e transferidos para o ads/ade (cliente) no SAGE paralelo via TCP/IP. São eles:cl.ref e cl.dat, para
pontos digitais e pa.ref, pa.dat e pe.dat para pontos 0analógicos.
Os arquivos com extensão .ref são arquivos contendo a lista de pontos da base de dados do
SAGE de Tempo-Real e são enviados para o SAGE paralelo sempre que ele entra no ar com uma
nova base de dados. Esta lista é utilizada pelo SAGE paralelo para verificar quais pontos serão
disponibilizados pelo servidor e em que referência de ordem os valores dos mesmos serão listados
nos arquivos .dat. Isso permite que o ADS/ADE funcione mesmo quando há inconsistência de bases
entre os SAGEs.
Os arquivos pa e cl com extensão .dat contêm os valores SCADA de Tempo-Real dos pontos
listados nos arquivos de referência (.ref) e são enviados periodicamente para o SAGE paralelo.
O arquivo pe.dat contém os dados estimados, análogos aos dados tempo-real de pa.dat.
Como são produzidos pelo módulo ‘hist’ esses arquivos residem no diretório $ARQS do SAGE de
Tempo-Real e o comando de lançamento do servidor (ads_loc) deve apontar para este diretório.
O ADS/ADE espera que os arquivos .dat sejam constantemente atualizados. O cliente ADS/ADE
detecta a perda de comunicação com o SAGE paralelo através do envelhecimento dos arquivos .dat.
A melhor forma de produzir arquivos .dat é a que usa este arquivo como um link, e a cada ciclo
grava uma cópia (operação não atômica), "alterando o link" da cópia anterior em outro arquivo para a
cópia recém gravada no novo arquivo, já que a operação de recriação do link é atômica.
Os controles supervisórios executados no sistema remoto são repassados pelos ads cliente para o
ads_loc, que tenta a execução do mesmo caso esta função esteja habilitada no script de lançamento
do servidor. O servidor ads_loc repassará ao ads cliente a informação de sucesso ou fracasso do
controle e estas serão repassadas ao operador normalmente como com qualquer outro conversor.
O log do processo cliente fica em $LOG junto com os logs de outros processos do SAGE. Já o log
do processo servidor fica em /tmp, visto que este pode estar rodando fora de uma plataforma SAGE,
obtendo arquivos por NFS.
Para que o cliente ADS funcione, é necessário que o SAC esteja no ar e não pode haver nenhum
protocolo concorrendo com ele, ou seja, o SAGE paralelo pode ter outros protocolos rodando
simultaneamente ao ADS desde que não estejam aquisitando um mesmo ponto da base de dados.
Para que o cliente ADE funcione, não pode haver concorrência com o SAR_estmon.

98
10 AQUISIÇÃO DE DADOS DE SISTEMAS EXTERNOS (ADS)

10.2 Configuração para utilização ADS

10.2.1 Variáveis de Ambiente do ADS no SSC_Amb

As variáveis de Ambiente utulizadas pelo ADS são: TMP_INTGR, ATLZINV e TMP_ADAT. A


Descrição destas variáveis pode ser vista em 17.1.

Figura 10- 2 - Funcionamento do ADS.

10.2.2 Base de Dados

Para utilizar o processo ADS cliente, é necessária sua configuração na base de dados fonte do
SAGE, mediante o preenchimento das tabelas PRO, SXP e INP. A seguir veremos um exemplo de
configuração do ADS em dois servidores da rede SAGE (sage1 e sage2).

10.2.2.1 Tabela PRO - Classe de Processos

Esta tabela configura os processos do SAGE. Deve ser adicionado o seguinte registro:

99
10 AQUISIÇÃO DE DADOS DE SISTEMAS EXTERNOS (ADS)

PRO ADS PRO ADE


ATIVA = PRS ID = ADE
ATVAT = AUT NOME= Aquisição de Dados Estimados
ESSEN = NES SCRAT = Ade_on.rc
ID = ads SCRDE = Ade_off.rc
NOME = Aquisição de Dados de Sistemas
Externos
SCRAT = ads_on.rc
SCRDE = ads_off.rc
TIPPR = INSP

10.2.2.2 Tabela SXP - Relacionamento Severidade x Classe de Processos

Esta tabela define para cada processo um limite tolerado de erros e eventos que ele pode gerar,
classificados por severidade. Devem ser adicionados os seguintes registros:

SXP
PRO = ads/Ade
SEV = ADVER
SPX
PRO = ads/Ade
SEV = FATAL
SPX
PRO = ads/Ade
SEV = NORML
SPX
PRO = ads/Ade
SEV = PANIC
SPX
PRO = ads/Ade
SEV = SNULA
SPX
PRO = ads/Ade
SEV = URGEN

10.2.2.3 Entidade Instância de Processo

Um processo pode ser ativado em vários nós e cada uma dessas ativações define uma instância
do processo. Esta entidade configura as instâncias de todos os processos do SAGE.
Devem ser adicionados os seguintes registros:

INP
NOH = sage1
ORDEM = 1
PRO = ads/Ade
INP
NOH = sage2
ORDEM = 2
PRO = ads/Ade

100
10 AQUISIÇÃO DE DADOS DE SISTEMAS EXTERNOS (ADS)

10.2.3 Script de Ativação ADS:

O script de ativação do cliente ADS (ads_on.rc) contém o comando de lançamento do processo.


Este script faz parte da distribuição do SAGE e pode ser customizado. A seguir são descritos dois
exemplos de comando de ativação do cliente ADS:
nohup $SAGE/bin/$SAGE_SO/$MODELO/ads $CONTEXTO srv_remoto_1 srv_remoto_2 ref 2 di
> $LOG/ads.log &

Onde:
▪ nohup é o comando de lançamento

▪ $SAGE/bin/$SAGE_SO/$MODELO/ads é o caminho onde se encontra o executável do


processo

▪ $CONTEXTO é a variável de ambiente que define o contexto em que o ADS vai rodar

▪ srv_remoto_1 e srv_remoto_2 é a declaração das máquinas onde roda o servidor ADS

▪ ref é a string que habilita o pedido dos arquivos .ref na inicialização

▪ 2 é o tempo de varredura dos dats em segundos

▪ di é a string que define que a varredura será integral (todas as TACs atualizadas de uma só
vez)

▪ > $LOG/ads.log é o comando de escrita do log de ativação

nohup $SAGE/bin/$SAGE_SO/$MODELO/ads $CONTEXTO 161.79.56.14 161.79.56.14


nref 600 dp CS > $LOG/ads.log &

Onde
▪ nohup é o comando de lançamento

▪ $SAGE/bin/$SAGE_SO/$MODELO/ads é o caminho onde se encontra o executável do


processo

▪ $CONTEXTO é a variável de ambiente que define o contexto em que o ADS vai rodar

▪ 161.79.56.14 e 161.79.56.14 é a declaração das máquinas onde roda o servidor ADS

▪ nref é a string que desabilita o pedido dos arquivos .ref na inicialização

▪ 600 é o tempo de varredura em segundos

▪ dp é a string que define que a varredura será parcial (o ADS dividirá o tempo de varredura
entre as TACs e fará a atualização das mesmas gradativamente)

101
10 AQUISIÇÃO DE DADOS DE SISTEMAS EXTERNOS (ADS)

▪ CS string de filtro (o ADS fará leitura somente dos pontos cujo ID comece com CS)

▪ > $LOG/ads.log é o comando de escrita do log de ativação

Obs.: Configurar o script de ativação do ADS cliente de forma que os dois IPs especificados
apontem para as duas máquinas (principal e backup) do SAGE de tempo-real, onde será feita a
instalação do Servidor ADSL.

10.2.4 Script de Ativação ADE:

O script de ativação do processo ADE é semelhante ao do processo ADS:

nohup $SAGE/bin/$SAGE_SO/$MODELO/Ade $CONTEXTO srv1 srv2 [dcp/ids]


tempo-de-ciclo [porta-tcp] > $LOG/ade.log &

O parâmetro “dcp” ou “ids” determina se os pontos analógicos serão localizados na base de dados
pelo atributo identificador “id” presente na MCD “ids” ou pelo atributo “observ” presente na MCD “dcp”.
O parâmetro tempo-de-ciclo (segundos) determina a periodicidade em que o cliente Ade solicitará
os dados estimados do servidor remoto.
O parâmetro porta-tcp é opcional e permite definir uma porta para conexão com o servidor remoto,
diferente da porta default 2105.

10.2.5 Configuração de Ativação do Servidor ADSL no Boot

Como o servidor ADS (ads_loc) não é controlado pelo SAGE, o ideal é que este seja ativado
durante o boot das máquinas de tempo-real. O procedimento para automatizar a ativação do servidor
ADSL no boot é descrito abaixo:
32. No $HOME da conta SAGE das máquinas onde vai ser instalado o ADSL, criar um
sub-diretório de nome 'adsl'. Por exemplo, se $SAGE for '/export/home/sage/sage'
esse diretório será '/export/home/sage/adsl'

> cd $HOME
> mkdir adsl

33. Copiar o arquivo executável ads_loc para o diretório recém criado adsl:

> cp $BIN/../ads_loc $HOME/adsl

34. Criar, dentro do diretório $HOME/adsl, o script executável S99adsl, com o seguinte
conteúdo:

#ident "@(#)/etc/rc3.d/S99adsl 14/05/97 CEPEL"


case "$1" in
'start')
if [ -x /export/home/sage/adsl/ads_loc ]

102
10 AQUISIÇÃO DE DADOS DE SISTEMAS EXTERNOS (ADS)

then
/export/home/sage/adsl/ads_loc /tmp/sage/arqs &
fi
;;
'stop')
exit
;;
esac

Obs1.: Através do comando ls –l, verificar se o script tem permissões de execução. Caso não
tenha, executar o comando:
> chmod a+x S99adsl

Obs2.: É importante que os caminhos absolutos dos diretórios adsl e $ARQS definidos no script
estejam corretos.
Obs.3: Para habilitar a execução de controles supervisórios no servidor ads_loc a linha:
/export/home/sage/adsl/ads_loc /tmp/sage/arqs &

Deve ser alterada para:


/export/home/sage/adsl/ads_loc /tmp/sage/arqs xx CRTL_HAB &

Onde:
▪ CTRL_HAB é o parâmetro opcional de habilitação de execução de controles;

▪ xx é o tempo de time-out de controle em segundos.

35. Como super-usuário, copie esse S99adsl editado para o diretório:

/etc/rc3.d, se a plataforma for SUN;


/etc/rc5.d, se a plataforma for Linux;
/sbin/rc3.d se a plataforma for Alpha;
/etc/rc5.d. se a plataforma for Itanium, mesmo do Linux.

36. Reiniciar a máquina.

Para verificar se o servidor ADSL está funcionando corretamente utilizar o seguinte comando:
>tail -f /tmp/adsl.log

10.3 Arquivos CL.REF , PA.REF, PA.DAT, PE.DAT e


CL.DAT
Os arquivos planos descritos abaixo, encontram-se em $ARQS e são usados pelo módulo ADS do
SAGE para a interface de Dados entre Sistemas.

103
10 AQUISIÇÃO DE DADOS DE SISTEMAS EXTERNOS (ADS)

10.3.1 CL.REF e PA.REF (codificação ASCII)

dd-mmm-aaaa hh:mm:ss.ms
<id-ponto-1>
.
.
.
<id-ponto-n>

Onde ’dd-mmm-aaaa hh:mm:ss.ms’ é a data-hora da criação do arquivo REF que será


referenciada nos arquivos DAT. O arquivo ‘cl.ref’ possui os identificadores dos pontos digitais de PDS
e o arquivo ‘pa.ref’ os identificadores dos pontos analógicos de PAS.

10.3.2 PA.DAT ou PE.DAT (codificação binária)

Figura 10- 3 – Codificação binária de PA.DAT.

onde os valores das medidas e as datas-hora do cabeçalho são gravados em formato VAX. O
tamanho total desse arquivo é de [18 + (n*6)+8] bytes.

104
10 AQUISIÇÃO DE DADOS DE SISTEMAS EXTERNOS (ADS)

10.3.3 CL.DAT (codificação binária)

Figura 10- 4 - Codificação binária de CL.DAT.

O tamanho total desse arquivo é de [18 + (n*2)+8] bytes.

10.3.4 Codificação do Estado e dos Flags

105
10 AQUISIÇÃO DE DADOS DE SISTEMAS EXTERNOS (ADS)

106
Capítulo

11
11 Supervisão via linha de comando
(info-tr)

O utilitário INFO_TR é um programa de consulta interativa de dados de tempo real. Ele permite a
leitura de estados e valores da base de dados e a atuação sobre pontos do sistema elétrico.
O utilitário é ativado pela seguinte sintaxe: info-tr
Ao ser ativado o utilitário exibe a tela mostrada abaixo.

Figura 11- 1 - Tela de Apresentação do Utilitário INFO-TR.

Após a exibição desta tela, o usuário digita um dos comandos acima listados, seguido de
<ENTER>.
O comando Le possibilita a leitura do valor ou estado corrente e atributos diversos de qualquer
ponto de tempo real dos tipos digital, analógico, totalizado ou ponto de controle supervisório.
No exemplo abaixo o usuário solicita as informações sobre o ponto PA_FPOT_DJ2054_AZ, e
recebe o seguinte reporte:

107
11 SUPERVISÃO VIA LINHA DE COMANDO (INFO-TR)

Comando (L,C,A,U,E,H,R,T,I,N,F) → le PA_FPOT_DJ2054_AZ


Informacoes da medida analogica PA_FPOT_DJ2054_AZ (indice 33):
[ Fator de Potencia Fase AZ do DJ2054 de PA ]
Considerado → 700.50
Aquisitado → 700.50
Limites Inf. → 0.00 0.00 0.00
Limites Sup. → 689.00 750.00 760.00
Regiao → normal
Flags → -FOVAR -FALHA -IVORG -MAORG +SACOK
-MANUA -NINCI +ANREC -AINIB -NOSUP

Através do qual são obtidas as seguintes informações:


▪ Índice - Índice absoluto no banco de dados (1-n) para o tipo de ponto escolhido, no caso
uma medida analógica, igual a 33.

▪ Descrição - Descrição do ponto obtida da base de dados, no caso [Fator .de Potência …].

▪ Considerado - Valor considerado do ponto, ou seja aquele que é reportado para os


sistemas externos (centros de controle que recebem esse dado). O valor considerado pode
ser inserido manualmente pelo Subsistema de Interface Gráfica (SIG) ou substituído
automaticamente pela estimação de estado do Subsistema de Análise de Redes (SAR).

▪ Aquisitado - O valor efetivamente aquisitado do sistema ou equipamento que o enviou.


Será diferente do valor considerado se o atributo de inserção manual feita pelo SIG estiver
assinalado.

▪ Limites Inferiores - Informa os valores do limites inferiores que determinam as regiões


inferiores de advertência, urgência e escala, nessa ordem.

▪ Limites Superiores - Informa os valores do limites superiores que determinam as regiões


superiores de advertência, urgência e escala, nessa ordem.

▪ Região - Informa a região de operação corrente de uma medição analógica ou de um


totalizador, dentre as regiões: normal, inferior de advertência inferior de urgência, superior
de advertência, superior de urgência, inferior de escala ou superior de escala. Para os
totalizadores somente a região normal e as regiões superiores são possíveis de serem
atingidas.

▪ Flags - Informa os estados dos atributos: "fora de varredura" (FOVAR), "em falha de
aquisição" (FALHA), "inválido na origem" (IVORG), "manual na origem" (MAORG),
"manualmente inserido pelo operador local" (MANUA), "serviço de aquisição e controle ok"
(SACOK), "não inicializado após o estabelecimento da comunicação de dados" (NINCI),
"presença de evento de alarme não reconhecido para o ponto nas listas de alarme"

108
11 SUPERVISÃO VIA LINHA DE COMANDO (INFO-TR)

(ANREC), "geração de alarmes inibida para o ponto" (AINIB) e "ponto não supervisionado
pelo SAC" (NOSUP). Cada keyword acima listada é acompanhada de um sinal (+),
indicando que o atributo está assinalado ou (-) para indicar que ele está desassinalado.

O comando Controla permite enviar ao SAC um pedido de controle supervisório para close
(valor=1) ou trip (valor=0), um set-point ou um conjunto de pulsos de raise (valor=+n) ou lower
(valor=-n).
O comando Adv permite enviar ao SAC um pedido para alteração dos limites inferior e superior de
advertência.
O comando Urg permite enviar ao SAC um pedido para alteração dos limites inferior e superior de
urgência.
O comando Entra permite fazer uma inserção manual sobre o ponto escolhido da mesma forma
que é feita pelo SIG. Após a execução desse comando o ponto ficará "fora de varredura" e "inserido
manualmente", ou seja, o valor aquisitado não será transferido para o campo de valor considerado.
O comando Habilita permite a restauração do ponto a condição normal de aquisição após uma
inserção manual ou retirada de varredura ou inibição de alarme.
O comando Reconhece possibilita reconhecer um alarme inserido nas listas de alarmes sem ser
necessário o acesso a essas listas, mas apenas referenciando o nome do ponto.
O comando Tipo permite que seja indicado sobre que tipo de dado se pretende atuar. Os tipos
válidos e keywords equivalentes são:
▪ dig - para pontos de aquisição de estados digitais (chaves, disjuntores, etc.. );

▪ med - para pontos de aquisição de medidas analógicas (MW, MVAR, KV, etc..);

▪ tot - para pontos de aquisição de totalizadores (dados hidro-meteorológicos, dados de


MWh, etc.. );

▪ ctl - para pontos de controle supervisório.

O comando Inibe permite a inibição de alarme de um ponto.


O comando Índice permite obter o endereço da TAC a qual pertence o ponto e o seu índice
relativo dentro dela. Essa informação pode ser usada no arquivo de programa de simulação que o
simulador sim-tr processa para simular um cenário dinâmico de tráfego de mensagens para o sac.
O comando Fim termina o programa.

109
11 SUPERVISÃO VIA LINHA DE COMANDO (INFO-TR)

110
Capítulo

12
12 Failover de Gateways

O SAGE implementa a filosofia de pares de máquinas (gateways) redundantes entre si em hot


standby, ou seja, uma das máquinas assume a posição de nó primário e gerencia as comunicações
com UTRs, IEDs, CLPs etc, e o nó chamado secundário fica online, pronto para tornar-se primário em
casa de falha do nó que desempenha este papel. Esta migração da gerência das comunicações é
chamada failover de gateways.
Visto que o failover de gateways só acontece caso haja uma queda no nó primário, foi
implementado um esquema de failover automático, executado pelo SAC, para as situações em que o
sistema no nó primário permanece no ar mas com todas as ligações inoperantes.
A habilitação deste esquema é feita através da definição da variável de ambiente TMP_FAIL_GSD
(ver 17.1) conforme segue:
setenv TMP_FAIL_GSD xxx

onde xxx é o tempo em segundos para a ativação do failover.

O failover somente ocorrerá se:


37. o nó é primário no gateway e existe um nó secundário ativo;

38. estão inoperantes todas as ligações vinculadas a protocolos (exceto CNVD e NLCN),
cujo atributo "verbd" da entidade LSC não seja igual a "LOCAL", e que já tenham
passado pelo estado operacional nesse nó pelo menos uma vez desde que o estado
primário foi assumido.

Existe ainda a possibilidade de se provocar o failover de gateways a partir de um controle


supervisório. Para tanto é preciso implementar no código da aplicação do usuário uma rotina que
execute o script de restart do gateway primário ($SAGE/bin/scripts/gcd_off_cgs.rc) a partir da
ativação de um controle lógico (CGS). Neste caso o failover será ativado pelo processador de
cálculos (CALC).
Uma terceira maneira de se provocar um failover de gateways é através do protocolo SNMP. O
script de restart do gateway primário poderá ser executado pelo agente SAGE SNMP quando
solicitado por um gerente SAGE SNMP ou por um outro software de gerenciamento SNMP.
Obs.: Para mais informações consultar a documentação do SNMP.

111
12 FAILOVER DE GATEWAYS

112
Capítulo

13
13 Instalação e Uso do Som no SAGE
13.1 Introdução
Este capítulo descreve a configuração do esquema de “som local em console”, adicional ao
esquema já existente de “som global em sala de controle”, oferecendo ao usuário uma opção para
audição dos alarmes sonoros da IHM em ambientes afastados da sala de controle.
O esquema está disponível para consoles instaladas em ambiente MS-Windows utilizando
Exceed ou Exceed-on-Demand e ambiente Linux utilizando X-Windows das máquinas.

13.2 Instalação do Servidor de Som Local –


SERVSOM

13.2.1 Em Ambiente Windows

Para gerenciar a emissão dos sons dos alarmes do SAGE em uma console de IHM, é necessário
instalar na máquina da console o servidor de som ServSom. Caso o ambiente operacional da
console seja MS-Windows com Exceed ou Exceed-on-Demand, deve-se proceder da seguinte
maneira:

▪ Certificar-se através do comando “java –version”, digitado em uma janela de Prompt de


Comando, que a versão do JAVA é igual ou superior a 1.6.0_13 (version 6 update 13).
Caso não seja, instalar o JAVA mais recente a partir de www.java.com.

▪ Criar no Windows a variável de ambiente “SAGE” que indicará o diretório de instalação dos
softwares relacionados ao SAGE. Para efetuar a criação, clicar em “Painel de Controle 
Sistema  Configurações Avançadas  Variáveis de Ambiente  Novo”, digitar
“SAGE” para o nome da variável e o caminho completo do diretório para o valor da
variável, como por exemplo, “C:\sage”.

▪ Obter através do site do SAGE, a mais recente versão do kit de instalação


inst_ServSomJava.zip disponível em Serviços On Line  Atualizações  Outubro de
2008  updates. Colocar esse arquivo ZIP em um diretório temporário e expandi-lo.
Executar o arquivo Instala_ServSomJava.bat. Será criado no DeskTop do Windows um

113
13 INSTALAÇÃO E USO DO SOM NO SAGE

ícone “ServSom” para a ativação do aplicativo. Sugere-se que a ativação do ServSom


seja copiada para o menu “Iniciar”, de forma que esse servidor sempre esteja ativo
enquanto o usuário estiver utilizando a console.

▪ Após a instalação do ServSon no ambiente Windows, será necessária a configuração


específica do Exceed para abrir um Visor de Acesso com o servidor de som configurado.
Para isto, tenha um Xstart Cliente instalado na máquina e um Client específico para o som.
Depois de devidamente instalado o Exceed, clique no ícone Exceed on Demand no
desktop e configure o servidor EoD da seguinte maneira:

39. Na aba Connect da janela abaixo, conecte-se ao Servidor Exceed inserindo as


informações solicitadas e efetue o Login.

40. Escollha qual Xconfig e Xstart serão carregados, selecionando na barra de menus a
opção Edit/Xconfig Manager. Selecione a opção “XDCMP_Broadcast.cfg”

41. Clique no botão Copy e renomeie a novo arquivo .cfg criado para o nome desejado e,
em seguida, clique no botão Modify. Será criada uma conexão passiva para abrir uma

114
13 INSTALAÇÃO E USO DO SOM NO SAGE

janela com a execução de um software Linux como, por exemplo, o Visor de Acesso
do SAGE.

42. Modifique as configurações do Xconfig:

• Na aba Font clique em Edit;

• Na janela seguinte, clique em Add e em Font Server insira o Host do servidor de


fontes e escolha a porta a ser usada. Por precaução faremos o procedimento 2 vezes
para usar as 2 portas 7000 e 7100. Após a inserção dos 2 servidores de fonte, deve-
se mover os 2 para o topo da lista clicando no botão Move Up. Confirme a operação
cllicando em OK e siga para a próxima aba.

115
13 INSTALAÇÃO E USO DO SOM NO SAGE

43. Na aba Communication, selecione a opção Passive para Startup Mode.

116
13 INSTALAÇÃO E USO DO SOM NO SAGE

– No caso de estar criando um script para carregar um Desktop SAGE, escolha a


opção XDMCP_QUERY e insira o IP do servidor Exceed. Clique em Apply para
aplicar a mudança.

44. Na aba Performance, desabilite a opção “Limit Window Exposures” da área Drawing
e modifique a opção Backing Store para When Mapped. Na área Connection,
modifique a opção Speed para Slow e clique em Apply para aplicar as mudanças.

117
13 INSTALAÇÃO E USO DO SOM NO SAGE

45. Na aba Screen do Xconfig certifique-se de que na área Window Mode esteja
selecionada para “Multilpe”. Ainda nessa área, na opção Window Manager, selecione
a opção “Default to Native”. A maioria das aplicações X trabalham com as janelas
nativas do Windows, porém algumas requerem o gerenciador de janelas nativo do
Sistema Operacional da Aplicação. Caso a aplicação necessite do gerenciador de
janelas nativo, o EOD pode trazer qualquer gerenciador de janelas do Linux/Unix
(mwm, Metacity ou olwm). É valido efetuar testes utilizando a opção “PseudoColor” na
área General na opção de Server Visual. Essa opção selecionada reduz
consideravelmente o tamanho das imagens que são transferidas do Server para o
Client. Na opção General, selecione a opção “Exit on X Server Reset” para sair do
Exceed quando fechar as janelas ou resetar o ambiente X o servidor Linux.

118
13 INSTALAÇÃO E USO DO SOM NO SAGE

46. Clique em Ok para finalizar a configuração do Xconfig.

47. Selecione o novo Xconfig e clique em Select.

48. No caso de estar criando um script para carregar um Desktop SAGE escolha a opção
none para o Xstart, salte o procedimento de criação (vá para o item 14 desta lista) e
salve o arquivo EoD. Para a criação de um novo Xstart, basta clicar na opção Editar
da barra de menus e escolher a opção Xstart Manager. Será aberta uma nova janela
com os Xsarts existentes. Pode-se criar um novo Xstart clicando em New... ou copiar
um já existente clicando em Copy. No exemplo usaremos New...:

119
13 INSTALAÇÃO E USO DO SOM NO SAGE

49. Segundo a janela abaixo, na área Startup, para a opção Method selecione Secure
Shell, na área Conection insira em Host o IP do servidor Exceed, e em Command
insira o comando para chamar a tela do programa Linux. Após o preenchimento dos
dados, salve a configuração clicando no ícone de disquete na parte superior da janela
ou através do menu File/Save.

50. Na janela seguinte, nomeie ao novo Xstart e confirme a operação clicando em Save.

120
13 INSTALAÇÃO E USO DO SOM NO SAGE

51. Selecione o novo Xstart e clique Select.

52. Para criar um ícone de acesso direto ao Visor de Acesso na área de trabalho, na tela
inicial salve a nova conexão do Exceed OnDemand que terá uma extensão .eod,
clicando no ícone de disquete da barra de ferramentas, conforme janela abaixo:

53. Confira os dados e clique em continue:

121
13 INSTALAÇÃO E USO DO SOM NO SAGE

54. Escolha o local, neste caso o Desktop, dê um nome ao novo script e salve.

55. Clique no ícone e verifique se o script funcionou corretamente.

13.2.2 Em Ambiente Linux

Caso o ambiente operacional da console seja Linux (X-Windows), proceder da seguinte maneira:

▪ Como super-usuário no diretório $SAGE/drivers, instalar o ServSom para ser ativado no


próximo boot do Linux utilizando o comando “instala_transportes SSOM”. Caso não se
deseje mais que o ServSom seja ativado, deve-se executar da mesma forma o comando

122
13 INSTALAÇÃO E USO DO SOM NO SAGE

“desinstala_transportes”. Os arquivos serão instalados em /usr/local/sage_transp, os


sons (*.dsp) e o ServSom.cnf em /usr/local/sage_transpconfig/$BASE/bd .

▪ Criar em $HOME/Desktop, um icone no desktop para executar um Visor de Acesso


remotamente. Este ícone define a IHM para conexão, sendo ideal ter pelo menos dois
ícones, um principal e um reserva para conexão com outra IHM em casos onde a IHM
principal esteja fora do ar. A seguir exemplo de criação do ícone VisorIHM1.desktop.

[Desktop Entry]
Comment=
Comment[pt_BR]=
Encoding=UTF-8
Exec=xhost + ; ssh sage@161.79.56.22 "setenv REMOTEHOST 161.79.57.199 ;
/export/home/sage/sage/bin/scripts/VisorRemoto_on.rc"
GenericName=VisorIHM1
GenericName[pt_BR]=VisorIHM1
Icon=ktalkd
MimeType=
Name=VisorIHM1
Name[pt_BR]=VisorIHM1
Path=
StartupNotify=true
Terminal=false
TerminalOptions=
Type=Application
X-DCOP-ServiceType=
X-KDE-SubstituteUID=false
X-KDE-Username=

Tendo como base o exemplo anterior, customize a linha abaixo conforme seu ambiente:
Exec=xhost + ; ssh sage@161.79.56.22 "setenv REMOTEHOST 161.79.57.199 ;
/export/home/sage/sage/bin/scripts/VisorRemoto_on.rc"

Onde:
ssh sage@161.79.56.22

é o IP da IHM para conexão remota;


setenv REMOTEHOST 161.79.57.199

é o IP local, onde será exibido o visor de acesso.

▪ Ao clicar no ícone criado anteriormente, a janela abaixo será exibida solicitando a senha
para acesso a IHM remota.

123
13 INSTALAÇÃO E USO DO SOM NO SAGE

Figura 13 - 1: Janela de solicitação de senha para IHM remota.

Obs.: O primeiro acesso a IHM por ssh, deve ser feito via terminal, após responder a pergunta
chave para acesso. Essa pergunta não aparece no diálogo acima e sem a resposta correta não será
possível a autenticação para acesso a IHM, conforme figura abaixo:

Caso a interface gráfica para primeiro acesso não funcione conrretamente, esta deve ser
configurada através da execução do comando ssh conforme exemplo abaixo:
Exemplo:
sage@srv1:~/Desktop > ssh 161.79.58.198
The authenticity of host '161.79.58.198 (161.79.58.198)' can't be
established.
RSA key fingerprint is 26:5b:6f:65:cf:29:0d:94:99:50:ff:ac:f4:f9:78:39.
Are you sure you want to continue connecting (yes/no)?

Observação:
Para configurar o serviço de Som Local no SAGE utilizando uma própria IHM dentro da mesma
rede de difusão, siga os seguintes passos:

124
13 INSTALAÇÃO E USO DO SOM NO SAGE

▪ Como super-usuário no diretório $SAGE/drivers, instalar o ServSom utilizando o comando


“instala_transportes SSOM”.

▪ Setar a variável de ambiente SERV_SOM através do seguinte comando “setenv SERV_SOM


$HOST”

▪ Caso não se deseje iniciar o servidor de som apenas no próximo boot, este pode ser ativado
manualmente através do comando “service sage_transp start”. Além disso, o SAGE deve
ser ativado no mesmo terminal onde foram executados os comandos citados
anteriormente.

13.3 Habilitação, Inibição e Silenciamento do Som


Local
Foi recomendado anteriormente manter o servidor ServSom ativo na console de IHM, e para isso,
que ele estivesse associado ao boot do Linux ou ao “Iniciar” do Windows. Dessa forma, a habilitação,
inibição e silenciamento do som local da console, deve ser feito sempre através dos botões
disponíveis nos Visores de Acesso, Alarmes ou Telas do SAGE.
A condição default dos botões de habilitação, inibição e silenciamento de sons de alarmes
continuam se referindo ao “som global em sala de controle”.
Para utilizar o “som local em console”, o usuário deverá selecionar a opção "Local" no Quadro
"Som de Alarmes" localizado na ficha "Programas" do Visor de Acesso, conforme Figura 13 - 2:

Figura 13 - 2: Habilitação de Som Local de Alarmes no Visor de Acesso do SAGE.

No Visor de Telas, o usuário habilita o som local em console selecionando o item "Habilitar Som
Local de Alarmes" do menu "Base" conforme Figura 13 - 3.

125
13 INSTALAÇÃO E USO DO SOM NO SAGE

Figura 13 - 3: Habilitação de Som Local de Alarmes através do Visor de Telas do SAGE.

Para habilitar através do Visor de Alarmes, selecione a opção "Habilitar Som" através do menu
“Ações” conforme Figura 13 - 4.

Figura 13 - 4: Habilitação de Som Local de Alarmes através do Visor de Alarmes do SAGE.

Ao habilitar o som em ambiente Windows, um balão de mensagem do ícone do Servidor de Som


na barra de tarefas da máquina indicará que este estado, conforme figura abaixo:

126
13 INSTALAÇÃO E USO DO SOM NO SAGE

O usuário poderá usar com referência, o ícone da FIGURA acima ou o botão indicativo com um
alto-falante nos Visores de Telas e de Alarmes para saber se o som local em console está habilitado
ou não, que também poderá ser utilizado para silenciar um som contínuo.
No Visor de Telas temos:

Som Global habilitado

Som Global desabilitado

Som Local habilitado

Área de Menus e Local


Som Informações
desabilitado

No Visor de Alarmes:
Som habilitado

Som desabilitado

O pedido de habilitação do som local em console deve ser feito pelo menos uma vez para o SAGE
a partir de uma determinada console. Essa condição de habilitação fica memorizada no SAGE e
mesmo que o sistema seja reiniciado, não será necessário refazer essa habilitação. Para a inibição
do som local em console as mesmas condições se aplicam.

13.4 Definição de Sons Locais Customizados


Com a introdução do conceito de som local na console, a customização de arquivos de sons tende
a ser mais usada, já que agora eles poderão ser específicos para o usuário da console.
Na tabela OCR da base de dados do SAGE, uma determinada ocorrência de alarme é associada a
um som de alarme. O usuário pode definir sons customizados utilizando para isso no atributo TPSOM

gens de um valor de USR04 a USR32.


Na base demo_ems, a OCR PDNOT, associada ao alarme utilizado para inserir uma nota de
rências
operação no Visor de Alarmes, foi configurada para usar o TPSOM=USR04. Esta OCR pode ser
usada como exemplo para definição de outros alarmes com TPSOM=USRxx.

127
13 INSTALAÇÃO E USO DO SOM NO SAGE

Na configuração da OCR, define-se o tempo de duração do som (em mili-segundos) e o número


de repetições do som que o ServSom efetuará quando ocorrer o alarme. Este som deverá estar
gravado no arquivo som_usrXX.au (formato .au para Windows e .dsp para Linux).
Por exemplo, o arquivo som_usr04.au é uma mensagem de voz com a fala “Nota de Operação”.
Esse som dura cerca de 4 segundos (4000 mili-segundos) e é soado apenas uma vez. Por esse
motivo, na definição da OCR temos DUR=4000 NREP=1.
Para se customizar um determinado som de alarme, após a sua adequada definição na tabela
OCR, deve-se providenciar a colocação do arquivo som_usrXX.au no diretório raiz do ServSom,
juntamente com os arquivos som_breve.au, som_longo.au e som_continuo.au, que lá residem.
Além disso, deve-se informar novamente a duração e número de repetições no arquivo ServSom.cnf
do mesmo diretório, já que a informação editada na tabela OCR da base de dados refere-se ao “som
global em sala de controle”, que pode ser diferente do “som local em console” para cada console do
sistema.
Como o formato de arquivo de som com extensão AU, padronizado pela SUN e pelo JAVA, não é
muito popular, é fundamental que seja possível converter arquivos WAV, MP3, WMA, AAC, AMR, etc
(alguns deles usados em gravadores de som de telefones celulares), no padrão AU.
Para efetuar a conversão de qualquer desses formatos para o formato AU pode-se, por exemplo,
utilizar os serviços gratuitos do site www.convertfiles.com , seguindo as instruções (simples) do site
para efetuar a conversão (imediata).
Apos a conversão, o arquivo .au obtido poderá ser convertido em .dsp pela execução do comando
dspinfo em um terminal Linux, de uma máquina que tenha placa de som instalada. Este comando cria
em $BD uma cópia de todos os arquivos formato .au no formato .dsp.
Para se exercitar a produção de arquivos de som customizados, sugere-se usar a base
demo_ems substituindo o arquivo som_usr04.au pelo arquivo a ser testado, re-configurar a duração
do som do novo arquivo em ServSom.cnf, e testar a sua audição usando o comando de “Nota de
Operação” do Visor de Alarmes.
Outra possibilidade é ter sons de usuário (USRxx) configurado na base de dados do SAGE, mas
que a sua audição não é desejada em uma determinada console. Nesse caso, basta que o arquivo
associado ao som não exista no diretório de instalação do ServSom daquela console
(/usr/local/sage_transp/config/$BASE/bd) e que o arquivo ServSom.cnf contenha a seguinte
configuração DUR=0 NREP=0 para este "som nulo".

128
Capítulo

14
14 Serviço de Aquisição e Controle
(SAC)
14.1 Configuração do SAC
Alguns parâmetros do módulo SAC (Serviço de Aquisião e Controle) são configurados através do
arquivo $BD/sac.conf, que pode ser alterado de forma dinâmica, com o SAGE ativo. Para o SAC
assumir uma nova configuração, deve ser emitido o comando "kill -USR1" para o processo SAC que
possuir o menor PID dentre os dois processos visíveis na lista obtida pelo comando "psax".
A sintaxe de definição de um parâmetro neste arquivo é:
parâmetro = valor

O arquivo sac.conf admite os seguintes parâmetros:

14.1.1 Parâmetros Gerais

14.1.1.1 DIF_PP

Este parâmetro indica a forma da difusão, admitindo os seguintes valores:


▪ 0 - Indica difusão por TAC.

▪ 1 - Indica difusão por ponto.

14.1.1.2 STAT_BND

Este parâmetro é usado para gerar tanto estatísticas de uso da banda morta, definida conforme
descrito em 14.1.2, quanto estatísticas de variação analógica a cada ciclo de 4 segundos. Em ambos
os casos, a estatística fica registrada no arquivo $LOG/sac.log.
O parâmetro admite os valores:
▪ 0 – Indica que as estatísticas estão desabilitadas.

▪ 1 - Indica que as estatísticas estão habilitadas.

129
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

14.1.1.3 TEMPO_MAX_INIB_ALR

Indica o número máximo de segundos que um ponto pode ficar com o alarme inibido. Se o valor
for zero, o SAC não habilitará automaticamente pontos que estiverem com alarme inibido.

14.1.1.4 JANELA_SOE_VALIDO

Esse parâmetro pode ser especificado com um ou dois valores.


Se for especificado com um único valor, ele indica o tempo máximo em segundos tolerado para a
diferença entre a data-hora de um evento de SOE recebido em um protocolo e a data-hora corrente.
O valor do arquivo sac.conf da base demo_ems foi ajustado para 86400 segundos (1 dia) mantendo,
dessa forma, compatibilidade com o procedimento adotado no processo ALR, que tem a capacidade
de registrar eventos de SOEdo dia corrente, do dia anterior e do próximo dia.Caso a data-hora do
evento extrapole a janela definida, o registro de SOE (arquivo SDE) será descartado, sendo mantido
apenas o registro do alarme (arquivo ALR e Visor de Alarmes) e um Log informativo no arquivo de
extensão SSDE. O valor default zero desse parâmetro mantém o esquema atual, que não critica a
data-hora dos eventos de SOE.
Se for especificado com dois valores, o primeiro valor deverá ser um número negativo para a
janela anterior à hora corrente e o segundo, um número positivo, para a janela posterior à hora
corrente. Se, nesse caso, os números forem diferentes, ao invés do registro de SOE ser descartado,
ele será substituído pela hora corrente além de marcado com o flag de impreciso.
O descarte ou substituição de SOE em conseqüência da verificação deste parâmetro é registrada
no diretório $ARQS, em um arquivo de extensão “.ssde”, que utiliza o mesmo padrão de nome dos
que possuem extensão “.sde” .

14.1.1.5 HORA_ALARME_ORIGEM

Este parâmetro admite os seguintes valores:


▪ 0 – valor default.

▪ 1 - O SAGE utilizará a hora de atualização na origem (também SOE), recebida no protocolo


de comunicação para a geração de alarmes e para a atualização do atributo hatlz na base
referência. Essa opção só tem efeito se a aquisição é feita através do protocolo ICCP e, no
caso de pontos analógicos, a medida é reportada com time-tag.

14.1.1.6 AUTO_REST_VARR

Se tiver o valor 1, esse parâmetro permite a restauração automática da varredura e eventual


remoção da entrada manual de um ponto que passa do estado aquisitado inválido para válido.

130
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

14.1.1.7 ALR_VALID

Se tiver o valor 1, esse parâmetro permite a geração de um alarme indicando que um ponto com
varredura inibida ou entrada manual ou substituição pelo Estimador de Estado passou do estado
aquisitado inválido para válido.

14.1.1.8 IND_RAZOAB

Este parâmetro admite os seguintes valores:


▪ 0 – valor default.

▪ 1 - Faz com que o SAGE ligue o atributo @bit22 em a1_flags caso a medida extrapole os
limites de escala.

▪ 2 - Faz com que o @bit22 seja atualizado em função da informação recebida no protocolo
de comunicação. Este valor só tem efeito se a aquisição é feita através do protocolo ICCP
e o VCC remoto é um SAGE com distribuição via SICCP.

14.1.1.9 IGN_ALINT

Este parâmetro admite os seguintes valores:


▪ 0 - Indica que o atributo ALINT será processado normalmente

▪ 1 - Indica que o atributo ALINT será ignorado para todos os pontos da base que tenham o
atributo assinalado.

14.1.1.10 INIB_ALR_AOI_IMPORT

Este parâmetro, existente a partir do update 25 do SAGE, indica se os pontos (PAS, PDS ou PTS)
que estejam com o atributo AOI=IMPORT irão ou não gerar alarmes, admitindo os seguintes valores:
▪ 0 –gerar alarmes;

▪ 1 – não gerar alarmes.

14.1.1.11 JANELA_ATLZ

Este atributo, válido a partir do update 25 do SAGE, indica que será feita a crítica das etiquetas de
tempo usadas para atualizar o atributo hatlz de pontos digitais (base de dados Referência), porque,
dependendo da habilitação do parâmetro HORA_ALARME_ORIGEM em sac.conf, essas etiquetas
podem estar sendo extraídas das mensagens de SOE recebidas. Este parâmetro admite um valor
qualquer em segundos, que representa a diferença máxima aceitável entre a etiqueta de tempo
recebida no reporte do ponto que varia e a data-hora corrente.

131
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

14.1.1.12 RAZOAB_IVORG

Se este parâmetro tiver o valor 1, deve-se considerar 'inválido-na-origem' os pontos com o atributo
de razoabilidade assinalado e, dessa forma, manter, nas base de dados, o último valor válido (caso o
atributo ATINV da base de tempo real – atributo ATLZINV na base fonte – não esteja assinalado).

14.1.1.13 ALR_ACD_APENAS_LOG

Ao ser ligado (valor = 1), este parâmetro faz com que os alarmes de ações de operador sejam
enviados apenas para LOG, exceto para o caso de pontos configurados como persistentes (pontos
que tenham o atributo TIPO=ALRP), desde que este tipo de ponto não esteja com o alarme inibido.

14.1.1.14 BLOQ_SEL_CTRL_TAC

Permite a escolha de opções para o bloqueio da seleção de pontos de controle pertencentes a


uma TAC quando um ponto de controle desta TAC estiver selecionado (diálogo de controle aberto).
Admite os seguintes valores:
▪ 0 - faz com que não exista nenhum tipo de bloqueio, permitindo que vários operadores
possam selecionar e executar controles simultâneamente.

▪ 1 (valor default) - Indica que o bloqueio permanece enquanto o diálogo estiver aberto.

▪ 2 - Indica que o bloqueio permanece até o efetivo término do controle (com sucesso ou
fracasso) sinalizado na lista de alarmes.

14.1.2 Parâmetros de Ajuste da Banda Morta

Este grupo de parâmetros permite definir uma banda morta percentual do valor corrente por tipo
de medida configurado no atributo TIPO de um ponto PAS, cujo atributo BNDMO tenha o valor zero
(ver descrição da entidade PAS no manual de configuração da Base Fonte do SAGE).
Observe que, ao contrário dos parâmetros listados anteriormente, a sintaxe dos parâmetros para
ajustar banda morta por tipo utiliza caixa baixa. Estes parâmetros são:

14.1.2.1 freq

Simbólico do tipo de medida K_GRANDANA_FREQ.

14.1.2.2 outros

Simbólico do tipo de medida K_GRANDANA_OUTROS.

14.1.2.3 kv

Simbólico do tipo de medida K_GRANDANA_VOLT.

132
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

14.1.2.4 eca

Simbólico do tipo de medida K_GRANDANA_ECA.

14.1.2.5 mw

Simbólico do tipo de medida K_GRANDANA_P.

14.1.2.6 mvar

Simbólico do tipo de medida K_GRANDANA_Q ou K_GRANDANA_QANT.

14.1.2.7 amp

Simbólico do tipo de medida K_GRANDANA_CORRENT.

14.1.2.8 tmp

Simbólico do tipo de medida K_GRANDANA_TMP.

14.1.2.9 bias

Simbólico do tipo de medida K_GRANDANA_BIAS.

14.1.2.10 nivel

Simbólico do tipo de medida K_GRANDANA_NVL.

14.1.2.11 harmonicas

Simbólico do tipo de medida K_GRANDANA_HARMONICAS.

14.1.2.12 tap

Simbólico do tipo de medida K_GRANDANA_TAP.

14.1.2.13 tempo

Simbólico do tipo de medida K_GRANDANA_TEMPO.

14.1.2.14 vazao

Simbólico do tipo de medida K_GRANDANA_VAZAO.

133
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

14.1.2.15 default

Nenhum dos simbólicos listados acima.

14.2 Descrição de a1_flags


O atributo a1_flags faz parte da base de dados do SAGE e seus bits são usados para descrever o
status de pontos de controle (cgs), pontos analógicos (pas), pontos digitais (pds) ou pontos
totalizados (pts). De acordo com o tipo de ponto, os bits de a1_flags têm significados distintos, que
estão descritos abaixo.
Cada bit de a1_flags está associado a um simbólico, descrito no documento anexo II de
configuração (Descrição da Base Referência).

14.2.1 a1_flags para pontos de controle

Para pontos de Controle (cgs), os bits de a1_flags têm o seguinte signficado:


o
N do Significado
Bit
0 Controle ativado
1 Controle inibido
2 Controle em falha de comunicação
3 Controle selecionado pela IHM
4 SAC operacional neste Nó
5 Inversão do controle
6 Habilitação da verificação do resultado
7 Ponto não comissionado (a partir do update 24)

14.2.2 a1_flags para pontos analógicos

Para pontos Analógicos (pas), os bits de a1_flags têm o seguinte significado:


o
N do Significado
Bit
0 Erro grosseiro de estimação do estado
1 Fora de varredura
2 Falha de aquisição
3 Inválido na origem
4 Manual na origem
5 Manual local
6 Não inicializado
7 Evento de Alarme não reconhecido
8 Ponto não supervisionado
9 Alarme inibido
10 Disponível para uso
11 SAC operacional neste Nó
12 Inválido local
13 Fora de varredura na origem
14 Gera alarme na inicialização e na integridade
15 Selecionado para Análise de Redes
16 Selecionado para distribuição

134
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

o
N do Significado
Bit
17 Habilitação de auto-reconhecimento
18 Selecionado para aplic. do usuário
19 Substituído pela Análise de Redes
20 Permite controle no Modo Estudo
21 Valor estimado na origem
22 Indicador de razoabilidade da medida (a partir do update 24 do SAGE).
23 Indicador de limites entrados manualmente (a partir do update 24 do SAGE).
24 Entrada manual de limites bloquada – ponto vinculado a CLM (a partir do update 24 do
SAGE).
25 Condição inicial do ponto na base fonte = estimado – update 23 do SAGE.
Ponto não comissionado.- a partir do update 24 do SAGE.
26 Sinal de valor considerado invertido
27 Permite atualizar dado mesmo inválido
28 Indicador de medida fasorial sincronizável - update 23 do SAGE.
Alarme não reconhecido na origem – a partir do update 24 do SAGE..
29 Indicador de medida fasorial não sincronizada - update 23 do SAGE.
Habilita sincronismo externo de entradas manuais.- a partir do update 24 do SAGE.
30 Habilita sincronismo externo de entradas manuais - update 23 do SAGE.
Alarme inserido na origem.- a partir do update 24 do SAGE.
31 Tempo excessivo fora de limites (a partir do update 24 do SAGE).

14.2.3 a1_flags para pontos digitais

Para pontos Digitais (pds), os bits de a1_flags têm o seguinte significado:


o
N do Significado
Bit
0 Estado considerado do ponto digital
1 Fora de varredura
2 Falha de aquisição local
3 Inválido na origem
4 Manual na origem
5 Manual local
6 Não inicializado local
7 Evento de Alarme não reconhecido
8 Ponto não supervisionado
9 Alarme inibido
10 Disponível para uso
11 SAC operacional neste nó
12 Inválido local
13 Fora de varredura na origem
14 Gera alarme inicialização e na integridade
15 Selecionado para Análise de Redes
16 Selecionado para distribuição
17 Habilitação de auto-reconhecimento
18 Selecionado para aplicação do usuário
19 Estado aquisitado
20 Estado inicial do ponto
21 Estado de referência do ponto – IHM
22 Indicador de Trânsito / Dupla transição
23 Indicado de Evento para cálculo
24 Inibe registro do SOE. (a partir do update 24 do SAGE).
25 Ponto não comissionado (a partir do update 24 do SAGE).

135
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

o
N do Significado
Bit
26 Estado considerado invertido
27 Permite atualizar dado mesmo inválido
28 Inibe Registro do SOE – update 23 do SAGE.
Alarme não reconhecido na origem. - a partir do update 24 do SAGE
29 Habilita sincronismo externo de entradas manuais
30 Alarme inserido na origem (a partir do update 24 do SAGE).

14.2.4 a1_flags para pontos totalizados

Para pontos Totalizados (pts), os bits de a1_flags têm o seguinte significado:


o
N do Significado
Bit
0 Invalidou no período anterior
1 Fora de varredura
2 Em falha de aquisição
3 Inválido na origem
4 Manual na origem
5 Manual local
6 Não inicializado
7 Evento de alarme não reconhecido
8 Ponto não supervisionado
9 Alarme inibido
10 Disponível para uso
11 SAC operacional neste Nó
12 Inválido local
13 Fora de varredura na origem
14 Gera alarme na inicialização e na integridade
15 Selecionado para Análise de Redes
16 Selecionado para distribuição
17 Habilitação de auto-reconhecimento
18 Selecionado para aplic. do usuário
19 Invalidade no período (a partir do update 24 do SAGE).
25 Ponto não comissionado (a partir do update 24 do SAGE).
27 Permite atualizar dado mesmo inválido
28 Alarme não reconhecido na origem (a partir do update 24 do SAGE).
29 Habilita sincronismo externo de entradas manuais
30 Alarme inserido na origem (a partir do update 24 do SAGE).

14.3 Comandos
Este item lista os comandos utilitários do SCD utilizados a partir de um terminal para
exercitar/verificar funções de aquisição, controle e de geração de alarmes do sistema.

14.3.1 rst_stat_cnv

Sintaxe: rst_stat_cnv

136
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

Este comando reseta todas as estatísticas de todos os protocolos e provoca uma integridade em
todas as ligações associadas a CXUs.

14.3.2 sage_ctrl

Sintaxe: sage_ctrl <id_CGS> <valor/estado>

Este commando envia um pedido de controle para o ponto CGS <id_CGS>. Caso o ponto esteja
associado a um controle analógico, o parâmetro <valor/estado> especifica a set-point a ser enviado.
Caso o ponto esteja associado a um controle digital, o parâmetro <valor/estado> deverá ser "1" para
'fechar', 'ligar, 'habilitar', etc e "0" para 'abrir', 'desligar, 'desabilitar', etc.

137
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

14.3.3 mon_pas

Sintaxe: mon_pas <arq_conf>

Este comando monitora, no standard output (stdout), os pontos PAS listados em <arq_conf>. Se o
parâmetro <arq_conf> não for passado, o arquivo default usado será $BD/mon_pas.cnf.

14.3.4 mon_pds

Sintaxe: mon_pds <arq_conf>

Este comando monitora, no standard output (stdout), os pontos PDS listados em <arq_conf>. Se o
parâmetro <arq_conf> não for passado, o arquivo default usado será $BD/mon_pds.cnf.

14.3.5 sage_alr

Sintaxe: sage_alr <”texto”>

Este comando gera, no Visor de Alarmes e no arquivo ALR, um alarme de Nota de Operação com
o texto passado como parâmetro.

14.3.6 alr_lista

Sintaxe: alr_lista

Este comando gera periodicamente, no standard output (stdout), o conteúdo da lista global de
alarmes (todos os alarmes apresentados no momento em todas as MAPs do Visor de Alarmes), como
pode ser visto na Figura 14- 1. Sua execução é interrompida com a seqüencia de teclas <CTRL> + C.

138
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

Figura 14- 1 – Comando alr_lista

139
14 SERVIÇO DE AQUISIÇÃO E CONTROLE (SAC)

140
Capítulo

15
15 Aplicativos
15.1 Tabular

15.1.1 Sintaxe do Comando

Este aplicativo tem a função de ler ou escrever atributos de/em uma entidade da base de Tempo-
Real do SAGE. O comando Tabular permite algumas opções de sintaxe que podem ser vistas na
Figura 15- 1 ou em um terminal através do comando
Tabular

Figura 15- 1 – Sintaxe do comando Tabular

A seguir, cada uma destas sintaxes será descrita mais detalhadamente.

141
15 APLICATIVOS

15.1.1.1 Sintaxe 1

Tabular -ent <entidade> [[-atr <atributo>[,<atributo>]...]


[-atr FLAGS:a1_flags]
[-atr <flag>:a1_flags]
[-grep <filtro>]
[-grep:<atrib> <filtro>] ...]
[-simb]
[-apont <atrib>]
[-conta <conta>]
[-time <formato>] [-time int]
.........................[-cos <cos>]
[-page <lines> | auto]
[-sort <atrib>[:desc][,<atrib>[:desc] …]]
[-d <delimitador CSV>]

Esta sintaxe possui um parâmetro obrigatório, que é o que determina a entidade sobre a qual o
Tabular vai operar. O parâmetro –ent especifica a entidade que será objeto de leitura ou escrita,
como pode ser visto no exemplo abaixo
-ent <entidade>

Uma vez determinada a entidade, uma série de parâmetros opcionais podem ser utilizados:

15.1.1.1.1 -atr <atributo>

Especifica um atributo da entidade a ser lido. Esta opção pode ser repetida diversas vezes para
especificar vários atributos, ou pode, ainda, conter uma lista de atributos separados por vírgula ou
espaço em branco, como nos exemplos abaixo:
-atr atributo1,atributo2
-atr atributo1 atributo2

No caso de omissão da opção -atr, todos os atributos da entidade serão lidos.


O atributo a1_flags das entidades pas, pds, pts e cgs pode ser precedido do simbólico de um de
seus bits, através da sintaxe: “-atr <flag>:a1_flags” exemplificada no comando abaixo
Tabular -ent pds -atr id,MANUA:a1_flags,AINIB:a1_flags

15.1.1.1.2 -atr FLAGS:a1_flags

Esta opção exibe os simbólicos de todos os flags ligados de cada ponto.

15.1.1.1.3 -grep <filtro>

Limita a saida, mostrando apenas os registros que contêm o filtro.

15.1.1.1.4 -grep: <atributo> <filtro>

Filtra apenas o conteúdo de um determinado atributo, mesmo que o atributo especificado não
tenha sido especificado por -atr.

142
15 APLICATIVOS

15.1.1.1.5 –simb

Mostra símbolos as invés dos valores numéricos.

15.1.1.1.6 –apont <atrib>

Adiciona o atributo como ligação indireta aos atributos solicitados que sejam apontadores.
Exemplo:
Tabular -ent autoz -apont id
Tabular -ent autoz -apont nome

15.1.1.1.7 -conta <conta>

Indica a conta de onde será lida a base do SAGE.

15.1.1.1.8 –time <formato>

Define o formato de exibiçãoo de atributos do tipo data/hora. Se o formato for "int", exibe o valor
numérico.

15.1.1.1.9 –cos <cos>

Define o contexto de cos a ser usado para entidades e atributos sujeitos a múltiplos contextos.

15.1.1.1.10 –page <lines>

Define o número de linhas da página, repetindo o cabeçalho no início de cada página. Se <lines>
for “auto”, obtém o tamanho do terminal para ser usado junto com o comando “more”.

15.1.1.1.11 –sort <atrib>[:desc]

Especifica um ou mais atributos a serem usados como chave de ordenação. Se mais de um


atributo for especificado na mesma opção, eles devem ser separandos por vírgulas, sendo que o
comando aceita espaços entre uma vírgula e o próximo atributo.
Se um atributo for sucedido por “:desc”, ele é classificado em ordem decrescente. A seqüência de
ordenação é feita segundo os atributos desta opção, não da opção “-atr”

15.1.1.1.12 -d <delimitador CSV>

Se for especificado, muda a saída do formato tabular padrão para o formato CSV, usando o
delimitador escolhido para separar as colunas.

15.1.1.2 Sintaxe 2

Tabular -info -ent <entidade> [-conta <conta>] [-d <delimitador CSV>]

Esta sintaxe comanda, através do parâmetro –info, a exibição de informações sobre os atributos
de uma determinada entidade (-ent). O parâmetro –info é obrigatório, mas pode-se opcionalmente
especificar a conta de onde será lida a base do SAGE (-conta) e o delimitador CSV (-d).

143
15 APLICATIVOS

Na execução do comando Tabular com esta sintaxe, além de informação sobre os atributos da
entidade, são exibidos também seu nome, dimensão corrente e dimensão máxima da entidade, além
de seu atributo chave, se houver. Um exemplo deste comando pode ser visto na Figura 15- 2.
Esse comando também exibe os simbólicos dos atributos.

Figura 15- 2 – Exemplo de sintaxe do comando Tabular -info

15.1.1.3 Sintaxe 3

Tabular -sage2csv <filename.csv> -ent <entidade>

Nesta sintaxe, indica-se que entidade da base de Tempo-Real do SAGE (-ent) terá seu conteúdo
gravado no arquivo especificado pelo parâmetro -sage2cvs.

15.1.1.4 Sintaxe 4

Tabular -csv2sage <filename.csv> -ent <entidade>

Nesta sintaxe, o arquivo especificado pelo parâmetro –cvs2sage é lido e seu conteúdo é escrito
em uma entidade da base de Tempo-Real do SAGE (-ent), ajustando-se a dimensão corrente para o
número de registros do CSV. Esta sintaxe deve ser usada com muito cuidado, já que seu uso
incorreto pode comprometer a integridade da base do SAGE.

144
15 APLICATIVOS

15.1.1.5 Sintaxe 5

Tabular –flags

Existente a partir do update 24 do SAGE, essa sintaxe mostra os simbólicos dos flags que podem
ser usados com o atributo a1_flags das entidades pás, pds,pts e cgs.

Figura 15- 3 – Exemplo de sintaxe do comando Tabular -flags

15.1.1.6 Sintaxe 6

Tabular -h

Esta sintaxe exibe o texto de ajuda do comando Tabular.

15.1.2 Exemplos do comando

O exemplo abaixo mostra os atributos da entidade cgs.


Tabular –ent atr –atr ident,id, nome,idclas –grep:ident cgs

O exemplo abaixo mostra alguns atributos dos pontos digitais que estão com alarme não
reconhecido.

Tabular –ent pds –atr nome, id –atr FLAGS:a1_flags –atr TRANS:a1_flags


-grep:id “C2*BLR”

145
15 APLICATIVOS

15.2 GeraDatsNHS
Este programa gera a base de aquisição/controle ICCP de um NHS (Nível Hierárquico Superior)
que se comunica com “n” bases do NHI (Nível Hierárquico Inferior). Sua sintaxe de ativação é:
GeraDatsNHS -[c|n] <baseNHS> <baseNHI-1> ... <baseNHI-n>

onde a opção "-c" especifica que os cálculos devem ser refeitos na base do NHS e "-n" especifica
que os cálculos não precisam ser refeitos, pois tanto as parcelas quanto os resultados de cálculos
serão recebidos na aquisição do protocolo ICCP com o NHI.
Os Dats serão gerados no diretório $SAGE/config/<baseNHS>/bd/dados/NHIs da base
<baseNHS>. Serão gerados 27 Dats que deverão ser referenciados por #include NHIs/xxx.dat nos
arquivos $SAGE/config/<baseNHS>/bd/dados/xxx.dat equivalentes. Os dats gerados são os que
correspondem às entidades: lsc, tac, tdd, pas, pds, pts, cgs, ocr, map, tcl, tctl, cnf, nv1, nv2, paf, pdf,
ptf, cgf, mul, enm, rca, cpb, uge, sba, est, ins e usi, sendo que essas últimas 6 entidades servem para
uso no NHS das curvas de capabilidade definidas nos NHIs.
No caso de uma base “nova” de NHS, em template_dats_nhs,tar.gz, disponível no $BD da base
demo_ems, podem ser encontrados os outros arquivos DAT que completam a base, e os 21 arquivos
DAT contendo apenas a linha de “include”
No caso de uma base de NHS “existente”, o script “IncluiNHIs” serve para inserir as linhas de
#include NHIs/xxx.dat nos 27 DATs da base existente. Para um NHS “existente”,' o identificador do
GSD deverá ser alterado para 'NHS'.
Para EXCLUIR ou ALTERAR itens definidos em ocorrências das entidades TAC, PDS, PAS, PTS
e CGS das bases do NHI, de forma que elas possam não existir ou serem diferentes na base do
NHS, são utilizados, no atributo CMT dessas entidades, tokens que permitem efetuar a exclusão ou
alteração desejada.
Por exemplo, se o atributo CMT de uma TAC possuir o token EXCLUI_NHS, a TAC e todos os
seus pontos não serão incluidos na base do NHS. Se esse token for usado no atributo CMT de um
ponto PAS, esse ponto não será incluido na base do NHS.
Outro exemplo, se o atributo CMT de um PDS possuir os tokens.ALRIN_NHS = SIM e
INVRT_NHS = SIM, os atributos ALRIN e INVRT do PDS podem possuir uma definição no NHI e
outra no NHS.
Ainda como exemplo, se o atributo CMT de CGS possuir o token TRRAC_NHS = xxx , é possível
especificar, no NHS, uma temporização para TRRAC com o valor xxx, diferente do valor adotado no
NHI.
Nessa versão do programa estão disponíveis os tokens:
▪ EXCLUI_NHS - para TAC, PDS, PAS, PTS, CGS , RCA, UGE, SBA, EST e CPB

▪ ALRIN_NHS para PDS, PAS e PTS

▪ INVRT_NHS para PDS

▪ TRRAC_NHS para CGS.

146
15 APLICATIVOS

Em versões posteriores deste programa poderão ser disponibilizados mais tokens.


Além dos atributos alterados pelos tokens especificados acima, a geração do conteúdo do atributo
KCONV de CGF de um NHS é feito de forma diferenciada para pontos de controle digital ou de set-
point, com especificação de espera de término (KCONV = TERM) para os controles digitais e sem
espera de término (KCONV vazio) para os controles de set-point.
Para se comunicar com o sistema do NHS, os sistemas do NHI devem ter configurado o processo
SICCP com a seguinte linha no arquivo de configuração 'siccp.cnf':
> ID= NHS/AUTO OPMSK= 0002 TOUT= 10 T2V= 2000 DSPARC= 1

Para o NHI impedir que o NHS possa efetuar comandos de controle (trip/close, set-point, raise-
lower, gestão de comunicação) nos seus pontos, a linha no arquivo de configuração do 'siccp.cnf'
deve ser:
> ID= NHS/AUTO OPMSK= 000A TOUT= 10 T2V= 2000 DSPARC= 1

147
15 APLICATIVOS

148
Capítulo

16
16 Procedimento de Atualização do
SAGE
O procedimento de atualização (update) do SAGE é realizado, de acordo com o ambiente de
instalação, através da execução de uma seqüência de scripts. Para instalar corretamente o update, é
condição mandatória que a base demo_ems esteja habilitada no terminal. Após a atualização do
sistema, deve-se voltar a usar a base desejada e repetir os procedimentos a partir do passo seguinte
à execução do script instala_update.
A seguir serão descritos os passos básicos para realizar a atualização do sistema. Pode ser
necessária a execução de passos e comandos específicos quando do lançamento de um
determinado update. Neste caso, os procedimentos necessários estarão descritos no boletim de
atualização daquele update, liberado junto com o arquivo binário a ser instalado.

16.1 Update do SAGE em Ambiente Linux X86


Os passos básicos para a instalação de um update do SAGE neste ambiente são:
56. Colocar o arquivo de update (.csh) no diretório $SAGE;

57. Executar o script instala_update (ver 7.3.12), passando o número do update;

58. Caso seja utilizado o armazenamento de dados em base de dados relacional


utilizando servidor PostgreSql, executar o script habilita_postgres (ver 7.3.17);

59. Se esse for o primeiro update após a instalação do SAGE a partir do CD de


instalação, deve-se encerrar a sessão do usuário (logout) e realizar novo login para
que as variáveis de ambiente do postgres (ver capítulo 17) sejam criadas;

60. Executar o script AtualizaBD (ver 7.3.2), passando os parâmetros fria e fonte;

61. Ir para o diretório calculos (cd calculos);

62. Executar o script instala_calculos;

63. Voltar para o diretório anterior (cd ..);

64. Se os protocolos ICCP e 61850 são utilizados, deve-se executar o script


instala_mms.

65. Executar o script habilita_base (ver 7.3.9 );

149
16 PROCEDIMENTO DE ATUALIZAÇÃO DO SAGE

66. Se a base histórica for utilizada, deve-se executar o script habilita_gbh (ver 7.3.18) e,
caso seja utilizado o armazenamento de dados em base de dados históricos utilizando
servidor OSI-PI, deve efetuar-se o comando habilita_pi

67. Encerrar a sessão do usuário (logout) e realizar novo login.

150
Capítulo

17
17 Variáveis de Ambiente do SAGE
17.1 SSC, SCD e SIG
As variáveis de ambiente usadas no âmbito desses sub-sistemas são definidas em
$SAGE/config/<base>/sys/SSC_Amb.

Variável Descrição
Opções de difusão da base tempo-real
NOH Designa o arquivo $BD/sites_$NOH que será utilizado para
determinar quais são os nós que participam da rede de difusão.
METODO_DIFUSAO Indica se haverá ou não difusão da base de dados através dos valores
“dc” (difusão confiável) ou “null” (sem difusão).
Opções de gerência do controle de processos
CONTEXTO Indica o contexto de funcionamento dos processos, que possibilita ao
GCD escolher quais processos serão ou não ativados em um
determinado contexo segundo a relação definida na tabela PRCT.
Exemplo: contexto “tr” ou contexto “ots”.
MODO Modo de ativação dos processos pelo do GCD podendo ser “auto” ou
“manual”.
Opções do serviço SCADA
LOCAL Se definida com o identificador de um nó da rede de difusão, indica
para os processos do SCD ativos na máquina, qual dos nós da rede
de difusão está em execução naquela máquina. É utilizado quando o
SAGE é executado em uma máquina cujo nome não consta da tabela
NOH da base de dados, como por exemplo, uma máquina de teste.
ALRINV Com o valor “on”, habilita a emissão de alarmes de invalidade e
validação de pontos em uma TAC. Os alarmes serão emitidos quando,
ao processar a invalidade de pontos, verifica-se que a quantidade de
pontos inválidos ficou maior que 60% de pontos da TAC ou, ao
processar a validação de pontos, verifica-se que a quantidade de
pontos inválidos ficou menor do que 40% de pontos da TAC.
ATLZINV Com o valor “sim” permite a atualização de valores PAS e PDS
mesmo que eles tenham sido recebidos do conversor de protocolo
com o atributo de invalidade na origem (IVORG) assinalado.
TMP_FAIL_GSD Define um valor em segundos para efetuar um failover do SAGE
(GSD) no caso em que: (1) o NOH é primário no GSD e existe um
NOH secundário ativo; (2) estão inoperantes todas as LSCs
vinculadas a protocolos (exceto CNVD e NLCN) e que já tenham
passado pelo estado operacional nesse NOH pelo menos uma vez
desde que o estado primário foi assumido.
TREINAMENTO Com o valor ”sim”, faz com que o SAC não envie pedidos de controle
para os conversores de protocolo, e ao invés desse envio, ative um
script shell que ativará um cenário de simulação utilizando sim-tr, que

151
17 VARIÁVEIS DE AMBIENTE DO SAGE

Variável Descrição
deverá simular os efeitos da ação daquele controle supervisório. O
script shell que será executado deve residir no diretório
$SAGE/config/$BASE/simul e se chamar exec_ctrl_<id-ponto-cgs>.
Veja exemplo nesse diretório da base demo_ems.
IP_CLUSTER_SCD Define um endereço IP virtual único para ser usado como endereço do
cluster SCD do SAGE. Esse endereço é criado pelo SAC na máquina
que assume o estado primário, e apagado na máquina que transita
pata o estado de falha ou é desativada.
IF_CLUSTER_SCD Define a interface ethernet para a qual é criado o endereço IP virtual
do cluster SCD, como, por exemplo, “eth0:1” ou “eth1:1”, etc. Para
utilizar esse recurso de configuração de um cluster SCD, é necessário
executar como super-usuário em $SAGE/drivers o comando
“instala_ifcfg”.
RESET_TMP_LIM Na base de dados, os atributos TMP_CURTA e TMP_LONGA da
entidade PAS permitem definir períodos de tempo que serão utilizados
para emitir alarmes que vão sinalizar a extrapolação do tempo
acumulado para permanencia da medida fora de limites. Uma vez
extrapolado esse tempo acumulado, além da emissão do alarme, é
ligado o respectivo indicador em a1_flags que indica essa condição de
extrapolação para aquela medida. Como se trata de uma contagem de
tempo acumulada, para que esse contador de tempo seja zerado,
define-se como critério para o seu reset o tempo contínuo que a
medida permanece na região normal de operação, sendo esse tempo,
um percentual do tempo que foi utilizado para determinar a
extrapolação. Por exemplo, se TMP_CURTA=1000 segundos, e
RESET_TMP_LIM=50%, o contador de tempo acumulado será zerado
somente após a medida permancer continuamente por 500 segundos
na região normal.
TMP_INTGR Periodicidade em segundos utilizada pelo cliente ADS para o envio da
integridade de dados para o SAC, já que em regime normal são
enviadas somente as variações.
TMP_AGRUP Especifica a janela de tempo para processamento dos filtros de
agrupamento de SOE (FIL9).
PDU_KFOLGA Permite ajustar a folga em Kbytes a ser adotada ao se fazer o cálculo
do número máximo de itens de um DataSet, compatível com o
tamanho máximo negociado para a PDU. O default para esta variável
é 1, ou seja, a folga default é de 1 Kbyte. Se a variável for definida
prefixada com a identificação da LSC (ex: <id-LSC>_PDU_KFOLGA)
ela valerá apenas para a LSC em questão, caso contrário, valerá para
todas as LSCs de aquisição ICCP.
PROFILE_ALR Esta variável determina uma configuração opcional do posicionamento
dos campos do registro de alarmes e SOE visualizados nos Visores
de Alames e Logs. Tal configuração é baseada em profiles pré-
definidos por esta variável de ambiente. Se PROFILE_ALR não existir,
será considerada com o valor 'default' zero, indicando a ordenação de
campos atual.

Os valores atualmente válidos para esta variável e a ordem de


campos equivalente são os seguintes:

0=<hora> <ocr.texto> <id(xxx.id)> <narrativa(xxx.nome)> <cs>


1=<hora> <tac.id><ocr.texto> <id(xxx.id)> <narrativa(xxx.nome)> <cs>
2=<hora> <id(xxx.id)> <narrativa(xxx.nome)> <ocr.texto> <cs>
3=<hora> <id(xxx.id)> <narrativa(xxx.nome)> <tac.id><ocr.texto> <cs>
4 =<hora> <narrativa(xxx.nome)> <id(xxx.id)> <ocr.texto> <cs>
5=<hora> <narrativa(xxx.nome)> <id(xxx.id)><tac.id> <ocr.texto> <cs>
Opcões para gravação de arquivos históricos
ARQS Subdiretório para gravação de arquivos históricos do HIST

152
17 VARIÁVEIS DE AMBIENTE DO SAGE

Variável Descrição
LOGS Subdiretório para gravação de logs dos processos
BHARQS Diretório de back-up para acumular dados no caso da conexão com a
base de dados histórica estar indisponível.
PARQS Subdiretório para gravação de arquivos históricos paralelos (base
preservada)
TMP_HIST Periodicidade em minutos utilizada pelo HIST para gravação do
arquivo histórico diário de todos os pontos analógicos. Se definido,
utiliza o formato/extensão PAH, caso contrário utiliza o
formato/extensão PAS e efetua a gravação a cada 5 minutos.
TMP_PLAN Periodicidade em segundos utilizada pelo HIST para gravação em
formato CVS/EXCEL das planilhas históricas contendo pontos
analógicos selecionados no período diário “cheio” de 6 horas (00:00,
06:00, 12:00 e 18:00).
TMP_ADAT Periodicidade em segundos utilizada pelo HIST para gravação dos
arquivos que serão utilizados pelo servidor ADS para exportatar dados
de um sistema SAGE para outro sistema SAGE
NDIAS Idade máxima dos arquivos históricos em $ARQS. Após esse período o
arquivo é apagado automaticamente. O valor default é de 30 dias. Não
é recomendado valor superior a 365 dias.
Opções para acesso a bases de dados históricos
SGBD Define qual o tipo de servidor da base de dados históricos, dentre
“postgres”, “informix” ou “oracle”.
OSIPI A opção “SIM” indica utilização da base de dados históricos em
servidor OSI-PI de forma independente ou complementada por uma
base histórica definida na variável SGBD.
Opções de uso na interface gráfica
IHM_SESSAO Define o diretório onde serão salvas as informações para
memorização da sessão do usuário (estado, dimensões,
posicionamento dos visores, etc). Os defaults são
$HOME/sage/ihm/<usuário>, para sessões com login efetuado a
partir da conta Linux do usuário, ou $IHM/sessao/<usuário> para
sessões com login efetuado a partir da conta principal do SAGE.
SIG_DIR_IMPRESSAO Define o diretório onde serão gravados os arquivos produzidos pela
opção "Salvar" do diálogo de impressão do Visor de Telas. O default é
$ARQS.
DEVICE_SOM Variável de ambiente a ser configurada em SSC_Amb, que indica,
para o processo alr, o dispositivo onde é emitido o "som global
sistêmico". Ela é necessária no caso desse dispositivo não ser
/dev/dsp em máquinas Linux ou não ser /dev/audio em outros
sistemas operacionais.

Ela não é utilizada para definir o dispositivo do "som local em


console", que, no caso de consoles Linux, utiliza incondicionalmente
/dev/dsp. Contudo, caso essa variável esteja definida como
"/dev/null", o Visor de Acesso assume que a modalidade "som local
em console" deve ser habilitada incondicionalmente e não exibe as
check-box para a escolha de "som global sistêmico" ou '"som local em
console".

ARQUSR Existente a partir do update 27 do SAGE, essa variável é semelhante


a $ARQS, mas dá ao usuário permissão de escrita no diretório
declarado, no qual são colocados arquivos de saída do SAGE que
“pertencem” ao usuário como, por exemplo: relatórios do SAR,
arquivos csv gerados pelo WallTrend, etc..
Opções de uso em protocolos de comunicação
REMOTO Utilizada nos conversores de protocolo. Define a opção para conexão

153
17 VARIÁVEIS DE AMBIENTE DO SAGE

Variável Descrição
dos conversores de protocolo nos transportadores de protocolo. Os
valores utilizados são: conecta apenas no transportador principal (1),
conecta apenas no transportador reserva (2) conecta em qualquer dos
dois transportadores (3) ou não conecta nos transportadores (0). A
opção “0” é utilizada em ambientes de teste onde não se deseja
estabelecer a comunicação com a UTR. O valor default é 3.
SAC_HOST1 Indica para aplicações que utilizam SacAtualizaPxS onde reside o
servidor principal do CNUL.
SAC_HOST2 Indica para aplicações que utilizam SacAtualizaPxS onde reside o
servidor reserva do CNUL.
PORTA_SERV Usada no módulo SERV. Determina uma porta TCP altermativa à
porta default 8000.
UTR Utilizada apenas no conversor de protocolo Conitel. Seleciona qual a
modalidade de protocolo Conitel utilizada dentre C3000, C3200 ou
C3300. O default é C3200.
PLOOP Utilizada apenas no conversor de protocolo Conitel. Com o valor “on”,
permite a distribuição de dados, mesmo que os mesmo estejam
inválidos na origem. Como o protocolo Conitel não possui atributos de
qualidade, o sistema master que receber esses dados não terá como
saber se os valores estão válidos e atualizados, ou são antigos e
estão inválidos. A variável é utilizada apenas para testes de loop do
protocolo. O valor default é “off”.
PORTA_104_FISICA Utilizada no transportador IEC4T. Determina uma porta TCP
altermativa à porta padrão da norma IEC/60870-5-104. Não é
aconselhável a definição de valor, para que o SAGE se mantenha
compatível com a recomendação da norma. Caso não seja definida, o
valor assumido é o valor padrão 2404.
WDT_IDLE4 Utilizada no transportador IEC4T. Define o tempo para desconexão do
canal TCP-IP no link-level do protocolo IEC/60870-5-104, caso não
seja observado tráfego de mensagens no application-level do mesmo.
PORTA_DNP_FISICA Utilizada no transportador IEC3U (DNP3/TCP). Deve ser definida com
o valor 20000, que é a porta determinada pela norma do protocolo
DNP V3.0. Não é aconselhável a definição de outro valor, para que o
SAGE se mantenha compatível com a recomendação da norma. Caso
não seja definida, define a primeira das ‘n’ portas que serão utilizadas
pelo SAGE como emulador de TerminalServer atuando como um
servidor DNP3 a partir da porta 9000.
WDT_IDLE3 Utilizada no transportador IEC3U (DNP3/TCP). Define o tempo para
desconexão do canal TCP-IP no link-level do protocolo DNP3/TCP,
caso não seja observado tráfego de mensagens no application-level
do mesmo.
SRC_ADDR_IEC3U_VLUTR Utilizada no transportador IEC3U (DNP3/TCP). Se definida com o
valor “sim” faz com que o transportador adote nas conexões onde é
máster o source address definido no atributo ENU.VLUTR da base de
dados do SAGE. Se não definida (valor default) faz com que o source
address seja derivado da identificação “placa-linha” do enlace.
CIC_ARQMON3 Define o ciclo em horas para a criação de um novo arquivo de
monitoração.
PORTA_MDB_FISICA Utilizada no transportador TBUS. Determina uma porta TCP
altermativa à porta padrão da norma Open ModBus TCP. Não é
aconselhável a definição de valor, para que o SAGE se mantenha
compatível com a recomendação da norma. Caso não seja definida, o
valor assumido é o valor padrão 502.
MODB_MULT_REG Essa variável é usada apenas no âmito do protocolo MODB. Caso seu
o valor seja "sim", os comandos de set-point passam a ser enviados
com a mensagem FC16 (write multiple registers) com um único
registro ao invés da mensagem FC6 (write single register).
TIMOUT_MMST_RX Utilizada pelo transportador MMST. Define o time-out em segundos

154
17 VARIÁVEIS DE AMBIENTE DO SAGE

Variável Descrição
para que seja completada a recepção de um frame OSI-TP0 na
conexão TCP-IP, a partir da detecção do início da reepção do frame.
O default é de 10 segundos.
TIMOUT_MMST_TX Utilizada pelo transportador MMST. Define o time-out em segundos
para que seja completada a transmissão de um frame OSI-TP0 na
conexão TCP-IP, a partir do pedido de transmissão do frame. O
default é de 3 segundos.
NUM_REP_IEC2 Utilizada apenas pelo transportador IEC2Y. Se definida, determina o
número de repetições da transmissão de frames sem recebimento de
ack para que o link seja declarado com falha de comunicação. O
default é 3. No caso de não ser definida com um número, mas com a
palavra “nao”, o número de repetições será obtido do atributo
ENU.TRANS.
NUM_REP_IEC3 Utilizada apenas pelo transportador IEC3Y. Se definida, determina o
número de repetições da transmissão de frames sem recebimento de
ack para que o link seja declarado com falha de comunicação. O
default é 3. No caso de não ser definida com um número, mas com a
palavra “nao”, o número de repetições será obtido do atributo
ENU.TRANS.
TIM_OUT_IEC2 Utilizada apenas pelo transportador IEC2Y. Se definida, determina o
timeout em segundos para repetir o envio de frames para os quais não
houve recebimento de ack. O default é 3 segundos. No caso de não
ser definida com um número, mas com a palavra “nao”, o valor do
timeout será obtido do atributo ENU.TDESC.
TIM_OUT_IEC3 Utilizada apenas pelo transportador IEC3Y. Se definida, determina o
timeout em segundos para repetir o envio de frames para os quais não
houve recebimento de ack. O default é 3 segundos. No caso de não
ser definida com um número, mas com a palavra “nao”, o valor do
timeout será obtido do atributo ENU.TDESC.
TTY00 Utilizada nos transportadores IECxY. Define o primeiro device TTY
criado pelo device-driver de portas COM da placa multiserial (ou
portas COM padrão PC) que será utilizada pelo transportador.
PORTA_IEC_FISICA Utilizada no transportador IEC1T que implementa o link-level
balanceado do protocolo IEC/60870-5-101 sobre uma conexão
TCP/IP. Define a primeira das ‘n’ portas que serão utilizadas pelo
SAGE como emulador de TerminalServer atuando como um servidor
IEC/60870-5-101. O valor default é 9100.
DNP_K_ON_TIME Utilizada apenas no âmbito do protocolo DNP, a definição desta
variável com um valor 'k' diferente de zero, é usada para transformar
as mensagens emitidas para os pontos de controle PULS da seguinte
forma:
- comandos de raise são enviados com o código de 'trip' (0x81) e
comandos de lower com código de 'close' (0x41);
- o 'count' sempre igual a 1;
- o 'on-time' com o módulo do número de pulsos solicitado vezes a
constante 'k';
- o 'off-time' sempre zero.

Da mesma forma, o roteamento externo de comandos recebidos em


OBJ12 para pontos de controle PULS, passou a ser submetido à
transformação inversa, ou seja:

- comandos 'trip' (0x81) são convertidos para raise com valor positivo
e 'close' (0x41) para lower com valor negativo;
- o 'on-time' dividido pela constante 'k' passa a ser o valor de número
de pulsos considerado com o sinal determinado pelo tópico acima;”
<id-LSC>_DETTI_E_MS0 Utilizada apenas no âmbito do protocolo iccp, esta variável pode
receber os valores "SIM" ou "sim", para descartar um registro de SOE

155
17 VARIÁVEIS DE AMBIENTE DO SAGE

Variável Descrição
recebido de <id-LSC> quando ele possuir não só o atributo de time-
tag impreciso assinalado, como ocorreria se
CNF.CONFIG.OPMSK.DETTI estivesse com o valor 1, mas também
quando o valor do mili-segundo desse time-tag estiver
simultâneamente com o valor zero.

Esta variável é utilizada quando um SAGE, no nivel hierárquico


inferior, detecta uma variação de estado através de uma mensagem
recebida dos protocolos de comunicação com UTRs (ex: I101, I104,
DNP, ModBus,..) sem time-tag (ex: TI1 no I101 ou OBJ2 VAR1 no
DNP3), e consequentemente a exclui da lista de SOE desse sistema.

Se a mensagem for recebida via protocolo ICCP no sistema do nível


hierárquico superior, não se deseja que, nesse sitema, seja registrado
o evento de SOE com time-tag impreciso e mili-segundo zerado.
SS_OFFSET Utilizada apenas no âmbito do protocolo iccp, esta variável pode ser
definida de duas formas. Na forma tradicional com "setenv
SS_OFFSET x" onde o offset x é somado em todos os calling
Session Selector emitidos pelo cliente SAGE nas associações com
VCCs remotos, e também com o novo formato "setenv <id-
LSC>_SS_OFFSET x" onde o offset x é somado apenas ao calling
Session Selector da LSC <id-LSC>.
Tabela 17- 1 Variáveis de ambiente do SSC, SCD e SIG

17.2 Base de Dados Históricos


As variáveis definidas nessa seção são utilizadas pelos módulos GBH e definidas nos arquivos de
configuração de ambiente de cada gerenciador de base de dados históricos, conforme descrito nos
itens a seguir para OSI-PI, Informix, Oracle ou Postgres. Os arquivos residentes no diretório
$SAGE/config/<base>/sys são: informix_Amb, oracle_Amb, postgres_Amb e pi_Amb.

Variável Descrição
Opções comuns definidas em qualquer um dos arquivos
SGBD_CFLG Flags de compilação para o banco de dados relacional utilizado.
SGBD_EXT Extensão dos arquivos fontes para o pré-compilador C do banco de dados
relacional utilizado.
SGBD_INC Path para os arquivos de headers para o pré-compilador C do banco de
dados relacional utilizado.
SGBD_LIB Path para as bibliotecas utilizadas pelo pré-compilador C do banco de dados
relacional utilizado.
SGBD_LINK Comando de linkedição utilizado pelo o pré-compilador C do banco de dados
relacional utilizado.
SGBD_PCFLG Flags do pré- pré-compilador C do banco de dados relacional utilizado.
SGBD_PRESQL Flags do pré-compilador C do banco de dados relacional utilizado.
SGBD_SERVER String de conexão com o banco de dados relacional.
SGBD_THRPARAM Flags de compilação para implementação de threads
SGBD_VERSAO Versão do banco de dados relacional utilizado.
Opções exclusivas para Banco de Dados INFORMIX definidas em informix_Amb
INFORMIXDIR Path para a instalação do cliente Informix
INFORMIXSERVER Nome da instancia do servidor Informix
LTHREAD_CFLAGS Flags de linkedição para implementação de multitarefa em aplicativos

156
17 VARIÁVEIS DE AMBIENTE DO SAGE

Variável Descrição
clientes Informix.
THREADLIB POSIX Variavel de ambiente utilizadas por aplicativos multitarefa Informix.
Opções exclusivas para Banco de Dados ORACLE definidas em oracle_Amb
ORACLE_HOME Path para a instalação do cliente Oracle
ORACLE_SID Nome da instancia do servidor Oracle
ORACLEDIR O mesmo que ORACLE_HOME
ORAENV_ASK Variável utilizada internamente pelo cliente Oracle.
Opções exclusivas para Banco de Dados PI definidas em pi_Amb
PIGHOME Path para a instalação da PI-API
PIHOST Endereço de rede do servidor PI a ser carregado pela interface gbh_pi.
PIUSER Nome do usuário PI.
PIGROUP Grupo PI utilizado na criação de tags
PIDATASOURCE Quando definida, indica o valor a ser utilizado no campo “Data Source”
durante a criação de tags do PI. Quando não definida, é utilizada a variável
de ambiente BASE como “Data Source”.
PIACESSABH Quando definida, indica o endereço de rede do servidor PI a ser utilizado
pelos aplicativos do SAGE que consultam a base histórica (SAGE-Replay,
Mondo estudo, etc). Normalmente utilizada quando são configurados mais
de um servidor PI na solução. Quando não definida, é utilizado o servidor
indicado pela variável de ambiente PIHOST
Opções exclusivas para Banco de Dados PostgresSQL definidas em postgres_Amb
PGHOME Path para a instalação do cliente PostgreSQL
PGHOST Endereço de rede do servidor PostgreSQL
PGPORT Porta de comunicação Cliente-Servidor do PostgresSQL
Tabela 17- 2 Variáveis de ambiente do para gerenciamento de bases de dados históricos

157
17 VARIÁVEIS DE AMBIENTE DO SAGE

17.3 SIM
As variáveis de ambiente usadas no âmbito desse sub-sistema são definidas em
$SAGE/OTS_Amb.

Variável Descrição
Opções do subsistema de Treinamento e Simulação
PD_Home Define diretório onde está instalado o aplicativo PACE.
OTS_CONFIG Define diretório sob o qual são armazenados os arquivos de
configuração do ambiente para treinamento de operadores do SAGE
como também arquivos particulares dos usuários e backups dos
cenários de treinamento.
OTS_CENARIOS Localiza o diretório onde são armazenados os cenários preparados
pelos instrutores.
OTS_EXPORT Define o diretório onde é preparado o arquivo de entrada (NETD) para
o procedimento de importação do OTS. Neste diretório, são
preparados os arquivos contendo: curvas de cargas; snapshots;
arquivo offsage; e outros.
OTS_SNAPSHOTS Define diretório onde são armazenados os arquivos snapshots.
OTS_IMPORT Define diretório onde é realizado o procedimento de importação para o
OTS.

158

Você também pode gostar