Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Por exemplo para criar um símbolo para o objeto Disjuntor:
Sobre a aplicação Default, é criado um objeto retângulo, no formato de um disjuntor. Um duplo clique sobre este objeto abre a janela de dinâmicas para configuração.
Selecionamos a dinâmica
Tip |
---|
Usando as ferramentas de desenvolvimento gráfico pode-se criar novos símbolos para utilizar em projetos próprios. Pode-se organizar para uso próprio uma biblioteca de símbolos que serão reusados em diversa telas nos projetos da empresa. A biblioteca básica nativa já vem com um conjunto de símbolos tais como Chaves, Tanques, Medidores e Bombas, Botões, Gauges, Sliders e outros. |
Organizando a Biblioteca de símbolos
Novos objetos podem ser agrupamentos de objetos existentes com todas as dinâmicas associadas.
Abaixo, a título de exemplo, é mostrado o objeto Fan representando uma eólica. Este objeto é desagrupado e após reagrupado adicionando-se ao existente um tacômetro e um valor indicando a velocidade em RPM. Observar que na dinâmica da hélice, está selecionado rodá-la quando um valor for maior que 1 (ligado).
Cada símbolo deve ter um nome que o identifica, uma categoria que o agrupa entre seus semelhantes e uma descrição que auxilia no seu uso por técnicos que deverão configurar as telas do SCADA.
No caso de uma empresa integradora que trabalhe com diversas concessionárias de energia, uma possibilidade de organização é agrupar todos os objetos (disjuntores, seccionadores, medidas analógicas, etc.) associados à cultura da concessionária a uma categoria, como o exemplo CEB_SIMBOLOS (Concessionária de distribuição de Brasília).
Um objeto disjuntor terá, por exemplo, as seguintes dinâmicas:
Quando o mouse passa sobre ele, ele aumentará de tamanho;
Ele será um quadrado com quatro cores distintas em função de estar: Bloqueado (0), Aberto (1), Fechado (2) e Indefinido (3);
Um duplo clique sobre ele deverá abrir uma janela de comando que permitirá ligá- lo, desligá-lo, impedi-lo ou desativá-lo.
Criando um Símbolo (Disjuntor)
Using the graphical development tools you can create new symbols to use in your own projects. You can organize for your own use a library of symbols that will be reused on several screens in the company's projects. The native basic library already comes with a set of symbols such as Keys, Tanks, Gauges and Bombs, Buttons, Gauges, Sliders and others. |
Organizing the Symbol Library
New objects can be clusters of existing objects with all associated dynamics.
Below, for example, the object is shown Fan representing a wind turbine. This object is ungrouped and then regrouped by adding to the existing tachometer and a value indicating the speed in RPM. Note that in the dynamics of the propeller, it is selected to rotate it when a value is greater than 1 (on).
Symbols are complex objects created using the screen editing tools of the Action.NET. Thus, for example, a circuit breaker object must be a figure with all the properties and methods associated with a circuit breaker on a screen of a unifilar.
Each symbol must have a name that identifies it, a category that groups it among its peers, and a description that assists in its use by technicians who must configure the SCADA screens.
In the case of an integrating company that works with several energy concessionaires, one possibility of organization is to group all the objects (circuit breakers, sectioners, analog measures, etc.) associated with the concessionaire's culture into a category, such as the example CEB_SIMBOLOS (Brasilia Distribution Concessionaire).
A circuit breaker object will have, for example, the following dynamics:
When the mouse hovers over it, it will increase in size;
It will be a square with four distinct colors as a function of being: Locked (0), Open (1), Closed (2) and Undefined (3);
A double click on it should open a command window that will allow you to turn it on, turn it off, stop it, or disable it.
Creating a Symbol (Breaker)
Image AddedFor example, to create a symbol for the Breaker object:
About the Default application, a rectangle object is created in the shape of a circuit breaker. A double click on this object opens the dynamics window for configuration.
We select the dynamics
Action and assign the following actions:
Tag.AN_AnalogInt_SELECTED. Link = #DISJ:(tag. AN_DEFAULT_AnalogInt). GetName()
A primeira ação será jogar o link (reference) da variável associada ao Label #DISJ na variável à esquerdaThe first action will be to play the reference link of the variable associated with label #DISJ the variable on the left: AN_AnalogInt_SELECTED. Na construção do símbolo usamos uma variável In the construction of the symbol we use a variable Dummy (AN_DEFAULT_AnalogInt ) que durante o projeto das telas deverá ser substituída pala variável que descreve o estado do disjuntorthat during the design of the screens should be replaced variable pala that describes the state of the circuit breaker.
Display.AN_Command.Open(): A segunda ação será chamar a janela AN_Command que deverá ter como parâmetro de entrada a variável The second action will be to call the AN_Command which should have as input parameter the variable globalTag.AN_AnalogInt_SELECTED , já que na primeira linha da dinâmica ponteiro desta variável aponta para a variável dummy que representa o estado do disjuntor.
Abaixo é apresentada a dinâmica ação completa:
A segunda dinâmica será a FillColor e usaremos o valor da variável associada since in the first line of the dynamic pointer of this variable points to the dummy variable that represents the state of the circuit breaker.
Below is the dynamic share Complete:
The second dynamic will be fillcolor and we will use the value of the associated variable (tag. AN_DEFAULT_AnalogInt). Value para atribuir as cores to assign colors (0) BrancoWhite, (1) VerdeGreen, (2) Vermelho e Red, and (3) AmareloYellow.
A última dinâmica associada a este objeto retângulo será Shine que fará que o objeto aumente em 20% (1,2) quando o mouse passar sobre ele.
Outra ação implementada será colocar um "X" sobre o objeto caso não exista comunicação com o campo. Para isso, cria-se uma figura "X" ( Duas retas
agrupadas) e define-se que ele será invisível quando a qualidade tag for diferente de 192 (qualidade ok).
Finalmente, coloca-se um objeto sobre o outro, agrupa-se, e cria-se o símbolo disjuntor.
Janela de Comando do Disjuntor
A janela de comando do disjuntor é apresentada abaixo. Ela manipula a variável globalThe last dynamic associated with this rectangle object will be Shine that will cause the object to increase by 20% (1.2) when the mouse hovers over it.
Another implemented action will be to place an "X" on the object if there is no communication with the field. To do this, a figure "X" is created ( Two straight
and it is defined that it will be invisible when the tag quality is different from 192 (ok quality).
Finally, one object is placed on the other, grouped, and creates the breaker symbol.
Circuit Breaker Control Window
The circuit breaker control window is shown below. It handles the global variable:
AN_AnalogInt_SELECTED e possui os cabeçalhos localizáveisand has the localizable headers:
Tag: apresenta o nome da variável associada ao disjuntorDisplays the name of the variable associated with the circuit breaker:
Tag.AN_AnalogInt_SELECTED. GetName()
Estado: apresenta o estado na variável associada ao disjuntorState: Displays the state in the variable associated with the circuit breaker:
Tag.AN_AnalogInt_SELECTED. ValueAsString
Comando: Indica se o comando está ou não impedido (no caso apenas a Command: Indicates whether or not the command is impeded (in this case only the check-box)
SinalizaçãoSignaling: também also check-box de estadosof states;
Além destes parâmetros de In addition to these parameters of "labels" existem três botões, onde a cada botão está associada uma dinâmica:
Desligarthere are three buttons, where each button is associated with a dynamic:
Turn off: Tag.AN_AnalogInt_SELECTED. Value = 1
LigarCall: Tag.AN_AnalogInt_SELECTED. Value = 1
SairExit: Ação CloseDisplay action.
Creating a Unifilar with Breaker Symbols
In the following figure, a unifilar with one bar and six DISJ symbols was created. For each symbol, as can be seen in the figure, the variable Tag.AN.DEFAULT.AnalogInt por uma variável associada a um disjuntor.
O comando ligar / desligar muda o valor do Tag (1=desligar / 2=Ligar) e sua figura associada.
Da mesma forma como se criou este objeto disjuntor, pode-se criar todos os objetos associados à cultura do cliente.
Operações Usuais na Criação de novos Símbolos
É comum ao se gerar novos itens na biblioteca de Símbolos (Symbols):
Associar Labels a variáveis do tipo dummywas replaced with a variable associated with a circuit breaker.
The on/off command changes the tag value (1=off / 2=On) and its associated figure.
Just as this circuit breaker object was created, you can create all the objects associated with the client culture.
Operations in Creating New Symbols
It is common when generating new items in the Symbols library:
Associate Labels with dummy variables:
#LAB1:(Tag.AN_AnalogInt_Selected)
Usar Tags tipo reference para apontar para as variáveis dummy como emUse reference type tags to point to dummy variables as in:
[Tag.AN_AnalogInt_Selected.Link =#LAB1:(Tag.AN.Default.AnalogInt). GetName()]
Fazer todas as operações com a variável reference, após fazer seu apontamento
Para criar uma variável dummy que assumirá o papel de uma variável de uma rotina associada a um símbolo, por exemplo: Disjuntor, crie uma variável dummy do mesmo tipo da variável que contém o estado do disjuntor e crie uma variável do tipo reference.
Por exemplo, se temos um disjuntor que é um AnalogInt, criamos uma variável dummy do mesmo tipo como, por exemplo, Do all operations with the reference variable, after making your note
To create a dummy variable that will assume the role of a variable from a routine associated with a symbol, for example: Circuit breaker, create a dummy variable of the same variable type that contains the breaker state and create a reference type variable.
For example, if we have a circuit breaker that is an AnalogInt, we create a dummy variable of the same type, such as Tag.AN.Default.AnalogInt e criamos uma variável global do tipo reference como, por exemplo, , and create a global variable of the reference type, such as tag. AN_AnalogInt_Selected.
Depois de apontar a variável tipo Reference para o disjuntorAfter pointing the reference variable to the circuit breaker: [Tag.AN_AnalogInt_Selected.Link
=#LAB1:(Tag. ANAn. Default.AnalogInt). GetName()], os seguintes atributos poderão ser usados:
the following attributes can be used:
Circuit breaker state: (Tag.AN_AnalogInt_Selected).value (0=bloqueadolocked, 1=abertoopen, 2=fechadoclosed, 3=IndefinidoUndefined);
Qualidade da leitura do estado do disjuntorCircuit breaker status reading quality: (Tag.AN_AnalogInt_Selected).quality
Descrição do disjuntorCircuit breaker description: (Tag.AN_AnalogInt_Selected).description
Disjuntor Inibido (alarme desabilitadoInhibited circuit breaker (alarm disabled): (Tag.AN_AnalogInt_Selected). AlarmDisable = 1
Disjuntor SimuladoSimulated circuit breaker: (Tag.AN_AnalogInt_Selected).locked = 1
Disjuntor alterou o valorCircuit breaker changed the value: (Tag.AN_AnalogInt_Selected).changedEstado
do disjuntor em textoState of the circuit breaker in text: (Tag.AN_AnalogInt_Selected). ValueAsString – Neste caso deve existir um dicionário associado;String com Tag do disjuntor- In this case there must be an associated dictionary;
String with breaker tags: (Tag.AN_AnalogInt_Selected). GetName()
Panel | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Table of Contents | maxLevel | 2|||||||||||||||
Scroll ignore | ||||||||||||||||
| ||||||||||||||||
On this page: |