Atualização da BD

346 views
Skip to first unread message

Huliano Fernandes

unread,
Jul 5, 2011, 11:10:26 PM7/5/11
to Usuários do SAGE
Boa noite a todos os membros da lista!

Na empresa que trabalho dispomos em nosso Centro de Operação de dois
PC's com SAGE 2004-upd 12-Linux, sendo que houve a necessidade de
realizar algumas correções na BD que descrevo a seguir:

- O ONS questionou a diferença de aproximadamente 3% na medição de
Potência Ativa Total de 2 terminais de LT e solicitou a correção, após
essa notificação, verifiquei na entidade PAF uma diferença nos valores
do KCONV1 (potência ativa por fase) entre os terminais e calculei a
diferença que o ONS apontou;

- Em seguida alterei os valores do KCONV1 de cada fase para +3% o
valor da potência ativa individual para o terminal que apresentava
diferença na medição.

Lembro que alterei o KCONV1 no arquivo pas.dat, através do próprio
editor de texto do Linux, sem desativar a BD e somente reiniciando o
PC após ter salvo o arquivo. Quando o PC reiniciou, percebi que os
valores de MW total não haviam mudado, permaneceram com a mesma
diferença entre terminais.

Minhas dúvidas são as seguintes:

- O motivo pelo qual não houve mudança de valores na medição deve-se
por não ter dado o comando "atualizabd"?
- Devo dar o comando "atualizabd" com mais algum argumento com a PC
funcionando no tempo real?

Desde já muito grato por qualquer esclarecimento!

Huliano Fernandes

Rodrigo Claro

unread,
Jul 5, 2011, 11:41:07 PM7/5/11
to usuarios...@googlegroups.com
Prezado Huliano,

Você fez o procedimento correto para alterar a base fonte do SAGE, editando a tabela .dat, entretanto, esta correção só terá efeito, após o cmd AtualizaBD fria fonte. Lembrando ainda que esta nova base referencia entrará em operação somente após uma parada no SAGE. Executando um desativa gcd.

Existe ainda uma forma de se corrigir problemas em escalas na Base Tempo Real do SAGE, ateh você programar uma parada no sistema. Você deverá alterar o valor diretamente na base tempo real e para isso, utilize a própria interface gráfica do SAGE, acessando através do Visor de Acesso o botão BASE de DADOS.

Não me recordo exatamente o atributo que vc deverá alterar pois estou em férias e, assim que retornar, poderei ver isso pra vc.

Desculpem, essa eh minha primeira participação na lista. Sou Analista na CTEEP e trabalho com SAGE há cerca de 3,5 anos.

Sr alguém puder completar e até me corrigir, sinta-se à vontade para auxiliar o Huliano.

-----
Rodrigo Tadeu Claro
Enviado do meu IPhone.

Eduardo Fracassi

unread,
Jul 6, 2011, 7:18:06 AM7/6/11
to usuarios...@googlegroups.com
Complementando:

* a base de dados deve ser igual para todos nós registrados noh.dat.  a # derruba a base de dados.

* sempre que ativar a base de dados fazer uma maquina por vez, após o termino da ativaçao de todos os processos.
  botao visor de processos mostra ativação

* para modificar um valor analógico provisóriamente, basta clicar sobre o valor apresentado na tela ou no tabular digital
  e informar o "novo" valor no "pop-up" apresentado. Esse valor ficará até a próxima modificação efetuado pelo operador ou
  quando a base de dados for desativada.

abs

Reynaldo Dias Gomes

unread,
Jul 6, 2011, 8:40:16 AM7/6/11
to usuarios...@googlegroups.com

 

Huliano,

 

Como nosso colega Eduardo já disse, você poderá fazer esta alteração em tempo real, porém se o SAGE for desativado você perderá as alterações efetuadas.

Para alteração na base fonte o procedimento é o que você fez, ou seja, alteração do arquivo “paf.dat”, atributo “KCONV1”, porém, para efetivar esta alteração

você deverá desativar o SAGE em todos os nós da rede e fazer um “AtualizaBD”.

 

É interessante você copiar os arquivos .xdr que estão dentro de $BD para um diretório de nome, por exemplo, “/preservacao” criado dentro do $SAGE e aí sim

