fundamentos e programacao ifix 2[1].6

582
Apostila do Treinamento 154 Fundamentos do iFIX Intellut on ® ªCopyright 2002, Aquarius Automação Industrial Ltda. Todos Direitos Reservados

Upload: carloscoelho2010

Post on 27-Jun-2015

2.208 views

Category:

Documents


80 download

TRANSCRIPT

Page 1: Fundamentos e Programacao iFix 2[1].6

Apostila do Treinamento 154

Fundamentos do iFIX

Intellut on ®

Copyright 2002, Aquarius Automação Industrial Ltda.Todos Direitos Reservados

Page 2: Fundamentos e Programacao iFix 2[1].6
Page 3: Fundamentos e Programacao iFix 2[1].6

Treinamento iFIX ______________________________________________________Versão 2.6

CopyrightCopyright 2000, Intellution, Inc. Todos os direitos reservados. Este material de treinamentonão pode ser reproduzido ou transmitido, sob qualquer forma ou meio, sem conhecimento prévioe aprovação por escrito da Intellution, Inc.

Marca Registrada© 2000 Intellution, Inc. Todos os Direitos Reservados. Intellution é uma marca registrada.Todos os nomes de produtos são marcas da Intellution, Inc. Todos os outros nomes sãopropriedade de seus respectivos fabricantes.

Microsoft® Visual Basic® Technology. © 1996, Microsoft Corporation. Todos os DireitosReservados.

Versão da Apostila para Português:Equipe de Treinamento e DocumentaçãoAquarius Automação Industrial Ltda.

Versão Fevereiro/2002

Impressa no Brasil.

I n t e l l i g e n t S o l u t i o n sOne Edgewater Drive, Norwood, MA 02062www.intellution.com

A u t o m a ç ã o I n d u s t r i a lRua Sílvia, 110 - 6º andar

CEP 01331-902 - São Paulo – SPwww.automacao.com.br

Page 4: Fundamentos e Programacao iFix 2[1].6
Page 5: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. i

Índice ______________________________________________________

Apostila de Treinamento do Curso 154

Primeiro e Segundo Dias ....................................................................... ix

Terceiro e Quarto Dias .......................................................................... x

Introdução ........................................................................................... xi

1. Introdução ao iFIX......................................................................... 1-1

1.1. Características do iFIX........................................................ 1-3

1.2. Perfil do Produto ................................................................. 1-4

1.3. Arquitetura Básica............................................................... 1-6

1.4. Família Intellution Dynamics .............................................. 1-16

1.5. Exercício 1.......................................................................... 1-18

1.6. Questões de Revisão ........................................................... 1-34

2. Introdução aos Objetos Gráficos ................................................... 2-1

2.1. WorkSpace .......................................................................... 2-3

2.2. Objetos Gráficos ................................................................. 2-6

2.3. Descrição da Aplicação Exemplo ........................................ 2-12

2.4. Exercício 2.......................................................................... 2-14

2.5. Questões de Revisão ........................................................... 2-23

3. Animação de Objetos ..................................................................... 3-1

3.1. Propriedade dos Objetos (Property Window) ....................... 3-4

3.2. Animações de Objetos......................................................... 3-63.2.1. Assistentes de Animação ............................................ 3-83.2.2. Expression Builder ..................................................... 3-123.2.3. Caixa de Diálogo Animations ..................................... 3-16

3.3. Datalink .............................................................................. 3-20

3.4. Exercício 3.......................................................................... 3-22

3.5. Questões de Revisão ........................................................... 3-32

Page 6: Fundamentos e Programacao iFix 2[1].6

iFIX

Copyright (c) 2002, Intellution, Inc. ii

Índice ______________________________________________________

4. WorkSpace ..................................................................................... 4-1

4.1. WorkSpace em Run Mode ................................................... 4-3

4.2. Personalização do WorkSpace............................................. 4-4

4.3. Tamanho da Tela................................................................. 4-8

4.4. Usando o Sistema de Help................................................... 4-12

4.5. Documentação Eletrônica.................................................... 4-14

4.6. Biblioteca de Objetos (Dynamos) ........................................ 4-18

4.7. Exercício 4.......................................................................... 4-20

4.8. Questões de Revisão ........................................................... 4-27

5. Ferramentas Gráficas Adicionais .................................................. 5-1

5.1. Assistentes de Programação (Experts) ................................. 5-4

5.2. Objetos de Data e Hora ....................................................... 5-6

5.3. Bitmaps............................................................................... 5-8

5.4. Assistente para Entrada de Dados........................................ 5-10

5.5. Variáveis e Tabelas Globais ................................................ 5-12

5.6. Exercício 5.......................................................................... 5-16

5.7. Questões de Revisão ........................................................... 5-26

6. Configuração do Sistema ............................................................... 6-1

6.1. Requisitos Mínimos de Hardware ....................................... 6-3

6.2. Requisitos Mínimos de Software ......................................... 6-4

6.3. Requisitos de Rede.............................................................. 6-5

6.4. Verficação dos Componentes Habilitados na Chave ............ 6-6

6.5. Utilitário de Configuração do Sistema (SCU)...................... 6-86.5.1. Configuração de Diretórios......................................... 6-106.5.2. Configuração de Alarmes e Mensagens ...................... 6-126.5.3. Configuração da Rede ................................................ 6-166.5.4. Configuração das Tarefas ........................................... 6-18

6.6. Questões de Revisão ........................................................... 6-20

Page 7: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. iii

Índice ______________________________________________________

7. Drivers de Comunicação ................................................................ 7-1

7.1. Revisão sobre o SCU .......................................................... 7-3

7.2. Configuração da Estação SCADA....................................... 7-4

7.3. Configuração do Driver de Comunicação ............................ 7-6

7.4. Drivers da Versão 6.x.......................................................... 7-87.4.1. Configuração do Canal ............................................... 7-127.4.2. Configuração do Dispositivo ...................................... 7-147.4.3. Configuração do “Poll Record” .................................. 7-16

7.5. Drivers da Versão 7.x (Padrão OPC) ................................... 7-187.5.1. Configuração do Canal ............................................... 7-247.5.2. Configuração do Dispositivo ...................................... 7-267.5.3. Configuração do Bloco de Dado ................................. 7-28

7.6. Ferramentas para Monitorar os Drivers................................ 7-30

7.7. Questões de Revisão ........................................................... 7-34

8. Blocos Digitais da Base de Dados .................................................. 8-1

8.1. Introdução aos Blocos da Base de Dados............................. 8-3

8.2. Bloco de Entrada Digital ..................................................... 8-4

8.3. Bloco de Saída Digital......................................................... 8-12

8.4. Exercício 8.......................................................................... 8-14

8.5. Questões de Revisão ........................................................... 8-24

9. Blocos Analógicos da Base de Dados ............................................. 9-1

9.1. Revisão sobre Blocos da Base de Dados.............................. 9-3

9.2. Bloco de Entrada Analógica ................................................ 9-4

9.3. Bloco de Alarme Analógico ................................................ 9-12

9.4. Bloco de Saída Analógica ................................................... 9-14

9.5. Exercício 9.......................................................................... 9-16

9.6. Questões de Revisão ........................................................... 9-25

Page 8: Fundamentos e Programacao iFix 2[1].6

iFIX

Copyright (c) 2002, Intellution, Inc. iv

Índice ______________________________________________________

10. Blocos Secundários da Base de Dados ........................................... 10-1

10.1. Revisão sobre Blocos da Base de Dados.............................. 10-3

10.2. Bloco de Cálculo (CA) ........................................................ 10-4

10.3. Bloco de Evento (EV) ......................................................... 10-7

10.4. Bloco de Tendência (ETR)..................................................10-10

10.5. Configuração do Gráfico .....................................................10-12

10.6. Exercício 10........................................................................10-18

10.7. Questões de Revisão ...........................................................10-29

11. Scheduler ....................................................................................... 11-1

11.1. Schedules Baseados em Tempo ........................................... 11-4

11.2. Schedules Baseados em Evento ........................................... 11-8

11.3. Configuração do Scheduler .................................................11-10

11.4. Executando os Schedules.....................................................11-12

11.5. Exercício 11........................................................................11-16

11.6. Questões de Revisão ...........................................................11-24

12. Base de Dados do Processo............................................................. 12-1

12.1. Revisão sobre Blocos da Base de Dados.............................. 12-3

12.2. Gerenciador da Base de Dados (Database Manager)........... 12-812.2.1. Assistente para Gerar Blocos ......................................12-1112.2.2. Propriedades do Database Manager ...........................12-1212.2.3. Opções do Database Manager....................................12-1612.2.4. Personalização do Database Manager ........................12-1812.2.5. Importando e Exportando a Base de Dados.................12-20

12.3. Bloco de Programa ..............................................................12-22

12.4. Questões de Revisão ...........................................................12-26

Page 9: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. v

Índice ______________________________________________________

13. Introdução à Programação ............................................................ 13-1

13.1. Conceitos Iniciais sobre VBA.............................................. 13-4

13.2. Usando o VBA no iFIX....................................................... 13-6

13.3. Usando o Editor de VBA.....................................................13-12

13.4. Ferramentas de Programação...............................................13-14

13.5. VBA versus Bloco de Programa ..........................................13-16

13.6. Exercício 13........................................................................13-18

13.7. Questões de Revisão ...........................................................13-31

14. Alarmes........................................................................................... 14-1

14.1. Alarmes e Mensagens.......................................................... 14-3

14.2. Estratégia de Alarme ........................................................... 14-414.2.1. Local das Áreas de Alarme ......................................... 14-514.2.2. Base de Dados das Áreas de Alarme ........................... 14-614.2.3. Formato Padrão de Alarme ......................................... 14-814.2.4. Áreas Comuns de Alarme ...........................................14-1014.2.5. Configurando os Serviços de Alarmes ........................14-1214.2.6. Configuração de Mensagens .......................................14-16

14.3. Reconhecimento de Alarme.................................................14-18

14.4. Questões de Revisão ...........................................................14-20

15. Ferramentas Gráficas Adicionais .................................................. 15-1

15.1. Sumário de Alarmes............................................................ 15-4

15.2. Controles ActiveX............................................................... 15-8

15.3. Grupos de Tags ...................................................................15-12

15.4. Exercício 15........................................................................15-18

15.5. Questões de Revisão ...........................................................15-28

Page 10: Fundamentos e Programacao iFix 2[1].6

iFIX

Copyright (c) 2002, Intellution, Inc. vi

Índice ______________________________________________________

16. Coleta de Dados Históricos ............................................................ 16-1

16.1. Organização dos Arquivos de Dados Históricos .................. 16-4

16.2. Configuração da Coleta de Dados Históricos (HTA) ........... 16-6

16.3. Coletor de Dados Históricos (HTC).....................................16-10

16.4. Tendência de Dados Históricos (Gráficos)...........................16-14

16.5. Exercício 16........................................................................16-20

16.6. Questões de Revisão ...........................................................16-28

17. Blocos de Registro .......................................................................... 17-1

17.1. Revisão sobre Blocos da Base de Dados.............................. 17-3

17.2. Bloco de Registro Analógico............................................... 17-4

17.3. Bloco de Registro Digital .................................................... 17-8

17.4. Questões de Revisão ...........................................................17-10

18. Programas Adicionais .................................................................... 18-1

18.1. Revisão sobre VBA............................................................. 18-3

18.2. Caixas de Mensagens .......................................................... 18-6

18.3. Personalização das Barras de Ferramentas........................... 18-8

18.4. Usando Formulários VBA...................................................18-12

18.5. Exercício 18........................................................................18-16

18.6. Questões de Revisão ...........................................................18-23

Page 11: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. vii

Índice ______________________________________________________

19. Ferramentas de Diagnóstico e Otimização do Sistema ................. 19-1

19.1. Intellution na Internet .......................................................... 19-3

19.2. Otimização das Telas .......................................................... 19-4

19.3. Otimização de Driver e Base de Dados................................ 19-8

19.4. Ferramentas de Diagnóstico de Falha para Driver................19-12

19.5. Ferramentas de Diagnóstico de Falha para Rede..................19-14

19.6. Sugestões para Diagnosticar Falhas .....................................19-16

20. Segurança ....................................................................................... 20-1

20.1. Estratégia de Segurança....................................................... 20-3

20.2. Configuração da Segurança ................................................. 20-4

20.3. Áreas de Segurança ............................................................. 20-6

20.4. Grupo de Usuários .............................................................. 20-8

20.5. Conta de Usuário.................................................................20-10

20.6. Conexão Automática ...........................................................20-12

20.7. Habilitando a Segurança......................................................20-14

20.8. Conectando-se no Sistema de Segurança .............................20-16

20.9. Audit Trail ..........................................................................20-18

20.10. Questões de Revisão ...........................................................20-20

Apêndices

A. Glossário..................................................................................... A-1

B. Blocos da Base de Dados do Processo........................................ B-1

C. Campos dos Blocos da Base de Dados....................................... C-1

Page 12: Fundamentos e Programacao iFix 2[1].6

iFIX

Copyright (c) 2002, Intellution, Inc. viii

Índice ______________________________________________________

página em branco

Page 13: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. ix

Primeiro e Segundo Dias ______________________________________

Capítulo 1 Capítulo 6Visão Geral Configuração do Sistema

Perfil do Produto Requerimentos do SistemaArquitetura do Sistema Componentes Disponíveis

SCU

Capítulo 2Introdução aos Objetos Gráficos Capítulo 7

WorkSpace Drivers de ComunicaçãoDesenvolvimento de telas Drivers da versão 6.x

Drivers da versão 7.xMonitorando os drivers

Capítulo 3Animação de Objetos

Animação de objetos na tela Capítulo 8Link de dados Blocos Digitais

Bloco de entrada digitalBloco de saída digital

Capítulo 4WorkSpace

Configuração do WorkSpace Capítulo 9Entendendo o tamanho da tela Blocos AnalógicosSistema de Help Bloco de entrada analógicaDocumentação eletrônica Bloco analógico de alarmeUsando os dínamos Bloco de saída analógica

Capítulo 5 Capítulo 10Ferramentas Gráficas Adicionais Blocos Secundários

Assitentes de programação Bloco de cálculoUsando bitmaps na tela Bloco ETRFerramenta para entrada de dados Bloco de eventoUsando variáveis globais Gráfico na tela

Page 14: Fundamentos e Programacao iFix 2[1].6

iFIX

Copyright (c) 2002, Intellution, Inc. x

Terceiro e Quarto Dias ________________________________________

Capítulo 11 Capítulo 16Schedule Arquivamento de Dados

Baseado em tempo Configurando a coleta históricaBaseado em evento Visualizando os dados coletados

Capítulo 12 Capítulo 17Usando a Base de Dados Blocos Adicionais da Base de Dados

Gerenciador da Base de Dados Bloco de Registro AnalógicoBloco de Programa Bloco de Registro Digital

Capítulo 13 Capítulo 18Introdução à Progamação Programação Avançada

VBA Usando a caixa de mensagensExemplos de programas Personalizando barras de ferramentasUsando o editor de VBA Usando formuláriosVBA versus tag de programa

Capítulo 14 Capítulo 19Alarmes Otimização e Diagnóstico de Falha

Estratégia de alarmes www.intellution.comConfiguração dos serviços de alarme Otimização de telasFiltragem dos alarmes Otimização de driversReconhecimento de alarmes Otimização da base de dados

Diagnóstico de falha do driverDiagnóstico de falha de rede

Capítulo 15Ferramentas Gráficas Adicionais

Sumário de alarmes Capítulo 20Usando os controles ActiveX SegurançaGrupos de tags Estratégia de segurança

Configuração do sistema de segurança

Page 15: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. xi

Introdução __________________________________________________

Descrição do CursoEste curso oferece um bom nível de conhecimento do iFIX. O curso foi desenvolvido paranovos usuários, ou seja, o material do curso assume que o aluno não tenha nenhumconhecimento sobre o software da Intellution.

A estrutura do curso conta com a realização de exercícios, os quais farão o desenvolvimentode uma aplicação usando a maioria dos componentes do software.

PúblicoEste curso foi desenvolvido para engenheiros de processo, de automação ou instrumentação eintegradores de sistema, os quais irão desenvolver, configurar e usar aplicações com osistema iFIX.

Pré-Requisitos

• Familiaridade com computadores e Microsoft Windows NT.

• Conhecimentos de aplicações de controle de processo.

• Familiaridade com outros softwares da Intellution é interessante, entretanto nãonecessária.

Duração do CursoQuatro (4) dias.

Page 16: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-1

1. Introdução do iFIX _________________________________________

Capítulo 1

Introdução do iFIX

Page 17: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-2

1. Introdução do iFIX _________________________________________

Objetivos do Capítulo

Este capítulo oferece uma visão geral sobre o software de automação iFIX, bem como definição dasestações e arquitetura do sistema.

O capítulo está organizado nos seguintes tópicos:

• Funcionalidades do iFIX

• Características do produto

• Arquitetura do sistema

Para maiores informações sobre termos utilizados ao longo do curso, consulte o glossário de termoslocalizado no apêndice da apostila.

Page 18: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-3

1.1. Características do iFIX ___________________________________

A. Introdução

• iFIX é um software de automação industrial que fornece dados em tempo real paramonitoração, controle e para outros aplicativos

B. As funções básicas do iFIX são:

• Aquisição de dados

- Comunicação direta com dispositivos de entrada/saída da planta

- Interface com dispositivos de hardware através de pontos de entrada/saída

• Gerenciamento de dados

- Habilidade de processar e manipular dados aquisitados

- Abrange vários componentes, incluindo:

◊ monitoramento do processo (representação gráfica), controlesupervisório, alarmes, relatórios e armazenamento de dados

C. Tipos de Estações (ou Nós)

• Um computador executando o software iFIX é chamado de estação ou nó

• Um servidor SCADA (Supervisory Control And Data Acquisition) é uma estação quebusca dados diretamente do hardware do processo:

- Comunica com o hardware do processo através do software de um driver decomunicação

- Carrega e atualiza a base de dados do processo

- Um servidor SCADA “cego” (Server Only) não utiliza representação gráficadeixando livre recursos da máquina para as funções de aquisição de dados egerenciamento de rede

• Um iClient é uma estação que não realiza funções de SCADA

- Recebe dados dos Servidores SCADA através da rede

- Possui interface gráfica, mostra dados armazenados e pode gerar relatórios

- Também chamada de estação VISTA ou estação IHM

◊ IHM – Interface Humano-Máquina

• HMI Pak é uma estação que contém as funções do SCADA e iClient

- Comunica com o hardware do processo através de driver de comunicação emostra também interfaces gráficas, mostra dados armazenados e gerarelatórios.

- Também pode receber dados de outros Servidor SCADA através da rede.

Page 19: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-4

1.2. Perfil do Produto _________________________________________

D. Estações da Rede

• Estação Stand-alone

- Qualquer nó que não comunica com outros nós da rede

- A Figura 1-1 mostra um servidor SCADA sem rede (stand alone)

- A Figura 1-2 mostra uma arquitetura distribuída de iFIX

• Estação Local

- Descreve o nó em que se está trabalhando

• Estação Remota

- Em um sistema distribuído, um nó que não seja o nó local

- Pode também referenciar um nó sendo acessado via modem

E. Opções Adicionais de Estações

• Estação Read-only

- nó somente de leitura

- não permite modificações gráficas ou na base de dados do processo

- não permite modificar o processo ou reconhecimento de alarmes

• Estação Run-time

- não permite modificações gráficas ou na base de dados do processo

- arquivos pré-configurados são instalados nestes nós

- não é necessariamente somente de leitura

- nós que não são run-time são referenciados como nós de Desenvolvimento

Process Hardware

SCADA ServerPrinter

Figura 1-1: Exemplo de Configuração Stand-alone

Page 20: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-5

1.2. Perfil do Produto ________________________________________

ProcessHardware

Printer

ProcessHardware

ProcessHardware

HMI PakSCADAServer

iClient iClient iClient iClient

Printer

Figura 1-2: Exemplo de Configuração Distribuída

Page 21: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-6

1.3. Arquitetura Básica _______________________________________

A. Dados de Processo

• O iFIX é usado em conjunto com a instrumentação do processo de uma planta

• Os sensores e controladores enviam dados para serem registrados no hardware deprocesso

- normalmente este dispositivo de hardware é um CLP® - Controlador LógicoProgramável

• O software iFIX adquire dados do hardware do processo

B. Drivers I/O

• O iFIX se comunica com o CLP através de um driver de comunicação

• Cada driver de comunicação suporta hardwares específicos

• Funções do driver de comunicação:

- leitura (e escrita) de dados do dispositivo de entrada/saída

- transferência de dados de/para endereços na Tabela Imagem do Driver (DIT-Driver Image Table)

- a DIT é referenciada também como a Poll Table

• Um driver coleta dados no formato de poll records

- os poll records são especificados pelos endereços dos registros do CLP

- um poll record pode ser um ponto simples ou um conjunto de pontos

- um poll record tem, geralmente, um mesmo tipo de dado

- Exemplo: 20 pontos inteiros contínuos podem ser configurados como um pollrecord

• A guia I/O Control permite monitorar e controlar os drivers de comunicação- ele faz parte do Mission Control, o qual será discutido em capítulos futuros

C. DIT (Driver Image Table)

• Área de memória da estação SCADA onde o driver de comunicação armazena osdados dos poll records

- A taxa com que cada poll record da DIT é atualizada é chamada de Poll Time

• Exemplo:- A Figura 1-3 mostra dois drivers de comunicação enviando dados para a DIT

(neste exemplo são necessários dois drivers pois existem dois diferentesvendedores de hardware de processo).

Page 22: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-7

1.3. Arquitetura Básica _______________________________________

Hardware do Processo (vendedor B)

DIT (Tabela Imagem do Driver)

(B)

Link

I/O Driver

(A)

Poll Records

I/O Driver

Hardware do Processo (vendedor A)

Figura 1-3: Arquitetura Básica (Driver de Comunicação)

Page 23: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-8

1.3. Arquitetura Básica _______________________________________

D. Funções do SAC (Scan, Alarm & Control)

• As funções do SAC incluem:

- Leitura: buscar dados da DIT (Driver Image Table) e transferi-los para a basede dados do processo (PDB - Process DataBase). Esta leitura é feita a umataxa chamada de Scan Time.

- Alarme: comparar valores da DIT com limites de alarme da base de dados egerar alarme se necessário.

- Controle: enviar comandos feitos pelo operador ou por programas para oprocesso.

• O SAC pode ser monitorado através do aplicativo Mission Control (o qual serádiscutido em capítulos seguintes).

E. Base de Dados do Processo (PDB)

• A representação do processo é feita através de tags (também chamados de blocos)

• Um tag corresponde a uma unidade de instruções que realiza uma função do processo

• Algumas funções de um tag são, por exemplo:

- Definir os limites de alarmes.

- Realizar cálculos baseados em valores específicos do processo.

- Escrever valores no hardware do processo.

• Os tags podem ser conectados para formar cadeias de tags.

- As cadeias de tags podem monitorar o processo, realizar cálculos ou entãomalhas de controle.

Page 24: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-9

1.3. Arquitetura Básica _______________________________________

DIT (Tabela Imagem do Driver)

Link

I/O

Driver

Hardware do Processo

PDB (Base de Dados

do Processo)

SAC

(Scan, Alarm, & Control)

AI

AI CA

DI

TR AO

DO

Figura 1-4: Arquitetura Básica (Base de Dados do Processo)

Page 25: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-10

1.3. Arquitetura Básica _______________________________________

F. Tela de Operador

• Uma vez os valores estando na PDB, estes podem ser mostrados graficamente

• O WorkSpace da Intellution no modo Run oferece a opção IHM

- IHM (Interface Humano-Máquina) é a interface entre operador e máquina, aqual permite interagir com o processo através da telas gráficas

• Objetos gráficos são usados para mostrar valores da base de dados

• Estes objetos podem mostrar:

- informações sobre alarmes

- informações da base de dados

- informações específicas de um tag

• A Figura 1-5 mostra um exemplo usando um link de dados (Data Link)

Page 26: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-11

1.3. Arquitetura Básica _______________________________________

DIT (Tabela Imagem do

Driver)

Link

I/O

Driver

Hardware do Processo

PDB (Base de Dados

do Processo)

SAC

AI

CA

DI

TR AO

DO

AI

Figura 1-5: Arquitetura Básica (Tela Gráfica)

Page 27: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-12

1.3. Arquitetura Básica _______________________________________

G. Identificando Informações da Base de Dados

• As fontes de dados (Data Sources) possuem um padrão para a identificação dasinformações da base de dados

• Sintaxe: SERVIDOR.NÓ.TAG.FIELD

- SERVIDOR Nome do servidor de dados OPC

- NÓ Nome do nó SCADA onde fica a base de dados

- TAG Nome do tag da base de dados

- FIELD Informação específica do tag

• Exemplo: FIX32.SCADA1.TEMP.F_CV

- Mostra o valor atual (F_CV) do tag TEMP

- O tag TEMP reside na base de dados da estação SCADA1

- Os dados da estação SCADA1 vêm do servidor OPC da base de dados doprocesso chamado FIX32

• Os dados podem ser mostrados localmente ou a partir de uma estação remota usandoo nome da fonte de dados (veja um exemplo na Figura 1-6)

Page 28: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-13

1.3. Arquitetura Básica _______________________________________

Nó SCADA

Nó Vista

DIT Driver I/O

Hardware do Processo

PDB SAC

Link

Figura 1-6: Arquitetura Básica de Rede

Page 29: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-14

1.3. Arquitetura Básica _______________________________________

H. Fluxo dos Dados

• O driver consulta o hardware do processo

- O driver lê os dados dos registros do hardware do processo

- Estes dados são transferidos para uma área da memória chamada DIT (DriverImage Table), ou seja, local onde contém uma imagem das tabelas do driver

- A taxa com que o driver faz esta leitura é chamada Poll Time

• O SAC faz a leitura da DIT

- O SAC lê os dados da DIT

- Estes dados são transferidos para a base de dados do processo (PDB-ProcessDataBase)

- A taxa de leitura do SAC é chamada de Scan Time

• O WorkSpace busca informações da base de dados do processo

- Os objetos gráficos da tela mostram valores da base de dados do processo

- Outros aplicativos também podem buscam dados da base de dados

I. Ordem Inversa do Fluxo de Dados

• Os dados também podem ser enviados para o hardware do processo

- Isto é feito executando os passos acima na ordem inversa

- Os dados são enviados da tela para a base de dados e então para a DIT

- O driver busca os valores da DIT e os envia para o CLP

• Veja a Figura 1-7

Page 30: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-15

1.3. Arquitetura Básica _______________________________________

Nó SCADA

Nó Vista

DIT Driver

I/O

Hardware

PDB SAC

Link

do Processo

Figura 1-7: Arquitetura Completa nos “Dois Sentidos”

Page 31: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-16

1.3. Arquitetura Básica _______________________________________

Explicar tipos de estações iFIX:

SCADAiClienticlient Read OnlyIclient TSiWebServer

Page 32: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-17

1.3. Arquitetura Básica _______________________________________

Figura da Arquitetura

Page 33: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-18

1.4. Família Intellution Dynamics _______________________________

A. Família Intellution Dynamics

• Família de softwares de automação que possui tecnologia aberta baseada emcomponentes.

• Integra dados de chão de fábrica com outros componentes da família, sistemasgerenciais ou aplicativos de terceiros.

B. Componentes da Família Intellution Dynamics

• Componentes família Intellution Dynamics podem ser conectados para alcançar asnecessidades de sua aplicação e incluem:

- iFIX: software HMI/SCADA.

- iWebServer: acesso das telas iFIX via Internet.

- iLogic: SoftLogic da Intellution.

- iBatch: software de gerenciamento de processos batelada.

- iWorkInstruction: instruções eletrônicas para processos batelada.

- iHistorian: coletor de histórico de dados.

- iDownTime: analisador de paradas de equipamentos.

- infoAgent: analisador de histórico de produção via web.

• Estes componentes são unidos por um núcleo chamado iCore

- Este núcleo é construído com tecnologias industriais padrão que oferecemuma fácil integração com aplicações de terceiros em rede e/ou Internet

- O iCore contém os seguintes componentes:

◊ Intellution WorkSpace

◊ Rede

◊ Segurança

◊ Cliente OPC (OLE for Process Control)

◊ VBA (Visual Basic for Application)

Page 34: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-19

0. 1.3. Arquitetura Básica __________________________________

Explicar tipos de estações iFIX:

SCADAiClienticlient Read OnlyIclient TSiWebServer

Page 35: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-20

1.3. Arquitetura Básica _______________________________________

Figura da Arquitetura

Page 36: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-21

Família Intellution Dynamics ___________________________________

Figura 1-8: Componentes da Família Intellution Dynamics

Page 37: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-22

1.5. ______________________________________________ Exercício 1

Construindo uma Aplicação

Exercício 1

Page 38: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-23

___________________________________________________Exercício 1

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Criar novos tags na base de dados.2. Criar uma cadeia na base de dados.3. Usar dynamos para mostrar informações gráficas sobre uma bomba.4. Adicionar um datalink na tela.

Introdução:

A fim de entender o software iFIX, este exercício destaca algumas características básicas. Vocêirá projetar criar uma tela simples para monitorar e operar uma bomba de água. No final doexercício, sua tela deverá se parecer com:

Page 39: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-24

__________________________________________________ Exercício 1

A. Inicie o desenvolvimento de uma aplicação usando o WorkSpace.

1. A partir do grupo de ícones da Intellution, inicie o Intellution WorkSpace.

O WorkSpace abre uma tela branca sem título:

Adicione um blocona base de dados

Page 40: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-25

___________________________________________________Exercício 1

B. Crie um tag na base de dados para ligar e desligar a bomba.

1. A partir da barra de ferramentas do WorkSpace, selecione o botão:

Add Database Block.

A seguinte caixa de diálogo aparece:

2. Digite o seguinte texto no campo em branco:

PUMP_SWITCH

3. Selecione o botão Add para adicionar o novo bloco na base de dados.

A seguinte caixa de diálogo aparece:

Page 41: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-26

__________________________________________________ Exercício 1

C. Configure o novo tag da base de dados.

1. Selecione a opção DI – Digital Input e então OK.

A seguinte caixa de diálogo aparece:

2. Configure as seguintes opções com os valores mostrados a direta:

Description: Bomba de ÁguaI/O Address: 10:0

3. Selecione a guia Advanced na caixa de diálogo.

4. Selecione a opção Enable Output.

Isto permitirá o monitoramento e controle da bomba.

5. Selecione o botão Add quando terminar.

Uma caixa de diálogo aparece perguntando se deseja colocar o novo bloco paravarrudura (on scan).

6. Selecione o botão Yes para iniciar a varredura do novo bloco.

Você estará de volta ao WorkSpace.

Page 42: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-27

___________________________________________________Exercício 1

D. Adicione um objeto na tela que representa a bomba.

1. Na árvore do sistema (System Tree), abra a guia Dynamo Sets.

2. Dê um duplo clique no conjunto chamado Class

A seguinte tela aparece:

3. Selecione e arraste o objeto Pump1 para a tela.

A caixa de diálogo Pump Dynamo aparece.

4. Digite o seguinte nome no campo Data Source:

PUMP_SWITCH

5. Selecione OK quando terminar.

Você estará de volta ao WorkSpace.

Page 43: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-28

__________________________________________________ Exercício 1

E. Adicione um interruptor na tela.

1. A partir do menu Window, selecione Class para mostrar o conjunto de dynamos.

2. Selecione e arraste o objeto Switch1 do conjunto de dynamos Class para a tela.

A caixa de diálogo do dynamo aparece:

3. Digite o seguinte nome no campo Data Source:

PUMP_SWITCH

4. Selecione OK quando terminar.

Você estará de volta ao WorkSpace.

F. Adicione um banner na tela.

1. A partir do menu Window, selecione Class para mostrar o conjunto de dynamos.

2. Selecione e arraste o objeto Banner1 do conjunto de dynamos Class para a tela.

A caixa de diálogo do dynamo aparece.

3. Entre com o seguinte nome no campo Picture Title:

Water Pump

4. Selecione OK quando terminar

Você estará de volta ao WorkSpace.

5. Feche a janela do conjunto de dynamos Class.

Page 44: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-29

___________________________________________________Exercício 1

G. Visualize a tela.

1. A partir do menu WorkSpace, selecione a opção Switch to Run.

O WorkSpace alterna do modo de configuração para o modo de execução.

A tela deve agora se parecer com a seguinte figura:

2. Pressione o botão do interruptor.

A bomba e o interruptor devem refletir a mudança do tag na base de dados.

3. A partir do menu WorkSpace, selecione Switch to Configure.

O WorkSpace retorna para o modo de configuração.

Page 45: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-30

__________________________________________________ Exercício 1

H. Adicione um tag na base de dados para regular a velocidade da bomba.

1. A partir da barra de ferramentas do WorkSpace, selecione o botão:

Add Database Block.

A caixa de diálogo para a adição de um bloco aparece.

2. Digite o seguinte nome no campo Database Block:

WATER_RATE

3. Selecione Add para adicionar o novo bloco na base de dados.

A caixa de diálogo com os tipos de blocos aparece.

4. Selecione AI – Analog Input e então OK.

A seguinte caixa de diálogo aparece:

5. Defina os seguintes campos usando as informações à direita:

Description: Water Supply Pump RateI/O Address: RGLow Limit: 0.00High Limit: 300.00Units: GPM

6. NÃO clique ainda o botão Add! Vá para a página seguinte para obter mais instruções…

Page 46: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-31

___________________________________________________Exercício 1

I. Modifique um tag da base de dados e crie uma cadeia.

1. Digite o seguinte nome no campo Next:

CALC_RATE

2. Selecione o botão com uma flecha localizado à direita do campo Next.

A seguinte caixa de diálogo aparece:

3. Selecione Yes.

A caixa de diálogo com os tipos de blocos aparece.

4. Selecione CA – Calculation e então OK.

A seguinte caixa de diálogo aparece:

Page 47: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-32

__________________________________________________ Exercício 1

I. Modifique um tag da base de dados e crie uma cadeia (continuação).

5. Configure as seguintes opções com os valores da direta:

Description: Calculate Water RateInput B: PUMP_SWITCHOutput Calculation: A*BLow Limit: 0.00High Limit: 300.00Units: GPM

6. Quando terminar, selecione Add.

Uma caixa de diálogo aparece perguntando se deseja colocar o novo bloco em varredura.

7. Selecione Yes para iniciar a varredura do bloco.

Você estará de volta ao WorkSpace.

Page 48: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-33

___________________________________________________Exercício 1

J. Adicione um link de dados na tela para mostrar a velocidade da bomba.

1. A partir do menu Insert, selecione Data Link.

O cursor muda para o formato de uma cruz.

2. Desenhe um retângulo para especificar a localização do link de dado.

A seguinte caixa de diálogo aparece:

3. Entre com o seguinte nome no campo Source:

CALC_RATE

4. Quando terminar, selecione OK.

O link de dado aparece na tela da seguinte forma:

#####.##

Page 49: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-34

__________________________________________________ Exercício 1

K. Adicione um objeto para mostrar a velocidade da bomba.

1. A partir do menu Insert, selecione Chart.

O cursor muda para o formato de uma cruz.

2. Desenhe um retângulo para representar a localização do gráfico.

Quando terminar, um gráfico padrão aparece na tela:

Page 50: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-35

___________________________________________________Exercício 1

L. Configure o gráfico.

1. Clique duas vezes no gráfico.

A caixa de diálogo de configuração do gráfico aparece.

2. Selecione a guia Chart:

A caixa de diálogo muda para a seguinte:

3. Selecione a pena padrão e altere-a para:

CALC_RATE

4. Selecione a guia Time.

5. Altere o tempo de duração (Duration Time) para:

00:02:00

6. Quando terminar, selecione OK.

Page 51: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright (c) 2002, Intellution, Inc. 1-36

__________________________________________________ Exercício 1

M. Salve a tela.

1. No menu File, selecione Save.

A caixa de diálogo para salvar aparece.

2. Digite o seguinte nome de arquivo:

WaterPump

3. Selecione o botão Save para salvar a nova tela.

A barra de título da tela contém agora o nome do arquivo.

4. Retorne para o modo de execução para ver as novas mudanças na tela.

5. Mude o estado da bomba através de um clique no interruptor.

Note que o valor do link de dado é alterado refletindo o estado atual da bomba.

Fim do Exercício

Page 52: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright (c) 2002, Intellution, Inc. 1-37

1.6. Questões de Revisão_____________________________________

1. Qual é a diferença entre um servidor SCADA e um iClient?

2. O que é o iCore? O que é a família Intellution Dynamics?

3. Qual nó do iFIX pode ser usado como stand alone?

4. Qual é a função da Tabela Imagem do Driver?

5. Qual é a função do SAC?

Page 53: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-1

2. Introdução ao Desenvolvimento Gráfico _______________________

Capítulo 2

Introdução ao Desenvolvimento Gráfico

Page 54: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-2

2. Introdução ao Desenvolvimento Gráfico ______________________

Objetivos do Capítulo

Este capítulo traz uma introdução sobre o desenvolvimento da interface gráfica do iFIX. Serãovistos os objetos gráficos nativos do iFIX e como trabalhar com a área de desenvolvimento gráficodo iFIX, o Intellution WorkSpace. O WorkSpace consiste de uma área de projeto que contémtextos, animações e ferramentas que permitem criar telas de fácil entendimento para o operador.Também oferece comandos e modos de interação com a tela através de ações de operador comoreconhecimento de alarmes ou mudança de setpoints do processo.

O capítulo está organizado nos seguintes tópicos:

• Introdução ao WorkSpace da Intellution

• Objetos gráficos e suas propriedades

• Construção de telas

Page 55: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-3

2.1. WorkSpace _____________________________________________

File Object FormatNew Fill Style Bring to FrontOpen Edge Style Send to BackClose Background Style Group / UngroupSave AlignSave As View FlipSave All Zoom Space EvenlyPrint Default View Make Same SizeExit Full View Snap to Grid

Fit Picture to Window Grid SettingsEdit Fit Window to Picture Snap Objects to Grid

Undo Update Window LocationCut Refresh WindowCopy Color Selections CascadeCopy as Bitmap Property Window Tile HorizontalPaste Screen Regions Tile VerticalPaste Special Close AllDelete InsertDuplicate OLE Object HelpSelect All Rectangle WorkSpace HelpFind and Replace Rounded Rectangle iFIX Picture Server HelpAnimations OvalPicture Line

PolylineWorkSpace Polygon

Switch to Run ArcSystem Tree ChordStatus Bar PieVisual Basic Editor TextUser Preferences ChartToolbars BitmapFull Screen Datalink

Current TimeCurrent DateAlarm SummaryPush Button

Figura 2-1: Menu de Comandos do WorkSpace (em Configure Mode)

Page 56: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-4

2.1. WorkSpace______________________________________________

A. WorkSpace

• O aplicativo WorkSpace consiste da área de desenvolvimento de uma aplicação iFIX

• Une os aplicatoivos da Intellution

• Todas as configurações do projeto são feitas no WorkSpace

• Modos de trabalho do WorkSpace:

- Modo de Configuração (Configure Mode)

- Modo de Execução (Run Mode)

• Os componentes do WorkSpace são:

- Árvore do sistema (System Tree)

- Área de desenvolvimento das telas

- Barra de menu

- Barras de ferramentas

B. Árvore do Sistema

• Mostra os arquivos associados ao projeto

• Mostra os objetos associados a cada arquivo

• Oferece acesso a algumas aplicações

• Pode ser redimensionada, movimentada ou simplesmente não mostrada

• As guias são caminhos configurados no System Configuration Utility

- isto será visto mais tarde neste curso

C. Área de desenvolvimento das telas

• Contém o documento ativo

- um documento é uma aplicação baseada em Windows envolta por umbrowser

- oferece um método de acesso das funcionalidades das aplicações a partir dainterface do browser

• Os documentos são editados no modo de configuração

• Os documentos são mostrados no modo de execução

D. Barra de Menu

• Varia de acordo com o tipo de documento ativo

Page 57: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-5

2.1. WorkSpace _____________________________________________

Figura 2-2: Workspace do iFIX (Configure Mode)

Page 58: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-6

2.2. Telas ___________________________________________________

A. Telas

• As telas do iFIX são documentos com extensão *.GRF (Graphics Resource File)

• Suas propriedades podems er alteradas a partir de uma caixa de diálogo Edit Pictureque é acessada selecionando Picture no menu Edit

- veja a Figura 2-3

B. Objetos da Tela

• Os objetos das telas devem possuir nomes exclusivos (não repetidos)

• Os nomes dos objetos devem começar com uma letra e podem conter no máximo 40caracteres, incluindo letras, números e sub-traços (_)

• Cada objeto pode conter códigos de programa (scripts) associados a ele.

• Os objetos podem ser animados de acordo com valores de variáveis ou informaçõesvindas do hardware do processo através de um driver de comunicação

• Para inserir um objeto na tela:

- Selecione o objeto a partir do menu Insert ou através da caixa de ferramentaTollbox e desenhe os cantos da figura (siga as instruções da Figura 2-4).

Figura 2-3: Caixa de Diálogo para Configuração da Tela

Page 59: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-7

2.2. Telas __________________________________________________

Tipo de Objeto Ferramenta Para criar...

Rectangle Clique uma vez e arraste.Solte o mouse quando estiver com o tamanho desejado.

RoundedRectangle

Clique uma vez e arraste.Solte o mouse quando estiver com o tamanho desejado.

Oval Clique uma vez e arraste.Solte o mouse quando estiver com o tamanho desejado.

Line Clique uma vez e arraste.Pare no tamanho desejado e solte o mouse.

Polyline Clique uma vez para cada ponto.Dê um duplo clique para terminar.

Polygon Clique uma vez para cada ponto e dê um duplo cliquepara terminar. Ele fecha sozinho, sem necessidade deunir o início com o final do objeto.

Arc Clique uma vez para cada ponto e clique uma terceiravez para criar a curvatura do arco.

Chord Clique uma vez para cada ponto e clique uma terceiravez para criar a curvatura do semicírculo.

Pie Clique uma vez para cada canto do objeto. O primeiro eo último ponto são conectados para formar o ladocurvado.

Figura 2-4: Objetos Gráficos

Page 60: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-8

2.2. Telas __________________________________________________

C. Configuração das Cores

• A caixa de cores é uma ferramenta para manipular as propriedades de cor dosobjetos.

• Contém as ferramentas necessárias para colorir objetos e criar conjuntospersonalizados de cores.

• A caixa de cores pode ser acessada a partir de qualquer parte da área de trabalho.

- Veja a Figura 2-5.

• Existem duas caixas de cores:

- Uma acessada a partir do botão direito do mouse ao selecionar um objeto

◊ com esta caixa pode-se configurar as cores do objeto selecionado

- Outra acessada a partir de Color Selections do menu View

◊ esta caixa permite a configuração de cores de diferentes objetos da tela

• Cores Personalizadas

- Pode-se personalizar até 16 milhões de opções de cores, combinando-se ascores primárias vermelho, verde e azul, além de variar as propriedades desaturação, matiz e luminosidade.

- Veja a Figura 2-6.

D. Estilos de Preenchimento (Fill), de Contorno (Edge) e de Fundo (Background)

• As cores são modificadas a partir da caixa de diálogo de seleção de cores

• Uma vez selecionado o objeto, os estilos são alterados a partir do menu Object

Page 61: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-9

2.2. Telas __________________________________________________

Figura 2-5: Caixa de Diálogo de Seleção de Cores

Figura 2-6: Caixa de Diálogo de Cores Personalizadas

Selecione aquicor de frente, de

fundo ou decontorno

Selecione aqui oconjunto de cores(default, shadesof gray, etc.)

Selecione aquipara criar corespersonalizadas

Page 62: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-10

2.2. Telas __________________________________________________

E. Barra de Menu

• Gerenciamento de arquivos

- Open (abrir um arquivo), Close (fechar um arquivo), Save (salvar umarquivo), Save As (salvar um arquivo com outro nome) e Save All (salvartodos os arquivos abertos).

• Ferramentas padrões de impressão

- Print Setup (configuração da impressora configurada do sistema operacional)e Print (imprimir arquivo ativo).

• Ferramentas padrões de edição do Windows

- Cut (recortar um ou vários objetos selecionados), Copy (copiar um ou váriosobjetos selecionados), Paste (colar os objetos copiados ou recortados) e PasteEspecial (colar os objetos de forma especial).

- Delete (apagar um ou mais objetos selecionados), Duplicate (duplicar um oumais objetos selecionados) e Select All (selecionar todos os objetos da telaativa).

F. Ferramentas Adicionais da Barra de Menu

• Copy as Bitmap (copiar um ou mais objetos selecionados como um objeto do tipobitmap).

• Bring to Front (trazer o objeto selecionado para frente dos outros objetos na tela),Send to Back (enviar o objeto selecionado para trás dos outros objetos na tela).

• Align (alinhar os objetos selecionados), Flip (inverter o objeto), Space Evenly(distribuir os objetos com o mesmo espaçamento na tela), Make Same Size (tornar asdimensões dos objetos idênticas).

• Snap to Grid (alinhar conforme a grade) e Grid Settings (configurações da grade).

G. Alterando Objetos Gráficos

• Uma vez adicionados à tela, a maioria dos objetos pode ser re-editado utilizando osseguintes comandos: Reshape (redesenhar o objeto), Resize (redimensionar otamanho do objeto) e Rotate (rotacionar o objeto na tela).

Page 63: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-11

2.2. Telas __________________________________________________

Figura 2-7: Exemplo de Tela

Page 64: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-12

2.3. Processo Utilizado nos Exercícios __________________________

A. Descrição de um Processo de Fabricação de Cerveja

• Cozimento do Malte (Mash Mixer)

- O tanque Mash Mixer realiza a mistura de água com malte triturado. Amistura é realizada à uma temperatura ótima para conversão total do amidoem açúcares simples

• Tina de Filtração (Lauter Tun)

- Onde o líquido vindo do Mash Mixer é misturado com água quente e filtradopara a remoção de grãos. O líquido resultante, claro e adocicado, é chamadode mosto e os grãos úmidos são aproveitados para ração animal.

• Cozimento do Mosto (Brew Kettle)

- O mosto é fervido por aproximadamente uma hora e nesta etapa é adicionadolúpulo durante os últimos 15 minutos da operação.

• Filtração (Whirlpool Filter)

- O mosto fervido com o lúpulo é enviado para um filtro onde o lúpulo e outrossólidos são removidos.

• Fermentação (Fermentation Tank)

- Levedura é adicionada ao mosto e permanece no tanque de fermentação de 5a 20 dias, com temperatura entre 5°C e 10°C. A levedura consome o açúcar,produzindo álcool e dióxido de carbono. Durante este processo, o mosto étransformado em cerveja.

• Maturação (Aging Tank)

- A cerveja é gradualmente maturada em tanques de armazenagem por 2 a 24semanas. As proteínas são retiradas da cerveja, ou seja, são “digeridas”através de ação enzimática. O resíduo da reação que ocorre durante afermentação é extraído e retornado para a caldeira durante o engarrafamento.

Page 65: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-13

2.3. Processo Utilizado nos Exercícios _________________________

Figura 2-8: Fluxograma de um Processo de Fabricação de Cerveja

Page 66: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-14

2.4. ______________________________________________ Exercício 2

Conceitos Básicos do WorkSpace

Exercício 2

Page 67: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-15

___________________________________________________Exercício 2

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Criar uma nova tela no WorkSpace.2. Adicionar objetos básicos à tela.

Introdução:

A finalidade deste exercício é apresentar o WorkSpace da Intellution. O WorkSpace é oaplicativo que pode ser usado para acessar todos os outros aplicativos do iFIX. Este exercícioirá ajudá-lo a se familiarizar com o Workspace, abordando os métodos básicos para a criação deuma tela.

Informações sobre o exercício:

Ao longo do curso, iremos criar uma aplicação para monitoração e controle da fabricação decerveja. O primeiro passo do processo é adicionar malte à um misturador (Mash Mixer). Omalte é misturado com água para dissolver os grãos sólidos e aquecido lentamente. Esteprocesso transforma os grãos em açúcares através de ação enzimática. O líquido permanece nomisturador por uma ou duas horas.

Page 68: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-16

__________________________________________________ Exercício 2

Neste exercício, iremos monitorar o misturador. O misturador possui uma alimentação de água,outra de malte e uma saída da mistura. Isto será mostrado através de um tanque com duastubulações de entradas e uma tubulação de saída. Ao final deste exercício, sua tela deverá separecer com figura abaixo. Use esta figura como um guia para a disposição dos objetos em suatela.

Quando terminar este exercício, vá para a seção seguinte e responda as questões de revisão.

Page 69: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-17

___________________________________________________Exercício 2

A. Crie uma nova tela.Crie uma nova tela e inicie o desenvolvimento gráfico.

1. A partir do menu File, selecione New –Picture.

Uma nova tela sem nome aparecerá.

2. A partir do menu Insert, selecione Text.

O cursor muda para o formato de uma barra I.

3. Selecione com o cursor no topo da tela e digite o seguinte texto:

Mash Mixer

4. Selecione qualquer área em branco da tela.

O cursor retorna para a seta padrão.

5. Selecione o título que você acabou de criar.

Um guia aparece ao redor do objeto indicando que ele é o objeto ativo.

6. A partir do menu Object, selecione Font.

A caixa de diálogo de configuração de fonte aparece:

7. Configure as seguintes opções com os valores listados a direta:

Font: ArialFont Style: BoldFont Size: 16

8. Selecione OK quando terminar.

Page 70: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-18

__________________________________________________ Exercício 2

B. Crie o Misturador.Use um retângulo e um semicírculo para criar o tanque.

1. A partir do menu Insert, selecione Rectangle.

O cursor muda para o formato de uma cruz.

2. Desenhe um retângulo baixo e achatado.

3. A partir do menu Insert, selecione Chord.

O cursor muda para o formato de uma cruz.

4. Desenhe um semicírculo no topo do retângulo.

A tela deve-se parecer agora com:

5. Selecione o retângulo e o semicírculo ao mesmo tempo.

Os objetos são limitados por guias.

6. A partir do menu Object, selecione Color – Foreground.

A caixa de diálogo de cores aparece.

7. Selecione um cinza claro (Gray75) e selecione OK.

Page 71: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-19

___________________________________________________Exercício 2

C. Adicione Tubulações à tela.Utilize retângulos para adicionar tubulações ao misturador.

1. A partir do menu Insert, selecione Rectangle.

O cursor muda para o formato de uma cruz.

2. Desenhe um retângulo fino e comprido para representar uma tubulação alimentando omisturador.

3. A partir do menu Format, selecione Send to Back.

4. Adicione duas tubulações adicionais à tela .

A tela deve-se parecer agora com:

5. Usando a caixa de diálogo de cores, altere a cor das tubulações para cinza escuro(Gray50).

Page 72: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-20

__________________________________________________ Exercício 2

D. Adicione válvulas à tela.Use polígonos para adicionar válvulas ao misturador.

1. A partir do menu Insert, selecione Polygon.

O cursor muda para o formato de uma cruz.

2. Usando a figura abaixo como referência, crie um polígono para representar uma válvula.

3. Crie duas válvulas adicionais usando a mesma técnica.

4. A partir do menu Insert, selecione Text.

5. Adicione os objetos de texto mostrados ns figura abaixo.

A tela deve-se parecer agora com:

Page 73: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-21

___________________________________________________Exercício 2

E. Adicione um agitador ao tanque.Use um polígono para adicionar um agitador ao tanque.

1. A partir do menu Insert, selecione Polygon.

O cursor muda para o formato de uma cruz.

2. Desenhe uma “pá de agitador” como mostrado na figura abaixo.

3. Use a caixa de diálogo para alterar a cor do misturados para cinza escuro (Gray50).

4. A partir do menu Insert, selecione Line.

O cursor muda para o formato de uma cruz.

5. Desenhe uma linha para unir a pá do agitador ao topo do tanque.

A tela deve-se parecer agora com:

Page 74: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-22

__________________________________________________ Exercício 2

F. Salve a tela.

1. A partir do menu File, selecione Save.

A seguinte caixa de diálogo aparece:

2. Digite o seguinte nome no campo File Name:

MashMixer

Na barra de título da tela aparece agora o nome do novo arquivo.

Fim do Exercício

Page 75: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 2-23

2.5. Questões de Revisão_____________________________________

1. Para que serve a árvore do sistema (System Tree) no Workspace?

2. Como se criam cores personalizadas?

3. Para que serve a grade (Grid) no WorkSpace?

4. Que opções de estilo de fundo (Background Style) existem para um objeto na tela?

5. Descreva como o Exercício 2 se encaixa na aplicação de Fabricação de Cerveja.

Page 76: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 2-24

2.5. Questões de Revisão_____________________________________

página em branco

Page 77: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-1

3. Animação de Objetos _______________________________________

Capítulo 3

Animação de Objetos

Page 78: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-2

3. Animação de Objetos _____________________________________

Objetivos do Capítulo

Este capítulo introduz ferramentas adicionais para o desenvolvimento gráfico no iFIX, como asferramentas para animação dos objetos na tela. Alguns conceitos adicionais sobre o WorkSpacetambém serão discutidos.

O capítulo está organizado nos seguintes tópicos:

• Property Window

• Animação de objetos

• Uso dos “Experts”

• Uso do “Expression Builder”

• Datalinks

Page 79: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-3

3. Animação de Objetos______________________________________

A. Revisão

• As telas do iFIX são criadas no aplicativo WorkSpace.

• Existem várias ferramentas disponíveis para criação de objetos gráficos:

- Retângulo

- Retângulo com bordas arredondadas

- Oval

- Linha

- Poli linha

- Polígono

- Arco

- Semicírculo

- Setor circular (pizza)

- Texto

• Os objetos podem ser formatados usando as opções do menu Format

Page 80: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-4

3.1. Property Window_________________________________________

A. Introdução

• A Property Window é uma janela de configuração das propriedades estáticas de umobjeto.

- Altura do objeto, cor de fundo, estilo de preenchimento, etc.

• Mostra as propriedades do objeto que permitem modificação

- os valores das propriedades localizam-se na coluna da direita da janela

- algumas propriedades contêm uma lista de opções para seleção

- as propriedades somente de leitura não aparecem na janela

• A janela pode ser moldada

- ela fica na tela enquanto os valores das propriedades são alterados

B. Usando a Janela de Propriedades:

1. Selecione o objeto a ser modificado com o botão direito do mouse a partir da árvoredo sistema e selecione Property Window no menu.

Ver Figura 3-1

2. Localize a propriedade a ser modificada na coluna da esquerda da janela e selecioneseus valores na coluna da direita.

3. Digite o novo valor para a propriedade.

Assim que digitar o valor, o objeto muda para refletir a nova entrada.

Page 81: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-5

3.1. Property Window ________________________________________

Figura 3-1: Janela de Propriedades

Page 82: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-6

3.2. Animação de Objetos _____________________________________

A. Notas

• Animações realizam mudanças dinâmicas em uma propriedade, baseada em umavariação na fonte de dados, que pode ser:

- um tag da base de dados do iFIX

- um dado em tempo real de um endereço I/O

- um valor de uma tela ou propriedade de um objeto

- uma variável global

- uma expressão pré-definida

- um evento VBA

- servidores OPC

B. Como as animações funcionam

• Animações são na realidade objetos

- quando um objeto é animado, um objeto de animação é adicionado às suaspropriedades originais

◊ o usuário vê um objeto realizando uma ação funcional visível

◊ na realidade, quem é animado é a propriedade do objeto e nãopropriamente o objeto

• A fonte do dado é o valor usado para a animação

• Como as animações alteram as propriedades do objeto, uma propriedade só pode serusada para uma animação se esta propriedade aceitar dados

- propriedades somente de leitura não podem ser usadas

- as propriedades disponíveis podem ser vistas na janela de propriedades

• A Figura 3-2 traz um resumo das animações mais usadas

Page 83: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-7

3.2. Animação de Objetos_____________________________________

Animando a propriedade… Permite que você …

Horizontal Fill Percentage(porcentagem de preenchimentohorizontal)

Preencha horizontalmente um objeto baseado em umaporcentagem. Por exemplo, se o valor da propriedade for50, o objeto será 50% preenchido.

Vertical Fill Percentage(porcentagem de preenchimentovertical)

Preencha verticalmente um objeto baseado em umaporcentagem. Por exemplo, se o valor da propriedade for50, o objeto será 50% preenchido.

Horizontal Fill Direction(direção de preenchimento horizontal)

Preencha horizontalmente um objeto a partir da esquerda,da direita ou do centro

Vertical Fill Direction(direção de preenchimento horizontal)

Preencha verticalmente um objeto a partir do topo, dabase ou do centro

Horizontal Position(posição horizontal)

Mova um objeto horizontalmente através da tela

Vertical Position(posição horizontal)

Mova um objeto verticalmente através da tela

Rotation Angle(ângulo de rotação)

Defina a quantidade para rotacionar um objeto. Ovais,retângulos com bordas arredondadas e gráficos nãopossuem propriedade de rotação

Uniform Scale (escala uniforme) Amplie ou reduza um objeto de forma proporcional

Height (altura) Amplie ou reduza a altura de um objeto. A largurapermanece inalterada

Width (largura) Amplie ou reduza a largura de um objeto. A alturapermanece inalterada

Horizontal Scale Percentage(porcentagem de escala horizontal)

Escala um objeto horizontalmente baseando-se em umaporcentagem. Por exemplo, se o valor da propriedade for50, o objeto será escalado 50%

Vertical Scale Percentage(porcentagem de escala horizontal)

Escala um objeto verticalmente baseado-se em umaporcentagem. Por exemplo, se o valor da propriedade for50, o objeto será escalado 50%

Foreground Color(cor de frente)

Muda a cor de frente de um objeto. Linhas, poli-linhas ebitmaps não possuem propriedade de cor de frente

Visible (visibilidade) Faça o objeto ficar visível ou invisível

Caption (título)

Obs: apenas para objetos texto

Mude o texto mostrado por um objeto de texto

Figura 3-2: Animações Comuns

Page 84: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-8

3.2.1. Assistentes de Animação _______________________________

A. Notas

• Modelos usados para animar propriedades selecionadas de objetos

- Preenchimento (fill)

- Rotação (rotate)

- Posição (position)

- Visibilidade (visibility)

- Cores de frente (foreground), de fundo (background) e de contorno (edge)

• A Figura 3-3 contém uma lista de alguns Animation Experts

B. Preenchimento Animado

• Usado para preencher um objeto de baixo para cima, de cima para baixo ou umacombinação dos dois modos anteriores

• Botão “Get Data From New Selection”

- selecione outro objeto da área de trabalho enquanto a caixa de diálogo do“Expert” ainda é exibida

- selecionando este botão, os parâmetros de animação de cor do objetoaparecem na caixa de diálogo do “Expert”

- configure os parâmetros desta nova seleção

• Para buscar ajuda sobre os outros campos, use o botão Help

- será falado mais sobre o Help em capítulos seguintes

• A Figura 3-4 mostra a caixa de diálogo do “Expert” de Preenchimento

Page 85: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-9

3.2.1.

Page 86: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-10

Assistentes de Animação ______________________________________

Preenchimento (Fill Expert)

Rotação (Rotate Expert)

Posição (Position Expert)

Escala (Scale Expert)

Visibilidade (Visibility Expert)

Contorno (Edge Color Expert)

Cor de Frente (Foreground Color Expert)

Cor de Fundo (Background Color Expert)

Figura 3-3: “Experts” de Animação

Figura 3-4: “Expert” de Preenchimento

Page 87: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-11

3.2.1.

Page 88: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-12

Assistentes de Animação ______________________________________

C. Opções da Caixa de Diálogo de Animação de Cor

• Color by – escolhas para mudança de cores:

- Current Value (valor atual)

◊ usa o valor atual F_CV da fonte de dado

- Current Alarm (alarme atual)

◊ usa o tag com o alarme mais recente não reconhecido

- Latched Alarm (alarme mais severo)

◊ usa o tag com o alarme mais severo não reconhecido

• Color Thresholds (tabela de limites de cores)

- Range

◊ realiza a mudança baseada nos valores mínimo e máximo

- Exact Match

◊ realiza a mudança baseada no valor exato

◊ pode-se estabelecer uma tolerância ao redor do valor no campoTolerance

• Seleção de cores baseada em alarme

- utilizada para tags de entrada analógica

• Shared Threshold Table (tabela compartilhada de limite de cores)

- usa uma tabela de cores definida como global ou de algum outro objeto datela

- será falado mais sobre tabelas compartilhadas nos capítulos seguintes

Page 89: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-13

3.2.1.

Page 90: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-14

Assistentes de Animação ______________________________________

Figura 3-5: “Expert” de Animação de Cor de Frente

Page 91: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-15

3.2.2. Expression Builder ____________________________________

A. Notas

• Usado para estabelecer valores para as animações

- Estes valores são referenciados como Fontes de Dados (Data Sources)

• Aparece em vários lugares dentro do iFIX

- Normalmente acessadas através do botão “Browse” .

- Também referenciado às vezes como botão “Ellipses”.

- Veja a Figura 3-6.

B. Caixa de Diálogo do “Expression Builder”

• Permite acesso às fontes de dados do sistema iFIX

• Existem várias fontes de dados que podem ser usadas para animar as propriedades deum objeto

• Pode-se também construir expressões

- uma expressão é um valor de dados ou vários valores de dados conectadoscom um ou mais operadores

- use o “Expression Builder” para criar expressões específicas para acessardados de uma única fonte

• Os valores de dados em uma expressão podem ser os seguintes:

- Constantes numéricas

- Textos entre aspas (“ ”).

- Tags do iFIX

- Endereços I/O de um servidor OPC.

- Propriedades de telas

- Propriedades de objetos

• A Figura 3-7 mostra um exemplo de um tag do iFIX

Figura 3-6: Atribuição da Fonte de Dados

Page 92: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-16

3.2.2. Expression Builder_____________________________________

Figura 3-7: Caixa de Diálogo do “Expression Builder”

Page 93: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-17

3.2.2. Expression Builder ____________________________________

C. Usando o “Expression Builder”

• Filtragem

- filtra a fonte de dados por nó, tag, etc.

- entre com o dado no campo de filtro e selecione o botão Filter (ou F)

• Telas

- selecione os valores das propriedades de outros objetos de uma tela- Recomenda-se que os objetos de outras telas NÃO sejam usados

◊ se a outra tela não estiver aberta, o objeto não será atualizado◊ use um objeto Global – mais informações sobre as variáveis globais

serão vistas nos capítulos seguintes

D. Expressões Matemáticas

• Contêm um conjunto de teclas com funções matemáticas e booleanas básicas

• Exemplo:

- suponha que uma cor será alterada somente se dois tags digitais estiveremfechados

Fix32.NODE8.DI1.F_CV = 1 AND Fix32.NODE8.DI2.F_CV = 1

• Isto é útil para reduzir a quantidade necessária de programas em uma tela

- será falado mais sobre programação nos capítulos seguintes

E. Notas Adicionais sobre o “Expression Builder”

• Tolerance (Tolerância)

- especifica o fator de arredondamento da conexão atual- o iFIX usa este valor quando a expressão é de comparação

- Exemplo:

Fix32.NODE8.AI1.F_CV = Fix32.NODE8.AI2.F_CV

• Deadband (Banda Morta)

- especifica a flutuação máxima desejada para a conexão atual antes do iFIXatualizá-la

- isto cria uma zona +/- ao redor do valor atual

- enquanto o valor estiver neste limite, o iFIX não atualiza o valor

• Refresh Rate (Taxa de Atualização)

- especifica a taxa com que o iFIX atualiza o valor da conexão

Page 94: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-18

3.2.2. Expression Builder_____________________________________

Figura 3-8: Caixa de Diálogo do “Expression Builder” (mostrando as funções matemáticas)

Page 95: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-19

3.2.3. Caixa de Diálogo de Animações _________________________

A. Introdução

• Usada para editar as propriedades (estáticas ou dinâmicas) de um objeto.

B. Usando a Caixa de Diálogo de Animação

• Abra a caixa de diálogo Animation clicando duas vezes sobre o objeto na tela.

- Para objetos OCXs, sumários de alarmes, data links e gráficos esta caixa dediálogo deve ser acessada clicando com o botão direito do mouse eselecionando Animations a partir do menu que aparece.

• A Figura 3-9 mostra a guia General da caixa de diálogo Animation

- A maioria dos objetos possui esta guia inicial e é utilizada para alteraralgumas propriedades padrões do objeto como nome, descrição, etc.

C. Propriedades Estáticas

• Use esta caixa de diálogo para editar as propriedades estáticas.

• Possui a mesma função da Property Window.

Page 96: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-20

3.2.3. Caixa de Diálogo de Animações__________________________

Figura 3-9: Caixa de Diálogo Animations (Guia General)

Page 97: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-21

3.2.3. Caixa de Diálogo de Animações _________________________

D. Propriedades de Animação

• Para animar uma propriedade, clique na caixa de seleção ao lado da propriedade a seranimada.

- A Figura 3-10 mostra um exemplo.

• Os campos são similares àqueles dos Animation Experts

- Eles usam as mesmas propriedades de objetos.

- Na verdade, todas as animações podem ser feitas via programa em VBA.

◊ Programação em VBA será vista mais tarde.

E. Data Conversion – conversão do valor a partir da fonte de dados.

• Conversão do tipo Range

- Converte linearmente os valores recebidos para a escala configurada noscampos Minimun Output e Maximun Output.

• Conversão do tipo Table

- Altera os valores recebidos de acordo com valores especificados na tabela.

- O uso de uma tabela de conversão é idêntico ao uso de uma planilha (a Figura3-10 mostra um exemplo).

- Quando o valor de entrada coincidir com uma entrada da tabela, a propriedadeé alterada de acordo com o valor de conversão.

• Conversão do tipo Format

- Altera a formatação dos valores recebidos da base de dados.

- Pode-se especificar:

◊ Como os valores serão alinhados na tela.

◊ Quantas linhas serão mostradas.

◊ Quantos caracteres irão aparecer em cada linha.

◊ Se a entrada de dados está habilitada.

• Conversão do tipo Object

- Não ocorre conversão dos valores recebidos.

Page 98: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-22

3.2.3. Caixa de Diálogo de Animações__________________________

Figura 3-10: Caixa de Diálogo de Animação (Guia Color)

Page 99: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-23

3.3. Datalink ________________________________________________

A. Introdução

• Mostra informações ASCII ou numérica de uma fonte de dados.

• Um dos objetos gráficos mais usados em uma tela.

• A partir do menu Insert, selecione Data Link.

B. Caixa de Diálogo do Datalink

• Formatting (Tipo de Formatação)

- Numeric (Numérica)

◊ Configure o número de casas depois do ponto decimal (whole digits) onúmero de casas decimais (decimal).

- Alpha-Numeric (Alfa-Numérica)

◊ Configure o número de linhas (lines) e a quantidade de caracteres porlinha (characters per line).

• Data Entry (Tipo de Entrada de Dados)

- None

◊ Cria um link somente para visualização, não permite entrada de dados.

- In-Place

◊ Permite entrar com dados a partir do datalink para modificar o valordo dado.

◊ A opção Confirm faz com que apareça uma caixa de diálogo deconfirmação ao digitar um novo valor.

C. Observações

• O datalink se comporta como um objeto com a propriedade de texto (caption)animada.

• Adicione outras animações no datalink usando a caixa de diálogo de animações

- Exemplos:

◊ Animar a cor do texto.

◊ Possibilitar a visibilidade do texto.

◊ Animar o tamanho do texto: altura (height) e largura (width).

Page 100: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-24

3.3. Datalink_________________________________________________

Figura 3-11: Datalink

Page 101: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-25

3.4. ______________________________________________Exercício 3

Animando ObjetosExercício 3

Page 102: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-26

__________________________________________________ Exercício 3

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Usar os “Experts” para animar objetos gráficos2. Usar a caixa de diálogo de animação para animar objetos gráficos3. Adicionar links de dados na tela

Introdução:

Este exercício trabalha com a animação dos objetos na tela. As animações permitem mostrargraficamente as mudanças do processo, tornando a tela mais compreensiva e de fácil uso.

Neste exercício, continuaremos a trabalhar com a tela MashMixer. Iremos adicionar animaçõespara representar o estado das válvulas através de cores, representar o nível do tanque através depreenchimento vertical e representar a temperatura do tanque também através de cores. Quandoterminar, sua tela deverá se parecer com:

Quando terminar este exercício, vá para a próxima seção e responda as questões de revisão.

Page 103: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-27

___________________________________________________Exercício 3

A. Abra uma tela já existente.Abra a tela “MashMixer” e a barra de ferramentas “Expert Tollbar”.

1. A partir do menu File, selecione Open.

A caixa de diálogo abrir uma tela aparece.

2. Selecione MashMixer e então selecione Open.

A tela “MashMixer” é aberta.

3. Certifique-se de que a barra de ferramentas Expert esteja visível. Para mostrar estabarra, selecione Toolbars a partir do menu WorkSpace.

A caixa de diálogo de ferramentas aparece.

4. Na seção Owner, selecione Picture.

A caixa de diálogo deve ser parecer agora com:

5. Selecione a opção Experts e selecione então Close.

A barra de ferramentas “Expert” aparece na área de trabalho.

6. Você pode ancorar a barra de ferramentas acima da tela arrastando-a para a área acima dabarra de título da tela.

Page 104: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-28

__________________________________________________ Exercício 3

B. Adicione uma animação de cor de fundo.Anime as válvulas para mudarem de cor de acordo com seu estado.

1. Selecione a válvula da tubulação de entrada de malte.

2. Com a válvula selecionada, selecione o botão Foreground Color Expert.

A caixa de diálogo para configuração da cor de fundo aparece.

3. Configure as seguintes opções com os valores da direta:

Data Source: MALT_SWITCHColor By: Current ValueColor Threshold: Exact Match

Quando a opção Exact Match (valor exato) estiver selecionada, os limites e cores databela modificam.

4. Crie dois novos limites de cores usando a figura abaixo como referência.

A caixa de diálogo deve-se parecer agora com:

5. Quando terminar, selecione OK.

6. Repita esta seqüência para as outras duas válvulas usando as informações abaixo:

Válvula “Water In”: WATER_SWITCHVálvula “Mash Out”: MASH_SWITCH

Page 105: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-29

___________________________________________________Exercício 3

C. Adicione uma animação de rotação.Anime a rotação do agitador de acordo com seu estado.

1. Selecione o agitador.

Um guia aparecerá ao redor do objeto.

2. Com o agitador selecionado, selecione o botão Rotate Expert.

A caixa de diálogo de diálogo do “expert” de rotação aparece:

3. Configure as seguintes opções com os valores da direta:

Data Source: ROTATE_CALCFetch Limits from Data: HabilitadoMinimum Angle: 0Maximum Angle: 360

4. Quando terminar, selecione OK.

Page 106: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-30

__________________________________________________ Exercício 3

D. Adicione e anime um retângulo.Crie um retângulo para mostrar o nível e a temperatura do tanque.

1. A partir do menu Insert, selecione Rectangle.

2. Desenhe um retângulo alto e fino, usando a figura abaixo como referência.

A tela deve-se parecer agora com:

3. Dê um duplo clique no novo retângulo.

A caixa de diálogo de animações aparece.

4. Selecione a guia Fill.

A caixa de diálogo muda para mostrar as propriedades de preenchimento.

5. Selecione a caixa de opção “Animate” ao lado da propriedade Vertical Fill Percentage.

A caixa de diálogo mostra os campos de configuração.

6. Configure as seguintes opções com os valores da direta:

Data Source: MASH_LEVELMinimum Input: 0.00Maximum Input: 1000.00

Page 107: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-31

___________________________________________________Exercício 3

D. Adicione e anime um retângulo (continuação).

7. Quando terminar, selecione a guia Color.A caixa de diálogo mostra agora as propriedades de cor.

8. Selecione a caixa de opção “Animate” ao lado da propriedade Foreground Color.A caixa de diálogo mostra os campos de configuração:

9. Configure as seguintes opções com os valores listados à direta:Data Source: MASH_TEMPRange Comparison: Habilitado

10. Adicione os seguintes limites e cores e selecione OK quando terminar:LOW HIGH: COLOR-150 50 Blue50 100 BrightBlue100 150 BrightYellow150 200 Orange200 250 BrightRed250 700 Red

Page 108: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-32

__________________________________________________ Exercício 3

E. Adicione um link de dado na tela.Crie um link para mostrar o nível do tanque.

1. A partir do menu Insert, selecione Data Link.

O cursor muda para o formato de uma cruz.

2. Desenhe um retângulo à direita do texto “Tank Level”.

A caixa de diálogo do datalink aparece.

3. Configure as seguintes opções com os valores da direta e selecione OK quando terminar:

Data Source: MASH_LEVELData Entry Type: None

A tela deve-se parecer agora com:

Page 109: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-33

___________________________________________________Exercício 3

F. Adicione outros links de dados na tela.

1. Adicione outros links na tela. Use a figura e a tabela abaixo como referência.

Link Data Source Data Entry

Link 1 MALT_SWITCH.A_CV In Place

Link 2 MASH_MIXER.F_CV In Place

Link 3 MASH_TEMP.F_CV None

Link 4 MASH_TEMP_SP.F_CV In Place

Link 5 WATER_SWITCH.A_CV In Place

Link 6 MASH_SWITCH.A_CV In Place

Link 1 Link 5

Link 2

Link 3

Link 4

Link 6

Page 110: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 3-34

__________________________________________________ Exercício 3

G. Salve e veja a tela.

1. A partir do menu File, selecione Save.

A tela é salva.

2. A partir do menu WorkSpace, selecione Switch to Run.

A área de trabalho altera para o modo de execução.

3. Altere o valor do estado do misturador. O que acontece?

4. Mude os valores das válvulas de entrada e saída. O que acontece?

5. Mude o valor do setpoint da temperatura. O que acontece?

Fim do Exercício

Page 111: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 3-35

3.5. Questões de Revisão_____________________________________

1. Cite algumas formas de se alterar as propriedades estáticas de um objeto?

2. Qual a finalidade da janela de propriedade?

3. Explique a seguinte frase: uma animação é na realidade um objeto.

4. Qual a finalidade dos “Animation Experts”?

5. Para que serve um link de dado (Datalink)?

Page 112: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-1

4. WorkSpace ______________________________________________

Capítulo 4

WorkSpace

Page 113: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-2

4. WorkSpace _______________________________________________

Objetivos do Capítulo

Este capítulo mostra como trabalhar com o aplicativo WorkSpace (personalizar, atribuir segurança,etc), como aproveitar todas as propriedades de configuração de uma tela e como trabalhar com asbibliotecas de objetos reutilizáveis chamada Dynamos. Além disso, também mostra como encontrarinformações detalhadas sobre o iFIX no sistema de Help do produto.

O capítulo está organizado nos seguintes tópicos:

• WorkSpace em Run Mode

• Configuração do WorkSpace

• Tamanho da Tela

• Usando o Help

• Documentação Eletrônica

• Biblioteca de Dynamos

Page 114: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-3

4.1. WorkSpace no Modo de Execução _________________________

File WindowOpen CascadeClose Tile HorizontalPrint Tile VerticalExit Close All

WorkSpace HelpSwitch to Configure WorkSpace HelpStatus Bar iFIX Picture HelpVisual Basic EditorToolbarsFull Screen

Figura 4-1: Comandos do Menu WorkSpace (no Modo Run)

Page 115: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-4

4.2. Configuração do WorkSpace _______________________________

A. Introdução

• O aplicativo WorkSpace é o ponto inicial para a utilização do iFIX.

• O WorkSpace permite:

- Adicionar telas, criar Schedules e alterar programas.

- Integrar documentos ActiveX de outros programas.

- Visualizar a hierarquia dos dados da aplicação.

• As configurações padrões do WorkSpace podem ser alteradas na janela UserPreferences, acessada a partir do menu WorkSpace.

B. Guia Shapes Preferences

• Especifica as preferências de formato dos objetos.

• Usado para determinar as propriedades de um novo objeto adicionado à tela.

C. Guia Environment Protection

• Configura a proteção do ambiente.

• Usado para proteger o modo de execução do WorkSpace.

• Enquanto estiver desenvolvendo um sistema, sugere-se não habilitar a opção “EnableRun Time Environment Protection”.

• Ver Figura 4-2

D. Guia Startup Pictures

• Configura as telas a serem abertas no modo de execução, independente se oWorkSpace é iniciado neste modo.

E. Guia Background Startup

• Configura os schedules a serem executados (como tarefas de segundo plano),independente do modo de execução do WorkSpace.

• Outras informações sobre schedules serão vistas mais tarde neste curso.

Page 116: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-5

4.2. Configuração do WorkSpace ______________________________

Figura 4-2: Preferências do Usuário (Guia Environment Protection)

Page 117: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-6

4.2. Configuração do WorkSpace _______________________________

F. Animation Data Error Defaults

- Especifica o formato padrão para os erros de animação de dados.

- Veja a Figura 4-3.

• Linear Animation Object Defaults

- Padrões dos valores numéricos a serem exibidos quando houver um erro deescalonamento de um valor (animação linear).

• Format Animation Object Defaults

- Padrões dos textos a serem mostradas em um link quando houver um erro deanimação de formato.

• Numeric Table Entries e String Table Entries

- Padrões dos valores a serem usados quando houver um erro em uma tabela.

• Color Table Entries

- Padrões de cores a serem utilizadas quando houver um erro em uma tabela.

G. Picture Preferences

• Configura os padrões das propriedades de uma nova tela.

Page 118: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-7

4.2. Configuração do WorkSpace ______________________________

Figura 4-3: Preferências do Usuário (Guia Animation Data Error Defaults)

Page 119: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-8

4.3. Caching de Tela__________________________________________

A. Caching de Tela

• A função Picture Caching permite:

- Pré-carregar tela que ficarão sempre em memória cache.

- O número de telas que devem ser armazenadas em cache deve serconfigurado.

B. Tipos de Telas Armazenadas em Cache

• Existem dois tipos de telas que podem ser armazenadas em cache: telas que estãosendo executadas e as telas pré-carregadas durante a inicialização do sistema.

• Telas em Execução

- Carregadas em cache quando elas são fechadas.

- Quando o número de telas em cache excederem o tamanho do cache, a telamais antiga que foi carregada é substituída pela tela mais recente fechada.

• Telas Pré-Carregadas

- As telas são pré-carregadas quando o WorkSpace é aberto em modo deexecução (Run Mode).

- Possuem a propriedade de AlwaysLoaded

- Elas nunca são retiradas da memória cache enquanto estiverem em Run Mode.

C. Como Pré-Carregar Telas

• Para configurar uma tela para ser pré-carregada quando o WorkSpace é aberto, oarquivo FixUserPreferences.ini, localizado no diretório \Dynamics\LOCAL, deve serconfigurado.

- Use o Notepad ou um editor de texto para editar ou modificar este arquivo(Figura 4-4).

• TotalPreloadPicturePath

- indica o número de telas que deverão ser pré-carregadas em cache.

• PicturePath#N

- indica o nome do arquivo de cada tela que será pré-carregada.

• O WorkSpace somente pré-carrega telas quando a opção Picture Caching estiverhabilitada na janela User Preference do WorkSpace e quando o WorkSpace estiverconfigurado para iniciar em Run Mode

- O WorkSpace não pré-carrega telas quando estiver alternando do modo deconfiguração para o modo de execução.

Page 120: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-9

4.3. Caching de Tela _________________________________________

[AppPreloadPicturePreferences]

; To add a picture to be preloaded increment the count and; add the name of the picture to be preloaded. For Example:

TotalPreloadPicturePath=2

PicturePath#0=Picture1.grf

PicturePath#1=Picture2.grf

Figura 4-4: Configurando o Arquivo FixUserPreferences.ini

D. Observações

• Quando a opção Picture Caching estiver habilitada, algumas alteraçõs feitas em run-time são preservadas enquanto a tela permanecer em cache

• Agumas alterações serão vistas quando a tela for fechada e reaberta a partir do cache,incluindo:

- propriedades de objetos (por exemplo sua cor) são alteras a partir do VBA

- alterações no gráfico feitas a partir de sua janela de configuração em RunMode

• Estas alterações não são armazenadas em arquivo e quando as telas saem de cache, asalterações são perdidas

• A opção de carregar em cache uma tela pode ser desabilitada selecionando a opçãoDisable Caching For This Picture na janela Edit Picture da tela.

• A lista das telas que estão carregadas em cache pode ser vista em modo Runpressionando as teclas <Ctrl><Shft>C

Page 121: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-10

4.4. Tamanho da Tela _________________________________________

A. Introdução

• Quando uma nova tela é criada, são criados um documento e uma janela dentro destedocumento.

- O documento é um ActiveX Container para a tela do iFIX.

- A janela é a área disponível do documento que estabelece os limites quepodem ser vistos no monitor.

B. Tamanho da Tela

• O documento trabalha com o sistema de coordenadas lógicas.

• Isto significa que o documento se baseia em unidades lógicas, não em pixels.

- O iFIX calcula a relação ponto a ponto entre a resolução em pixels do monitore as unidades lógicas do documento.

- Exemplo:

◊ Um monitor padrão VGA possui resolução 640x480 pixels.

◊ O tamanho padrão da tela mostrada neste monitor não é 640x480pixels.

◊ Ao invés disso, o tamanho é 100x75 (unidade lógica).

• Se o tamanho do documento for configurado para ser metade da altura do monitor, alargura do documento continua igual a 100 mas sua altura é ajustada para 37.5.

C. Dimensões da Tela

• WindowHeight/WidthPercentage

- Altura e largura da janela em porcentagem.

- Espaço onde os objetos contidos em um documento são mostrados.

- Medidas em porcentagem do documento.

• DocumentHeight/Width

- Altura e largura do documento.

- Tela onde os objetos serão desenhados com a finalidade de serem mostrados.

- Medidas em unidades lógicas.

Page 122: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-11

4.5. 4.3. ______________________________________ Caching de Tela

A. Caching de Tela

• A função Picture Caching permite:

- Pré-carregar tela que ficarão sempre em memória cache.

- O número de telas que devem ser armazenadas em cache deve serconfigurado.

B. Tipos de Telas Armazenadas em Cache

• Existem dois tipos de telas que podem ser armazenadas em cache: telas que estãosendo executadas e as telas pré-carregadas durante a inicialização do sistema.

• Telas em Execução

- Carregadas em cache quando elas são fechadas.

- Quando o número de telas em cache excederem o tamanho do cache, a telamais antiga que foi carregada é substituída pela tela mais recente fechada.

• Telas Pré-Carregadas

- As telas são pré-carregadas quando o WorkSpace é aberto em modo deexecução (Run Mode).

- Possuem a propriedade de AlwaysLoaded

- Elas nunca são retiradas da memória cache enquanto estiverem em Run Mode.

C. Como Pré-Carregar Telas

• Para configurar uma tela para ser pré-carregada quando o WorkSpace é aberto, oarquivo FixUserPreferences.ini, localizado no diretório \Dynamics\LOCAL, deve serconfigurado.

- Use o Notepad ou um editor de texto para editar ou modificar este arquivo(Figura 4-4).

• TotalPreloadPicturePath

- indica o número de telas que deverão ser pré-carregadas em cache.

• PicturePath#N

- indica o nome do arquivo de cada tela que será pré-carregada.

• O WorkSpace somente pré-carrega telas quando a opção Picture Caching estiverhabilitada na janela User Preference do WorkSpace e quando o WorkSpace estiverconfigurado para iniciar em Run Mode

Page 123: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-12

- O WorkSpace não pré-carrega telas quando estiver alternando do modo deconfiguração para o modo de execução.

Page 124: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-13

4.3. Caching de Tela _________________________________________

[AppPreloadPicturePreferences]

; To add a picture to be preloaded increment the count and; add the name of the picture to be preloaded. For Example:

TotalPreloadPicturePath=2

PicturePath#0=Picture1.grf

PicturePath#1=Picture2.grf

Figura 4-4: Configurando o Arquivo FixUserPreferences.ini

D. Observações

• Quando a opção Picture Caching estiver habilitada, algumas alteraçõs feitas em run-time são preservadas enquanto a tela permanecer em cache

• Agumas alterações serão vistas quando a tela for fechada e reaberta a partir do cache,incluindo:

- propriedades de objetos (por exemplo sua cor) são alteras a partir do VBA

- alterações no gráfico feitas a partir de sua janela de configuração em RunMode

• Estas alterações não são armazenadas em arquivo e quando as telas saem de cache, asalterações são perdidas

• A opção de carregar em cache uma tela pode ser desabilitada selecionando a opçãoDisable Caching For This Picture na janela Edit Picture da tela.

• A lista das telas que estão carregadas em cache pode ser vista em modo Runpressionando as teclas <Ctrl><Shft>C

Page 125: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-14

Tamanho da Tela _____________________________________________

Largura Documento100 unidades

Altura

75 unidades

Janela

Largura da JanelaPorcentagem

Porcentagem

Figura 4-5: Tamanho da Tela

Figura 4-6: Caixa de Diálogo de Edição da Tela

Page 126: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-15

4.6. 4.3. ______________________________________ Caching de Tela

A. Caching de Tela

• A função Picture Caching permite:

- Pré-carregar tela que ficarão sempre em memória cache.

- O número de telas que devem ser armazenadas em cache deve serconfigurado.

B. Tipos de Telas Armazenadas em Cache

• Existem dois tipos de telas que podem ser armazenadas em cache: telas que estãosendo executadas e as telas pré-carregadas durante a inicialização do sistema.

• Telas em Execução

- Carregadas em cache quando elas são fechadas.

- Quando o número de telas em cache excederem o tamanho do cache, a telamais antiga que foi carregada é substituída pela tela mais recente fechada.

• Telas Pré-Carregadas

- As telas são pré-carregadas quando o WorkSpace é aberto em modo deexecução (Run Mode).

- Possuem a propriedade de AlwaysLoaded

- Elas nunca são retiradas da memória cache enquanto estiverem em Run Mode.

C. Como Pré-Carregar Telas

• Para configurar uma tela para ser pré-carregada quando o WorkSpace é aberto, oarquivo FixUserPreferences.ini, localizado no diretório \Dynamics\LOCAL, deve serconfigurado.

- Use o Notepad ou um editor de texto para editar ou modificar este arquivo(Figura 4-4).

• TotalPreloadPicturePath

- indica o número de telas que deverão ser pré-carregadas em cache.

• PicturePath#N

- indica o nome do arquivo de cada tela que será pré-carregada.

• O WorkSpace somente pré-carrega telas quando a opção Picture Caching estiverhabilitada na janela User Preference do WorkSpace e quando o WorkSpace estiverconfigurado para iniciar em Run Mode

Page 127: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-16

- O WorkSpace não pré-carrega telas quando estiver alternando do modo deconfiguração para o modo de execução.

Page 128: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-17

4.3. Caching de Tela _________________________________________

[AppPreloadPicturePreferences]

; To add a picture to be preloaded increment the count and; add the name of the picture to be preloaded. For Example:

TotalPreloadPicturePath=2

PicturePath#0=Picture1.grf

PicturePath#1=Picture2.grf

Figura 4-4: Configurando o Arquivo FixUserPreferences.ini

D. Observações

• Quando a opção Picture Caching estiver habilitada, algumas alteraçõs feitas em run-time são preservadas enquanto a tela permanecer em cache

• Agumas alterações serão vistas quando a tela for fechada e reaberta a partir do cache,incluindo:

- propriedades de objetos (por exemplo sua cor) são alteras a partir do VBA

- alterações no gráfico feitas a partir de sua janela de configuração em RunMode

• Estas alterações não são armazenadas em arquivo e quando as telas saem de cache, asalterações são perdidas

• A opção de carregar em cache uma tela pode ser desabilitada selecionando a opçãoDisable Caching For This Picture na janela Edit Picture da tela.

• A lista das telas que estão carregadas em cache pode ser vista em modo Runpressionando as teclas <Ctrl><Shft>C

Page 129: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-18

Tamanho da Tela _____________________________________________

C. Alterando o Tamanho da Janela

• Uma tela é definida pelo tamanho da janela de um documento.

• Para alterar o tamanho de uma tela, altere o tamanho da janela.

• Quando uma nova tela é aberta, as propriedades da janela e do documento sãomostradas na caixa de diálogo Picture Preferences.

- Especifique qualquer unidade lógica para representar o tamanho da tela.

D. Para Alterar o Tamanho da Janela Usando as Preferências do Usuário

1. A partir do menu WorkSpace, selecione User Preferences e então selecione a guiaPicture Preferences.

- Veja a Figura 4-7.

2. Especifique o tamanho da janela no campo Window Size.

- Use o menu para fazer sua seleção.

- O tamanho da janela é ajustado automaticamente.

3. Se desejar, especifique o tamanho do documento (em unidades lógicas) nos camposDocument Width/Height.

E. Para Alterar o Tamanho da Janela Usando Unidades Lógicas

1. A partir do menu Edit, selecione Picture.

- Veja a Figura 4-6.

2. Especifique a largura da janela (em unidades lógicas) no campo Window Width.

3. Especifique a altura da janela (em unidades lógicas) no campo Window Height.

F. Convertendo Telas Para Serem Vistas em Outra Resolução

• Telas criadas e vistas em uma resolução podem ser facilmente vistas em qualqueroutra resolução de monitor.

• Durante a conversão, as unidades são arredondadas e o sistema de coordenadaslógicas é mantido.

• Mesmo que o documento seja maior que a área visível, o iFIX re-escala a telafazendo que se pareça como na resolução inferior.

- Mesmo que um objeto esteja fora da área visível, ele ainda faz parte dodocumento.

- O objeto pode ser selecionado na árvore do sistema.

Page 130: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-19

4.7. 4.3. ______________________________________ Caching de Tela

A. Caching de Tela

• A função Picture Caching permite:

- Pré-carregar tela que ficarão sempre em memória cache.

- O número de telas que devem ser armazenadas em cache deve serconfigurado.

B. Tipos de Telas Armazenadas em Cache

• Existem dois tipos de telas que podem ser armazenadas em cache: telas que estãosendo executadas e as telas pré-carregadas durante a inicialização do sistema.

• Telas em Execução

- Carregadas em cache quando elas são fechadas.

- Quando o número de telas em cache excederem o tamanho do cache, a telamais antiga que foi carregada é substituída pela tela mais recente fechada.

• Telas Pré-Carregadas

- As telas são pré-carregadas quando o WorkSpace é aberto em modo deexecução (Run Mode).

- Possuem a propriedade de AlwaysLoaded

- Elas nunca são retiradas da memória cache enquanto estiverem em Run Mode.

C. Como Pré-Carregar Telas

• Para configurar uma tela para ser pré-carregada quando o WorkSpace é aberto, oarquivo FixUserPreferences.ini, localizado no diretório \Dynamics\LOCAL, deve serconfigurado.

- Use o Notepad ou um editor de texto para editar ou modificar este arquivo(Figura 4-4).

• TotalPreloadPicturePath

- indica o número de telas que deverão ser pré-carregadas em cache.

• PicturePath#N

- indica o nome do arquivo de cada tela que será pré-carregada.

• O WorkSpace somente pré-carrega telas quando a opção Picture Caching estiverhabilitada na janela User Preference do WorkSpace e quando o WorkSpace estiverconfigurado para iniciar em Run Mode

Page 131: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-20

- O WorkSpace não pré-carrega telas quando estiver alternando do modo deconfiguração para o modo de execução.

Page 132: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-21

4.3. Caching de Tela _________________________________________

[AppPreloadPicturePreferences]

; To add a picture to be preloaded increment the count and; add the name of the picture to be preloaded. For Example:

TotalPreloadPicturePath=2

PicturePath#0=Picture1.grf

PicturePath#1=Picture2.grf

Figura 4-4: Configurando o Arquivo FixUserPreferences.ini

D. Observações

• Quando a opção Picture Caching estiver habilitada, algumas alteraçõs feitas em run-time são preservadas enquanto a tela permanecer em cache

• Agumas alterações serão vistas quando a tela for fechada e reaberta a partir do cache,incluindo:

- propriedades de objetos (por exemplo sua cor) são alteras a partir do VBA

- alterações no gráfico feitas a partir de sua janela de configuração em RunMode

• Estas alterações não são armazenadas em arquivo e quando as telas saem de cache, asalterações são perdidas

• A opção de carregar em cache uma tela pode ser desabilitada selecionando a opçãoDisable Caching For This Picture na janela Edit Picture da tela.

• A lista das telas que estão carregadas em cache pode ser vista em modo Runpressionando as teclas <Ctrl><Shft>C

Page 133: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-22

Tamanho da Tela _____________________________________________

Figura 4-7: Preferências do Usuário (Guia Picture Preferences)

Page 134: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-23

4.8. Usando o Help __________________________________________

A. Introdução

• Usado como fonte rápida de informações e procedimentos.

• Corresponde a um subconjunto das informações mais importantes do manual.

• A Figura 4-8 mostras as diversas formas de acessar o sistema de Help do iFIX.

B. Help “What’s This?”

• Usado para obter informações sobre um campo de uma janela.

• Pode-se acessar o help “What's This?” das seguintes formas:

- Para se ter ajuda sobre um determinado campo, selecione o campo e cliquecom o botão direito do mouse.

- Para se ter ajuda sobre um campo da caixa de diálogo, selecione o botão“What's This?” da caixa de diálogo (<Shift><F1>) e em seguida clique sobreo campo que deseja obter informação.

C. Usando o Help em Outras Aplicações

• Informações do Help podem ser copiadas para outras aplicações

- Selecione o tópico do Help a ser copiado.

- Selecione a opção Copy a partir do menu Edit.

- Isto faz com que o texto seja copiado para a área de transferência.

• Informações também podem ser adicionadas de outras aplicações.

- Veja a seção que trata de adição de anotações.

• Pode ser usado para copiar informações de uma área do Help para outra.

D. Adicionando Anotações ao Help

• As anotações podem ser usadas para adicionar comentários ao Help.

• A partir do Help, selecione o botão Options e escolha Annotate.

• Um clipe aparece próximo ao título da informação anotada.

- selecione o clipe para ver a anotação, como mostra a Figura 4-8.

Page 135: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-24

4.8. Usando o Help ___________________________________________

Selecione… Para acessar...

Help Topics a partir do menu Help. tabela de conteúdo, índice oubusca por palavra

Botão Help da caixa de diálogo ajuda específica sobre uma caixade diálogo

<SHFT><F1> ou somente <F1> ajuda sobre um campo específico

o botão com o sinal de interrogaçãono canto superior direito da caixa dediálogo e em seguida o campo oucontrole que deseja ajuda

ajuda do tipo What's This? para ocampo ou controle da caixa dediálogo

Figura 4-8: Usando o Help

Figura 4-9: Anotação do Help

Page 136: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-25

4.9. Documentação Eletrônica _________________________________

A. Introdução

• A documentação técnica do iFIX vem em formato eletrônico e é referenciado porElectronic Books

• Ele pode ser acessado a partir da pasta Help and Information na árvore do sistemado WorkSpace (Veja a Figura 4-10).

• O Electronic Books tem a mesama organização que o WorkSpace:

- Ao lado esquerdo ficam conteúdo, índice e ferramentas de busca pornavegação.

- Ao lado direito ficam os textos e gráficos do manual.

B. Botões do “Electronic Books”

• Botões Hide/Show

- Alterna entre mostrar ou não as guias de conteúdo, índice e botões de busca.

• Botão Back

- Mostra o último tópico acessado pelo usuário.

• Botão Forward

- Mostra o próximo tópico seguindo a seqüência a partir do tópico atual.

• Botão Stop

- Quando estiver vendo páginas de Internet, pára o download de dados.

• Botão Refresh

- Quando estiver vendo páginas de Internet, busca novamente o arquivo atual.

• Botão Print

- Se a guia Contents estiver sendo mostrada, fornece opções para imprimirpáginas, cabeçalhos, sub-tópicos ou a tabela inteira de conteúdos.

- Se a guia Index ou Search estiver sendo mostrada, imprime o tópico atual.

• Botão Options

- Mostra um menu com os comandos “Back”, “Forward”, “Stop”, “Refresh”,“Hide/Show” e “Print”.

Page 137: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-26

4.9. Documentação Eletrônica _________________________________

Figura 4-10: Exemplo do “Electronic Books”

Page 138: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-27

4.9. Documentação Eletrônica _________________________________

C. Busca

• Busca por tópicos usando a guia de índice ou a guia de pesquisa

- A partir da guia Index/Índice, entre com uma palavra-chave

◊ Se a palavra-chave existir, serão mostrados todos os tópicosrelacionados

- A partir da guia Search/Pesquisar, entre com uma palavra

◊ Uma lista de todos os tópicos que contém aquela palavra serámostrada (Figura 4-11).

• Sugestões de Busca

- Faça a busca por uma palavra e obtenha uma lista de todos os tópicos doElectronic Books que aparece a palavra da busca

- Se digitar mais de uma palavra:

◊ Aparecerão na lista todos os tópicos que incluem todas as palavrasdigitadas.

◊ Colocando as palavras entre aspas, é mostrada uma lista de tópicos dafrase digitada.

Page 139: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-28

4.9. Documentação Eletrônica _________________________________

Figura 4-11: Exemplo de Busca no “Electronic Books”

Page 140: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-29

4.10. Conjuntos de Dynamos ___________________________________

A. Introdução

• Existem objetos que são mais utilizados durante o desenvolvimento da aplicação.

• O iFIX oferece um modo conveniente de salvar objetos personalizados e programasde aplicações em um conjunto de alto nível de objetos reutilizáveis.

- Estes objetos são chamados de dynamos.

- Os dynamos ajudam a criar um projeto consistente.

• O iFIX oferece uma vasta opção de dynamos pré-construídos.

B. Usando os Dynamos

• Para abrir um conjunto de dynamos, abra a guia Dynamo Sets a partir da árvore dosistema ou dê um duplo clique no conjunto desejado.

- Veja a Figura 4-12 para um exemplo.

- Arraste o objeto do conjunto de dynamos para a tela.

Page 141: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-30

4.10. Conjuntos de Dynamos ___________________________________

Figura 4-12: Área de Trabalho com um Conjunto de Dynamos

Page 142: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-31

4.11. Exercício 4______________________________________________

Ferramentas Gráficas Adicionais

Exercício 4

Page 143: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-32

__________________________________________________ Exercício 4

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Adicionar dynamos a uma nova tela

Introdução:

Neste exercício, iremos continuar a desenvolver a aplicação de produção de cerveja, criandouma nova tela para monitorar a tina de filtração (Lauter Tun). Na tina de filtração o malte émisturado com água quente. Ele então é filtrado para remover os grãos do líquido. O grãoúmido é normalmente vendido para ração animal. O líquido resultante é chamado de mosto eserá fermentado para produzir cerveja.

Nos exercícios anteriores criamos telas a partir da combinação de objetos. Agora, iremos usarobjetos de conjuntos de dynamos pré-construídos. Iremos adicionar um dynamo para representara tina de filtração bem como dynamos para as tubulações de entrada e saída do tanque. Quandoterminar, sua tela deverá se parecer com:

Quando terminar este exercício, vá para a próxima seção e responda as questões.

Page 144: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-33

___________________________________________________Exercício 4

A. Crie uma nova tela.Crie uma nova tela e adicione um dynamo de tanque.

1. A partir do menu File, selecione New –Picture.

Uma nova tela sem título aparecerá.

2. A partir da árvore do sistema, dê um clique duplo na guia Dynamo Sets.

A lista de conjuntos de dynamos disponíveis aparecerá.

3. Dê um clique duplo no conjunto TanksAnim1.

A lista de tanques fica disponível e o conjunto de dynamos aparece no WorkSpace.

4. Arraste o seguinte dynamo à tela:

TankPressurizedD1

A seguinte caixa de diálogo aparece:

5. Configure as seguintes opções com os valores da direta:

Tagname for Tank Level: LAUTER_LEVELFetch Limits from Data Source: Habilitado

6. Quando terminar, selecione OK.

7. Feche o conjunto de dynamos.

Você estará de volta à figura.

Page 145: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-34

__________________________________________________ Exercício 4

B. Adicione dynamos extras.Adicione dynamos de tubulação no clarificador.

1. Dê um duplo clique no conjunto de dynamos Pipes a partir da árvore do sistema.

A lista de conjuntos de dynamos disponíveis aparecerá.

2. Arraste o seguinte dynamo à tela:

PipeHorz1

Uma caixa de diálogo aparece para selecionar a cor da tubulação.

3. Selecione OK para manter a cor cinza da tubulação.

4. Adicione três tubulações extras para a tela usando a figura abaixo como um guia.

5. Quando terminar, feche o conjunto de dynamos de tubulações

A tela deve-se parecer agora com:

Page 146: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-35

___________________________________________________Exercício 4

C. Adicione válvulas à tela.Adicione dynamos de válvula no clarificador.

1. Dê um duplo clique no conjunto de dynamos ValvesAnim a partir da árvore do sistema.

2. Arraste o seguinte dynamo à tela:

ValveHorizontalControlE1

A seguinte caixa de diálogo aparece:

3. Selecione o botão Animate Valve Color.

A seguinte tela aparece:

Page 147: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-36

__________________________________________________ Exercício 4

C. Adicione válvulas à tela (continuação).

4. Configure as seguintes opções com os valores listados a direita:

Data Source: MASH_SWITCHColor Threshold Exact Match: Habilitado

5. Adicione os seguintes limites de cores:

VALOR COR0.00 BrightRed1.00 BrightGreen

6. Quando terminar, selecione OK.

Você estará de volta na caixa de diálogo do dynamo.

7. Selecione OK para retornar à tela.

8. Adicione válvulas extras na tela usando as fontes de dados listadas na figura abaixo efeche o conjunto de dynamos quando terminar.

Válvula Data Source

Válvula 1 WATER_SWITCHVálvula 2 LAUTER_SWITCH

Válvula 1

Válvula 2

MASH_SWITCH

Page 148: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-37

___________________________________________________Exercício 4

D. Adicione textos à tela.Adicione cabeçalhos e títulos à tela.

1. Usando o objeto de texto, adicione título à tela. Use a figura abaixo como guia.

Quando terminar, a tela deverá se parecer com:

2. A partir do menu File, selecione Save.

A caixa de diálogo para salvar aparece.

3. Entre com o seguinte no campo File Name:

LauterTun

4. Selecione Save para salvar a figura.

Fim do Exercício

Page 149: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 4-38

4.12. Questões de Revisão _____________________________________

1. Para que serve uma anotação no Help?

2. Que versão do Microsoft Internet Explorer deve ser instalada para usar o e-books do iFIX?

3. Para que serve a seção “Animation Data Error” nas preferências do usuário do WorkSpace?

4. Como você pode mudar o tamanho padrão de fonte para um novo texto em uma figura?

5. Em relação a uma tela do iFIX, qual é a diferença entre a altura de um documento e a altura deuma janela?

Page 150: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 4-39

4.8. Questões de Revisão_____________________________________

página em branco

Page 151: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-1

5. Ferramentas Gráficas Adicionais _____________________________

Capítulo 5

Ferramentas Gráficas Adicionais

Page 152: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-2

5. Ferramentas Gráficas Adicionais ____________________________

Objetivos do Capítulo

Este capítulo introduz os assistentes de animação dos objetos da tela, bem como novos objetosgráficos como os objetos de data e hora e a inserção de figuras do tipo bitmap na tela. Além disso,mostra como trabalhar com objetos globais como tabelas e variáveis globais.

O capítulo está organizado nos seguintes tópicos:

• Assistentes de Tela

• Objetos de Data e Hora

• Usando Bitmaps

• Assistentes para Entrada de Dados

• Tabelas e Variáveis Globais

Page 153: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-3

5. Ferramentas Gráficas Adicionais ____________________________

A. Revisão

• Os “Experts” permitem o usuário animar objetos sem o uso da caixa de diálogo deanimação

• Os “Experts” usados em capítulos anteriores incluem:

- Preenchimento

- Rotação

- Posição

- Escala

- Visibilidade

- Cor

• A área de trabalho também contém “Experts” adicionais

- O usuário pode adicionar outros “Experts” usando programação em VBA

◊ isto será discutido em capítulos posteriores

Page 154: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-4

5.1. Assistentes de Tela_______________________________________

A. Open Picture

• Atribui a abertura de uma tela a um objeto

• Quando o objeto é selecionado no modo de execução, uma nova tela é aberta

• Ver Figura 5-1

B. Replace Picture

• Atribui a mudança de tela a um objeto

• Quando o objeto é selecionado no modo de execução, uma tela é fechada e outra éaberta em seu lugar

- o objeto não precisa estar contido em nenhuma das telas de troca

• Ver Figura 5-2

C. Close Picture

• Atribui o fechamento de uma tela a um objeto

• Quando o objeto é selecionado no modo de execução, uma tela é fechada

- o objeto não precisa estar contido na tela que será fechada

• Ver Figura 5-3

D. Generate Picture

• Especifica a localização da janela e outras informações para criar uma nova tela naárea de trabalho

• Ver Figura 5-4

Page 155: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-5

5.1. Assistentes de Tela ______________________________________

Figura 5-1: “Expert” para Abrir uma Tela Figura 5-2: “Expert” para Trocar de Tela

Figura 5-3: “Expert” para Fechar uma Tela

Figura 5-4: “Expert” para Gerar uma Tela

Page 156: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-6

5.2. Objetos de Data e Hora____________________________________

A. Objeto Hora

• A partir do menu Insert, selecione Current Time

• As propriedades do objeto podem ser editadas como qualquer outro objeto texto

- ver Figura 5-5

- Exemplos:

◊ animar a cor do texto

◊ animar sua altura e largura

◊ animar sua localização

B. Objeto Data

• A partir do menu Insert, selecione Current Date

• As propriedades do objeto podem ser editadas como qualquer outro objeto texto

- similar ao objeto hora

Page 157: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-7

5.2. Objetos de Data e Hora ___________________________________

Figura 5-5: Propriedades do Objeto Hora

Page 158: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-8

5.3. Bitmaps ________________________________________________

A. Adicionando um Bitmap à Tela

• A partir do menu Insert, selecione Bitmap. A caixa de diálogo para abrir um arquivoaparece. Selecione o arquivo de imagem desejado e selecione Open.

• Pode-se trabalhar com vários tipos de arquivos de imagem, como por exemplo: bmp,msp, jpg, ico, wmf, pcx, etc.

B. Trabalhando com Bitmaps

• O bitmap pode ser tratado como qualquer objeto da área de trabalho

- existem algumas opções extras para um bitmap

• Load Image Primary/Secondary

- uma segunda imagem pode ser configurada para aparecer enquanto o mouseestiver pressionado

- isto é configurado no “load image: secondary” a partir do menu do botãodireito do mouse do bitmap

- também pode ser configurado usando a caixa de diálogo de animação

◊ ver Figura 5-6

• Transparent Color

- permite que uma cor do bitmap fique transparente

◊ isto significa que você pode eliminar o fundo do bitmap

- primeiro, selecione a cor de transparência, configurando “transparency color”a partir do menu do botão direito do mouse do bitmap

- habilite então a transparência para o objeto (enable transparency)

◊ estas duas funções também podem ser feitas a partir da janela depropriedades ou da caixa de diálogo de animação

◊ ver Figura 5-7

Page 159: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-9

5.3. Bitmaps ________________________________________________

Figura 5-6: Aminações do Bitmap

Figura 5-7: Propriedades de Cor do Bitmap

Page 160: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-10

5.4. Assistente para Entrada de Dados __________________________

A. Notas:

• Usado para enviar valores de uma figura de volta para uma fonte de dados

• normalmente associado a um link de dados, mas também pode ser usado com quasetodos os objetos da tela

B. Data Entry Expert - Métodos de Entrada de Dados

• Numeric/Alphanumeric Entry

- permite mudar o valor do tag através de digitação no modo de execução

• Slider Entry

- permite mudar o valor do tag através da movimentação de um controladordeslizante no modo de execução

• Pushbutton Entry

- permite configurar o valor de um tag para 0 ou 1

- usado principalmente para tags digitais

- o usuário terá dois botões no modo de execução, cujos títulos podem serconfigurados:

◊ um botão que, quando selecionado, envia o valor 0 para o tag

◊ outro que envia o valor 1

- os títulos podem ter até 12 caracteres de tamanho

• Ramp Entry

- permite estabelecer uma rampa ascendente ou descendente no tag com osvalores em porcentagem no modo de execução

- isto é feito pelo usuário enquanto estiver no modo de execução

Page 161: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-11

5.4. Assistente para Entrada de Dados__________________________

Figura 5-8: Ferramenta “Data Entry Expert”

Page 162: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-12

5.5. Objetos Globais__________________________________________

A. Introdução

• A pasta Globals da árvore do sistema do WorkSpace contém alguns objetos globaisque podem ser acessados a partir de qualquer tela do sistema.

• Esta pasta contém duas sub-pastas: User e Plug and Solve

- Plug and Solve: usada para criar objetos globais com outros programas comcaracterística plug and solve da Intellution.

- User: usada para criar objetos globais definidos pelo usuário que ficarãodisponíveis para todas as telas (este capítulo irá focar o uso desta pasta).

• Para adicionar objetos globais na pasta User, clique com o botão direito do mouse naárvore do sistema sobre a pasta User.

• Estes objetos globais podem ser acessados a partir de qualquer tela do iFIX.

• Exemplos de objetos globais:

- Procedimentos globais

- Formulários globais (serão vistos no capítulo 18 sobre VBA)

- Variáveis globais

- Tabelas globais (threshold table)

B. Procedimentos Globais

• Pode-se criar sub-rotinas e funções globais que podem ser acessadas a partir dequalquer projeto (tela) do iFIX.

• Os procedimentos globais serão vistos no capítulo sobre programação VBA.

C. Formulários Globais

• Um formulário global pode ser acessado a partir de qualquer tela do iFIX,possibilitando que exista apenas uma cópia do formulário no sistema.

- Com isso fica mais fácil atualizar o formulário e minimiza o tamanho dosarquivos de tela do iFIX.

• Os formulários globais serão vistos no capítulo sobre programação VBA.

Page 163: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-13

5.6. Variáveis Globais ________________________________________

A. Entendendo o Uso de Variáveis

• A vantagem de se usar variáveis é que seus valores são preservados enquanto aaplicação estiver sendo executada.

- Normalmente, quando um procedimento é executado, suas variáveis sãoiniciadas e qualquer mudança em seus valores é conservada até a finalizaçãodo procedimento.

- Na próxima vez que o procedimento for executado, as variáveis são iniciadasnovamente.

• Variáveis globais são carregadas quando a aplicação é iniciada e permanecedisponível até que a aplicação seja finalizada.

• Recomenda-se utilizar variáveis globais somente quando for absolutamentenecessárias pois a performance do sistema pode ser afetada.

B. Adicionando Variáveis Globais

• Existe duas formas de adicionar uma variável global:

- Clique com o botão direito do mouse sobre a pasta User e selecione CreateVariable.

- Use o botão Variable da Toolbox.

• Observação:

- O botão da Toolbox permite criar uma variável global ou uma variável local(estas ficam disponíveis somente para a tela atual).

Page 164: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-14

5.6. Variáveis Globais_________________________________________

Figura 5-9: Criando uma Variável Global

Figura 5-10: Criando uma Variável Global

Page 165: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-15

5.6. Variáveis Globais ________________________________________

C. Usando Variáveis Globais

• O valor de uma variável global pode ser acessada usando a seguinte sintaxe:

- User.NomeVariavel.CurrentValue

• Outras propriedades da varável podem ser vistas e configuradas na Property Windowou na caixa de diálogo Animations

Figura 5-11: Propriedades das Variáveis Globais

Figura 5-12: Propriedades das Variáveis Globais

Page 166: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-16

5.6. Variáveis Globais_________________________________________

Figura 5-13: Variáveis Globais no Expression Builder

Page 167: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-17

5.7. Tabelas Globais _________________________________________

A. Tabelas Globais

• As tabelas globais são chamadas de Threshold Table e também são conhecidas porShared Tables ou Lookup Tables

• Permite criar um conjunto de tabelas mais usadas no sistema.

• Podem ser usadas para criar tabelas de:

- limites de cores (Figura XX)

- valores string (texto) ou faixas de valores (Figura XX)

• Exemplos:

- valores digitais vermelho e verde para válvulas

- faixas de temperaturas

- faixa de valores numéricos para serem convertidos em texto

B. Criando uma Tabela Global

• Clique sobre a pasta User com o botão direito do mouse e selecione CreateThreshold Table

• Para nomear a tabela, clique com o botão direito do mouse sobre a nova tabela eselecione Property Window

- altere a propriedade Name da nova tabela

Page 168: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-18

5.7. Tabelas Globais __________________________________________

Figura 5-14: Criando uma Tabela Global de Cores (Threshold Table)

Figura 5-15: Criando uma Tabela Global tipo String (Threshold Table)

Page 169: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-19

5.7. Tabelas Globais _________________________________________

A. Usando as Tabelas Globais

• O valor de uma tabela global pode ser encontrado usando a seguinte sintaxe:

- User.NomeTabela

- Não é necessário referenciar nenhuma propriedade em especial da tabela.

• Para usar a tabela global, selecione o botão Advanced da janela Animations quandoestiver animando um objeto (veja a Figura XX) e então configure a tabela na áreaShared Lookup Object da janela que aparece (veja a Figura XX).

Figura 5-16: Using a Global Threshold Table

Page 170: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-20

5.7. Tabelas Globais __________________________________________

Figura 5-17: Configurando a Tabela Global

Page 171: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-21

5.8. ______________________________________________Exercício 5

Ferramentas Gráficas Adicionais

Exercício 5

Page 172: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-22

__________________________________________________ Exercício 5

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Usar os “Experts” para criar a navegação de telas.2. Adicionar objetos de data e hora na tela.3. Usar a ferramenta “Data Entry Expert” com link de dados.4. Adicionar um bitmap na tela.5. Usar uma tabela threshold.

Informações sobre o exercício:

Neste exercício, iremos continuar a desenvolver aplicação da produção de cerveja criando umatela para monitorar o tanque de cozimento de mosto (Brew Kettle). Neste tanque o mosto vindoda tina de filtração é fervido por mais ou menos uma hora. Nos últimos 15 minutos decozimento, adiciona-se lúpulo ao mosto fervente.

Nos exercícios anteriores, criamos telas combinando vários tipos de formas e objetos ou usandodínamos. Neste exercício, iremos usar uma imagem bitmap de um tanque, além de outrosobjetos. Quando terminar, a tela deverá se parecer com:

Quando terminar este exercício, vá para a próxima seção e responda as questões de revisão.

Page 173: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-23

___________________________________________________Exercício 5

A. Crie uma nova tela.Faça uma nova tela e adicione um dínamo de tanque.

1. A partir do menu File, selecione New –Picture.

Uma nova tela sem nome aparece.

2. A partir do menu Insert, selecione Bitmap.

A caixa de diálogo de abertura de arquivo aparece.

3. Selecione o seguinte arquivo e selecione o botão Open.

C:\Dynamics\App\BrewKettle.bmp

O bitmap do tanque de infusão aparece na tela.

4. Usando o botão direito do mouse, selecione o bitmap “Brew Kettle” e selecineTransparent Color.

A caixa de diálogo de configuração da cor transparente aparece.

5. Selecione na caixa a cor Bright Cyan (fica no canto direito superior) e então OK.

6. Usando o botão direito do mouse, selecione o bitmap “Brew Kettle” e selecione EnableTransparency.

A tela deve-se parecer agora com:

Page 174: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-24

__________________________________________________ Exercício 5

B. Adicione outros objetos gráficos.Adicione tubulações à tela usando dínamos de tubulação, bem como títulos e objetos texto.

1. Usando o conjunto de dínamos Pipes, adicione tubulações ao tanque de infusão. Use afigura abaixo como referência.

2. Adicione um título na tela.

3. Insira um objeto de data na tela.

4. Insira um objeto de hora na tela.

5. Insira objetos de texto na tela.

Quando terminar, a tela deverá se parecer com:

Page 175: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-25

___________________________________________________Exercício 5

C. Crie uma tela de navegação.Crie um botão seta para retornar para a tela do clarificador.

1. Certifique-se de que a barra de ferramentas dos “Experts” esteja aberta. Para abri-la,selecione Toolbars a partir do menu WorkSpace, e selecione então a barra deferramentas Picture Expert.

2. A partir do menu Insert, selecione Polygon.

O cursor muda para o formato de uma cruz.

3. Use a figura abaixo como guia para criar uma seta a partir de um polígono:

4. Certifique-se de que o objeto selecionado é a seta.

A seta terá guias ao seu redor indicando que está selecionada.

5. A partir da barra de ferramentas Expert, selecione Replace Picture Expert.

A seguinte caixa de diálogo aparece:

6. Configure as seguintes opções com os valores da direta:

Replace Current Picture in Run Mode HabilitadoNew Picture: LauterTun

7. Quando terminar, selecione OK.

Quando este polígono for selecionado no modo de execução, esta tela será fechada e atela do clarificador será aberta.

Page 176: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-26

__________________________________________________ Exercício 5

D. Adicione links de dados.Adicione links de dados para controlar a temperatura do tanque.

1. Adicione dois links de dados na tela. Use a figura e a tabela abaixo como referência.

Link Data Source Data Entry

Link 1 BREW_TEMP None

Link 2 BREW_TEMP_SP None

Link 1

Link 2

Page 177: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-27

___________________________________________________Exercício 5

D. Adicione links de dados (continuação).

2. Selecione o link inferior.

Guias aparecem ao redor do link.

3. A partir da barra de ferramentas “Expert”, selecione Data Entry Expert.

A seguinte caixa de diálogo aparece:

4. Configure as seguintes opções com os valores da direta:

Slider Entry: HabilitadoFetch Limits from the Data Source: Habilitado

5. Quando terminar, selecione OK para retornar à tela.

Page 178: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-28

__________________________________________________ Exercício 5

E. Crie uma tabela global.Crie uma tabela global com duas cores: vermelho e verde.

1. A partir da árvore do sistema, clique duas vezes na pasta Globals.

A pasta “User”, dos globais de usuário, aparece.

2. Selecione com o botão direito do mouse na pasta User e selecione Create ThresholdTable

A seguinte caixa de diálogo aparece:

3. Mude o tipo de propriedade no campo Source Property Type para Boolean.

4. Selecione o botão Exact Match para buscar o valor exato do tag.

5. Crie dois limites de cores usando as informações abaixo:

Value Color

False BrightRed

True BrigthGreen

6. Quando terminar, selecione OK.

7. A partir da árvore do sistema, selecione a nova tabela de cores com o botão direito eselecione Property Window.

8. Mude o nome desta tabela para:

RedGreen

9. Quando terminar, feche a janela de propriedades.

Page 179: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-29

___________________________________________________Exercício 5

F. Adicione uma válvula.Adicione um dínamo de válvula na tela.

1. Abra o conjunto de dínamos ValveAnim.

2. Arraste o seguinte dínamo à tela:

ValveHorizontalOnOff1

A caixa de diálogo do dínamo da válvula aparece.

3. Clique na caixa de seleção Animate Valve Color.

A seguinte caixa de diálogo aparece:

4. Configure as seguintes opções com os valores da direta:

Data Source: LAUTER_SWITCHUse Shared Threshold Table: Habilitado

5. Selecione o botão “Browse” para selecionar uma tabela compartilhada (Shared Table).

A caixa de diálogo do “Expression Editor” aparece.

6. Selecione a pasta Global e então RedGreen a partir de User.

7. Selecione OK para voltar à caixa de diálogo de animação de cor da válvula.

8. Selecione OK para voltar à caixa de diálogo do dínamo da válvula.

9. Selecione OK para voltar à tela.

Page 180: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 5-30

__________________________________________________ Exercício 5

G. Adicione outra válvula e salve.

1. Adicione um outro dínamo de válvula, ValveHorizontalOnOff1, à tela. Use a tabelaRedGreen com a seguinte fonte de dado:

BREW_SWITCH

2. Quando terminar, a tela deverá se parecer com:

3. Salve a tela com o seguinte nome:

BrewKettle

4. Alterne para o modo de execução e explore as características desta tela.

Fim do Exercício

Page 181: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 5-31

5.9. Questões de Revisão_____________________________________

1. Qual é o objetivo de se ter uma imagem secundária para um objeto bitmap?

2. Para que serve a ferramenta de entrada de dados (data entry expert)?

3. Quais são as vantagens e desvantagens do “Data Entry Expert” ao invés de usar apenas a opçãoIn-Place em um link de dado?

4. Como as propriedades estáticas de um objeto podem ser alteradas?

5. Para que serve uma tabela global de limites (Threshold Table)?

Page 182: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-1

6. Configuração do Sistema____________________________________

Capítulo 6

Configuração do Sistema

Page 183: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-2

6. Configuração do Sistema ___________________________________

Objetivos do Capítulo

Quando o iFIX é iniciado, ele faz a leitura de um arquivo de configuração para determinar asconfigurações para a estação local. Este arquivo contém informações sobre programas e opçõesespecíficas para a estação local. Este capítulo examina detalhes de configuração destas informaçõesatravés do uso do aplicativo SCU (System Configuration Utility).

O capítulo está organizado nos seguintes tópicos:

• Configuração dos Diretórios do Projeto

• Configuração de Alarmes e Mensagens

• Configuração da Rede

• Configuração das Tarefas Automáticas

Antes de iniciar a configuração do SCU, o capítulo analisa os requisitos de hardware, de software ede rede necessários para rodar o iFIX. Além disso, mostra também como verificar os componentesdisponíveis na chave (security key) do iFIX.

Page 184: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-3

6.1. Requisitos de Hardware para iFIX v.2.6______________________

A. Computador

• Mínimo: Pentium II 266 MHz, compatível com padrão IBM.

• Recomendado: Pentium II 300 MHz ou superior.

B. Memória RAM e Espaço em Disco

• Mínimo: 96 MB RAM para estações SCADA e clientes.

• Recomendado: 128 MB RAM

C. Espaço em Disco

• 120 MB de espaço livre em disco para realizar uma instalação típica do iFIX(incluindo telas, base de dados, arquivos de alarme e outros arquivos de dados).

- Para aplicações que necessitam de arquivos grandes de alarme e de dadoshistórico, deve-se considerar um disco maior.

• Driver de CD-ROM para instalação do produto

D. Outros Requisitos de Hardware

• Monitores SVGA ou superiores, compatível com IBM, capacidade de 24 bits,resolução mínima de 800 x 600 e pelo menos 65.535 cores.

• Uma porta paralela ou porta USB para a chave de segurança (security key)

E. Opcionais de Hardware

• Alguns drivers e touch screens requerem portas seriais

• Para obter um número maior de portas seriais podem ser obtidas usando digiboards

Page 185: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-4

6.2. Requisitos de Software para iFIX v.2.6_______________________

A. Requisitos de Software

• Sistema Operacional:

- Windows NT v.4.0 com Service Pack 5 instalado ou Windows 2000 comService Pack 1.

- Obs: os sistemas operacionais Windows 95, 98/Me NÃO são compatíveis.

• Se estiver em rede, pode-se usar NetBIOS ou TCP/IP.

• Driver de comunicação para as estações SCADA

- Alguns drivers com cartão residente necessitam de software de configuração.

- Consulte o capítulo Getting Started with iFIX do Electronic Books do iFIX.

• Driver de vídeo

- A Intellution descobriu que alguns drivers possuem problemas específicos, osquais são apenas aparentes para quem estiver usando estes drivers.

- Além disso, a Intellution descobriu que vários problemas com drivers devídeo ocorrem tanto em aplicações do iFIX como em outras aplicações.

- Se ocorrer este tipo de problema, deve-se testar outra aplicação para descobrirse o problema é característico apenas da configuração do iFIX.

Page 186: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-5

6.3. Requisitos de Rede ______________________________________

A. Observações

• O acesso à rede é opcional.

• As estações que não usam a rede são chamadas de estações stand alone.

B. Hardware de Rede

• A Intellution recomenda o uso de cartões Ethernet 3COM.

C. Software de Rede

• NetBIOS

- A interface NetBIOS é suportada com o protocolo Microsoft NetBEUI.

• TCP/IP

- Antes de instalar o iFIX:

◊ Configure os endereços IP com os nomes dos nós (o uso de umarquivo HOST é a maneira mais fácil de se fazer isso).

- Habilite o protocolo TCP/IP no SCU.

• As características de rede serão discutidas com mais detalhes ainda neste capítulo.

Page 187: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-6

6.4. Componentes Disponíveis na Chave ________________________

A. Notas

• O aplicativo KeyDiag.EXE do iFIX pode ser usado para verificar os componentesque estão habilitados na chave (security key).

- A maioria dos componentes de software vem no CD de instalação do iFIX esão habilitados pela chave.

- O iFIX roda por duas horas em modo demo sem a chave, com acesso a todosos opcionais de software menos a capacidade de comunicação de estaçõesiFIX em rede.

• Alguns destes componentes são referentes a opções de versões anteriores desoftwares da Intellution, como:

- Pixel Graphics, Gearbox, Remote FIX, Data Transfer Utility, etc.

• Componentes iBatch são referentes ao software batelada da Intellution.

Page 188: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-7

6.4. Componentes Disponíveis na Chave________________________

Figura 6-1: Utilitário para Diagnóstico de Chave (“KeyDiag”)

Page 189: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-8

6.5. Utilitário de Configuração do Sistema _______________________

A. Introdução

• O SCU (System Configuration Utility) é usado para configurar a estação local.

• Este aplicativo cria um arquivo de configuração com extensão *.SCU.

- Todas as informações sobre esta estação são armazenadas neste arquivo.

- Veja as Figura 6-2 e Figura 6-3.

Configuração dos Diretórios(Menu Configuration à Paths)

Configuração de Alarmes e Mensagens(Menu Configuration à Alarms)

Configuração da Rede(Menu Configuration à Network)

Configuração dos Drivers (SCADA)(Menu Configuration à SCADA)

Configuração de Tarefas(Menu Configuration à Tasks)

Configuração de Segurança(Menu Configuration à Security)

Configuração SQL(Menu Configuration à SQL)

Configuração da Base de Dados de Áreasde Alarmes(Menu Configuration à Alarm AreaDatabase)

Figura 6-2: Barra de Ferramentas do SCU

Page 190: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-9

6.5. Utilitário de Configuração do Sistema_______________________

Figura 6-3: Utilitário de Configuração do Sistema (SCU)

Page 191: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-10

6.5. Utilitário de Configuração do Sistema _______________________

A. Configuração do Nome da Estação

• Para configurar o nome da estação local, selecione, no SCU, a opção Local Startupdo menu Configuration ou então clique duas vezes sobre a primeira linha no desenhodo monitor da estação.

• Cada estação possui duas configurações de nome:

- Local Node Name: nome físico da estação iFIX.

- Logical Node Name: nome com que outras estações em rede referenciam estaestação iFIX.

• Os nomes lógicos são usados para agrupar servidores SCADA redundantes (primárioe backup) para formarem um par lógico. Para maiores informações sobre redundânciade estações, consulte o capítulo Mastering iFIX à Redundancy do Electronic Books(este tópico é abordado no curso avançado do iFIX).

• Recomendamos configurar o nome da estação iFIX igual ao nome do computador.

- Lembre-se de que o iFIX suporta somente nomes com até 8 caracteres.

B. Local Node Alias

• Esta opção habilita o apelido THISNODE para a estação local, podendo usar esteapelido para referenciar a estação local: FIX32.THISNODE.TAG.FIELD.

• A substituição do nome físico por THISNODE amplia a portabilidade das telas,receitas e schedules e elimina a necessidade de alterar a referência do nome daestação em diferentes estações.

• A árvore do sistema do WorkSpace sempre substitui o nome físico da estação porTHISNODE.

C. Service

• O iFIX pode ser rodado como serviço do Windows NT e Windows 2000 permitindoque o usuário se conecte e desconecte do sistema operacional sem afetar a execuçãodo iFIX.

• Quando esta opção estiver habilitada, é possível fechar qualquer aplicativo do iFIXrodando em primeiro plano e desconectar o usuário do sistema operacional semfechar os aplicativos principais do iFIX como:

- Drivers de comunicação- Coleta de dados históricos- Comunicação com bancos de dados relacionais- Serviço de rede- SAC- Alarmes e mensagens

Page 192: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-11

6.5. Utilitário de Configuração do Sistema_______________________

Figura 6-4: Configuração do Nome da Estação

Page 193: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-12

6.5.1. Configuração dos Diretórios do Projeto______________________

A. Introdução

• A configuração dos diretórios especifica o nome e o local dos diretórios de umprojeto do iFIX.

• Observe que quando a configuração de um diretório é alterada usando esta janela deconfiguração:

- O SCU cria novos diretórios automaticamente caso sejam configurados;

- Os arquivos dos diretórios antigos NÃO são copiados para o novo diretório.

• A tabela a seguir apresenta uma descrição de cada um dos diretórios.

Diretório Usado para os ...

Base Arquivos executáveis.

Local Arquivos de configuração da estação local. Isto incluiarquivos do SCU e de segurança.

Database Arquivos referentes a base de dados do processocomo arquivos de configuração da base de dados edos drivers de comunicação.

Language Arquivos de mensagens das caixas de diálogo,arquivos de Help e manual eletrônico.

Picture Arquivos relativos às telas gráficas.

Application Diretório reservado para armazenar arquivos criadospor outros aplicativos.

Historical Arquivos de configuração para dados históricos.

Historical Data Arquivos de dados históricos. Cria um subdiretóriopara cada estação de onde os dados estão sendocoletados.

Alarms Arquivos de alarmes, mensagens, logs de segurança ede evento.

Master Recipe Arquivos de receitas principais, erro e de relatório.

Control Recipe Arquivos de receitas de controle, erro e de relatório.

Alarm Areas (AAD) Localização da base de dados das áreas de alarme.

Figura 6-5: Descrições dos Caminhos

Page 194: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-13

6.5.1. Configuração dos Diretórios do Projeto ____________________

Figura 6-6: Configuração dos Diretórios de um Projeto

Page 195: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-14

6.5.2. Configuração de Alarmes e Mensagens ___________________

A. Introdução

• Usada para habilitar os serviços de alarme da estação, como:

- Habilitar ou desabilitar os serviços de alarme.

- Especificar a distribuição dos alarmes e mensagens na rede.

- Configurar o tamanho da fila de alarme para a rede.

- Habilitar o envio de alarmes para bancos de dados relacionais.

• A Figura 6-7 contém um descritivos dos diversos serviços de alarme.

• Os arquivos de alarme são eliminados automaticamente da máquina e o número dedias que eles permanecerão na máquina são configurados no arquivo ALARM.INI

- O padrão é de 30 dias, mas pode ser configurado entre 1 a 365 dias.

Serviço de alarme Usado para ...

Impressoras de Alarme Enviar alarmes e mensagens para impressoras.

Sumário de Alarme Visualizar e reconhecer os alarmes na tela doWorkSpace em modo de execução.

Arquivos de Alarme Armazenar alarmes e mensagens em arquivos do tipotexto, cujo padrão de nomes é YYMMDD.ALM.

Histórico dos Alarmes Mostrar alarmes e mensagens em tempo real.

Envio de Alarmes viaODBC

Enviar alarmes para um banco de dados relacionalvia driver ODBC.

Serviço de Alarme emRede

Enviar e receber alarmes de outras estações da rede.

Serviço de Inicializaçãoda Fila de Alarme

Enviar para uma estação cliente os últimos alarmes emensagens gerados pela estação SCADA quandoesta estação cliente é iniciada.

Figura 6-7: Descrição dos Serviços de Alarme

Page 196: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-15

6.5.2. Configuração de Alarmes e Mensagens___________________

Figura 6-8: Tela para Configuração dos Serviços de Alarme no SCU

Figura 6-9: Configuração Avançada dos Alarmes

Page 197: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-16

6.5.2. Configuração de Alarmes e Mensagens ___________________

B. Base de Dados das Áreas de Alarme (AAD-Alarm Area Database)

• A base de dados das áreas de alarme é um arquivo com extensão *.AAD localizadopor default no diretório PDB que armazena informações sobre as áreas de alarme.

- As áreas de alarme são armazenadas em ordem alfabética.

• Para configurar as áreas de alarme, o iFIX deve estar rodando e somente pode sereditada a partir de um nó SCADA.

• Quando estiver em rede, recomenda-se salvar o arquivo AAD em um diretóriocompartilhado da rede e o seu backup em um diretório da máquina local.

C. Áreas de Alarmes

• O nome das área de alarme pode ser definido pelo usuário.

• Existe um número ilimitado de áreas de alarme.

• Os nomes das áreas de alarme podem conter até 30 caracteres, não podendo contercaracteres do tipo *, ?, ou /.

• Se estiver comunicando estações iFIX com FIX32, mantenha os nomes padrões A-Ppara as áreas de alarme.

Page 198: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-17

6.5.2. Configuração de Alarmes e Mensagens___________________

Figura 6-10: Configuração da Base de Dados de Alarmes

Figura 6-11: Exemplo de Filtragem de Alarmes por Área de Alarme

Page 199: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-18

6.5.3. Configuração de Rede __________________________________

A. Introdução

• Usada para configurar a comunicação em rede de estações FIX (Figura 6-12).

• As estações que não possuem habilitada a configuração de rede são chamadas deestações stand alone.

B. Habilitando a Rede

• Para habilitar a rede, selecione as opções NetBIOS ou TCP/IP na área deconfiguração Network, dependendo do protocolo de rede que estiver usando.

C. Configurando as Estações Remotas

• Uma estação cliente deve especificar o nome das estações servidoras SCADA dasquais deseja visualizar dados

• Configure o nome da estação SCADA no campo Remote Node Name e selecione obotão Add.

• Se estiver trabalhando com redundância de estações SCADA, adicione o nome lógicodas estações e então selecione o botão Configure para informar que é o nomecorresponde a um nome lógico de estações (habilite a opção Enable Logical NodeNames) e configure o nome das estações primária e backup.

D. Dynamic Connections

• Esta opção faz com que a conexão com uma estação SCADA seja automaticamentefeita quando um objeto precisa ser atualizado.

• Se a conexão com a estação for somente eventualmente,então use esta opção. Casocontrário, desabilite esta opção e configure o nome da estação remota conformeexplicado no item anterior.

E. Botão Advanced

• Usado para habilitar redundância de LAN entre as estações.

Page 200: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-19

6.5.3. Configuração de Rede _________________________________

Figura 6-12: Configuração de Rede

Page 201: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-20

6.5.4. Configuração das Tarefas Automáticas ___________________

A. Introdução

• Usada para especificar as tarefas (programas) que deverão ser iniciadasautomaticamente quando o iFIX é iniciado.

• Estas tarefas podem ser qualquer programa executável da máquina, não apenasaplicativos do iFIX.

B. Modos de Execução das Tarefas

• Minimized: a tarefa é iniciada com sua janela minimizada, e aparece como um íconena barra de tarefas do sistema operacional (indicado pelo símbolo *).

• Normal: a tarefa é iniciada com sua janela aberta de forma normal.

• Background: a tarefa é iniciada em segundo plano (indicado pelo símbolo %).

- Neste caso, não aparece nenhuma janela ou ícone na tela.

- Usado para executar a tarefa como serviço do iFIX.

- Pode-se também habilitar o iFIX como um serviço do Windows.

◊ Veja a seção de configuração do nome da estação (Local Startup)

C. Linha de Comando

• O campo Command Line pode receber um argumento para modificar o modo deexecução do programa.

• A tabela da Figura 6-14 mostra os possíveis argumentos dos programas SAC eIOCNTRL.

• Para obter os parâmetros da linha de comando de outros aplicativos do iFIX, consulteno Electronic Books. Para obter os parâmetros de aplicativos de terceiros, consulte omanual técnico do aplicativo.

Page 202: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 6-21

6.5.4. Configuração das Tarefas Automáticas ___________________

Figura 6-13: Configuração de Tarefas a Serem Iniciadas Automaticamente

Programa Comando ParâmetroAdicional

Descrição

SAC S Sincroniza o SAC com o relógio do sistemaoperacional.

D segundos Atrasa a inicialização do SAC por umnúmero específico de segundos.

Q tamanho Configura o tamanho da fila de alarmes doaplicativo Alarm Queue Status do iFIX.

IOCNTRL /A Inicia todos os drivers configurados.

/S xxx Inicia apenas o driver especificado (xxx =código do driver)

Figura 6-14: Parâmetros SAC e IOCNTRL

Page 203: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 6-22

6.6. Questões de Revisão _____________________________________

1. Qual é a diferença entre TCP/IP e NetBIOS?

2. Como várias estações podem compartilhar os mesmos dados históricos?

3. Para que serve o serviço de alarme em rede (Alarm Network Service)?

4. Para que servem as áreas de alarme?

5. Qual é a diferença entre tarefas normais, minimizadas e de segundo plano (background)?

Page 204: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-1

7. Drivers I/O ________________________________________________

Capítulo 7

Drivers I/O

Page 205: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-2

7. Drivers I/O _______________________________________________

Objetivos do Capítulo

Os drivers de comunicação são de importância fundamental para o iFIX. Estes componentes desoftware permitem a comunicação do iFIX com o hardware do processo. Existem vários driverspara serem usados com o iFIX, e este capítulo discute com detalhe os drivers de comunicação.

O capítulo está organizado nos seguintes tópicos:

• Configuração de uma estação SCADA

• Tipos de drivers de comunicação

• Configuração dos drivers

• Monitorando o funcionamento do driver

Page 206: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-3

7.1. Utilitário de Configuração do Sistema_______________________

A. Revisão

• O programa SCU é usado para a configuração do nó local

• Ele cria um arquivo de configuração chamado arquivo SCU

• O arquivo SCU contém:

- Configuração de caminhos

- Configuração de rede

- Configuração de serviço de alarmes

- Configuração de tarefas

B. Outra Configuração do SCU

• Configuração SCADA

- Base de dados do processo (PDB)

- Configuração do driver I/O

Page 207: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-4

7.2. Configuração SCADA _____________________________________

A. iClient versus Servidor SCADA

• iClient

- oferece uma interface do processo para o operador

- contém telas gráficas, relatórios, etc.

• Servidor SCADA

- adquire dados a partir do hardware do processo

◊ através do driver I/O

- gerencia os dados do processo

◊ através da base de dados do processo

- também realiza qualquer uma das funções de um iClient

B. Configuração do Driver I/O

• Para que o servidor SCADA se comunique com o hardware do processo, é necessáriodefinir e configurar pelo menos um driver I/O

- o iFIX pode carregar até oito drivers I/O enquanto inicia

• Alguns drivers utilizam um cartão de interface para se comunicarem com o hardwaredo processo

- neste caso, o cartão de interface deverá ser configurado para usar o driver

Page 208: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-5

7.2. Configuração SCADA ____________________________________

Figura 7-1: Caixa de Diálogo de Configuração SCADA

Page 209: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-6

7.3. Entendendo os Drivers de Comunicação_____________________

A. Tipos de I/O Drivers

• Existem diferentes formas de um I/O Driver comunicar com um dispositivo dehardware

- porta serial – Driver COM

◊ somente duas portas seriais podem ser usadas

◊ adaptadores tipo digiboard podem ser usados se precisar mais queduas portas

- cartão residente fornecido pelo vendedor – Driver RES

- Ethernet – Driver ETH

- outros

• É possível ter drivers de diferentes tipos em uma estação SCADA

• A Figura 7-2 mostra alguns exemplos

B. Diferenças entre drivers da versão 6.x e 7.x

• Sistema Operacional

- drivers 7.x rodam somente em Windows NT e Windows 2000

- drivers 6.x rodam em Windows 95/98, Windows NT e Windows 2000

• Comunicação

- os drivers 7.x podem:

◊ comunicam com o SAC

◊ comunicam com o hardware do processo

◊ funcionam como servidores OPC permitindo compartilhar dados comoutros clientes OPC na rede

- os drivers 6.x comunicam somente com o SAC e seu hardware do processo

◊ estes drivers não podem compartilhar dados com outros clientes

• Que versão usar?

- a Intellution recomenda o uso do driver 7.x com o iFIX pois oferece maiscaracterísticas e é mais fácil de usar

- note que os drivers 7.x não sào disponíveis para todos os tipos de hardware doprocesso

Page 210: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-7

7.3. Entendendo os Drivers de Comunicação ____________________

Sigla do Driver Versão Tipo de Comunicação

ABH 6.x Serial (COM)

ABC 7.x Cartão residente

GE9 7.x Ethernet

MB1 7.x Serial (COM)

MBE 6.x Ethernet

SIE 6.x Serial (COM)

S_7 6.x Cartão residente ou Ethernet

SL4 7.x Ethernet

ROC 6.x Rádio ou Modem

Figura 7-2: Exemplos de Drivers de Comunicação

Tipo deDriver

Vantagens Desvantagens

Serial(COM)

• Trabalha com qualquer PCque tem uma porta serial

• Funciona com um modem• Geralmente mais barato

• Comunicação lenta• Não tem boa performance

em longas distâncias

Ethernet(ETH)

• Geralmente a comunicaçãoé mais rápida

• Geralmente mais barato• Muito flexível

• Pode ficar sobrecarregadodependendo do tráfico emrede (especialmente se nãohouver uma LAN separadapara o chão de fábrica)

CartãoResidente

(RES)

• Geralmente a comunicaçãoé mais rápida

• Projetado para chão defábrica

• Geralmente caro• Requer configuração

adicional de software docartão

Figura 7-3: Tipos de Drivers de Comunicação

Page 211: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-8

7.4. Driver de Simulação (SIM) _________________________________

A. Notas

• SIM – Driver de simulação do iFIX

• Funções básicas do driver SIM:

- armazena valores temporários (até 2000 registros de 16 bits)

- gera valores simulados (14 geradores de números)

- oferece informações sobre o sistema (contadores de alarme e de sistema)

B. Matriz de Endereços do Driver SIM

• Blocos da base de dados lêem e escrevem valores nestes endereços.

• Se um bloco escrever em um determinado endereço, outros blocos podem ler o valordeste mesmo endereço.

• O iFIX remove estes valores da memória quando o SAC inicia ou quando a base dedados é recarregada.

• Para usar:

- para valores analógicos, o registro varia de 0 a 2000

◊ o bit não é usado

- para valores digitais, o registro varia de 0 a 2000

◊ o bit varia de 0 a 15

• Observações

- Possui somente cinco dígitos de precisão ao invés de sete (padrão).

- Usado somente com processamento por tempo.

C. Geradores de Sinal

• Os registros SIM geram um padrão repetido de valores randômicos ou valores pré-definidos.

• Para selecionar um registro, digite as duas letras de sua sigla no campo I/O Device.

- Veja a Figura 7-4

D. Contadores de Alarme e do Sistema

• Serão vistos mais adiante neste curso.

Page 212: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-9

7.5. Entendendo os Drivers ___________________________________

A. Tipos de I/O Drivers

• Existem diferentes formas de um I/O Driver comunicar com um dispositivo dehardware.

- Porta serial: Driver COM

◊ Somente duas portas seriais podem ser usadas. Adaptadores como osdigiboards podem ser usados se precisar mais que duas portas.

- Cartão residente fornecido pelo fabricante do hardware – Driver RES

- Ethernet – Driver ETH

- Outros

• É possível ter drivers de diferentes tipos em uma estação SCADA.

• A Figura 7-2 mostra alguns exemplos.

B. Diferenças entre drivers da versão 6.x e 7.x

• Sistema Operacional

- Drivers das versões 7.x rodam somente em Windows NT e Windows 2000.

- Drivers das versões 6.x rodam em Windows 95/98, Windows NT e Windows2000.

• Comunicação

- Os drivers das versões 7.x podem:

◊ Comunicar com o SAC;

◊ Comunicar com o hardware do processo;

◊ Atuar como servidores OPC permitindo compartilhar dados comoutros clientes OPC na rede.

- Os drivers 6.x comunicam somente com o SAC e seu hardware do processo

◊ Estes drivers não podem compartilhar dados com outros clientes.

• Que versão usar?

- A Intellution recomenda o uso do driver 7.x com o iFIX pois oferece maiscaracterísticas e é mais fácil de usar.

- Note que os drivers 7.x não são disponíveis para todos os tipos de hardwaredo processo.

Page 213: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-10

7.3. Entendendo os Drivers de Comunicação_____________________

Registro Descrição Entrada Válida

RA Gera uma rampa entre 0 a 100% da faixa de engenharia (EGU) à umavelocidade controlada pelo registro RY.

Somente leitura

RB Conta de 0 a 65535 à uma velocidade de 20 contadores por segundo. Somente leitura

RC Altera um bit através de uma Word de 16-bit à uma velocidade controladapelo registro RZ.

Somente leitura

RD Gera uma onda senoidal entre 0 a 100% da faixa EGU à uma velocidadecontrolada pelo registro RY.

Somente leitura

RE Gera uma onda senoidal entre 0 a 100% da faixa EGU à uma velocidadecontrolada pelo registro RY. A onda senoidal é defasada de 90 graus emrelação ao registro RD.

Somente leitura

RF Gera uma onda senoidal entre 0 a 100% da faixa EGU à uma velocidadecontrolada pelo registro RY. A onda senoidal é defasada de 180 graus emrelação ao registro RD.

Somente leitura

RG Gera valores randômicos entre 25% e 75% da faixa EGU. Somente leitura

RH Realiza uma rampa para cima até 100% do faixa EGU e então realiza umarampa para baixo até 0% à uma velocidade controlada pelo registro RJ.

Somente leitura

RI Controla a direção da rampa do valor do registro RH. Quando zero, oregistro RH realiza uma rampa para baixo, quando um o RH realiza umarampa para cima. O valor altera automaticamente quando o RH alcança 0ou 100% de seu valor EGU.

Valor numérico(0 ou 1)

RJ Controla a velocidade da rampa (em ciclos por hora) para o valor doregistro RH. O valor padrão é 60 (1 ciclo por minuto).

Valor numérico(2 a 3600)

RK Habilita ou desabilita a geração de valores do registro RH. Digite zeropara congelar (desabilitar) a rampa e um para habilitá-la.

Valor numérico(0 ou 1)

RX Habilita ou desabilita a geração de valores dos outros registros. Digitezero para congelar (desabilitar) e um para habilitar todos os registros.

Valor numérico(0 ou 1)

RY Controla a velocidade (em ciclos por hora) na qual novos valores sãogerados para os registros RA, RD, RE e RF. O valor padrão é 60 (1 ciclopor minuto).

Valor numérico(2 a 3600)

RZ Controla a velocidade (em bits por minuto) na qual o registro RC alteraseu valor. O valor padrão é 180 (3 trocas de bit por segundo).

Valor numérico(2 a 1200)

Figura 7-4: Registros Geradores de Sinais do Driver SIM

Page 214: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-11

7.6. Instalando os Drivers_____________________________________

A. Instalação de um Driver

• Durante a instalação do iFIX, ela pergunta se deseja instalar algum I/O Driver

- Selecione No neste momento.

- Complete a instalação do iFIX e instale os drivers posteriormente.

• Os drivers podem ser instalados a partir do CD de I/O Drivers e Servidores OPC

- Os drivers da versão 7 possuem seu próprio programação de instalação.

• Insira o CD de drivers e servidores OPC

- Clique no botão Install Driver e selecione o driver a partir da lista.

- Veja a Figura 7-5

B. Atualização dos Drivers

• As páginas a seguir mostram os passos necessários para atualizar um I/O driver parauma nova versão.

• Existem três tipos de atualizações:

- versão 6.x para versão 6.x

- versão 7.x para versão 7.x

- versão 6.x para versão 7.x

• Use os mesmos procedimentos para instalar um módulo adicional de software SIM(Software Improvement Module)

- Os SIMs para drivers podem ser descarregados a partir do web site daIntellution.

Page 215: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-12

7.6. Instalando os Drivers _____________________________________

Figura 7-5: Instalação do I/O Driver

Page 216: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-13

7.6. Atualizando v.6 para v.6_________________________________

A. Antes de Iniciar

• Crie um subdiretório fora do diretório \PDB e copie os seguintes arquivos:

- Arquivo da base de dados do processo (NomeBaseDados.PDB)

- Arquivo de configuração do driver (NomeNó.DRV onde DRV corresponde àstrês letras da sigla do driver)

• Salve a configuração existente do driver como arquivo CSV da seguinte forma:

- selecione Save As a partir do menu File no programa de configuração dodriver

- selecione Text Files (*.CSV) no campo Save File as Type

• Exporte a base de dados do processo

• Renomeie os arquivos NomeDoNó.DRV e Default.DRV do diretório \PDB paraNomeDoNó.OLD e Default.OLD

B. Instalando o Driver

• Crie um diretório temporário, por exemplo, C:\atualizacao

• Se estiver instalando uma nova versão contida no CD de Drivers, clique no botãoInstall Driver, selecione o driver desejado e clique o botão Install Now

• Se um SIM foi baixado do web site da Intellution , extraia os arquivos do driver emum diretório temporário:

- se o arquivo for um *.EXE, copie-o para o diretório temporário e clique duasvezes sobre ele para extrair os arquivos

- se o arquivo for um *.ZIP file, rode o WinZip e extraia os arquuivos nodiretório

- se tiver arquivos individuais de driver, copie-os para o diretório temporário

• Rode o setup da Intellution e selecione Custom Install.

- A mensagem “SCU file found, do you want to use its information” iráaparecer

• Clique o botão Yes

• A partir da caixa de opções do FIX, selecione somente Install I/O Drivers; limpetodas as outras opções

• Entre com o diretório onde estão os arquivos do driver e pressione Enter

• Quando o programa de instalação da Installation perguntar se deseja recriar o grupode programas, clique OK

Page 217: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-14

7.6. Atualizando v.6 para v.6_________________________________

C. Após Instalar o Driver

• Inicie o novo programa de configuração do driver

• Selecione Open a partir do menu File

• Selecione Text Files (*.CSV) no campo List Files of Type

- o arquivo CSV salvo anteriormente aparece na lista de arquivos

• Clique duas vezes sobre o arquivo CSV para ler a configuração antiga de volta para oprograma de configuração

• Selecione Save As a partir do menu File

• Entre com NomeDoNó.DRV como o nome do arquivo, onde DRV corresponde àstrês letras da sigla do driver

• Clique OK e inicie o iFIX

• Recarregue o driver

D. Após importar a configuração do driver, importe a base de dados do processo

• Salve e recarregue a configuração do driver

• Inicie o Database Manager e selecione Reload a partir do menu Database

• Selecione o nó local e clique duas vezes sobre o arquivo EMPTY.PDB

• Selecione Import a partir do menu Database

• Selecione o arquivo GDB, CSV ou TXT que foi salvo antes da atualização

- após completar a importação, uma janela aparece para informar se houvealgum erro de importação

- se houverem erros, eles ficam registrados no arquivo chamado IMPORT.ERR

- este arquivo reside no diretório \PDB

• Selecione Save As a aprtir do menu Database

• Salve a base de dados com o nome especificado no SCU

• Selecione Reload a partir do menu Database

• Selecione o nó local e clique duas vezes na base de dados que acabou de ser salva

Page 218: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-15

7.6. Atualizando v.7 para v.7_________________________________

A. Antes de Iniciar

• Crie um subdiretório fora do diretório \PDB e copie o arquivo da base de dados doprocesso e o arquivo de configuração do driver

• Salve a configuração existente do driver em formato CSV

• Exporte a base de dados do processo

• Renomeie os arquivos NomeDoNó.DRV e Default.DRV do diretório \PDB paraNomeDoNó.OLD e Default.OLD

B. Instalando o Driver

• Crie um diretório temporário, por exemplo, C:\atualizacao

• Desinstale o driver 7.x existente

- Clique duas vezes em Adicionar/Remover Programas no Painel de Controles

- Selecione o driver 7.x e clique o botão Adicionar/Remover

• Se estiver instalando uma nova versão contida no CD de Drivers, clique no botãoInstall Driver, selecione o driver desejado e clique o botão Install Now

• Se um SIM foi baixado do web site da Intellution , extraia os arquivos do driver emum diretório temporário:

- se o arquivo for um *.EXE, copie-o para o diretório temporário e clique duasvezes sobre ele para extrair os arquivos

- se o arquivo for um *.ZIP file, rode o WinZip e extraia os arquuivos nodiretório

- se tiver arquivos individuais de driver, copie-os para o diretório temporário

• Instale a nova versão do driver 7.x localizada no diretório temporário que você criou- Clique duas vezes sobre o ícone Setup.exe.

- Clique Next até aparecer uma mesnagem perguntando sobre o diretório doiFIX

- Entre a localização do iFIX e clique Next- Selecione Server como Node Type- Entre o nome do nó FIX do computador local conforme especificado no SCU

- Entre o nome da pasta no menu Start do Windows NT que deseja colocar odriver 7.x

- Clique Finish para instalar o driver 7.x

Page 219: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-16

7.6. Atualizando v.7 para v.7_________________________________

C. Após Instalar o Driver

• Inicie a nova versão da Power Tool

• Entre com o nome padrão do arquivo de configuração e verifique o diretório padrão(default):

- clique o botão Setup na barra de ferramentas Run-time

- selecione a pasta Default Path

- entre com o nome padrão do arquivo no campo adequado

- confirm the default path is correct - if it is not, change it

• Selecione Open a partir do menu File.

• Selecione Text Files (*.CSV) no campo List Files of Type

- o arquivo CSV salvo anteriormente deve aparecer na lista

• Clique duas vezes sobre o CSV para ler de volta a configuração anterior na PowerTool

• Selecione Save As a partir do menu File

• Digite NomeArquivo.DRV como nome do arquivo

• Feche a Power Tool e inicie o iFIX

D. Após importar a configuração do driver, importe a base de dados do processo

• Salve e recarregue a configuração do driver

• Inicie o Database Manager e selecione Reload a partir do menu Database

• Selecione o nó local e clique duas vezes sobre o arquivo EMPTY.PDB

• Selecione Import a partir do menu Database

• Selecione o arquivo GDB, CSV ou TXT que foi salvo antes da atualização- após completar a importação, uma janela aparece para informar se houve

algum erro de importação- se houverem erros, eles ficam registrados no arquivo chamado IMPORT.ERR- este arquivo reside no diretório \PDB

• Selecione Save As a aprtir do menu Database

• Salve a base de dados com o nome especificado no SCU

• Selecione Reload a partir do menu Database

• Selecione o nó local e clique duas vezes na base de dados que acabou de ser salva

Page 220: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-17

7.6. Atualizando v.6 para v.7__________________________________

A. Antes de Iniciar

• Desinstale a versão anterior do driver

- não instale a versão nova sobre a versão anterior

B. Instalando o Driver

• Usando o CD de Drivers, clique o botão Install Driver, selecione o driver desejado eclique o botão Install Now

C. Após Instalar o Driver

• Adicione o driver na configuração SCADA e na lista de tarefas do SCU

- isto fará com que o SCU inicie o driver automaticamente quando o iFIX foriniciado

D. Base de Dados do Processo

• Existem três possibilidades para trabalhar com a base de dados após fazer aatualização do driver:

- não existe base de dados para ser importada

- existe uma base de dados para ser importada e você quer que o DatabaseManager crie os datablocks automaticamente

- existe uma base de dados para ser importada e você não quer que o DatabaseManager crie os datablocks automaticamente

Page 221: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-18

7.6. Atualizando v.6 para v.7_________________________________

E. Não Existe Base de Dados para ser Improtada

• Use a opção Auto Create para criar datablocks automaticamente

- this will be discussed in more detail later in the course

F. Existe Base de Dados para ser Improtada e o Database Manager irá criar Automaticamenteos datablocks

• Configure o driver usando a opção Auto Create

• Normalmente esta opção é usada quando os datablocks a serem criado são similares

• Não import uma versão CSV de sua configuração antiga

- crie uma nova com a Power Tool

G. Existe Base de Dados para ser Improtada e o Database Manager não irá criarAutomaticamente os datablocks

• Crie os datablocks com a Power Tool

• Normalmente os datablocks são criados manualmente quando sua configuração dedriver usa dados de diferentes tipos

• Exemplo

- existem dados sem sinal (unsigned) para endereços de 101 até 200 e com sinal(signed) para endereços de 0 a 100 e 201 a 300

- a opção Auto Create não deve ser usada pois ela cria os datablocks com umúnico tipo de dado, de acordo com os padrões selecionados para o datablock

• Mais detalhes sobre este assunto serão vistos mais adiante neste curso

Page 222: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-19

7.7. Configuração do Driver I/O _______________________________

A. Diferenças entre os Drivers 6.x e 7.x

• Sistema Operacional

- Drivers 7.x são disponíveis somente para Windows NT

- Drivers 6.x são disponíveis para Windows 95/98 e Windows NT

• Comunicação

- Drivers 7.x podem:

◊ se comunicar com o HMI

◊ se comunicar com o hardware do processo

◊ funcionar como servidores OPC permitindo o compartilhamento dedados para outros clientes remotos OPC

- Drivers 6.x somente se comunicam com o software HMI e o hardware doprocesso

◊ estes drivers não podem compartilhar dados com outros clientes

B. Qual versão usar?

• A Intellution recomenda usar um driver 7.x com o iFIX pois oferece mais recursos eé mais fácil de usar

• Entretanto, não existem drivers 7.x disponíveis para todos os tipos de hardware

C. Notas:

• “Channel”

- caminho de comunicação entre servidor SCADA e hardware do processo

- define as taxas de transmissão (baud rates) e outros ajustes para a rede dohardware

• “Device”

- define um dispositivo individual de hardware

- define o tipo de hardware e outra configuração específica de um dispositivo

• “Poll Record”

- define parâmetros específicos para um bloco de dados de um dispositivo

- isto inclui o endereço inicial e o tipo de dado

Page 223: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-20

7.8. 7.3.__________________Entendendo os Drivers de Comunicação

A. Tipos de I/O Drivers

• Existem diferentes formas de um I/O Driver comunicar com um dispositivo dehardware

- porta serial – Driver COM

◊ somente duas portas seriais podem ser usadas

◊ adaptadores tipo digiboard podem ser usados se precisar mais queduas portas

- cartão residente fornecido pelo vendedor – Driver RES

- Ethernet – Driver ETH

- outros

• É possível ter drivers de diferentes tipos em uma estação SCADA

• A Figura 7-2 mostra alguns exemplos

B. Diferenças entre drivers da versão 6.x e 7.x

• Sistema Operacional

- drivers 7.x rodam somente em Windows NT e Windows 2000

- drivers 6.x rodam em Windows 95/98, Windows NT e Windows 2000

• Comunicação

- os drivers 7.x podem:

◊ comunicam com o SAC

◊ comunicam com o hardware do processo

◊ funcionam como servidores OPC permitindo compartilhar dados comoutros clientes OPC na rede

- os drivers 6.x comunicam somente com o SAC e seu hardware do processo

◊ estes drivers não podem compartilhar dados com outros clientes

• Que versão usar?

- a Intellution recomenda o uso do driver 7.x com o iFIX pois oferece maiscaracterísticas e é mais fácil de usar

- note que os drivers 7.x não sào disponíveis para todos os tipos de hardware doprocesso

Page 224: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-21

7.3. Entendendo os Drivers de Comunicação ____________________

Sigla do Driver Versão Tipo de Comunicação

ABH 6.x Serial (COM)

ABC 7.x Cartão residente

GE9 7.x Ethernet

MB1 7.x Serial (COM)

MBE 6.x Ethernet

SIE 6.x Serial (COM)

S_7 6.x Cartão residente ou Ethernet

SL4 7.x Ethernet

ROC 6.x Rádio ou Modem

Figura 7-2: Exemplos de Drivers de Comunicação

Tipo deDriver

Vantagens Desvantagens

Serial(COM)

• Trabalha com qualquer PCque tem uma porta serial

• Funciona com um modem• Geralmente mais barato

• Comunicação lenta• Não tem boa performance

em longas distâncias

Ethernet(ETH)

• Geralmente a comunicaçãoé mais rápida

• Geralmente mais barato• Muito flexível

• Pode ficar sobrecarregadodependendo do tráfico emrede (especialmente se nãohouver uma LAN separadapara o chão de fábrica)

CartãoResidente

(RES)

• Geralmente a comunicaçãoé mais rápida

• Projetado para chão defábrica

• Geralmente caro• Requer configuração

adicional de software docartão

Figura 7-3: Tipos de Drivers de Comunicação

Page 225: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-22

7.9. Driver de Simulação (SIM) _________________________________

A. Notas

• SIM – Driver de simulação do iFIX

• Funções básicas do driver SIM:

- armazena valores temporários (até 2000 registros de 16 bits)

- gera valores simulados (14 geradores de números)

- oferece informações sobre o sistema (contadores de alarme e de sistema)

B. Matriz de Endereços do Driver SIM

• Blocos da base de dados lêem e escrevem valores nestes endereços.

• Se um bloco escrever em um determinado endereço, outros blocos podem ler o valordeste mesmo endereço.

• O iFIX remove estes valores da memória quando o SAC inicia ou quando a base dedados é recarregada.

• Para usar:

- para valores analógicos, o registro varia de 0 a 2000

◊ o bit não é usado

- para valores digitais, o registro varia de 0 a 2000

◊ o bit varia de 0 a 15

• Observações

- Possui somente cinco dígitos de precisão ao invés de sete (padrão).

- Usado somente com processamento por tempo.

C. Geradores de Sinal

• Os registros SIM geram um padrão repetido de valores randômicos ou valores pré-definidos.

• Para selecionar um registro, digite as duas letras de sua sigla no campo I/O Device.

- Veja a Figura 7-4

D. Contadores de Alarme e do Sistema

• Serão vistos mais adiante neste curso.

Page 226: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-23

7.10. Entendendo os Drivers ___________________________________

C. Tipos de I/O Drivers

• Existem diferentes formas de um I/O Driver comunicar com um dispositivo dehardware.

- Porta serial: Driver COM

◊ Somente duas portas seriais podem ser usadas. Adaptadores como osdigiboards podem ser usados se precisar mais que duas portas.

- Cartão residente fornecido pelo fabricante do hardware – Driver RES

- Ethernet – Driver ETH

- Outros

• É possível ter drivers de diferentes tipos em uma estação SCADA.

• A Figura 7-2 mostra alguns exemplos.

D. Diferenças entre drivers da versão 6.x e 7.x

• Sistema Operacional

- Drivers das versões 7.x rodam somente em Windows NT e Windows 2000.

- Drivers das versões 6.x rodam em Windows 95/98, Windows NT e Windows2000.

• Comunicação

- Os drivers das versões 7.x podem:

◊ Comunicar com o SAC;

◊ Comunicar com o hardware do processo;

◊ Atuar como servidores OPC permitindo compartilhar dados comoutros clientes OPC na rede.

- Os drivers 6.x comunicam somente com o SAC e seu hardware do processo

◊ Estes drivers não podem compartilhar dados com outros clientes.

• Que versão usar?

- A Intellution recomenda o uso do driver 7.x com o iFIX pois oferece maiscaracterísticas e é mais fácil de usar.

- Note que os drivers 7.x não são disponíveis para todos os tipos de hardwaredo processo.

Page 227: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-24

7.3. Entendendo os Drivers de Comunicação_____________________

Registro Descrição Entrada Válida

RA Gera uma rampa entre 0 a 100% da faixa de engenharia (EGU) à umavelocidade controlada pelo registro RY.

Somente leitura

RB Conta de 0 a 65535 à uma velocidade de 20 contadores por segundo. Somente leitura

RC Altera um bit através de uma Word de 16-bit à uma velocidade controladapelo registro RZ.

Somente leitura

RD Gera uma onda senoidal entre 0 a 100% da faixa EGU à uma velocidadecontrolada pelo registro RY.

Somente leitura

RE Gera uma onda senoidal entre 0 a 100% da faixa EGU à uma velocidadecontrolada pelo registro RY. A onda senoidal é defasada de 90 graus emrelação ao registro RD.

Somente leitura

RF Gera uma onda senoidal entre 0 a 100% da faixa EGU à uma velocidadecontrolada pelo registro RY. A onda senoidal é defasada de 180 graus emrelação ao registro RD.

Somente leitura

RG Gera valores randômicos entre 25% e 75% da faixa EGU. Somente leitura

RH Realiza uma rampa para cima até 100% do faixa EGU e então realiza umarampa para baixo até 0% à uma velocidade controlada pelo registro RJ.

Somente leitura

RI Controla a direção da rampa do valor do registro RH. Quando zero, oregistro RH realiza uma rampa para baixo, quando um o RH realiza umarampa para cima. O valor altera automaticamente quando o RH alcança 0ou 100% de seu valor EGU.

Valor numérico(0 ou 1)

RJ Controla a velocidade da rampa (em ciclos por hora) para o valor doregistro RH. O valor padrão é 60 (1 ciclo por minuto).

Valor numérico(2 a 3600)

RK Habilita ou desabilita a geração de valores do registro RH. Digite zeropara congelar (desabilitar) a rampa e um para habilitá-la.

Valor numérico(0 ou 1)

RX Habilita ou desabilita a geração de valores dos outros registros. Digitezero para congelar (desabilitar) e um para habilitar todos os registros.

Valor numérico(0 ou 1)

RY Controla a velocidade (em ciclos por hora) na qual novos valores sãogerados para os registros RA, RD, RE e RF. O valor padrão é 60 (1 ciclopor minuto).

Valor numérico(2 a 3600)

RZ Controla a velocidade (em bits por minuto) na qual o registro RC alteraseu valor. O valor padrão é 180 (3 trocas de bit por segundo).

Valor numérico(2 a 1200)

Figura 7-4: Registros Geradores de Sinais do Driver SIM

Page 228: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-25

7.11. Instalando os Drivers_____________________________________

A. Instalação de um Driver

• Durante a instalação do iFIX, ela pergunta se deseja instalar algum I/O Driver

- Selecione No neste momento.

- Complete a instalação do iFIX e instale os drivers posteriormente.

• Os drivers podem ser instalados a partir do CD de I/O Drivers e Servidores OPC

- Os drivers da versão 7 possuem seu próprio programação de instalação.

• Insira o CD de drivers e servidores OPC

- Clique no botão Install Driver e selecione o driver a partir da lista.

- Veja a Figura 7-5

B. Atualização dos Drivers

• As páginas a seguir mostram os passos necessários para atualizar um I/O driver parauma nova versão.

• Existem três tipos de atualizações:

- versão 6.x para versão 6.x

- versão 7.x para versão 7.x

- versão 6.x para versão 7.x

• Use os mesmos procedimentos para instalar um módulo adicional de software SIM(Software Improvement Module)

- Os SIMs para drivers podem ser descarregados a partir do web site daIntellution.

Page 229: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-26

7.6. Instalando os Drivers _____________________________________

Figura 7-5: Instalação do I/O Driver

Page 230: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-27

7.11. Atualizando v.6 para v.6_________________________________

A. Antes de Iniciar

• Crie um subdiretório fora do diretório \PDB e copie os seguintes arquivos:

- Arquivo da base de dados do processo (NomeBaseDados.PDB)

- Arquivo de configuração do driver (NomeNó.DRV onde DRV corresponde àstrês letras da sigla do driver)

• Salve a configuração existente do driver como arquivo CSV da seguinte forma:

- selecione Save As a partir do menu File no programa de configuração dodriver

- selecione Text Files (*.CSV) no campo Save File as Type

• Exporte a base de dados do processo

• Renomeie os arquivos NomeDoNó.DRV e Default.DRV do diretório \PDB paraNomeDoNó.OLD e Default.OLD

B. Instalando o Driver

• Crie um diretório temporário, por exemplo, C:\atualizacao

• Se estiver instalando uma nova versão contida no CD de Drivers, clique no botãoInstall Driver, selecione o driver desejado e clique o botão Install Now

• Se um SIM foi baixado do web site da Intellution , extraia os arquivos do driver emum diretório temporário:

- se o arquivo for um *.EXE, copie-o para o diretório temporário e clique duasvezes sobre ele para extrair os arquivos

- se o arquivo for um *.ZIP file, rode o WinZip e extraia os arquuivos nodiretório

- se tiver arquivos individuais de driver, copie-os para o diretório temporário

• Rode o setup da Intellution e selecione Custom Install.

- A mensagem “SCU file found, do you want to use its information” iráaparecer

• Clique o botão Yes

• A partir da caixa de opções do FIX, selecione somente Install I/O Drivers; limpetodas as outras opções

• Entre com o diretório onde estão os arquivos do driver e pressione Enter

• Quando o programa de instalação da Installation perguntar se deseja recriar o grupode programas, clique OK

Page 231: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-28

7.6. Atualizando v.6 para v.6_________________________________

C. Após Instalar o Driver

• Inicie o novo programa de configuração do driver

• Selecione Open a partir do menu File

• Selecione Text Files (*.CSV) no campo List Files of Type

- o arquivo CSV salvo anteriormente aparece na lista de arquivos

• Clique duas vezes sobre o arquivo CSV para ler a configuração antiga de volta para oprograma de configuração

• Selecione Save As a partir do menu File

• Entre com NomeDoNó.DRV como o nome do arquivo, onde DRV corresponde àstrês letras da sigla do driver

• Clique OK e inicie o iFIX

• Recarregue o driver

D. Após importar a configuração do driver, importe a base de dados do processo

• Salve e recarregue a configuração do driver

• Inicie o Database Manager e selecione Reload a partir do menu Database

• Selecione o nó local e clique duas vezes sobre o arquivo EMPTY.PDB

• Selecione Import a partir do menu Database

• Selecione o arquivo GDB, CSV ou TXT que foi salvo antes da atualização

- após completar a importação, uma janela aparece para informar se houvealgum erro de importação

- se houverem erros, eles ficam registrados no arquivo chamado IMPORT.ERR

- este arquivo reside no diretório \PDB

• Selecione Save As a aprtir do menu Database

• Salve a base de dados com o nome especificado no SCU

• Selecione Reload a partir do menu Database

• Selecione o nó local e clique duas vezes na base de dados que acabou de ser salva

Page 232: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-29

7.11. Atualizando v.7 para v.7_________________________________

A. Antes de Iniciar

• Crie um subdiretório fora do diretório \PDB e copie o arquivo da base de dados doprocesso e o arquivo de configuração do driver

• Salve a configuração existente do driver em formato CSV

• Exporte a base de dados do processo

• Renomeie os arquivos NomeDoNó.DRV e Default.DRV do diretório \PDB paraNomeDoNó.OLD e Default.OLD

B. Instalando o Driver

• Crie um diretório temporário, por exemplo, C:\atualizacao

• Desinstale o driver 7.x existente

- Clique duas vezes em Adicionar/Remover Programas no Painel de Controles

- Selecione o driver 7.x e clique o botão Adicionar/Remover

• Se estiver instalando uma nova versão contida no CD de Drivers, clique no botãoInstall Driver, selecione o driver desejado e clique o botão Install Now

• Se um SIM foi baixado do web site da Intellution , extraia os arquivos do driver emum diretório temporário:

- se o arquivo for um *.EXE, copie-o para o diretório temporário e clique duasvezes sobre ele para extrair os arquivos

- se o arquivo for um *.ZIP file, rode o WinZip e extraia os arquuivos nodiretório

- se tiver arquivos individuais de driver, copie-os para o diretório temporário

• Instale a nova versão do driver 7.x localizada no diretório temporário que você criou- Clique duas vezes sobre o ícone Setup.exe.

- Clique Next até aparecer uma mesnagem perguntando sobre o diretório doiFIX

- Entre a localização do iFIX e clique Next- Selecione Server como Node Type- Entre o nome do nó FIX do computador local conforme especificado no SCU

- Entre o nome da pasta no menu Start do Windows NT que deseja colocar odriver 7.x

- Clique Finish para instalar o driver 7.x

Page 233: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-30

7.6. Atualizando v.7 para v.7_________________________________

C. Após Instalar o Driver

• Inicie a nova versão da Power Tool

• Entre com o nome padrão do arquivo de configuração e verifique o diretório padrão(default):

- clique o botão Setup na barra de ferramentas Run-time

- selecione a pasta Default Path

- entre com o nome padrão do arquivo no campo adequado

- confirm the default path is correct - if it is not, change it

• Selecione Open a partir do menu File.

• Selecione Text Files (*.CSV) no campo List Files of Type

- o arquivo CSV salvo anteriormente deve aparecer na lista

• Clique duas vezes sobre o CSV para ler de volta a configuração anterior na PowerTool

• Selecione Save As a partir do menu File

• Digite NomeArquivo.DRV como nome do arquivo

• Feche a Power Tool e inicie o iFIX

D. Após importar a configuração do driver, importe a base de dados do processo

• Salve e recarregue a configuração do driver

• Inicie o Database Manager e selecione Reload a partir do menu Database

• Selecione o nó local e clique duas vezes sobre o arquivo EMPTY.PDB

• Selecione Import a partir do menu Database

• Selecione o arquivo GDB, CSV ou TXT que foi salvo antes da atualização- após completar a importação, uma janela aparece para informar se houve

algum erro de importação- se houverem erros, eles ficam registrados no arquivo chamado IMPORT.ERR- este arquivo reside no diretório \PDB

• Selecione Save As a aprtir do menu Database

• Salve a base de dados com o nome especificado no SCU

• Selecione Reload a partir do menu Database

• Selecione o nó local e clique duas vezes na base de dados que acabou de ser salva

Page 234: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-31

7.11. Atualizando v.6 para v.7__________________________________

A. Antes de Iniciar

• Desinstale a versão anterior do driver

- não instale a versão nova sobre a versão anterior

B. Instalando o Driver

• Usando o CD de Drivers, clique o botão Install Driver, selecione o driver desejado eclique o botão Install Now

C. Após Instalar o Driver

• Adicione o driver na configuração SCADA e na lista de tarefas do SCU

- isto fará com que o SCU inicie o driver automaticamente quando o iFIX foriniciado

D. Base de Dados do Processo

• Existem três possibilidades para trabalhar com a base de dados após fazer aatualização do driver:

- não existe base de dados para ser importada

- existe uma base de dados para ser importada e você quer que o DatabaseManager crie os datablocks automaticamente

- existe uma base de dados para ser importada e você não quer que o DatabaseManager crie os datablocks automaticamente

Page 235: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-32

7.6. Atualizando v.6 para v.7_________________________________

E. Não Existe Base de Dados para ser Improtada

• Use a opção Auto Create para criar datablocks automaticamente

- this will be discussed in more detail later in the course

F. Existe Base de Dados para ser Improtada e o Database Manager irá criar Automaticamenteos datablocks

• Configure o driver usando a opção Auto Create

• Normalmente esta opção é usada quando os datablocks a serem criado são similares

• Não import uma versão CSV de sua configuração antiga

- crie uma nova com a Power Tool

H. Existe Base de Dados para ser Improtada e o Database Manager não irá criarAutomaticamente os datablocks

• Crie os datablocks com a Power Tool

• Normalmente os datablocks são criados manualmente quando sua configuração dedriver usa dados de diferentes tipos

• Exemplo

- existem dados sem sinal (unsigned) para endereços de 101 até 200 e com sinal(signed) para endereços de 0 a 100 e 201 a 300

- a opção Auto Create não deve ser usada pois ela cria os datablocks com umúnico tipo de dado, de acordo com os padrões selecionados para o datablock

• Mais detalhes sobre este assunto serão vistos mais adiante neste curso

Page 236: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-33

Configuração do Driver I/O ____________________________________

Figura 7-6: Configuração do Driver I/O

ServidorSCADA

Definição doCanal

Poll Records

Definição doDispositivo

Definição doPoll Record

Hardware doProcesso

Page 237: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-34

7.12. Drivers Versão 6.x ________________________________________

A. Notas

• Existe uma parte de consulta (polling) e uma de configuração do driver

- A parte de consulta faz somente consulta

- A parte de configuração pode carregar, manipular e salvar configurações

• A parte de configuração pode carregar configurações com o iFIX sendo executadosem afetar a configuração que está sendo usada pela parte de “polling”

• O re-carregamento faz com que a configuração na parte de “polling” seja substituídapela configuração carregada pela parte de configuração

B. Arquitetura do Driver 6.x

• Programa de Configuração (xxxDIDW.EXE)

- ferramenta que estabelece os parâmetros de configuração e outros parâmetrosde hardware usados pela tarefa de “polling” e pela interface de software

- oferece uma interface gráfica para o usuário (GUI-Graphical User Interface) eum help on-line para orienta-lo na configuração

• Tarefa de “Polling” (xxxSPOLL.EXE)

- código de execução responsável pela leitura e escrita de dados para ohardware do processo

- armazena os dados na Tabela de Imagem do Driver (DIT - Driver ImageTable)

- a DIT contém as configurações necessárias para o processamento de cada“poll record”

• Interação de Software (xxxSTSR.DLL)

- responsável pela interação do driver I/O com as aplicações iFIX, tais como abase de dados e as telas do iFIX

Page 238: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-35

7.12. Drivers Versão 6.x _______________________________________

Figura 7-7: Arquitetura do Driver I/O Versão 6.x

Page 239: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-36

7.12. Drivers Versão 6.x ________________________________________

C. Configurando Drivers 6.x

• O programa de configuração do driver I/O contém campos para entrada de canal(channel), de dispositivo (device) e de parâmetros do “poll record” para cada driver

• Ele atualiza o arquivo de configuração do driver para ser usado com o iFIX quandoeste é reiniciado

• Para configurar um driver:

1. Selecione o canal que deseja configurar a partir dos botões “Channel” naparte superior do programa de configuração do driver I/O

2. Selecione o botão “Setup”

3. Digite os parâmetros do canal nos campos de configuração de comunicação

4. Selecione e adicione um dispositivo na caixa “Device”

5. Digite os parâmetros do dispositivo nos campos de definição do canal (DeviceName, Primary Station, etc.)

6. Na planilha do “poll record”, clique duas vezes na célula que desejaconfigurar

7. Entre com os parâmetros do “poll record” nos campos da caixa de diálogo deedição que aparece

• Repita o processo para todos os canais, dispositivos e “poll records” para aconfiguração do driver

Page 240: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-37

7.12. Drivers Versão 6.x _______________________________________

Figura 7-8: Configuração do Driver I/O

Page 241: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-38

7.12. Definição do Canal _____________________________________

A. Notas

• Usado para definir a comunicação entre o SCADA e o hardware do processo

• Pode ser para um único dispositivo de hardware ou para uma rede de dispositivos

• A maioria das configurações pode ser encontrada na documentação do dispositivo

- Baud Rate, Data Bits, etc.

B. Campos de Definição do Canal

• “Reply Time-out”

- tempo de espera por uma resposta do dispositivo de hardware

- após este tempo, outras tentativas são realizadas

◊ o número de tentativas é especificado no campo “Retries”

- se ainda não obtiver sucesso, o “poll record” recebe um sinal de falha e odriver alterna para a porta de backup

◊ o driver alterna a comunicação para a porta backup após esperar porum tempo determinado

◊ este tempo é especificado no campo “Delay”

- se nenhuma porta de backup estiver configurada, o driver tenta novamenteestabelecer comunicação com a porta primária

• “Delay”

- tempo de espera antes de reiniciar a seqüência de tentativas de comunicaçãocom o dispositivo de hardware após ocorrer um erro

- se estiver definida uma porta de backup, o driver alterna para a outra porta ereinicia a seqüência de tentativa

- caso contrário, ele reinicia a seqüência de tentativas com a porta primária

• “Retries”

- número de vezes que o driver envia novamente uma mensagem antes demarcar a comunicação como falha

- se for especificado zero, o driver não envia novamente a mensagem

• “Reconnect Time”

- tempo de espera, em segundos, antes de tentar restabelecer a sessão após aperda de comunicação com o hardware do processo

- em geral, é usado apenas com canais Ethernet

Page 242: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-39

7.12. Definição do Canal ____________________________________

Figura 7-9: Exemplo de Definião do Canal

Page 243: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-40

7.12. Definição do Dispositivo ________________________________

A. Notas

• Usado para configurar um dispositivo particular do hardware

• Precisa-se configurar cada dispositivo do hardware dentro de um canal

B. Campos de Definição do Dispositivo

• “Device Name”

- nome do dispositivo (com até 7 caracteres) para ser usado no campo deendereçamento I/O dos tags

- este nome será usado para referenciar este dispositivo na base de dados doprocesso

• “Hardware Type”

- especifica o modelo usado do hardware

• “Primary Address”

- endereço da estação do dispositivo (endereço da rede ou endereço TCP/IP)para o canal primário

- o número da estação deve ser único para cada dispositivo

- por padrão, se o driver falhar na comunicação com o dispositivo primário, eletenta se comunicar com o dispositivo de backup automaticamente.

• “Backup Address”

- endereço da estação do dispositivo (endereço da rede ou endereço TCP/IP)quando a estação primária não estiver comunicando

- este campo de configuração é opcional

Page 244: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-41

7.12. Definição do Dispositivo________________________________

Figura 7-10: Exemplo de Definição do Dispositivo

Page 245: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-42

7.12. Definição do “Poll Record” ______________________________

A. Notas

• Usado para configurar os “poll records” de um dispositivo• Um “poll record” é um conjunto de valores de dados que são lidos/escritos no

hardware do processo- cada “poll record” é armazenado na Tabela Imagem do Driver (DIT)

• A DIT é uma tabela de dados armazenada na memória do PC e usada pelo driver I/Opara armazenar valores do processo

- estes valores podem ser lidos pelo programa (SAC- Scan, Alarm and Control)- as aplicações também podem escrever dados nesta tabela, para que sejam

enviados para o hardware do processo

B. Campos do “Poll Record”

• “Poll Time”

- intervalo de tempo com que I/O Driver busca dados de um determinado “pollrecord” no hardware do processo

- recomendada-se utilizar um “poll time” duas vezes mais rápido que o “scantime” correspondente

• “Access Time”

- valor que especifica por quanto tempo o I/O Driver continua atualizando um“poll record” quando não existe nenhuma atividade de leitura e escritanaqueles registros

- a linha do “poll record” sai de varredura se dados não forem solicitadas dentrodeste tempo

• “Exception”

- a linha do “poll record” é atualizada quando ocorre mudança nos dados I/Omaior que a banda morta especificada

• “Dead Band”- para blocos analógicos, se uma “palavra” no “poll record” variar mais que a

banda morta, o “poll record” inteiro será atualizado- na base de dados, apenas o bloco que foi alterado é atualizado

• “I/O Address”

- cada tipo de dispositivo usa diferentes formatos de endereçamento- empacota o máximo de “palavras” em cada linha para que o desempenho do

driver seja otimizado- o número máximo de “palavras” por linha (“poll record”) depende do

dispositivo e do tipo de dados

• Exemplo:- A Figura 7-12 representa informação do manual de endereçamento do “poll

record” do driver I/O da Allen Bradley (ABR) para o modelo PLC5

Page 246: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-43

7.12. Definição do “Poll Record ______________________________

Figura 7-11: Exemplo de Definição do “Poll Record”

SectionName

FileType

FileNumber

StartWord Length Bit

ValueRange

DB MngrExample

INTEGER N 0 to 9999 0 to9999

1 to 120 0 to15

-32767 to+32767

MIX1:N10:52

DECIMAL D 0 to 9999 0 to9999

1 to 120 0 to15

0 to 9999 MIX1:D10:52/7

BINARY B 0 to 9999 0 to9999

1 to 120 0 to15

0 - 65535 MIX1:B10:52/7

STATUS N/A 0 to 9999 0 to9999

1 to 120 0 to15

non-numeric MIX1:S:52/7

FLOAT F 0 to 9999 0 to9999

1 to 60 0 to15

-2.147483E9

to

+2.147483E9

MIX1:F10:52/7

ASCII A 0 to 9999 0 to9999

1 to 120 N/A N/A MIX1:A10:52

Figura 7-12: Endereçamento do “Poll Record” do Driver ABH para PLC5

Page 247: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-44

7.13. Drivers Versão 7.x ________________________________________

A. Notas

• Possui um servidor e uma ferramenta de fácil uso chamada “power tool” paraconfiguração do driver

- O servidor faz a consulta do “poll record”, bem como carrega, manipula esalva as configurações

- O “power tool” constitui simplesmente de uma interface gráfica que informaao servidor quando carregar, manipular, salvar, executar, etc.

• O driver 7.x somente pode trabalhar com uma configuração por vez

- quando o “power tool” carrega uma nova configuração, ele faz com que aconfiguração do servidor seja substituída pela configuração recém carregada

- isto significa que os tags da base de dados podem se tornar inválidas.

B. Os drivers 7.x incorporam:

• Tecnologia de Automação OLE

- O driver 7.x pode expor suas características para ferramentas de programaçãoe outras aplicações

- objetos expostos no servidor I/O podem ser criados e manipulados a partir deoutra aplicação

• Integração com o iFIX

- Os drivers 7.x permitem adicionar automaticamente endereços naconfiguração do driver enquanto estiver configurando a base de dados doiFIX

- quando um bloco é adicionado na base de dados para acessar um ponto queainda não tenha sido configurado, o ponto é automaticamente adicionado e“polled” por dados

• Arquitetura Baseada em Exceção

- Os drivers 7.x são baseados em evento ao invés de serem baseados em tempo,reduzindo o tempo ocioso e aumentando o desempenho

• Compatível com OPC

- Os drivers 7.x também são compatíveis com o novo padrão OLE for ProcessControl (OPC) v1.0a

- Qualquer aplicação cliente OPC pode acessar dados do hardware do processoatravés do servidor I/O

Page 248: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-45

7.13. Drivers Versão 7.x _______________________________________

C. Arquitetura do Driver 7.x (ver Figura 7-13)

• 1. Servidor I/O

- o núcleo do driver I/O

- contém objetos e interfaces que realizam as seguintes tarefas:

◊ mantém a configuração do driver I/O

◊ lê e escreve dados do hardware do processo

◊ expõem a funcionalidade do driver para o OLE Automation

• 2. Objetos do Servidor

- “Driver”

◊ gerencia os canais e o estado geral do driver

- “Channel”

◊ contém as propriedades e os métodos que indicam o caminho para acomunicação com o driver I/O

- “Device”

◊ contém as propriedades e os métodos que indicam o comportamentode um dispositivo (ou estação de hardware) existente em um canal

- “Datablock”

◊ contém as propriedades e métodos que controlam o comportamento deuma parte endereçável de um dispositivo

◊ Os blocos de dados na memória local do servidor correspondem àsáreas de dados na DLL “Common Memory”

◊ Quando se adicionam novos blocos de dados na memória do servidorlocal, deve-se adicionar também novas áreas de dados à DLL“Common Memory”

• 3. Interfaces OLE

- expõe os dados e as funcionalidades do servidor para outras aplicações

• 4. DLL de I/O

- fornece as funções para enviar e receber dados do software de comunicaçãode hardware, se tal software for necessário

Page 249: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-46

7.13. Drivers Versão 7.x ________________________________________

C. Arquitetura do Driver 7.x (continuação)

• 5. DLL “Common Memory”

- constrói áreas de memória comuns para o driver de comunicação, expõe suasfuncionalidades para o Servidor e para a DLL NIO, e armazena e mantém osdados de processo

• 6. DLL NIO

- contém as bibliotecas de acesso (API-Application Program Interface) dodriver

• 7. DLL para Condicionamento de Sinal

- contém a API que escala os dados para as unidades de engenhariaespecificada

• 8. Ferramenta “Power Tool” do Driver I/O

- funciona como um cliente para o servidor I/O com uma interface gráfica deusuário para configurar e monitorar o driver

• 9. DLL do OPC Server- Acessa os dados configurados através das Interfaces OLE e lê/escreve dados

através da DLL NIO- a DLL do OPC Server é compatível com OLE for Process Control v1.0a ou

posterior

• 10. Aplicações FIX- comunica com o driver através da DLL NIO- lê e escreve dados em aplicações FIX de forma rápida e eficiente

• 11. Aplicações OPC Client- comunica com o driver através da DLL do OPC Server- aplicações OPC Client podem ter alta capacidade de leitura e escrita fornecida

pela DLL NIO

• 12. Objetos “Automation Controller” e Aplicações COM Client- comunicam-se com o driver I/O através das interfaces OLE- pode-se projetar aplicações com programação compatíveis com COM/OLE

tais como Visual Basic ou Visual C++.

• 13. Hardware do Processo- qualquer tipo de dispositivo I/O que controla um processo

• 14. Software de Comunicação com o Hardware (se necessário)- fornece comunicação com o hardware do processo

Page 250: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-47

7.13. Drivers Versão 7.x _______________________________________

Figura 7-13: Arquitetura do Driver I/O Versão 7.x

Page 251: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-48

7.13. Drivers Versão 7.x ________________________________________

D. Usando a Ferramenta “Power Tool”

• A ferramenta “Power Tool” é o utilitário principal para configuração e manutençãode um driver 7.x

• Características da Ferramenta “Power Tool”:

- A opção “Templates” serve para a especificação dos padrões dos canais,dispositivos e blocos de dados

- A opção “Setup” serve para a definição do nome e caminho padrão dosarquivos de configuração

- A opção “OLE Server” serve para conexão com um servidor I/O remoto oulocal

- A “Tree Browser” fornece um resumo da configuração do seu sistema

- A tela “Statistics” mostra todas as estatísticas do driver I/O quando está sendoexecutado

◊ as estatísticas são fornecidas para todos os níveis: driver, canal,dispositivo e bloco de dado

- A tela “Configuration” mostra e modifica as propriedades de driver, canal,dispositivo e bloco de dado

• Quando a “Power Tool” é iniciada, a caixa de diálogo “Server Connection” aparece

- esta caixa de diálogo permite escolher o servidor para a comunicação coma aferramenta “Power Tool”

- pode-se escolher tanto “Local Server” (computador local) como “RemoteServer” (outro computador da rede)

• Uma vez escolhido o servidor, a ferramenta “Power Tool” inicia a tentativa decomunicação

- se conseguir a conexão, aparece uma mensagem dizendo que a conexão estáestabelecida

- aparece então a janela principal da “Power Tool”

Page 252: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-49

7.13. Drivers Versão 7.x _______________________________________

Figura 7-14: “Power Tool” – Nível de Configuração do Driver

Page 253: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-50

7.13. Configuração do Canal _________________________________

A. Para adicionar um novo canal

• Selecione o botão “Add Channel” na barra de ferramentas de configuração

- o novo canal aparece na “Tree Browser” e os campos de configuração daspropriedades do canal aparecem na janela da direita

• Digite as propriedades do novo canal

• Selecione a caixa de opção “Enable” para habilitar a comunicação do novo canal.

B. Campos de Configuração do Canal

• “Enable”

- habilita o driver para consulta do canal

- se não selecionar esta opção, o driver não consulta o canal selecionado ouqualquer um dos dispositivos ou blocos de dados do canal

• “Port Sharing”

- permite compartilhar o canal selecionado com um ou mais drivers adicionais

- pode ser útil quando estiver usando um rádio como modo de transmissão etiver disponível apenas um transmissor de rádio e/ou freqüência

- o compartilhamento da porta pode ser usado apenas para canais no modo“master”

• “Mode”

- especifica o modo da operação- o modo do canal selecionado deve ser diferente do modo do hardware do

processo- por exemplo, se você configurar o hardware como “Slave”, configure o driver

como “Master”- O modo “Master” é típico para operações mais normais

• “Protocol”

- usado para selecionar o formato que o driver usa para enviar e receber dados- o formato selecionado para o canal deve ser o mesmo usado pelo hardware do

processo- use o protocolo RTU sempre que possível- o protocolo ASCII usa duas vezes mais caracteres, sendo portanto

inerentemente mais lento

Page 254: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-51

7.13. Configuração do Canal _________________________________

Figura 7-15: Exemplo de Configuração do Canal

Page 255: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-52

7.13. Configuração do Dispositivo_____________________________

A. Notas

• Deve-se configurar cada dispositivo (device) de hardware dentro de um canal

B. Campos de Configuração do Dispositivo

• “Device Name”

- nome do dispositivo selecionado

- qualquer aplicação que busca dados do driver usa este nome para acessarpontos na memória do dispositivo

- cada dispositivo com que o driver comunica deve ter um nome únicoindependente do canal do dispositivo

• “Primary Station”

- endereço da estação primária do dispositivo selecionado

• “Reply Timeout”

- quanto tempo o driver espera por uma resposta do dispositivo selecionado

- aceita o seguinte formato de tempo: dias:horas:minutos:segundos

• “Retries”

- quantas vezes o driver envia mensagens de falha para o dispositivo, antes deconsiderar o bloco como falho e iniciar a contagem do tempo de atraso(delay)

• “Delay Time”

- tempo de atraso que especifica por quanto tempo o driver espera após astentativas especificadas no campo “Retries” terem falhado

- aceita o seguinte formato de tempo: dias:horas:minutos:segundos

Page 256: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-53

7.13. Configuração do Dispositivo ____________________________

Figura 7-16: Exemplo de Configuração do Dispositivo

Page 257: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-54

7.13. Definição do Bloco de Dado _____________________________

A. Campos do Bloco de Dado

• “Block Name”- o nome do bloco de dado selecionado que serve basicamente para referência- cada bloco de dados deve ser único dentro de toda a configuração do driver

• “Primary Poll Rate”- taxa com que o driver I/O inicia a busca dados- aceita o formato de tempo: dias:horas:minutos:segundos até 6:23:59:59.- não confunda esta taxa com o tempo de varredura (scan time) dos blocos da

base de dados

• “Secondary Poll Rate”- taxa com que o driver consulta um bloco de dados após o tempo de acesso

(access time) expirar- o driver mantém esta taxa de consulta até que ocorra nova requisição do dado- a taxa secundária de consulta executa em conjunto com a taxa primária de

consulta- configure a taxa secundária maior que a taxa primária para ajudar a minimizar

o processamento de CPU, o qual garante que o bloco seja sempre consultado

• “Phase”- tempo de atraso para iniciar a consulta do bloco- quando este tempo expira, o driver inicia a leitura do bloco com a taxa

primária ou secundária- aceita o formato de tempo: dias:horas:minutos:segundos.

• “Access Time”- por quanto tempo o driver I/O varre um bloco com sua taxa primária quando

o SCADA não estiver mais solicitando dados daquele bloco- sempre que o SCADA solicitar dados de um bloco, o driver limpa o “access

time” daquele bloco- se a taxa de consulta secundária estiver desabilitada, o processo de “polling”

daquele bloco é finalizado até que exista uma nova solicitação de dados- certifique-se de tenha especificado um “access time” maior que o “scan time”

para o bloco correspondente na base de dados- aceita o formato de tempo: dias:horas:minutos:segundos- pode-se exigir que o driver I/O sempre varra um bloco sempre com a taxa

primária desabilitando este campo

Page 258: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-55

7.13. Definição do Bloco de Dado_____________________________

Figura 7-17: Exemplo de Configuração do Datablock

Page 259: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-56

7.14. Monitoramento dos Drivers I/O _____________________________

A. Mission Control

• O Mission Control pode ser usado para monitorar tanto os drivers 6.x como os 7.x

• Constitui uma interface para monitorar programas do iFIX

• Fornece uma janela dentro do sistema, ajudando diagnosticar problemas

• O Mission Control monitora as seguintes tarefas do iFIX:

- Controle I/O

- Coleta Histórica

- Tarefa SQL

- Processamento do SAC

- Gerenciador de Alarme Automático

- Sincronismo de Alarme

- Serviços ODBC de Alarme

• Iniciando e Parando os Drivers I/O Manualmente

1. Na guia “I/O Control” do “Mission Control”, selecione um nome de driver nacaixa de lista de drivers

2. Selecione o botão “Start”

Note que se o driver selecionado já estiver iniciado, o botão “Start” aparececomo um botão “Stop”

3. Para parar um driver I/O, selecione o driver desejado da lista e clique nobotão “Stop”

B. Aplicativo “Alarm History”

• Pode ser usados para monitorar tanto os driver 6.x como os 7.x

• Como os drivers enviam mensagens de evento para o aplicativo Alarm History, pode-se usar este programa para monitorar a atividade do driver

• São gerados eventos quando o driver:

- Inicia e finaliza

- Conecta e desconecta

- Altera os canais e dispositivos

- Falha a comunicação e quando retorna

Page 260: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-57

7.14. Monitoramento dos Drivers I/O_____________________________

Figura 7-18: Mission Control (guia I/O Control)

Page 261: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-58

7.14. Monitoramento dos Drivers I/O _____________________________

C. “Power Tool”

• A ferramenta “Power Tool” pode ser usada para monitorar somente os drivers 7.x

• “Statistics View” (ver Figura 7-20)

- estatísticas de comunicação para cada bloco de dado, dispositivo, canal e dodriver inteiro

- mostrar estas estatísticas é útil para descobrir qual parte do driver não estáfuncionando

• A Mensagem de Log no programa “I/O Server” (ver Figura 7-19)

- A mensagem de log no programa I/O Server traz as seguintes informações

◊ data e hora que o arquivo de configuração é carregado

◊ qual arquivo de configuração é carregado

◊ data e hora que outros aplicativos se comunicam com o servidor

◊ CSV import errors

- Para visualizar o programa “I/O Server”

◊ Abra a ferramenta “Power Tool”

◊ Selecione um item do “Tree Browser”

◊ Pressione <Alt>-<Shift>-<S>

Figura 7-19: Programa “I/O Server”

Page 262: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 7-59

7.14. Monitoramento dos Drivers I/O_____________________________

Figura 7-20: “Statistics View” da Ferramenta “Power Tool”

Page 263: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 7-60

7.15. Questões de Revisão _____________________________________

1. Quais são as diferenças entre um driver versão 6.x e um driver versão 7.x?

2. Qual é a diferença entre um driver COM e um driver RES? Que outras opções de driverexistem?

3. Explique o que acontece quando a comunicação entre o driver e o hardware do processo écortada.

4. Explique como funciona o “Access Time” de um driver.

5. Para que serve a ferramenta “Power Tool”?

Page 264: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-1

8. Tags Digitais da Base de Dados ______________________________

Capítulo 8

Tags Digitais da Base de Dados

Page 265: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-2

8. Tags Digitais da Base de Dados _____________________________

Objetivos do Capítulo

A base de dados do processo é um dos aplicativos mais importantes do sistema iFIX. Através delapassam todos os dados enviados ou recebidos pelo hardware do processo.

A base de dados é constituída por estruturas chamadas tags ou tags. Este capítulo do curso faz umaintrodução aos tags da base de dados, descrevendo um dos tags mais usados, os tags digitais. Estestags podem ser um tag de entrada (DI - Digital Input) ou um tag de saída (DO - Digital Output).

O capítulo está organizado nos seguintes tópicos:

• Tipos de Tags da Base de Dados

• Tag de Entrada Digital

• Tag de Saída Digital

Page 266: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-3

8.1. Tags da Base de Dados___________________________________

A. Introdução

• Os blocos (ou tags) são unidades individuais de instrução que podem receber,verificar, manipular e enviar valores de processo.

• Existem dois tipos de tags:

- Tags Primários

- Tags Secundários

• Podem ser agrupados em uma cadeia para realizarem funções adicionais.

B. Tags Primários

• A maioria recebe dados da Tabela de Imagem do Driver

• A maioria possui tempo de varredura (scan time)

• Normalmente são associadas com um I/O do hardware

C. Tags Secundários

• A maioria envia ou recebe dados de um tag anterior de uma cadeia de tags

• Realizam uma função específica com a entrada

• Podem realizar cálculos ou armazenar as entradas

• NÃO podem ser o primeiro tag de uma cadeia

D. Exemplo:

• A Figura 8-1 mostra um exemplo de uma cadeia da base de dados do processo

Ent. Analógica Cálculo Tendência

EntradaFluxo Tot_Fluxo Tend_Fluxo

Figura 8-1: Exemplo de Cadeia da Base de Dados do Processo

Page 267: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-4

8.2. Tag de Entrada Digital ____________________________________

A. Introdução

• DI = Digital Input

• Usado para ler dados digitais do hardware como válvulas, motores, bombas, etc, ouqualquer valor do processo que possua dois estados (aberto/fechado,ligado/desligado, etc).

B. Nome do Tag

• O campo Tagname corresponde ao nome do tag, que deve ser exclusivo na base dedados.

• O nome do tag pode conter até 30 caracteres e deve conter pelo menos um caracterenão numérico.

- Obs: o nome pode iniciar com um número.

• Caracteres válidos:

- (traço) / (barra)

_ (sub-traço) \ (contra-barra)

! (exclamação) | (barra vertical)

# (sustenido) [ (abertura de colchete)

% (porcentagem) ] (fechamento de colchete)

$ (dólar)

• Não é permitido espaço entre os caracteres.

C. Descrição do tag

• O campo Description é opcional e pode conter até 40 caracteres.

• Esta descrição é mostrada no sumário de alarmes, gráficos, datalinks, etc.

D. Encadeamento de Tags

• Os campos Previous e Next definem o nome do tag anterior e posterior na cadeia detags.

Page 268: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-5

8.2. Tag de Entrada Digital ____________________________________

Figura 8-2: Tag de Entrada Digital (guia Basic)

Page 269: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-6

8.2. Tag de Entrada Digital ____________________________________

F. Endereçamento do Tag

• Selecione o driver de comunicação que está sendo utilizado para o tag no campoDriver.

- Obs: a Intellution possui uma lista com mais de 300 drivers disponíveis.

• Especifique o endereço configurado no driver referente ao tag no campo I/O Address.

• O manual eletrônico de cada driver oferece detalhes de configuração deste campo.

• A Figura 8-3 mostra exemplos de endereçamento para alguns drivers.

• Obs: não atribua o mesmo endereço para tags com processamento por tempo e porexceção.

H. Hardware Option

• Este campo de configuração é normalmente deixado em branco, e serve paraespecificar um informação adicional para alguns drivers.

• Consulte o manual eletrônico do driver para saber se esta configuração é necessária.

I. Atualização do Valor do Tag

• O campo Scan Time especifica a freqüência com que o SAC varre e processa o tag.

• Existem três formas de configurar o tempo de varredura:

- Scan time baseado em tempo

◊ O tag é processado em intervalo fixo de tempo.

◊ A Figura 8-4 mostra as opções desta configuração.

- Scan time baseado em exceção

◊ O tag somente é atualizado quando sua variação for maior que a bandamorta especificada em seu poll record do driver.

- Scan time com apenas uma leitura (one-shot)

◊ O SAC processa o tag apenas quando é iniciado ou recarregado.

◊ Para configurar o scan time para apenas uma leitura, digite zero (0)neste campo.

Page 270: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-7

8.2. Tag de Entrada Digital ____________________________________

Tipo de Driver Endereços paraEntradas/SaídasDigitais

Endereços paraEntradas/SaídasAnalógicas

Entrada Genérica Dispositivo:Endereço Dispositivo:Endereço

Allen Bradley Dev1:I:52/7 Dev2:N7:52

GE Dev1:I:1 Dev2:R:1

Modicon Dev1:10001 Dev2:30001

Opto 22 Dev1:0 Dev2:1

Siemens Dev1:17:0 Dev2:13

Texas Instruments Dev1:X1 Dev2:V1

Figura 8-3: Exemplos de Endereçamento de Drivers

Incremento Faixa

Milisegundos 0.05 - 0.95

Segundos 1 - 59

Minutos 1M - 59M

Horas 1H - 24H

Figura 8-4: Opções de Scan Time Baseado em Tempo

Page 271: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-8

8.2. Tag de Entrada Digital ____________________________________

J. Legenda do Tag

• O campo Labels permite configurar legendas com até 16 caracteres.

- Se o field de um datalink na tela for F_CV, então são mostrados valoresnuméricos 0 ou 1.

- Se o field de um datalink na tela for A_CV, então são mostradas as legendasconfiguradas neste campo.

• Legendas padrões: Open para valor 0 e Close para valor 1.

K. Alarmes

• O processamento de alarme e mensagem do tag é habilitado na opção Enable Alarm.

• Permite que datalinks mostrem as condições de alarme na tela e que outros tagsdetectem um alarme deste tag.

• Quando o alarme estiver desabilitado para um dos tags da cadeia, a cadeia inteirapode ser afetada.

L. Mensagens

• O processamento de alarme e mensagem do tag é habilitado na opção Enable EventMessaging.

• Mensagens de evento não necessitam de reconhecimento, e gera uma mensagem todavez que entra em estado de alarme.

• Deve-se habilitar as opções Enable Alarming e Enable Event Message.

• As mensagens de evento são enviadas para os mesmos serviços de alarmeconfigurados no SCU, somente não aparecendo no sumário de alarmes.

M. Tipo de Alarme

• O alarme do tipo Open gera um alarme quando o valor do tag for zero (0), enquantoque o tipo Close gera um alarme quando seu valor for um (1).

• O alarme do tipo Change of State gera um alarme a cada transição de estado do tag.Este alarme existe para um período de scan e deve ser especificado somente para tagsDI baseados em tempo.

N. Prioridade do Alarme

• A prioridade do alarme é usada para filtrar os alarmes enviados para os serviços dealarme (veremos melhor este assunto em capítulos seguintes).

Page 272: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-9

8.2. Tag de Entrada Digital ____________________________________

Figura 8-5: Tag de Entrada Digital (guia Alarms)

Page 273: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-10

8.2. Tag de Entrada Digital ____________________________________

O. Alarm Extension Fields

• São campos que podem ser usados para descrições adicionais definidas pelo usuário esuportam até 80 caracteres cada um.

P. Áreas de Segurança dos Tags

• As áreas de segurança protegem os tags de escrita. O usuário deve ter acesso a umadas áreas de segurança para alterar o valor do tag protegido.

• Cada tag pode ter definido até três áreas de segurança.

Q. Enable Output

• Esta opção habilita a escrita de valores em tags tipicamente de entrada (veremosmelhor este assunto em capítulos seguintes).

R. Modo de Inicialização do Tag (Startup)

• Define o modo de inicialização do tag quando a base de dados é carregada ou quandoo tag é colocado em on scan.

ü Modo Automárico: recebe dados da DIT.

ü Modo Manual: aceita dados de teclado, de outro tag, receitas e programas.

Page 274: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-11

8.2. Tag de Entrada Digital ____________________________________

Figura 8-6: Tag de Entrada Digital (guia Advanced)

Page 275: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-12

8.3. Tag de Saída Digital ______________________________________

A. Introdução

• DO = Digital Output

• Usado para enviar dados digitais da base de dados para um endereço da DIT paraqualquer valor de processo que tenha dois estados (aberto/fechado, ligado/desligado,etc).

• O valor é enviado cada vez que o SAC processa o tag.

• Se for um tag stand alone (fora de uma cadeia de tags), o valor é enviado somentequando o tag sofre alguma alteração.

B. Invert Output

• Inverte o valor atual antes de enviá-lo para a DIT.

C. Initial Value

• Este campo corresponde ao valor inicial do tag que é enviado para a DIT quando oSAC é iniciado ou quando a base de dados do processo é recarregada.

Page 276: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-13

8.3. Tag de Saída Digital ______________________________________

Figura 8-7: Tag de Saída Digital (guia Basic)

Page 277: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-14

8.4. Exercício 8 ______________________________________________

Tags Digitais

Exercício 8

Page 278: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-15

Exercício 8 __________________________________________________

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Adicionar um tag de entrada digital na base de dados do processo.2. Adicionar um tag de saída digital na base de dados do processo.3. Adicionar datalinks na tela.4. Criar animações básicas usando tag digitais.

Informações sobre o exercício:

Neste exercício, iremos continuar com o desenvolvimento da aplicação de produção de cervejacriando uma tela para monitorar o processo de filtragem através de um filtro chamadoWhirlpool. O filtro é usado para remover o lúpulo fervido do mosto que vem do tanque decozimento de mosto (Brew Kettle). O mosto com o lúpulo são centrifugados no filtro, fazendocom que o lúpulo e outros sólidos remanescentes sejam separados do mosto.

Antes de criar uma tela, iremos criar tags digitais para monitorar e controlar as válvulas e omotor do filtro. Então, iremos usar dynamos para criar os objetos gráficos. No final, sua teladeverá se parecer com:

Quando terminar este exercício, vá para a próxima seção e responda as questões.

Page 279: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-16

Exercício 8___________________________________________________

A. Cria uma nova tela.Faz uma nova tela e adiciona tags na base de dados.

1. A partir do menu File, selecione New –Picture.Uma nova tela sem título aparece.

2. A partir da barra de ferramentas do WorkSpace, selecione o botão Add Database Block.A seguinte caixa de diálogo aparece:

3. Digite o seguinte nome no campo Database Block:

FILTER_SWITCH4. Selecione Add

A caixa de diálogo para selecionar o tipo de tag aparece.

5. Selecione DI – Digital Input a partir da lista de tags disponíveis e então OK.A seguinte caixa de diálogo aparece:

Page 280: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-17

Exercício 8 __________________________________________________

A. Cria uma nova tela (continuação).

6. Configure as seguintes opções com os valores mostrados à direita:

Description: Válvula de Drenagem do WhirlpoolI/O Address: 80:0

7. Selecione a guia Advanced da caixa de diálogo.

8. Selecione a opção Enable Output.

9. Selecione Add quando terminar.

A seguinte caixa de diálogo aparece:

10. Selecione Yes para colocar o novo tag para varredura (on scan).

Você estará de volta para a nova tela vazia.

Page 281: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-18

Exercício 8___________________________________________________

B. Adiciona tags adicionais.Cria mais tags digitais.

1. Usando o mesmo procedimento descrito nas páginas anteriores, adicione um novo tag nabase de dados. Configure as opções a seguir com os valores listados a direita:

Tag Type: Digital InputTag Name: FILTER_STATDescription: Status do Filtro WhirlpoolI/O Address: 80:1Open Label: ParadoClose Label: RodandoEnable Output: Desabilitado

Nota: Este tag será usado para monitorar o estado do filtro. Ou seja, ele irádeterminar se o Whirlpool está ou não ativado no momento.

2. Adicione um outro tag na base de dados e configure as opções a seguir com os valoreslistado a direita:

Tag Type: Digital OutputTag Name: FILTER_CONTROLDescription: Controle do Filtro WhirlpoolI/O Address: 80:1Initial Value: 0Open Label: DesligarClose Label: Ligar

Obs.: Este tag será usado para controlar o filtro.

Page 282: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-19

Exercício 8 __________________________________________________

C. Adiciona dynamos.Cria objetos gráficos para representar o filtro.

1. A partir da árvore do sistema, clique duas vezes na pasta Dynamo Sets.

A lista de conjuntos de dynamos disponíveis aparece.

2. Clique duas vezes no conjunto Tanks.

A lista de tanques fica disponível e o conjunto de dynamos aparece no WorkSpace.

3. Arraste o seguinte dynamo para a tela sem título:

TankWDoorB1

Uma caixa de diálogo para mudar a cor do tanque aparece.

4. Deixe a cor sugerida e selecione OK.

5. Feche o conjunto de dynamos.

A tela deve-se parecer agora com:

Page 283: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-20

Exercício 8___________________________________________________

C. Adiciona dynamos (continuação).

6. Usando conjuntos adicionais de dynamos, adicione outros objetos na tela. Use a figuraabaixo como referência.

7. Adicione objetos texto na tela.

Quando terminar, sua tela deverá se parecer com:

Page 284: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-21

Exercício 8 __________________________________________________

D. Adiciona dynamo de válvula.

1. Clique duas vezes no conjunto de dynamos ValvesAnim.

A lista de válvulas disponíveis e o conjunto de dynamos aparecem no WorkSpace.

2. Arraste o seguinte dynamo à tela sem título:

ValveHorizontalControlAnimB1

A seguinte caixa de diálogo aparece:

3. Configure as seguintes opções com os valores listados a direita:

Tagname: FILTER_SWITCHNormally Open Valve: HabilitadoOpen Position Color: VerdeClose Position Color: Vermelho

4. Quando terminado, selecione OK.

5. Feche o conjunto de dynamos.

Page 285: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-22

Exercício 8___________________________________________________

E. Adiciona links de dados.Adiciona links de dados para monitorar e controlar o estado do filtro.

1. Adicione três links de dados na tela. Use a figura e a tabela abaixo como referência.

Link Data Source Data Entry

Link 1 FILTER_SWITCH.A_CV In Place

Link 2 FILTER_STAT.A_CV None

Link 3 FILTER_CONTROL.A_CV In Place

Link 1

Link 2

Link 3

Page 286: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 8-23

Exercício 8 __________________________________________________

F. Salva e executa.

1. A partir do menu File, selecione Save.

A caixa de diálogo para salvar o documento aparece.

2. Entre com o seguinte nome no campo File Name:

Filter

3. Selecione Save para salvar a tela.

4. A partir do menu WorkSpace, selecione Switch to Run.

A tela abre no modo de execução.

5. Aparece sinais de interrogação (????) na tela indicando valores desconhecidos. Por quê?

6. Altere os valores dos datalinks e observe o comportamento da tela.

Fim do Exercício

Page 287: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 8-24

8.5. Questões de Revisão _____________________________________

1. Qual é a diferença entre um tag primário e um tag secundário?

2. Quais são os três tipos de varredura (scan time) de um tag?

3. Qual é a diferença entre um alarme e uma mensagem?

4. Para que serve a campo Labels em um tag digital?

5. Para que serve o campo Initial Value em um tag de saída digital?

Page 288: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-1

9. Blocos Analógicos da Base de Dados _________________________

Capítulo 9

Blocos Analógicos da Base de Dados

Page 289: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-2

9. Blocos Analógicos da Base de Dados ________________________

Objetivos do Capítulo

Este capítulo continua a introdução de tags da base de dados do iFIX. Serão apresentados os tagsanalógicos, tanto o tag de entrada analógica (AI – Analog Input), tag de alarme analógico (AA –Analog Alarm), como o tag de saída analógica (AO – Analog Output).

O capítulo está organizado nos seguintes tópicos:

• Revisão das Características dos Tags

• Tag de Entrada Analógica

• Tag de Alarme Analógico

• Tag de Saída Analógica

Page 290: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-3

9.1. Características dos Blocos________________________________

A. Tipos de Blocos

• Blocos Primários

• Blocos Secundários

B. Nome do Bloco

C. Descrição

D. Bloco Anterior e Posterior

E. Endereçamento

• Driver I/O

• Endereço

F. Tipo de Processamento (Varredura)

• Baseado em tempo

• Baseado em exceção

• “One Shot” (apenas um disparo)

Page 291: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-4

9.2. Bloco de Entrada Analógica _______________________________

A. Notas:

• AI - Analog Input

• Usado para ler valores numéricos do processo e armazená-los na base de dados

- temperaturas, pressões, velocidade, etc.

- normalmente, estes valores se encontram dentro de uma faixa definida por umlimite superior e inferior

B. Campo “Engineering Units”

• Campo “Low Limit”

- define o menor valor que este bloco poderá mostrar

- o número de dígitos decimais define os dígitos significativos

• Campo “High Limit”

- define o maior valor que este bloco poderá mostrar

- o número de dígitos decimais define os dígitos significativos

• Campo “Units”

- campo definido pelo usuário que estabelece as unidades de engenharia

- pode ter até 32 caracteres

Page 292: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-5

9.2. Bloco de Entrada Analógica _______________________________

Figura 9-1: Bloco de Entrada Analógica (guia Basic)

Page 293: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-6

9.2. Bloco de Entrada Analógica _______________________________

C. Campo “Signal Conditioning”

• Indica ao driver como condicionar os dados do dispositivo

• Calibra o sinal entre o dispositivo de controle e o iFIX

• O hardware do processo deve ter condicionamento de sinal específico para aqueledispositivo

• Ver Figura 9-4 para exemplos de opções de condicionamento de sinal

Campo Faixa do Sensor Valor do CLP PDB

EGU Inferior 4 mA 0 -150

EGU Superior 20 mA 32767 700

Condicionamento de Sinal 15AL

Exemplo 12 mA 16383 275

Figura 9-2: Com Escala na PDB

Campo Faixa do Sensor Valor do CLP PDB

EGU Inferior 4 mA -150 -150

EGU Superior 20 mA 700 700

Condicionamento de Sinal NONE

Exemplo 12 mA 275 275

Figura 9-3: Sem Escala na PDB

Page 294: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-7

9.2. Bloco de Entrada Analógica _______________________________

Se o dado (Data Type) for: O “Signal Conditioning” deve ser:

UNSIGNED Qualquer opção da tabela abaixo.

SIGNED NONE ou LIN

FLOAT, LONG, DIGITALou ASCII

Vazio (qualquer entrada será ignorada).

Opção Escala Notas

8AL 0 - 255 Ajusta o sinal do hardware com a faixa EGUno bloco na base de dados. Verifica alarmes.

12AL 0 - 4095 Ajusta o sinal do hardware com a faixa EGUno bloco na base de dados. Verifica alarmes.

15AL 0 - 32767 Ajusta o sinal do hardware com a faixa EGUno bloco na base de dados. Verifica alarmes.

3BCD 0 - 999 Ajusta o sinal do hardware com a faixa EGUno bloco na base de dados. Verifica alarmes.Ignora os 4 primeiro bits.

4BCD 0 - 9999 Ajusta o sinal do hardware com a faixa EGUno bloco na base de dados. Verifica alarmes.

8BN 0 - 255 Ajusta o sinal do hardware com a faixa EGUno bloco na base de dados. Não Verificaalarmes.

12BN 0 - 4095 Ajusta o sinal do hardware com a faixa EGUno bloco na base de dados. Não verificaalarmes.

15BN 0 - 32767 Ajusta o sinal do hardware com a faixa EGUno bloco na base de dados. Não verificaalarmes.

LIN 0 - 65535(unsigned)

Ajusta o sinal do hardware com a faixa EGUno bloco na base de dados.

LIN -32768 to 32767(signed)

Ajusta o sinal do hardware com a faixa EGUno bloco na base de dados.

NONE sem escala Ignora a faixa EGU no bloco da base de dados.Não verifica alarmes.

Figura 9-4: Seleções de Condicionamento de Sinal

Page 295: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-8

9.2. Bloco de Entrada Analógica _______________________________

D. Campo “Alarm Limits”

• Alarmes LO e LOLO

- valores abaixo destes limites geram um alarme

• Alarmes HIHI e HI

- valores acima destes limites geram um alarme

• Alarme “ROC - Rate Of Change”

- variação máxima possível da faixa EGU entre uma varredura e outra

E. Campo “Dead Band”

• Valor de banda morta que impede que mais de um alarme seja gerado quando o valorfica variando dentro desta faixa

• Esta banda morta serve para todos os alarmes do bloco

Page 296: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-9

9.2. Bloco de Entrada Analógica _______________________________

Figura 9-5: Bloco de Entrada Analógica (guia Alarm)

Page 297: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-10

9.2. Bloco de Entrada Analógica _______________________________

F. Campo “Smoothing”

• Filtro digital de primeira ordem que reduz o ruído dos sinais de entrada

• Usado para reduzir a variação de um sinal

• Calcula a saída do bloco através da soma de uma parcela do valor anterior e umaparcela do novo valor de entrada do dispositivo

- a nova saída é então enviada para o próximo bloco da cadeia

• Valores válidos para este campo vão 0 a 15

• O algoritmo deste filtro é baseado na seguinte equação:

Saída = Atual)(Valor 16

x16Anterior)(Valor

16x −

+

em que:

◊ x = fator de suavização (smoothing), definido no bloco

G. Campo “Enable Output”

• Habilita este bloco para escrever valores de volta para a DIT

• Isto pode ser usado para gerar alarmes e enviar valores de set point

Page 298: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-11

9.2. Bloco de Entrada Analógica _______________________________

Figura 9-6: Bloco de Entrada Analógica (guia Advanced)

Page 299: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-12

9.3. Bloco de Alarme Analógico ________________________________

A. Notas:

• AA - Analog Alarm

• Usado para ler valores numéricos do processo e envia-los para a base de dados

• O bloco AA tem capacidade de alarme maior que o bloco AI

- fora o alarme, ele possui as mesmas características que o AI

B. Campo “Remote Ack”

• Define um bloco e campo (tag.field) a ser usado para reconhecimento remoto

• O alarme é reconhecido quando o valor deste bloco remoto variar de zero para umvalor maior que zero

C. Campo “Alarm Supression”

• Define um bloco e campo (tag.field) a ser usado para controlar o processamento dealarme

- quando o valor deste bloco for zero, o alarme é processado

- quando o valor deste bloco for maior que zero, o processamento de alarme ésuspenso

• Enquanto estiver suspenso, o contato associado com cada tipo de alarme é aberto

D. Campo “DEV”

• Alarme baseado em um desvio do valor

E. Campo “Contact”

• Nome de um bloco digital que transita para o estado 1 quando o bloco AA estiver emestado de alarme

F. Campo “Out Mode”

• Define quando o bloco de contato irá retornar para o estado zero

• Ver Figura 9-8 mostra as opções de ação deste campo

Page 300: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-13

9.3. Bloco de Alarme Analógico _______________________________

Figura 9-7: Bloco de Alarme Analógico (guia Alarm)

Out Mode Ação Tomada

Acknowledge Abre o bloco digital quando o operador reconhece oalarme.

Return Abre o bloco digital quando o alarme é apagado.

All Clear Abre o bloco digital quando o alarme é reconhecido eapagado.

Never Não abre o bloco digital.

Figura 9-8: Ações do Campo “Out Mode”

Page 301: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-14

9.4. Bloco de Saída Analógica _________________________________

A. Notas:

• AO - Analog Output

• Usada para escrever valores numéricos de set points a partir da base de dados

• O valor é enviado:

- toda vez que recebe um valor de outro bloco

- toda vez que um operador entra com um novo valor

- na inicialização, baseando-se no valor do campo “Initial Value”

B. Campo “Initial Value”

• Valor enviado para o I/O na inicialização ou quando a base de dados é carregada

• Deve estar dentro do limite do operador e da faixa EGU

C. Campo “Invert Output”

• Inverte o valor de saída do bloco

D. Campo “Low Operator Limits”e High Operator Limits”

• Estabelece a faixa de valores que o bloco aceita de uma entrada de operador (a aprtirdo teclado) ou de programas em VBA

• Se o valor digitado estiver acima ou abaixo deste limite, ele será automaticamenteajustado para o limite configurado

E. Campo “Rate Limit”

• Mudança máxima da faixa EGU permitida entre uma varredura e outra

• Este limite é aplicável se o bloco fizer parte de uma cadeia ou se estiver isolado

Page 302: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-15

9.4. Bloco de Saída Analógica _________________________________

Figura 9-9: Bloco de Saída Analógica (guia Basic)

Page 303: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-16

9.5. ______________________________________________ Exercício 9

Blocos Analógicos

Exercício 9

Page 304: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-17

___________________________________________________Exercício 9

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Adicionar um bloco de entrada analógica na base de dados do processo2. Adicionar um bloco de saída analógica na base de dados do processo3. Adicionar links de dados na tela4. Criar animações básicas usando blocos analógicos

Informações sobre o exercício:

Neste exercício, iremos continuar com o desenvolvimento da aplicação de produção de cervejacriando uma tela para monitorar o tanque de fermentação. Neste tanque, levedura é adicionadapara consumir os açúcares e produzir álcool e dióxido de carbono. A mistura permanece notanque de 5 a 20 dias, com temperatura aproximadamente de 41°F a 50°F (5°C a 10°C). Édurante este processo que o mosto é convertido em cerveja.

Antes de criar os objetos, iremos criar blocos analógicos para monitorar e controlar atemperatura e o nível do tanque de fermentação. Iremos usar dínamos para criar objetosgráficos. Quando terminar, sua tela deverá se parecer com:

Quando terminar este exercício, vá para a próxima seção e responda as questões.

Page 305: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-18

__________________________________________________ Exercício 9

A. Cria uma nova tela.Faz uma nova tela e começa a adicionar blocos na base de dados.

1. A partir do menu File, selecione New –Picture.

Uma nova tela sem título aparece.

2. A partir da barra de ferramentas do WorkSpace, selecione o botão Add Database Block.

A caixa de diálogo de adição de um bloco aparece.

3. Digite o seguinte nome no campo Database Block:

FERM_TEMP

4. Selecione Add

A caixa de diálogo para seleção do tipo do bloco aparece.

5. Selecione AI – Analog Input da lista de tipos disponíveis de blocos e selecione OK.

A seguinte caixa de diálogo aparece:

Page 306: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-19

___________________________________________________Exercício 9

A. Cria uma nova tela (continuação).

6. Configure as seguintes opções com os valores mostrados à direita:

Description: Fermentation Tank TemperatureI/O Address: 90Low Limit: -150.00High Limit: 700.00Units: Degrees

7. Selecione a guia Advanced da caixa de diálogo.

8. Selecione a caixa de opção Enable Output.

9. Selecione Add quando terminar.

A seguinte caixa de diálogo aparece:

10. Selecione Yes para colocar o novo bloco em varredura.

Você irá retornar para a nova tela vazia.

Page 307: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-20

__________________________________________________ Exercício 9

B. Adiciona novos blocos.Cria mais blocos na base de dados.

1. Usando o mesmo procedimento descrito nas páginas anteriores, adicione um novo blocona base de dados. Configure as seguintes opções com os valores listados a direita:

Tag Type: Analog InputTag Name: FERM_LEVELDescription: Fermentation Tank LevelI/O Address: 91Low Limit: 0.00High Limit: 1000.00Units: GallonsLow Low Alarm: 50.00Low Alarm: 150.00High Alarm: 800.00High High Alarm: 900.00Dead Band: 10.00

Nota: Este tag será usada para monitorar o nível do tanque de fermentação.

2. Adicione um novo bloco na base de dados e configure as seguintes opções com osvalores listados a direita:

Tag Type: Analog OutputTag Name: FERM_LEVEL_SPDescription: Fermentation Tank SetpointI/O Address: 91Low Limit: 0.00High Limit: 1000.00Units: GallonsOperator Low Limit: 200.00Operator High Limit: 800.00Rate Limit: 200.00

Nota: Este tag será usada para controlar o nível do tanque de fermentação.

Page 308: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-21

___________________________________________________Exercício 9

C. Adiciona Dínamos.Cria objetos para representar o tanque de fermentação.

1. A partir da árvore do sistema, clique duas vezes na pasta Dynamo Sets.

A lista de conjunto de dínamos aparece.

2. Dê um duplo clique no conjunto TanksAnim2.

A lista de tanques fica disponível e o conjunto de dínamos aparece na área de trabalho.

3. Arraste o seguinte dínamo à tela sem título:

TankBatchC1

A seguinte caixa de diálogo aparece:

4. Entre com o seguinte nome no campo Tagname:

FERM_LEVEL

5. Selecione a caixa Fetch Limits from Data Source e selecione então OK.

6. Feche o conjunto de dínamos de tanques.

Page 309: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-22

__________________________________________________ Exercício 9

C. Adiciona Dínamos (continuação).

7. Usando outros conjuntos de dínamos, adicione novos objetos na tela. Use a figuraabaixo como referência.

8. Adicione objetos texto na tela.

Quando terminar, sua tela deverá se parecer com:

Page 310: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-23

___________________________________________________Exercício 9

D. Adiciona Links de Dados.Adiciona links de dados para monitorar e controlar o estado do filtro.

1. Adicione três links de dados na tela. Use a figura e a tabela abaixo como guia.

Link Data Source Data Entry

Link 1 FERM_LEVEL.F_CV None

Link 2 FERM_LEVEL_SP.F_CV In Place

Link 3 FERM_TEMP.F_CV In Place

Link 1

Link 2

Link 3

Page 311: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-24

__________________________________________________ Exercício 9

E. Salva e Executa.

1. A partir do menu File, selecione Save.

A caixa de diálogo para salvar o documento aparece.

2. Entre com o seguinte nome no campo File Name:

FermTank

3. Selecione o botão Save para salvar a tela.

4. A partir do menu WorkSpace, selecione Switch to Run.

A tela abre no modo de execução.

5. Aparece uma mensagem dizendo que um dos valores não é conhecido. Por quê?

6. Altere os valores dos links de dados para ver o comportamento da tela.

Fim do Exercício

Page 312: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 9-25

9.6. Questões de Revisão_____________________________________

1. Qual é a diferença entre um bloco AI e um bloco AA?

2. O que é o condicionamento de sinal?

3. Para que serve a banda morta de alarme?

4. Para que serve o contato em um bloco AA?

5. Para que serve os limites de operador em um bloco AO?

Page 313: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 9-26

9.6 Questões de Revisão _____________________________________

página em branco

Page 314: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-1

10. Blocos Secundários da Base de Dados _____________________

Capítulo 10

Blocos Secundários da Base de Dados

Page 315: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-2

10. Blocos Secundários da Base de Dados _______________________

Objetivos do Capítulo

Este capítulo continua a introdução de tags da base de dados do iFIX. Será visto um novo tipo detag, o tag secundário.

O capítulo está organizado nos seguintes tópicos:

• Tags de Cálculo

• Tag de Tendência (Extended Trend)

• Tag de Evento

Este capítulo também inclui informações de como utilizar um gráfico na tela. O gráfico énormalmente usado com o tag “Extended Trend” (ETR).

Page 316: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-3

10.1. Revisão da Base de Dados ________________________________

A. Tipos de Blocos

• Blocos Primários

• Blocos Secundários

B. Nome do Bloco

C. Descrição

D. Bloco Anterior e Posterior

Page 317: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-4

10.2. Bloco de Cálculo _________________________________________

A. Notas:

• CA - Calculation

• Realiza cálculos matemáticos simples

• A precisão dos cálculos é de seis dígitos

- arredondamento ocorre na sétima casa decimal

B. Campo “Inputs”

• Especifica as entradas a serem usadas no campo “Output Calculation”

• A entrada A é o valor do bloco anterior da cadeia

- Entrada A não precisa ser usada necessariamente no campo de cálculo

• Entradas podem ser constantes ou nome de outros blocos

C. Campo “Output Calculation”

• Equação que pode ter até oito termos

• Utiliza as letras de A – H, as quais correspondem aos campos de entrada

• Constantes não podem ser usadas no campo “Output Calculation”

- liste as constantes em um dos oito campos de entrada

D. Campo “Next”

• O resultado do cálculo é passado para o bloco especificado neste campo

E. Campo “Enable Alarming”

• Se habilitar esta opção, um alarme é gerado se o resultado do cálculo se encontrarfora da faixa EGU definida no bloco

Page 318: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-5

10.2. Bloco de Cálculo _______________________________________

Figura 10-1: Bloco de Cálculo (guia Basic)

Page 319: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-6

10.2. Bloco de Cálculo________________________________________

Sintaxe Operação Prioridade

( ) Parênteses 1

ABS Valor absoluto 2

SQRT Raiz quadrada 2

EXP Exponencial 2

LOG Logaritmo natural 2

LOG10 Logaritmo na base 10 2

INT Trunca para inteiro 2

- Inversão de Sinal

(exemplo, -A)

2

^ Exponencial 3

* Multiplicação 4

/ Divisão 4

+ Adição 5

- Subtração

(exemplo, A-B)

5

< Menor que 6

> Maior que 6

Figura 10-2: Equações do Bloco de Cálculo

Page 320: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-7

10.3. Bloco de Evento _________________________________________

A. Notas:

• Bloco que verifica o valor ou a condição de alarme do bloco anterior

• Usat a lógica IF-THEN-ELSE

• Baseando-se no resultado da condição, ele pode:

- abrir ou fechar um ponto digital

- colocar ou tirar um bloco de varredura

B. Condição IF

• Determina a condição para a execução da expressão THEN ou ELSE

• O comando é mantido até que esta condição seja alterada

• Expressões válidas possuem o seguinte formato:

(valor ou alarme) operador (constante ou bloco)

• Exemplos:

VALUE >= AA1

ALARM > HI

• A Figura 10-4 contém uma lista com as constantes de alarme

C. Instrução THEN/ELSE

• THEN: é executado se a condição for verdadeira

• ELSE: é executado se a condição for falsa

• Os comandos válidos (RUN, STOP, OPEN, CLOSE) devem utilizar o formato:

Comando Nome_do_Bloco

• Exemplos:

RUN AI1

CLOSE DO1

D. Campo “Next”

• O bloco EV é um bloco de passagem

• O valor atual do bloco anterior é passado para o próximo bloco

Page 321: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-8

10.3. Bloco de Evento ________________________________________

Figura 10-3: Bloco de Evento (guia Basic)

Page 322: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-9

10.3. Bloco de Evento________________________________________

Severidade Tipo de Alarme Descrição

Maior COMM(Communication)

Erro de Comunicação

COS(Change Of State)

Mudança do estado de alarme (apenas blocosdigitais)

CFN(Change From Normal)

Mudança do estado normal (apenas blocosdigitais)

ERROR Erro gerado por bloco de dados estatístico

HIHI O bloco está no estado de alarme HIHI

LOLO O bloco está no estado de alarme LOLO

RATE(Rate Of Change)

Valor excedeu a configuração do campo“rate-of-change” desde o último período devarredura

HI O bloco está no estado de alarme HI

LO O bloco está no estado de alarme LO

DEV(Deviation)

Desvio do set point

Menor OK O bloco está no estado normal

Figura 10-4: Tipos de Alarme e Severidade Relativa

Page 323: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-10

10.4. Bloco “Extended Trend”___________________________________

A. Notas:

• ETR - Extended Trend

• Armazena até 600 valores de dados para serem usados em um gráfico

• A velocidade da varredura do bloco é baseada no bloco anterior da cadeia

B. Campo “Clear Buffer on Startup”

• Se esta opção estiver habilitada, os valores serão limpos quando a cadeia voltar parao modo de varredura

• Se esta opção estiver desabilitada, os valores serão mantidos quando o bloco sair devarredura

C. Campo “Input Tag”

• Habilita o bloco ETR a utilizar dados de qualquer bloco da PDB

- na maioria das vezes, este campo é deixado em branco

- quando este campo estiver vazio, o ETR usa os dados do bloco anterior

• Também usado se os blocos ETR estiverem sendo encadeados

- entre com o campo F_INP do bloco ETR anterior

- Exemplo: entre com ETR1.F_INP no campo “Input Tag” do bloco ETR2

- ver Figura 10-6

D. Campo “Average Compress”

• Número de amostras a serem coletadas para o cálculo de uma média

• Os valores médios serão armazenados no buffer

E. Gráfico

• Um gráfico na tela mostra os valores armazenados deste bloco

• Utilize o campo T_DATA em um link de dados históricos

F. Campo “Next Block”

• O bloco ETR é um bloco apenas de passagem

• O valor atual do bloco anterior é passado para o bloco especificado neste campo

Page 324: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-11

10.4. Bloco “Extended Trend” _________________________________

Figura 10-5: Bloco “Extended Trend”

AI1 ETR1 ETR2

Figura 10-6: Blocos ETR Encadeados

Page 325: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-12

10.5. Gráfico _________________________________________________

A. Notas

• Usado para mostrar dados em tempo real e históricos na tela

• A partir do menu “Insert”, selecione a opção “Chart” para adicionar um gráfico natela

- ver Figura 10-7

• Dê um duplo clique no gráfico para definir suas propriedades

B. Dados em Tempo-Real

• Para mostrar dados em tempo real, use uma fonte de dados OPC, seja ela a base dedados do iFIX ou outro servidor OPC

- os dados são configurados na seção “Pen List” da guia “Chart”

◊ ver Figura 10-9

- use o formato DataServer.NODE.TAG.FIELD

- selecione o botão browse para mostrar o “Expression Builder”

• Uma vez definida a fonte de dados em tempo real, a pena é automaticamentedesignada para o modo em tempo real

- Dados históricos serão discutidos mais tarde neste curso

Page 326: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-13

10.5. Gráfico________________________________________________

Figura 10-7: Gráfico

Page 327: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-14

10.5. Gráfico ________________________________________________

C. Propriedades Gerais do Gráfico

• Campo “Name”

- Nome do gráfico que pode ser usado na programação VBA

• Campo “Scroll Direction”

- Direção de rolagem do gráfico. Esquerda para direita (left to right) permite terdados em tempo real seguir uma curva ideal ou histórica

• Campo “Zoom”

- Horizontal

- Vertical

- Horizontal e vertical (both)

• Campo “Refresh Rate”

- Taxa de atualização do gráfico, ou seja, quantas vezes o gráfico seráredesenhado

Page 328: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-15

10.5. Gráfico________________________________________________

Figura 10-8: Configuração do Gráfico

Page 329: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-16

10.5. Gráfico ________________________________________________

D. Configurando o Gráfico

• Para definir como os dados das penas configuradas serão apresentados, defina aspropriedades da guia “Chart”

• A caixa de diálogo de configuração do gráfico permite configurar diferentespropriedades, incluindo:

- Campo “Style”

◊ define o estilo de linha, sua cor e o estilo do marcador

◊ ver Figura 10-9

- Guia “Time”

◊ especifique um período de tempo global para todas as penas(habilitando a opção “Apply to All Pens”) ou selecione um período detempo diferente para cada pena

- Configuração dos Eixos X e Y

◊ personalize os eixos X e Y no gráfico

- Campo “Grid”

◊ controla a grade dos eixos horizontal e vertical

Page 330: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-17

10.5. Gráfico________________________________________________

Figura 10-9: Configuração da Pena

Page 331: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-18

10.6. _____________________________________________ Exercício 10

Blocos Secundários

Exercício 10

Page 332: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-19

__________________________________________________Exercício 10

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Adicionar um bloco de cálculo na base de dados do processo2. Adicionar um bloco de evento na base de dados do processo3. Adicionar um bloco de tendência estendida na base de dados do processo4. Adicionar um gráfico à tela

Informações sobre o exercício:

Neste exercício, iremos continuar com o desenvolvimento da aplicação de produção de cervejamodificando telas já existentes e adicionando novos blocos na base de dados. No filtro“Whirlpool”, iremos adicionar um bloco de evento tal que toda vez que o filtro estiverhabilitado, a válvula de saída será fechada. Iremos então adicionar um bloco de cálculo paradeterminar o nível do filtro.

Iremos criar também um bloco ETR para mostrar em um gráfico histórico a temperatura dotanque de fermentação. Quando terminar, o tanque de fermentação deverá se parecer com:

Quando terminar este exercício, vá para a seção seguinte e responda as questões.

Page 333: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-20

_________________________________________________ Exercício 10

A. Adiciona um bloco de Evento.

1. A partir do menu File, selecione Open.

A caixa de diálogo de abertura de arquivo aparece.

2. Selecione a seguinte tela e então Open:

Filter

3. A partir da barra de ferramenta do WorkSpace, selecione o botão Modify DatabaseBlock.

A caixa de diálogo para modificar um bloco aparece.

4. Entre com o seguinte nome no campo Database Block:

FILTER_STAT

5. Selecione Modify

A seguinte caixa de diálogo aparece.

6. No campo Next, entre com:

EV_FILTER

7. Selecione o botão seta ao lado deste campo.

Page 334: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-21

__________________________________________________Exercício 10

A. Adiciona um Bloco de Evento (continuação).

8. Uma mensagem perguntando se você quer salvar as alterações e adicionar o blocoaparece. Selecione Yes.A caixa de diálogo para selecionar um tipo de bloco aparece.

9. Selecione EV – Event Action da lista de tipos de blocos disponíveis e selecione OK.A seguinte caixa de diálogo aparece:

10. Configure as seguintes opções com os valores da direta:Description: Filter Outlet Valve ControlEvent 1 If: VALUE = 1Event 1 Then: CLOSE FILTER_SWITCHEvent 1 Else: OPEN FILTER_SWITCH

Nota: Isto diz que se o tanque estiver filtrando (Value = 1), então feche a válvula desaída (Close Filter_switch). Caso contrário, abra a válvula de saída.

11. Quando terminado, selecione o botão Add.12. Selecione Yes para colocar o bloco para varredura.

Page 335: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-22

_________________________________________________ Exercício 10

B. Adiciona um Bloco de Cálculo.

1. A partir da barra de ferramenta do WorkSpace, selecione o botão Modify DatabaseBlock.

A caixa de diálogo para modificar um bloco aparece.

2. Entre com o seguinte nome no campo Database Block:

FILTER_SWITCH

3. Selecione Modify

A seguinte caixa de diálogo aparece.

4. No campo Next, entre com:

CA_FILTER_LEVEL

5. Selecione o botão com uma seta para cima, ao lado deste campo.

6. Uma mensagem para salvar as alterações e adicionar o bloco aparece. Selecione Yes.

A caixa de diálogo para selecionar um bloco aparece.

Page 336: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-23

__________________________________________________Exercício 10

B. Adiciona um Bloco de Cálculo (continuação).

7. Selecione CA – Calculation a partir da lista de tipos de blocos disponíveis e selecioneOK.

A seguinte caixa de diálogo aparece:

8. Configure as seguintes opções com os valores da direta:Description: Calculate Filter Tank LevelInput B: 5.00Input C: CA_FILTER_LEVEL.F_CVInput D: BREW_SWITCH.F_CVOutput Calculation: C+(B*A)-(B*D)

Nota: Este tag adiciona 5.00 ao próprio valor (o qual é o C) quando o interruptor dofiltro estiver fechado e subtrai 5.00 quando o interruptor do Brew estiver fechado

9. Quando terminado, selecione o botão Add.Uma mensagem aparece perguntando se deseja colocar o bloco para varredura.

10. Selecione Yes.

Page 337: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-24

_________________________________________________ Exercício 10

C. Adiciona um Bloco “Extended Trend”.

1. A partir da barra de ferramenta do WorkSpace, selecione o botão Modify DatabaseBlock.

A caixa de diálogo para modificar um bloco aparece.

2. Entre com o seguinte nome no campo Database Block:

FERM_TEMP

3. Selecione Modify

A seguinte caixa de diálogo aparece:

4. No campo Next, entre com:

ETR_FERM_TEMP

5. Selecione o botão seta ao lado deste campo.

6. Uma mensagem para salvar as alterações e adicionar o bloco aparece. Selecione Yes.

A caixa de diálogo para selecionar um bloco aparece.

Page 338: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-25

__________________________________________________Exercício 10

C. Adiciona um Bloco “Extended Trend” (continuação).

7. Selecione ETR – Extended Trend a partir da lista de tipos de blocos disponíveis eselecione OK.

A seguinte caixa de diálogo aparece:

8. Configure as seguintes opções com os valores da direta:

Description: Trend Fermentation TemperatureLow Limit: -150.00High Limit: 700.00Units: DEGREES

9. Quando terminado, selecione o botão Add.Uma mensagem aparece perguntando se deseja colocar o bloco para varredura.

10. Selecione Yes.

Page 339: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-26

_________________________________________________ Exercício 10

D. Adiciona Links de Dados.Cria links para mostrar o estado do tanque.

1. Adicione links e cabeçalho para a tela do filtro. Use a figura e a tabela abaixo comoreferência.

Link Source Data Entry

Link 1 BREW_SWITCH.A_CV In Place

Link 2 CA_FILTER_LEVEL.F_CV None

2. Salve e feche a tela quando terminar.

Link 1

Link 2

Page 340: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-27

__________________________________________________Exercício 10

E. Adiciona um Gráfico.Cria um gráfico para mostrar dados do nível do tanque de fermentação.

1. Abra a tela FermTank.

2. A partir do menu Insert, selecione Chart.

O cursor altera para uma cruz.

3. Desenhe um retângulo para adicionar o gráfico usando a figura abaixo como guia.

A tela deve agora se parecer com:

4. Dê um duplo clique no novo gráfico.

A caixa de diálogo de configuração do gráfico aparece.

Page 341: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-28

_________________________________________________ Exercício 10

E. Adiciona um Gráfico (continuação).

5. Adicione uma pena configurando as seguintes opções com os valores da direita:

Pen: ETR_FERM_TEMP.T_DATAFetch Limits: HabilitadoPenLine Color: BrightRedTime Duration: 00:03:00X Axis Title: TempoY Axis Title: Grau FLegend Description: Desabilitado

6. Adicione uma outra pena configurando as seguintes opções com os valores da direita:

Pen: FERM_LEVEL.F_CVFetch Limits: HabilitadoPenLine Color: BrightBlueTime Duration: 00:05:00X Axis Title: TempoY Axis Title: GalõesLegend Description: Desabilitado

7. Quando terminar, selecione o botão OK.

8. Salve a tela.

9. Abra a tela do Filter e a FermTank no modo de execução e explore as mudanças feitasneste exercício.

Fim do Exercício

Page 342: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 10-29

10.7. Questões de Revisão_____________________________________

1. Qual é diferença entre um bloco primário e um bloco secundário?

2. O que acontece se um bloco CA realizar uma divisão por zero?

3. Para que seve a unidade de engenharia do bloco CA?

4. Exemplifique como um bloco EV pode ser usado em uma aplicação.

5. Para que serve o uso do campo T_DATA com o bloco ETR no gráfico?

Page 343: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 10-30

10.7 Questões de Revisão _____________________________________

página em branco

Page 344: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-1

11. Scheduler ______________________________________________

Capítulo 11

Scheduler

Page 345: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-2

11. Scheduler ________________________________________________

Objetivos do Capítulo

Este capítulo aborda as funcionalidades do aplicativo Scheduler do iFIX, capaz de agendarcomandos para serem executados de tempo em tempo ou de acordo com um evento. Além disso,também faz uma comparação do aplicativo Scheduler com outras funcionalidades similares no iFIX.

O capítulo está organizado nos seguintes tópicos:

• Características do Scheduler

• Entradas Baseadas em Tempo

• Entradas Baseadas em Evento

• Executando Schedules

Page 346: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-3

11. Características do Scheduler _______________________________

A. Notas

• O Scheduler é usado para disparar ações

• Estas ações (ou operações) são programas em VBA

• Configure operações para serem disparadas quando:

- Baseada em um tempo específico (Time Based)

- Baseada em valores ou expressões (Event Based)

B. Funcionalidades do Scheduler

• O Scheduler faz parte do WorkSpace

- usa a árvore do sistema para mostrar os schedules existentes

- a partir do menu “File”, selecione a opção “New” para criar novos schedules

• Schedules são objetos com propriedades expostas

- similar às propriedades expostas das telas

• Existem assistentes para as operações mais usadas, como por exemplo:

- executar um relatório

- abrir uma tela

- escrever um valor em um bloco da base de dados

• Pode-se adicionar várias operações em um mesmo schedule e pode-se ter váriosarquivos de schedule sendo executados ao mesmo tempo

C. Modos de Execução do Scheduler

• Execução em “Foreground”

- é executado quando o WorkSpace está no modo de execução

• Execução em “Background”

- é executado independente do modo do WorkSpace (modo de configuração oude execução)

Page 347: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-4

11.1. Entrada Baseada em Tempo _______________________________

A. Notas

• Uma operação é executada na hora inicial

• O tempo pode ser como “one shot” ou recorrente

B. Tipo de Disparo

• “One Shot”

- executa uma vez na hora especificada pelo usuário

• “Continuous”

- executa repetidamente no intervalo definido pelo usuário

• “Daily”

- executa na hora inicial nos dias da semana escolhidos

- habilite a opção “Enable End Time/Interval” para disparar entradascontinuamente

• “Monthly”

- executa na hora inicial nos dias do mês selecionados

- opção de executar no final do mês (end of month)

- habilite a opção “Enable End Time/Interval” para disparar entradascontinuamente

Page 348: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-5

11.1. Entrada Baseada em Tempo______________________________

Figura 11-1: Scheduler

Page 349: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-6

11.1. Entrada Baseada em Tempo ______________________________

C. Informação da Ação

• Escolha uma operação da lista

- As operações mais comuns são:

◊ reconhecer alarmes

◊ abrir tela

◊ alterar valor de um bloco digital

◊ escrever em um bloco da base de dados

◊ executar um programa personalizado

• Selecione o botão “Run Expert”

- entre com as informações apropriadas

ou

- selecione o botão “VB Editor” para escrever operações personalizadas

Page 350: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-7

11.1. Entrada Baseada em Tempo______________________________

Figura 11-2: Entrada Baseada em Tempo

Page 351: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-8

11.2. Entrada Baseada em Evento _______________________________

A. Notas

• Uma operação é executada de acordo com uma expressão

• Pode ser baseada, por exemplo:

- na mudança de um valor

- em uma expressão (“True/False”)

- no acionamento de uma tecla

B. Tipos de Evento

• “On Change”: quando houver mudança do valor

• “On True”: quando for verdadeiro

• “On False”: quando for falso

• “While True”: enquanto verdadeiro

- configure o intervalo para disparar a entrada continuamente

• “While False”: enquanto falso

- configure o intervalo para disparar a entrada continuamente

Page 352: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-9

11.2. Entrada Baseada em Evento _____________________________

Figura 11-3: Entrada Baseada em Evento

Page 353: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-10

11.3. Configuração ____________________________________________

A. Propriedades do Scheduler (a partir do menu “Edit” no WorkSpace)

• Configuração do Modo de Execução:

- “Background” ou “Foreground”

• Configuração da Janela

- Altura (height) e largura (width)

- Barra de título (title bar), menu do sistema (system menu), redimensionável(resizable), sempre acima das outras janelas (always on top)

• Taxa de Atualização (refresh rate)

• Tarefas em “Background”

B. Preferências do Usuário

• Configurando para Execução do Schedule em “Background”

- O Schedule será executado como um serviço

- Selecione a guia “Background Startup” da caixa de diálogo “UserPreferences”

◊ ver Figura 11-5

- Adicione o Schedule à janela de Startup

- Inicie o servidor de “background” do iFIX (FixBackgroundServer.exe)

• Alterando um Schedule

- Abra o schedule

- Faça as alterações

- Uma mensagem aparece pedindo que reinicie o Schedule

Page 354: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-11

11.3. Configuração __________________________________________

Figura 11-4: Propriedades do Scheduler

Figura 11-5: Preferências do Usuário (guia Background StartUp)

Page 355: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-12

11.4. Executando Schedules____________________________________

A. Operando um Schedule no Modo de Execução

• Coluna “Status”

- “Active” (ativo) ou “Stopped” (parado)

• Coluna “Number of Times Fired”

- número total de vezes que a entrada foi executada

• Coluna “Last Fired At”

- hora que a entrada foi executada pela última vez

• Coluna “Next Time to Fire”

- próxima hora que a entrada baseada em tempo será executada

• Coluna “Start/Stop”

- mostra o estado atual de cada entrada

- inicia ou pára a execução de cada entrada

• Coluna “Reset”

- limpa as estatísticas da linha específica do schedule

• Coluna “Fire Now”

- executa o programa de operação para uma entrada

- uma boa maneira de se testar os schedules

Page 356: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-13

11.4. Executando Schedules __________________________________

Figura 11-6: Scheduler no Modo de Execução

Page 357: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-14

11.4. Executando Schedules___________________________________

B. Executando Schedules como um Serviço

• Siga os seguintes passos para executar o “iFIX Background Server” como um serviçodo NT:

1. No SCU, selecione “Local Startup” do menu “Configure”.

2. Selecione a opção “Continue Running After Logoff” e selecione OK.

3. Selecione o botão “Task Configuration” na barra de ferramentas.

4. Digite o caminho e o nome do arquivo da aplicação FixBackgroundServer nocampo “Filename”. O caminho padrão é:

C:\DYNAMICS\FIXBACKGROUNDSERVER.EXE

5. Entre com o seguinte parâmetro no campo “Command Line”:

\SERVICE

6. Selecione o botão de opção “Background”.

7. Selecione “Add” para adicionar FixBackgroundServer à lista de tarefasconfiguradas (“Configured Tasks”)

◊ Figura 11-7

8. Selecione OK.

• Observação:

- Se o parâmetro \SERVICE não for incluído na linha de comando, o serviçoFixBackgroundServer será iniciado junto com o iFIX

- Da mesma forma, o serviço FixBackgroundServer será finalizado junto com oiFIX

- Incluindo o parâmetro \SERVICE na linha de comando, o serviçoFixBackgroundServer será executado como um serviço do Windows NT

Page 358: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-15

11.4. Executando Schedules __________________________________

Figura 11-7: Configurando o “iFIX Background Server” para ser Executado como Serviço

Page 359: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-16

11.5. _____________________________________________ Exercício 11

Scheduler

Exercício 11

Page 360: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-17

__________________________________________________Exercício 11

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Criar um Schedule baseado em tempo usando o Scheduler2. Criar um Schedule baseado em evento usando o Scheduler3. Monitorar o aplicativo Scheduler

Informações sobre o exercício:

Neste exercício, iremos continuar com o desenvolvimento da aplicação de produção de cervejaatravés da criação de Schedules. Isto inclui entradas que iniciam e páram automaticamente oagitador do tanque “Mash Mixer” de acordo com o seu nível, além de criar ajustes periódicos deset points.

Quando terminar este exercício, vá para a próxima seção e responda as questões.

Page 361: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-18

_________________________________________________ Exercício 11

A. Cria um schedule.Cria um novo schedule no WorkSpace.

1. A partir do menu File, selecione New - Schedule.

Um schedule sem título aparece e deve-se parecer com:

2. A partir do menu File, selecione Save As.

A caixa de diálogo para salvar o documento aparece.

3. Entre com o seguinte nome no campo File Name:

BeerSchedules

4. Quando terminar, selecione o botão Save.

O Scheduler é mudado para refletir o novo nome da figura.

Page 362: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-19

__________________________________________________Exercício 11

B. Adiciona uma Entrada Baseada em EventoCria uma entrada baseada em evento no Schedule.

1. Selecione a guia Event Based Entries no Scheduler.

As entradas baseadas em evento vêm para frente.

2. Dê um duplo clique na primeira linha em branco.

A seguinte caixa de diálogo aparece:

3. Configure as seguintes opções com os valores da direta:

Name: LigaAgitadorMashMixerDescription: Liga o agitador do misturador quando o nível > 75%Data Source: MASH_LEVEL.F_CV > MASH_LEVEL.F_EHI * .75Event Type: On TrueOperation: Close Digital Tag

Fix Database Tag: MASH_MIXER.F_CV

Obs.: Se o tanque estiver 75% cheio, então o agitador do tanque será ligado.

4. Selecione OK quando terminar.

A entrada é adicionada no Schedule.

Page 363: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-20

_________________________________________________ Exercício 11

C. Adiciona Novas Entradas Baseadas em Evento

1. Crie uma nova entrada baseada em evento configurando as seguintes opções com osvalores da direta:

Name: DesligaAgitadorMashMixerDescription: Desliga o agitador quando o nível for < 25%Data Source: MASH_LEVEL.F_CV < MASH_LEVEL.F_EHI * .25Event Type: On TrueOperation: Open Digital Tag

Fix Database Tag: MASH_MIXER.F_CV

2. Crie uma nova entrada baseada em evento configurando as seguintes opções com osvalores da direta:

Name: TempAltaFermDescription: Temperatura alta no tanque de fermentaçãoData Source: FERM_TEMP.F_CV > FERM_TEMP.F_HIEvent Type: On TrueOperation: Enable Alarm

Fix Database Tag: FERM_TEMP.F_CV

Após terminar, a tela do Schedule deve-se parecer com:

Page 364: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-21

__________________________________________________Exercício 11

D. Adiciona uma Entrada Baseada em TempoCria uma entrada baseada em tempo no Schedule.

1. Selecione a guia Time Based Entries no Scheduler.As entradas baseadas em tempo aparecem na frente.

2. Dê um duplo clique na primeira linha em branco.A seguinte caixa de diálogo aparece:

3. Configure as seguintes opções com os valores da direta:Name: EncheTanqueFermDescription: Enche o tanque de fermentação em 10% a cada 5 min.Trigger: ContinuousStart Time: Configure para 15 minutos a partir de agoraInterval: 00:05:00Operation: Ramp ValueRamp Attributes: Ramp by PercentageRamp Value: 10FIX Database Tag: FERM_LEVEL_SP.F_CV

Obs.: Isto significa que a cada 5 minutos o nível do tanque é incrementado de 10%.4. Selecione OK quando terminar.

Page 365: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-22

_________________________________________________ Exercício 11

E. Adiciona Entradas Adicionais Baseadas em Tempo

1. Crie uma nova entrada baseada em tempo configurando as seguintes opções com osvalores mostrados à direta:

Name: TempMashDescription: Configura a temp. do Mash Mixer para 50 ºF a cada 5 min.Trigger: DailyStart Time: 09:00:00 amEnable End Time: HabilitadoEnd Time: 05:00:00 pmInterval: 00:05:00Operation: Write ValueFIX Database Tag: MASH_TEMP_SP.F_CVValue: 50

Após terminar, a tela do Schedule deve-se parecer com:

Page 366: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 11-23

__________________________________________________Exercício 11

F. Salva e Executa

1. Salve o novo schedule.

2. Alterne para o modo de execução e explore as mudanças que ocorrem com a criaçãodestas 5 novas entradas no Scheduler.

Descreva as entradas e como cada uma age na aplicação de produção de cerveja.

Fim do Exercício

Page 367: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 11-24

11.6. Questões de Revisão _____________________________________

1. Explique a diferença de executar um scheduler em “Foreground” ou em “Background”.

2. Como um schedule baseado em tempo pode ser configurado para executar ao final do mês?

3. Explique o que significa executar um schedule como um serviço.

4. Explique a finalidade da coluna “Fire Now” no Scheduler.

5. Explique a diferença entre usar um bloco de evento e um schedule baseado em evento.

Page 368: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-1

12. Base de Dados do Processo_______________________________

Capítulo 12

Base de Dados do Processo

Page 369: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-2

12. Base de Dados do Processo ________________________________

Objetivos do Capítulo

Este capítulo continua trabalhando com a base de dados do processo (PDB – Process DataBase),apresentando agora a ferramenta para criar e manipular a base de dados do processo, o DatabaseManager.

O capítulo está organizado nos seguintes tópicos:

• Revisão dos Tipos de Tags

• Database Manager

• Tag de Programação

Page 370: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-3

12.1. Tags da Base de Dados___________________________________

A. Revisão

• Tags (ou blocos) são unidades individuais de instruções

• Os tags podem receber, verificar, manipular e enviar valores para o processo

• Existem dois tipos de tags:

- Tags primários

- Tags secundários

• Tags são normalmente combinados em cadeia para realizar funções adicionais

B. Tags Primários

• Normalmente associados a pontos I/O do hardware

• A maioria possui tempo de varredura

C. Tags Secundários

• Vários enviam ou recebem entradas de um tag anterior (antes dele na cadeia)

• Realizam uma função específica com a entrada

• Podem realizar um cálculo ou armazenar entradas

Page 371: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-4

12.1. Tags da Base de Dados __________________________________

A. Tipos de Tags

• O iFIX possui mais de 30 tipos de tags com funções específicas e são classificados daseguinte forma:

Tags Padrões

AA-Analog Alarm AI-Analog Input AO-Analog Output AR-Analog Register

BL-Boolean CA-Calculation DA-Digital Alarm DI-Digital Input

DO-Digital Output DR-Digital Register EV-Event Action FN-Fanout

SS-Signal Select TX-Text TM-Timer TT-Totalizer

TR-Trend ETR-Extended Trend MDI-Multistate Digital Input

Tags Batelada Tags SQL

DC-Device Control SQT-SQL Trigger

PG-Program SQD-SQL Data

Tags de Controle Tags de ControleDT-Dead Time Estatístico do Processo

LL-Lead Lag HS-Histogram

PID PA-Pareto

BB-On-Off Control SC-Statistical Control

RM-Ramp SD-Statistical Data

RB-Ratio / Bias

Figura 12-1: Classificação dos Tags Disponíveis da Base de Dados do Processo

Page 372: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-5

12.1. Tags da Base de Dados _________________________________

Analog Alarm (AA) – recebe/envia dados analógicos de um endereço de entrada/saída da DIT acada vez que o tag é varrido pelo SAC e oferece várias configurações de alarmes.

Analog Input (AI) – recebe/envia dados analógicos de um endereço de entrada/saída da DIT acada vez que o tag é varrido pelo SAC.

Analog Output (AO) – envia sinal analógico para um endereço de entrada/saída da DIT cadavez que o tag recebe um valor.

Analog Register (AR) – recebe/envia dados de endereço de entrada/saída da DIT usandoquantidade mínima de memória.

Boolean (BL) – realiza cálculos de lógica booleana.

Calculation (CA) – realiza cálculos matemáticos até 8 valores.

Dead Time (DT) – atrasa a transferência de um valor de entrada para o próximo tag na cadeia de1 - 255 segundos.

Device Control (DC) – coordena a abertura de dispositivos digitais no chão de fábrica baseadonas condições definidas pelo usuário.

Digital Alarm (DA) – recebe/envia dados digitais (0 ou 1) de um endereço de entrada/saída daDIT a cada vez que o tag é varrido pelo SAC e oferece várias configurações de alarmes.

Digital Input (DI) – recebe/envia dados digitais (0 ou 1) de um endereço de entrada/saída daDIT a cada vez que o tag é varrido pelo SAC.

Digital Register (DR) – recebe/envia dados digitais de um endereço de entrada/saída da DITusando uma quantidade mínima de memória.

Digital Output (DO) – envia sinal digital para um endereço de entrada/saída da DIT cada vezque o tag recebe um valor.

Page 373: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-6

12.1. Tags da Base de Dados __________________________________

Event Action (EV) – verifica o valor ou a condição de alarme do tag anterior usando a lógicaIf-Then-Else e pode ser usado para abrir ou fechar um ponto digital ou colocar ou retirar umtag de varredura (on/off scan).

Extended Trend (ETR) – permite visualizar até 600 valores em um gráfico.

Fanout (FN) – passa o valor que recebe para até 4 outros tags.

Histogram (HS) – grava quantas vezes o valor ocorreu e pode então ser mostrado em umgráfico de histograma em uma tela.

Lead Lag (LL) – permite simulação dinâmica usando as vantagens da compensação Lead / Lag.

Multistate Digital Input (MDI) – monitora o estado de um, dois ou três entradas digitais eproduz um valor (0-7) de acordo com a combinação dos valores digitais recebidos.

On-Off Control (BB) – envia até duas saídas digitais baseado em um valor de entrada analógicaou em uma entrada feita pelo operador.

Pareto (PA) – aceita até oito entradas, calcula porcentagens para elas e então são mostradoscomo gráfico de barra.

PID (PID) – mantém equilíbrio em uma malha fechada mudando a variável controlada deacordo com o desvio de um valor set point pré-definido pelo usuário.

Program (PG) – executa pequenos programas para aumentar o grau de automação do processoou monitorar um controle batelada.

Ramp (RM) – executa uma função rampa com até três níveis diferentes.

Ratio / Bias (RB) – adiciona uma constante (bias) e/ou multiplica por uma constante (ratio)depois de subtrair o offset de um sinal.

Page 374: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-7

12.1. Tags da Base de Dados _________________________________

Signal Select (SS) – realiza a amostragem de até seis sinais, manipulando as entradas de acordocom uma seleção pré-definida pelo usuário e envia o resultado para o tag seguinte.

SQL Data (SQD) – identifica os dados da base de dados do processo do iFIX que serãoenviados ou recebidos de um banco de dados relacional.

SQL Trigger (SQT) – define como o iFIX interage com um banco de dados relacional,definindo o disparo da coleta ou da inserção de dados do processo no banco de dadosrelacional.

Statistical Data (SD) – recebe valores de outros tags e efetua cálculos estatísticos.

Statistical Control (SC) – oferece um ajuste na variável de processo, baseado no cálculo damédia do offset e na taxa de desvio da média.

Text (TX) – lê ou escreve valores do tipo texto de um dispositivo.

Timer (TM) – contador de tempo a partir do incremento ou decréscimo de seu valor.

Totalizer (TT) – armazena a soma dos valores transmitidos de tags anteriores.

Trend (TR) – permite visualizar até 80 valores em um gráfico.

Page 375: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-8

12.2. Gerenciador da Base de Dados_____________________________

A. Introdução

• O programa Database Manager é o gerenciador da base de dados, usado para criar eeditar tags na base de dados do processo.

• A base de dados do processo aparece no formato de uma planilha:

- cada linha corresponde a um tag

- cada coluna corresponde a um campo de informação do tag

• O Database Manager permite abrir a base de dados de qualquer estação SCADAconfigurada na lista de estações remotas no SCU.

B. Características do Database Manager

• Importa e exporta arquivos em formato CSV (Comma Separated Value) ou GDB(formato proprietário do FIX).

• Possui um assistente (wizard) para gerar vários tags automaticamente.

• Pode ter sua barra de menu personalizada pelo usuário.

• Possui opção de atualizar os valores da planilha automaticamente.

• Pode duplicar ou apagar várias linhas em uma única operação.

• É possível congelar as colunas para ficarem sempre visíveis na tela.

- A coluna Tag Name já fica congelada na tela por padrão (fica sempre na áreade visão da tela).

Page 376: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-9

12.2. Gerenciador da Base de Dados ___________________________

Figura 12-2: Programa Database Manager para Gerenciar a Base de Dados

Page 377: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-10

12.2. Gerenciador da Base de Dados____________________________

Database BlocksNew AddOpen ModifyClose DeleteReload ShowSave DuplicateSave As GenerateVerifySummaryPrint DriversPrint SetupImportExport ToolsExit Customize

OptionsSave Settings

EditCutCopy HelpPaste Help TopicsFind Electronic BooksReplace GlossaryGo To Using Help

About iFIX Database Manager

ViewFreeze ColumnsRe-sortRefreshPausePropertiesToolbarStatus Bar

Figura 12-3: Menu de Comandos do Database Manager

Page 378: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-11

12.2.1. Assistente para Gerar Tags _____________________________

A. Introdução

• O Database Manager possui um assistente para gerar automaticamente tags,chamado Generate Wizard. Este assistente possui três passos de configuração:

ü Passo 1: Selecione a primeira opção para gerar tags baseando-se em um tag jáexistente na base de dados ou então selecione somente o tipo dos tags a seremgerados (Figura 12-5: Assistente para Gerar Tags na Base de Dados (Passo 2)

ü Figura 12-).

ü Passo 2: Configure o nome dos tags que serão gerados, usando prefixos, valores aserem incrementados e sufixos (Figura 12-5).

ü Passo 3 (opcional): Adicione até 5 campos de configuração adicionais, comodescrição, endereçamento, etc (Figura 12-6).

Page 379: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-12

Figura 12-4: Assistente para Gerar Tags na Base de Dados (Passo 1)

Page 380: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-13

12.2.1. Assistente para Gerar Tags______________________________

Figura 12-5: Assistente para Gerar Tags na Base de Dados (Passo 2)

Figura 12-6: Assistente para Gerar Tags na Base de Dados (Passo 3)

Page 381: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-14

12.2.2. Propriedades ________________________________________

Figura 12-7: Propriedades do Gerenciador da Base de Dados (guia Column)

A. Guia Column

• Usada para adicionar ou remover colunas na planilha.

• Útil quando se quer mostrar apenas os valores atuais, o estado de varredura ou oendereço de cada tag.

Page 382: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-15

12.2.2. Propriedades _________________________________________

Figura 12-8: Propriedades do Gerenciador da Base de Dados (guia Sort)

B. Guia Sort

• Usada para definir a ordem de seleção dos tags do arquivo da base de dados.

• Salve e carregue novamente a ordem de seleção através dos botões Save e Load.

Page 383: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-16

12.2.2. Propriedades__________________________________________

C. Guia Query

• Usada para buscar informações específicas na base de dados.

• Crie ou modifique a consulta usando operadores relacionados com o nome dascolunas, operadores booleanos ou caracteres do tipo wildcard.

• Exemplo:

{TAGNAME} = "A*" AND {I/O ADDR} = "0"

D. Guia Color

• Usada para mudar a cor dos textos e células da planilha.

• Pode-se configurar os seguintes itens:

- Border: cor da borda.

- Border Text: cor do texto da borda.

- Cell Background: cor do fundo da célula.

- Grid: cor da grade.

- Normal Cell Text: cor do texto da célula.

E. Guia Font

• Usada para mudar a fonte do texto utilizado na planilha (tipo de fonte, tamanho, etc).

Page 384: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-17

12.2.2. Propriedades _________________________________________

Figura 12-9: Propriedades do Gerenciador da Base de Dados (guia Query)

Page 385: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-18

12.2.3. Opções _____________________________________________

A. Opções Gerais

• Save Setting on Exit: salva as configurações ao sair do Database Manager.

• Save Database on Exit: salva a base de dados ao sair do Database Manager.

• Recently Used Node List: mostra no menu File a lista das estações acessadasrecentemente.

• Print in Background: imprime a base de dados como tarefa de segundo planopermitindo o usuário continuar a trabalhar com a base de dados enquanto estiverimprimindo.

B. Opções de Visualização

• Enable Spreadsheet Auto Refresh: habilita e configura a atualização automática dabase de dados.

• Row Number: mostra o número de linhas da planilha.

• Status Bar: mostra a barra de Status na planilha.

• Toolbar: mostra a barra de ferramentas.

C. Opções de Edição

• Automatically Put Blocks On Scan after Modify: os tags são automaticamentecolocados para varredura após serem editados.

• Configure Mouse Double Click: configura o modo de aparência dos tags ao seremselecionados com duplo clique do mouse.

- Modify Mode: modo de modificação.

◊ abre a caixa de configuração do tag para edição.

- Show Mode: modo de visualização.

◊ abre a caixa de configuração do tag somente para leitura.

Page 386: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-19

12.2.3. Opções ______________________________________________

Figura 12-10: Caixa de Diálogo de Opções do Database Manager

Page 387: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-20

12.2.4. Personalização _______________________________________

A. Barras de Ferramentas

• Adiciona ou remove botões da barra de ferramentas.

B. Ferramentas

• Adiciona executáveis no menu Tools (Figura 12-11).

Page 388: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-21

12.2.4. Personalização________________________________________

Figura 12-11: Personalização do Database Manager (guia Tools)

Page 389: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-22

12.2.5. Importando/Exportando a Base de Dados ________________

A. Introdução

• Para exportar a base de dados, selecione a opção Export do menu Database. Os tagsque estão sendo mostrados na planilha da base de dados são exportados para formatoCSV, GDB ou TXT.

• Estes arquivos podem ser abertos em um editor de texto ou um aplicativo tipo Excelpara complementar tarefas de configuração da base de dados, ou então importadosem um banco de dados relacional para uma análise posterior.

• Quando a base de dados é exportada e importada novamente, a base de dados deáreas de alarme (*.AAD) é atualizada.

B. Opções de Importação/Exportação

• Arquivo do tipo GDB: formato proprietário do FIX apropriado para importar base dedados já existentes do FIX32.

• Arquivo do tipo CSV: formato útil para edição dos tags em uma planilha como oExcel por exemplo.

• Arquivo do tipo TXT: arquivo delimitado por tabulações que pode ser aberto emqualquer editor de texto como o Notepad por exemplo.

Page 390: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-23

12.2.5. Importando/Exportando a Base de Dados _________________

Figura 12-12: Base de Dados Exportada em CSV e Visualizada no Excel.

Page 391: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-24

12.3. Tag de Programa _________________________________________

A. Introdução

• O tag de Programa (PG) é usado para executar pequenos programas dentro da base dedados do processo.

• O programa é executado sempre que é colocado em on scan.

B. Modo Automático versus Modo Manual

• O modo automático executa todos os comandos sem interrupção.

• O modo manual suspende execução até que seja retornado para o modo automático.Quando voltar para o modo automático, o tag PG continua a execução do ponto ondeparou.

C. SAC e Tag de Programa

• Geralmente executa todos os comandos em um intervalo de varredura (scan time).

• Após a varredura do PG, ele não é mais varrido a não ser quando:

- for colocado em on scan por outro tag;

- for colocado em on scan pelo operador;

- a base de dados do processo for recarregada;

- encontrar um comando de verificação ou espera;

- tiver um comando como o GOTO para fechar uma malha.

D. Dica de Programação

• O comando SETLIM é muito usado na primeira linha de um tag PG. Ele é usado paraestabelecer uma banda morta para comparações.

• Por padrão, a banda morta é igual a um (1), mas muitos usuários configuram a bandamorta igual a zero (0).

Page 392: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-25

12.3. Tag de Programa _______________________________________

Figura 12-13: Tag de Programa

Page 393: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-26

12.3. Tag de Programa________________________________________

Controle de Execução

NUL Linha nula.CALL Chama a execução um outro tag de programa.RUN Coloca um tag primário em on scan.STOP Coloca um tag primário em off scan.SETAUTO/SETMAN Configura um tag para modo automático ou manual.WAITSTAT Espera um tag alcançar um determinado estado.END Finaliza o programa.SETERROR/CLRERROR Gera e limpa um erro para o tag de programa.SETDEBUG/CLRDEBUG Executa passo a passo (em a cada scan do tag) permitindo

a depuração do programa.

Mudança de Parâmetro

OPEN Estabelece o valor atual de um tag digital para 0.CLOSE Estabelece o valor atual de um tag digital para 1.SETOUT Estabelece o valor atual de um tag.ADDOUT Adiciona a quantidade especificada ao valor atual de um

tag.SUBOUT Subtrai a quantidade especificada do valor atual de um

tag.SETSEL Configura o modo de seleção de um tag SS (Signal

Select).SETTARG Configura o campo setpoint de um tag PID ou o primeiro

estágio de um tag rampa.SETTARG2 Configura o segundo estágio de um tag rampa.SETTARG3 Configura o terceiro estágio de um tag rampa.SETTIME Configura o tempo de espera do primeiro estágio de um

tag rampa.SETTIME2 Configura o tempo de espera do segundo estágio de um

tag rampa.ADDTAR Aumenta o set point de um tag PID ou o valor de um tag

rampa.ADDTAR2 Aumenta o segundo estágio de um tag rampa.ADDTAR3 Aumenta o terceiro estágio de um tag rampa.SUBTAR Diminui o set point do PID ou valor da rampa.SUBTAR2 Diminui o segundo estágio de um tag rampa.SUBTAR3 Diminui o terceiro estágio de um tag rampa.

Page 394: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 12-27

12.3. Tag de Programa _______________________________________

Declarações de Espera

DELAY Pausa o programa pelo número especificado desegundos.

MAXWAIT Define o tempo máximo de espera.WAITFOR <expressão> Pausa o programa até que uma expressão se torne

verdadeira.

Declarações de Teste e Prosseguimento

SETLIM Define uma banda morta para expressões decomparação.

IFTIME GOTO Segue para próxima linha na hora especificada.GOTO Ramifica ou retorna para alguma linha do programa.IF <exp> GOTO Verifica uma expressão e segue para próxima linha.

(Hora, Dia, Data)

Variados

RUNTASK Executa um programa *.EXE.PLAYSOUND Executa um arquivo *.WAV.MSG Envia uma mensagem para os serviços de alarme

habilitados no SCU.

• onde <expressão> tem a seguinte sintaxe:

operando1 [operador relacional] operando2

Onde: Pode ser:operando 1 nome do tag, hora, dia, dataoperador relacional > < >= <= = !=operando 2 constante ou nome do tag

Page 395: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 12-28

12.4. Questões de Revisão _____________________________________

1. Para que serve o número de série (SN-Serial Number) da base de dados?

2. Para que serve o congelamento de colunas no gerenciador da base de dados?

3. Explique para que serve o comando “Verify” no gerenciador da base de dados.

4. Quais são as vantagens e desvantagens de se atualizar a planilha automaticamente?

5. Explique para que serve o comando SETLIM no tag de programa.

Page 396: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-1

13. Introdução à Programação ________________________________

Capítulo 13

Introdução à Programação

Page 397: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-2

13. Introdução à Programação _________________________________

Objetivos do Capítulo

Este capítulo introduz a linguagem de programação VBA (Visual Basic for Application) que vemembutida no iFIX, a qual permite personalizar e automatizar a aplicação.

O capítulo está organizado nos seguintes tópicos:

• Introdução ao VBA

• Diferenças entre Visual Basic e VBA

• Como usar o VBA no iFIX

• Programação versus Tag de Programação

Page 398: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-3

13. Introdução à Programação ________________________________

A. Terminologia:

• VB - Visual Basic

- normalmente se refere ao Microsoft® Visual Basic® 5.0 ou 6.0

- isto é externo ao iFIX e VBA

• VBA - Microsoft® Visual Basic® for Applications

- ambiente de desenvolvimento orientado a objetos e baseado em eventos quesuporta formulários Microsoft e ActiveX

- normalmente referenciado como parte integrada do iFIX

- usado com os produtos da Microsoft para personalização

◊ adicionar uma barra de ferramentas no Excel

◊ criar um formulário no Access

• VBE - Visual Basic Editor

- parte do VBA

- acessível a partir do WorkSpace

B. Diferenças entre Visual Basic for Applications e Visual Basic

• O Visual Basic usa o Visual Basic for Applications como seu código central

• O VB permite criar executáveis e controladores ActiveX

• O VBA permite personalizar e aumentar as capacidades de um produto

• Existem algumas variações nos nomes de alguns eventos e propriedades

Page 399: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-4

13.1. Visual Basic for Applications_______________________________

A. No iFIX, o VBA pode ser usado para:

• Animar objetos;

• Gerar telas e objetos automaticamente;

• Ler ou escrever em blocos da base de dados;

• Executar outros programas automaticamente;

• Incorporar características personalizadas de segurança;

• Criar caixas de diálogo e mensagens personalizadas para o operador;

• Acessar as fontes de dados ODBC;

• Inserir controles ActiveX personalizados ou de terceiros;

• Criar assistentes (wizards) personalizados para tarefas realizadas com freqüência; etc.

B. Visão Geral

• O código de programação no iFIX permite acessar propriedades, métodos e eventosde componentes padrões do VBA e objetos do iFIX.

• A Figura 13-1 traz uma tabela com definição dos termos usados em VBA.

• As propriedades, métodos e eventos de um determinado objeto são baseados naclasse do objeto. Exemplo: um retângulo não possui as mesmas propriedades defontes de um texto.

• Os objetos respondem aos eventos de acordo com um código de programação escritopara cada evento. É possível escrever códigos de programa para um ou para vários oseventos, conforme a necessidade.

Page 400: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-5

13.1. Visual Basic for Applications _____________________________

Terminologia VBA

Objetos Conjunto de dados e procedimentos tratados como unidades.Cada objeto possui propriedades, métodos e eventos que podemser usados para escrever programas.

Exemplos: retângulo, objeto timer, evento de schedule.

Propriedades Características de um objeto.

Exemplos: cor, tamanho, posição na tela.

Métodos Sub-rotinas que afetam o comportamento do objeto.

Exemplos: scale, refresh.

Eventos Ações que objetos reconhecem, tais como clicar sobre o objetocom o mouse ou alterar o seu tamanho.

Se tiver um código de programação associado ao evento, então ocódigo será executado quando o evento for disparado.

Eventos podem ocorrer como resultado de uma ação do usuário,de um código de programa ou outras ocorrências no iFIX (umschedule por exemplo).

Exemplos: clique do mouse, quando alcança um valor de umatabela de limites.

Figura 13-1: Terminologia VBA

Page 401: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-6

13.2. Programando no iFIX _____________________________________

A. Associando código de programação a objetos

• Existem duas maneiras de associar códigos VBA a objetos:

- Através dos assistentes de comandos;

- Usando o editor de VBA.

B. Usando os Assistentes de Comandos

• Os assistentes de comandos podem ser acessados na barra de ferramentas Experts.Para habilitar esta barra de ferramentas na tela:

- Selecione a opção Toolbars do menu WorkSpace.

- Selecione Picture no campo Owner.

- Habilite a barra de ferramentas Experts.

• Esta barra de ferramentas possui botões que inserem código das ações mais usadas,como:

- Abrir ou fechar uma tela;

- Escrever um valor em um tag;

- Reconhecer um alarme.

• Para usar um assistente de comando (experts):

- Selecione o objeto na tela que deseja associar um comando.

- Selecione o botão com o comando desejado da barra Experts.

• Existem outros assistentes de comandos disponíveis no iFIX. Para adicionar maisbotões na barra de ferramentas Experts, consulte o Capítulo 18 sobre comopersonalizar as barras de ferramentas.

Page 402: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-7

13.2. Programando no iFIX____________________________________

Botão Nome do Botão Descrição

Data Entry Expert Entrada de valores.

OpenPicture Expert Abrir uma tela.

Close Picture Expert Fechar uma tela.

Replace Picture Expert Substituir

Open Digital Tag Expert Abrir um tag digital.

Close Digital Tag Expert Fechar um tag digital.

Toggle Digital Tag Expert Alternar o estado de um tag digital.

Acknowledge Alarm Expert Reconhecer um alarme.

Figura 13-2: Assistentes de Comandos

Page 403: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-8

13.2. Programando no iFIX ____________________________________

C. Usando o Editor de VBA

• O código de programação pode ser inserido usando o editor de VBA. Para acessar oeditor de VBA, clique com o botão direito do mouse sobre o objeto na tela eselecione Edit Script.

• A Figura 13-3 mostra um exemplo simples de código VBA associado ao evento declique sobre o objeto da tela chamado Rect5:

- Linha 1 – cria o procedimento (ou sub-rotina) chamado Rect5_Click(). Noteque o código:

◊ está associado a um objeto chamado Rect5.

◊ será executado quando o objeto Rect5 for clicado.

- Linha 2 – executa a função (ou comando) CloseDigitalPoint

◊ envia o valor 1 para o tag especificado.

- Linha 3 – finaliza a execução do procedimento.

• As páginas 13-10 e 13-11 mostram outros exemplos de códigos de programa.

Page 404: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-9

13.2. Programando no iFIX____________________________________

Figura 13-3: Exemplo de Programa

Page 405: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-10

13.2. Programando no iFIX ____________________________________

Private Sub RoundRect1_Click()

OpenPicture "NomeTela"

End Sub

Figura 13-4: Exemplo 1 de Programa

Private Sub Rect1_Click()

WriteValue 30, "Fix32.SCADA.TEMP_SP.F_CV"

End Sub

Figura 13-5: Exemplo 2 de Programa

Private Sub Oval1_DblClick()

AcknowledgeAllAlarms "NomeTela"

End Sub

Figura 13-6: Exemplo 3 de Programa

Page 406: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-11

13.2. Programando no iFIX____________________________________

Private Sub Rect2_Click()

Rect2.RotationAngle = Rect2.RotationAngle + 20

End Sub

Figura 13-7: Exemplo 4 de Programa

Private Sub Rect3_Click()

Dim iValue As Integer

iValue = ReadValue("Fix32.SCADA.AO_TEMP.F_CV")

If iValue < 50 ThenRampValue "50", False, "AO_TEMP"

ElseMsgBox "Valor acima de 50."

End If

End Sub

Figura 13-8: Exemplo 5 de Programa

Page 407: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-12

13.3. Usando o Editor de VBA___________________________________

A. Abrindo o Editor de VBA

• A partir do menu WorkSpace, selecione Visual Basic Editor

ou

• Selecione com o botão direto do mouse o objeto que irá conter o programa.

• Veja a Figura 13-9.

B. Componentes do Editor de VBA

• Project Explorer (Árvore do Sistema)

- Em geral, fica localizado na janela esquerda do editor.

- Cada tela é listada como um projeto.

• Property Windows (Janela de Propriedades)

- Mesmo tipo de informação do WorkSpace.

• Code Window (Janela de Código)

- Em geral a maior janela no editor.

- Esta seção contém o programa atual.

- A Figura 13-9 mostra um exemplo.

Page 408: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-13

13.3. Usando o Editor de VBA _________________________________

Figura 13-9: Editor do VBA

Page 409: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-14

13.4. Ferramentas de Programação ______________________________

A. Como Obter Ajuda sobre o VBA

• O Help do VBA é chamado iFIX Automation Reference e pode ser usado para buscarajuda sobre programação no iFIX.

• Este Help contém ajuda sobre todos objetos, propriedades, métodos, eventos e sub-rotinas disponíveis.

• A Figura 13-10 mostra uma lista de todos os tópicos disponíveis do AutomationInterface Help

• A Figura 13-11 mostra uma lista das sub-rotinas mais usadas.

Figura 13-10: Automation Interface Help

Page 410: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-15

13.4. Ferramentas de Programação ____________________________

Sub-rotina Descrição

AcknowledgeAllAlarms Reconhece todos os alarmes da tela.

AcknowledgeAnAlarm Reconhece o alarme de um bloco.

DisableAlarm Desabilita a verificação do limite de alarme do bloco.

EnableAlarm Habilita a verificação do limite de alarme do bloco.

CloseDigitalPoint Fecha o bloco digital (envia o valor 1).

OpenDigitalPoint Abre o bloco digital (envia o valor 0).

ToggleDigitalPoint Alterna o estado de um bloco digital entre aberto e fechado.

ClosePicture Fecha a tela.

OpenPicture Abre a tela.

ReplacePicture Fecha a tela e abre outra em seu lugar.

OffScan Coloca o bloco fora de varredura.

OnScan Coloca o bloco para varredura.

ToggleScan Altera o estado de varredura do bloco.

SetAuto Estabelece o bloco para o modo automático.

SetManual Estabelece o bloco para o modo manual.

ToggleManual Altera o modo do bloco entre automático e manual.

ReadValue Lê o valor do bloco.

WriteValue Estabelece um valor para o bloco.

RampValue Aumenta ou diminui o valor do bloco através de umaporcentagem da faixa da unidade de engenharia (EGU).

LocateObject Busca uma tela para o objeto e o seleciona.

LogIn Executa o programa de conexão.

PictureAlias Estabelece um apelido (alias) para a tela.

Figura 13-11: Sub-Rotinas Mais Usadas do iFIX

Page 411: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-16

13.5. VBA versus Tag de Programa ______________________________

A. Introdução

• O uso de programação durante o desenvolvimento de uma aplicação é quase queindispensável, e pode ser usada em vários lugares do iFIX.

• Em geral, pode-se programar de duas formas:

- Usando o VBA.

- Usando tags da base de dados do processo.

B. Programação via VBA

• Disponível dentro do ambiente gráfico do WorkSpace e do Scheduler.

• Oferece uma vasta quantidade de comandos e propriedades.

• O programa é executado de acordo com o disparo de eventos.

C. Programação via Base de Dados do Processo

• Disponível em vários tags da base de dados:

- Programa (PG)

- Evento (EV)

- Tempo (TM)

- Cálculo (CA), etc.

• Oferece uma quantidade restrita de comandos.

• O programa é executado de acordo com o scan time do tag.

Page 412: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-17

13.5. VBA versus Tag de Programa ____________________________

VBA Tag de Programa (PG)

Executado apenas no modo Run. Executado enquanto o SAC estiveratuando.

Número ilimitado de linhas de código. Até 20 linhas de código (cada PG podechamar outro bloco PG para aumentar aslinhas do código).

A velocidade do programa depende davelocidade do PC.

As linhas de código do PG sãoexecutadas dentro de um ciclo do SAC(1/20ésimo de segundo).

Possui uma lista extensa de funçõesmatemáticas (funções trigonométricas,logarítmicas, etc.).

Não possui funções matemáticas (poderealizar alguns cálculos via bloco decálculo).

Pode usar variáveis. Não pode usar variáveis (pode usarblocos da base de dados como variáveis).

Faz manipulação de texto. Não realiza manipulação de texto (podeusar blocos de texto para fazermanipulações limitadas de texto).

Figura 13-12: VBA versus Tag de Programa

Page 413: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-18

13.6. _____________________________________________ Exercício 13

Programando em VBA

Exercício 13

Page 414: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-19

__________________________________________________Exercício 13

Objetivos:

Após a realização deste exercício, o aluno estará apto para elaborar programas que realizam tarefassimples como:

1. Manipular a navegação de tela.2. Criar uma caixa de diálogo para executar um comando.

Informações sobre o exercício:

Neste exercício, iremos continuar com o desenvolvimento da aplicação de produção de cerveja.Iremos criar agora alguns programas básicos para realizar tarefas simples. Na primeira partedeste exercício, iremos criar uma nova tela para atuar como tela inicial de navegação(Overview). A partir desta tela, será possível abrir as outras telas da aplicação. Entretanto, omodo com que cada tela é aberta será diferente. Quando terminar, sua tela deverá se parecercom:

Na segunda parte deste exercício, iremos criar uma caixa de diálogo para o operador paraconfirmar uma ação em uma válvula.

Quando terminar este exercício, vá para a próxima seção e responda as questões.

Page 415: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-20

_________________________________________________ Exercício 13

A. Cria uma nova tela.Faz uma nova tela e adiciona objetos gráficos.

1. A partir do menu File, selecione New –Picture.

Uma nova tela sem título aparece.

2. Adicione objetos texto à nova tela usando a figura abaixo como referência.

Quando terminar, sua tela deverá se parecer com:

Obs.: Esta tela será usada como uma tela principal de navegação entre as telas daaplicação de produção de cerveja. Neste exercício, iremos adicionar botões paraalterar a partir desta tela para outras telas que você desenvolveu.

3. Salve esta nova tela usando o seguinte nome:

Overview

Page 416: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-21

__________________________________________________Exercício 13

B. Adiciona um retângulo.Cria um retângulo para atuar como um push button.

1. Certifique-se de que a barra de ferramentas dos “Experts” esteja aberta

2. A partir do menu Insert, selecione Rectangle.

O cursor muda para o formato de uma cruz.

3. Desenhe um retângulo ao lado do texto “Mash Mixer”.

Um novo retângulo aparece.

4. Selecione o retângulo e clique o botão Replace Picture Expert

A seguinte caixa de diálogo aparece:

5. Configure as seguintes opções com os valores da direta:

Replace Current Picture in Run Mode: HabilitadoNew Picture: MashMixer

6. Quando terminar, selecione OK.

Você irá retornar para a tela “Overview”.

7. Salve as alterações feitas na tela “Overview”.

Page 417: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-22

_________________________________________________ Exercício 13

C. Adiciona um bitmap.Cria um bitmap para atuar como um push button.

1. Abra a tela “FermTank”.

2. A partir do menu Edit, selecione Select All.

Todos os objetos da tela ficarão rodeados por cruzes.

3. Mantendo selecionada a tecla <CRTL>, selecione o gráfico para retirá-lo da seleção

4. A partir do menu Edit, selecione Copy As Bitmap.

5. Feche a tela “FermTank” para retornar para a tela “Overview”.

6. A partir do menu Edit, selecione Paste.

Os objetos do tanque de fermentação são colados na tela “Overview” como uma figuragrande.

7. Usando a Janela de Propriedades, configure as seguintes propriedades do bitmap com osvalores listados a direita:

Width: 6Height: 5ButtonStyle: BitmapButtonPushName: bmpFermTank

8. Mova o bitmap para o lado esquerdo do texto “Fermentation Tank”.

A tela deve-se parecer agora com:

Page 418: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-23

__________________________________________________Exercício 13

C. Adiciona um bitmap (continuação).

9. Usando o botão direito do mouse, clique no bitmap e selecione Edit Script.

O editor de Visual Basic abre.

10. Digite o seguinte programa no evento “Click” do bmpFermTank:

ReplacePicture "C:\Dynamics\PIC\FermTank.grf”

A tela deve-se parecer agora com:

11. A partir do menu File selecione Close and Return to WorkSpace Application

12. Salve as alterações feitas na tela “Overview”.

Page 419: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-24

_________________________________________________ Exercício 13

D. Adiciona um Bitmap.Adiciona um bitmap para atuar como push button.

1. A partir do menu Insert, selecione Bitmap.

A caixa de diálogo para selecionar um arquivo aparece.

2. Selecione o seguinte arquivo e selecione o botão Open quando terminar.

C:\Dynamics\App\BrewKettle.bmp

O bitmap “Brew Kettle” é inserido na tela “Overview”.

3. Usando o botão direito do mouse, selecione o bitmap “Brew Kettle” e selecioneTransparent Color.

A caixa de diálogo para selecionar uma cor aparece.

4. A partir da caixa de cor, selecione Bright Cyan (fica na linha superior) e selecione entãoOK.

5. Usando o botão direito do mouse, clique no bitmap “Brew Kettle” e selecione EnableTransparency.

6. Redimensione o bitmap tal que caiba no lado esquerdo do texto “Brew Kettle”.

A tela deve-se parecer com:

Page 420: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-25

__________________________________________________Exercício 13

D. Adiciona um Bitmap (continuação).

7. Usando a Janela de Propriedades, altere o nome do bitmap para:

bmpBrewKettle

8. Usando o botão direito do mouse, selecione o novo bitmap e selecione Edit Script.

O editor de Visual Basic abre.

9. Entre com o seguinte programa no evento “Click” do bmpBrewKettle:

ReplacePicture "C:\Dynamics\PIC\BrewKettle.grf”

A tela deve-se parecer agora com:

10. A partir do menu File selecione Close and Return to WorkSpace Application

11. Salve as alterações feitas na tela “Overview”.

Page 421: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-26

_________________________________________________ Exercício 13

E. Adiciona um push button.Cria um push button para trocar uma tela.

1. A partir do menu Insert, selecione Push Button.

Um botão é adicionado no centro da tela.

2. Mova o push button para o lado esquerdo do texto “Lauter Tun”.

3. Usando a Janela de Propriedades, configure as seguintes propriedades do botão com osvalores da direta:

Caption: Lauter TunName: cmdLauterTun

4. Com o botão direito do mouse, selecione o push button e selecione Edit Script.

O VBE é aberto.

5. Digite o seguinte programa no evento “Click” do cmdLauterTun:

ReplacePicture "C:\Dynamics\PIC\LauterTun.grf”

6. A partir do menu File selecione Close and Return to WorkSpace Application

A tela deve-se parecer agora com:

7. Salve as alterações feitas na tela “Overview”.

Page 422: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-27

__________________________________________________Exercício 13

F. Adiciona um outro push button.

1. A partir do menu Insert, selecione Push Button.

Um botão é adicionado no centro da tela.

2. Mova o botão para a esquerda do texto “Whirlpool Filter”.

3. Com o novo botão selecionado, abra a Janela de Propriedades.

4. Configure as seguintes propriedades com os valores da direta:

Name: cmdFilterHeight: 7Width: 6Picture: C:\Dynamics\App\WhirlpoolTank.bmp

A tela deve-se parecer agora com:

Page 423: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-28

_________________________________________________ Exercício 13

F. Adiciona um outro push button (continuação).

5. Usando o botão direito do mouse, clique no novo botão e selecione Edit Script.

O editor do Visual Basic é aberto.

6. Entre com o seguinte programa no evento “Click” do cmdFilter:

ReplacePicture "C:\Dynamics\PIC\Filter.grf”

A tela deve-se parecer agora com:

7. A partir do menu File selecione Close and Return to WorkSpace Application

8. Salve e feche a tela “Overview”.

Page 424: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-29

__________________________________________________Exercício 13

G. Adiciona um novo programa.

1. Abra a tela “BrewKettle”.

2. Usando o botão direito do mouse, selecione a válvula de saída e selecione Edit Script.

O editor de VBA abre.

3. Digite o seguinte programa no evento “Click” da ValveHorizontalOnOff2:

Obs.: Certifique-se de estar usando o evento Click. O comando Edit é o padrão!

Private Sub ValveHorizontalOnOff2_Click()

Dim Resposta

Resposta = MsgBox("Alterna o switch?", vbYesNo, "Confirma")

If Resposta = vbYes Then

ToggleDigitalPoint "Fix32.LAB#.BREW_SWITCH.F_CV"

Else

MsgBox "Nenhuma Alteração "

End If

End Sub

4. A partir do menu File selecione Close and Return to WorkSpace Application

5. Salve e feche a tela.

Use o nome doseu nó aqui.

Page 425: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-30

_________________________________________________ Exercício 13

H. Altera para o modo de execução.

1. Altere para o modo de execução e abra a tela “Overview”.

2. Explore os cinco botões diferentes desta tela. Qual é a diferença entre eles?

3. A partir da tela “BrewKettle”, clique na válvula de saída. Descreva o comportamentodeste objeto.

4. Que objeto pode ser adicionado à tela “Brew Kettle” para mostrar o estado da válvula desaída? Se houver tempo, adicione esta funcionalidade a tela.

Fim do Exercício

Page 426: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 13-31

13.7. Questões de Revisão_____________________________________

1. Quais são as diferenças entre VB e VBA?

2. Dê exemplos de objetos, propriedades, métodos e eventos usados no exercício deste capítulo.

3. Descreva alguns lugares no iFIX onde se pode utilizar programação.

4. Explique algumas das vantagens e desvantagens dos cinco diferentes modos que o comandoReplacePicture foi usado na tela “Overview”.

5. Explique algumas considerações necessárias a serem feitas entre usar um bloco de programa eum programa em VBA.

Page 427: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 13-32

13.7 Questões de Revisão _____________________________________

página em branco

Page 428: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-1

14. Alarmes e Mensagens ____________________________________

Capítulo 14

Alarmes e Mensagens

Page 429: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-2

14. Alarmes e Mensagens_____________________________________

Objetivos do Capítulo

Este capítulo aborda questões relativas aos alarmes e mensagens do sistema. Mostra comoconfigurar os diversos serviços de alarmes, como personalizar as áreas de alarme e criar filtros paraa distribuição dos alarmes para os serviços e para a rede.

O capítulo está organizado nos seguintes tópicos:

• Alarmes e mensagens

• Estratégias de alarme

• Configuração dos serviços de alarme

• Filtragem de alarmes

Page 430: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-3

14.1. Alarmes e Mensagens ____________________________________

A. Alarmes

• Indicam que os valores do processo ultrapassaram um limite pré-definido. Porexemplo, o nível do tanque muito alto está em condição de alarme à qual o operadordeve tomar conhecimento.

• Portanto, os alarmes precisam ser reconhecidos pelo operador.

B. Mensagens

• Mensagens são informações não críticas que não requerem um resposta. Porexemplo: quando a válvula de entrada do tanque é aberta ou fechada, o iFIX enviauma mensagem para o operador que o estado da válvula foi alterado.

• O iFIX envia mensagens quando:

- Um operador entra com um valor;

- Ocorre um evento na base de dados do processo;

- Ocorre um evento de sistema, como quando o iFIX completa seu processo deinicialização.

• Podemos definir três tipos de mensagens:

- Mensagens de Evento: grava eventos ocorridos na base de dados doprocesso. São similares ao alarme, mas não precisam de reconhecimento eestão disponíveis nos seguintes tags: DI (Digital Input), DO (Digital Output),AO (Analog Output), DR (Digital Register), AR (Analog Register) e TX(Text).

- Mensagens de Aplicação: descreve atividades relacionadas a base de dadosdo processo geradas por um aplicativo do iFIX ou uma entrada de operador.Exemplo: download/upload de receita, mensagens gerada por um tag deprograma ou por código VBA, etc.

- Mensagens de Sistema: oferece informações sobre erros, mensagens dealerta do sistema, eventos a nível de sistema (como tarefas finalizadas).

Page 431: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-4

14.2. Estratégia de Alarme______________________________________

A. Introdução

• O objetivo principal de criar uma estratégia de alarme é criar um sistema flexível dealarmes que disponibiliza informações necessárias. Com uma boa estratégia dealarmes implementada, é possível criar telas que mostram, filtram e organizamalarmes em qualquer combinação.

B. Implementando uma Estratégia de Alarme

• Para implementar uma boa estratégia de alarme, é necessário:

- Identificar as áreas de alarme do processo.

- Configurar o nome das áreas de alarme da base de dados de áreas de alarme.

- Identificar os tags mais críticos do processo e associe as áreas de alarme aostags.

- Desenvolver um esquema de filtragem de alarmes associando filtros por áreasde alarme nos serviços de alarme do SCU.

Page 432: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-5

14.2.1. Base de Dados das Áreas de Alarme _____________________

Figura 14-1: Configuração dos Diretórios no SCU

Page 433: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-6

14.2.2. Base de Dados de Áreas de Alarme_______________________

A. Introdução

• Uma área de alarme é uma divisão física ou funcional da planta

• Uma vez habilitado um alarme, as áreas de alarmes podem ser especificadas

B. Identificando Áreas Físicas de Alarme

• A forma mais fácil de identificar as áreas de alarme do processo é criar uma área ealarme para cada divisão física da planta. Atribua um nome que indique o que a áreaproduz e que seja fácil de ser lembrado. Por exemplo: se uma área produz cervejanormal e outra produz cerveja light, defina as áreas CERV_NORMAL eCERV_LIGHT.

C. Identificando as Áreas Funcionais de Alarme

• Além de criar áreas de alarme por linha de produção (divisões físicas), é uma boaidéia criar também áreas funcionais de alarme tais como temperatura de um forno ouvelocidade de um agitador.

• Por exemplo, suponha que queira gerar um alarme sempre que os agitadores daslinhas de produção estejam com rotação abaixo de 500 rotações por minuto (RPM).Uma forma de criar uma área de alarme funcional é chamá-la de AGITADORES eassociá-las aos tags que monitoram cada agitador, como mostra a figura abaixo.

D. Base de Dados das Áreas de Alarme

• O iFIX cria um arquivo que armazena a base de dados das áreas de alarmeALARMAREAS.AAD.

• As áreas de alarme do iFIX são por padrão de A até P, mas podem ser renomeadas econter um número ilimitado de áreas de alarme (Figura 14-2).

• Este arquivo fica armazenado no diretório reservado para Alarm Áreas (AAD) noSCU.

Page 434: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-7

14.2.2. Base de Dados de Áreas de Alarme______________________

Figura 14-2: Configuração da Base de Dados das Áreas de Alarme

Figura 14-3: Exemplo de Filtragem de Alarmes por Área

Page 435: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-8

14.2.3. Formato Padrão dos Alarmes ____________________________

A. Introdução

• O formato padrão dos alarmes define que informações sobre alarmes e mensagens osserviços de alarme irão receber, como por exemplo: data, hora, nome da estação, etc.

• O formato padrão dos alarmes pode ser definido para os seguintes serviços de alarme:arquivos, impressoras e histórico de alarmes.

B. Para configurar o formato padrão dos alarmes

1. Selecione o botão Alarms na caixa de ferramentas do SCU.

2. Selecione o botão Advanced (Figura 14-4).

3. Selecione o botão Common Format (Figura 14-5).

C. Configurando o Formato Padrão dos Alarmes

• Columns

- Date e Time: data e hora que foram gerados os alarmes.- Node e Tagname: nome da estação SCADA que gerou o alarme e nome do

tag em estado de alarme.- Value, Unit, Description: valor do tag que gerou o alarme, unidade de

engenharia (EGU) e descrição configurados no tag

- Alarm Type: tipo de alarme gerado (HIHI, HI, LO, LOLO, COS, COMM, etc)

• Length

- Tamanho reservado para receber a informação. Se o tamanho configurado nãofor suficiente, o iFIX corta o texto.

• Column Order

◊ A ordem das colunas de informações que serão para os serviços dealarme podem ser alteradas. As colunas no topo da lista aparecem emprimeiro.

◊ Para isso, selecione a coluna desejada e então configure a ordemusando os botões com as setas à direita.

Page 436: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-9

14.2.3. Formato Padrão dos Alarmes___________________________

Figura 14-4: Configuração Avançada de Alarmes

Figura 14-5: Formato Comum para Alarmes e Mensagens

Page 437: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-10

14.2.4. Áreas de Alarmes Comuns a Todos Serviços_______________

A. Introdução

• Um área de alarme que tiver que ser configurada para todos os serviços de alarme docomputador local. Configurando uma área de alarme comum, o processo deconfiguração é simplificado.

• Por exemplo, considere que uma estação cliente ESTACAO1 tenha os serviçosAlarm Printer, Alarm File e Alarm History habilitados. Compartilhando todas asáreas de alarme da ESTACAO1, você elimina a necessidade de atribuir manualmenteas áreas de alarme para todos estes serviços. Ao invés disto, o SCU atribuiautomaticamente as áreas de alarmes comuns a todos os serviços habilitados.

B. Áreas de Alarme fora da Base de Dados das Áreas de Alarme

• Geralmente, áreas comuns de alarme são selecionadas a partir da base de dadosdas áreas de alarme

• Entretanto, uma área de alarme não listada na base de dados pode ser incluída

• Esta situação pode ocorrer se o computador local não tiver acesso à base dedados necessária das áreas de alarme

- Exemplo:

◊ se a base de dados de áreas de alarme estiver em um servidor dearquivos e o servidor não estiver disponível

C. Para selecionar áreas comuns de alarme:

1. Selecione o botão “Alarms” na caixa de ferramentas do SCU

2. Selecione o botão “Advanced”

- ver Figura 14-6

3. Selecione o botão “Common Areas”

- ver Figura 14-7

4. Selecione a opção “Select from Alarm Area Database”

5. Clique duas vezes nas áreas de alarme que deseja tornar comum.

Page 438: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-11

14.2.4. Áreas de Alarmes Comuns a Todos Serviços _____________

Figura 14-6: Configuração Avançada de Alarmes

Figura 14-7: Áreas Comuns de Alarme

Page 439: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-12

14.2.5. Configurando os Serviços de Alarme _____________________

A. Introdução

• O iFIX pode enviar alarmes e mensagens para diferentes tipos de serviços de alarme.A maioria dos serviços possuem uma ou mais opções para serem configuradas noSCU. Por exemplo, configurar a porta de uma impressora de alarme ou então suadescrição.

B. Alarm Printer

• É possível configurar até 4 impressoras de alarme por estação. Para habilitar umaimpressora de alarme, selecione a linha da impressora desejada e selecione a opçãoEnable. Selecione então o botão Modify à direita desta janela.

• Para cada impressora é necessário configurar sua porta de comunicação e umadescrição (opcional). Pode-se configurar também uma filtragem por área de alarme eo formato com que os alarmes serão impressos (vide itens anteriores).

C. Alarm Summary

• Oferece filtragem primária de área de alarme para o objeto Sumário de Alarmeda estação local.

• Permite apagar alarmes manualmente

D. Alarm File

• Permite a criação de arquivos diários de alarme [YYMMDD.ALM]

• O arquivo ALARM.INI define quando estes arquivos serão apagados

E. Alarm History

• Habilita uma lista de alarmes locais ou recebidos de um nó remoto

• Pode ser vista na tarefa de histórico de alarme, ALMHIS.EXE

F. Alarm ODBC

• Permite o envio de informações de alarme para uma fonte de dados ODBC

G. Alarm Network

• Permite a distribuição de alarmes para nós com comunicação estabelecida

H. Alarm Startup Queue

• Permite que um nó Vista receba de um nó SCADA uma lista de alarmes ocorridosantes de ser iniciado

Page 440: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-13

Page 441: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-14

14.2.5. Configurando os Serviços de Alarme_____________________

Figura 14-8: Configuração de Alarmes no SCU

Figura 14-9: Áreas de Alarme do Serviço de Sumário de Alarme

Page 442: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-15

14.2.5. Configurando os Serviços de Alarme ____________________

[FILE];; file_live_days : the number of days to pass before an alarm file; is automatically purged can be set through this.;; The valid range is from 1 to 365 days. Any other; value would default to 30 days.;; Fractional numbers will be rounded down.;file_live_days=30

[SUMMARY]; UpdateTimeInOnAck (6.15 change); When TRUE indicates to the Alarm Summary that the time-in field; in the alarm should be updated on re-alarm if any existing alarms; have been acknowledged. This is new behavior in V6.15.; When FALSE (default) indicates to the Alarm Summary that the; time-in field in the alarm should be left alone on re-alarm.; This is the way it the original behavior.UpdateTimeInOnAck=FALSE

Figura 14-10: Exemplo do Arquivo ALARM.INI

Page 443: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-16

14.2.5. Configurando os Serviços de Alarme_____________________

7/19/99 14:21:24.0 iFIX Software is running!

7/19/99 14:21:38.4 Connection NOT established with node NODE4

7/19/99 14:21:43.9 [NODE8 ] SAC - Cold Start

7/19/99 14:21:43.9 [NODE8 ] SAC - Initialization Complete

7/19/99 14:21:44.0 [NODE8 ] LAUTER_LEVEL LOLO 3.33 GALLLauter Tun Level

7/19/99 14:21:44.2 [NODE8 ] CALC_RATE Field's value not knownPUMP_SWITCH.F_CV

7/19/99 14:21:44.0 [NODE8 ] FERM_LEVEL LOLO 0.00 GALLFermentation Tank Level

7/19/99 14:21:44.0 [NODE8 ] FILTER_SWITCH COS OPENWhirlpool Filter Drain Valve

7/19/99 14:21:44.0 [NODE8 ] FILTER_STAT COS IDLEWhirlpool Filter Status

7/19/99 14:21:49.0 [NODE8 ] LAUTER_LEVEL LO 168.32 GALLLauter Tun Level

7/19/99 14:21:52.0 [NODE8 ] LAUTER_LEVEL OK 268.33 GALLLauter Tun Level

7/19/99 14:22:08.0 [NODE8 ] LAUTER_LEVEL HI 801.66 GALLLauter Tun Level

Figura 14-11: Exemplo de Arquivo Diário de Alarme

Page 444: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-17

14.2.6. Configuração de Mensagem ____________________________

A. Introdução

• As mensagens de aplicação descrevem as atividades relativas à base de dados geradaspela aplicação iFIX ou digitadas por um operador

• As mensagens de sistema oferecem informações sobre tarefas completadas e erros

B. Mensagens de Aplicação

• Mensagens de Operador

- O iFIX monitora todas as mudanças da base de dados e cria mensagem deoperador sempre que o operador:

◊ altera um valor de processo

◊ carrega a base de dados

◊ conecta-se no iFIX

• Mensagens de Receita

- o “Recipe Builder” pode armazenar uma lista (audit trail) das atividades dereceitas

- esta lista informa quando uma receita foi carregada, descarregada ou salva

- quando uma destas atividades ocorre uma mensagem de receita é gerada

• Mensagens de Bloco de Programa

- configure um bloco de programa para enviar mensagens usando o comandoMSG

- quando este comando é executado, o bloco de programa envia uma mensagempara todos os destinos de alarme das áreas de alarme do bloco

• Mensagens de Programa

- use um programa em VBA para gravar informação que o operador quisersalvar

- quando um operador usa um programa através do método SendOperatorMsg,o iFIX envia a informação para todos os destinos de alarme habilitados

Page 445: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-18

14.2.6. Configuração de Mensagem ____________________________

C. Distribuição das Mensagens de Aplicação

• Configure o iFIX para enviar mensagens para os destinos de alarme configurados

• Use o SCU para associar áreas de alarme para mensagens de operador e de receita

• O iFIX envia automaticamente mensagens de programas em VBA e de blocos deprogramas para as áreas de alarme de mensagens de operador

• Para estabelecer áreas de alarme para mensagens de aplicação:

1. Selecione o botão “Alarms” na caixa de ferramenta do SCU

2. Selecione o botão “Advanced”

3. Selecione “Recipe Messages” para configurar as áreas de alarme dasmensagens de receita ou “Operator Messages” para configurar as áreas dealarme para qualquer outro tipo de mensagens de aplicação

4. Clique duas vezes nas áreas de alarme da lista “Available Áreas”

D. Mensagens de Sistema

• As mensagens de sistema fornecem informações sobre tarefas finalizadas ou de erros

• O iFIX gera uma mensagem de sistema quando:

- uma base de dados é carregada

- ocorre uma falha de comunicação de rede

- um driver I/O detecta um erro

- o SAC envia uma mensagem quando ele é:

◊ iniciado

◊ completa uma tarefa

◊ encontra erros em um bloco ou em uma cadeia da base de dados

◊ encontra erros de execução ou sistema

Page 446: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-19

14.3. Reconhecimento de Alarme _______________________________

A. Introdução

• Durante a execução, os alarmes realizam ações visuais nas telas do iFIX

- estas ações podem ser textos coloridos ou piscantes no objeto Sumário deAlarme, em links de dados ou em objetos com animações disparadas poralarmes

- ações visuais baseadas em alarme permanecem na tela até que haja oreconhecimento do alarme pelo operador e que o bloco volte para seu estadonormal

B. Latched e Current Alarms

• Current Alarm: alarme atual do tag.

• Latched Alarm: alarme mais severo do tag ainda não reconhecido.

• Exemplo:

- Se um bloco gerar um alarme HIHI, o alarme mais severo e o alarme atualcorrespondem ao mesmo alarme: HIHI.

- Se um bloco gerar um alarme HI, o alarme atual agora é o HI mas o alarmemais severo continua sendo o alarme HIHI.

C. Alarmes em Datalinks

• Os alarmes em datalinks respondem ao reconhecimento de forma diferente.

• Exemplo:

- Um link mostra o alarme atual até que um novo alarme ocorra ou que o valordo tag retorne para o estado normal.

- Da mesma forma, um link mostra o alarme mais severo até que o operadorreconheça o alarme.

◊ O link passa então a mostrar o alarme mais severo ainda nãoreconhecido.

• Os alarmes usados para animação de objetos tratam o reconhecimento de alarme deforma similar aos datalinks.

• Exemplo:

- Quando um objeto é animado com base no alarme atual, o objeto pára aanimação quando o alarme atual retorna para o estado normal.

- Da mesma forma, quando um objeto é animado com base no alarme maissevero, o objeto pára a animação quando o operador reconhece o alarme.

Page 447: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-20

14.3. Reconhecimento de Alarme ______________________________

D. Alarmes no Objeto Sumário de Alarmes

• Os alarmes no objeto Sumário de Alarmes respondem da mesma forma com osalarmes mais severos

• O alarme mais severo não reconhecido aparece na planilha do objeto

- quando um operador reconhece um alarme, o próximo alarme mais severoaparece

- além disso, os textos param de piscar e os textos coloridos retornam para asua cor original quando um operador reconhece o alarme no Sumário deAlarmes

- então, o Serviço de Sumário de Alarmes espera o valor do bloco retornar parao estado normal

- quando isso acontece, o serviço automaticamente apaga o alarme

E. Reconhecimento de Alarmes

• Os operadores podem apenas reconhecer alarmes se for fornecido um método para taloperação

- Exemplo:

◊ seleção de um botão ou um objeto piscante na tela

- isto pode ser feito adicionando-se um objeto na tela e associando-se umprograma a ele

• Objeto Sumário de Alarme

- este objeto permite o operador reconhecer um alarme através de duplo cliqueno alarme

- além disso, selecione o sumário de alarmes com o botão direito do mouse eescolha um dos seguintes comandos:

◊ Acknowledge: para reconhecer apenas um alarme

◊ Acknowledge Page: para reconhecer todos os alarmes da tela

◊ Acknowledge All: para reconhecer todos os alarme do sumário

• O iFIX também oferece dois botões para reconhecimento de alarmes na barra deferramentas Experts

- Um destes botões reconhece apenas um alarme para o objeto selecionado ou afonte de dados específica.

- O outro botão reconhece todos os alarmes dos destinos de alarmeconfigurados.

Page 448: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-21

14.4. Contadores de Alarmes___________________________________

A. Contadores de Alarme

• Provides a way to determine the general alarm state of a single SCADA server, orareas within that server

• Indicate how many tags are in alarm, how many of these alarms are high, medium,and low priority, and how many are acknowledged or unacknowledged

• Use alarm counters to animate and color picture objects

B. Accessing Alarm Counter Information

• iFIX provides two ways to access alarm counter information:

- use a database block to access a counter through the SIM driver

- use a tag field (SYSTEM tag, ALARMCOUNTERS tag, or area name) withinthe WorkSpace

• Examples:

- the database can react based on one or more of the alarm counters byassigning one or more blocks to the SIM driver

◊ the database logic processes alarms even when the WorkSpace is notrunning

- to display a count of alarms in the WorkSpace, access the counter directlyfrom a tag field

C. Note:

• iFIX has a collision detection program that detects when a tag name and an alarmarea name are identical

- when this happens, the alarm counter is unavailable

- the system always attempts to read data from the process database tag and notthe alarm counter tag

Page 449: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 14-22

14.4. Contadores de Alarmes ___________________________________

Figura 14-12: Contadores de Alarmes

Page 450: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 14-23

14.5. Questões de Revisão_____________________________________

1. Explique a diferença entre alarme e mensagem.

2. Para que servem as áreas de alarme?

3. Quais são os tipos existentes de mensagens e onde elas aparecem?

4. Para que serve o reconhecimento de um alarme?

5. Para que serve as áreas comuns de alarmes?

Page 451: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-1

15. Ferramentas Gráficas Adicionais___________________________

Capítulo 15

Ferramentas Gráficas Adicionais

Page 452: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-2

15. Ferramentas Gráficas Adicionais ____________________________

Objetivos do Capítulo

Este capítulo mostra alguns componentes gráficos adicionais que podem ser utilizados no iFIX,como a utilização dos controles ActiveX e ferramentas avançadas de desenvlvimento como os TagGroups.

O capítulo está organizado nos seguintes tópicos:

• Sumário de alarmes

• Controles ActiveX

• Editor de Tag Group

Page 453: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-3

15. Ferramentas Gráficas Adicionais ___________________________

A. Revisão:

• Alarmes

- condição do bloco indicando que um valor ultrapassou um limite pré-definido

- necessita reconhecimento

• Mensagens

- são apenas informativas

- tipos:

◊ mensagens de sistema

◊ mensagens de aplicação

◊ mensagens de evento

• “Latched Alarm” e “Current Alarm”

- “Current Alarm”: estado atual de alarme do bloco

- “Latched Alarm”: alarme mais severo do bloco

Page 454: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-4

15.1. Sumário de Alarmes ______________________________________

A. Notas

• O fornecimento de ações visuais para os operadores é a chave para odesenvolvimento de uma boa aplicação

• Uma forma de se fazer isso é adicionando um sumário de alarmes na tela

- este objeto permite monitorar, reconhecer, ordenar e filtrar alarmes

- também pode ser usado para colorir alarmes de acordo com seu estado eprioridade a fim de fornecer variações visuais

• Por padrão, o sumário de alarmes mostra os alarmes reconhecidos e não reconhecidos

- o serviço de sumário de alarmes apaga automaticamente o alarme quando:

◊ o bloco retorna para seu valor normal

◊ o alarme é reconhecido pelo operador

B. Adicionando um objeto Sumário de Alarme

• A partir do menu “Insert”, selecione “Alarm Summary”

• Ver Figura 15-1 para um exemplo no modo de execução

Page 455: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-5

15.1. Sumário de Alarmes ____________________________________

Figura 15-1: Objeto Sumário de Alarmes

Page 456: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-6

15.1. Sumário de Alarmes ____________________________________

C. Configurando o Sumário de Alarmes

• Clique duas vezes sobre o sumário para abrir sua janela de configuração (veja aFigura 15-2)

• Guia “Operator”

- “Allow Alarm Acknowledgement”: permite reconhecimento de alarme

- “Allow Alarm Deletion”: permite apagar alarme

- “Run Time Configuration”: permite configuração no modo de execução

- “Enable Column Quick Sort”: permite ordenar rapidamente as colunas

- “Display Right Mouse Menu”: mostra o menu do botão direito do mouse

• Guia “Filter”

- Cria filtros, como por exemplo, filtragem de alarmes por prioridade:

◊ Priority = “High”

- Ou então por área de alarme:

◊ Area In “A, B, E, F”

• Guia “Sort”

- Cria a organização dos alarmes na tela, como por exemplo, organizar por tipode alarme, por prioridade, por estação, etc.

• Guia “Color”

- Configura a cor do texto de acordo com o tipo de alarme.

- A cor de fundo do sumário de alarmes é baseada na prioridade do alarme.

• Guia “Column”

- Seleciona as colunas que estarão visíveis no sumário de alarmes. É possívelalterar a ordem das colunas selecionando a coluna desejada e clicando sobreas setas a direita (para cima ou para baixo).

• Guia “Display”

- Área Dysplay Settings: configura opções como: mostrar cabeçalhos(Headers), barra de rolagem (Scroll Bar), número das linhas (Row Numbers),barra de estado (Status Bar), grade (Grid Lines), piscar alarmes que nãoforam reconhecidos (Blink Unacknowledged Alarms).

- Área Refresh Settings: configura o intervalo de atualização dos alarmes(Alarm Refresh Interval), intervalo de atualização de dados (Data RefreshInterval), velocidade da piscagem (Blink Rate) e freqüência com que umalinha permanece selecionada no modo de execução (Selection Timeout).

Page 457: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-7

15.1. Sumário de Alarmes ____________________________________

Figura 15-2: Configuração do Sumário de Alarme (guia Filter)

Page 458: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-8

15.2. Controles ActiveX ________________________________________

A. ActiveX

• Conjunto de tecnologias de programação criado pela Microsoft

• Permite que componentes de software criados em diferentes linguagens possam seinteragir em um ambiente de rede

• Criado a partir do padrão de desenvolvimento OLE (OLE para Internet)

• Baseado no modelo de programação COM (Component Object Model)

B. Documento ActiveX

• Arquivo que pode ser editado a partir de qualquer aplicativo compatível comActiveX

• Documentos ActiveX criados pelo FIX Dynamics:

- Tela do FIX Dynamics

- Schedule de evento

C. Controle ActiveX

• Um objeto que pode ser manipulado pelo usuário para realizar uma ação (umcontrole) que pode ser usado com qualquer aplictivo compatível com ActiveX

• A Figura 15-4 compara os termos usados pelo ActiveX e pelo OLE

Page 459: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-9

15.2. Controles ActiveX _______________________________________

Terminologia Active X

ActiveX Nome da tecnologia da Microsoft que permite interoperabilidadeatravés do modelo de componentes COM

ComponenteActiveX

Arquivo (por exemplo, .EXE, .DLL, .OCX) que contém classesde definições de objetos

ControleActiveX

Objeto que pode ser inserido em um formulário por exemplo parahabilitar ou melhorar a interação entre o usuário e a aplicação.Estes controles possuem extensão .OCX

DocumentoActiveX

Aplicação compatível com os controles ActiveX

COM Component Object Model

DCOM Distributed Component Object Model

OLE Object Linking and Embedding

Figura 15-3: Terminologia ActiveX

Novo termo ActiveX Antigo termo OLE

Componente de código ActiveX Servidor OLE, servidor de automação OLE

Componente ActiveX (termo queengloba documento, controle ecomponente de código ActiveX)

Servidor de automação OLE, componenteOLE, controle OLE, controle padrão,servidor OLE

Controle ActiveX Controle OLE, controle padrão

Documento ActiveX Não possui termo correspondente

Programa ActiveX Não possui termo correspondente

Automação Automação OLE

Figura 15-4: Comparação entre os termos ActiveX e OLE

Page 460: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-10

15.2. Controles ActiveX _______________________________________

C. Documentos e Controles

• Um documento ActiveX é um arquivo que pode ser configurado a partir de qualqueraplicação compatível com ActiveX (chamada de “ActiveX Container”)

- Um documento iFIX pode ser aberto em qualquer “ActiveX Container”

- Os documentos ActiveX criados pelo iFIX são:

◊ telas

◊ schedules de evento

- Qualquer documento ActiveX pode ser aberto no WorkSpace da Intellution

- Exemplos de documentos ActiveX criados fora do iFIX:

◊ documentos Microsoft Word

◊ documentos Microsoft Excel

• Um controle Active X é um objeto que pode ser manipulado pelo usuário pararealizar uma ação que pode ser usada em qualquer aplicação que suporte ActiveX

- Controles ActiveX criados pelo iFIX:

◊ objeto sumário de alarmes

◊ objeto “Expression Builder” (primeiro objeto da Figura 15-5)

- Controles ActiveX criados fora do iFIX:

◊ Controle calendário (segundo objeto da Figura 15-5)

◊ Botão de comando de formulário VBA (terceiro objeto da Figura 15-5)

◊ Controle para visulação de vídeo (quarto objeto da Figura 15-5)

• A partir do menu “Insert”, selecione “OLE Object” para inserir um controle ActiveX

- veja a Figura 15-6

D. “Secure Containment”

• Para proteger o sistema de possíveis problemas com controles ActiveX, o iFIX possui“Secure Containment”

• Isto significa que se um controle ActiveX falhar enquanto o iFIX estiver sendoexecutado, o controle ActiveX é isolado e o sistema continua sendo executadonormalmente

• Com “Secure Containment”, não existe perda de dados ou interrupção para o resto dosistema

Page 461: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-11

15.2. Controles ActiveX _______________________________________

Figura 15-5: Controles ActiveX

Figura 15-6: Inserindo um Objeto ActiveX

Page 462: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-12

15.3. Grupos de Tags __________________________________________

A. Introdução:

• Os grupos de tags (ou Tag Groups) permitem criar uma única tela para representar asdiferentes áreas do processo, economizando assim tempo de desenvolvimento.

• Por exemplo, uma mesma tela pode ser usada para representar linhas similares doprocesso.

• Um grupo de tag é composto por um symbol (símbolo), uma substitution(substituição) correspondente e um campo de descrição opcional

- os símbolos (“symbols”) representam as fontes de dados ou texto em uma tela

- a substituição (“substitution”) é uma seqüência de caracteres alfa-numéricosque substituem os símbolos contidos na tela

B. Arquivos de Grupos de Tags

• Utilize símbolos nas áreas da tela onde deseja representar valores do processo

• Crie diferentes arquivos de grupos de tag que associam os símbolos usados na telacom as substituições (as quais serão feitas durante a execução da tela)

- um arquivo de grupo de tags é um arquivo binário que contém os símbolos, assubstituições e as descrições para cada grupo de tag

C. Editor de Grupo de Tag

• “Symbol” (campo obrigatório)

- texto que será substituído pelo campo de substituição

- pode conter até 60 caracteres alfa-numéricos

◊ o primeiro caractere deve ser uma letra

• “Substitution” (campo obrigatório)

- texto que substitui o símbolo

- pode conter até 60 caracteres alfa-numéricos

◊ o primeiro caractere deve ser uma letra

• “Description” (campo opcional)

- texto que descreve a função do grupo de tag

- pode conter até 60 caracteres alfa-numéricos, incluindo caracteres especiais,tais como - (*) & + % e espaços

Page 463: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-13

15.3. Grupos de Tag__________________________________________

Figura 15-7: Editor de Grupo de Tag

Page 464: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-14

15.3. Grupos de Tag __________________________________________

D. Definindo um Símbolo

• Ao adicionar um símbolo na tela, digite o sinal arroba (@) no início e final do nomedo símbolo

- com isso o iFIX diferencia os símbolos de grupo de tag dos textos normais

• Quando definir símbolos na coluna “Symbol” do editor de grupo de tags, digitesomente o nome do símbolo

• Exemplo:

- você quer inserir um link na tela tela para mostrar o valor de temperatura deum bloco de saída

- esta tela será usada para monitorar três processos similares

- utilize um símbolo na tela chamado “temperatura” (por exemplo), digitando oseguinte texto no campo “Data Source” do link

@temperatura@

- quando o iFIX faz a leitura de textos neste formato, ele identifica o textocomo um símbolo de grupo de tag

- quando a tela é aberta no modo de execução, o símbolo é substituído pelotexto configurado na coluna “Substitution” do editor de grupos de tags

E. Substituições Parciais

• Pode-se substituir apenas uma parte específica de um tag ou de um texto

• Isto é conhecido como substituição parcial

• O editor de grupo de tags pode realizar substituições parciais; entretanto deve-secertificar de que exista um sinal arroba, @, delimitando o nome do símbolo

• Para realizar uma substituição parcial de um tag, siga o guia da Figura 15-8

Page 465: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-15

15.3. Grupos de Tag__________________________________________

Símbolo Correto Símbolo Incorreto Razão

Node.@[email protected]_cv Node@tag1@f_cvOs elementos devem ser separadospor pontos. Neste exemplo, deveexistir um ponto entre o nome donó (node) e o tag e entre o tag e ofield.

@tag1@.@field@ @tag1@.@fieldCada símbolo deve iniciar eterminar com um sinal de arroba(@). Neste exemplo, umasubstituição não irá ocorrer para ofield porque o símbolo deveterminar com um sinal de arroba(@).

Node.@tag1@.@field@ Node.@tag1@field@Elementos separados com pontos.Além disso, sinais de arroba (@)não podem ser compartilhados.Texto começando e terminandocom um sinal de arroba (@)denota um símbolo a sersubstituído. Neste exemplo, umasubstituição irá ocorrer para o tag1mas não para o field.

Node.@unit@@[email protected]_cv

Node.@unit@[email protected]_cv

Não se pode compartilhar sinais dearroba (@). Neste exemplo, umasubstituição irá ocorrer para unitmas não para device.

@tag1@ + @tag2@ @tag1@+@tag2@Deve-se digitar um espaço antes edepois do operador matemático (osinal mais (+) neste exemplo).

Figura 15-8: Símbolos nas telas: o que pode e o que não pode ser feito

Page 466: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-16

15.3. Grupos de Tag __________________________________________

F. Associando um Arquivo de Grupo de Tag à uma Evento da Tela

• O arquivo de grupo de tags deve ser configurado para ser carregado durante aabertura da tela

• Use os assitentes de programação “Open Picture” ou “Replace Picture” e adicioneum arquivo de grupo de tag

- veja a Figura 15-9

• Observações:

- se quiser escolher a tela que será aberta somente durante a execução,selecione a opção “Select picture to open in Run Mode”

◊ a caixa de diálogo para abertura de um arquivo aparece no modo deexecução para a seleção do arquivo de tela

- se quiser escolher o arquivo de grupo de tag a ser carregado somente durantea execução, selecione a opção “Select Tag Group File in Run Mode”

◊ a caixa de diálogo para seleção de um arquivo de grupo de tag apareceno modo de execução

G. Otimizando o Carregamento da Tela no Ambiente de Execução

• Após ter completado o arquivo de grupo de tag, otimize o desempenho de abertura datela usando o comando “Resolve Tags” (encontrado no menu “File”)

- este comando faz com que a tela substitua os símbolos pelas “substituições” eestabelece conexões entre a tela e as fontes verdadeiras de dados

• O editor de grupo de tags salva esta informação no arquivo de armazenamento degrupos de tags (.TGS)

- este arquivo armazena também o número da versão da tela, o arquivo degrupo de tag e os textos de identificação após a substituição

- o iFIX cria apenas um arquivo de armazenamento de grupos de tags para cadaestação

H. Habilitando a mensagem que avisa quando o comando “Resolve Tags” não foi usado:

• Uma mensagem pode avisar que a tela não foi otimizada pelo comando “resolveTags” durante sua abertura no modo de execução

• Para habilitar esta mensagem de aviso, edite o arquivo FILTEREDERRORS.INIlocalizado no diretório DYNAMICS\LOCAL

• Consulte o manual eletrônico para obter maiores informações

Page 467: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-17

15.3. Grupos de Tag__________________________________________

Figura 15-9: Assistente de programação “Open Picture Expert”(mostrando um arquivo de Grupo de Tag)

Page 468: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-18

15.4. _____________________________________________ Exercício 15

Ferramentas Gráficas Adicionais

Exercício 15

Page 469: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-19

__________________________________________________Exercício 15

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Adicionar um objeto Sumário de Alarme na tela2. Adicionar outros controles ActiveX na tela

Introdução:

Neste exercício, iremos criar duas novas telas. A primeira tela será uma tela simples de alarmeque irá conter um Sumário de Alarmes além de objetos data e hora. Quando terminar, a tela dealarme deverá de parecer com:

A segunda tela irá conter o controle Calendário. Este controle será usado mais tarde no capítulosobre coleta de dados históricos. Quando terminar este exercício, vá para a próxima seção eresponda as questões.

Page 470: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-20

_________________________________________________ Exercício 15

A. Cria uma nova tela.Faz uma nova tela e adiciona um objeto sumário de alarme.

1. A partir do menu File, selecione New –Picture.

Uma nova tela sem título aparece.

2. A partir do menu Insert, selecione Alarm Summary.

O sumário de alarme é adicionado na nova tela.

3. Adicione os objetos Text, Time e Date usando a figura abaixo como referência.

A tela deve-se parecer agora com:

4. Salve a tela usando o seguinte nome:

AlarmSummary

Page 471: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-21

__________________________________________________Exercício 15

B. Configura o objeto sumário de alarme.Edita a configuração do objeto sumário de alarme.

1. Clique duas vezes no objeto sumário de alarme.

A caixa de diálogo de propriedades aparece.

2. Na guia Sort, altere a ordem dos alarmes, organizando-os por nó (node).

3. Na guia Filter, altere o filtro para mostrar apenas os alarmes que foram gerados hoje.

4. Na guia Columns, altere a ordem das colunas para mostrar o estado do alarme emprimeiro lugar.

5. Na guia Display, faça mostrar o número das linhas.

A tela deve-se parecer agora com:

6. Vá para o Run Mode e observe.

7. No modo de execução, altere a lista Sort para organizar os alarmes por nome do tag.

Como você impede que o operador altere a ordem dos alarmes no modo de execução?

8. Quando terminar, volte para o modo Configure.

Page 472: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-22

_________________________________________________ Exercício 15

C. Cria uma nova tela.Faz uma nova tela e adiciona um controle ActiveX.

1. A partir do menu File, selecione New –Picture.

2. A partir do menu Insert, selecione OLE Object.

A seguinte caixa de diálogo aparece:

3. A partir da lista de objetos, selecione Calendar Control e selecione OK.

Um objeto calendário é adicionado a tela:

Page 473: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-23

__________________________________________________Exercício 15

D. Configura o controle ActiveX.Edita a configuração do controle calendário.

1. Usando o botão direito do mouse, selecione o calendário.

2. Selecione a opção Properties Calendar Object a partir do menu do botão direito.

A seguinte caixa de diálogo aparece:

3. Configure as seguintes opções com os valores da direta:

Day Length: ShortMonth Length: ShortMonth/Year Title: Desabilitado

4. Quando terminar, selecione OK.

5. Salve a nova tela usando o seguinte nome:

Archive

Page 474: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-24

_________________________________________________ Exercício 15

E. Anima um objeto texto.Adiciona um objeto texto mostrando os dados selecionados no controle calendário.

1. A partir do menu Insert, selecione Text.

O cursor muda para o formato de uma barra I.

2. Selecione uma área abaixo do calendário e digite o seguinte texto:

Date

3. Clique duas vezes no novo objeto texto.

A caixa de diálogo de animação aparece.

4. Selecione a opção Enable Select a partir da guia General.

5. Selecione a guia Text da caixa de diálogo.

As opções de texto aparecem.

6. Selecione a caixa de opção para animar a propriedade Caption.

A caixa de configuração de animação aparece:

Page 475: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-25

__________________________________________________Exercício 15

E. Anima um objeto texto (continuação).

7. Selecione o botão Browse para selecionar a fonte de dado (data source).

O Expression Builder aparece.

8. Selecione a guia Picture.

As telas abertas serão listadas.

9. A partir da lista, selecione:

Archive.Calendar1.Value

A caixa de diálogo deverá se parecer agora com:

10. Selecione OK para retornar para a caixa de diálogo de animações.

11. Selecione OK para retornar para a tela “Archive”

Page 476: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-26

_________________________________________________ Exercício 15

F. Adiciona uma barra de título e salva.

1. A partir do menu Insert, selecione Text.

O cursor muda para o formato de uma barra I.

2. Selecione uma área no centro superior da página e digite o seguinte texto:

Historical Data

A tela deverá se parecer agora com:

3. Salve a tela.

Page 477: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 15-27

__________________________________________________Exercício 15

G. Altera para o modo de execução.

1. Altere para o modo de execução.

2. Selecione uma nova data no objeto Calendar Control. O que acontece?

Obs.: Esta tela receberá novos objetos em outro exercício. Você irá adicionar umgráfico para ver dados históricos. Este controle de calendário permitirá selecionarrapidamente a data que desejar ver os dados históricos.

Fim do Exercício

Page 478: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 15-28

15.5. Questões de Revisão _____________________________________

1. Para que serve o objeto Sumário de Alarme?

2. Em que lugares do iFIX pode-se ver os dados de alarme?

3. O que é um ActiveX?

4. O que é um “ActiveX container”?

5. O que significa conter segurança em relação aos controles ActiveX (Secure Containment)?

Page 479: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-1

16. Coleta de Dados Históricos _______________________________

Capítulo 16

Coleta de Dados Históricos

Page 480: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-2

16. Coleta de Dados Históricos ________________________________

Objetivos do Capítulo

Este capítulo mostra o armazenamento de dados históricos, o qual é usado para obter uma cópia dabase de dados e armazenar estes valores para serem analisados posteriormente.

O capítulo está organizado nos seguintes tópicos:

• Configuração dos dados a serem coletados

• Coleta histórica

• Configuração do gráfico na tela

Page 481: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-3

16. Coleta de Dados Históricos _______________________________

Configuraçãoda Coleta(HTA)

C:\Dynamics\HTR\HTRGRP01.DAT

Arquivo deConfiguração

(HTC)

de ColetaArquivos

C:\Dynamics\HTRDATA\node8\98051220.H04

C:\Dynamics\HTRDATA\node8\98051300.H04

C:\Dynamics\HTRDATA\node8\98051304.H04

Gráfico(no WorkSpace)

ColetaHistórica

Figura 16-1: Componentes da Coleta de Dados Históricos

Page 482: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-4

16.1. Arquivo de Dados Históricos ___________________________________

A. Introdução

• Os dados coletados pelo aplicativo HTC (Historical Trend Collect) do iFIX sãoarmazenados no diretório definido no SCU

• Um subdiretório é criado para cada estação configurada para coleta no aplicativoHTA (Historical Trend Assign)

B. Localização dos Arquivos de Configuração

• O aplicativo HTA cria um arquivo para cada grupo de coleta no diretório deconfiguração dos dados históricos. Exemplo utilizando o diretório padrão deinstalação:

- C:\DYNAMICS\HTR\HTRGRP01.DAT

C. Localização dos Arquivos de Dados Históricos

• Os arquivos contendo os dados coletados para histórico são salvos no diretório dosdados históricos. Exemplo utilizando o diretório padrão de instalação:

- C:\Dynamics\HTRDATA\NomeDoNó\YYMMDDHH.H04

D. Usando Servidores de Arquivos

• Para utilizar um servidor de arquivos na rede para armazenar os arquivos de dadoshistóricos são necessários alguns ajustes:

- As estações que rodam o aplicativo HTC devem ter nomes exclusivos.

◊ Estações com nomes diferentes evitam que os arquivos de dados deuma estação sejam sobrescritos por arquivos de outra estação.

- Para uma estação visualizar dados históricos na tela, esta deve especificar odiretório do servidor de arquivos no SCU (diretório Historical Data).

• O acesso ao servidor de arquivos é opcional, não sendo necessário para que a coletade dados históricos funcione.

Page 483: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-5

16.1. Arquivo de Dados Históricos______________________________

Figura 16-2: Configuração dos Dados Históricos no SCU

Page 484: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-6

16.2. Configuração dos Dados Históricos ____________________________

A. Introdução

• A configuração de dados históricos é feita pelo aplicativo HTA (Historical TrendAssign), o qual define a estratégia do arquivamento dos dados coletados.

• No HTA deve ser definido:

- Tags da base de dados que devem ser coletados;

- Taxas com que os tags serão coletados;

- Tags digitais que disparam a coleta dos grupos históricos (opcional);

- Duração em horas dos arquivos de dados históricos;

- Número de dias que os arquivos são armazenados no hard disk (opcional).

• Pode-se definir até 64 grupos de coleta histórica, cada grupo com até 80 tags.

B. Duração dos Arquivos Históricos

• Os arquivos podem ser configurados para terem duração de 4, 8 ou 24 horas.

• Os arquivos são criados à meia-noite e incrementados de acordo com sua duração:

- Arquivos de 4 horas: 00:00, 04:00, 08:00, 12:00, 16:00 e 20:00

- Arquivos de 8 horas: 00:00, 08:00 e 16:00

- Arquivos de 24 horas: 00:00

• Exemplos:

- 99020100.h04 – 01 de Fevereiro de 1999 das 00:00 às 04:00

- 02051308.h08 – 13 de Maio de 2002 das 08:00 às 16:00

C. Opção “Automatically Purge Data Files”

• Esta opção apaga os arquivos de dados automaticamente após determinado númerode dias.

• Digite o número de dias (entre 2 e 200) que os dados ficarão salvos no computador.

Page 485: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-7

16.2. Configuração dos Dados Históricos________________________

Figura 16-3: Configuração da Coleta Histórica (aplicativo HTA)

Page 486: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-8

16.2. Configuração dos Dados Históricos ________________________

D. Configuração dos Grupos de Coleta

• Campo “Node”

- Indica o nome do servidor SCADA de onde os dados serão coletados.

- Todos os tags deste grupo devem pertencer à mesma estação.

• Campo “Rate”

- Taxa com que os tags deste grupo serão coletados (1s, 2s, 10s, 20s, 30s, 1m,2m, 10m, 20m e 30m).

• Campo “Phase”

- Tempo de atraso do início da coleta deste grupo para otimizar o coletor dedados distribuindo automaticamente a coleta de dados no tempo.

• Campo “Qualifier”

- Nome de um tag digital que indica quando os tags um grupo devem sercoletados.

- Os dados são coletados quando o tag digital estiver no estado 1 (Close).

- O uso deste campo é opcional.

• Campo “Tagname”

- Digite Tag.Field que devem ser coletados.

- Somente valores numéricos (F_*) podem ser coletados.

• Campo “Limit”

- Banda morta que estabelece a mudança mínima do valor gravadoanteriormente (no EGU) para escrita de um novo valor no arquivo de dadohistórico.

- Diminui o tempo de processamento do coletor e economiza espaço no discoeliminando variações insignificantes dos valores.

Page 487: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-9

16.2. Configuração dos Dados Históricos________________________

Figura 16-4: Configuração de Grupos de Coleta Histórica

Page 488: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-10

16.3. Coleta dos Dados ________________________________________

A. Introdução

• A coleta de dados históricos é feita pelo aplicativo HTC (Historical Trend Collect), oqual obedece as configurações definidas no aplicativo HTA (vide tópico anterior).

B. Iniciando a Coleta Histórica de Dados

• O aplicativo HTC é manipulado a partir do aplicativo Mission Control, e pode seriniciado usando o botão Start.

• O HTC pode ser adicionado à lista de tarefas do SCU (<driver>:\Dynamics\HTC.EXE)para iniciar a coleta de dados históricos automaticamente quando o iFIX é iniciado.

• A guia HTC do Mission Control mostra o número de falhas ocorridas na coleta dedados desde seu início (overruns)

C. Parando a Coleta Histórica de Dados

• Use o botão Stop na guia HTC do Mission Control para parar a coleta de todos osgrupos configurados no HTA

• Quando o iFIX é fechado, a coleta de dados históricos também é finalizada.

Page 489: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-11

16.3. Coleta dos Dados _______________________________________

Figura 16-5: Janela de “Status” do HTC no Mission Control

Page 490: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-12

16.3. Coleta dos Dados________________________________________

D. Parâmetros da Linha de Comando do HTC

• Quando o HTC é iniciado a partir do Mission Control, uma caixa de diálogo aparecepara o usuário entrar com parâmetros opcionais na linha de comando.

• Estes parâmetros permitem a monitoração das aplicações do HTC e podem ser:

- /T

◊ Este parâmetro envia o valor “1” para um tag digital especificadoquando a coleta pára devido a um erro ocorrido no HTC.

◊ Na Figura 16-6, htc_t é o nome de um tag do tipo DO.

- /A

◊ Este parâmetro envia o valor “1” para um tag digital especificado acada 60 segundos enquanto o HTC estiver rodando.

◊ A freqüência da escrita (60 segundos) pode ser alterada usando oparâmetro /D.

◊ Na Figura 16-7, o tag htc_a é o nome de um tag do tipo DO.

- /D

◊ Este parâmetro deve ser usado em conjunto com o parâmetro /A.

◊ O valor configurado após o parâmetro /D corresponde a freqüênciacom que o valor “1” é escrito no tag do parâmetro /A.

◊ O valor mínimo é de 15 segundos (qualquer valor inferior a 15 seráignorado e o valor 15 será assumido).

◊ Na Figura 16-8, o tag htc_a recebe um novo valor a cada 20 segundos.

• Observação:

- Não use os parâmetros /A e /T em conjunto. Se isto ocorrer, o parâmetro /Tterá preferência.

Page 491: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-13

16.3. Coleta dos Dados _______________________________________

Figura 16-6: Exemplo do Parâmetro /T do HTC

Figura 16-7: Exemplo do Parâmetro /A do HTC

Figura 16-8: Exemplo dos Parâmetros /A e /D do HTC

Page 492: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-14

16.4. Gráfico _________________________________________________

A. Revisão

• Os gráficos são usados para mostrar dados em tempo real e dados históricos na tela.

• A partir do menu “Insert”, selecione “Chart” para adicionar um gráfico na tela.

• Clique duas vezes sobre o gráfico para definir suas propriedades.

B. Configurando os Dados a Serem Mostrados no Gráfico

• Os gráficos do iFIX podem ser criados de dois modos diferentes: gráfico histórico eem tempo real.

• Algumas propriedades do gráfico não ficam disponíveis dependendo de seu modo.

- Se o modo em tempo real for selecionado, os campos do modo históricoficam desabilitados

- Se um gráfico for configurado para modo histórico, a taxa de atualização ficadesabilitada

- A Figura 16-9 lista as propriedades mais comuns dos gráficos e suadisponibilidade em cada modo

• O modo do gráfico é selecionado na caixa de diálogo de configuração do gráfico.

- Este capítulo mostra como usar as propriedades do gráfico e como visualizardados históricos previamente coletados.

- Informações sobre a visualização em um gráfico de dados em tempo realestão disponíveis em capítulos anteriores.

Propriedade Gráfico Histórico Gráfico Tempo Real

Fixed Date Habilitada Desabilitada

Fixed Time Habilitada Desabilitada

Days Before Now Habilitada Desabilitada

Duration Before Now Habilitada Desabilitada

Duration Habilitada Habilitada

Interval Habilitada Desabilitada

Refresh Rate Desabilitada Habilitada

Figura 16-9: Propriedades de Gráfico no Modo Histórico versus Tempo Real

Page 493: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-15

16.4. Gráfico_________________________________________________

Figura 16-10: Janela do Expression Builder (guia Historical)

Page 494: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-16

16.4. Gráfico _________________________________________________

C. Configurando o Gráfico

• Para definir como os dados serão apresentados pelas penas configuradas, defina aspropriedades dos dados usando a guia Chart da janela de configuração do gráfico.

• Guia Time

- Campo Date

◊ Data inicial a ser mostrada no gráfico, que pode ser uma:

§ data fixa (MM/DD/YYYY).

§ data relativa à data atual.

- Campo Time

◊ hora inicial a ser mostrada - entre com uma das opções abaixo:

§ hora fixa (HH:MM:SS).

§ hora relativa à hora atual.

- Campo Span

◊ Duration: tempo total a ser mostrado no gráfico.

◊ Interval: intervalo entre os pontos mostrados (HH:MM:SS). Não podeser inferior que a metade da duração. Se for igual a 0, o intervalo édeterminado automaticamente

• Guia Pen

- A maioria das informações é similar às propriedades do gráfico em temporeal.

- Historical Mode

◊ Usado para determinar como os dados serão mostrados

§ Sample: último valor válido do intervalo

§ Average: média dos valores do intervalo

§ High: maior valor válido do intervalo

§ Low: menor valor válido do intervalo

◊ Diretamente relacionado com os parâmetros Interval da guia Time.

Page 495: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-17

16.4. Gráfico_________________________________________________

Figura 16-11: Configuração da Guia Time

Page 496: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-18

16.4. Gráfico _________________________________________________

D. Propriedades Adicionais do Gráfico

• Uma das características mais dinâmicas dos gráficos é a integração de dados emtempo real com dados históricos no mesmo gráfico

- isto permite visualizar todos os tipos de dados no WorkSpace

• Para fazer isso, defina duas penas: uma que mostre dados históricos e outra quemostre dados em tempo real

- quando as fontes de dados das penas forem definidas, a pena automaticamenteassocia o modo da pena baseado com a fonte de dados

E. Propriedades dos Dados

• Para controlar como os dados serão apresentados pelas penas configuradas, defina aspropriedades dos dados na guia Chart

- especifique propriedades como limites superior e inferior, buscar limites dabase de dados, número máximo de pontos a serem mostrados ou se devemostrar uma linha de tendência

• Exemplo:

- para especificar os limites superior e inferior, entre com os valores noscampos Low Limit e High Limit, respectivamente

- para buscar os limites do tag configurados na base de dados, selecione aopção Fetch Limits

F. Eixo de Tempo

• Quando estiver no modo de execução, o eixo do tempo no gráfico fica ativado

• Os gráficos do iFIX usam o padrão UTC (Universal Time Coordinate).

- os dados são inseridos independente das zonas específicas de tempo,significando que os dados podem ser vistos em qualquer zona de tempo

- Exemplo:

◊ suponha que o Gráfico A seja configurado para mostrar dados de12:00 a 1:00 no tempo padrão oriental (EST- Eastern Standard Time)

◊ além disso, o mesmo gráfico é mostrado das 11:00 a 12:00 no tempopadrão central (CST- Central Standard Time)

◊ os dados inseridos em CST serão de 12:00 a 1:00 EST

Page 497: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-19

16.4. Gráfico_________________________________________________

Figura 16-12: Exemplo de Gráfico

Page 498: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-20

16.5. _____________________________________________ Exercício 16

Histórico

Exercício 16

Page 499: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-21

__________________________________________________Exercício 16

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Especificar blocos da base de dados para serem mostrados no gráfico2. Iniciar e parar a coleta de dados históricos3. Usar o gráfico para mostrar dados históricos

Informações sobre o exercício:

Neste exercício, iremos continuar com o desenvolvimento da tela “Archive”. Iremos criar umgráfico e adicionar vários blocos da base de dados para serem mostrados na tela. Quandoterminar, a tela de alarme deverá se parecer com:

Quando terminar este exercício, vá para a próxima seção e responda as questões.

Page 500: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-22

_________________________________________________ Exercício 16

A. Configura a coleta de dados históricos.Configura os dados a serem coletados no HTA.

1. A partir da árvore do sistema, dê um duplo clique na opção Historical Assignment.

O editor HTA é aberto.

2. Selecione duas vezes a primeira linha da planilha e adicione os seguintes blocos paraserem coletados:

FERM_LEVEL.F_CVFERM_TEMP.F_CVLAUTER_LEVEL.F_CVMASH_LEVEL.F_CVMASH_TEMP.F_CVCA_FILTER_LEVEL.F_CV

3. Digite o nome do seu nó no campo “Node” e configure para 10s a taxa de atualização nocampo “Rate”.

Sua tela deverá se parecer com:

4. Selecione o botão Save Changes e feche o editor HTA.

5. No Mission Control inicie a coleta de dados históricos na guia HTC.

Page 501: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-23

__________________________________________________Exercício 16

B. Abre uma tela e adiciona um gráfico.Adiciona um dínamo de gráfico em uma tela existente.

1. A partir do menu File, selecione Open.

A caixa de diálogo para abertura de um arquivo aparece.

2. A partir da lista, selecione:

Archive

3. A partir da árvore do sistema, abra o conjunto de dínamos Historical.

4. Selecione e arraste o gráfico do conjunto de dínamo para a tela.

A seguinte caixa de diálogo aparece:

5. No campo Name, digite BeerChart

Page 502: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-24

_________________________________________________ Exercício 16

C. Configura o gráfico.

1. Selecione a guia Chart.

2. Selecione a pena padrão da lista de penas e selecione o botão Browse.

O editor de expressões abre.

3. Selecione a guia Historical.

Os blocos disponíveis são listados.

4. A partir da lista, selecione:

Hist.nodename.CA_FILTER_LEVEL.F_CV

A caixa de diálogo deverá se parecer com:

5. Selecione OK para retornar para a caixa de diálogo de configuração do gráfico.

Page 503: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-25

__________________________________________________Exercício 16

C. Configura o gráfico (continuação).

6. Adicione à lista os outros blocos disponíveis, escolhendo diferentes cores para cada pena.

A caixa de diálogo deverá se parecer agora com:

7. Quando terminar, selecione OK.

8. Feche o conjunto de dínamos Historical.

Page 504: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-26

_________________________________________________ Exercício 16

D. Configura o calendário de controle.

1. Usando o botão direito do mouse, clique no calendário e selecione Edit Script.

O VBE abre.

2. Entre com o seguinte script para o evento Click do objeto Calendar:

BeerChart.StartTime = Calendar1.Value

BeerChart.Duration = 86400

BeerChart.RefreshChartData

A tela deverá se parecer agora com:

3. A partir do menu File selecione Close and Return to WorkSpace Application

Você retornará para o WorkSpace.

4. Salve a tela “Archive”.

Page 505: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 16-27

__________________________________________________Exercício 16

E. Altera para o modo de execução.

1. Altere para o Run Mode.

2. Altere a data no calendário. Como o gráfico é alterado? Por quê?

3. Como se pode alterar a tela tal que a data escolhida no gráfico seja refletida nocalendário?

Fim do Exercício

Page 506: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 16-28

16.6. Questões de Revisão _____________________________________

1. Explique para que serve o HTA e o HTC.

2. Qual a finalidade de dividir o “Historical Assign” em grupos?

3. Como o HTC pode ser iniciado e parado manualmente? Além disso, como o HTC pode serconfigurado para iniciar automaticamente junto com o iFIX?

4. Como se pode configurar um gráfico para mostrar tanto dados em tempo real como dadoshistóricos?

5. Para que serve o campo “Interval” no gráfico?

Page 507: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 17-1

17. Tags de Registro ________________________________________

Capítulo 17

Tags de Registro

Page 508: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 17-2

17. Tags de Registro __________________________________________

Objetivos do Capítulo

Este capítulo introduz dois novos tags primários, que possuem um método especial de comunicaçãocom a DIT, chamados tags de registro. Mostra como trabalhar com estes tags e apresenta suasvantagens e desvantagens de uso.

O capítulo está organizado nos seguintes tópicos:

• Tag de Registro Analógico

• Tag de Registro Digital

Page 509: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 17-3

17.1. Blocos da Base de Dados _________________________________

A. Revisão:

• Tags (ou blocos) são unidades individuais de instrução que podem receber, verificar,manipular e enviar valores para o processo.

• Existem dois tipos de tags:

- Primários: comunicam com pontos de entrada/saída.

- Secundários: realizam uma função com os valores de tags primários.

• Os tags são normalmente agrupados em cadeias para realizarem funções adicionais.

B. Tags Primários

• Recebem dados da DIT (Driver Image Table)

• A maioria possui tempo de varredura (Scan Time)

• Normalmente associados a pontos de entrada/saída do hardware

C. Tags Secundários

• Recebem seus valores de entrada de um tag anterior de uma cadeia

• Realizam funções específicas com o valor recebido do tag anterior

• Podem realizar cálculos ou armazenar suas entradas

Page 510: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 17-4

17.2. Tag de Registro Analógico_________________________________

A. Introdução

• AR - Analog Register

• Usado para ler e/ou escrever valores no processo, como temperaturas, pressões,velocidades, etc.

• Geralmente os dados se encontram dentro de uma faixa definida por um limitesuperior e inferior.

B. Notas Adicionais

• Diferente de outros blocos da base de dados, o tag AR não é processado pelo SAC,ou seja, não utiliza o SAC para receber e enviar valores para o processo

• Trabalha diretamente entre o WorkSpace e a DIT

C. Vantagens do Tag AR:

• Reduz o trabalho do SAC e reduzir o tamanho da base de dados

• Otimiza a consulta da DIT (polling)

• Lê e escreve valores no processo

D. Desvantagens do Tag AR:

• Não gera alarmes

• Não pode ser encadeado com outros tags da base de dados

• Não coleta dados históricos

E. Configurando um tag AR:

• No driver de comunicação:

- O Poll Record deve ser definido normalmente.

- O parâmetro Access Time deve ser configurado e determina por quanto tempoo Poll Record continua a ser atualizado pelo driver quando o WorkSpace nãorequisita mais informações dos endereços configurados no Poll Record

• Na base de dados do processo:

- O campo I/O Address do tag deve referenciar o primeiro endereçoconfigurado no Poll Record

• Na tela:- Cada objeto da tela pode referenciar um registro do tag, onde as entradas

correspondem a um “offset” de 0.

Page 511: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 17-5

17.2. Tag de Registro Analógico ______________________________

DIT (TabelaImagem Driver)

Link 1

I/ODriver

do Processo Hardware

PDB(Base de Dados

do Processo)

SACAI

CA

DI

TR AO

AI

Link 2 Link 3 Link 4

Figura 17-1: Arquitetura de Tag de Registro

Page 512: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 17-6

17.2. Tag de Registro Analógico _______________________________

Configuração doPoll Record

Exemplo

I/O Address N10:50:11

Poll Time 0.1

Access Time 300.0

Data Type Unsigned

Exception Disabled

Dead Band -

Figura 17-2: Definição do Poll Record

Figura 17-3: Tag de Registro Analógico (guia Basic)

Page 513: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 17-7

17.2. Tag de Registro Analógico ______________________________

Figura 17-4: Tag de Registro Analógico (guia Advanced)

Datalink na Tela Endereço acessado

SCADA1:AR1.F_0 MIX1:N10:50

SCADA1:AR1.F_1 MIX1:N10:51

SCADA1:AR1.F_2 MIX1:N10:52

SCADA1:AR1.F_3 MIX1:N10:53

SCADA1:AR1.F_4 MIX1:N10:54

SCADA1:AR1.F_5 MIX1:N10:55

SCADA1:AR1.F_6 MIX1:N10:56

Figura 17-5: Definições do Link

Page 514: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 17-8

17.3. Tag de Registro Digital ____________________________________

A. Introdução:

• DR - Digital Register

• Usado para ler e/ou escrever valores no processo, como válvulas, motores, bombas,etc. (qualquer processo que tem dois estados como abrir/fechar, ligar/desligar, etc.).

• Pode ler e escrever no mesmo endereço.

• Usa quantidade mínima de memória.

• Possui as mesmas funcionalidades que o tag AR.

Page 515: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 17-9

17.3. Tag de Registro Digital___________________________________

Figura 17-6: Tag de Registro Analógico (guia Basic)

Page 516: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 17-10

17.4. Questões de Revisão _____________________________________

1. Qual é a diferença entre um tag DI e um tag DR?

2. Com que freqüência os blocos são atualizados com novos valores do hardware do processo?

3. Para que serve o campo Address Type em um tag AR?

4. Por que se usa o endereçamento do tipo (F_0, F_1, etc.) com tags de registro?

5. Dê alguns exemplos de quando NÃO se deve usar tags de registro.

Page 517: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-1

18. Programas Adicionais ____________________________________

Capítulo 18

Programas Adicionais

Page 518: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-2

18. Programas Adicionais ____________________________________

Objetivos do Capítulo

Este capítulo mostra novos recursos de programação com o VBA (Visual Basic for Application)como referenciar biblioteca de aplicativos externos, utilizar as caixas de mensagens e osfoirmulários em VBA. Mostra também como personalizar as barras de ferramentas do WokSpace.

O capítulo está organizado nos seguintes tópicos:

• Usando as caixas de mensagem

• Personalizando as barras de ferramentas

• Trabalhando com formulários VBA

Page 519: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-3

18.1. Revisão ________________________________________________

A. Terminologia:

• VB: Visual Basic

- normalmente se refere ao Visual Basic 5.0 ou 6.0 da Microsoft

- aplicativo independente do iFIX e do VBA

• VBA: Microsoft Visual Basic for Applications

- ambiente de desenvolvimento orientado a objetos e baseado em eventos quesuporta formulários Microsoft e ActiveX

- normalmente referenciado como parte integrada do iFIX

- usado para personalizar os produtos da Microsoft:

◊ adicionar uma barra de ferramentas no Excel

◊ criar um formulário no Access

• VBE: Visual Basic Editor

- editor de VBA do iFIX

- pode ser acessado a partir do WorkSpace

B. Revisão:

• O uso de programação no iFIX permite acesso à:

- componentes padrões do VBA

- todos os objetos do iFIX com suas propriedades, métodos e eventos

• As propriedades, métodos e eventos disponíveis de um objeto depende da classe deobjetos à qual o objeto pertence

• Os objetos respondem aos eventos de acordo com os programas (scripts) escritos paracada evento

- pode-se associar programas para um evento, alguns eventos ou todos oseventos do objeto, de acordo com a necessidade

Page 520: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-4

18.1. Revisão _______________________________________________

C. Exemplo de E-mail

• O iFIX pode ser usado para gerar mensagens de e-mail, por exemplo:

- quando uma determinada condição de alarme é alcançada

- acaba um turno, dia, semana, mês, etc.

• Use os seguintes passos para enviar uma mensagem usando o Microsoft Outlook:

1. Use um schedule do iFIX para executar um programa personalizado

2. No editor de VBA, selecione o item “References Microsoft Outlook 8.0Object Library” a partir do menu “Tools”

3. Digite o programa mostrado na Figura 18-1

• O corpo da mensagem pode ser qualquer coisa, como por exemplo:

- a descrição de um alarme com a data e hora do evento

- um relatório de valores e descrições construído antes da declaração“NewMessage.Body” ser executada

• Este programa coloca a mensagem na fila de mensagens do “Outbox”

- para que esta mensagem seja enviada, configure o Outlook para verificarnovas mensagens com freqüência ou adicione um código para disparar ocomando de envio de mensagens

Page 521: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-5

18.1. Revisão _______________________________________________

Sub CriaNovaMensagemOutlook()

Dim ol As Object

Dim NovaMensagem As Object

Set ol = New Outlook.Application

Set NovaMensagem = ol.CreateItem(olMailItem)

' Você pode enviar a mensagem para uma pessoa do seu

' “address book” ou digitar o endereço do email

NovaMensagem.To = "Treinamento; [email protected]"

NovaMensagem.Subject = "Usando o iFIX para enviar E-mail"

NovaMensagem.Body = “A mensagem é escrita aqui!"

NovaMensagem.Send

End Sub

Figura 18-1: Exemplo de Programa para E-mail

Page 522: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-6

18.2. Usando a Caixa de Mensagem______________________________

A. Nota

• A caixa de mensagem mostra uma mensagem na tela, espera o usuário selecionar umbotão da caixa e retorna um número inteiro que indica que botão foi selecionado

B. Sintaxe

MsgBox (prompt[, buttons] [, title] [, helpfile, context])

• A função MsgBox possui os seguintes argumentos:

- prompt (argumento obrigatório)

◊ texto mostrado como mensagem na caixa de diálogo

- buttons (argumento opcional)

◊ expressão numérica especificando a quantidade e o tipo dos botões dacaixa, o estilo do ícone, a identificação do botão padrão e amodalidade da caixa de diálogo

- title (argumento opcional)

◊ texto mostrado na barra de título da caixa de diálogo

◊ se o título não for especificado, então o nome da aplicação é colocadocomo título da caixa de diálogo

- helpfile (argumento opcional)

◊ texto que identifica o um arquivo de help que fornece ajuda sobre acaixa de diálogo

- context (usado se for especificado um arquivo de help)

◊ número associado ao tópico apropriado de help

C. Exemplo

• Veja a Figura 18-2

• Este exemplo usa a função MsgBox para mostrar uma mensagem crítica de erro nacaixa de diálogo com botões Yes e No

• O botão No é especificado como botão padrão de resposta

Page 523: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-7

18.2. Usando a Caixa de Mensagem ____________________________

Dim Mensagem, Estilo, Titulo, Resposta

Mesnagem = "Deseja continuar?" ' Define a mensagem

Estilo = vbYesNo + vbCritical + vbDefaultButton2

Titulo = "Caixa de Confirmação" ' Define o título

' Mostra mensagem

Resposta = MsgBox(Mensagem, Estilo, Titulo)

If Resposta = vbYes Then ' Operador escolhe YesMsgBox “Você selecionou Yes!” ' Realiza alguma ação

Else ' Operador escolhe NoMsgBox “Você selecionou No!” ' Realiza alguma ação

End If

Figura 18-2: Exemplo da Função MsgBox

Tópico Constante Descrição

Botões vbOKOnly Mostra apenas o botão OK

vbOKCancel Mostra os botões OK e Cancel

vbAbortRetryIgnore Mostra os botões Abort, Retry e Ignore

vbYesNoCancel Mostra os botões Yes, No e Cancel

vbYesNo Mostra os botões Yes e No

vbRetryCancel Mostra os botões Retry e Cancel

Ícone vbCritical Mostra o ícone de mensagem crítica

vbQuestion Mostra o ícone de mensagem de pergunta

vbExclamation Mostra o ícone de mensagem de aviso

vbInformation Mostra o ícone de mensagem de informação

Figura 18-3: Valores das Constantes da Função MsgBox

Page 524: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-8

18.3. Personalizando as Barras de Ferramentas ___________________

A. Configurando as Barras de Ferramentas

• A partir do menu “Workspace”, selecione a opção “Toolbars”

• O campo “Owner” indica o proprietário (aplicação) da barra de ferramenta:

- “WorkSpace”: a barra de ferramentas fica sempre disponível

- “Picture”: a barra de ferramentas fica disponível somente quando uma telaestiver aberta

- “Schedule”: a barra de ferramentas fica disponível somente quando umschedule estiver aberto

B. Botão de Personalicação

• “Button”

- realiza uma ação definida

- é um objeto com um código Visual Basic associado a ele

- possui nome, descrição e dicas que são exclusivos

• “Category”

- agrupamento lógico de botões

• “Toolbar”

- agrupamento físico de botões

- pode pertencer às telas, schedules ou ao Workspace

- podem conter botões de qualquer categoria

Page 525: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-9

18.3. Personalizando as Barras de Ferramentas__________________

Figura 18-4: Configuração das Barras de Ferramentas

Figura 18-5: Configuração dos Botões

Page 526: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-10

18.3. Personalizando as Barras de Ferramentas __________________

C. Barras de Ferramentas

• Servem para auxiliar o ciclo de desenvolvimento, inserir objetos básicos e realizartarefas complexas repetidas com freqüência

• Selecione o botão “Add Toolbar”

- uma barra de ferramentas sem nenhum botão aparece na tela

• Arraste botões de diferentes categorias de botões à nova barra de ferramentas

D. Criando Novas Categorias

• Para adicionar botões personalizados à lista de botões disponíveis

• Selecione o botão “Add Category”

- uma caixa de diálogo aparece perguntando pelo nome da categoria

• Selecione o botão “Add Button”

- ver Figura 18-6

• Selecione o botão “Edit Script” para criar o programa que este botão irá executarquando for selecionado

Page 527: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-11

18.3. Personalizando as Barras de Ferramentas__________________

Figura 18-6: Criando Novos Botões

Page 528: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-12

18.4. Usando os Formulários ___________________________________

A. Notas

• Um formulário (objeto UserForm) é uma janela ou caixa de diálogo que faz parte dainterface de aplicação do usuário

• No editor de VBA, selecione a opção “UserForm” a partir do menu “Insert”

- veja a Figura 18-7

B. Janela do Formulário

• Permite criar janelas ou caixas de diálogos no projeto

- é possível desenhar e visualizar controles em um formulário

• Durante o desenvolvimento de um formulário:

- cada janela de formulário pode ter um botão de maximização, minimização ede fechamento

- a grade do formulário ajuda no posicionamento dos objetos: determine otamanho das linhas de grade na guia “General” da caixa de diálogo “Options”

- os controles são inseridos no formulário usando os botões da caixa decontroles (“Toolbox”)

C. “Toolbox”

• Contém os controles disponíveis para serem adicionados no formulário

- para adicionar outros controles, clique com o botão direito do mouse eselecione a opção “Additional Controls”

• Arraste os controles da barra de ferramentas para o formulário

- configure as propriedades dos controles da mesma forma que os objetos sãoconfigurados no WorkSpace

Page 529: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-13

18.4. Usando os Formulários__________________________________

Figura 18-7: Novo Formulário de Usuário: UserForm

Figura 18-8: Barra de Ferramentas do Formulário

Page 530: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-14

18.5. Guia de Programação ____________________________________

A. Use convenções de nomenclatura consistentes

• Nomeie objetos similares com os mesmos três caracteres iniciais, por exemplo,“btnLigaBomba1” para os botões

• Isto torna a depuração do código mais fácil (veja a Figura 19-2)

B. Criando “Looping” (malhas fechadas) em VBA

• Não utilize looping nos programas em VBA

• Se um programa estiver em looping, o restante do código VBA não é executado

• Use um schedule baseado em evento para associar tarefas ao invés de usar umlooping

• Use o obejto Timer (ou o objeto Timer da Microsoft)

- Exemplo: use o evento “OnTimeOut” para atualizar consultas SQL na tela

• Se precisar utilizar um looping no programa, então utilize a função DoEvents

C. DoEvents

• A função DoEvents passa o controle para o sistema operacional

• O controle é retornado retorna para o iFIX após o sistema operacional terminar oprocessamento dos eventos que lhe foram passados

• É um comando VBA, não uma sub-rotina da Intellution

• A função DoEvents é muito útil para tarefas simples como permitir que o usuáriocancele um processo após sua inicialização como por exemplo a busca de umarquivo. Para processos com execução mais longa, é recomendada a utilização dosistema operacional através da utilização de um objeto Timer ou da atribuição datarefa através de um ActiveX ou de um componente EXE

Page 531: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-15

18.5. Guia de Programação___________________________________

Sigla Descrição

arc Arc

bmp Bitmap

btn Button

cht Chart

chk CheckBox

cmd CommandButton

crd Chord

dlnk Datalink

exed Expression Editor Control

frm Form

lin Line

mnu Menu

ovl Oval

pie Pie

pgon Polygon

plin PolyLine

rct Rectangle

rdrct RoundedRectangle

tmr Timer

txt TextBox

Figura 18-1: Convenção Sugerida para Nomeação de Obejtos

Page 532: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-16

18.6. _____________________________________________ Exercício 18

Programação Adicional

Exercício 18

Page 533: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-17

__________________________________________________Exercício 18

Objetivos:

Após a realização deste exercício, o aluno estará apto para:

1. Criar uma nova barra de ferramentas2. Adicionar botões na barra de ferramentas3. Criar novos botões na barra de ferramentas4. Criar formulários5. Adicionar uma caixa de diálogo

Informações sobre o exercício:

Neste exercício, iremos explorar alguns programas adicionais do iFIX. Quando terminar esteexercício, vá para a próxima seção e responda as questões.

Page 534: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-18

_________________________________________________ Exercício 18

A. Cria uma nova barra de ferramentas.Faz uma nova barra de ferramentas para objetos de tela.

1. A partir do menu File, selecione New – Picture.

Uma nova tela sem título aparece.

2. A partir do menu WorkSpace, selecione Toolbars

A caixa de diálogo da barra de ferramentas aparece.

3. A partir da lista Owner, selecione Picture.

A caixa de diálogo muda para mostrar as barras de ferramentas de tela disponíveis.

4. Selecione o botão Customize.

A seguinte caixa de diálogo aparece:

5. Selecione o botão Add Toolbar.

A caixa de diálogo para adicionar uma nova barra de ferramentas aparece.

6. Digite o seguinte nome no campo Toolbar name:

MyToolbar

7. Certifique-se de que a opção de proprietário Picture está selecionada e selecione OK.

Uma barra de ferramentas pequena e vazia aparece junto com os botões disponíveis.

Page 535: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-19

__________________________________________________Exercício 18

B. Adiciona botões na barra de ferramentas.Insere botões na nova barra de ferramentas.

1. A partir da categoria Standard, arraste os seguintes botões para a nova barra deferramentas:

Task Wizard

Visual Basic Editor

Switch to Run

2. Selecione o botão Add Category para criar uma nova categoria.

3. Entre com o seguinte nome no campo Category name:

Class

4. Com a categoria Class selecionada, selecione Add Button.

A seguinte caixa de diálogo aparece:

5. Selecione o seguinte bitmap:

c:\Dynamics\APP\SquareButton.bmp

6. Configure as seguintes opções com os valores da direta:

Name: SquareDescription: Insert a SquareScreen Tip: Square

Page 536: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-20

_________________________________________________ Exercício 18

B. Adiciona botões na barra de ferramentas (continuação).

7. Selecione o botão Edit Script.

O VBE abre

8. Digite o seguinte código de programa para o evento Click do objeto Square:

Private Sub Square_Click()' make a square

Dim pic As Object

Dim shape As Object

Set pic = Application.ActiveDocument.Page

Set shape = pic.BuildObject("rect")

With shape.HorizontalPosition = 10

.VerticalPosition = 11

.Height = 20

.Width = 20

.UniformScale = "true"

.CommitEnd With

End Sub

9. A partir do menu File selecione Close and Return to WorkSpace Application

Você retornará para a caixa de diálogo de propriedades do botão.

10. Selecione OK para adicionar o botão Square.

Page 537: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-21

__________________________________________________Exercício 18

C. Adiciona um novo botão.

1. Crie um botão adicional usando as seguintes informações:

Bitmap: c:\dynamics\app\CircleButton.bmpName: CircleDescription: Insert a CircleScreen Tip: Circle

2. Entre com o seguinte código de programa para o evento Click do objeto Circle:

Private Sub Circle_Click()

' make a circle

Dim pic As ObjectDim shape As Object

Set pic = Application.ActiveDocument.Page

Set shape = pic.BuildObject("oval")

With shape

.HorizontalPosition = 15

.VerticalPosition = 5

.Height = 20

.Width = 20

.UniformScale = "true"

.Commit

End With

End Sub

3. Arraste os dois novos botões para a barra de ferramentas criada anteriormente nesteexercício.

4. Selecione o botão Close na caixa de diálogo de personalização da barra de ferramentas

5. Salve a tela usando o seguinte nome:

ScriptExamples

Page 538: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-22

_________________________________________________ Exercício 18

D. Usa os novos botões.

1. Usando os novos botões, adicione um quadrado e um círculo na tela.

A tela deverá se parecer agora com:

2. Agora, edite o programa que faz o círculo. Antes de adicionar o objeto à tela, abra umacaixa de mensagem perguntando ao operador se deseja adicionar o círculo ou cancelar aoperação.

3. Edite o programa que faz o quadrado. Através de uma caixa de mensagem, peça aooperador para entrar com a altura do quadrado (de 1 a 20). Use o valor escolhido para alargura do quadrado também.

Fim do Exercício

Page 539: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 18-23

18.7. Questões de Revisão_____________________________________

1. Para que serve a caixa de mensagem?

2. Porque o proprietário “Scheduler” não fica sempre disponível durante a personalização dasbarras de ferramentas?

3. Como é possível criar um formulário e fazê-lo aparecer sempre que uma tela é aberta?

4. Como é possível adicionar o objeto “Expression Builder” à um formulário?

5. Como é possível criar um formulário que fique disponível para todas as telas?

Page 540: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 18-24

18.7 Questões de Revisão _____________________________________

página em branco

Page 541: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-1

19. Otimização e Diagnóstico de Falhas ________________________

Capítulo 19

Otimização e Diagnóstico de Falhas

Page 542: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-2

19. Otimização e Diagnóstico de Falhas_________________________

Objetivos do Capítulo

Este capítulo mostra como otimizar o sistema iFIX e como diagnosticar falhas no sistema. Existemvárias ferramentas para diagnosticar falhas e solucionar problemas no iFIX, sendo que este capítuloaborda principalmente o diagnóstico de falhas de rede e problemas com drivers de comunicação.

O capítulo está organizado nos seguintes tópicos:

• Otimização da memória virtual do computador

• Otimização das telas

• Otimização da base de dados do processo

• Otimização do driver de comunicação

• Diagnóstico de falha dos drivers

• Diagnóstico de falha de rede

Além disso, será mostrado como encontrar informações extras no web site da Intellution e comoacessar o suporte técnico da Intellution e da Aquarius Automação Industrial Ltda.

Page 543: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-3

19.1. Intellution na Internet_____________________________________

A. O que fazer com o web site da Intellution?

• Comunicar com a Intellution

• Comunicar com outros usuários do software da Intellution

• Receber respostas de questões técnicas

• Encontrar dicas técnicas e sugestões para aplicação

• Receber as últimas informações da Intellution

• Contribuir com sugestões e idéias para produtos futuros

B. Como encontrar estas informações?

• http://www.intellution.com

Page 544: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-4

19.2. Otimização da Memória Virtual do Computador _______________

Through the use of paging files, Windows allocates space on your hard drive for use as if it wereactually memory. This space is known as virtual memory. After you install Windows NT orWindows 2000, be sure to optimize the virtual memory for use with the iFIX. The following listdescribes how to optimize virtual memory in Windows to achieve maximum performance fromiFIX.

To optimize the virtual memory paging file for iFIX in Windows NT and Windows 2000:

1. Double-click the System icon in the Windows NT or Windows 2000 Control Panel.

2. Click on the Performance tab in the Windows NT System Properties dialog box.

In the Windows 2000 System Properties dialog box, click on the Advanced tab, then click onthe Performance Options button.

3. Click the Change button in the Virtual Memory group box.

4. Enter a value equal to three times your physical memory in the Initial Size field.

5. Enter a value equal to two times your physical memory in the Maximum Size field.

6. Click the Set button.

7. Click OK to save the changes and exit the dialog box.

NOTE: If the paging file is set to grow dynamically, your system may experience severeperformance problems during runtime. To ensure optimal performance, be sure that the Initial Sizeand Maximum Size of the paging file are the same so that the paging file does not growdynamically.

Page 545: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-5

19.3. Otimização de Telas______________________________________

A. Notas

• Lembre-se de que o iFIX é um sistema baseado em evento

- ele não aloca memória nem utiliza o processamento da CPU quando não sefaz necessário

- o sistema acessa a CPU apenas quando ocorre um evento

- com isso, o ambiente gráfico do iFIX se torna eficiente

B. Entendendo a Atualização de Objetos

• “Tolerance”

- fator de arredondamento que o iFIX usa quando compara valores

- se os valores estiverem dentro desta tolerância, o iFIX assume que os valoressão iguais

- por exemplo, se os dois blocos da Figura 19-1 estiverem dentro de 15unidades de engenharia, os valores são considerados iguais

• “Deadband”

- valor que indica a flutuação máxima antes do iFIX atualizar os valores

- a banda morta significa uma faixa mais ou menos ao redor do valor atual

- enquanto o valor se encontrar dentro desta faixa, o iFIX não o atualiza

- o valor só é atualizado quando o valor sai da banda morta

- por exemplo, se os valores da Figura 19-1 estiverem dentro de 5 unidades deengenharia da última atualização, os valores não são atualizados

• “Refresh Rate”

- taxa com que o iFIX atualiza os valores da tela

- o iFIX não ultrapassa o valor desta taxa para atualizar os dados

- por exemplo, os valores da Figura 19-1 não são atualizados mais rápido doque uma vez por segundo

C. Bitmaps

• Em geral, quanto mais objetos existirem na tela, o trabalho de atualização será maior

• Se existem vários objetos estáticos (sem animações) na tela, agrupe estes objetos e osconverta em apenas um bitmap

Page 546: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-6

19.2. Otimização da Memória Virtual do Computador _______________

Through the use of paging files, Windows allocates space on your hard drive for use as if it wereactually memory. This space is known as virtual memory. After you install Windows NT orWindows 2000, be sure to optimize the virtual memory for use with the iFIX. The following listdescribes how to optimize virtual memory in Windows to achieve maximum performance fromiFIX.

To optimize the virtual memory paging file for iFIX in Windows NT and Windows 2000:

8. Double-click the System icon in the Windows NT or Windows 2000 Control Panel.

9. Click on the Performance tab in the Windows NT System Properties dialog box.

In the Windows 2000 System Properties dialog box, click on the Advanced tab, then click onthe Performance Options button.

10. Click the Change button in the Virtual Memory group box.

11. Enter a value equal to three times your physical memory in the Initial Size field.

12. Enter a value equal to two times your physical memory in the Maximum Size field.

13. Click the Set button.

14. Click OK to save the changes and exit the dialog box.

NOTE: If the paging file is set to grow dynamically, your system may experience severeperformance problems during runtime. To ensure optimal performance, be sure that the Initial Sizeand Maximum Size of the paging file are the same so that the paging file does not growdynamically.

Page 547: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-7

Otimização de Telas __________________________________________

Figura 19-1: Exemplo mostrando Tolerância, Banda Morta e Taxa de Atualização

Page 548: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-8

19.2. Otimização da Memória Virtual do Computador _______________

Through the use of paging files, Windows allocates space on your hard drive for use as if it wereactually memory. This space is known as virtual memory. After you install Windows NT orWindows 2000, be sure to optimize the virtual memory for use with the iFIX. The following listdescribes how to optimize virtual memory in Windows to achieve maximum performance fromiFIX.

To optimize the virtual memory paging file for iFIX in Windows NT and Windows 2000:

15. Double-click the System icon in the Windows NT or Windows 2000 Control Panel.

16. Click on the Performance tab in the Windows NT System Properties dialog box.

In the Windows 2000 System Properties dialog box, click on the Advanced tab, then click onthe Performance Options button.

17. Click the Change button in the Virtual Memory group box.

18. Enter a value equal to three times your physical memory in the Initial Size field.

19. Enter a value equal to two times your physical memory in the Maximum Size field.

20. Click the Set button.

21. Click OK to save the changes and exit the dialog box.

NOTE: If the paging file is set to grow dynamically, your system may experience severeperformance problems during runtime. To ensure optimal performance, be sure that the Initial Sizeand Maximum Size of the paging file are the same so that the paging file does not growdynamically.

Page 549: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-9

Otimização de Telas __________________________________________

D. Alarmes Piscando na Tela

• Ao invés de piscar alarmes, crie uma estratégia de cores baseada no valor ou noestado do alarme

• A operação de piscar gasta tempo e processamento

- o objeto que pisca e os objetos ao seu redor precisam ser redesenhados cadavez que a tela é atualizada (dependendo da taxa de atualização)

- o objeto é redesenhado mesmo se as informações não tenham sido alteradas

E. Comando “Resolve Files”

• Informações da tela associadas à base de dados são salvas como parte do arquivo datela

• Quando uma tela é mostrada no modo de execução e a informação sobre a base dedados não está atualizada, o iFIX consulta a base de dados e verifica a definição dotag

- isto consume tempo e atrasa a abertura da tela

• Usando o comando “Resolve Files”, o iFIX não tem mais a necessidade de consultara base de dados

- após o uso deste comando, as telas são abertas mais rapidamente no modo deexecução

• O comando “Resolve Files” funciona para arquivos de tela e de schedule e pode seracessado no WorkSpace através da barra de ferramentas “Utilities”

- veja a Figura 19-2

F. Outras Considerações

• Utilize cores somente quando necessário

- o uso de muitas cores ou uma estratégia ineficiente de cores pode prejudicar oprojeto da tela

• Ao invés de criar telas para monitorar pontos, use o Scheduler

- o uso de telas para monitorar o valor de um ponto pode ser ineficiente

◊ estes programas são executados continuamente e nunca terminam

- ao invés de executar uma malha em VBA, o Scheduler espera um eventoocorrer antes de disparar um ponto

Page 550: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-10

19.2. Otimização da Memória Virtual do Computador _______________

Through the use of paging files, Windows allocates space on your hard drive for use as if it wereactually memory. This space is known as virtual memory. After you install Windows NT orWindows 2000, be sure to optimize the virtual memory for use with the iFIX. The following listdescribes how to optimize virtual memory in Windows to achieve maximum performance fromiFIX.

To optimize the virtual memory paging file for iFIX in Windows NT and Windows 2000:

22. Double-click the System icon in the Windows NT or Windows 2000 Control Panel.

23. Click on the Performance tab in the Windows NT System Properties dialog box.

In the Windows 2000 System Properties dialog box, click on the Advanced tab, then click onthe Performance Options button.

24. Click the Change button in the Virtual Memory group box.

25. Enter a value equal to three times your physical memory in the Initial Size field.

26. Enter a value equal to two times your physical memory in the Maximum Size field.

27. Click the Set button.

28. Click OK to save the changes and exit the dialog box.

NOTE: If the paging file is set to grow dynamically, your system may experience severeperformance problems during runtime. To ensure optimal performance, be sure that the Initial Sizeand Maximum Size of the paging file are the same so that the paging file does not growdynamically.

Page 551: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-11

Otimização de Telas __________________________________________

Figura 19-2: Usando o Comando “Resolve Files”

Page 552: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-12

19.4. Driver e Otimização da Base de Dados ______________________

A. Endereçamento do “Poll Record”

• Configure um endereçamento contínuo nos “poll records”

• Maximize o número de registros por linha

• O manual de cada driver traz o tamanho máximo que cada “poll record” suporta

• Em geral, a consulta ao driver (polling) deve ser duas vezes mais rápida que o tempode varredura do bloco da base de dados (scan time)

• Consulte o “poll record” apenas quando for realmente necessário

B. Base de Dados do Processo

• Reduza o trabalho do programa SAC (Scan, Alarm & Control)

• Se o driver suportar, utilize sempre que possível o processamento por exceção

• Configure os tempos de varredura (scan times) o maior possível

• Utilize processamento do tipo “on shot”

• Utilize a defasagem no tempo de varredura (phasing)

• Use quando possível os tags de registro analógico e digital (AR e DR) ao invés detags de entrada analógica e digital (AI e DI)

Page 553: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-13

19.4. Driver e Otimização da Base de Dados_____________________

DIT (TabelaImagem do Driver)

Link

I/ODriver

do Processo Hardware

PDB(Base de Dados

do Processo)

SAC

AI

CA

DI

TR AO

DO

AI

Figura 19-3: Arquitetura do Sistema FIX

Page 554: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-14

19.4. Driver e Otimização da Base de Dados _____________________

C. Defasagem do Tempo de Varredura (“Phasing”)

• Defasa o processamento do bloco a partir da definição do seu tempo de varredura

• Ferramenta muito útil de otimização

• Usado com varredura baseada em tempo (ver Figura 19-4)

“Scan Time” “Phase Time” pode ser....

Horas Horas:Minutos

Minutos Minutos:Segundos

Segundos Segundos

Sub-segundos Sub-segundos

Figura 19-4: Formatos do Tempo de Defasagem

Page 555: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-15

19.4. Driver e Otimização da Base de Dados_____________________

0 2 4 6 8 10 12 14 16 18

CP

UU

s o

Tempo do SistemaBloco 1 Scan Time = 5

Bloco 2 Scan Time = 5

Bloco 3 Scan Time = 5

da

Figura 19-5: Blocos Sem Defasagem (“Phasing”)

0 2 4 6 8 10 12 14 16 18

Uso

da

CP

U

Tempo do Sistema

Bloco 1 Scan Time = 5

Bloco 2 Scan Time = 5

Bloco 3 Scan Time = 5

Phase At = 0

Phase At = 1

Phase At = 2

Figura 19-6: Blocos Com Defasagem (“Phasing”)

Page 556: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-16

19.5. Diagnóstico de Falha de Driver _____________________________

A. “Mission Control”

• Aplicação usada para monitorar as seguintes tarefas do FIX:

- Controle I/O - Gerenciador de Alarme Automático

- Coleta Histórica - Sincronismos de Alarmes

- Tarefa SQL - Alarmes via ODBC

- Processamento do SAC

B. Guia “I/O Control”

• Utilitário que mostra o estado do driver

• Mostra as estatísticas e erros de comunicação do(s) driver(s)

• Visão geral dos campos do controle I/O:

- “Transmitted” – número de mensagens enviadas ao hardware

- “Received” – número de respostas recebidas do hardware

- “Timed Out” – número de falhas ocorridas

- “Retried” – número de mensagens de tentativas que o driver envia

- “Protocol” – número erros de protocolo

◊ mensagem não está de acordo com a linguagem do hardware

- “Break” – número de erros de parada

◊ os dados são retidos por um tempo maior que o de transmissão

- “Frame” – número de erros de “framing”

◊ mensagem de entrada não tem o bit de parada correto

- “Parity” – número de erros de paridade

◊ bit de paridade da mensagem é diferente que o do hardware

- “Overrun” – número de erros de falha

◊ o caractere do buffer é sobrescrito antes de poder ser removido

- “General” – número de erros que não estão nas categorias anteriores

- “DRVSTA - DRVSTH” – código específico de erro do driver

Page 557: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-17

19.5. Diagnóstico de Falha de Driver ___________________________

Figura 19-7: Mission Control – I/O Control

Page 558: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-18

19.6. Diagnóstico de Falha de Rede______________________________

A. Tela “Network Status Display”

• Tela padrão que vem com o iFIX

• Usada para testar as conexões entre todos os nós listados no SCU

- veja a Figura 19-8

B. NBTEST

• Ferramenta que testa a comunicação entre dois nós FIX via NetBIOS

• O iFIX não precisa estar rodando para executar o teste

• Um nó funciona como servidor de dados e outro como cliente

• Sintaxe:

- Cliente: NBTEST /C

- Servidor: NBTEST /S

• Se estiver usando o protocolo de rede TCP/IP, use o teste TCPTEST ao invés deste

Page 559: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-19

19.6. Diagnóstico de Falha de Rede ____________________________

Figura 19-8: Tela “Network Status Display”

Page 560: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-20

19.7. Sugestões para Diagnóstico de Falhas ______________________

A. Histórico de Alarme

• O objeto Sumário de Alarmes mostra uma lista em tempo real do alarmes ativos, masnão mantém um histórico dos alarmes ocorridos

• Uma forma de visualizar um pequeno histórico dos alarmes recebidos é através doprograma Alarm History (ALMHIS.EXE)

- a Figura 19-9 mostra um exemplo

• Este programa mostra um histórico dos últimos 200 alarmes e mensagens ocorridosno nó local

- configure o número de alarmes no SCU

Page 561: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 19-21

19.7. Sugestões para Diagnóstico de Falhas_____________________

Figura 19-9: Programa ALMHIS.EXE (Alarm History)

Page 562: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 19-22

19.7. Sugestões para Diagnóstico de Falhas _____________________

1. As falhas de driver são muito comuns por causa de falha de conexão dos cabos de rede.

2. Existe um fórum de Suporte Técnico na Internet que permite a troca de informações comtécnicos da Intellution e com usuários de iFIX do mundo inteiro 24 horas por dia. Umengenheiro de suporte acompanha este fórum a cada 15 minutos durante sua jornadanormal de trabalho.

3. Utilize a tecla <F1> para obter ajuda geral sobre determinado tópico ou a combinaçãodas teclas <Shift><F1> para obter ajuda mais específica sobre o campo específico.

4. Não esqueça de ler o Release Note da versão do seu iFIX. Ele oferece informaçõesadicionais sobre a versão do seu iFIX que não são disponíveis no Eletronic Books.

5. Use o comando Verify do Database Manager para verificar se existem erros nas cadeiasde blocos na base de dados.

6. Escolha um tipo de fonte de leitura fácil, tal como a “Times New Roman” ou a“Courier”. Evite utilizar um estilo de fonte de difícil leitura, tais como fontes grifadas ouem itálico.

7. O iFIX vem com uma base de dados padrão chamada EMPTY.PDB. Esta base de dadosé vazia e somente para leitura. Carregando esta base de dados e salvando-a com umnome diferente, pode-se criar uma nova base de dados de trabalho.

8. O “Startup Log” contém uma lista das tarefas inicializadas com sucesso durante ainicialização do iFIX (C:\DYNAMICS\LOCAL\STARTUP.LOG).

9. Pode-se adicionar pastas na árvore do sistema através da edição do arquivoSystemTree.CSV. Consulte o Eletronic Books para maiores informações.

10. Consulte também o Eletronic Books para obter a lista de códigos de erros do iFIX.

Page 563: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 20-1

20. Segurança ______________________________________________

Capítulo 20

Segurança

Page 564: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 20-2

20. Segurança ______________________________________________

Objetivos do Capítulo

Antes de instalar o iFIX, deve-se estabelecer o nível de segurança necessário para proteger oprocesso. O sistema de segurança é um sistema baseado em usuário. Este capítulo examina oprograma de configuração de segurança e as etapas necessárias para habilitar o sistema desegurança.

O capítulo está organizado nos seguintes tópicos:

• Personalizando as áreas de segurança

• Contas de grupos

• Contas de usuário

• Conexão automática de usuários

• Habilitando a segurança

• Métodos de conexão e desconexão

Page 565: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 20-3

20.1. Estratégia de Segurança __________________________________

A. Para implementar a estratégia de segurança:

1. Nomeie as áreas de segurança

2. Crie as contas de grupos e de usuários

3. Defina a configuração de conexão automática

- apenas se desejar que um operador seja conectado automaticamente no iFIX

4. Copie os arquivos de segurança para todos os nós

- se estiver usando um servidor de arquivos, copie os arquivos de segurançapara o servidor de arquivos

5. Especifique um caminho local e de backup para segurança em cada nó

- se estiver usando um servidor de arquivos, entre com o caminho do servidorde arquivos como caminho de segurança e entre com um caminho local comocaminho de backup

6. Habilite segurança em todos os nós e salve a configuração de segurança

7. Se habilitar a proteção do ambiente, inicie o WorkSpace e configure as preferênciasdo ambiente de execução (run-time environment preferences) para cada cliente Vista

B. Notas Adicionais

• Quando terminar, teste a configuração de cada usuário verificando seus acessos àscaracterísticas da aplicação e às áreas de segurança

• Além disso, tente acessar as características e áreas de segurança não disponíveis parao usuário para verificar realmente se o acesso é negado

Page 566: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 20-4

20.2. Configuração da Segurança _______________________________

A. Notas

• Toda configuração de segurança é feita pelo programa “Security Configuration”

- Este programa é localizado dentro do SCU

- ver Figura 20-2

• O iFIX deve estar sendo executado para configurar a segurança do sistema

B. Através do programa “Security Configuration” pode-se:

• Habilitar e desabilitar o sistema de segurança

• Criar e modificar contas de usuários

• Restringir o acesso do usuário a programas, ações com programas e telas

• Fornecer proteção de escrita nos tags

User Configuration (configuração do usuário)

Group Configuration (configuração do grupo)

Security Configuration (configuração da segurança)

Auto Login Configuration (configuração de conexão automática)

Security Area Configuration (configuração das áreas de segurança)

Figura 20-1: Barra de Ferramentas do Programa de Configuração de Segurança

Page 567: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 20-5

20.2. Configuração da Segurança _____________________________

Figura 20-2: Programa de Configuração de Segurança

Page 568: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 20-6

20.3. Áreas de Segurança ______________________________________

A. Notas

• Uma área de segurança é uma divisão física ou funcional da planta

• As áreas de segurança podem ser:

- hardware do processo (tal como bombas ou fornos)

- utilidades (tal como óleo, água ou vapor)

- funções de manutenção

• Os nomes podem ter até 20 caracteres alfa-numéricos

• As 16 primeiras áreas são pré-definidas de A-P, mas podem ser alteradas

• Pode-se definir até 254 áreas de segurança

B. Restrição de Segurança

• As áreas de segurança restringem acesso a:

- blocos da base de dados

- telas

- receitas

• Ver Figura 20-4

C. Mensagens de Segurança

• Se algum usuário tentar acessar um bloco ilegalmente, a segurança gera umamensagem

• Esta mensagem contém o login do usuário que está tentando modificar o bloco

• O iFIX envia esta mensagem para o audit trail de segurança e para todos os destinosde alarme habilitados, exceto para o Sumário de Alarme

- será visto mais sobre esse assunto ainda neste capítulo

Page 569: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 20-7

20.3. Áreas de Segurança___________________________________

Figura 20-3: Nomeando as Áreas de Segurança

Quando uma área desegurança éassociada a…

Ela restringe…

Bloco da base dedados

Acesso à escrita. O acesso de leitura dos blocoscontinua disponível na tela.

Tela Acesso à leitura do arquivo.

Receita Acesso à leitura do arquivo.

Figura 20-4: Restrições das Áreas de Segurança

Page 570: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 20-8

20.4. Perfis de Grupo __________________________________________

A. Notas

• Uma conta de grupo especifica o acesso às tarefas mais usadas para seremcompartilhadas entre dois ou mais usuários

• Defina uma conta de grupo para cada usuário na tela de configuração do usuário

• Os usuários definidos para um grupo terão acesso a todas as características e áreas desegurança definidas para o grupo

B. Implementando Contas de Grupo

• Use contas de grupos para atribuir a maioria dos privilégios para os usuários

• Utilize as contas de grupos já pré-definidas caso não queira elaborar uma estratégiamais elaborada

- estas contas oferecem uma aproximação simples de implementação desegurança

- estas contas de grupo definem regras funcionais em uma área de produção

• Use o exemplo da Figura 20-5 como modelo

Para criar uma contade grupo para…

Especifique as aplicações…

Projetistas de base dedados

Database Manager, Database Reload, Database Save, eDatabase Add/Delete.

Projetistas de telas WorkSpace Configure, WorkSpace, Exit from Runmode, Operator Task Switching, Database Manager,Database Save, Database Reload e Database Add/Delete.

Projetistas de receitas GUI Recipe Builder Development Window, GUI RecipeDownload, GUI Recipe Save, GUI Recipe Upload e GUIRecipe Text Output.

Supervisores WorkSpace, Exit from Run mode e Operator TaskSwitching.

Figura 20-5: Exemplos de Perfis de Grupo

Page 571: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 20-9

20.4. Perfis de Grupo________________________________________

Figura 20-6: Contas de Grupos

Figura 20-7: Perfil do Grupo

Page 572: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 20-10

20.5. Contas de Usuário________________________________________

A. Notas

• Uma conta de usuário define os privilégios para uma pessoa

• A identificação de cada conta de usuário é feita por um nome de login e uma senhaopcional

• Ao projetar uma conta de usuário, inclua o nome completo do usuário, nome de logine senha

- se usar a segurança do Windows NT, inclua os domínios da rede

B. Especificando os Direitos para as Contas de Grupo

• Atribua privilégios para contas de grupos sempre que possível

• Se um operador precisar de privilégios adicionais, a característica específica e asáreas de segurança podem ser adicionadas na conta de usuário

• Se vários operadores precisarem dos mesmos privilégios, crie outra conta de grupo eassocie a estes operadores

C. Login Timeout (Tempo de Conexão)

• Limita o tempo de conexão de um operador configurando o login timeout na conta dousuário

- quando um operador tenta acessar uma área após o tempo ter expirado, o iFIXdesconecta o operador

- se o intervalo de tempo expirar enquanto um operador estiver executando umaoperação, o iFIX desabilita o comando de salvar a alteração

• Com esta característica, o iFIX pode automaticamente desconectar operadores queesquecem de se desconectar no final do seu turno

- por exemplo se o login timeout for igual a 8:00:00, o operador se mantémconectado por apenas oito horas

- quando o próximo turno começar e um novo operador executar um programa,o iFIX desconecta o operador anterior

- isto força o novo operador a se conectar com sua própria conta

- isto evita acesso não autorizado a aplicações e áreas de segurança disponíveispara o operador do turno anterior

Page 573: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 20-11

20.5. Contas de Usuário _____________________________________

Figura 20-8: Contas de Usuário

Figura 20-9: Perfil do Usuário

Page 574: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 20-12

20.6. Conexão Automática______________________________________

A. Notas

• O “Auto Login” especifica um usuário para se conectar automaticamente quando osistema iniciar

• Se um servidor de arquivos NÃO estiver sendo usado, apenas os nós locais poderãoser configurados

• Esta informação é armazenada no arquivo de auto login chamado <nome do nó>.aut

• Observação:

- o campo System User não é usado – qualquer entrada será ignorada

Page 575: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 20-13

20.6. Conexão Automática ___________________________________

Figura 20-10: Caixa de Diálogo de Conexão Automática (Auto Login)

Figura 20-11: Configuração de Conexão Automática

Page 576: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 20-14

20.7. Configuração da Segurança _______________________________

A. Diretório da Segurança

• Os arquivos de segurança residem em um diretório especificado pelo security path.Por padrão, o programa “Security Configuration” configura este caminho para odiretório “Local”, mas pode ser alterado para qualquer outro diretório da máquina ouda rede

B. Usando Segurança Sem um Servidor de Arquivos

• Todos os arquivos de segurança e o programa “Security Configuration” sãoarmazenados em cada computador local

• Uma cópia backup dos arquivos de segurança é armazenada no diretório especificadopelo backup path

- este caminho é usado quando o iFIX não encontra o security path

• Uma vez configurada a segurança e habilitada em um computador, a configuração dasegurança deve ser copiada para todos os nós

- a forma mais simples de se fazer isso é copiar os arquivos de segurança paratodos os computadores da rede

• Certifique-se também de habilitar a segurança em todos os nós

C. Usando Segurança Com um Servidor de Arquivos

• Use um servidor de arquivo para compartilhar os arquivos de segurança

- isto elimina a necessidade de copiá-los para vários computadores

- a forma mais simples de compartilhar seus arquivos de segurança é digitar umcaminho de servidor de arquivo no security path do nó local

- quando isto é feito, o programa “Security Configuration” copia os arquivos desegurança para o servidor de arquivos

• A configuração da segurança também pode ser compartilhada executando a aplicaçãoa partir do servidor de arquivos

- compartilhando este programa, elimina-se a possibilidade de algunscomputadores terem sua segurança habilitada e outros não

- uma vez habilitada segurança, ela estará habilitada para todos oscomputadores

• Para compartilhar o programa “Security Configuration”, digite o caminho do servidorde arquivos como caminho “Base” do nó local

• Uma vez feito isso, toda aplicação iFIX poderá ser executada no servidor de arquivoa partir do seu nó local

Page 577: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 20-15

20.7. Configuração da Segurança ______________________________

Figura 20-12: Configuração de Segurança

Page 578: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 20-16

20.8. Conectando-se na Segurança ______________________________

A. Notas

• O operador pode se conectar no iFIX de forma manual ou automática

• Ao se conectar, o operador se identifica como usuário do iFIX e ganha acesso a telas,receitas e aplicações que lhe são autorizadas

B. Conexão e Desconexão Manual

• O operador pode se conectar no iFIX manualmente usando o programa “Login”

• Quando o programa “Login” inicia, ele permite o operador a entrar com o seu nomede login e sua senha

- ver Figura 20-13

• O programa “Login” oferece ao operador três chances para entrar com login e senhacorretamente

- após a terceira tentativa, o programa “Login” é fechado

- o operador pode tentar se conectar novamente através do programa “Login”

• Se a segurança do Windows NT estiver habilitada, o operador pode alterar sua senhaenquanto estiver conectado

- as senhas do Windows NT são sensíveis a letras maiúsculas e minúsculas

• NOTA:

- qualquer tentativa de conexão sem sucesso gera alarme para os destinos dealarmes configurados no computador local

- a tentativa de conexão também é gravada no audit trail da segurança

C. Desconexão Manual

• O operador pode se desconectar do iFIX saindo de todas as aplicações protegidas,iniciando o programa de “Login” e selecionando o botão Logout

Page 579: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 20-17

20.8. Conectando-se na Segurança _____________________________

Figura 20-13: Caixa de Diálogo de Conexão

D. Trabalhando com o Visual Basic for Applications

• Programas podem ser escritos em VBA para fornecerem acesso e informações desegurança

• Exemplos:

- um programa para mostrar o operador atualmente conectado e seus direitos desegurança

- um programa que permite o operador se conectar e desconectar do iFIX

• Para aprender sobre métodos específicos do VBA de acesso ao sistema de segurança,refira-se ao help online “iFIX Automation Interface”

Page 580: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 20-18

20.9. “Audit Trail” _____________________________________________

A. Notas

• O sistema de segurança cria um arquivo texto com as atividades de conexão

• Este arquivo fica localizado no subdiretório de alarme

• A convenção de seu nome é YYMMDD.LOG

- este arquivo reside no alarm path

• O programa “Login” registra cada tentativa de conexão no “audit trail”

• Analisando-se o “audit trail”, pode-se obter as seguintes informações:

- quem se conectou ou desconectou

- se houve alguma falha de conexão

- se algum operador tentou acessar uma área de segurança ou uma aplicação daqual não possui direito de acesso

- usuário que excedeu seu tempo máximo de conexão

Page 581: Fundamentos e Programacao iFix 2[1].6

Apostila de Treinamento

Copyright © 2002, Intellution, Inc. 20-19

20.9. “Audit Trail_____________________________________________

7/19/99 19:33:37 NODE8 SECURITY VIOLATION: access to APPLICATION FEATURE

7/19/99 19:33:38 NODE8 security configuration updated

7/19/99 19:33:39 NODE8 SECURITY VIOLATION: access to APPLICATION FEATURESystem User Login

7/19/99 19:34:19 NODE8 SECURITY VIOLATION: access to APPLICATION FEATUREDatabase Manager

7/19/99 19:34:27 NODE8 SECURITY VIOLATION: access to APPLICATION FEATURESystem User Login

7/19/99 19:34:31 CHUCK SMITH logged in as Application User

7/19/99 19:34:35 NODE8 SECURITY VIOLATION: CHUCK SMITH access toAPPLICATION FEATURE Database Manager

7/19/99 19:34:40 NODE8 SECURITY VIOLATION: CHUCK SMITH access toAPPLICATION FEATURE System User Login

7/19/99 19:34:42 CHUCK SMITH logged out as Application User

7/19/99 19:34:46 SYSTEM ADMINISTRATOR logged in as Application User

7/19/99 19:35:21 SYSTEM ADMINISTRATOR logged out as Application User

7/19/99 19:35:26 GUEST logged in as Application User

7/19/99 19:35:29 NODE8 SECURITY VIOLATION: GUEST access to APPLICATIONFEATURE Database Manager

7/19/99 19:35:33 NODE8 SECURITY VIOLATION: GUEST access to APPLICATIONFEATURE Historical Trend Assign

7/19/99 19:36:10 NODE8 SECURITY VIOLATION: GUEST access to APPLICATIONFEATURE Security Configuration

7/19/99 19:36:17 GUEST logged out as Application User

7/19/99 19:36:20 SYSTEM ADMINISTRATOR logged in as Application User

Figura 20-14: Exemplo de Arquivo de Conexão de Segurança

Page 582: Fundamentos e Programacao iFix 2[1].6

Fundamentos do iFIX

Copyright © 2002, Intellution, Inc. 20-20

20.10. Questões de Revisão ___________________________________

1. Para que serve as contas de grupo?

2. Quais são as vantagens/desvantagens de usar um servidor de arquivos de segurança?

3. Para que serve o tempo de conexão (login timeout)?

4. Como as áreas de segurança são usadas no iFIX?

5. Para que serve a conexão automática (automatic login)?