XObject
XObjects são bibliotecas de dados que permitem configurar uma estrutura de dados a ser executada no servidor. Essa estrutura pode realizar cálculos, associações, comunicações, verificação de alarmes, registro histórico, e mais.
Para inserir um novo XObject na Biblioteca, siga estes passos:
- Clique com o botão direito do mouse em XObjects, selecione a opção Inserir XObject em e clique no arquivo de Biblioteca.
Figura 1
- Altere o nome de
XObject1
para o nome que desejar.
Ao inserir um XObject, há duas abas na parte inferior da tela, Propriedades e Scripts. Como o XObject é uma estrutura de dados, e não um objeto visual, não há uma aba Design.
Em um XObject, é possível inserir XProperties e qualquer módulo do E3 que seja executado no servidor:
Figura 2
Desenvolvimento de XObjects
Como já temos um arquivo de Biblioteca, podemos criar XObjects.
TagMotor
Como exemplo, vamos desenvolver uma aplicação que monitora o estado de manutenção, defeito e a velocidade de cada motor. Além disso, caso o motor esteja com defeito, um alarme deve ser disparado.
- Insira um novo XObject chamado
TagMotor
. - Na aba Propriedades, crie três propriedades:
Figura 3
- Insira um objeto Configuração de Alarmes no XObject.
Figura 4
- No objeto Configuração de Alarmes, crie uma Área chamada
Motor
. - Na Área
Motor
, insira um Alarme Digital chamadoAlarmeDefeito
para monitorar a propriedade Defeito do XObject.
Figura 5
- Clique com o botão direito do mouse sobre o objeto
AlarmeDefeito
para acessar suas propriedades, e escolha uma mensagem para o alarme.
Figura 6
- Salve e registre a Biblioteca.
Utilizando um XObject
Siga os procedimentos abaixo para utilizar o XObject:
- No servidor de Dados, insira três objetos do tipo TagMotor,
Motor1
,Motor2
eMotor3
.
Figura 7
- Na
TelaInicial
, crie três botões do tipo ToggleButton,Motor1
,Motor2
eMotor3
. - Crie uma Associação Bidirecional entre a propriedade Value de cada botão com a propriedade Defeito do seu respectivo motor.
Figura 8
- Ao lado de cada botão do motor, insira um Display para visualizar o RPM. Faça uma associação com a propriedade RPM do respectivo
TagMotor
. - Para visualizar os alarmes, insira um objeto E3Alarm na Tela.
- No E3Alarm, configure a propriedade Nome do Servidor de Alarmes. Caso não haja nenhum servidor disponível, insira um Servidor de Alarmes no seu Domínio.
Figura 9
- Execute a aplicação.
Recebendo valores
O XObject é uma estrutura de dados com diversas propriedades. Essas propriedades podem receber valores de outros objetos através de associações ou scripts.
- No objeto Dados do Servidor de Dados, crie três Tags Demo chamados
RPM1
,RPM2
eRPM3
do tipo Aleatório (random).
Figura 10
- Crie uma Associação Simples entre a propriedade RPM de cada objeto TagMotor (
Motor1
,Motor2
eMotor3
) com o respectivo Tag Demo.
Figura 11
- Execute a aplicação.
Exercícios
Tempo de Manutenção
Agora, vamos criar um objeto que dispara um alarme se o equipamento estiver ligado há mais tempo do que o recomendado.
- Crie um XObject chamado
TempoManutencao
. - Na aba Propriedades, crie as seguintes propriedades:
Figura 12
- No XObject
TempoManutencao
, insira um Servidor de Dados chamadoDados
.
Figura 13
- Na pasta Dados, insira um Tag Contador chamado
Contador
.
Figura 14
- Altere a propriedade CounterType do
Contador
para 1 – Infinite. - Crie uma associação no Tag Contador para que seu valor seja enviado para a propriedade TempoLigado.
- A propriedade de habilitar ou desabilitar (Enabled) do Tag Contador deve estar associada à propriedade Ligado do XObject.
- Insira um objeto Configuração de Alarmes no XObject.
- Crie uma Área com um Alarme Digital para TempoLigado – TempoMaximo.
- Salve e registre a Biblioteca.
- Insira três objetos TempoManutencao na pasta Dados,
Tempo1
,Tempo2
eTempo3
. - Insira na Tela um botão do tipo ToggleButton, um Display e um SetPoint. O botão deve estar associado à propriedade Ligado, o Display à propriedade TempoLigado e o SetPoint à propriedade TempoMaximo de um objeto TempoManutencao.
Figura 15
- Para visualizar os alarmes, insira na Tela um objeto E3Alarm e verifique se há um objeto Servidor de Alarmes no Domínio (crie um se não houver).
- Execute a aplicação e teste as funcionalidades.
TagValvula
Vamos criar um objeto que salva um histórico dos estados defeito, aberto ou fechado de todas as válvulas no banco de dados.
- Crie um XObject chamado
TagValvula
. - Na aba Propriedades, crie as seguintes propriedades:
Figura 16
- Faça as seguintes configurações:
- Quando a propriedade Aberta for verdadeira, a propriedade Texto deve ser “
NomeValvula
aberta”, e quando a propriedade for falsa a propriedade Texto deve ser “NomeValvula
fechada”. - Quando a propriedade Defeito for verdadeira, a propriedade Texto deve ser “
NomeValvula
com defeito”, e quando a propriedade for falsa a propriedade Texto deve ser “NomeValvula
operando normalmente”.
- Para salvar o texto no banco de dados, insira um objeto Histórico no XObject
TagValvula
. - No Histórico, insira um campo chamado Mensagem para armazenar a propriedade Texto do
TagValvula
. - O Histórico deve gerar a tabela Valvula e gravar um novo registro sempre que o texto for alterado.
- Salve e registre a Biblioteca.
- Insira dois objetos TagValvula na pasta Dados,
Valvula1
eValvula2
. - Na Tela, insira dois botões do tipo ToggleButton e um Display. Um botão deve estar associado à propriedade Aberta, outro à propriedade Defeito e o Display à propriedade Texto de um objeto TagValvula. Faça isso para os dois objetos inseridos.
- Execute a aplicação e teste as funcionalidades.
Artigos Relacionados
- Usando Bibliotecas no Elipse E3: Introdução.
- Usando Bibliotecas no Elipse E3: Lição 1.
- Usando Bibliotecas no Elipse E3: Lição 2.
- Usando Bibliotecas no Elipse E3: Lição 4.
- Usando Bibliotecas no Elipse E3: Lição 5.
- Usando Bibliotecas no Elipse E3: Lição 6.
- Usando Bibliotecas no Elipse E3: Lição 7.
- Usando Bibliotecas no Elipse E3: Lição 8.