fazer o comando “AtualizaBD path ./preservacao”

 

O procedimento acima é feito para preservar os dados do tempo real, por exemplo, anotações, pontos em manual, pontos invertidos, etc.

 

Abraço,

 

Reynaldo.

Luís Cássio Modernel Sarate

unread,
Jul 7, 2011, 10:58:49 AM7/7/11
to usuarios...@googlegroups.com
Prezado Huliano,

Como você já deve ter visto, existe uma grande variedade de modos de fazer a mudança na base de dados do SAGE e corrigir os KCONV.

1) como disse o Rodrigo, pode ser alterado em tempo de execução, mas além de ser perdido, como o update 012 é bastante antigo, não sei se ele suporta esta característica. Esta característica é bastante útil por permitir que voê possa alterar o valor do KCONV, corrigir problemas sem ter de regerar imediatamente a base.

2) para geração com arquivos "*.dat" como fonte, sugiro que utilize o comando "AtualizaBD fonte", que utiliza os arquivos texto e preserva as anotações, pontos manuais, etc.

3) eu nunca utilizei a forma que o Reynaldo sugere, mas parece ser interessante. Vou experimentar. Caso alguém já utilize, por favor poste mais informações.

4) como colocou o Eduardo, quando atualizamos a base no nosso conjunto de máquinas, mantemos todas iguais, para evitar inconsistências e não derrubar o SAGE. Assim, geramos a base em uma única máquina e depois replicamos para as demais. A sequência de comandos fica mais ou menos assim:
# AtualizaBD fonte (gera os arquivos XDR)
# STI_dcatbh B -local (passo somente necessário se o SAGE gera base histórica)
# neste ponto fazemos ativa gcd nesta máquina
# zipconfig $BASE -b -gz (responder SIM)
# sincconfig bd_${BASE}_DDMMAA.tar.gz -h nome-da-outra-máquina -x (DD dia, MM mês, AA ano, repetir para cada máquina a ser sincronizada)
# em cada máquina repetir o STI_dcatbh B -local e ativa gcd nos demais computadores.

Funciona para todas as máquinas que utilizam a mesma base de dados. Máquina com base de dados diferentes necessitam ser geradas independentemente.

Espero que ajude.

Luís Cássio Modernel Sarate
lcassio (at) gmail (pt) com

rlinux

unread,
Jul 7, 2011, 11:51:27 AM7/7/11
to usuarios...@googlegroups.com
Prezado Sarate, com relação ao ítem 3:

O procedimento informado pelo Reynaldo é amplamente utilizado na CTEEP para a preservação dos parâmetros por ele já mencionados quando da atualização entre bases de dados.

Sds,
--
Rodrigo Tadeu Claro (rlinux)

JOSE LUIZ DE FRANCA NETO

unread,
Jul 7, 2011, 12:37:23 PM7/7/11
to usuarios...@googlegroups.com

Pessoal,

 

             Primeiro, gostaria de dar os parabéns a todos pela iniciativa de criar (e participar) do grupo dos usuários, creio que efetivamente é uma ótima forma de trocarmos experiências.

             Em minha empresa (CELPE) utilizamos o SAGE como UTR nas SEs e não no centro de operação (temos outro SCADA), o que em termos de estabilidade e compatibilidade com equipamentos em IEC 61850 tem sido muito bom (diagrama anexo). Nosso SAGE roda com o CentOS (Linux).

             Porém, tenho tido algumas dificuldades na implementação de algumas funcionalidades e soluções, como descrevo abaixo:

 

            1 ) Alguns equipamentos escravos com comunicação em DNP3 não tem suas variáveis analógicas reconhecidas pelo SAGE no nível da aplicação (quando observo a comunicação pelo monitor de mensagens físicas <mmf dnp3>, vejo que o objeto 30, var 4 - analógico 16 bits sem flag – é reconhecido mas os pontos na tela e os enviados não “saem” do zero, já tentei alterar o KCONV 1,2,3... em PAF e o tipo de variável para AA16, AA32, AANL, APFL em NV2, tudo sem sucesso).

 

            2 ) Gostaria de “forçar” o carregamento automático de uma tela especifica (unifilar da SE) quando o micro fosse reiniciado de modo a não deixar a cargo do operador essa tarefa.

 

            3 ) A sincronização de hora dos relés e do SAGE local é feita por GPS (time Server) usando protocolo NTP, no momento não tenho “back-up” do GPS para o caso de falha. Assim acho que a melhor alternativa seria ter um software com função de time Server (em NTP também) “rodando” no micro do SAGE, de modo a garantir que na ausência do GPS pelo menos os relés e o sage continuassem compartilhando uma mesma base de tempo, mesmo que seja diferente das demais SEs (que estão com o GPS funcionando).

 

            Agradeço antecipadamente a quem puder me dar alguma dica de como resolver qualquer um desses 3 problemas.

 

