Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Tip

Esta secção apresenta passo a passo um roteiro de elaboração de um projeto partindo da Aplicação Default. Para iniciar crie um projeto novo, escolhendo o template de projeto DefaultNewProject. Então entre no projeto e inicia a criação dos demais objetos como detalhado nestes próximos itens.

Criação dos Dicionários

Na criação de tags e tipos de usuário (templates), deve-se definir o dicionário que será usado para traduzir o valor de uma variável para seu estado. Este atributo chamado Parameter é usado nas listas de Alarme. Assim, se o tag de uma proteção vale "1", na lista de alarme será apresentado o texto "ATUADO".
Deve-se assim, criar os dicionários que serão usados para posteriormente criar os templates e tags.
Foram criados os dicionários:

  • SEL_CHAVE: Estados de chaves de 4 posições;

  • SEL_PROTECTION: Digitais com frase Normal / Atuado

    This section presents a roadmap for drawing up a project from the Default Application. To start create a new project by choosing the project template DefaultNewProject. Then enter the project and start creating the other objects as detailed in these next items.

    Creation of Dictionaries

    When creating tags and user types (templates), you must define the dictionary that will be used to translate the value of a variable into its state. This attribute called Parameter is used in alarm lists. Thus, if the tag of a protection is worth "1", the alarm list will be displayed in the text "ACTUATED".
    You should therefore create the dictionaries that will be used to later create the templates and tags.
    Dictionaries were created:

    • SEL_CHAVE: 4-position key states;

    • SEL_PROTECTION: Digital with normal / actuated phrase;

    • DNP_IIN_CMD: Resultado dos comandos Result of DNP (Internal Indication) ; Se o usuário deseja manter a aplicação em duas línguas, deverácommands; If the user wishes to keep the application in two languages, he/she must:

    1. Incluir no dicionário Inglês, apresentado na figura abaixo, todos os termos em português que colocar em telas e objetos.

    2. Em todos os objetos com texto usar a propriedade Localization;

    3. Em dinâmicas com texto e em Scripts, no local de textos sempre usarInclude in the English dictionary, presented in the figure below, all terms in Portuguese put on screens and objects.

    4. On all objects with text use the property Localization;

    5. In dynamics with text and in Scripts, in-place texts always use

    @Client.Locale ("texto") e adicionar o texto ao dicionário Inglês;

    Criação dos Templates

    Introdução

    Na organização de uma nova aplicação, o usuário deve planejar adequadamente os templates. Assim, a título de exemplo, vai-se criar uma aplicação de monitoração de uma subestação com:

    • Bay de linha;

    • Bay de transformador;

    • Bay de alimentador;

    Como um bay pode ocorrer mais de uma vez, para cada bay será criado como um template.
    Os pontos de cada bay são fornecidos, geralmente, em planilhas Excel e, a partir destas planilhas, deverão ser criados os templates, isto é, é mais fácil adequar à planilha Excel para o formato do ActionNET do que digitar ponto por ponto diretamente nos Tags e Templates.
    Estudando os tags de um bay o usuário poderá observar sequências de pontos que se repetem em diferentes bays. Estas sequências, a título de facilitar o trabalho e padronizar tags, devem ser também criadas como templates. Assim, por exemplo, em diferentes bays se tem a mesma
    sequência de variáveis analógicas e, para facilitar o trabalho, define-se esta sequência como um template, conforme a figura abaixotext") and add the text to the English dictionary;

    Creation of Templates

    Introduction

    In organizing a new application, the user must properly plan the templates. Thus, for example, you will create a monitoring application of a substation with:

    • Bay line;

    • Transformer Bay;

    • Feeder bay;

    Because a bay can occur more than once, each bay will be created as a template.
    The points of each bay are usually provided in Excel spreadsheets and, from these worksheets, the templates should be created, that is, it is easier to adapt the Excel spreadsheet to the ActionNET format than to type point by point directly in the Tags and Templates.
    By studying the tags of a bay the user will be able to observe sequences of points that are repeated in different bays. These sequences, in order to facilitate work and standardize tags, should also be created as templates. So, for example, in different bays one has the same
    sequence of analog variables and, to facilitate the work, this sequence is defined as a template, as shown in the figure below:

    Template dos Bays

    Para gerar o template de um bay, a partir de uma planilha Excel, basta organizar seus pontos de forma idêntica a da Aba de templates. Para criar uma planilha organizada de forma idêntica a Aba de Templates, basta copiar uma linha desta Aba e colá-la em uma planilha Excel, conforme a planilha abaixo gerada a partir do To generate the template of a bay, from an Excel spreadsheet, simply organize your points identically to that of the templates tab. To create a spreadsheet that is identically organized to the Templates Tab, simply copy a row of this Tab and paste it into an Excel spreadsheet, according to the worksheet below generated from the template ANA1.

    A partir desta planilha, esvaziam-se as linhas, mantendo o cabeçalho, e depois se deve organizar nossa planilha de pontos dos bays, no formato desta planilha, conforme mostrado na figura abaixo, onde foram colocados os pontos do bay de linha existentes em um relé
    From this worksheet, the rows are emptied, keeping the header, and then we must organize our bays point sheet, in the format of this worksheet, as shown in the figure below, where the existing line bay points were placed in a SEL_311.

    Image RemovedNesta planilha, as células em azul são os pontos originais da planilha de pontos do bay de linha e os pontos em branco correspondem a pontos criados pelo usuário, pelos seguintes motivos:ANA: corresponde aos pontos analógicos do bay que estão apresentados na figura do Image Added


    In this worksheet, the blue cells are the original points of the line bay point sheet, and the blank points correspond to points created by the user for the following reasons:

    1. ANA: Corresponds to the analog points of the bay that are shown in the figure of item 8.2.1.

    2. ALM_GROUP: é uma variável calculada que deve ser colocada em todos os bays onde se deseja ter um alarme de grupo identificando se este bay tem ou não pelo menos um alarme atuado. Observar que emEm Category se tem a variável It is a calculated variable that should be placed in all bays where you want to have a group alarm identifying whether or not this bay has at least one alarm actuated. Note that in

    3. In Category if you have the variable AN_GRUALM_ALM associadaassociated.

    4. IIN_VAL e and IIN_CMD: são variáveis associadas ao canal DNP3 que serão explicadas mais a frente, quando da criação dos pontos de Entrada e Saída da aplicaçãothese are variables associated with the DNP3 channel that will be explained later when the application's Entry and Exit points are created.

    5. CB (Circuit Break): foi criado um template para o disjuntor onde estão declaradas a variável de entrada com o estado do disjuntor e as duas variáveis de saída para ligar / desligar o disjuntora template has been created for the circuit breaker where the input variable with the circuit breaker state and the two output variables to turn the circuit breaker on/off are declared;

    6. SC_89-1: Foi criado um template para chaves seccionadoras onde estão declaradas a variável de entrada com o estado da chave e as duas variáveis de saída para ligar / desligar a chave;

    Image RemovedAs colunas do template usadas são:Type: Tipo do ponto que no caso são
    1. A template has been created for disconnecting keys where the input variable with the key state and the two output variables to turn the key on/off are declared;

    Image Added


    The template columns used are:

    • Type: Point type which in the case is:

      • Digital (0 ou or 1): variáveis digitais de entrada e saídadigital input and output variables;

      • AnalogInt: Variáveis digitais discretas são definidas como AnalogInt: estado de disjuntor e seccionadoras (assumem valores entre 0 e Discrete digital variables are defined as AnalogInt: circuit breaker state and disconnectors (assume values between 0 and 3).

      • AnalogDouble: Variáveis analógicas são definidas como Analog variables are set to AnalogDouble.

      • ANA1: template com todas as variáveis analógicas de um with all analog variables of a bay.

    • Parameter: contém o nome do dicionário que converte o valor da variável em um textocontains the dictionary name that converts the value of the variable into a text;

    • Retentive: o texto properties indica que no início do programa tanto o valor do Tag como suas propriedades serão iguais aos seus valores quando do encerramento do programaThe properties text indicates that at the beginning of the program both the tag value and its properties will be equal to its values when the program closes.

    • Category: o item Item "7.3.2" trata as categorias existentes na aplicação default e, no caso, criou-se um único tag referente ao alarme de grupo associado a este treats the existing categories in the default application, and in this case, a single tag was created for the group alarm associated with this bay.

    • Description: texto descritivo do descriptive text of the tag.

    Assim como se criou o bay associado ao relé
    Just as the bay associated with the SEL_311L (proteção de linha) se deve criar os pontos associados aos relés que coletam pontos dos alimentadores e do transformador.

    Criação de Níveis

    line protection) is created, the points associated with the rels that collect feeder and transformer points should be created.

    Level Creation (Assets)

    Os Assets (níveis) correspondem à organização dos agrupamentos de pontos da aplicação. Os tags tratados a partir da aplicação default devem ser diferentes de SysInternals que é o agrupamento dos tags usados nas rotinas internas da aplicação Default, para gerar as telas com os diversos relatórios disponibilizados automaticamente:

    • Histórico de Medidas;

    • Sumário de Tags;

    • Sumário de Alarmes;

    • Sumário de Eventos

    • Pesquisa a Eventos;

    • Log de Operação;

    • Tendência em Tempo Real e Histórica;

    Usando NewLevel (botão direito do mouse sobre DefaultNewProject_DNP) definiu-se, conforme figura a seguir, três novos itens de segundo nível, conforme mostra a figura abaixo:

    • Alimentadores: terá os alimentadores.

    • Linhas: terá os bays de linha;

    • Trafos: terá os bays de trafo;

    Image RemovedTodos os tags criados deverão estar em um destes níveis.

    Criação dos tags de Bays

    Para criar os bays da subestação, vai-se para a Aba de Objects e criam-se os bays associando- se seus tipos (Type) aos respectivos templates, conforme a figura abaixo.

    Image RemovedObservar que estes tags devem ser do tipo Server (estão no servidor) e não podem estar incluídos no nível SysInternal.

    Criação dos Devices

    Nesta aplicação exemplo, considera-se que os relés estejam se comunicando com o SCADA através do protocolo DNP 3.0. Para cada protocolo existe um manual específico.

    Criação de um Canal DNP3

    Na Aba de canais (Channel) cria-se um novo canal chamado "DNP301" usando o protocolo DNP3 com comunicação TCP/IP, conforme figura abaixo:

    Image RemovedNeste canal se usa os atributos default, conforme abaixo:Image Removed

    Criação do Nodo

    O nodo corresponde ao IED (relé, CLPlevels) correspond to the organization of the application point groupings. Tags handled from the default application must be different from SysInternals which is the grouping of tags used in the internal routines of the Default application, to generate the screens with the various reports automatically made available:

    • History of Measures;

    • Contentium of Tags;

    • Summary of Alarms;

    • Event Summary

    • Event Search;

    • Operation Log;

    • Trend in Real and Historical Time;

    Using NewLevel (right mouse button on DefaultNewProject_DNP) three new second-level items were defined as shown below, as shown in the figure below:

    • Feeders: you will have the feeders.

    • Lines: you will have the line bays;

    • Trafos: will have the bays of trafo;

    Image Added


    All tags created must be on one of these levels.

    Creation of Bays tags

    To create the bays of the substation, you go to the Objects Tab and create the bays by associating their types (Type) with the respective templates, as shown in the figure below.

    Image Added


    Note that these tags must be server type (they are on the server) and cannot be included in the Internal Sys.

    Creation of Devices

    In this example application, the relafters are being considered to be communicating with SCADA through the DNP 3.0 protocol. For each protocol there is a specific manual.

    Creating a DNP3 Channel

    In the Channel Tab, a new channel called "DNP301" is created using the DNP3 protocol with TCP/IP communication, as shown below:

    Image Added


    This channel uses the default attributes, as below:

    Image Added

    Creation of the Node

    The node corresponds to the IED (relé, PLC, UTR, etc.).
    Na In ABA Node deve-se criar um novo nodo conforme a figura abaixoyou should create a new node as shown in the figure below:

    Após, deve-se acertar os atributos do node, clicando na coluna Primary Station.

    Criação dos Pontos do Canal / Nodo

    A criação dos pontos é feita de forma similar a criação dos templates, isto é, a maneira mais fácil é criar um ponto qualquer na ABA de pontos, exporta-lo para uma planilha Excel e após, a partir da planilha de pontos da aplicação criar uma planilha Excel mantendo a organização da planilha exportadaAfter, you must hit the node attributes by clicking on the Primary Station column.

    Creation of Channel Points / Nodo

    The creation of points is done in a similar way to the creation of the templates, that is, the easiest way is to create any point in the points ABA, export it to an Excel spreadsheet and after, from the spreadsheet of points of the application create an Excel spreadsheet keeping the organization of the exported sheet:

    TagName

    Node

    Address

    DataTypeDatatype

    Modifiers

    AccessType

    Label

    Scaling

    Tag.SEL_LINHA_01.DJ_52A

    Node.SEL_311L_01


    Native


    AccessType.Read


    None

    No manual do protocolo DNP 3 estão as informações sobre como preencher cada coluna de um ponto. Os pontos BI são de entrada digital In the DNP 3 protocol manual is information on how to fill each column of a point. BI points are digital input (Binary Input), os pontos AI são entradas analógicas, os pontos CRO são saídas digitais AI points are analog inputs, CRO points are digital outputs (Control Relay Output) e os pontos IIN são entradas do tipo Internal Indication do , and IIN points are inputs of the Internal Indication type of DNP3.
    ObservaçõesObservations:

    1. Para criar um ponto duplo como no caso das seccionadoras, definiu-se a seccionadora como uma variável AnalogInt, e criou-se dois pontos digitais que correspondem ao Bit0 e Bit1 da seccionadora (linhas 10 e 11 da planilha acima);

    2. As variáveis do tipo IIN (linhas 40 e 41) tem endereço fixo, conforme apresentado no manual do DNP3;

    3. Para executar uma saída deve-se chamar a rotina (Class) AN_TAG com método de inverter o valor da variável de saídaTo create a double point as in the case of the disconnectors, the disconnector was defined as an AnalogInt variable, and two digital points were created that correspond to the Bit0 and Bit1 of the disconnector (rows 10 and 11 of the above worksheet);

    4. The variables of type IIN (lines 40 and 41) have a fixed address, as shown in the DNP3 manual;

    5. To perform an output you must call the routine (Class) AN_TAG method of reversing the value of the output variable:

    @Script.Class.AN_Tags.ToggleDigOutput(<tag de saída><out tag>);

    1. Sempre que enviar um comando, é interessante colocar uma mensagem no Sumário de Eventos registrando este comando. Para tal execute a açãoEach time you send a command, it is interesting to put a message in the Event Summary by registering this command. To do this, perform the action:

    @Alarm.SystemEvents.AddCustomMessage("MensagemMessage" + txtNome) onde txtNome é o string com o nome da variável comandada.

    Criação dos Alarmes

    A criação de alarmes, a partir da Aplicação Default, exige que se crie na tabela de Itens de Alarmes uma entrada (Linha) para cada comportamento que deve ser sinalizado. A tabela abaixo mostra o número de entradas que serão criadas em função da situação:

    DESCRIÇÃO

    LINHAS

    CONDITION

    GROUPS

    OBSERVAÇÕES

    Sinalizar qualquer mudança

    txtName) where txtName is the string with the name of the commanded variable.

    Creation of Alarms

    Creating alarms from the Default Application requires that an input (Line) be created in the Alarm Items table for each behavior that must be flagged. The table below shows the number of entries that will be created depending on the situation:

    DESCRIPTION

    LINES

    condition

    GROUPS

    OBSERVATIONS

    Flag any change

    1

    Changed

    EVENTOS_BIP


    Sinalizar diferentemente Flag differently 0/1
    (0)

    2

    Equal 0

    NOACK_BIP


    Sinalizar diferentemente Flag differently 0/1
    (1)

    2

    Equal 1

    NOACK_BIP


    Analógica com Analogue with 1 Limite Limit
    (anormalabnormal)

    1

    HI / LO

    HI_NOACK_BIP ou or
    LO_NOAC K_BIP

    Quando When normal – Hora - Time
    NormalizaçãoNormalization

    Analógica com Analog with 2 Limite Limit (HI)

    2

    HI

    HI_NOACK_BIP

    Quando When normal – Hora - Time
    NormalizaçãoNormalization

    Analógica com Analog with 2 Limite Limit
    (LOW)

    2

    LOIT

    LO_NOACK_BIP

    Quando When normal – Hora - Time
    NormalizaçãoNormalization

    Analógica com Analogue with 4 LimitesLimits

    4

    HI

    HI_NOACK_BIP


    Analógica com Analogue with 4 LimitesLimits

    4

    LOIT

    LO_NOACK_BIP


    Analógica com Analogue with 4 LimitesLimits

    4

    HIHI

    HIHI_NOACK_BIP


    Analógica com Analogue with 4 LimitesLimits

    4

    LOLO

    LOLO_NOACK_BIP

    Observações:

    1. Pode-se colocar alarmes de Tags analógicos com dois limites superiores e 2 inferiores.

      • Quando um dos alarmes está atuado, os Tags são mantidos no Sumário de Alarmes e no de Eventos. Quando os Tags são normalizados, eles saem do Sumário de Alarmes e, no Sumário de Eventos é colocado o horário de sua normalização.

      • No ActionNET, quando da definição do Sumário de Alarmes, é selecionado o parâmetro "Merge Hi e HIHI" que mantém na lista o alarme de mais importância quando dois alarmes deste tipo estão atuados, isto é, se HIHI está atuado, a linha de HI é inibida e o mesmo ocorre com LO e LOLO.

    2. Há eventos que são armazenados no histórico sempre que ocorre uma mudança de valor. Estes eventos são usados em manobras de equipamentos tais como seccionadora, tap de transformador, etc.

    Em tempo de execução, o Sumário de Alarmes apresenta os alarmes que estão atuados no momento.
    Já o Sumário de Eventos tem os eventos apresentados em ordem cronológica Eventos analógicos tem seu horário de atuação e normalização sinalizados. Assim, quando um alarme analógico inicia, ele possui apenas o horário de atuação e quando ele encerra, possui os dois horários.

    Criação do Histórico de Medidas

    Conforme apresentado, na Aplicação Default existe uma tabela (Table1) que é gravada no mínimo a cada minuto e sempre que o tag for alterado. Abaixo é mostrada esta tabela preenchida com todas as variáveis analógicas do bay de linha 01.
    Image Removed
    Para cada Bay, deve ser repetido procedimento semelhante.

    Criação das Telas da Aplicação


    Conforme apresentado no capítulo referente a Aplicação Default, já existem nove telas onde oito já estão prontas, ver em "Telas DisponibilizadasObservations:

    1. You can place analog tag alarms with two upper and lower 2 limits.

      • When one of the alarms is active, tags are kept in alarm summary and events. When tags are normalized, they come out of the Alarm Summary, and in the Event Summary the time of their normalization is placed.

      • In ActionNET, when setting the Alarm Summary, the parameter "Merge Hi and HIHI" is selected, which keeps in the list the most important alarm when two alarms of this type are actuated, that is, if HIHI is actuated, the HI line is inhibited and the same occurs with LO and LOLO.

    2. There are events that are stored in the history whenever a value change occurs. These events are used in maneuvers of equipment such as sectioner, transformer tap, etc.

    At run time, the Alarm Summary displays the alarms that are currently active.
    The Event Summary has the events presented in chronological order Analog events have their time of operation and normalization signaled. Thus, when an analog alarm starts, it has only the time of operation and when it closes, it has both times.

    Creation of the Measure History

    As shown, in the Default Application there is a table (Table1) that is written at least every minute and whenever the tag is changed. Below is shown this table populated with all analog variables of line bay 01.
    Image Added
    For each Bay, a similar procedure should be repeated.

    Creation of Application Screens

    As presented in the chapter on the Default Application, there are already nine screens where eight are already ready, see in "Screens Available".

    Anchor
    _bookmark513
    _bookmark513
    Tela Principal Home Screen (AN_MainPage)Na tela principal foram colocadas informações da Linha 01, conforme mostra a figura abaixo:
    Image Removed
    As quatro retas e o texto Proteções são retângulos e TextOutput, respectivamente, que após serem criados foram agrupados, sem nenhum vínculo à tags;
    Image Removed Os valores das três variáveis analógicas a direita são TextBox associados aos tags das variáveis: potência ativa, reativa e tensão.
    As proteções são checkBox, sendo cada uma associada a um tag do bay de linha. Elas são tipo Output (Binding: Outputonly) o que quer dizer que o usuário nunca faz uma entrada no checkbox;
    Image Removed
    O desenho do bay de linha foi feito com objetos retângulos, círculos e polígonos (seta) que ao final foram agrupados tornando-se um único objeto:
    Image Removed

    Image Removed

    O disjuntor e a seccionadora são Símbolos criados para a aplicação. A seccionadora apresenta a figura de fechado (retângulo vermelho), aberto (reta verde inclinada) e inválido (# assume letra ?).

    Image Removed

    O disjuntor fica vermelho quando fechado, verde quando aberto e com a bandeirola vermelha ao lado quando impedido. Um clique tanto sobre o disjuntor como a seccionadora abre a tela de comando:
    A bandeirola do símbolo DISJ só é visível quando o tag do disjuntor está Disable, conforme mostra a dinâmica abaixo:
    Image Removed
    O Disjuntor é um botão com quatro dinâmicas: Um clique sobre ele faz duas ações:

    Faz que a variável global AN_DISJ_SELECTED seja o disjuntor selecionado

    On the main screen, information from Line 01 was placed, as shown in the figure below:
    Image Added
    The four lines and the text Protections are rectangles and TextOutput, respectively, which after being created were grouped, with no link to the tags;
    Image Added The values of the three analog variables on the right are TextBox associated with the variable tags: active power, reactive power, and voltage.
    The protections are checkBox, each of which is associated with a line bay tag. They are type Output (Binding: Outputonly) which means that the user never makes an entry in the checkbox;
    Image Added
    The line bay drawing was made with rectangle objects, circles, and polygons (arrow) that at the end were grouped together becoming a single object:
    Image Added

    Image Added

    The circuit breaker and disconnector are symbols created for the application. The sectioner shows the figure of closed (red rectangle), open (slanted green straight) and invalid (# assumes letter ?).

    Image Added

    The circuit breaker turns red when closed, green when opened and with the red band on the side when prevented. A click on both the circuit breaker and the disconnector opens the command screen:
    The disj symbol band is only visible when the circuit breaker tag is Disable, as shown in the dynamics below:
    Image Added
    The Circuit Breaker is a button with four dynamics: One click on it does two actions:

    • Makes the global variable AN_DISJ_SELECTED the circuit breaker selected:

    Tag.AN_DISJ_SELECTED. Link=#TagDJ:(Tag.SEL_LINHA_01.CB. DJ). GetName( )

    • Chama a janela de comandoCalls the command window:

    Display.AN_Command.Open()

    • O mouse sobre o objeto aumenta seu tamanho de 20% e sua opacidade é The mouse over the object increases its size by 20% and its opacity is 0%.

    • Quando a variável é When the variable is "0", a cor é verde e quando é the color is green and when it is "1" a cor é vermelhathe color is red:

    • O The "X" são duas linhas agrupadas e possuem uma dinâmica que é só aparecer quando a qualidade do tag é diferente de are two rows grouped and have a dynamic that is only appear when the quality of the tag is different from 192 (192 = qualidade OK quality).

    Image RemovedImage Added

    Anchor
    Janela_de_Comando_(AN_Command)
    Janela_de_Comando_(AN_Command)

    Janela de Comando

    Command Window (AN_Command)

    Nesta janela existem três TextOutputs com os textos:

    • Estado

    • Condição

    • Comando Alarme

    Os botões de ligar e desligar possuem a dinâmica de Mouse clique (MouseLeftButtonDown) associadas aos Scripts MouseLeftButtonDown1 e MouseLeftButtonDown2, respectivamente, que enviam o comando de Ligar e Desligar para o campoIn this window there are three TextOutputs with the texts:

    • State

    • Condition

    • Alarm Command

    The on and off buttons have mouse click dynamics associated with mouseleftbuttondown1 and mouseleftbuttondown2 scripts, respectively, which send the On and Off command to the field:

    Anchor
    Utilizando_ferramentas_de_diagnose
    Utilizando_ferramentas_de_diagnose
    Anchor
    _bookmark515
    _bookmark515

    Panel

    Nesta paginaOn this page:

    Table of Contents
    maxLevel2