Tutorial E3
Tutorial E3
© 2013 Elipse Software Ltda. Todos os direitos reservados. Versão 4.5 (19/06/2013)
Sumário
1 Apresentação
............................................................................................................... 7
1.1 A Elipse
............................................................................................................... 7
1.2 Módulos...............................................................................................................
do E3 7
1.3 O Treinamento
............................................................................................................... 7
2 Elipse Knowledgebase
............................................................................................................... 11
2.1 Elipse
...............................................................................................................
Knowledgebase 11
2.2 Busca...............................................................................................................
no Knowledgebase 11
2.3 Categorias
............................................................................................................... 12
2.4 Anotações
............................................................................................................... 14
3 Fórum Online
............................................................................................................... 15
4 Iniciando...............................................................................................................
a Aplicação 17
4.1 Criando
...............................................................................................................
a Aplicação 17
4.2 Execução
...............................................................................................................
de um Domínio 20
4.3 Exercícios
............................................................................................................... 20
4.4 Exercícios
...............................................................................................................
Complementares 22
4.5 Anotações
............................................................................................................... 23
5 Servidor...............................................................................................................
de Dados 24
5.1 Regras
...............................................................................................................
para Nomes de Tags 24
5.2 Exercícios
............................................................................................................... 24
5.3 Anotações
............................................................................................................... 27
6 Telas e Quadros
............................................................................................................... 28
6.1 Tela............................................................................................................... 28
6.2 Quadros
............................................................................................................... 29
6.3 Viewer
............................................................................................................... 30
6.4 Exercícios
............................................................................................................... 31
6.5 Anotações
............................................................................................................... 34
7 Objetos ...............................................................................................................
de Tela 35
7.1 Controles
...............................................................................................................
Microsoft Forms 35
7.2 Galeria
............................................................................................................... 35
7.3 Exercícios
............................................................................................................... 36
7.4 Exercícios
...............................................................................................................
Complementares 39
7.5 Anotações
............................................................................................................... 40
8 Associações
............................................................................................................... 41
8.1 Tipos...............................................................................................................
de Associação 41
8.2 Edição
...............................................................................................................
de Associações 45
8.3 Valores
...............................................................................................................
Booleanos 45
8.4 Exercícios
............................................................................................................... 46
8.5 Anotações
............................................................................................................... 50
9 Comunicação
............................................................................................................... 51
9.1 Driver
...............................................................................................................
de Comunicação 51
9.2 Driver
...............................................................................................................
de Comunicação OPC 54
9.3 Exercícios
...............................................................................................................
Complementares 57
9.4 Anotações
............................................................................................................... 58
10 Scripts............................................................................................................... 59
10.1 Definindo
...............................................................................................................
Scripts 59
10.2 Eventos
............................................................................................................... 63
10.3 Métodos
............................................................................................................... 64
10.4 Propriedades
............................................................................................................... 65
10.5 Exercícios
............................................................................................................... 65
10.6 Exercícios
...............................................................................................................
Complementares 66
10.7 Anotações
............................................................................................................... 67
11 Segurança
............................................................................................................... 68
11.1 Usuários
............................................................................................................... 68
11.2 Grupos
............................................................................................................... 68
11.3 Permissões
............................................................................................................... 69
11.4 Proteção
............................................................................................................... 70
11.5 Exercícios
............................................................................................................... 71
11.6 Exercícios
...............................................................................................................
Complementares 72
11.7 Anotações
............................................................................................................... 73
12 Bibliotecas
...............................................................................................................
ElipseX 74
12.1 Criação
...............................................................................................................
de Bibliotecas do Usuário 74
12.2 Quando
...............................................................................................................
Criar um ElipseX 77
12.3 Exercícios
............................................................................................................... 77
12.4 Exercícios
...............................................................................................................
Complementares 82
12.5 Anotações
............................................................................................................... 84
13 Banco de...............................................................................................................
Dados 85
13.1 Exercícios
............................................................................................................... 85
13.2 Exercícios
...............................................................................................................
Complementares 85
13.3 Anotações
............................................................................................................... 87
14 Alarmes ............................................................................................................... 88
14.1 Servidor
...............................................................................................................
de Alarmes 88
14.2 Configuração
...............................................................................................................
de Alarmes 88
14.3 E3Alarm
............................................................................................................... 90
14.4 Exercícios
............................................................................................................... 91
14.5 Exercícios
...............................................................................................................
Complementares 96
14.6 Anotações
............................................................................................................... 97
15 Consultas
............................................................................................................... 98
15.1 Criando
...............................................................................................................
uma Consulta 98
15.2 E3Browser
............................................................................................................... 99
15.3 Exercícios
............................................................................................................... 100
15.4 Exercícios
...............................................................................................................
Complementares 104
15.5 Anotações
............................................................................................................... 105
16 Históricos
............................................................................................................... 106
16.1 Chave
...............................................................................................................
Primária 106
16.2 Índices
............................................................................................................... 106
16.3 Exercícios
............................................................................................................... 107
16.4 Exercícios
...............................................................................................................
Complementares 108
16.5 Anotações
............................................................................................................... 109
17 E3Chart
............................................................................................................... 110
17.1 Configurações
...............................................................................................................
das Penas 110
17.2 Exercícios
............................................................................................................... 111
17.3 Exercícios
...............................................................................................................
Complementares 114
17.4 Anotações
............................................................................................................... 115
18 Relatórios
............................................................................................................... 116
18.1 Objetos
...............................................................................................................
do Relatório 117
18.2 Exercícios
............................................................................................................... 118
18.3 Anotações
............................................................................................................... 123
19 Fórmulas
............................................................................................................... 124
19.1 Exercícios
............................................................................................................... 124
19.2 Exercícios
...............................................................................................................
Complementares 126
19.3 Anotações
............................................................................................................... 128
20 Storage
............................................................................................................... 129
20.1 Funcionamento
............................................................................................................... 129
20.2 Configuração
............................................................................................................... 129
20.3 Consultas
...............................................................................................................
Internas 129
20.4 Exercícios
...............................................................................................................
Complementares 131
20.5 Anotações
............................................................................................................... 132
21 E3Playback
............................................................................................................... 133
21.1 Interface
...............................................................................................................
de Usuário do E3Playback 133
21.2 Restrições
...............................................................................................................
e Comentários 134
21.3 Licenciamento
............................................................................................................... 135
21.4 Exercícios
............................................................................................................... 135
21.5 Exercícios
...............................................................................................................
Complementares 136
21.6 Anotações
............................................................................................................... 137
22 Hot-Standby
............................................................................................................... 138
22.1 Configurações
...............................................................................................................
do Hot-Standby 138
22.2 Exercícios
...............................................................................................................
Complementares 141
22.3 Anotações
............................................................................................................... 142
23 Domínios
...............................................................................................................
Remotos 143
23.1 Configuração
...............................................................................................................
no Studio 143
23.2 Compartilhamento
...............................................................................................................
da Pasta do Domínio Servidor 143
23.3 Licenças
............................................................................................................... 147
23.4 Sintaxe
...............................................................................................................
dos Links 147
23.5 Alias
...............................................................................................................
Local 147
23.6 Permissões
...............................................................................................................
de Acesso 148
23.7 Exercícios
...............................................................................................................
Complementares 148
23.8 Anotações
............................................................................................................... 149
24 Exercícios
...............................................................................................................
de Revisão 150
24.1 Exercício
............................................................................................................... 150
24.2 Resolução
............................................................................................................... 152
24.3 Anotações
............................................................................................................... 157
CAPÍTULO
1 Apresentação
Este tutorial serve como apoio ao módulo de treinamento para execução e programação do E3. Com ele, você acompanhará o
conteúdo do curso. Durante as aulas, fique à vontade para praticar o que você aprendeu e para resolver suas dúvidas com o
instrutor. No treinamento, é apresentado um estudo de caso que simula uma aplicação real, um sistema de supervisão e
controle.
1.1 A Elipse
A Elipse Software é uma empresa genuinamente brasileira, com foco na produção de software de supervisão para automação
industrial, surgida em Porto Alegre no início dos anos 90.
Seu primeiro produto foi o Elipse 21, um software para a plataforma DOS, que era conhecido por sua facilidade de operação e
compatibilidade com diferentes fabricantes.
Em 1996, a Elipse lançou a primeira versão do Elipse Windows, que mais tarde se tornaria o Elipse SCADA. Desde essa época,
foram instaladas cerca de 3.500 cópias desse software no Brasil.
Em 2000, a Elipse iniciou o desenvolvimento do E3, a terceira geração de software de supervisão da empresa. Desde seu
lançamento comercial em 2001, cerca de 500 licenças desse software já foram instaladas e o E3 vem sendo utilizado em
sistemas diversos, como Centros de Operação de empresas elétricas, plantas industriais de diversas finalidades, sistemas de
telemedição e controle de energia, automação e controle predial, mineração, entre outros.
A Elipse Software trabalha em parceria com distribuidores internacionais localizados em países estratégicos como Alemanha,
Holanda, Taiwan, Índia, Canadá e outros, além de manter escritório próprio nos Estados Unidos, na cidade de Avon, Carolina do
Norte.
1.2 Módulos do E3
Inicialmente, será visto que o E3 é composto de quatro módulos, descritos a seguir.
1.2.1 E3 Server
É o Servidor de Aplicações, onde os principais processos são executados, incluindo a comunicação em tempo real com os
equipamentos de controle. O servidor também é responsável por enviar dados e Telas aos clientes conectados em qualquer
parte da rede (Intranet e Internet). O Servidor pode executar vários projetos ao mesmo tempo e conversar com outros E3
Servers para realizar um failover (standby) ou distribuir cargas de processamento entre as máquinas. Foi desenvolvido para ser
executado sobre os sistemas operacionais Windows XP SP3, XP x64 SP2, Server 2003 SP2, Vista SP2, Server 2008 SP2, Server
2008 R2 SP1 e Windows 7 SP1.
1.2.2 E3 Studio
Ferramenta única de configuração, agindo como plataforma universal de desenvolvimento, que possui um ambiente moderno e
amigável, incluindo um completo editor gráfico e de scripts (VBScript). Permite que um projeto seja editado por várias pessoas
ao mesmo tempo ou que vários E3 Studios estejam conectados ao mesmo servidor remoto, com múltiplas configurações.
1.2.3 E3 Viewer
O Viewer permite operar as aplicações residentes no servidor em qualquer computador com o programa executável Viewer
(Windows XP, 2003, Vista e Windows 7) ou com um navegador de Internet. Em ambos os casos, não é necessário instalar a
aplicação na máquina cliente, pois todos os componentes (Telas, Bibliotecas, controles ActiveX) serão baixados e registrados
automaticamente.
1.2.4 E3 Admin
É o módulo responsável pela interface do E3 Server e de outros módulos do E3 com o usuário. Através dele o usuário pode
enviar comandos ao E3 Server, utilizando o ícone na Área de Notificação da Barra de Tarefas do Windows, e controlar o Domínio
pela linha de comando.
1.3 O Treinamento
A sequência de aprendizado a ser seguida neste tutorial reflete o que a Elipse Software considera o conjunto de melhores
práticas no desenvolvimento de aplicativos de supervisão e controle, tanto para o E3 (o objeto de estudo deste Tutorial) quanto
para o Elipse SCADA ou outros softwares de supervisão.
A base do roteiro desse manual é uma aplicação hipotética, que apresenta os recursos mais importantes do software Elipse E3.
Apresentação 7
Essa aplicação não cobre todas as possibilidades de desenvolvimento oferecidas pela ferramenta. No entanto, a quantidade e
qualidade das informações apresentadas neste primeiro contato com o software são suficientes para que você aprenda a utilizá-
lo com autonomia para criar suas próprias aplicações.
A sequência do treinamento é a seguinte:
Apresentação da ferramenta
Telas e Objetos de Tela: como criar interfaces gráficas para suas aplicações
Uso de Associações: um modo fácil e efetivo de mostrar informações ou criar animações em Telas
Comunicação de dados: uso de Drivers e uso de OPC
Uso de Bibliotecas ElipseX: poderosa ferramenta de bibliotecas funcionais disponível apenas no E3
Integração com Bancos de Dados: uso de funções e ferramentas para acesso e consulta a Bancos de Dados, com foco em
processos
Alarmes: uso e controle de Alarmes no E3
Relatórios: poderosa ferramenta incorporada ao E3. Traz facilidade e grande quantidade de recursos para a criação de
relatórios
Recursos Avançados: redundância, acesso ao aplicativo através de browser, configurações de segurança de usuários, entre
outros
Sua participação é muito importante para nós. Ao final do treinamento, será solicitado que você avalie diversos aspectos do
curso, como a qualidade e a quantidade das informações transmitidas em aula e pelo tutorial, além do trabalho do instrutor e a
qualidade das instalações. Qualquer sugestão ou crítica é bem-vinda pela equipe de desenvolvimento desse tutorial.
A Elipse Software deseja a você um ótimo treinamento, e uma boa experiência de trabalho com o Elipse E3!
8 Apresentação
servidor de backup entra em ação imediatamente, sem perda da continuidade do processo.
Menu da aplicação
O sistema também mostrará condições de alarme no caso de algum parâmetro ultrapassar os limites estabelecidos (como por
exemplo, um aumento excessivo de temperatura).
Alarmes
Existirá um procedimento de consulta dos alarmes, que permite visualização e impressão dos dados de históricos.
Apresentação 9
Gráfico de Tendência
Finalmente, acessaremos informações de outro servidor E3 através de Domínios Remotos.
Domínio Remoto
10 Apresentação
CAPÍTULO
2 Elipse Knowledgebase
O Elipse Knowledgebase tem como finalidade ajudar o usuário dos softwares da Elipse a encontrar respostas rápidas para
dúvidas ou problemas que esteja enfrentando durante a sua utilização. Seja no desenvolvimento de aplicações ou depois de tê-
las prontas. Este espaço nada mais é do que um portal onde muitas informações técnicas e dicas estão concentradas. A sua base
de informações é constantemente atualizada e tem uma linguagem simples que visa o rápido entendimento de quem está
utilizando.
Após acessar o endereço kb.elipse.com.br, você estará na página inicial.
Página inicial do KB
Busca no KB
Ainda existe a possibilidade de utilizar a Busca Avançada, que permite refinar a consulta. Basta acessar a opção Busca
Elipse Knowledgebase 11
Avançada.
Busca Avançada
Na opção Busca Avançada o usuário pode digitar a palavra ou palavras que deseja buscar, filtrar por categoria específica, autor
e ainda pela classificação do artigo. Isto é, se ele ajudou muito, apenas ajudou, não ajudou ou ajudou pouco.
2.3 Categorias
Existe a possibilidade de o usuário acessar todos os artigos escolhendo diretamente a categoria a que ele pertence. Para isto, no
campo Categorias, basta selecionar a categoria em que se deseja buscar os artigos e então clicar em Ir.
Escolha de categorias
Todos os artigos desta categoria serão retornados como resultado da busca. É importante ressaltar que toda a base de
conhecimento está dividida em duas categorias principais, Inglês e Português. Dentro delas existem as categorias Elipse E3,
Elipse SCADA, Elipse 21 DOS, Elipse Drivers OPC, Altus TCP/IP e Drivers. Dentro destas cinco categorias existem diversas outras,
cada uma delas tratando de um tema específico. Acessando os artigos pela categoria Português - Elipse E3 tem-se:
12 Elipse Knowledgebase
Categorias em português
Note que dentro de cada uma destas subcategorias aparece um número. Este número indica a quantidade de artigos existentes
dentro da categoria.
As demais seções existentes na página principal do Knowledgebase são:
Artigos Em Destaque: Mostra todos os artigos que estão classificados para aparecerem em destaque. Normalmente esta
seção é utilizada para ressaltar algum artigo que merece uma atenção especial por parte dos usuários dos softwares da Elipse
Artigos Mais Lidos: Mostra a lista dos 10 artigos mais lidos no Knowledgebase
Últimos Artigos Adicionados: Mostra a lista dos últimos 10 artigos que foram adicionados na base de dados do
Knowledgebase
Buscas Mais Utilizadas: Mostra as 10 palavras que mais foram utilizadas como busca pela ferramenta de busca do
Knowledgebase
Elipse Knowledgebase 13
2.4 Anotações
14 Elipse Knowledgebase
CAPÍTULO
3 Fórum Online
Durante o Treinamento E3 Online, o Fórum da Elipse pode ser usado como ferramenta de auxílio. O Fórum está disponível no
endereço http://forum.elipse.com.br. Dentre os diversos sub-fóruns, está disponível o Treinamento E3 Online.
Fórum Online 15
Fórum do Treinamento E3 Online
NOTAS:
Para postar perguntas e comentários no Fórum da Elipse é necessário realizar um cadastro, clicando em Registrar (Register) na página
principal.
Antes de criar um novo tópico no Fórum, verifique se o mesmo assunto já não foi abordado em outro tópico, devido a um treinamento
anterior.
16 Fórum Online
CAPÍTULO
4 Iniciando a Aplicação
Após instalar o software, você terá em sua máquina um grupo de programas chamado Elipse E3, com um ícone para acessar
o E3 Studio. Quando o E3 é iniciado, o sistema abre uma caixa de diálogo com algumas opções do projeto.
OPÇÃO DESCRIÇÃO
Iniciar o E3 Studio Inicia o E3 Studio, mas não abre nenhum Domínio.
Criar um Domínio novo Cria um novo Domínio através do Assistente de aplicações do E3.
Serão requisitados o nome e caminho do novo Domínio.
Abrir um Domínio existente Abre um Domínio existente dentre os últimos editados. Clicando em
Outros arquivos, pode-se localizar um Domínio em um diretório
específico.
Iniciando a Aplicação 17
Assistente de Aplicações
O E3 trabalha com três tipos de arquivos de projeto, descritos a seguir.
4.1.1 Projetos
Contêm definições de objetos, Tags, Telas e outros componentes de uma aplicação. Os arquivos .prj são criados através das
opções Aplicação Padrão e Aplicação em Branco. A primeira opção cria um projeto pré-configurado com alguns objetos básicos
e um assistente de criação de projeto, enquanto a segunda opção cria um projeto vazio a ser implementado pelo usuário.
4.1.2 Bibliotecas
Contêm definições de objetos criados pelo usuário (ElipseX) para serem utilizados em projetos. Essas bibliotecas podem ser
reutilizadas em diferentes projetos, mas mantém vínculos com a aplicação. Ou seja, se a biblioteca for alterada, todos os objetos
dessa biblioteca serão atualizados nos projetos automaticamente.
4.1.4 Organizer
O Organizer permite uma visão simples e organizada de toda a sua aplicação, ajudando na edição e configuração de todos os
objetos envolvidos no sistema através de uma árvore hierárquica de opções. Possui dois modos de visualização, Domínio e
Explorer.
18 Iniciando a Aplicação
Janela do Organizer em modo Domínio
O modo Domínio mostra apenas as informações dos objetos abertos pertencentes ao Domínio, organizadas em quatro grupos,
Configuração, Bibliotecas de Objetos, Visualização e Objetos de Servidor.
O modo Explorer mostra projetos e bibliotecas abertos no E3 Studio, pertencentes ou não ao Domínio. Os objetos são
mostrados no projeto ou biblioteca ao qual pertencem, ordenados alfabeticamente dentro de cada projeto ou biblioteca.
Iniciando a Aplicação 19
Lista de Propriedades
Executar aplicativo: Salva todas as configurações dos projetos e bibliotecas, inicia a execução do Domínio e executa o
Viewer
Rodar/Parar Domínio: Inicia ou para a execução do Domínio
Executar ou parar o E3 Viewer: Executa o Viewer ou para a sua execução
4.3 Exercícios
20 Iniciando a Aplicação
4.3.1 Domínio
1. Inicie o E3 Studio selecionando a opção Criar um Domínio novo. O Assistente de Aplicações será aberto.
Assistente de Aplicações
2. No Assistente de Aplicações, clique em Avançar, selecione a opção Aplicação Padrão e nomeie o projeto como
TreinamentoE3.
3. Ajuste o caminho da aplicação para C:\TreinamentoE3 e clique em Avançar.
4. Na próxima janela do assistente, selecione a opção Criar um novo Domínio e use o mesmo nome do projeto.
5. Escolha a resolução da tela.
Resolução do Viewer
Iniciando a Aplicação 21
6. Responda Não às perguntas sobre comunicação, banco de dados e alarmes.
7. Ao fim destes procedimentos, você terá acesso à área de trabalho do Studio.
4.4.1 KB
KB-28984: Tempo de execução utilizando apenas licença de Studio.
22 Iniciando a Aplicação
4.5 Anotações
Iniciando a Aplicação 23
CAPÍTULO
5 Servidor de Dados
O Servidor de Dados é o módulo responsável pela execução e gerenciamento de Tags e objetos que não estejam envolvidos
diretamente com a comunicação. Através do Servidor de Dados pode-se configurar Tags internos e Tags de simulação, além de
inserir XObjects, que são os objetos de dados das bibliotecas ElipseX (vistas mais adiante). Alguns dos objetos que podem ser
inseridos no Servidor de Dados são os seguintes:
Objetos que podem ser inseridos no Servidor de Dados
OBJETO DESCRIÇÃO
Tag Contador Objeto que faz a contagem de tempo (em segundos) até atingir um
valor pré-determinado, ou que faz uma certa contagem
indefinidamente.
Tag Demo Objeto que gera valores de acordo com a forma de onda. É utilizado
para simulação de valores. Permite gerar curvas definidas ou valores
aleatórios.
Tag Interno Objeto de propósito genérico, utilizado para guardar valores de
qualquer tipo, incluindo números, textos e outros objetos.
Objeto para contagem de tempo e programação de atividades.
Tag Timer
Estabelece horários, com repetições, para executar ações.
Pasta de Dados Define grupos e subdiretórios para a organização das informações.
Novas pastas podem ser inseridas dentro de outras, conforme a
necessidade.
NOTA: Os objetos inseridos no Servidor de Dados serão executados pelo E3 Server, portanto estarão presentes no Servidor. Esta informação
retrata o modo como o E3 trabalha.
5.2 Exercícios
24 Servidor de Dados
Inserir Tag Demo
5.2.3 Tanques
A aplicação representa uma fábrica que utiliza como matéria-prima as tintas vermelha, verde e azul, produzindo as demais
tintas como uma combinação dessas três.
1. Na pasta Dados crie uma Pasta de Dados chamada Tanque1 e insira três Tags Internos, Vermelho, Verde e Azul.
2. Configure o valor inicial dos três Tags para Integer.
Servidor de Dados 25
Selecionar tipo de dado
3. Crie uma cópia da pasta Tanque1 para criar o Tanque2.
Pastas de Dados
26 Servidor de Dados
5.3 Anotações
Servidor de Dados 27
CAPÍTULO
6 Telas e Quadros
Telas são janelas para monitoramento de processos, onde são inseridos objetos que farão a interface do operador com o
sistema. Cada aplicação pode ter um número ilimitado de Telas.
Quadros são objetos para a organização e a estruturação da interface, criando visualizações compostas para o usuário dentro
da janela principal do Viewer ou do seu navegador.
6.1 Tela
A Tela é o objeto básico de interface com o usuário. Nela podem-se inserir os seguintes objetos:
Primitivas do editor gráfico (retas, círculos, retângulos, polígonos, etc.)
Controles ActiveX fornecidos pela Elipse (E3Alarm, E3Chart, E3Browser)
Controles ActiveX fornecidos por terceiros
Imagens não vetoriais (Arquivos BMP, JPG, GIF, etc.)
Imagens vetoriais (Arquivos WMF, EMF, etc.)
Controles padrão do Windows (Lista, Editor de Texto, Lista de Seleção, etc.)
Bibliotecas gráficas do E3 (XControl) compostas de quaisquer objetos acima
As Telas utilizam como padrão para o tamanho e coordenadas as unidades Himetric, dadas em 1/100 mm, não em pixels. Neste
sistema, ao se adicionar um valor positivo em x, a coordenada x move-se para a direita. Quando se adiciona um valor positivo
em y, a coordenada y move-se para baixo, sendo a origem dada pelo canto superior esquerdo da Tela.
As Telas podem ser abertas em modo Full-Screen, ocupando toda a área do Viewer, ou ainda como telas modais, ocupando
somente o tamanho de suas coordenadas de altura e de largura.
Exemplo de Tela
28 Telas e Quadros
6.2 Quadros
O Quadro é o objeto que organiza e estrutura a interface, criando visualizações compostas para o usuário dentro da janela
principal do Viewer ou do navegador.
No Quadro, pode-se criar Divisores para visualizar diferentes Telas ao mesmo tempo. Cada Divisor também pode mostrar uma
URL, uma planilha do Excel, um documento do Word ou um arquivo PDF.
A disposição dos Divisores dentro do Quadro pode ser horizontal ou vertical. Dentro de cada Divisor podem ser inseridos outros
Divisores. A cada par de novos Divisores criados pelas opções Dividir Horizontalmente e Dividir Verticalmente, há sempre um
Divisor Principal e um Divisor Secundário. Apenas o Divisor Principal terá valores que definem explicitamente o seu
posicionamento, ficando o Divisor Secundário com o valor restante. Para utilizar esse recurso, siga estes procedimentos:
1. Clique com o botão direito do mouse no nome do projeto em Viewers e Quadros e escolha a opção Inserir Quadro.
2. Para criar um Divisor, clique com o botão direito do mouse sobre o Quadro aberto e selecione o tipo de divisão (horizontal
ou vertical).
Divisões
Telas e Quadros 29
6.3 Viewer
O objeto Viewer configura o modo como o E3 Viewer será visualizado.
O E3 Viewer pode rodar a partir de qualquer ponto da rede que tenha acesso ao E3 Server. Não é necessário copiar o aplicativo
para as máquinas onde os E3 Viewers serão executados, pois as Telas e bitmaps são trazidos do servidor conforme a
necessidade, em tempo de execução.
Propriedades do Viewer
Através da aba Configuração, pode-se editar as opções relativas à janela, ao título e à resolução do Viewer.
30 Telas e Quadros
Aba Configuração
Na aba Erros de comunicação, pode-se configurar um padrão para que os Displays e Setpoints de toda a aplicação indiquem
erros de comunicação.
6.4 Exercícios
Telas e Quadros 31
6.4.1 Quadros
1. Clique com o botão direito do mouse sobre a pasta Viewer e Quadros e escolha a opção Inserir Quadro em -
TreinamentoE3.prj.
2. Na área de visualização do Quadro, clique com o botão direito do mouse e selecione a opção Dividir Horizontalmente,
conforme figura.
Dividir Horizontalmente
3. Posicione a barra que aparece a cerca de 10% da Tela, a partir de seu limite superior, e pressione o botão esquerdo do
mouse para fixar a posição da barra.
4. Configure o tamanho do Divisor para 10% na propriedade SplitValue.
5. Chame a Divisão criada de Area_Superior. Para trocar o nome de um objeto, existem três opções:
Selecione o objeto no Organizer e pressione a tecla F2. Será habilitada a edição do nome
Selecione o objeto no Organizer e, na Lista de Propriedades do objeto, altere a propriedade Name
Clique com o botão direito sobre o objeto no Organizer e selecione a opção Renomear
6. Divida horizontalmente o Quadro inferior a cerca de 10% da Tela, a partir do limite inferior. Chame as Divisões de
Area_Central e Area_Inferior, respectivamente.
Divisões do Quadro
7. Configure o Divisor Area_Inferior como Principal. Isso faz com que o E3 obedeça ao tamanho do Divisor e o restante da
Tela será o tamanho do Divisor Area_Central. Clique com o botão direito do mouse em Area_Inferior e escolha a
opção Configurar como Divisor Principal.
32 Telas e Quadros
6.4.2 Telas
1. Clique com o botão direito do mouse sobre a pasta Telas e escolha a opção Inserir Tela em - TreinamentoE3.prj.
Inserir Tela
2. Escolha na lista de seleção o Divisor Area_Superior. Isso faz com que a Tela seja criada com o tamanho exato desse
Divisor. Marque a opção Configurar como Tela inicial do Divisor e no campo Nome digite "TelaMenu".
Tamanho da Tela
3. Crie a TelaAlarmes para ser aberta no Divisor Area_Inferior. Marque a opção Configurar como Tela inicial do Divisor.
4. Crie a TelaSinotico, para ser aberta no Divisor Area_Central. Marque a opção Configurar como Tela Inicial do
Divisor.
Telas e Quadros 33
6.5 Anotações
34 Telas e Quadros
CAPÍTULO
7 Objetos de Tela
Os Objetos de Tela são elementos gráficos que podem ser inseridos nas Telas para criar a interface visual com o processo.
Podem ser criados a partir da barra de ferramentas Objetos ou através do menu Objetos.
Uma vez selecionado o objeto que se deseja criar, mantenha o botão esquerdo do mouse pressionado na área da Tela,
enquanto movimenta o mouse (um retângulo pontilhado mostra o tamanho e a forma do objeto). Ao soltar o botão, o objeto
será posicionado dentro da área especificada.
NOTA: Outros objetos ActiveX de terceiros também podem ser utilizados no E3, desde que sejam devidamente registrados. Eles podem ser
adicionados através do menu Ferramentas - Adicionar ActiveX.
7.2 Galeria
A Galeria é uma biblioteca de símbolos vetoriais, divididos em categorias, que podem ser arrastados para as Telas. Depois de
inserido, o objeto pode ser livremente editado e trabalhado de acordo com as características descritas para os objetos de
imagem (pode-se, por exemplo, mudar a cor de preenchimento através das propriedades OverrideFillMode, OverrideFillColor e
OverrideLineColor, sem a necessidade de transformar o objeto em um objeto gráfico do E3).
Além da biblioteca de símbolos, a Galeria também mostra os XControls pertencentes às bibliotecas do Domínio corrente.
Objetos de Tela 35
Galeria
NOTA: Ao executar o E3 Studio em modo Demo (sem licença), apenas o primeiro elemento de cada conjunto de categorias de símbolos estará
disponível.
7.3 Exercícios
7.3.1 Figuras
Todas as figuras utilizadas nesta aplicação serão salvas em uma pasta dentro do projeto principal para que não seja necessário
preocupar-se com os caminhos das figuras ao executar a aplicação em outro computador.
1. Clique com o botão direito do mouse em Recursos e escolha a opção Inserir Recurso em - TreinamentoE3.prj.
36 Objetos de Tela
Inserir Recurso
2. Escolha todas as figuras da pasta C:\TreinamentoE3\Figuras.
Tela Inicial
1. Configure a propriedade FillStyle para 12 - bkPicture, para habilitar uma figura de fundo.
Objetos de Tela 37
2. Para colocar a figura FundoTelaInicial como fundo, arraste o bitmap de Recursos até a propriedade PictureFile da Tela. Isto
faz com que o E3 utilize o recurso inserido e não o arquivo da imagem (que é externo à aplicação). Para escolher a melhor
posição da figura, pode-se alterar a propriedade PicturePosition.
3. Crie um objeto Texto com a palavra "Entrar", e outro com a palavra "Sair".
DICA: Para editar um texto já existente na Tela, clique com o botão direito do mouse em cima do objeto e selecione Editar Texto.
5. Logo abaixo do texto "Treinamento E3 Studio", insira um segundo texto com a mensagem "Elipse Software Ltda".
7.3.3 TelaMenu
TelaMenu
1. Na TelaMenu, coloque como figura de fundo FundoTelaMenu.
2. Insira um objeto Command Button e na propriedade Caption digite "Inicial".
3. Repita o procedimento para criar um botão para cada Tela da aplicação: Eventos, Grafico, Sinotico, Comunicação, Remoto
e Playback.
4. No canto direito da tela, insira um Display para exibir o nome do usuário logado.
5. Ao lado do Display, insira um botão com o texto "Login".
6. Insira um Display no canto da Tela para exibir o horário atual.
7. Acesse as propriedades do objeto e selecione a aba Formatação. Defina o formato como Hora, e no item Tipo, escolha
"13:06:03". Essa formatação mostrará as horas, os minutos e os segundos.
8. Para visualizar a configuração feita no exercício anterior, acesse a propriedade Value do Display e escolha a opção Date.
Formato de Hora
7.3.4 TelaAlarmes
Esta Tela exibirá os alarmes ativos da aplicação.
1. Configure a Tela com o fundo que desejar. Utilize o botão Estilo de preenchimento.
38 Objetos de Tela
7.3.5 TelaSinotico
TelaSinotico
1. Na TelaSinotico, coloque como figura de fundo a imagem FundoTelaSinotico.
7.3.6 Setpoint
1. Sobre os tanques de cores, insira Setpoints onde será digitada a quantidade de cada componente de cor.
Habilite os limites do Setpoint, alterando a propriedade EnableLimits para True.
Configure a propriedade MaxLimit para 255 e MinLimit para 0.
Configurando limites
7.3.7 Galeria
Sobre a esteira insira, a partir da biblioteca de objetos gráficos (Galeria), a figura 5GallonBucket, que está na pasta Tanks.
7.3.8 Retângulo
1. Sobre os tanques à direita, desenhe um objeto Retângulo e configure as seguintes propriedades:
BackgroundStyle: 1 - opaque
BackgroundColor: Preto (RGB(0, 0, 0))
VerticalPercentFill: 20
7.3.9 Display
1. Ao lado de cada tanque insira um Display .
2. Configure o valor inicial para exibir um Double.
3. Formate o Display como porcentagem e com uma casa decimal.
7.4.1 KB
KB-36216: Inserindo objetos na Galeria do E3.
Objetos de Tela 39
7.5 Anotações
40 Objetos de Tela
CAPÍTULO
8 Associações
Associações (ou Conexões) são ligações feitas entre propriedades e objetos ou entre outras propriedades. As Associações
trazem grande facilidade ao criar animações e outros tipos de lógicas comuns, minimizando a utilização de scripts.
Através da aba Associações da janela de Propriedades, tem-se acesso a todas as propriedades disponíveis do objeto a ser
tratado e todos os tipos possíveis de associação para essas propriedades.
Associações
Pode-se associar um objeto ou criar uma expressão. Ao criar uma expressão ou associar um objeto ou propriedade ao campo
Fonte, o texto aparecerá na cor azul, caso esse corresponda a um item existente ou carregado no E3 Studio. Se o item não
existir, ou pertencer a um módulo não existente no Domínio, o texto aparecerá em vermelho, e esse item será mostrado como
um erro, até ser corrigido ou excluído com a opção Verificar Domínio.
Associações 41
8.1.1 Associação Simples
Na Associação Simples, o valor do campo Fonte é copiado para a propriedade toda vez que a fonte for modificada.
Associação Simples
Associação Bidirecional
42 Associações
Associação Digital
Associação Analógica
Associações 43
Associação por Tabela
Associação Reversa
44 Associações
Associação Múltipla
Edição de Associações
TAG VBSCRIPT
0 Falso
1 Verdadeiro
Associações 45
TAG NOT TAG VBSCRIPT
0 -1 Verdadeiro
1 -2 Verdadeiro
Portanto, NOT de 1 não é Falso, pois seu valor não é igual a 0. Caso deseje utilizar o comando NOT, primeiro converta o valor do
Tag para um Booleano com o método CBool:
Método CBool
Outra opção seria trabalhar com a propriedade Bit00 do Tag, que já é uma propriedade do tipo Boolean, ao invés de trabalhar
com a propriedade Value do Tag.
Propriedade Bit00
8.4 Exercícios
Associação Simples
46 Associações
8.4.1.4 Cor de Preenchimento
1. Para poder modificar a cor do líquido, crie a Associação da figura a seguir.
DICA: Trabalhe com os comandos Copiar (CTRL + C) e Colar (CTRL + V). Para editar uma Associação criada anteriormente, use a tecla F2.
Associação Bidirecional
Associação Analógica
1. Na propriedade ForegroundColor do Display, insira uma Associação por Tabela com o Tag Nivel1.
Associações 47
8.4.5 Copiar Associação
Para copiar a Associação para o Display Nivel2, siga estes passos:
1. No Display já configurado com a Associação por Tabela, clique com o botão direito do mouse e escolha a opção Copiar
Associações.
8.4.6 Animação
1. Selecione o objeto Galão e clique em para inserir uma Animação com Translação. Uma sombra do objeto aparecerá.
Mova-a até onde desejar.
48 Associações
Inserir Tag Demo
3. Configure o Tag Anima com os seguintes valores:
Mínimo: 0
Máximo: 100
Period: 5000
Scan: 100
4. Clique com o botão direito do mouse na Animação e abra a sua janela de propriedades. Crie uma Associação na
propriedade Value com o Tag Anima.
Associações 49
8.5 Anotações
50 Associações
CAPÍTULO
9 Comunicação
O E3 permite a comunicação com equipamentos de aquisição de dados, controladores, CLPs (Controladores Lógicos
Programáveis), UTRs (Unidades Terminais Remotas), ou qualquer outro tipo de equipamento, através de Drivers de
Comunicação ou Servidores OPC, de acordo com o tipo do equipamento ou tipo de comunicação necessários. Os Drivers de
Comunicação e Servidores OPC funcionam nesse caso como servidores de variáveis, ou seja, eles fornecem as informações do
mundo externo para o E3 para que a supervisão do processo se realize. As variáveis envolvidas no processo são conhecidas
como Tags e podem ser de vários tipos, de acordo com a utilização desejada. No E3 podem ser inseridos dois tipos de Drivers, o
Driver de Comunicação (arquivos .dll) e o Driver de Comunicação OPC.
OBJETO DESCRIÇÃO
Pasta Define grupos e subdiretórios para a organização de variáveis. Não
tem relação direta com o equipamento de campo.
Tag de Comunicação Utilizado para definir a comunicação com uma variável (um
endereço de memória) do equipamento de aquisição.
Bloco de Comunicação Utilizado para definir a comunicação com diversas variáveis (vários
endereços de memória em sequência) do equipamento de aquisição.
Elemento de Bloco Representam cada um dos endereços de um Bloco e são utilizados
como se fossem Tags de Comunicação. Os Elementos de Bloco
podem apontar para cada índice dentro de um Bloco
(correspondendo a cada variável de interesse).
9.1.1 Exercícios
9.1.1.1 Driver
1. Clique com o botão direito do mouse sobre a pasta Drivers e OPC e escolha a opção Inserir Driver de Comunicação em -
TreinamentoE3.prj.
2. Selecione o arquivo do Driver (.dll) na caixa de diálogo que se abre para a seleção de arquivos.
3. Caso a caixa de diálogo não seja aberta automaticamente, escolha o arquivo de Driver na propriedade DriverLocation.
4. Verifique se a propriedade DriverName foi preenchida.
5. Nos Drivers mais recentes, todas as configurações de comunicação devem ser realizadas nas janelas de configurações extras
do IOKit, que é um componente compartilhado utilizado pelos Drivers de Comunicação do E3.
6. Para os Drivers que utilizam o IOKit, a interface de configuração é aberta clicando em Configurar o Driver na barra de
ferramentas do Driver.
Configurar Driver
7. A seguinte janela será aberta.
Comunicação 51
Janela de configuração do Driver
8. Na aba Setup, escolha na lista de opção da propriedade Physical Layer a interface física que será utilizada. As opções são
Serial, Ethernet, Modem e RAS.
9. Configure o tempo que o Driver aguardará uma resposta do equipamento no campo Timeout.
10. Após a escolha da opção Physical Layer, todas as outras abas serão desabilitadas, sendo necessário apenas configurar a
interface escolhida. A partir deste ponto, o Driver estará configurado para acessar o meio físico.
52 Comunicação
Tag Browser
3. Feche a janela quando terminar de selecionar as variáveis que desejar.
Quantidade de Tags
3. Configure as propriedades de N1/B1 a N4/B4, conforme o manual do Driver.
4. Clique novamente com o botão direito do mouse no Driver e escolha o item Ativar Comunicação para testar as
configurações, ou clique em Ativar/Desativar comunicação . Caso as configurações estejam corretas, a linha do Tag
deverá ficar na cor azul.
Comunicação 53
Ativar Comunicação
5. Crie os outros Tags e Blocos e configure suas propriedades de N1/B1 a N4/B4.
6. Ajuste o tempo de varredura para cada Tag conforme a necessidade.
9.1.1.4 TelaComunicacao
1. Insira no projeto uma nova Tela, chamada TelaComunicacao, para ser aberta no Divisor Area_Central. Marque a
opção Tela inicial do divisor.
2. Na TelaComunicacao, crie um Setpoint para cada Tag criado, e associe-o ao seu respectivo Tag.
TelaComunicacao
OBJETO DESCRIÇÃO
Pasta OPC Definem grupos ou subdiretórios para a organização das variáveis.
Grupo OPC Agrupa uma série de Tags OPC que compartilham os mesmos
parâmetros de atualização (tempo de varredura e banda morta). É
obrigatório existir um Grupo OPC para se poder criar Tags OPC.
Tag OPC Objeto para leitura ou escrita de valores em um equipamento. A
leitura do Tag é feita automaticamente pelo Servidor OPC, com
tempo de varredura definido no Grupo OPC onde ele está inserido.
Bloco OPC Possibilita a leitura ou escrita de um conjunto de valores. Para fazer
uma escrita, deve-se apenas atribuir um novo valor à propriedade
Value.
Elemento de Bloco OPC Possibilita a leitura ou escrita de um dos elementos do Bloco OPC
onde ele está inserido. O Bloco OPC lê uma tabela de dados e esse
objeto estará sempre associado à posição definida por sua
propriedade Index, correspondendo a uma variável de interesse.
54 Comunicação
9.2.1 Exercícios
O E3 funcionará como servidor OPC e também como cliente OPC. Assim como no exercício anterior, esse exercício serve para
mostrar como funciona a configuração do Driver OPC, já que o procedimento é semelhante para qualquer servidor OPC que
esteja sendo utilizado. O roteiro é descrito nos passos a seguir.
1. Clique com o botão direito do mouse sobre a pasta Drivers e OPC e escolha a opção Inserir Driver de Comunicação OPC em
- TreinamentoE3.prj.
2. Clique com o botão direito do mouse sobre o Driver OPC inserido, selecione a opção Propriedades e vá até a aba OPC
Driver. Clique em Selecionar.
Selecionar servidor
3. Será aberta uma janela com as opções de OPC Server na sua máquina local ou na rede. Selecione o Elipse OPC Server da sua
própria máquina, na opção Servidores locais, e clique em OK.
4. Ao voltar à janela de propriedades do Driver OPC, clique em Ativar Comunicação.
Ativar Comunicação
5. A partir deste ponto, é possível verificar a comunicação com o servidor clicando em Informações.
Importar tags
7. O Assistente de Importação de Tags do E3 será aberto. Clique em Buscar.
Comunicação 55
Buscar tags
8. A figura anterior mostra a aparência da janela de importação. Do lado direito a lista de Tags do servidor e do lado esquerdo,
a área de importação para o E3. Para importar, selecione o item e arraste-o até o Grupo OPC de destino.
Grupos OPC
9. Depois de importar alguns Tags ou propriedades, verifique o funcionamento dos Tags importados.
56 Comunicação
Tags importados
10. Assim como no caso da configuração de Drivers Elipse, o roteiro para trabalhar com o servidor OPC da Elipse é o mesmo
para qualquer servidor que seja utilizado.
9.3.1 KB
KB-14918: Contagem de Tags no Driver de Comunicação.
Comunicação 57
9.4 Anotações
58 Comunicação
CAPÍTULO
10Scripts
Os Scripts são trechos de código (programação) com os quais se pode criar procedimentos associados a eventos específicos,
permitindo grande flexibilidade no desenvolvimento e no uso de aplicações. Todos os scripts estão associados a eventos, e cada
objeto do E3 possui uma lista de eventos previamente definidos, sendo possível também definir novos eventos de usuário.
De acordo com conceitos da programação orientada a objetos, as Propriedades definem atributos de um objeto, como a
aparência de um controle de Tela ou o valor inicial de um objeto quando se inicia o aplicativo.
NOTA: Estamos trabalhando até agora apenas com propriedades no E3. Já conhecemos algumas propriedades dos objetos do E3 e vimos que
temos duas maneiras de alterá-las, na Janela de Propriedades ou por Associações.
Os Métodos são funções previamente definidas, que executam determinadas ações sobre as propriedades do objeto que chama
estas ações. Exemplos disso são funções para realizar a escrita em Tags (Write ou WriteEx), entre outras. Em linguagens de
programação orientadas a objeto, para agir sobre uma propriedade é necessária a criação de métodos. No E3, para cada
método desejado, é necessário definir a qual evento ele estará associado, pois os scripts do E3 são orientados a eventos.
Os Eventos são ocorrências relacionadas a um objeto, que podem ser tratadas de modo a se realizar uma ação (um método).
10.1.1 Picks
Os Picks implementam uma forma amigável de realizar procedimentos comuns em scripts, poupando tempo de escrita de
código. Entre eles estão ações como troca de Tela ou atribuição de valores, que são bastante comuns na criação de um projeto.
Scripts 59
10.1.1.1 Executar Scripts
Permite a edição de um script personalizado que será executado na ocorrência do evento determinado.
60 Scripts
10.1.1.3 Abrir Tela Modal
Abre uma Tela em estilo modal.
Scripts 61
10.1.1.5 Carregar Valor
Carrega um valor em um Tag.
62 Scripts
10.1.1.7 Imprimir Relatório
Permite imprimir um Relatório na Tela ou na impressora.
10.2 Eventos
Os Eventos são ocorrências relacionadas a um objeto, que disparam ações programadas. Basicamente são dois tipos de
eventos, Físicos (ou externos) e Internos.
Eventos físicos são, por exemplo, ações no teclado ou no mouse. Neste caso, a informação relevante seria a tecla pressionada
ou a posição do cursor e o status dos botões. Eventos internos são, por exemplo, a mudança de uma temperatura de uma
câmara de 10 para 11 graus Celsius.
No E3, há uma lista disponível de eventos classificada por objetos, iniciando pelos eventos padrão, presentes em todos os
objetos. Esses eventos são acessados através da aba Scripts, que pode ser consultada através das propriedades do objeto para o
qual se deseja fazer o script.
Scripts 63
Lista de eventos
10.3 Métodos
Os Métodos são procedimentos que podem ser executados por objetos. Por exemplo, o objeto Tela tem um método para a
adição de objetos (AddItem) e outro para fechá-la (Close). Por estarem encapsulados, isto é, guardados dentro dos objetos, na
chamada de um método sempre deve constar a qual objeto está se referindo.
Muitos métodos pré-definidos possuem parâmetros, que podem (ou devem) ser passados na chamada do método. Para isso, o
VBScript possui uma regra que deve ser seguida. Se o método for utilizado em uma atribuição, seus parâmetros devem estar
entre parênteses. Os parênteses usados nas citações de métodos neste manual servem apenas como indicativo para diferenciá-
los das propriedades. Nos scripts, deve-se seguir esta regra.
64 Scripts
AppBrowser
10.4 Propriedades
Todo objeto possui Propriedades, que guardam informações a respeito de suas características. Por exemplo, um objeto do tipo
Retângulo possui a propriedade Name, que contém seu nome e as propriedades Width e Height, que guardam a sua largura e a
sua altura, respectivamente, entre outras. Para acessar as propriedades, utilize as mesmas especificações anteriores, porém
selecione a pasta Propriedades.
10.5 Exercícios
Pick Script
Scripts 65
2. Com o auxílio do AppBrowser , procure o método Exit do Viewer e clique em Colar.
Application.Exit
10.6.1 KB
KB-25172: Teclas de atalho no E3.
66 Scripts
10.7 Anotações
Scripts 67
CAPÍTULO
11Segurança
O E3 possui um controle de acesso a Telas, Alarmes e Domínios em uma lista de usuários, onde para cada nome é atribuído uma
senha e um login. Conforme a opção configurada, o sistema permitirá acesso aos usuários cadastrados ou acesso ilimitado às
Telas do projeto.
11.1 Usuários
Através da opção Usuários é possível configurar as informações referentes aos usuários que terão ou não acesso ao sistema.
Para utilizar este recurso, é preciso acessar o menu Arquivo - Usuários e clicar na aba Usuários.
Aba Usuários
IMPORTANTE: Após configurar a segurança, somente os usuários listados terão acesso ao sistema.
11.2 Grupos
A opção Grupos permite que sejam criados grupos com características que serão comuns para todos os seus membros
(usuários). Um grupo também pode pertencer a outros grupos. Só não é permitido pertencer a outro grupo que pertença a ele,
ou seja, uma referência circular. Para utilizar este recurso, é necessário acessar o menu Arquivo - Usuários e selecionar a aba
Grupos.
68 Segurança
Aba Grupos
11.3 Permissões
A aba Permissões configura as permissões dos usuários e grupos para Telas, Alarmes, Domínio e Viewer. Uma verificação de
permissão consiste em uma informação que o membro do grupo tem sobre um comando que atua sobre um objeto específico.
Por exemplo, o Usuario1 tem permissão para o comando Abrir sobre o objeto Tela1. Cada membro do grupo pode negar ou
afirmar a permissão de um comando, independentemente do grupo ao qual pertence. Dessa forma, ele não vai levar em
consideração a informação do grupo. Também pode-se optar por sempre utilizar a informação definida pelo grupo. Se as
informações dos grupos forem conflitantes, será usada a seguinte ordem de preferência: Negar » Afirmar » Indiferente.
Segurança 69
Aba Permissões
11.4 Proteção
O E3 possui uma ferramenta de proteção de projetos ou de bibliotecas. Através desse item, é possível proteger o conteúdo do
arquivo contra a edição, a visualização ou a execução não autorizada. Para utilizar esse recurso, clique com o botão direito do
mouse sobre o nome do projeto no Organizer e selecione a opção Proteger.
70 Segurança
Proteção de arquivo
Esta opção possui dois tipos de proteção, de Edição e de Execução.
Proteção de Edição: Protege o arquivo contra alterações e visualizações não autorizadas. Esse recurso é utilizado para evitar
que determinada biblioteca ou projeto seja alterado acidentalmente, ou que sejam copiados procedimentos de
conhecimento específico do desenvolvedor. O E3 fornece um controle sobre a edição desses arquivos, sejam eles projetos ou
bibliotecas.
Proteção de Execução: Esta opção é utilizada para proteger um arquivo contra execução não autorizada. Para tanto, é
necessário solicitar a gravação de uma senha no dispositivo de proteção, que é feita pela Elipse Software. Isso protege o
desenvolvedor de cópias não autorizadas do projeto, por exemplo.
Quando um arquivo .lib ou .prj é aberto no E3 Studio, este inicializa mostrando um ícone cinza com um cadeado, indicando
que está protegido e esse conteúdo não pode ser acessado. Para acessar o conteúdo do arquivo, clique no ícone da direita e
mude para Abrir com senha. Após informar a senha e o sistema liberar o acesso, o ícone fica colorido , indicando a
acessibilidade dos arquivos.
IMPORTANTE: As proteções implementadas não podem ser desfeitas caso as senhas sejam perdidas. Portanto, ao proteger determinado
arquivo, mantenha as senhas armazenadas de modo seguro. Isso garante que se conseguirá usar o arquivo sempre que necessário.
11.5 Exercícios
A seguir, será visto como configurar usuários em um Domínio no E3 e como utilizar esse recurso para inibir ou permitir acesso a
Telas, controles, alarmes, etc.
Segurança 71
11.5.1 Usuários
1. No menu Arquivo, selecione a opção Usuários.
Dados do usuário
4. Configure um usuário para pertencer ao grupo Administradores e dois para pertencerem ao grupo Operadores.
11.5.2 Permissões
1. Na aba Permissões, selecione a opção Grupos. Bloqueie uma Tela para o grupo Operador.
2. Nas permissões de usuários, dê permissão para um dos usuários do grupo Operador acessar a Tela bloqueada para o grupo.
11.5.3 Login
1. Na TelaMenu, botão Login, crie um novo Pick do tipo Script no evento Click.
2. Busque no AppBrowser o método Login do Viewer e clique em Colar.
11.6.1 KB
KB-32881: Abrindo a janela de administração de usuário em tempo de execução.
72 Segurança
11.7 Anotações
Segurança 73
CAPÍTULO
12Bibliotecas ElipseX
O E3 possui ferramentas que permitem transformar qualquer objeto ou conjunto de objetos de sua aplicação em uma biblioteca
do usuário. A ideia das bibliotecas de usuários (chamadas de ElipseX) vem das linguagens de programação orientadas a objetos,
onde diversos componentes podem ser compartilhados entre projetos sem que seja necessário desenvolver novamente cada
um dos objetos. O uso de Bibliotecas no E3 é altamente recomendável, devido ao ganho de produtividade que elas trazem.
Algumas das vantagens dos ElipseX:
Reutilização de código
Minimização de testes durante o desenvolvimento
Criação de interfaces padrão para os objetos desenvolvidos
Diminuição do tempo de desenvolvimento de novos projetos
Proteção do conteúdo do projeto
Bibliotecas de objetos
74 Bibliotecas ElipseX
Assistente de Aplicações
3. Determine o nome da biblioteca e a pasta onde ela será salva, e clique em Avançar.
4. Determine as especificações referentes ao Domínio.
5. Clique em Concluir.
Dentro de uma biblioteca ElipseX podem ser inseridos dois tipos de objetos, os objetos gráficos XControls e os objetos de dados
XObjects.
Podem ser inseridos nos XControls todos os itens disponíveis para as Telas. Entre esses itens estão as primitivas de desenho,
objetos gráficos vetoriais, incluindo objetos da biblioteca de símbolos (WMF, EMF, etc.), objetos gráficos não vetoriais (BMP,
JPEG, GIF, etc.), controles ActiveX do E3 (E3Chart, E3Browser, E3Alarm), controles ActiveX de terceiros e outros XControls.
Já as bibliotecas de dados podem conter quaisquer tipos de objetos não gráficos, que são executados no E3 Server. Pode-se
inserir em um XObject os seguintes objetos: Driver de Comunicação, Servidor de Dados, Banco de Dados, Fórmulas,
Configuração de Alarmes, Servidor de Alarmes, Objetos COM, outros XObjects, dentre outros.
Dentro de um mesmo arquivo .lib pode existir qualquer número de componentes ElipseX, sejam eles XControls ou XObjects.
Pode-se ter também várias bibliotecas diferentes (vários arquivos .lib) dentro do mesmo Domínio.
12.1.1 XControl
O XControl define uma interface gráfica com o usuário, que pode ser composta de quaisquer objetos do E3, com o propósito de
ser multiplicada facilmente por seu projeto. Pode-se criar um XControl clicando com o botão direito do mouse sobre o arquivo
.lib criado em seu Domínio (Organizer - Explorer) ou em Bibliotecas de Objetos, XControl, escolhendo a opção Inserir - XControl.
Bibliotecas ElipseX 75
XControl
Ao inserir um XControl, observe que na parte inferior da tela existem três abas, Design, Propriedades e Scripts. Na aba
Propriedades, pode-se inserir propriedades a serem exportadas pelo objeto. Elas poderão ser associadas a um Tag ou outra
propriedade qualquer quando o objeto estiver sendo usado em um projeto. Na aba Design, que equivale a uma Tela, pode-se
inserir os objetos gráficos descritos anteriormente.
As propriedades a serem exportadas (XProperties) podem ser inseridas através da tecla INS do teclado ou clicando em ,e
excluídas clicando em . As opções disponíveis são:
Opções disponíveis em XControls
OPÇÃO DESCRIÇÃO
Nome Determina o nome da propriedade do XControl.
Tipo Determina o tipo de dado suportado pela propriedade.
Public Habilita ou desabilita a visibilidade da propriedade fora da biblioteca,
isto, é determina se a propriedade será ou não pública.
Valor Inicial Determina o valor inicial da propriedade.
Texto de ajuda Texto de declaração e documentação da propriedade.
Note que outros objetos de Dados (XObjects) podem ser declarados como Tipo. Isso permite que em uma única propriedade
seja controlado o funcionamento de todo um objeto, tornando mais fácil a manutenção de uma biblioteca.
A edição do objeto gráfico possui os mesmos recursos gráficos e opções da edição de Telas. Pode-se inserir os XControls em
qualquer Tela, ou ainda dentro de outro XControl clicando com o botão direito do mouse sobre a Tela ou XControl de destino e
escolhendo a opção Inserir.
A partir desse momento, o XControl terá um nome dentro da Tela, e será entendido como uma cópia da definição original.
Assim, deve-se definir (se necessário) os valores ou as associações que essa cópia específica terá no contexto que está sendo
utilizada.
12.1.2 XObject
Além dos objetos gráficos, pode-se criar uma biblioteca de dados, chamada XObject. Com ela, pode-se definir uma estrutura de
dados a ser executada no servidor. Tal estrutura poderá realizar cálculos, associações, comunicações, verificação de alarmes,
registro histórico, etc., que independam de alguma interface gráfica (Viewer) aberta ou em execução naquele momento. Para
criar um XObject, clique com o botão direito do mouse sobre o arquivo .lib no Organizer e escolha a opção Inserir - XObject.
As opções disponíveis para as propriedades do XObject são as mesmas dos XControl, citadas anteriormente. Além das
XProperties, podem ser inseridos em um XObject quaisquer módulos do E3 que sejam executados no servidor. Para saber a lista
completa, basta pressionar o botão que define o tipo do objeto e verificar a lista de opções disponíveis. Isso permite que se
possa definir como uma biblioteca um sistema complexo de gerenciamento, que poderá ser facilmente replicado quantas vezes
forem necessárias no aplicativo.
Pode-se inserir os XObjects em qualquer Servidor de Dados clicando com o botão direito do mouse sobre o Servidor de Dados e
escolhendo a opção Inserir. Mesmo que o(s) arquivo(s) de biblioteca possua(m) vários XControls e XObjects, ao tentar inserir
uma biblioteca o E3 Studio exibirá para as Telas somente os XControls, e para os Servidores de Dados somente os XObjects.
76 Bibliotecas ElipseX
12.2 Quando Criar um ElipseX
Existem alguns critérios para indicar a necessidade da construção de objetos no E3:
Repetição no uso: se um mesmo equipamento ou processo será usado mais de uma vez no mesmo projeto
Procedimentos de conhecimento do usuário: frequentemente, um processo criado por determinada empresa deve ser
protegido de cópia ou alteração. Isso é comum no caso de integradores de serviços ou fabricantes de máquinas
Uso de controladores: um controlador de processo, cujo mapeamento de memória é fixo, pode ser implementado com todas
as funcionalidades disponíveis. A flexibilidade disponível para a construção e uso dos objetos no Elipse E3 permite que sejam
utilizadas posteriormente apenas as variáveis de interesse, desprezando-se as demais
NOTA: Não é possível copiar uma Biblioteca e utilizar os dois arquivos (original e cópia) no mesmo Domínio. Por exemplo, não se pode copiar
um arquivo .lib para separá-lo em dois novos arquivos.
12.3 Exercícios
Vamos desenvolver um Display para exibir o valor da temperatura. O Display será formatado com uma casa decimal e sufixo "°
C". A cor de fundo do Display varia conforme o valor da temperatura.
12.3.1 Biblioteca
1. Clique em Novo Projeto e, no Assistente de Aplicações, selecione a opção Biblioteca de componentes do E3. Nomeie-a
como BibliotecaTreinamento e especifique a pasta C:\TreinamentoE3. Clique em Avançar, adicione-a ao Domínio
corrente e conclua o processo.
12.3.2 XControl
1. Insira um XControl e chame-o de DisplayTemp.
DisplayTemp
2. Na aba Design, desenhe um Display.
3. Formate o Display com a expressão "0,0 °C".
Formato do
Display
4. Para poder receber externamente qualquer valor, precisamos criar propriedades. Altere da aba Design para a aba
Propriedades, na parte inferior da Tela.
Aba Propriedades
5. Crie uma propriedade chamada Temperatura, do tipo Double.
Propriedade Temperatura
6. Retorne à aba Design. No Display, crie uma Associação Simples entre a propriedade Temperatura e a propriedade Value.
Associação Simples
7. Para alterar a cor conforme o valor da temperatura, crie uma Associação por Tabela na propriedade ForegroundColor,
informando os limites e as cores desejadas. Na propriedade Fonte, busque a propriedade Temperatura criada
anteriormente.
Bibliotecas ElipseX 77
Associação por Tabela
8. Para que o novo objeto possa ser utilizado, é preciso registrá-lo. Salve as modificações, clique com o botão direito do mouse
em Bibliotecas e escolha a opção Registrar bibliotecas carregadas.
DisplayTemp
10. Para cada DisplayTemp na Tela, crie uma Associação Simples entre a propriedade Temperatura e um Tag Temp.
12.3.3 TagBomba
1. Na biblioteca BibliotecaTreinamento, insira um novo XObject e nomeie-o TagBomba.
2. Crie três propriedades do tipo Boolean: OnOff, Automatico e Defeito.
Propriedades de TagBomba
3. Salve a biblioteca e registre-a.
78 Bibliotecas ElipseX
12.3.4 Servidor de Dados
1. Crie, dentro de Dados, uma Pasta de Dados com o nome Bombas.
2. Na pasta Bombas, crie seis XObjects TagBomba: B01 a B06.
Objetos TagBomba
12.3.5 Bomba
Bomba
1. Insira um novo XControl e nomeie-o Bomba.
2. Insira o objeto 3DISABlower, da categoria Blowers da Biblioteca de Símbolos. Modifique as seguintes propriedades:
OverrideFillMode para 3 - ByBrightness
OverrideFillColor para verde (0, 255, 0)
Tipo TagBomba
6. Para facilitar posteriormente, escreva no campo Texto de ajuda a mensagem "Objeto TagBomba associado. Propriedades:
OnOff, Automatico, Defeito".
7. Para que a figura só apareça quando a válvula estiver com defeito, crie uma Associação Simples entre a propriedade
Visible do objeto e a propriedade Defeito:
Bibliotecas ElipseX 79
Com o auxílio do AppBrowser, localize a propriedade Fonte
No campo inferior, insira após a propriedade Fonte a propriedade do objeto TagBomba desejada, nesse caso, Defeito
AppBrowser
Associação Digital
11. Salve a biblioteca e registre-a.
12.3.6 TelaSinotico
1. Na TelaSinotico, insira um objeto Bomba sobre cada bomba do desenho de fundo.
2. Associe a propriedade Fonte dos objetos Bomba da TelaSinotico aos XObjects Bomba criados no exercicio anterior.
Propriedade Fonte
DICA: Pode-se arrastar o objeto que se deseja associar até a propriedade desejada.
80 Bibliotecas ElipseX
Arrastando um objeto para uma propriedade
12.3.7 ComandoBomba
Comando
Criaremos um XControl, que será utilizado para alterar as propriedades OnOff, Automatico e Defeito do XObject TagBomba.
Haverá uma única Tela com este objeto, que fará a configuração de todas as bombas do aplicativo.
1. Insira um novo XControl na biblioteca BibliotecaTreinamento e nomeie-o ComandoBomba.
2. Crie uma propriedade chamada Fonte, do tipo TagBomba.
3. Crie uma Caixa de Seleção e, na sua propriedade Caption, digite o texto "Defeito".
4. Crie uma Associação Bidirecional entre as propriedades Value da Caixa de Seleção e Defeito da Fonte.
Associação Bidirecional
5. Copie o objeto Caixa de Seleção duas vezes. Altere a propriedade Caption dos objetos para "Automático" e "OnOff",
respectivamente, e associe-os às propriedades correspondentes.
6. Insira um texto sobre os objetos, onde apareça o nome do XObject TagBomba associado.
12.3.8 TelaComando
Insira no projeto uma nova Tela, chamada TelaComando, com o tamanho de 200 x 200 pixels.
1. Na TelaComando, insira um objeto ComandoBomba.
2. No evento OnPreShow da TelaComando, insira o seguinte script:
Item("ComandoBomba1").Fonte = Arg
3. Busque, com o auxílio do AppBrowser, o XControl ComandoBomba1 que está dentro da TelaComando, e à direita selecione
a propriedade Fonte.
4. Digite " = Arg".
Bibliotecas ElipseX 81
1. No XControl Bomba, crie um script no evento Click da figura que simboliza a bomba:
'Nome completo da bomba
Arg = Bomba.Fonte.PathName
'Abrir TelaComando
Application.DoModal "TelaComando", "Comando", 0, 0, , , Arg, 1+2+64+2048
2. Digite "Arg = " para criar uma variável auxiliar de script, que guardará o nome da bomba na qual clicamos.
3. Busque, com o auxílio do AppBrowser, o XControl Bomba e à direita a propriedade Fonte. Clique em Colar.
4. Termine a linha digitando ".PathName". Esta propriedade retorna o nome completo do XObject TagBomba que estiver
associado.
Arg = Bomba.Fonte.PathName
6. Altere o parâmetro Screen para o nome da Tela que se deseja abrir, TelaComando.
7. Altere o parametro Title para "Comando". Este será o título, desde que a propriedade Caption da Tela esteja em branco.
8. Altere os parâmetros Left e Top para 0. Forçaremos a Tela a abrir no centro em outro parâmetro.
9. Altere os parâmetros Width e Height para um espaço, assim será usado o tamanho original da Tela.
10. Arg é a informação que será passada para a Tela que se abrirá. Esse parâmetro já foi definido como o nome completo da
bomba.
11. Altere o parâmetro Flags para 1+2+64+2048, que significa barra de título (1), botão de fechar (2), móvel (64) e centralizada
(2048).
Como no VBScript Verdadeiro equivale numericamente a -1, nossa expressão deve ser:
-4 * Bomba1 - 2 * Bomba2 - Bomba3
82 Bibliotecas ElipseX
Propriedade ForegroundColor
12.4.2 KB
KB-28547: Utilizando biblioteca desenvolvida em outro projeto.
Bibliotecas ElipseX 83
12.5 Anotações
84 Bibliotecas ElipseX
CAPÍTULO
13Banco de Dados
O Banco de Dados do E3 é utilizado para armazenar as informações do projeto referentes aos Históricos, Fórmulas e Alarmes.
Possui suporte a MDB (Microsoft Access), Oracle e Microsoft SQL Server. Para utilizar esse recurso, siga estes procedimentos:
1. Clique com o botão direito do mouse sobre o nome do projeto e depois em Inserir - Banco de Dados.
2. No caso do banco de dados Access, insira o nome do arquivo desejado (existente ou não) no campo Arquivo MDB.
3. Deixe em branco os campos Usuário e Senha. Estes campos são utilizados somente se o banco de dados especificado para a
conexão já possuir usuário e senha.
4. Deixe o campo Senha do DB em branco. Conforme especificado acima, este campo só é utilizado caso o banco de dados
especificado possua senha.
5. Clique em OK para finalizar as configurações.
13.1 Exercícios
Banco de Dados 85
13.2.1 KB
KB-29527: Bancos de dados suportados pelo E3.
86 Banco de Dados
13.3 Anotações
Banco de Dados 87
CAPÍTULO
14Alarmes
O módulo de Alarmes do E3 consiste basicamente em duas unidades cujo funcionamento é interligado logicamente:
Servidor de Alarmes: Organiza o modo como os eventos e alarmes serão tratados
Configuração de Alarmes: É neste objeto que os alarmes a serem tratados são criados e suas fontes configuradas
IMPORTANTE: Um Domínio pode ter somente um objeto desse tipo, e a sua presença é obrigatória para que haja verificação de alarmes.
Através da aba Configuração é possível especificar se os alarmes serão armazenados no Banco de Dados. Os alarmes podem ser
visualizados em um E3Alarm ou em um E3Browser, objetos de Tela que serão vistos mais adiante.
14.2.1 Área
O objeto Área permite agrupar um conjunto de Fontes de Alarmes, bem como outras Áreas de Alarme. Isso facilita o
gerenciamento, a operação e o monitoramento de um conjunto de Fontes de Alarmes relacionados, permitindo, por exemplo:
Filtrar o conjunto de alarmes visíveis no sumário
Habilitar ou desabilitar um conjunto de Fontes de Alarmes
Reconhecer um conjunto de Fontes de Alarmes
Verificar o total de alarmes ativos ou não reconhecidos de um conjunto de Fontes de Alarmes
Caso haja necessidade, novas Áreas podem ser inseridas dentro de outras.
PROPRIEDADE DESCRIÇÃO
Texto da Mensagem É o texto associado àquela condição de alarme, que aparecerá no
objeto de visualização (E3Alarm), Banco de Dados, etc. Pode conter
até 255 caracteres de texto.
Severidade Indica a gravidade do alarme ocorrido, podendo ser Baixa, Média ou
Alta. A severidade é utilizada para filtragem e ordenação de
mensagens.
Pede Ack Indica que o alarme deve ser reconhecido pelo operador para ser
retirado da lista de alarmes no E3Alarm, ou ainda se é reconhecido
automaticamente quando a variável deixa uma condição de alarme.
Mensagem de Retorno Sempre que uma Fonte de Alarme sai da condição de alarme, essa
mensagem será exibida nos objetos de visualização.
Há vários tipos de Fontes de Alarme que podem ser inseridas na Área de Alarme.
88 Alarmes
14.2.2.1 Analógico
Permite monitorar uma variável analógica, pela especificação de até quatro níveis de alarme, que são o LOLO (muito baixo), LO
(baixo), HI (alto) e HIHI (muito alto).
14.2.2.2 Digital
Permite monitorar uma variável (ou expressão) digital, pela especificação de alarme na borda de subida (em -1 ou Verdadeiro)
ou na borda de descida (em 0 ou Falso).
Alarmes 89
Fonte de Alarme Banda Morta
14.3 E3Alarm
O E3Alarm serve para o monitoramento dos alarmes ativos ou não reconhecidos no sistema. Através desse objeto, é possível
verificar o estado dos alarmes no sistema, bem como reconhecê-los manualmente. Para utilizar esse objeto, clique com o botão
direito do mouse na área de trabalho, e selecione a opção Inserir - E3Alarm.
90 Alarmes
E3Alarm
Na aba Geral das propriedades do E3Alarm são especificadas as informações referentes ao Servidor de Alarmes e ao filtro.
Aba Geral
14.4 Exercícios
Alarmes 91
Inserir Servidor de Alarmes
2. Acesse as propriedades do Servidor de Alarmes, e na aba Configuração habilite a opção Guarde alarmes no banco de
dados.
3. Na opção Utilize o servidor de banco de dados, escolha BancoDados.
4. Habilite a opção Descarta dados da tabela principal.
Mantenha os dados dos últimos 3 meses
A verificação deve ocorrer a cada 1 mês
5. Clique em Campos e selecione os campos que desejar. Para o correto funcionamento com o E3PlayBack, insira os campos:
EventTimeDbl
FullAlarmSourceName
ConditionActive
Acked
AckRequired
6. Por último, clique em Gerar Tabela. Será exibida uma mensagem de sucesso.
92 Alarmes
14.4.2 Configuração de Alarmes
1. Insira no projeto um objeto Configuração de Alarmes.
Adicionar Área de
Alarme
2. Selecione a Área criada e clique em Adicionar. Insira uma Fonte de Alarme do tipo Analógico.
Alarmes 93
No item Volta ao normal, digite "Nível 1 normalizado"
94 Alarmes
Alarme Digital Defeito
4. Associe ao Alarme Defeito a propriedade Defeito do objeto.
5. Acesse as propriedades do Alarme Defeito, aba Digital:
Marque a opção Alarme Digital
Escolha a opção True em Valor de Alarme
6. Para que nas mensagens de Alarme e retorno apareça o nome da bomba, crie as Associações vistas na próxima figura.
Alarmes Digitais
14.4.6 E3Alarm
A visualização dos Alarmes em tempo real pode ser feita através do objeto E3Alarm.
Alarmes 95
Propriedade AlarmServer
4. Acesse as propriedades do E3Alarm. Na aba Colunas, selecione os campos DataHora, Operador, Mensagem, Reconhecido e
Valor.
5. Na aba Cores faça a configuração que desejar.
6. Execute a aplicação e confira as funcionalidades.
3. Busque, com o auxílio do AppBrowser, na TelaAlarmes o objeto E3Alarms1 e à direita o método AckAll.
Screen.Item("E3Alarm1").AckAll([Operator])
4. Substitua o parâmetro Operator pelo nome do usuário logado no Viewer. Com o auxílio do AppBrowser busque a
propriedade User do Viewer.
14.5.2 KB
KB-29110: Gerando um beep no speaker do PC quando alarme for ativado.
KB-17370: Executando um som sempre que existir um alarme ativo.
96 Alarmes
14.6 Anotações
Alarmes 97
CAPÍTULO
15Consultas
O objeto Consulta (ou Query) auxilia no processo de definição de consultas no Banco de Dados da aplicação. Toda vez que o E3
necessita buscar dados do Banco de Dados é necessário enviar um comando, de forma que se saiba quais os dados desejados
para aquele objeto. Para essa busca, toda vez que uma aplicação precisar gravar ou buscar dados armazenados em um Banco de
Dados, são enviados comandos no formato SQL (Structured Query Language).
A Consulta apresenta uma interface amigável que permite a construção de consultas SQL usando uma interface gráfica e o
acompanhamento imediato do código SQL gerado. A Consulta permite mostrar os dados dos últimos n dias, horas ou meses,
data inicial e final e consultas, dependendo do filtro a ser implementado.
O Assistente de Configuração da Consulta é responsável por criar o texto que faz o filtro ou a consulta, não sendo necessário
para o usuário saber detalhes como data, etc. Para utilizar esse recurso, clique com o botão direito do mouse sobre a Tela do
projeto e selecione a opção Inserir - Consulta.
NOTA: Quando se cria um objeto Relatório ou um E3Browser, o objeto Consulta é adicionado a este automaticamente. No entanto, também
se pode inserir uma Consulta em uma Pasta de Dados ou em uma Tela e utilizar seus dados através de scripts.
Seleção de tabelas
3. Selecione as tabelas que farão parte da Consulta e clique em Adicionar.
98 Consultas
4. Na aba Campos, serão adicionados os campos a serem retornados pela Consulta, bem como definidos filtros e ordenações.
5. Na aba Variáveis, são mostradas as variáveis criadas para os filtros.
6. Na aba Visualizar, pode-se realizar uma prévia da Consulta.
7. Na aba SQL, pode-se visualizar e editar o código SQL.
15.2 E3Browser
O E3Browser é um controle ActiveX (desenvolvido pela Elipse Software) utilizado para visualizar dados armazenados em Banco
de Dados, gerados pelo E3 ou outro software qualquer. Pode-se configurar Consultas utilizando filtros de vários tipos nos dados,
atribuir cores para cada coluna, entre outras configurações. Esse objeto é utilizado para visualizar os Históricos, Alarmes ou
qualquer tabela existente no Banco de Dados.
E3Browser
Consultas 99
Para utilizar este recurso, insira o E3Browser no projeto através do clique com o botão direito do mouse na Tela, e selecione a
opção Inserir - E3Browser.
Inserir E3Browser
O E3Browser utiliza o objeto Consulta para auxiliar o usuário no processo de definição de consultas no Banco de Dados da
aplicação.
15.3 Exercícios
Vamos visualizar os dados de alarmes armazenados no Banco de Dados em forma de tabela utilizando o objeto E3Browser.
15.3.1 TelaEventos
1. Insira no projeto uma nova Tela, chamada TelaEventos, a ser aberta no Divisor Area_Central. Marque a opção Tela
inicial do Divisor.
2. Na TelaMenu, insira um botão para abrir a TelaEventos.
15.3.2 E3Browser
1. Insira um E3Browser na TelaEventos.
2. Para configurar os dados que o E3Browser mostrará, acesse as propriedades do objeto e vá até a aba Consulta.
3. Selecione a Consulta1 e clique em Configurar.
Aba Consulta
100 Consultas
4. Selecione o Banco de Dados que contém a tabela que se deseja consultar.
5. Escolha a tabela Alarms.
6. Selecione todos os campos da tabela Alarms.
Tabela Alarms
7. Abra a aba Visualizar e clique em Executar Consulta para verificar o resultado da Consulta.
Executar Consulta
8. Clique em OK. Ao finalizar esse passo, estarão disponíveis no E3Browser todos os campos listados na Consulta. Configure
cada campo com a cor, formatação e tamanho que desejar.
Configuração da Consulta
Consultas 101
no evento Click dos Setpoints.
'Chama a função Calendário
If Application.ShowDatePicker(DataHora, 0, 0) Then
'Passa a data escolhida para o SetPoint
Value = DataHora
End If
4. O parâmetro DefaultDate é opcional e informa a data selecionada no calendário. Apague-o pois usaremos o padrão, que
corresponde à data atual.
5. Substitua os parâmetros Left e Top por 0 ou a coordenada que desejar abrir o calendário.
6. O parâmetro DateValue deve ser substituído por uma variável interna de script. Chamaremos essa variável de DataHora.
7. O método ShowDatePicker retorna Verdadeiro se o usuário clicar em OK e Falso se clicar em Cancelar. Somente se clicar
em OK é que devemos passar o valor do calendário para o Setpoint. Digite "If" no começo da linha do comando
ShowDatePicker e "Then" no final.
If Application.ShowDatePicker(DataHora, 0, 0) Then
8. Para passar a data do calendário para o Setpoint, digite na próxima linha o texto a seguir.
Value = DataHora
9. Como estamos escrevendo o script no Setpoint e desejamos referenciar a sua propriedade Value, podemos digitar
diretamente o nome da propriedade sem ser obrigatório o caminho completo.
10. Finalize o script digitando "End If".
11. Acesse o objeto Consulta do E3Browser. Isso pode ser feito clicando com o botão direito do mouse no objeto e
selecionando o item Configurar, ou pela aba Consulta das propriedades do E3Browser.
Consulta do E3Browser
Configurando o Filtro
14. Digite um valor inicial para as variáveis criadas na aba Variáveis.
102 Consultas
Variáveis da Consulta
15. Acesse a aba Visualizar e clique em Executar Consulta para verificar o resultado da Consulta. Certifique-se que o filtro foi
aplicado e clique em OK.
16. Na TelaEventos, embaixo dos Setpoints, crie um botão Consultar, e insira um novo script no evento Click com as
seguintes linhas.
'Referencia os Setpoints
DataIni = Screen.Item("spDataInicial").Value
DataFim = Screen.Item("spDataFinal").Value
Set consulta = Screen.Item("E3Browser1").Item("Consulta1")
'Configura as variáveis da Consulta
consulta.SetVariableValue "DataInicial", DataIni
consulta.SetVariableValue "DataFinal", DataFim
19. Repita o passo anterior para criar a variável interna DataFim, referenciando o valor do Setpoint spDataFinal.
DataFim = Screen.Item("spDataFinal").Value
20. Busque, com o auxílio do AppBrowser, a Consulta1 que está dentro do E3Browser1. À direita selecione o método
SetVariableValue.
Screen.Item("E3Browser1").Item("Consulta1").SetVariableValue(VarName, Value)
22. Digite no começo da linha o texto "set consulta = ". Desse modo criamos uma variável interna de script que referencia o
objeto Consulta.
Set consulta = Screen.Item("E3Browser1").Item("Consulta1")
Consultas 103
24. O parâmetro VarName referencia o nome da variável criada na Consulta. Digite "DataInicial".
25. No parâmetro Value informe o valor que deseja passar para a variável. Neste caso, desejamos passar o valor do Setpoint
que referenciamos através da variável interna DataIni.
consulta.SetVariableValue "DataInicial", DataIni
15.4.1 KB
KB-20214: Função SQL para calcular valores máximo, mínimo e média.
104 Consultas
15.5 Anotações
Consultas 105
CAPÍTULO
16Históricos
Os Históricos são os módulos responsáveis pelo armazenamento de dados da aplicação em Banco de Dados. Permitem
armazenar dados de processos para análises futuras, no E3 ou em qualquer outra ferramenta.
Podem-se criar tantos arquivos de Histórico quantos se desejar, cada um contendo diversos tags ou expressões. Cada Histórico
pode criar ou utilizar uma tabela independente dentro do Banco de Dados, cujo armazenamento pode ser definido por Tempo
ou por Evento. É possível ainda determinar qual Banco de Dados inserido no projeto será utilizado para o armazenamento dos
dados. Para utilizar esse recurso, clique com o botão direito do mouse no nome do projeto no Explorer e selecione a opção
Inserir - Histórico.
Para criar a tabela no Histórico, é importante criar seus campos. Tais campos podem ser criados clicando em (Adicionar um
campo). Para remover algum campo indesejado, clique em (Remover os campos).
Histórico
A chave primária pode ser configurada de duas formas. Verificando na Tela do Histórico o campo da tabela que se deseja tornar
Chave Primária e habilitando-a ao clicar em , ou clicando em , que abrirá a tela de configuração.
16.2 Índices
Um Índice é um campo ou um conjunto de campos que serão previamente ordenados pelo Banco de Dados a fim de melhorar o
desempenho das consultas que utilizam esse índice. Eles são utilizados para encontrar rapidamente registros com um valor
específico em uma coluna. Sem um índice, o Banco de Dados tem de iniciar com o primeiro registro e depois ler os registros
através de toda a tabela até que ele encontre os registros relevantes. Quanto maior a tabela, maior será o custo em termos de
tempo de processamento. Se a tabela possui um índice para as colunas em questão, o Banco de Dados pode rapidamente obter
uma posição para procurar no meio do arquivo de dados sem ter que varrer todos os registros. Os tipos de índices disponíveis
são Primário, Único e Index.
Podem-se criar índices em múltiplas colunas. Um índice de múltiplas colunas pode ser considerado um vetor ordenado
contendo valores que são criados concatenando valores de colunas indexadas.
Os índices podem ser configurados através do ícone , que abre a tela de configuração, ilustrada a seguir.
106 Históricos
Editor de Índices
16.3 Exercícios
16.3.1 Histórico
1. Clique com o botão direito do mouse no item Banco de Dados e insira um novo Histórico no projeto TreinamentoE3,
nomeando-o como HistNivel.
Inserir Histórico
2. No Histórico criado, insira dois novos campos e configure-os conforme a figura a seguir.
Históricos 107
Configuração dos campos
3. Clique sobre a opção Propriedades do Histórico , e na aba Histórico configure as seguintes propriedades:
Banco de dados: BancoDados
Tabela: Nivel
Tempo de gravação: 2000 ms
4. Clique em Gerar Tabela. Deve aparecer a mensagem "A estrutura de tabelas foi criada com sucesso".
16.4.1 KB
KB-24714: Limite de campos de um Histórico.
108 Históricos
16.5 Anotações
Históricos 109
CAPÍTULO
17E3Chart
O objeto E3Chart é um componente ActiveX criado especialmente para trabalhar em conjunto com o E3. Com ele, é possível
exibir gráficos com Tags variando em tempo real e também mostrar dados históricos gravados em um Banco de Dados.
Cada sequência de dados é representada no E3Chart através de Penas. Para cada Pena são associados dados, que podem ser
Tags ou campos de Consultas. É possível criar vários eixos com escalas diferentes para serem associados aos dados das Penas.
E3Chart
Para inserir esse objeto na Tela, clique com o botão direito do mouse e selecione a opção Inserir - E3Chart.
110 E3Chart
Propriedades da Pena
17.1.2 Histórica
O objeto Consulta também é usado para mostrar valores históricos no E3Chart. Através da aba Consultas é possível adicionar,
excluir ou configurar as Consultas. Para criar uma Pena Histórica, é necessário que a Consulta esteja previamente criada. Para
tanto, na aba Dados das propriedades da Pena, selecione a opção Histórica, disponível no item Tipo de pena e defina a
Consulta. Logo após, defina os campos da Consulta nos itens Campo do eixo vertical e Campo do eixo horizontal.
17.2 Exercícios
Vamos fazer um gráfico com Penas de Tempo Real e Históricas com as variáveis de nível. Através de um botão, vamos escolher
entre o gráfico exibir o eixo horizontal como tempo real ou histórico.
17.2.1 TelaGrafico
1. Insira no projeto uma nova Tela, chamada TelaGrafico, a ser aberta no Divisor Area_Central. Marque a opção
Configurar como Tela inicial do Divisor.
2. Na TelaMenu, insira um botão para abrir a TelaGrafico.
E3Chart 111
17.2.2 E3Chart
1. Posicione um E3Chart na TelaGrafico.
17.2.3 Escala
Os maiores valores são do Tag Nivel, que varia de 0 a 100, portanto vamos alterar a escala vertical para exibir os valores nessa
faixa.
1. Na aba Eixos, selecione o EixoVertical e clique em Configurar.
2. Na aba Escala, configure os limites da escala numérica entre 0 e 100.
17.2.4 Consulta
Como desejamos visualizar os dados históricos, precisamos configurar uma Consulta.
1. Acesse as propriedades do E3Chart, aba Consultas.
2. Clique no botão Adicionar. Selecione "BancoDados" no campo Nome do Servidor, e a seguir escolha a tabela Nivel.
3. Selecione os campos E3TimeStamp, Nivel1 e Nivel2.
4. Visualize o resultado da consulta na aba Visualizar e clique em OK.
17.2.5 Penas
1. Na aba Penas, clique em Adicionar.
2. Com um duplo-clique sobre a Pena, acesse suas propriedades.
3. Troque o nome da Pena para Nivel1.
Propriedades da Pena
4. Na aba Dados, deixe a opção Tipo de pena em Tempo Real & Histórica.
5. Na opção Link do eixo vertical, selecione a propriedade Value do Tag Nivel1 da pasta Dados.
6. No item Parte Histórica, preencha os campos a seguir:
Consulta local: Consulta1
Campo do eixo vertical: Nivel1
Campo do eixo horizontal: E3TimeStamp
Dados da Pena
7. Repita os passos anteriores para a Pena Nivel2.
112 E3Chart
17.2.6 Legenda
1. Na aba Legenda, selecione a opção Mostrar legenda, tamanho 60, e adicione as colunas que preferir.
2. Configure a coluna Valor do tag X para mostrar o valor no formato "HH:mm:ss".
4. Busque, com o auxílio do AppBrowser, o E3Chart que está dentro da TelaGrafico, coleção Pens, Pena Nivel1, e à
direita selecione a propriedade Visible. Clique em Colar.
5. Digite " = Value". Como estamos escrevendo o script na Caixa de Seleção, ao digitar "Value" fazemos referência ao valor do
próprio objeto.
6. Configure o valor inicial (Value) da Caixa de Seleção para True.
7. Repita os passos anteriores para a Pena Nivel2.
Intervalo de tempo
4. Escolha um intervalo inicial pequeno (cinco minutos), assim a Tela será carregada rapidamente.
E3Chart 113
17.2.9 Intervalo do Gráfico
1. Para podermos escolher a data inicial e data final visualizada no E3Chart, copie da TelaEventos os Setpoints com a data
inicial e data final para a TelaGrafico.
Associação Bidirecional
3. No Setpoint com a data final, crie uma Associação Bidirecional com a propriedade HorScaleEnd do E3Chart.
2. Busque, com o auxílio do AppBrowser, o E3Chart dentro da TelaGrafico e à direita a propriedade HorScaleBegin.
3. Digite " = Now - 10 / 1440".
4. Busque, com o auxílio do AppBrowser, o E3Chart dentro da TelaGrafico e à direita a propriedade HorScaleEnd.
5. Digite " = Now".
17.3.2 KB
KB-18257: Criando um gráfico com pontos digitais.
114 E3Chart
17.4 Anotações
E3Chart 115
CAPÍTULO
18Relatórios
O Relatório é um componente ActiveX chamado ActiveReport, que permite a visualização e impressão de valores instantâneos
de variáveis do sistema e dados armazenados em Banco de Dados (Alarmes, Históricos, Consultas e Fórmulas). Para utilizar o
Relatório, clique com o botão direito do mouse no item Visualização - Relatórios do Organizer, em modo Domínio, e selecione a
opção Inserir Relatório em, e em seguida o nome do projeto desejado.
O Relatório também utiliza o objeto Consulta. Este objeto permite que seja especificada a origem dos dados do Banco de Dados
que serão visualizados no relatório.
Um Relatório contém várias seções. Cada seção do Relatório contém um grupo de controles que são processados e impressos ao
mesmo tempo, como uma unidade.
Seções do Relatório
Um Relatório é estruturado da seguinte forma:
Estrutrura do Relatório
SEÇÃO DESCRIÇÃO
Report Header Esta seção é impressa no início do Relatório. Utilizada para imprimir
títulos de Relatórios, tabelas de somas, gráficos ou qualquer outra
informação que necessite aparecer somente uma vez no início do
Relatório.
Report Footer Esta seção é impressa no final do Relatório. Utilizada para imprimir
uma soma de um Relatório, totais gerais ou qualquer outra
informação que necessite ser impressa somente uma vez no final do
Relatório.
Page Header Esta seção é impressa no topo de cada página do Relatório. É a
primeira seção impressa na página, exceto quando essa página
contém a seção Report Header. Utilizada para imprimir cabeçalhos de
colunas, números de páginas, títulos de páginas ou qualquer outra
informação que necessite ser impressa no início de cada página.
116 Relatórios
SEÇÃO DESCRIÇÃO
Page Footer Esta seção é impressa uma vez na base de cada página no Relatório.
Usada para imprimir totais de páginas, números de páginas ou
qualquer outra informação que necessite ser impressa uma vez na
base de cada página.
Detail Esta seção é o corpo do Relatório que imprime uma vez para cada
registro da fonte de dados.
Group Header, Group Footer Um Relatório pode ter múltiplos grupos aninhados. Cada grupo possui
uma seção Header e uma seção Footer. A seção Header é impressa
antes de qualquer seção Detail no grupo. A seção Footer é impressa
depois da seção Detail do grupo.
A barra de ferramentas Relatório contém três itens de configuração que permitem editar, visualizar o Relatório e criar scripts.
Estes itens são os seguintes:
Prévia de Impressão (Preview): Através desta opção, é possível visualizar uma prévia da impressão do Relatório. Assim é
possível verificar configurações de margem, figuras, etc.
Configurações do Relatório (Report Settings): Nestas configurações pode-se determinar Configurações de Página,
Configurações de Impressão, Configurações da Grade e Estilo do Relatório
Editor de Scripts: Através desta opção, é possível editar scripts para o Relatório. No campo Object é necessário especificar
o objeto onde se deseja criar o script e, no campo Events, o evento do Relatório em que ocorrerá a ação
Linha: Objeto básico de reta que liga dois pontos quaisquer. Permite o desenho de retas, através de dois pontos
especificados na sua criação ou em polígonos
Retângulo: Este objeto permite o desenho de retângulos, utilizando toda a largura ou altura do objeto. Criado a partir de
dois vértices
Retângulo Arredondado: Retângulo criado através de dois vértices com a opção dos cantos serem arredondados a partir
de um fator de arredondamento. Ao ser inserido ou editado, exibe um pequeno ponto próximo ao canto superior esquerdo
do objeto, que permite modificar o fator de arredondamento
Elipse: Este objeto permite o desenho de círculos e elipses, utilizando toda a largura ou altura e definindo o centro do
círculo no centro do retângulo
Figura: Este objeto permite mostrar imagens que estejam armazenadas em arquivos, estejam elas dentro ou fora do
arquivo do aplicativo
Texto: Possibilita a criação de um texto. Ao definir a área na Tela, pode-se digitar diretamente o texto desejado, que
aceita também múltiplas linhas
Campo de Dados: Através do objeto Campo de Dados, é possível associar um campo da tabela no Banco de Dados. Este
campo é especificado na propriedade DataField
Código de Barras: Permite gerar uma figura que converte uma sequência de números e caracteres em um código de
barras. Este código é uma representação numérica ou alfanumérica, utilizada para facilitar diferentes processos. Esse código é
decifrado através de scanners, canetas e equipamentos de leitura óptica
Quebra de Página: É um ponto em que uma página termina e outra começa no Relatório. Por exemplo, pode-se forçar
uma quebra de página para assegurar que o título de um capítulo comece sempre em uma nova página
Tabela: É um objeto composto por linhas e colunas ondes são inseridos textos ou gráficos. As tabelas nos Relatórios são
usadas para organizar e apresentar a informação. Pode-se também usar tabelas para criar layouts de página
Relatórios 117
E3Chart: Este objeto é utilizado para visualizar os dados do Relatório em formato gráfico. Maiores informações estão
descritas no capítulo sobre o E3Chart
/ Enviar para frente / Enviar para trás: Através destes botões, é possível enviar um objeto para frente ou para trás de
outro. Ao escolher as opções Enviar para frente ou Enviar para trás, o objeto selecionado será colocado na primeira ou na
última posição na ordem de sobreposições
NOTA: A opção Impressora do ícone do E3 Server na Barra de Tarefas exibe a lista das impressoras encontradas local ou remotamente, e
permite que o usuário escolha uma para ser usada pelo E3 Server.
18.2 Exercícios
Será feito um Relatório onde será impresso o gráfico da Tela e em seguida todos os dados exibidos no gráfico.
18.2.2 Imprimir
Antes de exportar o Relatório, vamos ter a possibilidade de visualizar a impressão.
1. Na TelaGrafico, insira um Botão de Comando com o texto "Imprimir".
2. Crie um script no evento Click que utiliza o Pick Imprimir Relatório. Selecione o RelatorioGrafico e escolha Tela na
opção Saída.
18.2.3 Exportar
Para o usuário escolher o nome e diretório do arquivo que será gerado, abriremos uma caixa de diálogo.
1. Insira um botão Imprimir na TelaGrafico e altere o texto para "Exportar".
2. Crie o seguinte script no evento Click do botão:
If Application.ShowFilePicker(False, NomeArquivo,"pdf", _
128, "Arquivos PDF|*.pdf|Todos os arquivos|*.*") Then
Set Report = Application.LoadReport("RelatorioGrafico")
Report.Export "PDF", NomeArquivo
End If
118 Relatórios
8. As caixas de diálogo de arquivos permitem filtros para facilitar a busca por tipos de arquivos.
Tipos de Arquivos
9. O filtro é sempre um par de Strings separadas pelo caractere "|", sendo que o primeiro item é o nome que aparecerá para o
usuário e o segundo é um identificador do Windows.
10. Substitua o parâmetro Filter por "Arquivos PDF|*pdf | Todos os arquivos| *.*".
11. O arquivo só pode ser gerado se o usuário clicar em Salvar. Se o usuário cancelar a ação, nada deve acontecer. No início do
comando ShowFilePicker, digite "If" e no final digite "Then".
12. Para exportar o Relatório busque, com o auxílio do AppBrowser, o item Tarefas - Carregar o relatório - RelatorioGrafico e à
direita o método Export.
Set Report = Application.LoadReport("RelatorioGrafico")
Report.Export([ExportFilter], [ExportFileName])
13. Substitua o parâmetro ExportFilter por "PDF" e o parâmetro ExportFileName pela variável NomeArquivo, criada
anteriormente.
14. Teste as novas funcionalidades da aplicação.
Configurar Consulta
3. Consulte todos os campos que desejar da tabela Alarms.
4. Crie um filtro para o campo E3TimeStamp, conforme a figura a seguir.
Relatórios 119
Configurar Filtro
5. Teste a Consulta informando valores para as variáveis criadas.
18.2.6 Detail
A seção Detail é o corpo do Relatório, impressa uma vez para cada registro da fonte de dados. Para esta aplicação, serão
mostrados os dados de alarmes.
1. Na seção Detail, insira um Campo de Dados para cada campo, alinhando-o com o seu respectivo texto. Nas
propriedades DataField e Text, digite exatamente o nome da coluna configurada na Consulta.
2. Para visualizar o Relatório, clique em Gerar Relatório .
4. Após o Texto "de", insira um Campo de Dados e configure-o para mostrar o número total de páginas:
SummaryType: 4 - ddSMPageCount
SummaryRunning: 0 - None
120 Relatórios
Seção Page Footer
Propriedade DataField
5. Insira dois objetos Texto, "Relatório gerado" e "pelo usuário" conforme a figura a seguir.
18.2.9 Imprimir
1. Para visualizar o Relatório em tempo de execução, na TelaEventos copie o botão Consultar para criar um novo botão com
o texto "Imprimir".
2. No evento Click do botão, crie o script a seguir:
' Imprime o Relatório
Relatórios 121
' Visualiza a impressão
Report.PrintPreview()
3. Na linha que referencia o objeto Consulta, com o auxílio do AppBrowser, acesse Tarefas - Carregar Relatório -
RelatorioAlarmes - Consulta1.
Set Report = Application.LoadReport("RelatorioAlarmes")
Set consulta = Report.Item("Consulta1")
4. No final do script, novamente com o auxílio do AppBrowser, acesse Tarefas - Carregar Relatório e à direita o método
PrintPreview.
5. Apague a linha que faz referência ao Relatório, pois já o declaramos no início.
Report.PrintPreview()
6. Teste o método Imprimir. Só podem ser impressos os dados dentro do intervalo especificado.
122 Relatórios
18.3 Anotações
Relatórios 123
CAPÍTULO
19Fórmulas
Fórmulas são módulos destinados a armazenar e transferir conjuntos de valores para determinados agrupamentos de variáveis,
de forma a criar configurações ou setups pré-definidos, sendo basicamente uma implementação de receitas. As Fórmulas são
basicamente compostas de três partes:
Templates: Definem o tipo de dado que poderá ser armazenado em cada variável da fórmula e suas restrições. Estas
restrições permitem habilitar ou desabilitar a alteração dos valores da fórmula em tempo de execução, ou então estipular
limites para a alteração
Unidades: Definem os Tags que serão associados ao template da fórmula. É possível criar várias unidades, ou seja, vários
grupos de Tags que poderão receber os valores da fórmula
Conjuntos de Valores: São os valores que serão transferidos para os Tags, ou seja, para as unidades
As Fórmulas estão sempre ligadas a um Banco de Dados, pois precisam fazer com que seus dados (Templates, Unidades e
Conjuntos de Valores), configurados em algum momento, continuem válidos sempre que necessário. Para trabalhar com
Fórmulas é possível utilizar qualquer tipo de banco de dados, e o próprio E3 Studio ou o E3 Server cuida de criar as tabelas e
relacionamentos necessários ao uso de Fórmulas.
NOTA: Ao utilizar um banco de dados MDB (Microsoft Access), é interessante criar separadamente arquivos específicos para as Fórmulas e
para os Históricos, de forma a evitar que todos os dados se percam caso haja um problema com algum arquivo.
19.1 Exercícios
O objeto Fórmula armazenará informações sobre as cores de tintas, formadas pela combinação de vermelho, verde e azul.
19.1.2 Fórmula
1. Insira um objeto Fórmula no TreinamentoE3.
124 Fórmulas
Inserir Fórmula
2. Digite no campo Banco de Dados o texto "FormulaDB", e no campo Tabela digite "FormulaTreina".
Templates
5. Na aba Unidades, selecione uma linha qualquer da coluna Unidade1 e clique em Renomear . Troque o nome da Unidade
para Tanque1.
6. Clique em para adicionar uma nova Unidade, Tanque2.
7. Busque, nas duas Unidades, o caminho de cada propriedade dos objetos Tanque1 e Tanque2 em Dados.
Fórmulas 125
8. Na aba Valores, adicione mais Conjuntos de Valores, preenchendo as colunas com os valores que preferir.
19.2.1 KB
KB-28508: Dados carregados de fórmulas mostram valores sem casa decimal.
126 Fórmulas
Next
Fórmulas 127
19.3 Anotações
128 Fórmulas
CAPÍTULO
20Storage
O Storage é um módulo historiador do E3 desenvolvido para aperfeiçoar o uso de bancos de dados, fazendo com que uma
determinada informação seja armazenada ocupando o menor espaço possível.
Existe todo um conjunto de funcionalidades específicas para este módulo, como consultas pré-construídas e algoritmos de
compactação de dados, entre outros. Através desta ferramenta é possível recuperar com grande exatidão todas as mudanças
nas variáveis de processo, ocupando assim o mínimo de espaço no banco de dados.
O uso do Storage é fortemente recomendado para processos onde o objetivo do registro seja o acompanhamento de tendências
que necessitem manter informações essenciais ao processo. Através de um algoritmo matemático bastante difundido, o Storage
pode fornecer informações relevantes de um determinado processo ocupando menos espaço em disco do que os dados
gravados por um Histórico gravado periodicamente.
Em processos onde os dados devem ser precisos, como medições usadas para faturamento de insumos (água, energia ou gás),
ou processos onde os dados devem ser integralizados em um período, o uso de Históricos convencionais é o recomendado.
20.1 Funcionamento
A gravação no Storage é feita da seguinte maneira:
Após a definição da tabela, os dados são gravados de acordo com as configurações. Se houver variação de qualidade no Tag,
os dados também serão gravados
Os dados só não serão gravados se a variação ocorreu num tempo menor do que o mínimo programado
Conforme forem sendo obtidos novos valores para as variáveis, um algoritmo de verificação de gravação vai interpretando a
sequência e decidindo se cada ponto será ou não armazenado.
Esta verificação, entretanto, só ocorre para os campos analógicos. Para os campos de texto e digitais, basta que haja uma
mudança qualquer de valor ou de qualidade para que sejam gravados.
Para cada tipo de grandeza armazenada, é gerado automaticamente um conjunto de tabelas, um para os Tags analógicos, outro
para os textos e um terceiro para os digitais. Dessa forma, cada Storage pode gerenciar até sete tabelas (backup), caso se
especifique que os três tipos de Tags devem ser armazenados:
<NomeTabela>_Fields
<NomeTabela>
<NomeTabela>_Text
<NomeTabela>_Bit
<NomeTabela>_Backup
<NomeTabela>_Text_Backup
<NomeTabela>_Dig_Backup
20.2 Configuração
Quando o Storage é criado na Tela, é mostrada uma lista de definições dos campos de gravação.
Storage
Para efeitos de posterior consulta nos dados, toda a busca se dará através do caminho do Tag ou da propriedade que está sendo
armazenada (campo Fonte). A propriedade Nome só será utilizada caso o campo Fonte contenha uma expressão. Logo, se
expressões não estiverem sendo utilizadas no campo Fonte, não há necessidade de se importar com o nome.
Storage 129
Configuração da Consulta
O usuário pode escolher uma entre sete funções descritas a seguir para consolidação dos dados.
20.3.1 LastValue
Retorna o último valor armazenado na Base de Dados.
20.3.2 ArchivedValue
Retorna um valor armazenado em relação a um determinado instante de tempo definido na variável TimeStamp. O tipo de
relação pode ser:
Previous: valor armazenado imediatamente anterior ao timestamp fornecido
Next: valor armazenado imediatamente posterior ao timestamp
Interpolated: valor calculado a partir do valor anterior e posterior
ExactTime: valor armazenado no exato instante que foi fornecido pelo timestamp
20.3.3 TagAttribute
Retorna um atributo do Tag, que pode ser:
FieldDescription: significado ou descrição do Tag
FieldSource: caminho do Tag que está sendo armazenado
FieldType: tipo de dado (Double, Bit, String ou Integer)
FieldEU: unidades de engenharia
FieldLowEng: limite inferior
FieldHighEng: limite superior
FieldDeadBand: banda morta para gravação
FieldDeadBandUnit: unidade da banda morta (absoluta ou percentagem)
FieldMinRecTime: tempo mínimo para gravação
130 Storage
FieldMaxRecTime: tempo máximo para gravação
20.3.4 CompressedDataNValues
Retorna, para um único Tag, n valores armazenados a partir de um instante inicial.
20.3.5 CompressedDataStartEndTime
Retorna, para um único Tag, os valores armazenados entre um intervalo inicial e um intervalo final.
20.3.6 SampledData
Retorna, para um ou mais Tags, os valores interpolados (estimados) a intervalos fixos entre os instantes definidos pelas
variáveis StartTime e EndTime.
20.3.7 CalculatedData
Retorna o resultado de operações matemáticas aplicadas aos dados entre os instantes definidos pelas variáveis StartTime e
EndTime, a intervalos fixos. Os tipos de cálculos são Total, Mínimo, Máximo, Desvio Padrão, Amplitude, Média e Mediana.
20.4.1 KB
KB-31955: Storage funcionando apenas com hardkey de Studio.
Storage 131
20.5 Anotações
132 Storage
CAPÍTULO
21E3Playback
O E3Playback é um ActiveX que roda dentro do E3 Viewer ou do E3 WebViewer e que permite visualizar as telas do aplicativo
utilizando dados históricos armazenados em bancos de dados.
O E3Playback busca no banco de dados os tags referenciados nas telas e mostra valores, animações, estados e gráficos de
acordo com as informações existentes no banco de dados, no período de playback definido.
NOTA: Em modo Demo (ou com uma licença de Studio) o período permitido para playback se resume às últimas seis horas de dados
armazenados no banco.
Linha de Tempo
E3Playback 133
Lista de Eventos
Lista de Tags
A Lista de Tags pode ajudar também a determinar quais Tags necessitam ser gravados no banco de dados para permitir o
playback completo de uma Tela, bastando verificar os Tags com o sinal de proibido.
134 E3Playback
As Associações feitas entre objetos do Viewer (por exemplo, um Display mostrando o valor de um Tag Demo interno ao
Viewer) funcionam normalmente, sem nenhuma interferência do playback
O E3Chart só irá funcionar dentro do E3Playback se estiver configurado com Penas históricas. Penas de tempo real são
desabilitadas
O E3Alarm irá mostrar o sumário de alarmes de acordo com o que estiver registrado na tabela de alarmes no Banco de Dados
O E3Browser irá funcionar normalmente
21.2.1 Storage
A coluna Fonte não deve conter expressões, pois elas não poderão ser utilizadas no playback
21.2.2 Alarmes
Habilite ou configure o registro de alarmes em disco
Selecione os seguintes campos para registro (obrigatórios):
EventTime (mais EventTimeMS) ou EventTimeDbl
FullAlarmSourceName
ConditionActive
Acked
AckRequired
21.2.3 Históricos
O formato de arquivo Histórico não é o ideal para playback, pois normalmente muitos dados duplicados estão armazenados. É
recomendado o uso do Storage sempre que possível. Seguir ao máximo as seguintes recomendações:
Configurar a propriedade UserTable para False
Colocar cada Tag em um campo separado (não utilizar expressões)
Criar um índice para o campo E3TimeStamp
Utilizar tabelas com poucos campos e, se possível, adicionar um índice individual para cada campo (principalmente para os
campos com poucas variações)
Configurar a propriedade CompressedTable para True e utilizar a propriedade DeadBand no Histórico
21.3 Licenciamento
A Elipse fornece dois pacotes para o E3 Playback:
Playback Básico
Playback Avançado: Básico mais as ferramentas de Gravação de Vídeo e Captura de Tela
Os pacotes são dimensionados conforme o número de pontos (Tags e Fontes de Alarmes) armazenados no Banco de Dados. Se o
Banco de Dados tiver mais pontos que as licenças disponíveis, a montagem do Banco de Dados irá falhar e será mostrada uma
mensagem de erro.
A licença de Studio do E3 inclui uma licença de Playback Avançado sem limite de pontos, porém limitada às últimas seis horas de
dados armazenados no Banco de Dados. Em modo Demo (quando não há dispositivo de proteção) o playback também funciona
no modo Avançado sem limite de pontos, porém limitado a mostrar apenas as últimas seis horas de dados armazenados no
Banco de Dados.
21.4 Exercícios
21.4.1 TelaPlayBack
1. Insira no projeto uma nova Tela chamada TelaPlayBack, a ser aberta no Divisor _top.
2. Na TelaMenu, insira um botão para chamar a TelaPlayBack. No item Quadro, digite o nome de um Quadro inexistente
(por exemplo, "QuadroPlayBack"), para que sejam abertas duas Telas simultaneamente.
E3Playback 135
21.4.2 Configuração
1. Na TelaPlayBack, insira o objeto E3PlayBack ocupando toda a Tela.
2. Acesse suas propriedades e configure-as conforme a figura a seguir.
Propriedades do E3Playback
3. Execute a aplicação.
21.4.3 Execução
1. Clique em para entrar no modo Online. Os primeiros dados de playback serão carregados, e o relógio de playback será
posicionado no centro dos dados disponíveis.
2. Uma linha com o intervalo de dados existentes aparecerá na Linha do Tempo e a Janela de Eventos será preenchida.
Linha de Tempo
3. Escolha o evento que deseja iniciar a reprodução e clique em Play.
136 E3Playback
21.6 Anotações
E3Playback 137
CAPÍTULO
22Hot-Standby
O Hot-Standby permite a implementação do conceito de failover em um sistema supervisório. Esse conceito consiste na
possibilidade de se ter dois servidores (principal e backup) atuando um como contingência do outro, ou seja, se o servidor
principal falhar, um servidor de backup entra em ação imediatamente, sem perda da continuidade do processo. Diz-se do
servidor em espera que está em Standby.
Ao iniciar a execução do E3 que está configurado para o sistema Hot-Standby, será mostrado na Área de Notificação nos
servidores um ícone representado por uma barra amarela circulante , indicando que os Domínios estão sendo carregados.
Após alguns segundos, o E3 reconhece o servidor principal e indica a ação com um ícone representado por uma seta verde .
Este ícone determina que o servidor está em execução. O servidor Standby vai permanecer com o ícone representado por duas
barras amarelas , indicando que ele está em modo de espera (standby).
22.1.1 Arquivos
Os arquivos do Domínio devem estar na mesma localização no servidor principal e no servidor de backup. Por exemplo, se no
computador principal o Domínio e os demais arquivos (.lib, .prj, etc.) estiverem no caminho C:\Projeto1, no servidor Standby o
projeto deverá ser copiado para este mesmo caminho, ou seja, C:\Projeto1.
22.1.2 Servidores
Os servidores (principal e backup) devem estar listados na aba Servidores das opções do Domínio.
1. Para acessar as configurações do Domínio, clique no ícone do E3 Admin na Área de Notificação do Windows e selecione
o menu Domínio - Opções.
138 Hot-Standby
Aba Servidores
Hot-Standby 139
Aba Opções
Os itens descritos nas próximas seções também devem ser configurados.
Se a aplicação principal não conseguir enviar os dados para o servidor em Standby, esses dados ficarão armazenados em disco
localmente, para posterior envio (quando a comunicação entre os dois computadores for restabelecida), assegurando assim a
igualdade entre as tabelas geradas pela aplicação.
140 Hot-Standby
22.1.7 Retentive
A propriedade Retentive determina se o valor deve ser armazenado no caso de troca do servidor ativo. Assim, quando o
servidor Standby for executado, o valor será o mesmo do servidor Hot que parou. Se esta propriedade estiver em False, o valor
será ajustado para o valor inicial sempre que o Domínio for executado ou ocorrer troca do servidor ativo.
22.2.1 KB
Hot-Standby: Dúvidas Mais Frequentes (FAQ).
KB-26057: Comportamento do Viewer durante troca de servidores.
Hot-Standby 141
22.3 Anotações
142 Hot-Standby
CAPÍTULO
23Domínios Remotos
A configuração de Domínios Remotos define que haverá comunicação entre diferentes servidores e Viewers, onde uma
aplicação se destina a fornecer dados, e a outra a recebê-los. O Domínio que fornece dados a outro é chamado de Domínio
Servidor. Já o Domínio que utiliza estes dados é chamado de Domínio Cliente. A configuração de um Domínio como Domínio
Cliente não impede que ele seja ao mesmo tempo um Domínio Servidor, e vice-versa.
Com a configuração de Domínios Remotos, o Domínio Cliente poderá acessar objetos do Domínio Servidor de duas maneiras,
através de scripts ou de links. Para que a conexão entre os Domínios possa ocorrer, todos os E3 Servers envolvidos deverão
estar rodando a mesma versão do E3.
NOTA: a porta de conexão do REC e as possíveis configurações de firewall associadas também se aplicam aos Domínios Remotos.
Variável RestrictNullSessAccess
A configuração através do Registro do Windows também pode ser feita em Windows 2000, 2003 e Vista. Segundo a Microsoft, a
chave RestrictNullSessAccess especifica se o servidor vai limitar o acesso ao sistema por usuários logados sem
autenticação de nome de usuário e senha. Os valores possíveis são:
0: Acesso sem autenticação é permitido e todos os usuários podem acessar os recursos compartilhados
Em qualquer um desses casos, será necessário reiniciar a máquina para que as alterações tenham efeito. Além disso, é
necessário configurar o compartilhamento e o NTFS para aceitarem o acesso do usuário anônimo (ANONYMOUS LOGON/
LOGON ANÔNIMO) ou do usuário de rede (NETWORK/REDE). Isso é feito da seguinte maneira.
1. Selecione a pasta que contém o Domínio Servidor, e que deverá estar compartilhada.
2. Clique com o botão direito do mouse sobre ela e selecione a opção Propriedades.
3. Na aba Compartilhamento, clique em Permissões.
Propriedades da pasta
4. Adicione o usuário REDE ou o usuário LOGON ANÔNIMO, permitindo acesso para leitura à pasta e clicando após em OK.
23.3 Licenças
Tanto o E3 Server rodando o Domínio Cliente quanto o que roda o Domínio Servidor devem ter licenças específicas para
Domínios Remotos. Quando essa licença existe, o E3 Server Servidor passa a aceitar um número ilimitado de conexões externas
de outros Domínios. Da mesma forma, no caso do E3 Server Cliente, será possível estabelecer um número ilimitado de
conexões.
23.7.1 KB
KB-26842: Unificando configurações de usuários em vários Domínios.
24Exercícios de Revisão
Esta seção contém exercícios de revisão de todo o conteúdo do Tutorial.
24.1 Exercício
Uma mineradora deseja monitorar os níveis de alguns tanques. O equipamento ainda não está decidido, mas deve trazer a
informação de quatro níveis.
O gerente do setor gostaria de visualizar os dados de forma amigável ao usuário, por isso pediu que fosse desenvolvido um
supervisório com os seguintes requisitos:
Simular os valores dos quatro níveis do equipamento em falta (valores de 0 a 100)
A Tela principal deve ter uma imagem da mineração
Imagem da mineração
Nível do tanque
ALARME LIMITE
HiHi 90
Hi 70
Lo 30
LoLo 10
Gráfico de níveis
24.2 Resolução
Simular os valores dos quatro níveis do equipamento em falta (valores de 0 a 100)
1. Para simular valores, criar Tags do tipo Demo, com os limites máximo e mínimo conforme especificado.
Exibir o valor do Nivel na Tela formatada com sua unidade de engenharia igual a "%", uma casa decimal e obedecendo a
tabela de cores
1. Como serão diversos Displays iguais, a melhor opção é criar um XControl.
2. Crie um arquivo de biblioteca e insira-o no Domínio.
3. Insira um XControl e chame-o de DisplayNivel.
5. Desenhe um Display.
6. Formate o Display com a expressão '0.0 "%"'.
7. Crie uma Associação Simples com a propriedade Nivel criada na propriedade Value do Display.
8. Crie uma Associação por Tabela na propriedade ForegroundColor informando os limites e as cores desejadas. Na
9. Salve e registre-a.
10. Insira na Tela um XControl chamado DisplayNivel.
11. Faça uma Associação Simples na propriedade Nivel com o Tag desejado.
5. Acesse as propriedades da Fonte de Alarme, aba Analógico. Informe os limites e mensagens de alarmes conforme a tabela.
Em uma segunda Tela, deve ser possível visualizar os quatro níveis em um gráfico onde é possível escolher através de botões
qual a informação exibir simultaneamente
4. Acesse as propriedades do Histórico e configure o nome do Banco de Dados, nome da tabela (TabelaNivel) e tempo de
gravação (2000 ms).
Visualizar os dados armazenados no banco de dados em forma de tabela na mesma tela do gráfico
1. Insira na Tela um objeto E3Browser.
2. Acesse suas propriedades, aba Consulta e clique em Configurar.
Um relatório com os dados de nível armazenados no banco de dados deve ser exportado para PDF
1. Inserir um Relatório no projeto, chamado de RelatorioNivel.
2. Configurar a Consulta do Relatório para buscar no Banco de Dados a tabela desejada.
5. Utilizar o objeto Label para escrever o título das colunas (propriedade Caption).
6. Inserir na tela um botão com o seguinte script:
Set Report = Application.LoadReport("[RelatorioCaldeira]")
Report.Export "PDF", "RelatorioNivel.pdf"
Filial PR Filial MG
Av. Sete de Setembro, 4698/1705 Rua Antônio de Albuquerque, 156
80240-000 Curitiba - PR 7° andar Sala 705
Fone: (41) 3342-0120 30112-010 Belo Horizonte - MG
Fax: (41) 3342-0120 Fone: (31) 2511-2121
E-mail: [email protected] E-mail: [email protected]
Filial RJ USA
Av. Praia de Botafogo, 300/525 40190 Jarvis Gray Lane
22250-044 Rio de Janeiro - RJ Avon - NC - USA 27915
Fone: (21) 2158-1015 Fone: +1 (252) 995-6885
Fax: (21) 2158-1099 Fax: +1 (252) 995-5686
E-mail: [email protected] E-mail: [email protected]
Alemanha Taiwan
D-67714 Waldfischbach Deutschland 9F., N.12, Beiping 2nd St., Sanmin Dist.
Fone: +49 (0) 6333-4439 807 Kaohsiung City - Taiwan
Fax: +49 (0) 6333-2790045 Fone: +886 (7) 323-8468
E-mail: [email protected] Fax: +886 (7) 323-9656
E-mail: [email protected]
www.elipse.com.br
[email protected]