SDS,   

 

José Luiz de França Neto

Planejamento de Automação e Sistemas

 

CELPE - Grupo Neoenergia

www.celpe.com.br

+55 (81) 3217.5477 - +55 (81) 9904.9153

 

Base.xls
MPCC_AN_005_R00.pdf

Guilherme Fick

unread,
Jul 7, 2011, 12:53:32 PM7/7/11
to usuarios...@googlegroups.com
Caro José, quanto ao item 3 tenho uma sugestão:

- Elencar um dos servidores SAGE para ativar o serviço de NTP, atraves do menu ADMINISTRAÇÃO > CONFIGURAÇOES DE SERVIDOR > SERVIÇOS

Dentro do menu SERVIÇOS procurar pelo NTPD, clicar na caixinha e depois clicar em iniciar para que o serviço seja startado sem necessidade de reiniciar o servidor.

Ai acredito que devemos levar em conta se os equipamentos como remotas e IED`s possuem configuraçao para voce apontar um servidor de tempo reserva.

Abs!

Emanuel Vendramin

unread,
Jul 7, 2011, 1:53:23 PM7/7/11
to usuarios...@googlegroups.com

Olá José Luiz,

 

no item 1, vc já viu se os limites de escala estão muito abertos e o atributo pas.bndmo esta setado ? Pois, nessa condição o SAGE irá filtrar os valores recebidos, não atualizando a tela.

 

Atenciosamente,

Emanuel Vendramin
Suporte do Sistema de Supervisão e Controle
Tel: +55 11 4589-6509
www.cteep.com.br
cid:image003.gif@01CC0974.2CF4AA70


image001.gif

Marcos Coutinho

unread,
Jul 7, 2011, 1:56:26 PM7/7/11
to usuarios...@googlegroups.com
Prezado Huliano,

acho que vale te lembrar que o KCONV1 e KCONV2 do PAF são para ajuste de coeficiente linear e angular (equação da reta - Ax + B) onde Kconv1 = A e Kconv2 = B. Estes valores são obtidos de acordo com a relação do seu TC e TP.
O ideal, quando possível é usar o tipo de ponto Flutuante (APFL) onde não é necessária a conversão, mas no caso de não ser viável deve-se ter cuidado ao alterar estes valores para não se mascarar o problema e gerar outro.

Atenciosamente,
Marcos Coutinho.

e.fracassi

unread,
Jul 7, 2011, 10:28:56 PM7/7/11
to usuarios...@googlegroups.com

É assim;

 

Item 1.

* se o ponto analógico não estiver invalido na origem (isso eh outro problema) pode ser:

* o sage só vai receber o valor especificado na faixa do equipamento. Exemplo, caso o parametrizador informe que a faixa de uma valor eh de 4 a  20 entao so teremos variação entre 4 a 20. Qualquer coisa acima ou abaixo disso não sob para o supervisório. O legal eh utilizar algum equipamento de injeção de tensão/corrente onde possa validar o ponto.

 

Item 2

* para isso edite o arquivo X e informe a tela que deseja ser aberta ao pressionar o botão TELAS.

* vi $IHM/sage.mem (enter) escreva o nome da tela como esta em $TELAS. Respeite a escrita (maiúsculas/minúsculas). Caso tenha algo escrito apague para colocar a nova informação

* use o editor que quiser

 

Item 3

* vai na do Guilherme.

 

 

Flw.

Huliano Fernandes

unread,
Jul 8, 2011, 10:03:45 AM7/8/11
to usuarios...@googlegroups.com
Prezados,

Muito obrigado por todas as respostas. Trabalho mais no setor de proteção e telecom da empresa, o quadro é enxuto e temos de atender outras áreas também por mim pouco conhecidas, exemplo SAGE.
Ainda não realizei as mudanças informadas, mas quando ocorrer, postarei novamente descrevendo a atividade.
Abraços,




Em 07/07/2011 17:45, usuarios-do-...@googlegroups.com escreveu:

Grupo: http://groups.google.com/group/usuarios-do-sage/topics

    "Luís Cássio Modernel Sarate" Jul 07 11:58AM -0300 ^


    Prezado Huliano,

    Como você já deve ter visto, existe uma grande variedade de modos de fazer a
    mudança na base de dados do SAGE e corrigir os KCONV.

    1) como disse o Rodrigo, pode ser alterado em tempo de execução, mas além de
    ser perdido, como o update 012 é bastante antigo, não sei se ele suporta
    esta característica. Esta característica é bastante útil por permitir que
    voê possa alterar o valor do KCONV, corrigir problemas sem ter de regerar
    imediatamente a base.

    2) para geração com arquivos "*.dat" como fonte, sugiro que utilize o
    comando "AtualizaBD fonte", que utiliza os arquivos texto e preserva as
    anotações, pontos manuais, etc.

    3) eu nunca utilizei a forma que o Reynaldo sugere, mas parece ser
    interessante. Vou experimentar. Caso alguém já utilize, por favor poste mais
    informações.

    4) como colocou o Eduardo, quando atualizamos a base no nosso conjunto de
    máquinas, mantemos todas iguais, para evitar inconsistências e não derrubar
    o SAGE. Assim, geramos a base em uma única máquina e depois replicamos para
    as demais. A sequência de comandos fica mais ou menos assim:
    *# AtualizaBD fonte* (gera os arquivos XDR)
    *# STI_dcatbh B -local* (passo somente necessário se o SAGE gera base
    histórica)
    # neste ponto fazemos *ativa gcd* nesta máquina
    *# zipconfig $BASE -b -gz* (responder SIM)
    *# sincconfig bd_${BASE}_DDMMAA.tar.gz -h nome-da-outra-máquina -x* (DD dia,

    MM mês, AA ano, repetir para cada máquina a ser sincronizada)
    # em cada máquina repetir o *STI_dcatbh B -local* e *ativa gcd* nos demais
    computadores.

    Funciona para todas as máquinas que utiliza m a mesma base de dados. Máquina

    com base de dados diferentes necessitam ser geradas independentemente.

    Espero que ajude.

    Luís *Cássio* Modernel Sarate

    lcassio (at) gmail (pt) com


     

      rlinux Jul 07 12:51PM -0300 ^


      Prezado Sarate, com relação ao ítem 3:

      O procedimento informado pelo Reynaldo é amplamente utilizado na CTEEP para
      a preservação dos parâmetros por ele já mencionados quando da atualização
      entre bases de dados.

      Sds,

      Em 7 de julho de 2011 11:58, Luís Cássio Modernel Sarate

        "JOSE LUIZ DE FRANCA NETO" Jul 07 01:37PM -0300 ^


        Pessoal,



        Primeiro, gostaria de dar os parabéns a todos pela iniciativa de criar (e participar) do grupo dos usuários, creio que efetivamente é uma ótima forma de trocarmos experiências.

        Em minha empresa (CELPE) utilizamos o SAGE como UTR nas SEs e não no centro de operação (temos outro SCADA), o que em termos de estabilidade e compatibilidade com equipamentos em IEC 61850 tem sido muito bom (diagrama anexo). Nosso SAGE roda com o CentOS (Linux).

        Porém, tenho tido algumas dificuldades na implementação de algumas funcionalidades e soluções, como descrevo abaixo:



        1 ) Alguns equipamentos escravos com comunicação em DNP3 não tem suas variáveis analógicas reconhecidas pelo SAGE no nível da aplicação (quando observo a comuni cação pelo monitor de mensagens físicas , vejo que o objeto 30, var 4 - analógico 16 bits sem flag - é reconhecido mas os pontos na tela e os enviados não "saem" do zero, já tentei alterar o KCONV 1,2,3... em PAF e o tipo de variável para AA16, AA32, AANL, APFL em NV2, tudo sem sucesso).




        2 ) Gostaria de "forçar" o carregamento automático de uma tela especifica (unifilar da SE) quando o micro fosse reiniciado de modo a não deixar a cargo do operador essa tarefa.



        3 ) A sincronização de hora dos relés e do SAGE local é feita por GPS (time Server) usando protocolo NTP, no momento não tenho "back-up" do GPS para o caso de falha. Assim acho que a melhor alternativa seria ter um software com função de time Server (em NTP também) "rodando" no micro do SAGE, de modo a garantir que na ausência do GPS pelo menos os relés e o sage continuassem compartilhando uma mesma base de tempo, mesmo que seja diferente das d emais SEs (que estão com o GPS funcionando).




        Agradeço antecipadamente a quem puder me dar alguma dica de como resolver qualquer um desses 3 problemas.



        SDS,



        José Luiz de França Neto

        Planejamento de Automação e Sistemas



        CELPE - Grupo Neoenergia

        www.celpe.com.br

        +55 (81) 3217.5477 - +55 (81) 9904.9153

         

          Guilherme Fick Jul 07 01:53PM -0300 ^


          Caro José, quanto ao item 3 tenho uma sugestão:

          - Elencar um dos servidores SAGE para ativar o serviço de NTP, atraves do
          menu ADMINISTRAÇÃO > CONFIGURAÇOES DE SERVIDOR > SERVIÇOS

          Dentro do menu SERVIÇOS procurar pelo NTPD, clicar na caixinha e depois
          clicar em iniciar para que o serviço seja startado sem necessidade de
          reiniciar o servidor.

          Ai acredito que devemos levar em conta se os equipamentos como remotas e
          IED`s possuem configuraçao para voce apontar um servidor de tempo reserva.

          Abs!


          Em 7 de julho de 2011 13:37, JOSE LUIZ DE FRANCA NETO <

           

            "Emanuel Vendramin" Jul 07 02:53PM -0300 ^


            Olá José Luiz,



            no item 1, vc já viu se os limites de escala estão muito abertos e o atributo pas.bndmo esta setado ? Pois, nessa condição o SAGE irá filtrar os valores recebidos, não atualizando a tela.



            Atenciosamente,

            Emanuel Vendramin
            Suporte do Sistema de Supervisão e Controle
            Tel: +55 11 4589-6509
            Pessoal,



            Primeiro, gostaria de dar os parabéns a todos pela iniciativa de criar (e participar) do grupo dos usuários, creio que efetivamente é uma ótima forma de trocarmos experiências.

            Em minha empresa (CELPE) utilizamos o SAGE como UTR nas SEs e não no centro de operação (temos outro SCADA), o que em termos de estabilidade e compatibilidade com equipamentos em IEC 61850 tem sido muito bom (diagrama anexo). Nosso SAGE roda com o CentOS (Linux).

            Porém, tenho tido algumas dificuldades na implementação de algumas funcionalidades e soluções, como descrevo abaixo:



            1 ) Alguns equipamentos escravos com comunicação em DNP3 não tem suas variáveis analógicas reconhecidas pelo SAGE no nível da aplicação (quando observo a comunicação pelo monitor de mensagens físicas , vejo que o objeto 30, var 4 - analógico 16 bits sem flag - é reconhecido mas os pontos na tela e os enviados não "saem" do zero, já tentei alterar o KCONV 1,2,3... em PAF e o tipo de variável para AA16, AA32, AANL, APFL em NV2, tudo sem sucesso).




            2 ) Gostaria de "forçar" o carregamento automático de uma tela especifica (unifilar da SE) quando o micro fosse reiniciado de modo a não deixar a cargo do operador essa tarefa.



            3 ) A sincronização de hora dos relés e do SAGE local é feita por GPS (time Server) usando protocolo NTP, no momento não tenho "back-up" do GPS para o caso de falha. Assim acho que a melhor alternativa seria ter um software com função de time Server (em NTP também) "rodando" no micro do SAGE, de modo a garantir que na ausência do GPS pelo menos os relés e o sage continuassem compartilhando uma mesma base de tempo, mesmo que seja diferente das demais SEs (que estão com o GPS funcionando).



            Agradeço antecipada mente a quem puder me dar alguma dica de como resolver qualquer um desses 3 problemas.
              Marcos Coutinho Jul 07 02:56PM -0300 ^

            JOSE LUIZ DE FRANCA NETO

            unread,
            Jul 11, 2011, 4:11:04 PM7/11/11
            to usuarios...@googlegroups.com

            Pessoal,

             

                           Quero agradecer muitíssimo pelas informações prontamente enviadas, sobretudo ao Guilherme, ao Emanuel e ao Fracassi, demorei a responder porque entre outras atividades demorei a ir na Subestação testar as aplicabilidade das informações, até o momento só consegui êxito no item ”2” mas vou continuar tentando resolver:

             

            Item 1:

             

                        Fiz mudanças no PAS.dat aumentando os limites para os extremos (-99999 para inferiores e 99999 para os superiores) e alterei a banda morta para 0,1,2,5,10... o equipamento que estou usando (retificador) comunica bem com outras remotas e durante os testes fico alternando entre o SAGE e o IOServer (é um software australiano que pode fazer as vezes de gateway, mas que é muito pratico para testes de comunicação em MODBUS e DNP3 - www.ioserver.com ), como disse as medidas continuam variando no IOserver mas no SAGE ficam “zeradas” sempre. Estou pondo anexa a planilha básico, com as minhas configurações. Pretendo continuar fazendo modificações nos arquivos para ver no que dá. A propósito, tem alguma maneira de “pausar” a imagem do monitor de mensagens físicas <mmf dnp3> e de fazer com que ele me mostre os dados do link layer? Além do mmf, mml e mmd tem algum outro?

             

            Item 2:

             

                        Ok, funcionou como o Fracassi disse, só tive um probleminha com o VI pois mesmo estando no terminal como SU (super usuário) dava sempre permissão negada... usando o gvim funcionou... vai entender...

             

            Item 3:

                       

                        Achei realmente o ntpd nos serviços, ele já estava rodando na configuração de partida junto com o Linux (deve ser o padrão da instalação do SAGE), o computador (e o SAGE também, lógico) já estava “pegando” a hora do GPS, mas o estranho é que não tem jeito dos relés “lerem” a hora publicada pelo Linux, estou usando relés de um fabricante espanhol (ZIV), pode ser que haja alguma incompatibilidade no protocolo ntp (entre o serviço do Linux e as opções do relé), já entrei em contato com o desenvolvimento da ZIV na Espanha e expus o caso, segue anexa ainda tela de configuração do NTP no relé.

             

             

            SDS,

             

            José Luiz de França Neto

            Planejamento de Automação e Sistemas

             

            CELPE - Grupo Neoenergia

            www.celpe.com.br

            +55 (81) 3217.5477 - +55 (81) 9904.9153

            Basico.zip
            NTP_ZIV.GIF

            Guilherme Fick

            unread,
            Jul 11, 2011, 5:18:57 PM7/11/11
            to usuarios...@googlegroups.com
            Caro José, nao me recordo se no mmf este comando funciona, no syslog sei que funciona, mas voce pode tentar CTRL+S para parar e CTRL+Q para continuar,ou ao contrario, nao me recordo bem.

            Abs!

            e.fracassi

            unread,
            Jul 12, 2011, 12:18:01 AM7/12/11
            to usuarios...@googlegroups.com

            Ola,

            Pode também:

             

            #gravar os valores do mmf procedendo:

             

            mmf <protocolo> | tee <nomedoarquivo>

             

            exemplo:

             

            mmf i104 | tee $LOG\protoI104_11072011

             

            daí é editar quando quiser para pesquisa.

             

            #Ou em um terminal:

             

            tail –f /var/log/messages | grep <nomequedesejavisualizar>

             

            exemplo, caso queira visualizar as I/O do iec4t (transportador do i104)

             

            tail –f /var/log/messages | grep iec4t

             

            abs.

            Reply all
            Reply to author
            Forward
            0 new messages