Escolar Documentos
Profissional Documentos
Cultura Documentos
Manual de treinamento
Revisão E
Fevereiro de 2006
Número de peça 05-2039
© 2005 por Invensys Systems, Inc. Todos os direitos reservados. Nenhuma parte deste documento pode ser
reproduzida, armazenada ou introduzida em um sistema de recuperação, ou transmitida em qualquer
formulário ou por qualquer meio (eletrônico, mecânico, fotocópia, registro ou semelhante), ou para qualquer
fim, sem a permissão expressa escrita da Invensys Systems, Inc. Exceto onde indicado, as empresas,
organizações, produtos, nomes de domínio, endereços de e-mail, logos, pessoas, locais e eventos descritos
neste são fictícios e não há intenção de fazer associação ou de se presumir associação com empresas,
organizações, produtos, nome de domínio, endereço de e-mail, logo, pessoa, local ou evento real.
Invensys e o autor não se responsabilizam por erros ou omissões e nenhuma responsabilidade é assumida
por danos resultantes do uso de informações contidas aqui. O uso do software Invensys descrito neste
documento está sujeito aos termos da licença Wonderware Corporation ou Invensys Systems, Inc.
aplicáveis. Estes termos incluem cláusulas que limitam seus direitos como restrições de uso, termos de
isenção de responsabilidade de garantias e limitações de responsabilidade da Wonderware e da Invensys.
Uma cópia da licença aplicável estará exibida na instalação inicial do software. Se uma cópia da licença não
é exibida ou se precisar de uma cópia adicional da licença, você poderá obter uma da unidade de negócios
Wonderware da Invensys mediante solicitação através do telefone 1.949.727.3200 ou enviando um e-mail
para support@wonderware.com.
Índice
Módulo 1 Introdução....................................................................................1-1
Seção 1 – Introdução ao curso .......................................................................... 1-3
Seção 2 – Introdução ao InTouch.................................................................... 1-11
Treinamento Wonderware
Módulo 1
Introdução
Seção 1 – Introdução ao curso 1-3
Seção 2 – Introdução ao InTouch 1-13
1-2 Módulo 1 – Introdução
Objetivos do módulo
z Estabelecer o conteúdo do curso
z Lançar o InTouch®
z Criar um novo aplicativo InTouch
z Entender os recursos e as ferramentas de Gerenciador de Aplicação
Treinamento Wonderware
Seção 1 – Introdução ao curso 1-3
Objetivos da seção
z Descrever os objetivos do conteúdo completo do curso
z Destacar os laboratórios deste curso
Esta seção irá familiarizá-lo com os objetivos e o conteúdo do curso Fundamentos do curso de
desenvolvimento de aplicativos InTouch. Descreve também os produtos Wonderware e como o
InTouch atende as especificações de interface homem-máquina para visualização.
Descrição do curso
O InTouch® HMI 9.5 é orientado pelo instrutor com duração de 5 dias com o objetivo de
apresentar o recurso básico do módulo de visualização Wonderware®.
O objeto deste curso é oferecer o conhecimento em InTouch® IHM necessário para desenvolver
uma Interface Homem Máquina (IHM) para seu ambiente específico de chão de fábrica com
elementos básicos InTouch® IHM. Este sistema IHM será desenvolvido usando muitos dos
recursos/funcionalidades do software InTouch® IHM como WindowMaker, Tagnames, Animation,
Cells e Symbols, SmartSymbols, Scripting, Alarms, RealTime e Historical Trending, Advance Tag
Functionality, Security, Application Backup e muito mais.
Objetivos do curso
Ao final deste laboratório, você:
z Usará o WindowMaker para criar janelas e manipular objetos
z Criará e importará tags e usará o Dicionário Tagname
z Definirá links de animação e gerará SmartSymbols
z Usará o editor de scripting para criar QuickScripts
z Adicionará a funcionalidade de alarme ao aplicativo
z Verá os dados de usuário em tempo real e recuperará os dados de arquivos históricos
z Estabelecerá comunicação com drivers, além de configurar e localizar falhas em
Servidores de E/S
z Implementará segurança InTouch® HMI em um aplicativo
z Fará backup de um aplicativo
z Desenvolverá um aplicativo de Interface Homem Máquina (IHM) para seu ambiente de
chão-de-fábrica especifico usando elementos básicos InTouch®
Público
Operadores de chão-de-fábrica, gerentes, administradores de sistema, integradores de sistema e
outros indivíduos que precisam usar o InTouch® HMI em seus processos de manufatura.
Pré-requisitos
Os pré-requisitos deste curso são:
z Pelo menos 8 horas de experiência prática com o InTouch® HMI
z Microsoft Windows
z Experiência na indústria de manufatura
Conteúdo
Módulo 1 Introdução
Seção 1 – Introdução ao curso
Esta seção familiarizará você com os objetivos e o conteúdo para o InTouch Fundamentos do
cursos de desenvolvimento de aplicativos. Ela também descreve os produtos Wonderware e
como o InTouch atende as especificações de interface homem-máquina para visualização.
Seção 2 – Introdução ao InTouch
Esta seção detalha como lançar o InTouch e como usar os três componentes principais:
Application Manager, WindowMaker e WindowViewer.
Treinamento Wonderware
Seção 1 – Introdução ao curso 1-5
Módulo 6 - Alarmes
Seção 1 – Alarmes e eventos
Esta seção explica e define os diferentes tipos de alarmes e de eventos e como adicionar a
funcionalidade de alarme aos aplicativos.
Seção 2 – O objeto alarme distribuído
O objeto de alarme distribuído exibe alarmes gerados localmente e remotamente. Os objetos
de exibição desta tela incluem: barras de rolagem incorporadas, colunas de exibição
dimensionáveis, seleção múltipla de alarmes, barra de status de atualização, barra de status
de consulta, menu com o botão direito do mouse sensível ao contexto e cores de tela de
alarme baseadas na prioridade do alarme .
Laboratório 6 – Criação de alarmes e eventos
Módulo 10 - Segurança
Seção 1 – Modelos de segurança
Este módulo fornece as características gerais de três modelos de segurança disponíveis no
desenvolvedor InTouch. O enfoque é no modelo de segurança baseado em InTouch.
Laboratório 13 – Definição de segurança
Seção 2 – Proteção da aplicação
Esta seção aborda a personalização dos ambientes em Runtime e de desenvolvimento para
proteger o aplicativo. Ela também explica como iniciar automaticamente um aplicativo.
Treinamento Wonderware
Seção 1 – Introdução ao curso 1-7
Produtos Wonderware
Especificações de sistema
Para executar o InTouch, recomendamos o hardware e software a seguir
z Qualquer microcomputador com um Pentium III com um mínimo de 700 MHz ou um
processador mais potente para um sistema de nó único; recomendado 1.2 GHz ou mais
potente
z 2GB de espaço no disco rígido
z Mínimo de 256MB de memória de acesso randômico (RAM); recomendado 512 MB RAM
z Adaptador de visor SVGA com 2MB de RAM recomendado
z Dispositivo de indicação, como mouse, trackball ou tela touch screen,
z Adaptador de rede deve estar instalado
z Microsoft® Windows 2000 Professional com Service Pack 3 ou mais recente OU Windows
XP™ com Service Pack 1 ou mais recente ou Windows 2003 Server com Service Pack 1
ou mais recente
Obs.: As versões mais antigas do aplicativo InTouch precisam ser convertidas para InTouch 9.5.
Após o processo de conversão, estes aplicativos não mais operarão com versões InTouch
anteriores a 9.5.
Obs.: Seu Guia do administrador de sistema FactorySuite online fornece instruções de instalação
detalhadas para a maioria dos produtos incluídos no pacote de software FactorySuite.
Treinamento Wonderware
Seção 1 – Introdução ao curso 1-9
O InTouch usa Microsoft SQL Server™ Standard Edition como seu banco de dados de alarme .
Se Microsoft SQL Server 2000 é instalado no mesmo sistema no qual o InTouch está sendo
instalado, o programa de configuração do InTouch pode solicitar a reinicialização do sistema
durante o procedimento de instalação. É preciso reiniciar o sistema porque o Microsoft SQL
Server 2000 instala o MDAC™ versão 2.6, mas o InTouch precisa do MDAC versão 2.6 Service
Pack nível 2 (SP2). O programa de configuração InTouch instalará este Service Pack durante a
instalação. Uma vez que o sistema seja reiniciado, a instalação do InTouch será reinicializada
automaticamente.
Devido a esta reinicialização, o Nome do Usuário e a Senha da conta do nó de comunicação
desativado que foram inseridos antes da reinicialização devem ser reinseridos após a retomada
da instalação do InTouch. Isto aplica-se apenas se estiver instalando o InTouch no sistema
operacional Microsoft Windows 2000 .
Se o Microsoft SQL Server 2000 SP2, que instala o MDAC versão 2.6 SP2, estiver instalado em
seu sistema antes da instalação do InTouch ou se o Microsoft SQL Server 2000 não estiver
instalado em seu sistema, o programa de configuração InTouch não solicitará o reinício durante a
instalação.
Se o InTouch 7.11 estiver instalado em seu sistema e você tiver o Alarm DB Logger configurado
para operar como um serviço, você deve mudar o modo para manual antes de desinstalar o
InTouch e reiniciar seu sistema. Se desinstalar o InTouch 7.11 com o Alarm DB Logger no modo
automático, a instalação do InTouch 9.5 não será concluída corretamente.
Licença FactorySuite
Suas informações da licença do sistema FactorySuite podem ser visualizadas através do utilitário
de visualização da licença. Este utilitário é lançado a partir do WindowMaker ao selecionar Help /
About do menu principal.
Suporte Técnico
O Suporte Técnico Wonderware oferece uma variedade de opções de suporte para responder
qualquer dúvida sobre os produtos Wonderware e sua implementação.
Antes de entrar em contato com o suporte técnico, consulte o capítulo relevante neste manual de
treinamento ou seu Guia do usuário InTouch para verificar uma possível solução. Se achar
necessário entrar em contato com o suporte técnico para assistência, tenha em mãos as
informações a seguir.
z A versão do InTouch que está em execução
z O tipo e a versão do sistema operacional que está usando. Por exemplo, Windows 2000,
Windows XP ou Windows 2003 Server
z Os termos exatos das mensagens de erro de sistema encontrados
z Qualquer lista de saída relevante do Wonderware Logger, do Microsoft Event Viewer ou
qualquer outro aplicativo de diagnóstico
z Detalhes das tentativas que fez para solucionar o(s) problema(s) e os resultados obtidos
z Detalhes sobre como recriar o problema
z Se esta for uma dúvida em andamento, o número de caso do Suporte Técnico
Wonderware atribuído
Para mais informações sobre o Suporte Técnico, consulte seu Guia administrador do sistema
FactorySuite online.
Appendix E deste manual contém Technotes que se referem ao produto InTouch. Para as mais
recentes Technotes, consulte a página www.wonderware.com/support .
Convenções
Este curso inclui conteúdo orientado pelo instrutor além dos laboratórios aplicados regularmente.
As etapas orientadas pelo instrutor têm por objetivo serem explicativas e devem prepará-lo para o
laboratório que será realizado em seguida. As etapas não devem duplicar ou estar em conflito
com o conteúdo do laboratório aplicado.
Etapas orientadas pelo instrutor são indicadas por letras (a, b, c).
As imagens de telas deste manual foram extraídas de uma máquina que executa o Sistema
Operacional Microsoft Windows 2003 Server com temas XP acionados e com resolução 1024 x
768.
Treinamento Wonderware
Seção 1 – Introdução ao curso 1-11
Treinamento Wonderware
Seção 2 – Introdução ao InTouch 1-13
Objetivos da seção
z Lançar o InTouch®
z Criar um novo aplicativo InTouch
z Entender os recursos e as ferramentas do Application Manager
Esta seção detalha como lançar o InTouch e como usar os três componentes principais:
Application Manager, WindowMaker e WindowViewer.
Introdução
Wonderware® InTouch® é o modo mais rápido e mais fácil de criar aplicações IHM para sistemas
operacionais Microsoft® Windows 2000, Windows XP e Windows 2003. Os aplicativos InTouch
são usados no mundo inteiro em uma diversidade de mercados verticais incluindo processamento
de alimentos, semicondutores, petróleo e gás, automotivo, produtos químicos, farmacêutico,
papel e celulose, transporte, utilidades e muito mais.
Ao usar o InTouch, é possível criar aplicações potentes, equipadas com diversos recursos que
usam recursos chaves do Microsoft Windows, incluindo controles ActiveX®, OLE, gráficos, rede e
muito mais.
O InTouch pode também ser ampliado para adicionar controles personalizados ActiveX,
assistentes, objetos genéricos e criar extensões InTouch QuickScript.
Componentes InTouch
O InTouch é formado por três componentes principais: Application Manager, WindowMaker e
WindowViewer.
Obs.: As figuras a seguir são os ícones da barra de ferramentas usados para abrir os
componentes InTouch.
Botão Descrição
Executar o comando New no menu File para criar um novo aplicativo.
Executar o comando DBLoad no menu File para executar o utilitário DBLoad. Este utilitário é
usado para carregar um arquivo de entrada de Tagname Dictionary.
Executar o comando DBDump no menu File para executar o programa utilitário DBDump
Este utilitário é usado para extrair um Tagname Dictionary de um aplicativo.
Executar o comando Large Icons no menu View para exibir os ícones grandes dos
aplicativos listados.
Executar o comando Small Icons no menu View para exibir ícones pequenos dos aplicativos
listados.
Executar o comando List no menu View para alterar a caixa de diálogo para listar o modo de
visualização.
Executar o comando Details no menu View para alterar a caixa de diálogo para listar o modo
de visualização de detalhes.
Treinamento Wonderware
Seção 2 – Introdução ao InTouch 1-15
b. Clique em Next.
c. Para especificar um diretório diferente, insira o caminho para o diretório na caixa de entrada
ou clique em Browse para localizar o diretório.
d. Clique em Finish.
O Application Manager pesquisa seu computador para verificar qualquer aplicativo InTouch
existente. Os links do aplicativo são exibidos através de um ícone que contém o nome do
aplicativo. Outras informações são exibidas em colunas.
Por exemplo:
Treinamento Wonderware
Seção 2 – Introdução ao InTouch 1-17
d. Clique em Next.
A janela Create New Application é exibida, permitindo a você definir o diretório no qual seu
aplicativo será criado:
Treinamento Wonderware
Seção 2 – Introdução ao InTouch 1-19
g. Insira um nome único para o novo aplicativo. Este nome será exibido quando o aplicativo é
listado na janela InTouch Application Manager .
h. Na caixa Description, insira uma descrição do aplicativo.
i. Clique em Finish.
A janela InTouch - Application Manager é reexibida mostrando um ícone, o caminho e a
Versão, Modo e Descrição do aplicativo:
Obs.: Quando o aplicativo é exibido pela primeira vez no Application Manager, a resolução e
a versão são exibidas como 0. Após a abertura, os detalhes de resolução e de versão são
atualizados.
Treinamento Wonderware
Seção 2 – Introdução ao InTouch 1-21
b. Uma caixa de mensagem é exibida pedindo que confirme a remoção. Clique em Yes ou No.
c. Para exibir o link após sua remoção da lista do Application Manager, clique em Tools / Find
Applications do menu principal Application Manager.
Treinamento Wonderware
Seção 2 – Introdução ao InTouch 1-23
Treinamento Wonderware
Módulo 2
Ambiente de desenvolvimento
Seção 1 – Introdução 2-3
Seção 2 – Como usar o WindowMaker 2-27
Laboratório 2–Criação de um novo aplicativo, janelas e gráficos 2-65
2-2 Módulo 2 – Ambiente de desenvolvimento
Objetivos do módulo
z Descrever os recursos no Ambiente de desenvolvimento
z Usar o WindowMaker para criar janelas e manipular objetos
Treinamento Wonderware
Seção 1 – Introdução 2-3
Seção 1 – Introdução
Objetivos da seção
z Identificar os recursos do WindowMaker e o Application Explorer
z Identificar os elementos de interface do WindowMaker
z Usar o WindowMaker
Treinamento Wonderware
Seção 1 – Introdução 2-5
Application Explorer
O Application Explorer do WindowMaker é uma visualização gráfica hierárquica dos elementos do
aplicativo. Ele exibe as janelas e os itens que foram configurados em seu aplicativo e oferece fácil
acesso a eles. Oferece também rápido acesso a muitos dos comandos e funções mais
comumente usados do WindowMaker.
Além disso, o Application Explorer exibe todos os programadas complementares instalados como
o SQL Access Manager, SPCPro e Recipe Manager. Oferece também um inicializador do
aplicativo personalizado.
Windows e outros elementos InTouch podem ser criados e configurados a partir do Application
Explorer.
Obs.: É possível configurar o Application Explorer para iniciar qualquer outro programa
ArchestrA® ou programa Windows. Este potente recurso permite alternar rapidamente entre sua
configuração IHM, configuração I/O Server e outras configurações de controle.
Não ancorada
e flutuante
Treinamento Wonderware
Seção 1 – Introdução 2-7
Dica: Os programas complementares InTouch, SQL Access, SPC Pro e Recipe Manager são
automaticamente adicionados ao Application Explorer uma vez que estejam instalados.
b. No campo Name, insira o nome a ser exibido no Application Explorer. Para este exemplo,
insira Notepad.
d. Clique em Open.
A caixa de diálogo Application Properties é exibida novamente:
e. Clique na lista drop-down Start Style para selecionar como o aplicativo será exibido quando é
iniciado no WindowMaker. Neste exemplo, Normal window deve estar selecionado.
f. Clique em OK.
Treinamento Wonderware
Seção 1 – Introdução 2-9
b. Insira Scratch no campo Name. O nome pode ter até 32 caracteres de comprimento. Ele
pode incluir espaços incorporados, marcas de pontuação e qualquer outro caractere no
teclado, exceto por aspas (").
Obs.: Por padrão, os ajustes de parâmetro nesta caixa de diálogo refletirão os ajustes das
janelas criadas anteriormente. Se selecionar este comando enquanto uma janela estiver
aberta no WindowMaker, os ajustes de parâmetro refletirão os ajustes da janela ativa. Se um
Window script(s) estiver anexado à janela ativa, uma caixa de mensagem será exibida
perguntando se deseja que o window script(s) seja copiado para a nova janela.
c. Clique com o botão direito do mouse em qualquer parte dos campos de entrada de texto na
caixa de diálogo. Um submenu é exibido com os comandos que podem ser aplicados ao texto
selecionado. Os comandos habilitados dependem de uma entrada no campo de texto.
d. Na caixa Comment, insira qualquer comentário que deseja associar à janela (opcional). Esta
informação serve para fins de documentação apenas e não é usada pelo aplicativo.
Treinamento Wonderware
Seção 1 – Introdução 2-11
e. Clique na caixa Window Color para selecionar a cor de fundo para a janela.
A paleta de cores é exibida:
Clique para
expandir
para a
Classic
Colors
Palette
A paleta de cor do WindowMaker é usada para aplicar cor às propriedades estáticas e dinâmicas
de linhas, retângulos, retângulos com bordas redondas, elipses, polígonos e texto. Ela é usada
também para selecionar uma cor de fundo de janela e a cor transparente para bitmaps, permitindo
que os objetos sejam visualizados atrás de bitmaps. A paleta de cor é exibida ao clicar em um
quadrado colorido na caixa de diálogo ou quando uma das ferramentas de cor é usada para
aplicar linha, preenchimento ou cor de texto a um objeto selecionado.
Criação de uma cor personalizada
A paleta de cor do WindowMaker permite definir cores personalizadas e adicioná-las à sua paleta.
As paletas criadas em outros aplicativos Windows podem ser importadas e adicionadas à paleta
padrão. É possível também exportar as paletas personalizadas para outros aplicativos Windows.
a. Com a paleta de cor aberta, clique com o botão direito do mouse em um dos quadrados em
branco na Custom Palette.
c. É possível selecionar uma cor usando a cruz na caixa de cor principal ou com a seta à direita.
A cor selecionada é exibida na caixa Color|Solid. Clique em OK para adicionar a cor à seção
Custom Palette.
d. Ou clique na ferramenta conta-gotas e clique na cor para adicioná-la à seção Custom Palette
da paleta de cor. É possível selecionar qualquer cor em qualquer local dentro da janela do
WindowMaker ou fora do WindowMaker.
Treinamento Wonderware
Seção 1 – Introdução 2-13
Dimensões: Insira a localização de pixel para cada uma das coordenadas da janela.
z Localização X: O número de pixels entre a borda esquerda da área de projeto do
WindowMaker e a borda esquerda da janela que está sendo definida.
z Localização Y: O número de pixels entre a borda superior da área de projeto do
WindowMaker e a borda superior da janela que está sendo definida.
z Largura da janela: A largura da janela em pixels.
Obs.: O Windows limita a largura mínima de uma janela de acordo com seu monitor. Por
exemplo, para padrão VGA, o mínimo é de 102 pixels.
z Altura da janela: A altura da janela em pixels. (A altura mínima de uma janela varia de
acordo com seu monitor.)
Obs.: Por padrão, os valores nestes campos serão ajustados com as dimensões da janela
criada previamente. Eles também são modificados automaticamente quando a dimensão da
janela é mudada manualmente no WindowMaker.
Obs.: Se um Window Script é anexado a uma janela ativa e uma nova janela é criada, o
script da janela ativa pode ser copiado para a nova janela.
j. Clique em OK.
A nova janela é exibida no WindowMaker e os ícones da barra de ferramentas estão ativos:
Treinamento Wonderware
Seção 1 – Introdução 2-15
Descrição do botão
Executa o comando New Window do menu File e abre a caixa de diálogo Windows
Properties para criar uma nova janela.
Executa o comando Open Window do menu File para abrir a caixa de diálogo Windows to
Open listando os nomes das janelas existentes que podem ser abertas.
Executa o comando Close Window do menu File para abrir a caixa de diálogo Windows to
Close listando os nomes das janelas abertas no momento que podem ser fechadas.
Executa o comando Save Window do menu File para abrir a caixa de diálogo Windows to
Save listando os nomes de todas as janelas abertas no momento que foram modificadas
desde a última vez em que foram salvas.
Salva automaticamente todas as janelas abertas no momento que foram modificadas desde
a última vez em que foram salvas. A ferramenta não pede confirmação para cada janela. Ela
salva automaticamente todas as janelas modificadas.
Executa o comando Duplicate do menu File para duplicar o objeto selecionado no momento
na janela.
Executa o comando Cut do menu Edit para recortar os objetos selecionados no momento a
partir da janela e os copia na área de transferência do Windows.
Executa o comando Copy do menu Edit para copiar os objetos selecionados no momento e
os copia na área de transferência do Windows. (eles não são apagados da janela.)
Executa o comando Paste do menu Edit para colar qualquer objeto que foi recortado ou
copiado para a área de transferência do Windows. (O cursor muda para o modo colar. Clique
na janela para colar o objeto recortado ou copiado.)
Executa o comando Undo do menu Edit para reverter (desfazer) a última ação ou comando
aplicado ao objeto.
Executa o comando Redo do menu Edit para reverter (refazer) a última ação ou comando
desfazer aplicada ao objeto.
Executa o comando Print do menu File para abrir a caixa de diálogo WindowMaker Printout
usada para imprimir informações do banco de dados e da janela e QuickScripts.
Descrição do botão
Exibe a caixa de diálogo Wizard Selection usada para selecionar assistentes a serem colados
em seu aplicativo.
Exibe o SmartSymbol Wizard usado para selecionar SmartSymbols a serem posicionados
em seu aplicativo.
Descrição do botão
Executa o comando Font do menu Text para abrir a caixa de dialogo Font usada para
selecionar a fonte, seu tamanho e seu estilo.
Executa o comando Bold do menu Text para aplicar o estilo negrito em seleções únicas
ou diversas de texto e campos de valor numérico.
Executa o comando Italic do menu Text para aplicar o estilo itálico em seleções únicas ou
diversas de texto e campos de valor numérico.
Executa o comando Underline do menu Text para aplicar o estilo sublinhado em seleções
únicas ou diversas de texto e campos de valor numérico.
Executa o comando Reduce Font do menu Text para reduzir o tamanho de ponto de uma
fonte dimensionável. Selecione o string de texto e clique na ferramenta.
Executa o comando Enlarge Font do menu Text para aumentar o tamanho de ponto de
uma fonte. Selecione o string de texto e clique na ferramenta.
Executa o comando Left Justified do menu Text para alinhar a borda esquerda de
seleções únicas ou diversas de string de texto e de campos de valor numérico.
Executa o comando Centered do menu Text para centralizar as seleções únicas ou
diversas de texto e os campos de valor numérico.
Executa o comando Right Justified do menu Text para alinhar a borda direita de
seleções únicas ou diversas de string de texto e de campos de valor numérico.
Abre a paleta de cores usada para selecionar a cor de uma linha de objeto ou o perfil do
objeto.
Abre a paleta de cor usada para selecionar uma cor de preenchimento de objeto.
Abre a paleta de cor para selecionar uma cor de fundo de uma janela.
Abre a paleta de cor usada para selecionar a cor transparente de um objeto bitmap.
Treinamento Wonderware
Seção 1 – Introdução 2-17
Descrição do botão
Modo seletor usado para selecionar objetos na janela.
Ferramenta bitmap usada para desenhar um contêiner de bitmap para colar um bitmap
diretamente a partir da área de transferência do Windows ou um dos seguintes tipos de
arquivo: .BMP, .JPG, .PCX ou .TGA.
Ferramenta de tendência em tempo real usada para desenhar objetos de tendência em
tempo real.
Ferramenta de tendência de histórico usada para desenhar objetos de tendência de
histórico.
Ferramenta de botão usada para desenhar um botão tridimensional com uma legenda.
Descrição do botão
Exibir/ocultar o Application Explorer.
Alterna o comando Hide All no menu View como habilitado e desabilitado para exibir/
ocultar todas as barras de ferramenta ancoradas.
Quando o modo Hide All está ativo, o tamanho geral do WindowMaker permanece o
mesmo. Para retornar ao modo normal, clique na ferramenta Hide/Restore All na barra de
ferramentas flutuante View ou clique no comando View / Hide All .
No modo Hide All, todas as barras flutuantes permanecem visíveis e a barra View flutua
automaticamente na parte superior do WindowMaker. Se alguma barra de ferramentas
flutuante estiver ancorada no modo Hide All, o modo é automaticamente interrompido.
Alterna o comando Full Screen do menu View como habilitado e desabilitado para mudar
o modo de exibição de visualização normal para toda a tela.
Para retornar ao modo normal, clique na ferramenta Full Screen na barra de ferramentas
flutuante View ou clique no comando View / Full Screen.
No modo Full Screen, todos os elementos do programa WindowMaker são ocultados,
exceto se alguma janela estiver aberta. A barra Restore flutua automaticamente na parte
superior do WindowMaker.
No modo Full Screen, as coordenadas da área do cliente permanecerão as mesmas. Por
exemplo, a parte superior esquerda é 0,0. O modo Full Screen automaticamente ajusta as
coordenadas após maximizar a área do cliente, oculta a barra de título e a barra de menu e
ajusta a área do cliente para repetir o modo de visualização de toda a tela.
Alterna o comando Snap to Grid do menu Arrange entre habilitado e desabilitado para
exibir/ocultar as grades visíveis usadas para alinhar os objetos. Ele funciona com o
comando Arrange / Snap to Grid.
Alterna o comando Ruler do menu View entre habilitado e desabilitado para exibir/ocultar a
régua.
Ajustar à grade
Ao distribuir os objetos em suas janelas, habilite a grade para que seu gráfico se ajuste no
intervalo com pixel na parte esquerda superior à grade. Se selecionar diversos objetos, o ajuste
será aplicado ao canto superior esquerdo do primeiro objeto selecionado no grupo.
Com o Snap to Grid habilitado, você pode selecionar um objeto e manter pressionada a tecla
SHIFT ou CTRL, pressione a tecla de seta de direção (para cima, para baixo, para direita ou para
esquerda) a fim de mover um objeto em incrementos de 20 pixels (SHIFT) ou incrementos do 40
pixels (CTRL). Use as teclas de direção isoladamente para mover um objeto 10 pixels por vez.
Se o Snap to Grid estiver desabilitado, você pode selecionar um objeto e manter pressionada a
tecla SHIFT ou CTRL, pressione a tecla de seta de direção (para cima, para baixo, para direita ou
para esquerda) a fim de mover um objeto em incrementos de 10 pixels (SHIFT) ou incrementos do
50 pixels (CTRL).
Use as teclas de direção sozinhas para mover um objeto 1 pixel por vez. Estes recursos podem
ser úteis ao fazer o alinhamento fino e os ajustes de localização.
Treinamento Wonderware
Seção 1 – Introdução 2-19
Dica: Por padrão, a grade é ajustada para 10 pixels e é visível quando inicia pela primeira vez o
WindowMaker. É possível configurar o intervalo de pixel para a grade através da caixa de diálogo
WindowMaker Properties . Clique na ferramenta Snap to Grid na barra de ferramentas
View para habilitar ou desabilitar o ajuste à grade.
Régua
A régua do WindowMaker pode ser usada para o alinhamento preciso dos objetos em suas
janelas e ao determinar o movimento de um objeto durante uma seqüência de animação.
As pequenas marcas são espaçadas com uma distância de 5 pixels. As marcas médias são
espaçadas com uma distância de 10 pixels. As marcas grandes numeradas são espaçadas com
uma distância de 50 pixels.
Descrição do botão
Diminui o zoom da área onde você clicar.
Rubber Band Zoom usa o mouse para selecionar uma área específica para aplicar o
zoom.
Exibe / oculta miniaturas de sua janela onde é possível arrastar uma caixa vermelha em
torno do painel ou redimensionar a caixa vermelha para aplicar ou remover zoom.
Pan move a posição da área de visualização.
Se seu mouse tiver rodízio, é possível manter pressionada a tecla Ctrl e rolar para cima para
aplicar o zoom e rolar para baixo para remover o zoom
Treinamento Wonderware
Seção 1 – Introdução 2-21
Descrição do botão
Comando Align Left do submenu Arrange / Align. Alinha a borda esquerda de todos os
objetos selecionados com a borda esquerda do objeto selecionado mais à esquerda.
Comando Align Center do submenu Arrange / Align. Alinha a linha de centro vertical de
todos os objetos selecionados com a linha de centro do grupo de objetos selecionados.
Comando Align Right do submenu Arrange / Align. Alinha a borda direita de todos os
objetos selecionados com a borda direita do objeto selecionado mais à direita.
Comando Align Top do submenu Arrange / Align. Alinha a borda superior de todos os
objetos selecionados com a borda superior do objeto selecionado na posição mais
elevada.
Comando Align Middle do submenu Arrange / Align. Alinha o meio de todos os objetos
selecionados com o meio do grupo de objetos selecionados.
Comando Align Bottom do submenu Arrange / Align. Alinha a borda inferior de todos os
objetos selecionados com a borda inferior do objeto selecionado na posição mais baixa.
Comando Align Centerpoints do submenu Arrange / Align. Alinha o ponto central de
todos os objetos selecionados com o ponto central do grupo de objetos selecionados.
Comando Send to Back do menu Arrange para posicionar todos os objetos selecionados
atrás dos objetos que não estão selecionados.
Comando Bring to Front do menu Arrange para posicionar todos os objetos
selecionados à frente dos objetos que não estão selecionados.
Comando Space Horizontal do menu Arrange para espaçar uniformemente na horizontal
os objetos selecionados entre os objetos selecionados mais à esquerda e mais à direita.
Comando Space Vertical do menu Arrange para espaçar modo uniformemente na
vertical os objetos selecionados entre os objetos selecionados na posição mais elevada e
mais inferior.
Comando Make Symbol do menu Arrange para combinar diversos objetos em uma única
unidade denominada símbolo.
Comando Break Symbol do menu Arrange para desagrupar um símbolo em
componentes individuais.
Comando Make Cell do menu Arrange para combinar diversos objetos selecionados em
uma única unidade denominada célula. Ao combinar células, cada célula será mantida.
Quando uma célula combinada é desagrupada, as células originais são restauradas.
Comando Break Cell do menu Arrange para desagrupar uma célula selecionada. Ao
combinar células, cada uma será mantida. Quando uma célula combinada é desagrupada,
as células originais são restauradas.
Comando Rotate Clockwise do menu Arrange para girar 90 graus no sentido horário os
objetos selecionados.
Comando CounterClockwise do menu Arrange para girar 90 graus no sentido anti-
horário os objetos selecionados.
Comando Flip Horizontal do menu Arrange para inverter horizontalmente os objetos
selecionados.
Comando Flip Vertical do menu Arrange para inverter verticalmente os objetos
selecionados.
Descrição do botão
Comando Reshape Object do menu Edit para mudar o formato de um polígono ou
polilinhas.
Quando diversos objetos são selecionados, a barra exibe a largura e a altura de todo o grupo.
Quando uma área em branco de uma janela é clicada, a barra de status exibe as coordenadas X
e Y da localização atual do cursor na janela.
Mantenha a tecla Shift pressionada enquanto desenha retângulos, retângulos com cantos
arredondados e elipses para limitar a altura e a largura e criar quadrados e círculos exatos.
Treinamento Wonderware
Seção 1 – Introdução 2-23
Abertura de janelas
Ao desenvolver seu aplicativo, é possível abrir o número de janelas que a memória de seu
computador suportar.
Obs.: Para abrir uma janela rapidamente, no Application Explorer, clique 2 vezes com o botão do
mouse em Windows para expandir a lista de todos os nomes de janela. Clique duas vezes com o
botão do mouse na janela. Ou clique com o botão direito do mouse na janela e selecione Open.
Obs.: Se tentar fechar a janela que foi modificada desde a última ação de salvar, será solicitado
que salve as mudanças antes que o WindowMaker feche a janela.
Obs.: Para salvar rapidamente uma janela, no Application Explorer, clique com o botão direito do
mouse na janela e selecione Save. Ou clique com o botão direito do mouse em qualquer área em
branco da janela e clique em Save Window.
Para salvar rapidamente todas as janelas abertas no momento, clique na ferramenta Save All
Windows ou selecione File / Save All Windows.
Obs.: Para fechar uma janela, no Application Explorer, clique com o botão direito do mouse nela
e em Close. Ou clique com o botão direito do mouse em qualquer área em branco da janela e
clique em Close Window.
Obs.: Para excluir uma única janela, no Application Explorer, clique com o botão direito do mouse
na janela e selecione Delete. Ou clique com o botão direito do mouse em qualquer área em
branco da janela e em Delete Window.
Obs.: Para duplicar uma janela, no Application Explorer, clique com o botão direito do mouse na
janela e clique em Save as. Usando este método, a janela ainda precisa estar aberta. Ou clique
com o botão direito do mouse em qualquer área em branco da janela e em Save Window As.
Treinamento Wonderware
Seção 1 – Introdução 2-25
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-27
Objetivos da seção
z Criar e manipular objetos no ambiente de desenvolvimento
z Instalar e configurar assistentes
Esta seção aborda a criação e a manipulação de objetos gráficos, linhas e contornos, objetos de
texto, imagens e bitmaps.
Objetos gráficos
Após criar uma nova janela, ela pode ser preenchida com objetos gráficos. O WindowMaker
oferece diversas ferramentas para edição e distribuição de vários objetos gráficos.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-29
É possível ajustar o
raio no canto de
retângulo com
canto
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-31
Para editar a polilinha após clicar fora do objeto, selecione Edit / Reshape Object ou clique com
o botão direito do mouse na polilinha e selecione Reshape Object ou selecione o objeto e clique
em Ctrl-R para exibir as alças de dimensionamento nos pontos do objeto.
Cada alça de dimensionamento é móvel até que clique fora do objeto. Após clicar fora do objeto,
as alças de dimensionamento exibem apenas todo o objeto (altura e largura total). Para editar o
polígono após clicar fora do objeto, selecione Edit / Reshape Object ou clique com o botão
direito do mouse no polígono e selecione Reshape Object ou selecione o objeto e clique em Ctrl-
R para exibir as alças de dimensionamento nos pontos do objeto.
Use a ferramenta polígono para criar imagens de válvula de formato triangular no seguinte
laboratório. Faça testes com os botões da barra de ferramentas Drawing listada na página
página 2-17 deste manual.
Exclusão de objetos
a. Selecione o objeto a ser excluído.
b. Clique em Edit / Erase ou selecione o objeto e pressione a tecla DEL .
Linhas e contornos
O estilo e a largura de um objeto de linha podem ser alterados, incluindo contornos em elipses,
retângulos, polígonos, bitmaps ou imagens. Uma mudança de estilo ou de largura de linha pode
ser aplicada a um único objeto selecionado ou a diversos objetos selecionados.
O menu Line é dividido em duas seções. A seção superior contém largura de linhas e a seção
inferior contém estilos de linha:
Dica: Se não selecionar um objeto ao selecionar estilo, largura ou cor de linha, a mudança será
aplicada aos ajustes de parâmetro padrões para todas as linhas, formas e ferramentas de texto na
barra de ferramentas Drawing .
Obs.: Somente a largura de linhas sólidas pode ser alterada. Linhas interrompidas têm um único
pixel de largura. Linhas mais largas levam mais tempo para serem desenhadas em Runtime.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-33
Distribuição de objetos
O WindowMaker fornece ferramentas para distribuir objetos em suas janelas. A barra Arrange
contém ferramentas para aplicar rapidamente a maioria dos comandos do menu Arrange.
Alinhamento de objetos
Os objetos podem ser alinhados pelas suas bordas esquerda ou direita, centro, pontos centrais,
bordas superior, inferior ou pelo meio.
Ferramentas de alinhamento
a. Selecione um objeto retângulo e arraste-o para outro local.
b. Repita a etapa anterior de forma que os objetos retângulos estejam alinhados aleatoriamente.
e. Clique nos ícones de alinhamento Align Left, Align Center ou Align Right.
Na próxima figura, a ferramenta Align Right foi selecionada e os objetos retângulo foram
movidos para que se alinhem com o lado direito do objeto mais à direita.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-35
Obs.: Girar objetos no WindowMaker é diferente de girar objetos de forma dinâmica em Runtime.
Os objetos de texto não podem ser girados em Runtime. Os bitmaps ou as imagens podem ser
girados atribuindo-se a eles um link de animação Orientation.
Símbolo Célula
Cada link de animação aplica-se a todos os objetos no Símbolos mantêm seus links de animação
símbolo; links de animação diferentes podem ser anexados a individuais.
tags diferentes (as cores de linha são anexadas à tag Status,
e todos os links de animação Piscar são anexados à Hazard).
Não podem conter bitmaps, tendências, botões, assistentes Podem ter os objetos: bitmaps, tendência,
ou células botões, assistentes e outras células
Podem conter apenas objetos simples Podem conter outras células
Podem ser redimensionados e têm pequenas alças de Não podem ser redimensionados e têm
dimensionamento grandes alças de dimensionamento
Obs.: Não é possível fazer um símbolo se mais de um dos objetos selecionados tiver links de
animação. Se combinar dois símbolos em um novo, a estrutura do original é perdida. Portanto, se
desagrupar o novo símbolo, ele será desagrupado em componentes individuais de cada símbolo
original. Os dois símbolos originais são perdidos.
Dica: Clique duas vezes com o mouse na célula para exibir a caixa de diálogo Substitute
Tagnames (não a caixa de diálogo Animation Links como ocorre com objetos e símbolos).
Dica: Para criar um símbolo ou célula, selecione todos os objetos, clique com o botão direito do
mouse em um desses objetos, aponte para Cell / Symbol e clique no comando apropriado.
Dica: Para desagrupar rapidamente um símbolo ou célula, clique com o botão direito do mouse
na célula ou no símbolo e aponte para Cell/Symbol, em seguida, clique no comando apropriado.
Obs.: Se o símbolo tiver links definidos, eles serão salvos automaticamente no buffer Colar link.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-37
Objetos de texto
A fonte, estilo de fonte, tamanho de fonte, justificar e girar qualquer objeto de texto selecionado
podem ser configurados no WindowMaker. Os objetos de texto podem também ser girados 360
graus em incrementos de 90 graus.
Obs.: Os links de animação de direção não podem ser aplicados a objetos de texto. Portanto, os
objetos de texto não podem ser girados no WindowViewer com base no tagname.
A barra de ferramentas Format Tools contém ferramentas usadas para aplicar rapidamente a
maioria dos comandos encontrados do menu Text para objetos selecionados.
a. Selecione o texto que deseja mudar e, em seguida, clique na ferramenta Fonts na barra
de ferramentas Format .
A caixa de diálogo padrão Font do Windows é exibida.
b. Selecione a fonte desejada da lista Font (o nome da fonte aparecerá no campo Font).
Quando um tamanho de fonte é selecionado, uma amostra da fonte no estilo e no tamanho
selecionados é exibida no campo Sample (consulte o exemplo acima).
c. Clique em OK.
Obs.: O tamanho de ponto de uma fonte será aumentado ou reduzido de acordo com o alcance
dos tamanhos de ponto disponíveis para a fonte selecionada. A fonte System, por exemplo, não
pode ser dimensionada. Escolha uma fonte do Windows tipo True-Type como Arial antes de
mudar o tamanho.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-39
Dica: É possível usar o comando Substitute String em strings que estão incluídas em um
símbolo ou célula e mudar o rótulo nos botões desenhados com a ferramenta Button.
c. Clique em Replace.
A caixa de diálogo Replace Text é exibida:
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-41
A caixa de diálogo Substitute Strings é exibida novamente mostrando a mudança feita nos
strings de texto selecionados:
Dica: Se você clicar com o botão direito do mouse em qualquer caixa de entrada de texto em uma
caixa de diálogo, um menu é exibido mostrando os comandos que podem ser aplicados ao texto
selecionado.
Ajuste as fontes
padrões para objetos
de texto e objetos de
botão
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-43
c. Selecione uma fonte do Windows tipo True-Type para atribuir a uma fonte padrão que pode
ser redimensionada.
d. Selecione OK para salvar as alterações ou Cancel para sair da caixa de diálogo
WindowMaker Properties .
Imagens e Bitmaps
Todas as imagens e os formatos gráficos como figuras, capturas de telas e tipos de arquivo .jpg,
.pcx e .tga criados em outros programas Windows devem ser colados no contêiner bitmap no
WindowMaker. Alguns pontos chaves a serem lembrados:
z WindowMaker vê um bitmap como um objeto único
z Não é possível incluir bitmaps em símbolos
z É possível incluir bitmaps em uma célula
z É possível configurar um bitmap com uma cor transparente de forma que ele possa
flutuar sobre outros objetos
Ao fazer isto, a cor de fundo da janela ou qualquer objeto atrás do bitmap será
transparente em áreas onde o filtro de cor transparente é aplicado. (Somente
uma cor transparente pode ser usada por bitmap.)
z É possível editar um bitmap usando o programa Microsoft Paint incluído no Windows
sem sair do WindowMaker
Clique com o botão direito do mouse em um bitmap e selecione Edit Bitmap para
iniciar o Microsoft Paint e editar o bitmap
Obs.: Não é possível usar o WindowMaker enquanto estiver editando o bitmap no Paint. Para
retornar ao WindowMaker, saia do Microsoft® Paint. Suas mudanças são salvas no objeto bitmap
no WindowMaker, não no arquivo bitmap original que foi importado.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-45
e. Selecione o arquivo a ser importado como um bitmap. Na figura anterior, a imagem setup.bmp
é selecionada da pasta WINNT/System32 no drive C: .
f. Clique em Open.
g. Para retornar o bitmap ao seu tamanho original, clique com o botão direito do mouse nele e
selecione Bitmap - Original Size.
O bitmap é redesenhado em seu tamanho original:
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-47
d. Clique em Open.
O gráfico é exibido na janela Paint com as alças de dimensionamento:
Obs.: Par salvar o bitmap ainda no Microsoft Paint e retornar ao WindowMaker, clique em
File / Save ou File / Exit. Os dois comandos têm a mesma função.
Obs.: O comando Paste Bitmap somente está disponível quando há uma imagem na área
de transferência do Windows.
O bitmap está agora disponível para redimensionamento manual ou com o Bitmap - Original
Size.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-49
c. Selecione o bitmap.
g. Clique na caixa em branco dentro do gráfico InTouch. A cor é copiada para o quadrado de cor
selecionado na paleta de cor transparente.
h. Clique no quadrado em branco dentro de Palette para aplicar a cor transparente ao bitmap.
O bitmap muda para refletir a seleção da cor transparente:
Obs.: (Somente uma cor transparente pode ser aplicada por bitmap.)
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-51
Obs.: Não é possível usar o WindowMaker enquanto estiver editando o bitmap no Paint. Para
retornar ao WindowMaker, saia do Microsoft Paint e salve a imagem em seu disco rígido.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-53
f. Use diversos recursos do Microsoft Paint para personalizar o arquivo bitmap. Neste exemplo,
adicione Company Logo Here com a ferramenta de texto e modifique as propriedades da
fonte.
h. Clique em Yes. Suas mudanças são salvas no objeto bitmap no WindowMaker, não no
arquivo bitmap original que foi importado.
i. Retorne para o WindowMaker.
Dica: Para tornar o bloco em branco original transparente, mas não o texto branco transparente,
edite o bitmap, preencha a caixa com uma única cor não usada em outro local do logo e uso esta
cor única como a cor transparente em sua janela InTouch.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-55
Assistentes
Os assistentes são componentes gráficos individuais pré-desenhados embutidos na janela
InTouch durante o desenvolvimento para uso em um aplicativo Runtime.
Os assistentes economizam um tempo considerável durante o desenvolvimento do aplicativo
porque eles são fáceis de usar e configurar. Ao usar Assistentes, não é necessário gastar muito
tempo desenhando componentes individuais para o objeto, inserindo faixas de valores para o
objeto ou animando o objeto.
Por exemplo, no caso de um assistente Slider, opções de configuração incluem itens como link
para o nome de tags, etiquetas para as faixas mínima e máxima para o slider, a cor de
preenchimento, etc.
Uma vez que as informações de configuração requeridas são inseridas, o assistente está pronto
para ser usado em Runtime.
Os assistentes complexos podem ser desenvolvidos para fornecer tipos de operações "em
segundo plano". Estas operações podem incluir a criação de janelas de exibição completas, a
criação ou conversão de um banco de dados e a configuração de outros aplicativos como os
programas complementares InTouch Recipe Manager e SPCPro.
Obs.: O uso de aplicativos de terceiros pode requerer que assistentes adicionais sejam
instalados.
O painel superior contém a lista de objetos Assistente disponíveis e o painel inferior contém
qualquer objeto Não Instalado.
Na lista Installed Wizards, selecione um assistente para ser removido de seu aplicativo e
clique no botão Remove. Os objetos não instalados estão disponíveis para instalação, basta
destacá-los e clicar no botão Install (ele torna-se ativo após o objeto ser selecionado).
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-57
b. Selecione a guia ActiveX Control Installation . A lista Available também está no painel
inferior.
c. Use o botão Remove para excluir um Controle ActiveX e movê-lo para a lista de Controles
ActiveX disponíveis.
(Não exclua nenhum assistente neste exemplo.)
d. Clique em Cancel para retornar ao WindowMaker.
b. Selecione Switches.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-59
f. Clique duas vezes com o mouse no assistente para visualizar seus atributos de configuração.
g. Clique em Cancel para sair da caixa de diálogo Discrete Switch Wizard. Os assistentes e os
objetos de ActiveX serão configurados com mais detalhes posteriormente neste curso.
Obs.: Algumas funções da barra de ferramentas podem ser usadas para modificar assistentes
aplicáveis diretamente, como as ferramentas Reduce Font, Line Color, Fill Color entre outras.
Treinamento Wonderware
Seção 2 – Como usar o WindowMaker 2-61
a. Clique em Remove from Toolbar para exibir a caixa de diálogo Remove Wizard from
Toolbar .
Treinamento Wonderware
Laboratório 1 – 2-63
Laboratório 1 –
Treinamento Wonderware
Laboratório 2 – Criação de um novo aplicativo, janelas e gráficos 2-65
Objetivos
Ao final deste laboratório, você:
z Criará um novo aplicativo
z Criará uma nova janela
z Criará novos gráficos
Obs.: O aplicativo exibido nas etapas a seguir foi criado durante as etapas orientadas pelo
Instrutor, anteriormente, neste módulo. Se ainda não o criou, faça agora. Caso contrário, vá para
a seção deste laboratório denominada, “Criação de uma nova janela” na página 2-68.
5. Clique em Next.
Treinamento Wonderware
Laboratório 2 – Criação de um novo aplicativo, janelas e gráficos 2-67
7. Clique em Next.
8. Insira InTouch Basic no campo Name: e uma descrição (opcional) na caixa Description.
9. Clique em Finish.
Obs.: Quando o aplicativo é exibido pela primeira vez no Application Manager, a resolução e
a versão são exibidas como 0. Após serem abertos, os detalhes de resolução e de versão são
atualizados.
Obs.: A janela exibida nas etapas a seguir foi descrita durante as etapas orientadas pelo
Instrutor, anteriormente, neste módulo. Se ainda não o criou, faça agora. Caso contrário, vá para
a seção deste laboratório denominada, “Clique no canto inferior direito da janela e arraste-a para
redimensionar a janela.” na página 2-70.
Treinamento Wonderware
Laboratório 2 – Criação de um novo aplicativo, janelas e gráficos 2-69
14. Clique no canto inferior direito da janela e arraste-a para redimensionar a janela.
Treinamento Wonderware
Laboratório 2 – Criação de um novo aplicativo, janelas e gráficos 2-71
Dica: Mantenha a tecla SHIFT pressionada ao clicar em um objeto para evitar que ele se
mova.
A seguir, posicione as duas metades da válvula como exibido, usando as setas de direção ou
o mouse.
18. Mantenha a tecla SHIFT pressionada ou a tecla CTRL e use as setas de direção para mover
o objeto 10 ou 50 pixels respectivamente.
Desmarcar a propriedade Snap to Grid faz com que seja possível distribuir seus objetos mais
precisamente. O padrão pontilhado na janela Scratch desaparece quando Snap to Grid é
desabilitado, permitindo que um objeto mova-se um pixel. Alterne a grade entre habilitada e
desabilitada com o menu Arrange ou ao clicar no botão da grade na barra de ferramentas
View.
Treinamento Wonderware
Laboratório 2 – Criação de um novo aplicativo, janelas e gráficos 2-73
24. Adicione a manopla da válvula usando uma forma de elipse e posicione-a assim:
27. Clique com o botão direito do mouse no objeto de texto e selecione Fonts.
A caixa de diálogo Font é exibida:
28. Selecione a fonte Arial, Negrito, 12 pontos. A escolha de uma fonte True-Type garante que o
texto permanecerá consistente se for executado em outro sistema ou se for redimensionado.
29. Clique em OK. A válvula está agora composta de quatro objetos separados e de um objeto de
texto.
30. Pressione a tecla F2 para selecionar todos os objetos na janela.
31. Clique no ícone da barra de ferramentas Make Symbol . Todo o símbolo pode agora ser
redimensionado clicando e arrastando as alças de dimensionamento.
32. Clique no ícone Button da barra de ferramentas e desenhe um botão abaixo do símbolo
da válvula.
Treinamento Wonderware
Laboratório 2 – Criação de um novo aplicativo, janelas e gráficos 2-75
Treinamento Wonderware
Módulo 3
Dicionário Tagname
Seção 1 – Tags e recursos de tag 3-3
Laboratório 2–Criação de tags 3-17
3-2 Módulo 3 – Dicionário Tagname
Objetivos do módulo
z Explicar as tags InTouch e o Dicionário Tagname
z Definir os tipos de tag
z Criar tags com o Editor de Tag
z Modificar uma tag e as configurações de filtro do Tagname Browser
Treinamento Wonderware
Seção 1 – Tags e recursos de tag 3-3
Objetivos da seção
z Apresentar o dicionário Tagname
z Criar, definir e modificar tags
z Definir e configurar filtros Tagname Browser
z Imprimir o Dicionário Tagname
Esta seção definirá tags, tipos de tag, criação de tag e modificação de tag. Ela também
demonstrará os filtros Tagname Browser e a impressão do dicionário Tagname.
Tags
Uma tag é definida simplesmente como um valor. O valor representa um nível de tanque,
temperatura, status de comunicação, posição de chave e outros valores em tempo real em seus
processos. Cada tag tem uma variedade de atributos como tagname, valores mín/máx e nome de
acesso.
O InTouch precisa de informações diferentes para tipos de tags diferentes. Por exemplo, para tags
do tipo E/S, o InTouch requer mais informações a fim de poder adquirir o valor da fonte de dados
externa e convertê-lo para uso interno. As informações sobre a tag estão contidas dentro do
dicionário Tagname.
O Dicionário Tagname (banco de dados Runtime) é a parte central do InTouch. Ele contém o valor
atual de todas as tags no banco de dados. Para criar o banco de dados Runtime, o InTouch
requer informações sobre todas as variáveis que estão sendo criadas. Cada tag deve ter um
tagname e um tipo atribuídos.
Durante o Runtime, um aplicativo InTouch acessa o Dicionário Tagname e fornece informações
específicas da tag via links de animação, scripting, etc. Quando as tags mudam (ex.: criada, troca
de valor, troca de configuração), as mudanças são armazenadas no Dicionário Tagname.
A criação e a configuração manual de tags são feitas usando duas interfaces do Dicionário
Tagname: O Tag Editor e o Tag Browser.
Obs.: O caractere barra invertida (\) é válido apenas para Supertags (discutidas em Module 9,
“Advanced Tag Functionality,”).
Os tagnames não podem ter a forma de qualquer expressão numérica válida. Por exemplo,
123E4 ou strings que podem ser números hexadecimais como 0xABCDEF não são permitidos.
Indexação
Os tagnames podem ser indexados automaticamente, desde que o tagname inclua um número.
Por exemplo, se inserir e salvar um tagname R4001 e clicar em New, o tagname será
automaticamente indexado como R4002.
Separadores de caractere
Se um tagname contiver um caractere usado para separar números, ele também é auto indexado
pelo primeiro número inteiro que o InTouch encontrar, por exemplo, N7-0 seria indexado como
N7-1. Somente mudanças positivas (incrementos) são permitidas, como R4002 para R4003
seguido de R4003 para R4004.
Cuidado ao incluir travessões (-) em tagnames. Travessões são válidos para uso em tagnames
que não comecem com números, mas eles também são usados como operação de negativo e
subtração em expressões matemáticas ou lógicas. Ele pode criar ambigüidade em algumas
situações: se usar A=B-C em uma expressão significa que A é igual a B menos C.
Entretanto, o InTouch presume que você deseja atribuir um tagname nomeado B-C a um tagname
nomeado A. É possível evitar esta confusão separando os tagnames dos operadores com
espaços em branco, por exemplo, A = B - C.
Considere este exemplo: X-101=FT-101*SP-101. Na expressão, FT-101 está sendo multiplicada
por SP-101 e atribuída a X-101 porque nenhum espaço foi usado.
Tipos de tag
As tags InTouch são tags do tipo memória ou tags do tipo E/S. Por exemplo, se a tag lê ou
escreve valores que vêm ou vão para um aplicativo externo, como ou servidor de E/S, ela é uma
tag do tipo E/S. Quando estiver definindo tags no banco de dados InTouch, é necessário atribuir
um tipo específico para cada tag de acordo com seu uso.
Tipo memória
As tags do tipo memória são usadas internamente (dentro de seu aplicativo InTouch) para criar
constantes de sistema e simulações. Elas também podem ser usadas para criar variáveis
calculadas que são acessadas por outros programas do Windows.
Por exemplo, em uma simulação de processo, as tags de memória controlam as ações de um
QuickScript de fundo pela definição da tag de memória COUNT modificada por um Action
QuickScript. O Quick Script gera vários efeitos de animação para a ETAPA atual do processo.
Treinamento Wonderware
Seção 1 – Tags e recursos de tag 3-5
Tipo de E/S
Todas as tags que lêem ou escrevem seus valores de uma fonte externa são tagnames do tipo E/
S. Isto inclui todas as entradas e saídas de controlador programável, computadores de processo
e dados de nós de rede.
As tags de E/S são acessadas através de protocolos de comunicação de Troca de Dados
Dinâmica da Microsoft (DDE) ou Wonderware SuiteLink (recomendado para comunicação de rede
e diagnósticos).
Quando o valor de um tagname do tipo leitura/escrita E/S muda, ele é imediatamente escrito para
o aplicativo remoto. A tag pode também ser atualizada do aplicativo remoto quando o item com o
qual o tagname está vinculado muda no aplicativo remoto.
Por padrão, todo tagname de E/S é definido como Leitura/Escrita. Entretanto, é possível restringí-
lo para somente leitura através da opção Read Only na caixa de diálogo Tagname Dictionary.
Há quatro tipos de E/S.
E/S discreta: Tag de entrada/saída discreta com um valor de 0 (Falso, Desativado) ou 1
(Verdadeiro, Ativado).
E/S Inteira (analógica): Um valor inteiro com sinal de 32 bits entre -2,147,483,648 e
2,147,483,647.
E/S Real (analógica): Tag de ponto flutuante (decimal). O valor de ponto flutuante pode ser
entre -3.4e38 e 3.4e38. Todos os cálculos de ponto flutuante são realizados com uma
resolução de 64 bits, mas o resultado é armazenado em 32 bits.
E/S de mensagem: Tag de string de texto de entrada/saída que pode ter até 131 caracteres
de comprimento.
Obs.: Group Var (Alarmes), HistTrend/Tag ID, Indirect Tags, e SuperTags estão incluídas no
Módulo 6, “Alarmes,” Módulo 7, “Tendência de histórico em de tempo real,” e Módulo 9,
“Funcionalidade de tag avançada,” respectivamente. Elas são apresentadas aqui como contexto.
Group Var
O tipo Group Var é usado para uma tag com um Alarm Group atribuído para criar telas de
alarme dinâmicas, registros de disco e registros de impressão. As tags do tipo Group Var são
usadas para criar janelas de alarme ou registros de alarme que exibem todos os alarmes
associados com uma variável de grupo específica. É possível também controlar os alarmes
que são exibidos ou registrados atribuindo um Alarm Group diferente à tag Group Var .
É possível também usar uma tag do tipo Group Var para criar botões de aplicativo em que o
operador pode clicar para exibir seletivamente alarmes para áreas diferentes de uma fábrica
dentro da mesma janela de alarme Todos os .fields associados ao Alarm Groups podem ser
aplicados aos tagnames Group Var .
Hist Trend
O InTouch requer uma tag do tipo Hist Trend quando uma tendência de histórico for criada.
Todos os .fields associados ás tendências de histórico podem ser aplicados aos tagnames
Hist Trend.
Tag ID
Este é um tipo especial usado com os objetos de tendência de histórico. Usam-se tagnames
do tipo Tag ID para recuperar informações sobre tagnames impressos em uma tendência de
histórico. Na maioria dos casos, seriam usados tagnames Tag ID para exibir o nome de um
tagname atribuído a uma pena específica ou para mudar o tagname atribuído à pena.
É possível processar uma declaração em um QuickScript para atribuir um novo tagname a
qualquer pena em qualquer tendência de histórico. Por exemplo, a seguinte declaração
poderia ser usada em seu QuickScript:
MyHistTrendTag.Pen1=MyLoggedTag.TagID;
Quando este QuickScript é executado, Pen1 na tendência de histórico associada ao tagname
Hist Trend "MyHistTrendTag" começaria o tendenciamento de dados armazenados no
histórico para o "MyLoggedTag."
Tags indiretas e super tags
As tags indiretas e as super tags são mais dois tipos de tags explicados detalhadamente no
Módulo 9 deste manual.
Criação de tags
As tags e seus tagnames (e outros atributos) são criados usando o Tagname Editor do Tagname
Dictionary.
a. Selecione Special / Tagname Dictionary do menu principal WindowMaker ou clique duas
vezes com o mouse no Tagname Dictionary no Explorer.
A primeira vez que acessar o Tagname Dictionary, a definição para o tagname interno do
sistema $AccessLevel é exibido. Esta é a primeira tag na lista Tag Browser. Após salvar a
definição de tag no Tagname Editor, a última definição de tagname editada é exibida.
Treinamento Wonderware
Seção 1 – Tags e recursos de tag 3-7
b. Clique nos botões << ou >> para navegar através das definições de tagname atualmente
armazenadas em seu Tagname Dictionary (Os botões do navegador são inativos quando não
há tagnames anteriores ou próximos a serem exibidos).
c. Clique em New.
O campo Tagname é apagado:
A caixa de diálogo Tagname Dictionary deverá agora estar semelhante à seguinte figura:
i. Clique em Save.
O Tagname Dictionary está agora pronto para que outra tag seja definida.
Observe que os valores de tag anteriores permanecem em seus respectivos campos.
Substitua os valores existentes pelas novas informações de tag.
Treinamento Wonderware
Seção 1 – Tags e recursos de tag 3-9
Obs.: Uma vez que as mudanças são armazenadas imediatamente, recomenda-se selecionar
somente as duas opções retentivas acima para valores que não são mudados freqüentemente.
Detalhes de tag
Muitas tags requer um nível maior de detalhe para serem manuseadas corretamente. Uma área
Details específica é exibida para cada tipo de tag para definir os detalhes e os tipos de alarme
para o tipo de tag.
Initial Value: Valor da tag na inicialização até que ela receba um valor diferente ou seja
suprimida por um valor Retentivo.
Eng Units: Unidades de medida. Uma anotação para a tag reservada para indicar uma
unidade de medida, por exemplo. PSI.
Min/Max Value: Faixa esperada para a tag.
Obs.: Os valores mínimo/máximo de Memory Tags não limitam a faixa da tag. A limitação de uma
tag deve ser feita por meio de links de Entrada de Animação.
Deadband: Valor mínimo para o qual a tag deve ser alterada para que seu valor seja
atualizado. Isto geralmente é usado para as tags de E/S atualizadas freqüentemente.
Log Deadband: Valor mínimo para o qual a tag deve mudar para que seu valor seja
armazenado no histórico.
Outras observações
Os nomes de qualquer SuperTag criada no TemplateMaker também são exibidos na área Tag
Details e as tags membro podem ser selecionadas como o tipo de tag. Observe que as
SuperTags podem conter até 64 tags membros usando 2 níveis de encadeamento).
Para SuperTags NÃO criadas usando o SuperTag TemplateMaker, por exemplo SuperTags
criadas em um tagname link de animação ou caixa de entrada de expressão, um QuickScript,
ou criadas em um arquivo externo e carregadas no utilitário DBLoad, o nome SuperTag é
exibido no campo Type .
Treinamento Wonderware
Seção 1 – Tags e recursos de tag 3-11
Tag Browser
O Tag Browser exibe todas as tags contidas no dicionário Tagname. O Tag Browser é sua
principal ferramenta para visualização e seleção local e remota de tagnames e de tagname .fields
dos aplicativos FactorySuite ou qualquer outra fonte de tag que seja compatível com a interface
do InTouch Tagname Dictionary. Ele permite selecionar as tags existentes, incluir novas tags e
visualizar as informações básicas do Tagname Dictionary.
O navegador de tags também é usado para acessar o Tag Editor para realizar a edição,
replicação e configuração de referências remotas para as fontes de tag remotas. A primeira vez
que o navegador de tags é acessado, por padrão, <local> será selecionado como a fonte de tag.
Isto significa que os tagnames no Tagname Dictionary do aplicativo local serão exibidos. Portanto,
a última fonte de tag acessada será exibida.
O navegador de tag opera no modo dicionário ou seleção. O modo é determinado pelo método
usado para acessá-lo.
Obs.: O modo de seleção ilimitado é discutido em mais detalhes em “Seleção de arquivos Dot do
Tag Browser” na página 5-26.
k. Clique no botão List View para ver uma lista das tags sem Details.
Treinamento Wonderware
Seção 1 – Tags e recursos de tag 3-13
Filter Name: Um único nome que identifica o filtro que você está definindo. Ao definir filtros, o
Filter Name que você inserir é adicionado à lista drop-down Filter Name .
Tagname: Expressão tagname a ser usada como um filtro. Se deixado em branco, o sistema
ignora este campo nesta definição de filtro.
Access Name: A expressão de Access Name local para usar como um filtro. Se deixado em
branco, o sistema ignora este campo nesta definição de filtro.
Alarm Group: O nome da expressão de Alarm Group para usar como um filtro. Se deixado
em branco, o sistema ignora este campo nesta definição de filtro.
Comment: Expressão comentário a ser usada como um filtro. Se deixado em branco, o
sistema ignora este campo nesta definição de filtro.
OK: Sair da caixa de diálogo.
O Filter Name é exibido na lista Filter no Tag Browser e é possível selecioná-lo para que exiba
apenas os tagnames que atendem os critérios especificados no filtro.
Obs.: Todos os campos Filter Option (Tagname, Tag Type, Access Name, Alarm Group e
Comment) são compatíveis com expressões coringas para limitar o escopo de sua busca. Se não
for usado filtro, todos os tagnames na fonte de tag disponíveis no momento serão exibidas.
b. Marque Database Entries para imprimir todas as informações do banco de dados. Quando
selecionado, as seguintes opções tornam-se ativas:
z Details: Incluir os detalhes do banco de dados em seu relatório.
z Alarm Information: Incluir os detalhes das informações de alarme em seu relatório.
z With Window Cross-Reference: Imprimir todas as entradas do banco de dados com
referências cruzadas de janelas.
z Nível de detalhe:
LinkDetails para imprimir os detalhes do local e do link de animação onde o
tagname foi usado
Window Names Only para imprimir somente o nome da janela de referência
cruzada
Treinamento Wonderware
Seção 1 – Tags e recursos de tag 3-15
c. Marque Windows para imprimir uma lista das entradas do banco de dados usadas nas
janelas de aplicativo. As seguintes opções tornam-se ativas:
z All Imprimir as entradas do banco de dados para todas as janelas no aplicativo.
z Selected Imprimir apenas as entradas do banco de dados para janelas específicas. Ao
assinalar Selected, a caixa de diálogo Windows to Print é aberta. Selecione as janelas a
serem impressas e clique em OK (Por padrão, todos os nomes de janela serão
selecionados quando a caixa de diálogo é exibida).
z With Link Details: Imprimir os detalhes de link para a janela.
z Window Scripts: Imprimir os scripts associados à janela.
z Database entries used in window: Imprimir os tagnames usados na janela.
z All Scripts: Imprimir todos os scripts para a janela selecionada.
z Application Scripts: Imprimir os scripts do aplicativo.
z Condition Scripts: Imprimir os scripts de condição associados à janela.
z Data Change Scripts: Imprimir os scripts de mudança de dados associados à janela.
z Key Scripts: Imprimir os scripts chaves associados à janela.
z Quick Functions: Imprimir seus QuickFunctions.
z ActiveX Event Scripts: Imprimir qualquer ActiveX Event Scripts usado.
d. Clique em Next na janela WindowMaker Printout.
A caixa de diálogo Select Output Destination é exibida, permitindo selecionar seu destino
de saída (para Impressora ou para Arquivo de Texto):
e. Se enviar a saída para um Text File, navegue com o ícone de elipse ou digite o nome do
arquivo e o string do diretório.
f. Se enviar a saída para uma Impressora, navegue para selecionar a impressora correta.
Obs.: Imprimir a janela deste modo NÃO produzirá uma representação gráfica da janela. Ao
invés disso, imprimirá uma descrição textual/detalhada da janela.
Treinamento Wonderware
Laboratório 2 – Criação de tags 3-17
Objetivos
Ao final deste laboratório, você:
z Criará uma tag de memória real
z Criará uma tag de memória inteira
z Criará tags discretas de memória
z Criará uma tag de memória de mensagem
Obs.: Se criar uma RealTag durante a parte orientada pelo instrutor, não clique em New. Ao
invés disso, clique em Select... para localizar e modificar sua RealTag existente.
6. Clique em Save.
10. Clique em Save. O tagname IntTag está agora criado e definido como uma tag Memory
Integer .
Treinamento Wonderware
Laboratório 2 – Criação de tags 3-19
Treinamento Wonderware
Módulo 4
Links de animação
Seção 1 – Características gerais dos links de animação 4-3
Seção 2 – Animação de objetos 4-9
Seção 3 – Links de animação – Referência rápida 4-45
Laboratório 3–Configuração de links de animação 4-49
Seção 4 – Uso de SmartSymbols 4-63
Laboratório 4–Uso de SmartSymbols 4-81
4-2 Módulo 4 – Links de animação
Objetivos do módulo
z Identificar os recursos de link de animação básicos
z Definir tipos de link de animação
z Acessar Tag Browser e campos ponto tagname
z Animar objetos
z Gerar e editar SmartSymbols
Treinamento Wonderware
Seção 1 – Características gerais dos links de animação 4-3
Objetivo da seção
z Identificar recursos de link de animação básicos
z Definir tipos de link de animação
z Acessar Tag Browser e campos ponto tagname
Esta seção identificará e definirá os recursos de link da animação básicos como os tipos de link
de animação, e também como acessar o Tag Browser e os campos ponto tagname.
Introdução
Os objetos gráficos ou símbolos são "trazidos para vida" em Runtime ao usar links de animação.
Os links de animação fazem com que um objeto ou um símbolo mude de aparência para refletir
mudanças no valor de uma tag ou uma expressão.
Por exemplo, é possível criar um símbolo de bomba que aparece em vermelho quando está
desativado e verde quando está ativado. Ou fazer o símbolo de uma bomba com uma botoeira
sensível a toque no qual o operador pode clicar com o mouse para ativar e desativar. Use estes e
muitos outros efeitos especiais definindo links de animação para seus objetos ou símbolos.
InTouch é compatível com dois tipos básicos de links: Touch Links e Display Links.
z Touch Links: Habilitar entrada do operador no sistema. Sliders de valor ou botoeiras são
exemplos de Touch Links.
z Display Links: Habilitar saída para o operador. Preenchimento de cor, localização ou
links para piscar são exemplos de Display Links.
A maioria dos links de animação compartilham os seguintes recursos comuns:
z Caixa de diálogo Object Type
z Paleta de cor comum
z Acesso rápido ao Tag Browsers
z Acesso rápido ao Tagname .Fields
z Compatível com equivalentes de teclas (somente Touch Links)
z Clique com o botão direito do mouse nas caixas de entrada Tagname ou Expression
(exibe um menu com comandos que podem ser aplicados ao texto selecionado)
Se diversos links foram anexados a um objeto, Prev Link e Next Link são habilitados a fim de
rolar para frente e para trás rapidamente através das caixas de diálogo de link para cada link
anexado ao objeto.
Obs.: Os links são armazenados na ordem em que foram originalmente anexados ao objeto.
c. Clique em Cancel para sair da caixa de diálogo. (Você usará mais tarde nos laboratórios.)
d. Como resultado de clicar em Cancel, nenhuma modificação no objeto Ellipse será mantido.
Clique para
expandir
para a
Classic
Colors
Palette
Treinamento Wonderware
Seção 1 – Características gerais dos links de animação 4-5
e. Selecione a tag alvo e clique em OK. A tag será inserida na caixa Tagname ou Expression.
Obs.: Esta animação, Discrete Value, requer uma tag discreta a ser selecionada.
Treinamento Wonderware
Seção 1 – Características gerais dos links de animação 4-7
Obs.: Campos Ponto são usados extensivamente em Módulo 6, “Alarmes”. Eles são incluídos
aqui como parte de características gerais de interface Tag Browsers.
Para usar um .field com o tagname selecionado, abra a lista drop-down Dot Field, selecione o
.field e clique em OK. A lista Dot Field é acessada através de Tag Browser ao configurar links de
animação ou durante a edição de script.
A figura a seguir exibe a lista drop-down Dot Field: a partir do Tag Browser:
Para exibir uma definição de banco de dados de tag, insira o tagname na caixa Tagname ou
Expression da caixa de diálogo Object Type e clique duas vezes com o mouse nela.
A caixa de diálogo Tagname Dictionary será exibida com a definição do tagname.
Acesso aos campos ponto tagname através da caixa de diálogo Choose Field
Name
a. Clique duas vezes com o mouse no objeto Ellipse na janela Scratch. A caixa de diálogo
Animation Link Selection é exibida.
b. Clique no botão Miscellaneous / Visibility. A caixa de diálogo Object Type é exibida:
c. Insira $AccessLevel. (inclua o ponto) no campo Expression.
d. Clique duas vezes com o mouse à direita do ponto (.) no campo Expression: .
f. Clique no botão superior Cancel para sair da caixa de diálogo Object type .
g. Como resultado de clicar em Cancel, nenhuma modificação no objeto Ellipse será mantido.
(Nenhuma modificação é necessária neste momento. Você fará mudanças durante um
laboratório posterior.)
Treinamento Wonderware
Seção 2 – Animação de objetos 4-9
Objetivos da seção
z Identificar as opções de link de animação
z Animar os objetos ao aplicar links
z Importar e compartilhar animações em diversas janelas
Esta seção descreve as opções de link de animação InTouch. Ela também demonstra a
importação de janelas e o compartilhamento de animações em diversas janelas.
Introdução
As seguintes informações descrevem as opções de animação InTouch. Seu instrutor demonstrará
as diversas opções de link de animação.
Ao final desta seção, você importará uma janela pré-configurada InTouch durante uma tarefa
orientada pelo instrutor. A janela é usada para configurar e compartilhar links de animação através
de janelas em laboratórios subseqüentes.
Obs.: Não será possível modificar a definição do link padrão a menos que clique no botão.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-11
Touch Links
Os Touch Links são usados em objetos ou símbolos para torná-los "sensíveis ao toque" (ex.
ativos) em Runtime. Eles habilitam a entrada do operador no sistema. Por exemplo, o operador
pode abrir ou fechar uma válvula, inserir um novo valor de configuração de alarme novo, executar
um script lógico complexo, conectar-se usando strings de texto, etc.
Os Touch Links são facilmente identificados em Runtime. Uma auréola contorna um objeto
sensível ao toque quando o cursor passa sobre ele. A tecla TAB pode ser usada para mover-se
de um objeto sensível ao toque para outro objeto sensível ao toque.
Se um objeto touch link ou símbolo contiver objetos de texto que são posicionados uns sobre os
outros, o objeto de texto na área superior será usado para mostrar o valor de dados.
O operador ativa uma botoeira sensível ao toque ao clicar nela, tocando o objeto (quando usa
uma tela touch screen,), pressionando uma tecla equivalente atribuída ou pressionando a tecla
Enter quando o objeto está ativo.
Obs.: Se o objeto ou símbolo usado para estes links (com exceção dos botões tridimensionais)
contiver um campo de texto, todos os atributos configurados para o texto no momento, (como
justificar, estilo, fonte) são aplicados quando o objeto de texto é exibido no WindowViewer.
Quando um campo de texto é usado para inserir o valor, o valor de saída também será exibido a
menos que a opção Input Only na área Detail do tag respectivo da caixa de diálogo Tagname
Editor é habilitada.
Entradas do usuário
Usada para criar objetos sensíveis ao toque que permitem ao operador entrar no sistema.
Exemplos: Botoeiras para mudar estados discretos, valores analógico ou conexão de segurança.
Há três tipos de touch links User Input.
Obs.: Selecione CTRL e/ou SHIFT se o operador precisa manter pressionada uma ou ambas as
teclas ao pressionar o equivalente no teclado.
Msg to User: Inserir a mensagem a ser exibida na caixa de diálogo de entrada quando o link de
entrada é ativado.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-13
Set Prompt e Reset Prompt: Inserir mensagens que o operador verá nos botões da caixa de
diálogo de valor discreto On e Off .
On Message e Off Message: Inserir as mensagens a serem exibidas no campo de texto (se
houver) associadas ao objeto quando o objeto está no estado ativado ou desativado.
Input Only: Evitar que a entrada seja exibida em um campo de texto associado com o objeto.
Esta opção somente aplica-se a um objeto que tem um campo de texto associado a ele.
Entrada do usuário – analógica
Obs.: Se um campo de texto está sendo usado para este link, ele deve ser formado corretamente
a fim de exibir corretamente o valor de saída analógico (inteiro ou real).
Obs.: Se uma tela touch screen está sendo usada e o teclado não está disponível para usuários,
você deve selecionar Yes na área Keypad? .
Obs.: Quando o WindowViewer é iniciado, o string exibirá o texto que foi inserido na caixa Initial
Value quando foi definido o link de tag para este objeto.
Encrypt: Não deve ser marcado para um tag que deve ser usado como uma entrada para a caixa
de diálogo de conexão. Se a tag for encriptada e usada como senha para segurança, não
funcionará. Quando o usuário inserir o valor da tag ele é encriptado e quando um string encriptado
é usado para conexão, ele falhará.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-15
Obs.: O teclado selecionado aplica-se também ao teclado numérico para links analógicos de
entrada do usuário. Por exemplo, se escolher o novo teclado redimensionável Wonderware, o
teclado também será redimensionável. Se escolher o teclado Windows, nenhum teclado separado
será usado porque está incluído no teclado padrão Windows.
Teclado InTouch
Treinamento Wonderware
Seção 2 – Animação de objetos 4-17
Teclado InTouch
Teclado Windows
A vantagem de usar o teclado Windows é que ele suporta ajustes internacionais. Entretanto, ele
não é redimensionável e pode ser muito pequeno para tela touch screen. Além disso, não é
compatível com um teclado numérico separado.
Configurar Special /
Configure /
WindowViewer
Clique no botão Options ao configurar Resizeable Keyboard para abrir a caixa de diálogo Font
em que é possível definir a fonte que o teclado usará.
Redimensioná-
vel em Runtime
Treinamento Wonderware
Seção 2 – Animação de objetos 4-19
Sliders
Slider Touch Links são usados para criar objetos ou símbolos que podem ser movidos em torno
de uma janela sem um mouse ou outro dispositivo de indicação (ex.: dedo ou touch screen).
Como o objeto ou o símbolo é removido, ele altera o valor da tag vinculada a ele. Este link fornece
a habilidade de criar equipamentos para ajustar valores de sistema.
Um objeto pode ter um link slider touch horizontal, vertical ou ambos. Ao usar os dois links em um
único objeto, o valor de duas tags analógicas pode ser alterado simultaneamente.
Sliders verticais e horizontais
At Left End / At Right End: Inserir o valor da tag na posição mais distante
To Left / To Right Inserir o número de pixels que o slider pode mover
Tagname: Inserir um tagname do tipo analógico (inteiro ou real).
Reference Location: Localização no objeto onde o cursor travará ao mover o objeto.
Dica: Clique em Ruler para ter uma indicação visual do número de pixels para mover o objeto.
Botoeiras Touch
Touch Pushbutton - Touch Links são usados para criar links de objeto que imediatamente
realizam operações quando clicados com o mouse ou tocados (tela touch screen).
Estas operações podem ser execuções Discrete Value Changes, Action Script, Show ou
comandos Hide Window .
Há quatro tipos de links Botoeiras Touch .
Obs.: Se um objeto ou botoeira de ação na janela ativa é atribuída à mesma tecla usada para um
Key Action Script, o link equivalente de tecla no teclado na janela ativa terá precedência sobre a
execução do Key Action Script.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-21
Área Action:
z Direct: Configura o valor da tag como 1 (Verdadeiro, Ativo, Sim) desde que a botoeira
seja pressionada e mantida pressionada. O valor automaticamente reinicia como 0
(Falso, Desativado, Não) quando o botão é liberado.
z Reverse: Configura o valor da tag como 0 (Falso, Desativado, Não) quando a botoeira é
pressionada e mantida pressionada. O valor automaticamente reinicia como 1
(Verdadeiro, Ativado, Sim, Desativado, Não) quando o botão é liberado.
z Toggle: Reverte o estado da tag discreta quando é pressionado, ex.: se a tag é igual a 1
e o botão é pressionado, ela é configurada como 0 e vice-versa.
z Reset: Configura o valor como 0 (Falso, Desativado, Não) quando a botoeira é
pressionada.
z Set: Configura o valor como 1 (Verdadeiro, Ativado, Sim) quando a botoeira é
pressionada.
Botoeiras Touch – ação
Os scripts de ação são abordados mais adiante no próximo capítulo. Isto é um exemplo da caixa
de diálogo de script de ação exibida quando atribuir uma Botoeira Touch - ação. Os scripts são
abordados em detalhes no Módulo 5, “Scripts Touch Action.”
Treinamento Wonderware
Seção 2 – Animação de objetos 4-23
Obs.: As auréolas não seguem o formato de um objeto se o objeto for uma célula ou um símbolo.
Configuraçã
Display Links:
Display Links fornece saída para o operador. Há oito tipos de links de exibição como circulado na
figura anterior.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-25
Obs.: É necessário usar cores sólidas para os links de cor de linha e de texto. Se selecionar uma
cor indefinida (misturada), o WindowMaker selecionará a cor sólida mais próxima. Para evitar
cores indefinidas, seu cartão de vídeo deve ter pelo menos 2MB e seus ajustes de profundidade
de cor devem ser mais altos do que 256 cores, como 32K ou 65K (algumas vezes denominados
de "alta cor” ou “cor real".)
Cada um destes atributos pode se tornar dinâmico pela definição de um link de cor para o
atributo. O atributo de cor pode ser vinculado ao valor de uma expressão discreta, expressão
analógica, status de alarme discreto ou status de alarme analógico.
Há quatro tipos de link de linha, preenchimento e de cor de texto:
Entrada do
Descrição
usuário
Discreta Usada para controlar os atributos de preenchimento, linha e cor de texto de um
objeto ou símbolo vinculado ao valor de uma expressão discreta.
Analógica Cor de linha, preenchimento e texto de um objeto ou símbolo podem ser vinculados
ao valor de uma tag analógica (inteiro ou real) ou uma expressão analógica.
Dez faixas de valores são definidas ao especificar-se nove pontos de interrupção.
Dez cores diferentes podem ser selecionadas e serão exibidas na medida em que a
faixa de valor muda.
Alarme discreto O texto, a linha e a cor de preenchimento de um objeto podem ser vinculados ao
estado de alarme de uma tag, Grupo de alarme ou Variável de Grupo.
Este link de cor permite uma escolha entre duas cores: uma para o estado normal e
a outra para o estado de alarme da tag.
Este link pode ser usado para tags analógicas e discretas. Se usada com uma tag
analógica, ela responde a QUALQUER condição de alarme da tag.
Alarme analógico O texto, a linha e a cor de preenchimento de um objeto podem ser vinculados ao
estado de alarme de uma tag analógica, Grupo de alarme ou Variável de Grupo.
Isto permite que uma cor específica seja configurada para o estado normal e uma
cor diferente para cada condição de alarme definida para a tag.
Obs.: Todos os links Line / Fill / Text Color são configurados da mesma forma.
Expression: Inserir um tagname discreto ou uma expressão que seja igual a Verdadeiro ou
Falso.
Uma expressão pode ter até 1023 caracteres. Se precisar usar uma expressão maior, crie um
QuickFunction e chame-o na sua expressão.
Expressões discretas podem também conter Tagnames Analógicos.
Por exemplo, TankLevel >= 75. Quando o valor da TankLevel é maior ou igual a 75, a cor de
preenchimento do objeto muda.
Clique com o botão direito do mouse no campo Expression para visualizar os comandos que
podem ser aplicados ao texto selecionado.
Área Colors: Clique em cada caixa de cor e selecione a cor da paleta para cada estado de tag.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-27
Expression: Insira um tagname analógico inteiro ou real ou uma expressão que se adeque a um
valor analógico.
Break Points: Especifique os valores de ponto de interrupção (decimais são válidos para tags de
tipo real) onde o objeto mudará de cor Use a tecla Tab para mover de um valor para o próximo
valor.
Color: Clique em cada caixa de cor para selecionar a cor de cada ponto de interrupção.
Discrete Alarm Line / Fill / Text Color
Tagname: Insira o tagname discreto cujo status de alarme deve ser associado com o objeto.
Área Colors: Clique em cada caixa de cor para selecionar a cor de cada estado.
Tagname: Insira o tagname analógico (inteiro ou real) cujo status de alarme deve ser associado
com o objeto.
Área Alarm Type: Selecione o tipo de alarme a ser associado ao objeto.
Três tipos exclusivos mutuamente de links de cor analógico disponíveis.
z Value Alarm – Até cinco cores diferentes podem ser selecionadas, dependendo do status
dos alarmes de valor definidos para a tag.
z Deviation – Até três cores diferentes podem ser selecionadas, dependendo do status dos
alarmes de valor desvio para a tag.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-29
z ROC (Taxa de Mudança) – Duas cores diferentes podem ser selecionadas, dependendo
do status do alarme de taxa de mudança definido para a tag.
Expression: Insira um tagname analógico (inteiro ou real) ou uma expressão que se adeque a
um valor de tag analógico.
Value at Max Height / Width: Insira o valor de tag ou a expressão que resultará no objeto atingir
sua dimensão máxima.
Value at Min Height / Width: Insira o valor de tag ou a expressão que resultará no objeto atingir
sua dimensão mínima.
Max % Height / Width: Insira um valor percentual (0-100) da dimensão que o objeto terá quando
a tag ou a expressão atingir a dimensão máxima.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-31
Min % Height / Width: Inserir um valor percentual (0-100) da dimensão que o objeto terá quando
a tag ou a expressão atingir a dimensão mínima.
Localização
Links de localização são usados para fazer um objeto mover-se automaticamente na horizontal,
na vertical ou em ambas as direções em resposta às mudanças no valor de uma tag analógica ou
expressão.
Vertical ou Horizontal
Expression: Insira um tagname analógico (inteiro ou real) ou uma expressão que se adeque a
um valor analógico.
At Top / Left End: Insira o valor da tag quando o objeto está na posição mais distante.
At Bottom / Right End: Insira o valor da tag quando o objeto está na posição mais distante.
Up / To Left: Insira o número de pixels que o objeto pode distanciar-se da posição desenhada.
Down / To Right: Insira o número de pixels que o objeto pode distanciar-se da posição
desenhada.
Vertical ou Horizontal
Expression: Insira um tagname analógico (inteiro ou real) ou uma expressão que se adeque a
um valor analógico.
Value at Max Fill: Insira o valor de tag que resultará no preenchimento do objeto até seu nível
máximo.
Value at Min Fill: Insira o valor de tag que resultará no preenchimento do objeto até seu nível
mínimo.
Max % Fill: Insira o valor percentual (0-100) com o qual o objeto será preenchido quando a
expressão atingir o nível ajustado na caixa Value at Max Fill. Se o valor da expressão é maior do
que este número, ele será ignorado.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-33
Min % Fill: Inserir um valor percentual (0-100) com o qual o objeto será preenchido quando a
expressão atingir o nível ajustado na caixa Value at Min Fill. Se o valor da expressão é menor do
que este número, ele será ignorado.
Direction: O preenchimento começa aqui e acontece de baixo para cima / de cima para baixo / da
esquerda para a direita / da direita para a esquerda
Background Color: Selecione uma cor. Esta seleção Background Color é para a cor de parte
não preenchida do objeto. A cor de preenchimento real é selecionada para o objeto quando ele é
desenhado. Se os links Vertical Percent Fill e Horizontal Percent Fill são vinculados ao mesmo
objeto, a última cor selecionada em qualquer uma das caixas de diálogo de link será usada como
a cor do fundo.
Links diversos
Há cinco links diversos:
Visibility
Expression: Inserir um tagname discreto ou uma expressão que seja igual a um valor discreto.
Visible State:
On: O objeto é visível quando o valor da expressão é VERDADEIRO.
Off: O objeto será visível quando o valor da expressão é FALSO.
Blink
Expression - Blink When: Inserir um tagname discreto ou uma expressão que seja igual a um
valor discreto.
Área Blinked Attributes:
z Blink Invisible: Objeto/símbolo pisca aparecendo e desaparecendo da janela.
z Blink visible with these attributes: Objeto/símbolo permanece visível na janela e os
atributos de mudança de cor selecionados cria o efeito intermitente.
z Text Color, Line Color e Fill Color: Selecione uma cor. Selecionar uma cor intermitente
de preenchimento que seja igual a cor de preenchimento do objeto não permitirá que o
objeto pisque.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-35
Blink Speed: Velocidades Slow, Medium e Fast são configuráveis ao selecionar o comando
Special / Configure / WindowViewer. A caixa de diálogo WindowViewer Properties, campo da
guia General, contém o grupo Blink Frequency.
Obs.: Qualquer mudança feita a estes ajustes são globais e afetarão as velocidades
intermitentes de todos os links Blink em toda sua aplicação.
Orientation
Expression: Inserir um tagname analógico (inteiro ou real) ou uma expressão que se adeque a
um valor analógico.
Value at Max CCW: Inserir o valor que a expressão deve ter para que o objeto seja girado ao
máximo no sentido anti-horário. Se o valor da expressão é maior do que este número, ele será
ignorado.
Value at Max CW: Inserir o valor que a expressão deve ter para que o objeto seja girado ao
máximo no sentido horário. Se o valor da expressão é maior do que este número, ele será
ignorado.
CCW Rotation: Inserir o grau em que o objeto girará no sentido anti-horário quando Value at Max
CCW é atingido.
CW Rotation: Inserir o grau em que o objeto girará no sentido horário quando o Value at Max
CW for atingido.
Os objetos são girados no sentido horário ou anti-horário com base na posição original na qual
eles foram desenhados no WindowMaker.
Dica: Para forçar um objeto a um ângulo específico, simplesmente ajuste o Value at Max CCW
em 360, Value at Max CW como 0, CCW Rotation em 360 e CW Rotation em 0. Insira o valor do
ângulo (ex. 90) na caixa Expression. Lembre-se, sem um tagname, esta expressão nunca
mudará e o objeto manterá sempre a posição de 90 graus.
Obs.: O sentido do objeto de texto pode ser ajustado no WindowMaker com incrementos de 90
graus, mas não girado em WindowViewer em um valor de tagname.
X Position: Insira o número de pixels do ponto central de rotação que deve ser movido
horizontalmente a partir do ponto central do objeto. Os valores positivos estão à direita do centro.
O link de direção usa o centro do objeto ou símbolo como o centro de rotação.
Y Position: Insira o número de pixels do ponto central de rotação que deve ser movido
verticalmente a partir do ponto central do objeto. Os valores positivos estão abaixo do ponto
central. Os valores negativos estão acima do ponto central.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-37
Disable
O link desabilitado é muito útil para aplicar segurança ao seu aplicativo. Por exemplo, é possível
desabilitar objetos com base no nível de acesso ou o nome do operador conectado. Quando
Disable é usado, qualquer link InTouch será desabilitado enquanto a condição Disable é
verdadeira.
O link Disable é usado em Module 10, “Security.”
Exemplo:
$AccessLevel == 0 OR $Operator == “None”
Expression: Insira um tagname discreto ou uma expressão que seja igual a um valor discreto.
Usar a expressão exibida na figura anterior, quando ninguém está conectado, faz com que o
objeto ou botão seja protegido contra violação.
Disabled State: Ativa ou desativa a funcionalidade do objeto quando a tag discreta ou a
expressão for verdade.
Um estado desabilitado On significa que a funcionalidade touchscreen do objeto ou botão é
desligada e eles não podem ser clicados enquanto a expressão for verdadeira.
Um estado desabilitado Off significa que a funcionalidade touchscreen do objeto ou botão é
desligada e eles não podem ser clicados enquanto a expressão for falsa.
Tooltip
A animação Tooltip exibe uma dica de ferramenta padrão Windows em Runtime quando o cursor
passa sobre um objeto. É possível atribuir uma tag Message no campo Expression ou um Static
text para a dica de ferramenta.
Tipo de exibição de
Descrição
valor
Discreto Usa o valor de uma tag discreta ou de uma expressão discreta para exibir uma
mensagem On ou Off definida pelo usuário em um objeto de texto.
Analógico Exibir o valor de uma tag analógica ou de uma expressão analógica em um
objeto de texto.
String Exibir o valor de uma tag de mensagem ou de uma expressão string em um
objeto de texto.
Expression: Inserir um tagname discreto ou uma expressão que seja igual a um valor discreto.
On Message: Inserir a mensagem que será exibida quando o valor de uma expressão discreta
corresponder a 1 (VERDADEIRO, Habilitado, Sim).
Off Message: Inserir a mensagem que será exibida quando o valor de uma expressão discreta
corresponder a 0 (FALSO, Desabilitado, Não).
As mensagens serão exibidas no ponto de referência do objeto de texto original usando fonte,
dimensão, cor, alinhamento e atributos vinculados ajustados para o objeto. Os conteúdos originais
do campo não têm efeito na mensagem exibida em Runtime.
É possível também usar um link Value Display Output -> String Expression para exibir as
mensagens habilitadas e desabilitadas de uma tag discreta. Para o link, seria necessário inserir a
expressão a seguir:
DText (Pump, Pump.OnMsg, Pump.OffMsg);
Nesta expressão, os strings .OnMsg e .OffMsg serão extraídos da definição do InTouch
Tagname Dictionary para a tag discreta Pump.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-39
Analógico
Expression: Inserir um tagname analógico (inteiro ou real) ou uma expressão que se adeque a
um valor analógico. É possível também usar uma tag do tipo discreta nesta expressão. Ela exibirá
simplesmente 1 ou 0.
String
Exemplo:
“The Tank Level is:” + Text(TankLevel, “#”)
Expression: Inserir um tagname de mensagem ou uma expressão que corresponda a uma tag de
mensagem.
No exemplo acima, o script Text() é usado para converter o valor de uma tag inteira
TankLevel em um string.
Obs.: Se tentar copiar arquivos de janela InTouch usando qualquer outro método (ex.comandos
de cópia Windows Explorer), você pode corromper o Dicionário Tagname de seu aplicativo.
c. Clique em OK.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-41
d. Selecione Windows da área Import Options . Cada opção de importação tem listas de
importação detalhadas.
e. Clique no botão Select para a opção Windows.
A janela Windows to Import... é exibida:
Exportação de janelas
Exportar janelas é muito útil ao criar ou manter um aplicativo de biblioteca ou para criar
rapidamente de forma remota referências de tag em outro aplicativo. Quando uma janela é
exportada, o arquivo de janela é copiado para o diretório selecionado juntamente com o arquivo
índice. Este diretório pode ser usado como uma fonte para importar janelas para seu aplicativo.
Obs.: Se tentar copiar arquivos de janela InTouch usando qualquer outro método (ex.comandos
de cópia Windows Explorer), você pode corromper o Dicionário Tagname de seu aplicativo.
b. Selecione o diretório (pasta) do aplicativo para o qual deseja exportar a janela. A caixa de
diálogo Windows to Export é exibida, permitindo a seleção de janelas em seu aplicativo.
c. Selecione a(s) janela(s) a serem exportadas e clique em OK.
Treinamento Wonderware
Seção 2 – Animação de objetos 4-43
Conversão de Tagnames
A informação a seguir está incluída porque a conversão de tag é normalmente parte de uma
operação de importação InTouch.
A janela Links recém importada é formada apenas de gráficos e não inclui tags, portanto não é
necessário fazer conversão.
Quando as janelas são importadas/exportadas de/para seu aplicativo atual, ou tags indexadas
(para tirá-las de operação), todas as tags associadas com esta janela são transferidas com a
janela. Elas não são, entretanto, adicionadas ao novo banco de dados do aplicativo. Ao invés
disto, os tagnames são identificados como tags placeholder (índice).
Obs.: Se as tags não são definidas em seu Dicionário Tagname local quando uma janela é
importada, será solicitado que as defina antes delas serem convertidas. Clique em OK se este for
o caso. A caixa de diálogo Tagname Dictionary será exibida e cada tagname pode ser
identificado.
Os placeholders ?d:, ?i:, ?r:, ?m:, ?g:, ?h:, e ?t: que precedem os tagnames indicam o tipo com
o qual o tagname foi definido originalmente como:
dTipo discreto
iTipo inteiro
rTipo real
mTipo mensagem
gTipo grupo
hTipo tendência de histórico
tTipo ID de tag
Substituição de tagnames
Quando um objeto é duplicado, ele se torna uma réplica exata do original incluindo links,
animação e scripts. Entretanto, se precisar usar uma tag diferente para um objeto que foi
duplicado, será necessário mudar o tagname.
No WindowMaker, esta operação é denominada substituir tagname. Tagnames para objetos
podem ser mudados a qualquer hora, individualmente ou em grupo
a. Selecione o objeto cujo tagname deseja mudar.
b. Pressione Ctrl+E (Special / Substitute Tags...).
c. Insira um novo tagname na caixa New Name e clique em OK. O tagname associado ao
objeto selecionado será mudado automaticamente.
Treinamento Wonderware
Seção 3 – Links de animação – Referência rápida 4-45
Touch Links
Display Links:
Treinamento Wonderware
Seção 3 – Links de animação – Referência rápida 4-47
Treinamento Wonderware
Laboratório 3 – Configuração de links de animação 4-49
Objetivos
Ao final deste laboratório, você:
z Abrirá janela Links
z Compartilhará gráficos entre janelas
z Animará o símbolo Valve1
z Animará o botão Disc1
z Animará um Slider
z Animará o campo RealTag Text
z Adicionará a um link de percentual de preenchimento
z Configurará links de objeto elipse
z Configurará links de objeto ampliador
Preparação
A janela Links deverá ter sido importada para seu aplicativo do diretório wwimport na máquina
do instrutor (ou outra máquina). Se concluiu esta etapa, siga as instruções da tarefa orientada
pelo instrutor “Importação e exportação de janelas” na página 4-40.
Obs.: NÃO desagrupe nenhuma célula ou símbolo para concluir este laboratório.
Treinamento Wonderware
Laboratório 3 – Configuração de links de animação 4-51
Treinamento Wonderware
Laboratório 3 – Configuração de links de animação 4-53
14. Clique na caixa de cor 1,TRUE,On: e atribua GREEN com a paleta de cor.
15. Clique na caixa de cor 0,FALSE,Off: e atribua RED com a paleta de cor.
18. Clique em OK quando concluir o link de animação e clique no OK superior quando as três
estiverem atribuídas.
25. Selecione a segunda válvula e seu botão e escolha Special / Substitute Strings (CTRL+L).
Treinamento Wonderware
Laboratório 3 – Configuração de links de animação 4-55
28. Clique 2 vezes com o mouse em Valve2 e defina Line Color, Fill Color e Text Color como
DiscTag2. Use BLUE para as cores 1,TRUE, On e BLACK para as cores 0,FALSE,Off .
Obs.: Uma vez que todos os links de animação do símbolo Valve1 e do botão DiscTag1 são
mantidos nos novos objetos, clicar no OK inferior da caixa de diálogo Tag Editor retorna à caixa
de dialogo Animation Links Selector , de onde é possível selecionar facilmente outro link de
animação de tag. Quando os links de animação são concluídos, clique no OK superior na parte
superior da caixa de diálogo para salvar os links e fechar a caixa de diálogo.
29. Defina o botão DiscTag2 como um User Inputs - Discrete e atribua-o a DiscTag2.
31. Alterne para Runtime clicando uma vez em Runtime! no canto superior direito da tela.
32. Clique nas botoeiras DiscTag . As válvulas devem mudar de cor com base em seu status On/
Off.
Treinamento Wonderware
Laboratório 3 – Configuração de links de animação 4-57
Animação do slider
34. Clique duas vezes com o mouse no objeto indicador.
35. Clique no botão Horizontal na área Sliders da caixa de diálogo Animation Selection .
36. Configure o slider com os atributos exibidos na figura a seguir:
Treinamento Wonderware
Laboratório 3 – Configuração de links de animação 4-59
45. Definir o link Horizontal Percent Fill para corresponder à figura a seguir (cor de fundo é
opcional).
50. Insira um valor diferente do exibido e pressione Enter (neste exemplo, o valor é ajustado
como 200).
O indicador de valor deve mover. Você deverá ver o link do percentual de preenchimento
funcionar na barra indicadora. A tela RealTag = agora exibe 200.
Treinamento Wonderware
Laboratório 3 – Configuração de links de animação 4-61
57. Clique no botão Send to Back. . Observe que a imagem contém diversos objetos.
Treinamento Wonderware
Seção 4 – Uso de SmartSymbols 4-63
Objetivos da seção
z Gerar um SmartSymbol
z Editar um SmartSymbol
z Usar o gerenciador SmartSymbol
Introdução
SmartSymbols integram a tecnologia orientada ao objeto com os gráficos InTouch para
transformá-los em modelos reutilizáveis. Mudanças feitas aos modelos automaticamente se
propaguem por todo o aplicativo, mesmo em nós de microcomputador em rede diversos. Como
resultado, os engenheiros gastam menos tempo criando, modificando e validando e revalidando
aplicativos IHM.
Com o uso do SmartSymbol Manager, os desenvolvedores de aplicativo podem criar modelos de
gráficos que podem se conectar a Objetos ArchestrA, tags InTouch locais e tags InTouch através
de referências remotas. Estes modelos de símbolo são salvos na Biblioteca SmartSymbol e
podem ser iniciados selecionando-os e posicionando-os dentro de janela InTouch.
Qualquer gráfico na janela InTouch que foi transformado em uma célula pode ser convertido em
SmartSymbol. Além disso, bibliotecas de SmartSymbols podem ser exportados para outros
aplicativos e fábricas, permitindo que empresas padronizem os gráficos em toda a organização.
Uma vez que um exemplo de SmartSymbol é desenvolvido, se os usuários precisam mudar um
exemplo, eles simplesmente modificam o modelo SmartSymbol e a mudança é propagada
automaticamente em todo o aplicativo, para toda janela na qual um exemplo SmartSymbol foi
usado. Isto torna a mudança, atualização e modificação de aplicativos muito fácil e rápido. Validar
e revalidar aplicativos após a modificação também são simplificadas com SmartSymbols.
Geração de SmartSymbol
Qualquer gráfico pode tornar-se um SmartSymbol, uma vez que ele seja convertido a célula.
Entretanto, o SmartSymbol mais versátil tem referências de dados de tag e animação. É possível
decidir percorrer seus aplicativos InTouch para identificar objetos gráficos semelhantes ou
idênticos para determinar o que você deve construir em sua biblioteca SmartSymbol. Ou, pode
decidir por criar todos seus SmartSymbols antes de construir qualquer aplicativo. De qualquer
modo, você começar com um gráfico.
Configuração de gráfico
a. Crie ou posicione um gráfico em uma janela.
b. Atribua um tagname ou tagnames ao gráfico.
c. Configure animação para o gráfico.
d. Selecione todo o gráfico e escolha Make Cell.
Geração de um SmartSymbol
a. Clique com o botão direito do mouse no gráfico e selecione SmartSymbol / Generate
SmartSymbol.
O novo símbolo será exibido na janela SmartSymbol - Management Mode, com o nome de
NewSymbol.
d. Clique em Yes.
Treinamento Wonderware
Seção 4 – Uso de SmartSymbols 4-65
O SmartSymbol exibe agora alças de dimensionamento abertas em sua janela. Isto indica
que ele é um SmartSymbol e não apenas uma célula.
Assistente do SmartSymbol
Referência de modelo: O tagname associado com o SmartSymbol que foi criado originalmente
(Modelo).
Referência de exemplo: O tagname associado com o SmartSymbol posicionado em sua janela
InTouch (Exemplo).
c. Na janela SmartSymbol Properties, clique na caixa de seleção Show Text Strings .
Treinamento Wonderware
Seção 4 – Uso de SmartSymbols 4-67
Substituir
De forma alternativa, se diversos Tagnames e Strings de Texto requerem a mesma mudança de
Instance Reference, use o recurso Replace.
3. Clique em OK.
Treinamento Wonderware
Seção 4 – Uso de SmartSymbols 4-69
h. Clique em OK.
O SmartSymbol exibe o Tagname atualizado:
Treinamento Wonderware
Seção 4 – Uso de SmartSymbols 4-71
Adicione elementos e
aumente a dimensão
total do SmartSymbol
Treinamento Wonderware
Seção 4 – Uso de SmartSymbols 4-73
Envio da edição
k. Uma lista de todas as janelas em seu aplicativo contendo o SmartSymbol é exibida. Verifique
se a edição deve ser aplicada aos SmartSymbols nestas janelas e escolha Commit Edit.
A mudança aplica-se a
cada instância do
símbolo
Treinamento Wonderware
Seção 4 – Uso de SmartSymbols 4-75
Gerenciamento de SmartSymbols
O SmartSymbol Manager é usado para diversos fins, incluindo:
z Visualizar os atributos SmartSymbol
z Organizar seus SmartSymbols em pastas
z Copiar e excluir SmartSymbols
z Importar / Exportar SmartSymbols
Organização de SmartSymbols
SmartSymbols podem ser organizados em pastas por tipo, categoria, sala, linha de produto ou
qualquer método de organização que seja significativo em sua empresa. Para organizar os
SmartSymbols, comece acessando o SmartSymbol Manager.
a. Clique em Special / SmartSymbols / Manage SmartSymbol.
A janela SmartSymbol - Management Mode é exibida:
Treinamento Wonderware
Seção 4 – Uso de SmartSymbols 4-77
O novo SmartSymbol é exibido. Se colocado na mesma pasta do original, ele será nomeado
como Cópia do <nome original>.
Obs.: Se um SmartSymbol excluído nunca foi aplicado em uma janela de aplicativo InTouch, ele
não pode ser recuperado.
Treinamento Wonderware
Seção 4 – Uso de SmartSymbols 4-79
j. Clique em OK.
Treinamento Wonderware
Laboratório 4 – Uso de SmartSymbols 4-81
Objetivos
Ao final deste laboratório, você:
z Gerar um novo SmartSymbol
z Aplicar o novo SmartSymbol
z Editar o SmartSymbols e propagar mudanças
z Gerenciar SmartSymbols
Geração de SmartSymbol
Geração de um SmartSymbol
Neste laboratório, você começará a mudar o gráfico Valve1 existente dentro de um
SmartSymbol.
1. Abra a janela Links em seu aplicativo InTouch, se ainda não estiver aberto.
2. Clique em no símbolo Valve1 para selecioná-lo.
3. Mantenha a tecla Shift pressionada e clique no botão DiscTag1.
Treinamento Wonderware
Laboratório 4 – Uso de SmartSymbols 4-83
11. Valve1 em sua janela Links é agora um SmartSymbol, exibindo as alças de dimensionamento
de aberta quando selecionado.
15. Clique com seu cursor em uma área em branco da janela para posicionar
temporariamente o SmartSymbol durante a edição.
16. Selecione o SmartSymbol Valve e clique em OK. O SmartSymbol Valve é exibido.
Treinamento Wonderware
Laboratório 4 – Uso de SmartSymbols 4-85
Obs.: É possível girar o Sensor após ele ser posicionado, desagrupando a célula e
escolhendo girar, ou clicando duas vezes com o mouse em Sensor e movendo-se para
Options. O último método girará o objeto dentro de sua dimensão original, o que pode não ser
o efeito desejado.
Propagação da edição
Uma lista de todas as janelas em seu aplicativo contendo o SmartSymbol editado é exibida.
Verifique se a edição deve ser propagada aos SmartSymbols nestas janelas.
Qualquer mudança nos Tagnames são também exibidas para verificação na coluna New Symbol
References. O valores da coluna Library Symbol References correspondem aos valores da
coluna New Symbol References, portanto nenhuma mudança foi feita.
26. Clique no botão Commit Edit.
Treinamento Wonderware
Laboratório 4 – Uso de SmartSymbols 4-87
Gerenciamento de SmartSymbols
Nesta seção do laboratório, você:
z Visualizará os atributos SmartSymbol
z Organizará SmartSymbols
z Renomeará, copiará, excluirá e recuperará SmartSymbols
z Importará e exportará SmartSymbols
Visualização dos atributos SmartSymbol
29. Acesse o SmartSymbol Manager (Special / SmartSymbol / Manage SmartSymbol).
30. Clique em Valve SmartSymbol para destacá-lo.
31. Clique na guia Attribute List. Os atributos para o Valve SmartSymbol são exibidos:
Organização de SmartSymbols
32. Clique na pasta InTouch Symbols para destacá-la (ainda dentro do SmartSymbol Manager).
33. Clique em File / New Folder.
34. Digite Valves e pressione Enter.
35. Arraste o símbolo Valve para a nova pasta Valves.
Treinamento Wonderware
Laboratório 4 – Uso de SmartSymbols 4-89
Copiar um SmartSymbol
40. Clique no SmartSymbol Valve with Sensor para destacá-lo.
41. Clique em Edit / Copy.
42. Clique em Edit / Paste.
43. Renomeie a nova válvula como o seguinte: Valve without Sensor.
44. Pressione Enter.
Agora é com você, Edite o novo SmartSymbol Valve Without Sensor , removendo o Sensor.
Consulte “Edição de SmartSymbols e propagação de mudanças” na página 4-83 para ter uma
referência. Dica: Use Break Cell durante a edição.
Excluir um SmartSymbol
45. Acesse o SmartSymbol Manager.
46. Clique no SmartSymbol Valve with Sensor para destacá-lo.
47. Clique em File / Delete.
48. Clique em Yes na caixa de diálogo Confirm Symbol Delete .
Treinamento Wonderware
Laboratório 4 – Uso de SmartSymbols 4-91
Exportação de SmartSymbols.
54. Clique em File / Export do SmartSymbol Manager.
55. Salve sua biblioteca SmartSymbol como C:\Applications\MySmartSymbols.www —sua
biblioteca SmartSymbol está agora pronta para ser importada para qualquer aplicativo
InTouch.
Importação de SmartSymbols
56. Feche todas as janelas em seu aplicativo InTouch, salvando se necessário.
57. Clique em Special / SmartSymbol / Manage SmartSymbols.
58. Clique em File / Import.
59. Navegue para a pasta de localização fornecida por seu instrutor.
60. Se a janela Import Preferences for exibida, clique na caixa de seleção Rename imported
symbol.
61. Preencha o Append to symbol name da seguinte forma: _Instructor.
62. Clique em OK.
63. Revise os SmartSymbols importador no SmartSymbol Manager.
Treinamento Wonderware
Módulo 5
InTouch QuickScripts
Seção 1 – Tipos de QuickScript 5-3
Seção 2 – Como trabalhar com o editor Script 5-13
Seção 3 – QuickScripts – Referência rápida 5-35
Laboratório 5–Uso do InTouch QuickScripts 5-39
5-2 Módulo 5 – InTouch QuickScripts
Objetivos do módulo
z Apresentar QuickScripts
z Apresentar os tipos QuickScript
z Oferecer exemplos de QuickScript
z Usar o editor de scripting para criar QuickScripts
z Criar uma ampla variedade de funções de sistema personalizadas e automatizadas
usando QuickScripts
Treinamento Wonderware
Seção 1 – Tipos de QuickScript 5-3
Objetivo da seção
z Explicar e definir os diversos tipos de InTouch QuickScript
Introdução
QuickScript é o nome de uma linguagem e funcionalidade de scripting usada no ambiente
InTouch. A linguagem de scripting em si é muito semelhante às linguagens de PLC como IEC611-
31 e Texto Estruturado.
Os recursos do InTouch QuickScript Permitem executar comandos e operações lógicas com base
no atendimento de critérios especificados, como quando uma tecla é pressionada, uma janela
aberta ou um valor é modificado. Todos os InTouch QuickScripts são orientados a evento, como
uma mudança de dados, uma condição, um clique com o mouse ou um temporizador.
A ordem de processamento é específica para o aplicativo. Enquanto pode parecer que há uma
ordem inerente no modo que diversos scripts iniciados pelo mesmo evento são programados, não
há garantia de nenhuma ordem específica. Portanto, ao usar QuickScripts, você deve construir
qualquer dependência na ordem de processamento.
Scripts de aplicativo
Scripts de aplicativo são vinculados a todo o aplicativo. Eles podem ser usados para iniciar outros
aplicativos, criar simulações de processo, calcular variáveis, etc.
Há três tipos de Scripts de aplicativo
z On Startup: Executa uma vez quando o aplicativo é iniciado. Executa antes de qualquer
janela abrir ou que a inicialização de Runtime ocorra. Não é possível fazer referência a
métodos ActiveX, propriedades ou eventos em um script On Startup. As comunicações de
E/S são inicializadas após o script Application On Startup executar. As tags do tipo E/S ou
referências de tagname remotas não podem ter referência em um script On Startup.
z On Shutdown: Executa uma vez quando o aplicativo é fechado. As tags do tipo E/S e as
referências de tagname remotas não serão atualizadas em um script On Shutdown. Script
On Shutdown não pode ser usado para iniciar outros aplicativos.
Treinamento Wonderware
Seção 1 – Tipos de QuickScript 5-5
Scripts Janela
Scripts janela funcionam dentro de uma janela específica.
Scripts de tecla
Scripts de tecla executam com uma tecla ou combinação de teclas específica no teclado Eles
podem ser usados para criar teclas globais para o aplicativo, como retornar à janela do menu
principal, desconectar o operador, etc.
Obs.: Os equivalentes de tecla usados nas janelas ativas locais para scripts Touch Pushbutton -
Action suprimem qualquer Script de tecla com os mesmos equivalentes de tecla.
Treinamento Wonderware
Seção 1 – Tipos de QuickScript 5-7
Os seguintes Touch Action Scripts executam um vez quando o cursor passa sobre um objeto.
O script é atrasado com o campo After X msec. After X msec é o período de tempo que o
cursor deve ficar sobre o objeto antes do script executar. O recurso de equivalente na tecla é
desabilitado quando este tipo de condição é selecionado, uma vez que não há equivalente no
teclado para mover o cursor do mouse sobre um objeto.
z On Mouse Over
Obs.: Se um objeto ou botoeira de ação na janela ativa é atribuída à mesma tecla usada para um
Key Script, o link equivalente de tecla no teclado na janela ativa terá precedência sobre a
execução do Key Script.
Eles são executados uma vez quando o valor de um tagname ou de um tagname.field muda com
um valor maior do que a zona morta do valor definida no Dicionário de Tagname.
Uma vez que Scripts de Troca de Dados são executados com base em uma mudança no valor de
dados, é necessário especificar um tagname ou tagname.field na caixa Tagname[.field].
Condition Scripts
Condition Scripts são vinculados a uma tag discreta ou uma expressão que seja igual a
Verdadeiro ou Falso. Este tipo de script é o mais usado. As expressões discretas com tagnames
analógicos também podem ser usadas.
Treinamento Wonderware
Seção 1 – Tipos de QuickScript 5-9
Uma vez que os Condition Scripts são executados com base no cumprimento de uma condição, é
necessário especificar a condição (uma tag discreta ou expressão) na caixa Condition. A
expressão resultaria em uma condição referente a uma tag ser VERDADEIRA ou FALSA.
Por exemplo:
TankLevel >= 75.
Quando o valor da TankLevel é maior ou igual a 75, o script executará.
Obs.: O valor para a condição deve fazer a transição para tornar-se verdadeira ou falsa antes
da execução do script. Por exemplo, se o valor inicial quando o WindowViewer é iniciado for
verdadeiro, o valor deve tornar-se falso e, então, verdadeiro novamente para que um script On
True execute.
QuickFunctions
QuickFunctions são scripts que são chamados a partir de outros scripts e de expressões de link
de animação. O código é armazenado em um local, permitindo que todas as instâncias de script
sejam atualizadas com uma sessão de edição
Reutilizar QuickFunctions reduz a manutenção de seu aplicativo reduzindo a quantidade de
códigos duplicados que são copiados e colados continuamente para os scripts. O código
reutilizado é armazenado em um script e em um local, podendo assim atualizar todas as
instâncias de script com uma sessão de edição.
QuickFunctions podem ser definidos como assíncronos, de forma que, quando executados, eles
executarão em segundo plano do processo principal WindowViewer (Runtime). Esta
funcionalidade permite que o WindowViewer separe operações demoradas (como chamar um
banco de dados SQL) do fluxo de programa principal.
Quando uma operação que consome recursos precisa ser realizada, um QuickFunction
assíncrono oferece um método eficiente para todos os links de animação e outras funcionalidades
InTouch permanecerem ativas enquanto a operação é executada.
Caixas de expressão de link de animação são limitadas a 1023 caracteres. Entretanto, é possível
criar um QuickFunction mais complexo e chamá-lo de uma caixa de expressão de link de
animação.
Isto permite ao desenvolvedor usar a declaração CALL para chamar um script complexo que
contém uma declaração RETURN que retorna o resultado de volta para a expressão.
Por exemplo, quando diversos tagnames de 30 caracteres cada são adicionados (usando "&" e
":") , somente é possível usar 8 tagnames (mais espaços) na expressão. Entretanto, ao usar a
declaração CALL MYSCRIPT($Second), na expressão, é possível executar um QuickFunction
que pode conter centenas de tagnames com 30 caracteres. Este QuickFunction usará a
declaração RETURN para fornecer um valor de volta à expressão.
Obs.: Um tagname de "disparo" deve ser usado como um parâmetro para a QuickFunction para
forçar a atualização do link de animação. Por exemplo, usando o tagname $Second como o
parâmetro para o QuickFunction fará com que a expressão para o link de animação seja avaliada
toda vez que o $Second mude de valor. Isto significa que o QuickFunction é chamado a cada
segundo.
O nome pode ter até 31 caracteres de comprimento. Espaços em branco e nomes duplicados não
podem ser usados. Este é o nome que outros QuickScripts ou expressões usarão ao chamar o
QuickFunction. Este nome será exibido também na caixa de diálogo Choose function quando
clicar nos botões All ou Quick no editor QuickScript.
Treinamento Wonderware
Seção 1 – Tipos de QuickScript 5-11
Veja a seguir as palavras chaves reservadas que não devem ser usadas como nomes de
argumentos: Return, Call, Dim, As, Integer, Real, Discrete, Message.
Nomes de argumentos são variáveis locais que existem somente dentro do QuickFunction no qual
eles foram definidos. É possível usar até 16 argumentos por QuickFunction.
Os nomes de argumento podem ter até 31 caracteres de comprimento e espaços não podem ser
usados. Devem começar com um caractere alfa (A-Z). Nomes duplicados não podem ser usados.
Não use tagnames como nomes de argumento. Os tagnames prevalecem sobre nomes de
argumento iguais e seu QuickScript não executará corretamente.
Um nome de argumento não consome uma contagem de tag porque eles são tratados como
variáveis locais.
Argumentos QuickFunction
Parâmetros de Script são passados por valor. Expressões de argumento podem ser qualquer
expressão de script que retorne um valor do tipo dados inteiro, real, discreto ou mensagem. Todos
os valores de expressão de argumento são resolvidos chamando o script antes de executar o
QuickFunction.
Exemplos:
CALL Stuff (5.6, 237, "PI");
Nesta expressão, a constante real 5.6 é passada como argument1, a constante inteira 237 como
argumento 2 e a constante mensagem "PI" como argumento 3.
CALL Temp (IntegerTag);
IntegerTag é passada como valor de expressão de argumento.
CALL ValveOpen (Tag.MaxEU -5);
Valor calculado (Tag.MaxEU -5) é passado como um valor de expressão de argumento.
Correspondência entre os tipos de dados de argumento
Deve haver uma correspondência exata da esquerda para a direita entre os tipos de dados que
chamam a lista de argumentos da declaração do QuickFunction gravada e chamada.
Deve haver também um número exato de argumentos para corresponder ao número de
argumentos na lista de argumento QuickFunction armazenada.
Coerção é usada para valores Real type-cast para Integer, e Integer para Real. Esta habilidade de
modificar o tipo de um valor permite que qualquer argumento analógico seja passado para
qualquer outro tipo analógico.
Por exemplo, se passar um valor Real de 1.23 para um argumento Integer ele usará apenas o 1 e
o .23 será perdido. Da mesma forma, se passar um valor Inteiro de 1 para um argumento Real ele
promoverá o 1 para 1.0. Entretanto, apesar deste recurso de coerção, recomendamos que faça
uma correspondência exata dos tipos de argumentos chamados com a lista QuickFunction.
Sintaxe válida QuickFunction
QuickFunctions retornam um valor. A sintaxe e a forma da declaração QuickFunction são as
seguintes:
onde:
CALL é a palavra chave requerida em todos os QuickScripts e expressão para chamar um
QuickFunction.
QuickFunctionName é um string de 1 a 31 caracteres que corresponde ao nome atribuído
ao QuickFunction armazenado.
( [arg1, ...arg16] ) são 0 a 16 expressões de argumento separadas por vírgula entre
parênteses.
Usar uma declaração de retorno
Um QuickFunction é um script que pode ser chamado de outro script (script chamado).
A seguir, um exemplo de um script que está chamando um QuickFunction:
A declaração RETURN é usada por um QuickFunction para forçar um valor a ser retornado
chamando o script.
Quando RETURN é encontrada, a execução do QuickFunction finaliza imediatamente. Neste
ponto, o QuickFunction retorna um valor para o script que o chama. O tipo de dados retornado
pode ser discreto, inteiro, real ou mensagem.
No exemplo acima, a tag RETURNRESULT pode ser uma tag do tipo discreta, mensagem, inteira
ou real para receber o valor transferido.
No exemplo a seguir, se o tagname ConvertType for igual a 0, a expressão abs( (Max /
Maxprogress) * 100 ) é calculada e este tipo de dados de resultado real é retornado ao script que
chama.
IF ConvertType == 0 THEN
RETURN abs( (Max / Maxprogress) * 100 );
ELSE
RETURN 0;
ENDIF;
RETURN AnalogTag;
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-13
Objetivos da seção
z Apresentar o QuickScript Editor
z Identificar as diferentes funções script e suas palavras chaves
Esta seção descreve recursos e funções comuns do QuickScript Editor. Os recursos e as funções
que são exclusivos para um tipo de script em particular são descritos mais adiante nesta seção.
a. Clique com o botão direito do mouse no tipo de QuickScript e selecione Open ou New. Alguns
tipos de QuickScript não incluem o comando New no submenu.
O InTouch QuickScript Editor exibe a mesma interface básica para todos os tipos de script:
Ícones Descrição
Recortar o texto selecionado do script
Imprimir o script
É possível aumentar o QuickScript Editor para a área para digitação de scripts. Arraste as bordas
do editor ou clique no botão Maximize para maximizar o editor na tela do monitor.
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-15
O menu Script contém os comandos de janelas comuns New, Save, Print e Exit. Além disso,
o comando Erase é usado para excluir totalmente o script.
Paste: O conteúdo da área de transferência do Windows é colado em seu script no local onde
está o cursor.
Clear: Todo texto no script é apagado. Entretanto, o script não é excluído de seu aplicativo. Se
selecionar este comando, cancele o editor de script e abra-o novamente: o script abrirá.
Para excluir completamente o script, é necessário usar o comando Script / Erase ou selecionar
todo o script.
Obs.: O comando Script / Erase está disponível para alguns tipos de QuickScript. O texto
excluído não é escrito na área de transferência do Windows.
Botões de
equivalência e de
operador matemático
IF, THEN, ELSE
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-17
Função Descrição
All A caixa de diálogo Choose function exibe todas as funções disponíveis
incluindo as funções para cada programa complementar instalado (Recipe
Manager, SPC Pro e SQL Access Manager).
String A caixa de diálogo Choose function é exibida incluindo todas as funções de
string disponíveis.
Math A caixa de diálogo Choose function é exibida incluindo todas as funções de
matemáticas disponíveis.
System A caixa de diálogo Choose function é exibida incluindo todas as funções de
sistema disponíveis. Por exemplo, as funções para iniciar e/ou ativar outro
aplicativo, ler e/ou escrever arquivo e informações de disco, etc.
Complementares A caixa de diálogo Choose function exibe todas as funções disponíveis para
cada programa complementar instalado (Recipe Manager, SPC Pro e SQL
Access Manager).
Diversos A caixa de diálogo Choose function é exibida incluindo todas as funções de
diversas disponíveis. Por exemplo, as funções de alarmes, tendência de
histórico, controles de janela, controles ActiveX, etc.
Quick A caixa de diálogo Choose function é exibida listando os nomes de todos os
QuickFunctions disponíveis a serem chamados pelo script atual.
Ajuda A caixa de diálogo Choose function to Obtain Help for é exibida listando todas
as funções. Clique na função para abrir seu tópico de Ajuda respectivo.
Obs.: Funções de script individuais são descritas na ordem de exibição do botão (script editor)
em Apêndice G, “Funções de script.”
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-19
Após selecionar a função, a caixa de diálogo fecha e a função é inserida em seu script na
posição do cursor.
c. Para acessar rapidamente o Tag Browser, clique duas vezes com o mouse em uma área em
branco na janela QuickScript.
d. Para acessar uma definição de tagname específico, no Dicionário Tagname, insira o tagname
na janela QuickScript e clique duas vezes com o mouse nela.
Inserção de um campo Tagname Dot em um Script
a. Selecione Insert / Tagname: O Tag Browser é exibido no modo de seleção ilimitado.
Obs.: As tags definidas na última fonte de tag acessadas através do Tag Browser serão
exibidas. Para mudar uma fonte de tag, clique na seta Tag Source e selecione uma fonte de
tag diferente na lista. Clique no botão Define Tag Sources para adicionar ou remover uma
fonte de tag da lista Tag Source.
Dica: Para inserir rapidamente um tagname .field, insira o tagname seguido de um ponto (.) e
clique duas vezes com o mouse à direita do ponto.
A caixa de diálogo Choose field name... abrirá Clique no .field que deseja usar. A caixa de
diálogo fechará e o .field selecionado será automaticamente inserido em seu QuickScript na
posição do cursor.
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-21
z Clique duas vezes com o mouse em uma caixa New Name em branco na caixa de
diálogo Substitute Tagnames .
z Clique duas vezes com o mouse na caixa de entrada Tagname.FieldName na caixa de
diálogo Acesso SQL Bind List Configuration.
A barra de status do Tag Browser oferece o status dos seguintes itens para a fonte de tag exibida
no momento:
z O número total de itens no aplicativo
z O nome do item selecionado no momento
z Tagname .field selecionado, se houver
z O Access Name associado à fonte de tag
Dica: Se deseja apenas substituir algumas instâncias de um item, clique em Find Next. O
InTouch começará a buscar seu script para o item antigo. Quando o item antigo é localizado, ele
será destacado. Clique em Replace para substituir pelo item novo ou clique em Find Next para
ignorá-lo e continuar a localização. Para substituir todas as ocorrências de um item específico,
clique em Replace All a qualquer momento durante a localização.
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-23
Obs.: O WindowViewer fará todas as tentativas possíveis para executar estes tipos de scripts tão
rápido quanto o tempo especificado. Entretanto, o desempenho não pode ser garantido. Além
disso, os scripts não podem nunca executar mais rápido do que o ajuste Tick Interval
especificado nas propriedades WindowViewer.
IF-THEN-ELSE e comparações
A declaração IF-THEN-ELSE é usada para executar condicionalmente diversas instruções com
base no estado de uma expressão.
Os seguintes operadores de comparação são usados para configurar as condições na declaração
IF-THEN-ELSE.
<Less than
>Greater than
<=Less than ou Equal to
>=Greater than ou Equal to
==Equivalency ("é igual a")
<>Not Equal to
Abaixo há alguns exemplos de scripts complexos usando operadores de comparação.
Obs.: Cada IF deve ter um ENDIF correspondente e um ponto e vírgula deve ser inserido no final
de cada linha de declaração.
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-25
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-27
Importação de QuickScripts
Importar QuickScripts de um aplicativo InTouch para outro pode economizar tempo de
desenvolvimento. Isto permite reutilizar seu QuickScripts criados anteriormente. Para mover
QuickScripts de um aplicativo InTouch para outro, você deve usar o comando File / Import .
a. Feche todas as janelas em seu aplicativo atual.
b. Clique em File / Import.
A caixa de diálogo Import from directory é exibida.
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-29
f. Clique em Select.
A caixa de diálogo Select a Condition Script é exibida:
Obs.: Placeholders (como ?d: no exemplo acima) são discutidos no “Conversão de Tagnames
Placeholder” na página 5-30.
Obs.: Scripts de controles ActiveX e de evento são apresentados no Apêndice D deste manual e
discutidos em detalhes na aula InTouch Avançado.
Placeholders
conversíveis
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-31
Quando selecionar um script para ser editado e clicar em Convert, a caixa de diálogo
Convert é exibida:
Será solicitado que defina qualquer tag que não esteja em seu dicionário tagname no
momento.
Um ícone de Impressão está disponível no editor de script para impressão do script atual. É
necessário que tenha uma impressora conectada à sua rede. A função imprimir imprimirá todas
as condições de scripts atribuídas.
Impressão de Scripts
Todos os scripts em cada categoria InTouch QuickScript podem ser impressos.
a. No WindowMaker, clique em File / Print.
A caixa de diálogo WindowMaker Printout é exibida:
Selecione quais entradas de banco de dados, janelas e/ou scripts serão impressos.
Obs.: Se selecionar uma janela que não tem um script vinculado a ele, o seguinte cabeçalho
será impresso no relatório: Window Scripts for Window Name: none.
f. Para imprimir todos os scripts para um tipo QuickScript, selecione o tipo de QuickScript e
clique em OK.
g. Após escolher todas as seleções de impressão, clique em Next.
Treinamento Wonderware
Seção 2 – Como trabalhar com o editor Script 5-33
Treinamento Wonderware
Seção 3 – QuickScripts – Referência rápida 5-35
Introdução
Neste guia, a funcionalidade básica de cada tipo de QuickScript que pode ser criado é resumida.
QuickScripts
Scripts de aplicativo
Os scripts de aplicativo são vinculados a todo o aplicativo. Eles podem ser usados para iniciar
outros aplicativos, criar simulações de processo, calcular variáveis, etc.
Scripts de janela
Os scripts dejanela funcionam dentro de uma janela específica.
Scripts de condição
Condition Scripts são vinculados a uma tag discreta ou uma expressão que seja igual a
Verdadeiro ou Falso. Este tipo de script é o tipo de script mais usado. Expressões discretas que
contenham tagnames analógicos também podem ser usadas.
Treinamento Wonderware
Seção 3 – QuickScripts – Referência rápida 5-37
QuickFunctions
QuickFunctions são scripts que podem ser escritos ou chamados de outros scripts ou expressões.
Eles são armazenados no aplicativo no qual foram criados. Chamar QuickFunctions de outros
scripts ou expressões permite criar um script uma vez e reutilizá-lo. Tipos de dados válidos
QuickFunction são os seguintes.
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-39
Objetivos
Ao final deste laboratório, você deverá ter uma compreensão de como importar um script básico,
do processo de conversão de tag, de animação de botoeira e de como escrever scripts
personalizados. Você também deverá ter uma compreensão sobre como os scripts podem afetar
um aplicativo.
Para isto, as seguintes tarefas devem ser realizadas com sucesso:
z Importar a janela Hopper
z Converter as tags de janela Hopper
z Animar as botoeiras da janela Hopper
z Criar scripts de condição
z Criar script GATE CONTROL Window
z Usar funções QuickScript
z Escrever um script de relatório personalizado
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-41
9. Clique em Convert.
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-43
12. Uma vez que as tags não existem ainda, o InTouch solicitará que as defina. Clique em OK.
13. Defina cada tag da seguinte maneira. Clique em Save, seguido por Close após ajustar cada
atributo de tag. A definição da tag Conveyor_on será semelhante à figura a seguir:
Após todas as tags serem definidas, a caixa de diálogo Substitute Tags é reexibida.
14. Clique em OK para sair da caixa de diálogo e salve a configuração da tag.
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-45
Use símbolos
matemáticos
Use os botões IF,
THEN, ELSE e
ENDIF
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-47
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-49
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-51
43. Alterne para Runtime e clique no botão Conveyer_On Toggle para testar o script.
Quando o botão Conveyor_On Toggle é pressionado, a imagem do transportador anima-se
e o nível de preenchimento muda. Use o botão HopperLevel = 0; para reinicializar o nível de
preenchimento do transportador.
44. Crie novos Scripts de Condição com os tipos On True e On False como exibido nas figuras a
seguir. Clique em Validate após cada um.
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-53
Excede 100
45. Crie ou modifique um script de condição para evitar que a tag HopperLevel aumente além de
100.
Observe que há diversas soluções possíveis. Após concluir o script, seu instrutor fornecerá a
resposta ideal.
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-55
51. Continue a edição do script exibido na figura a seguir para um segundo tipo de condição.
52. Clique em Validate, seguido por OK para fechar o editor Window Script.
53. Alterne para Runtime e teste o script. Quando a janela é aberta, todos os níveis e valores
devem ser ajustados como 0.
54. Clique no botão Gate Control .
O gráfico gate deve ser exibido para o slide aberto e fechado.
A HopperLevel não diminui quando o gate é aberto.
55. Alterne para o modo Development.
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-57
56. Escreva um script para fazer o valor HopperLevel diminuir para 0 e ficar nesse valor quando
o gate é aberto.
Há diversas soluções possíveis. Após concluir o script, seu instrutor fornecerá a resposta
ideal.
Treinamento Wonderware
Laboratório 5 – Uso do InTouch QuickScripts 5-59
60. Clique no botão Calculator. Se o Windows Calculator não estiver executando, ela aparecerá
na tela. Se estiver executando, mas não no primeiro plano, ela é exibida no primeiro plano.
62. Insira ou verifique o script ACTION a seguir para o botão rotulado REPORT.
DIM ConveyorStatus AS MESSAGE;
IF Conveyor_on == 1 THEN
ConveyorStatus = "Conveyor Running";
ELSE
ConveyorStatus = "Conveyor Stopped";
ENDIF;
Treinamento Wonderware
Módulo 6
Alarmes
Seção 1 – Alarmes e eventos 6-3
Seção 2 – Objeto de alarme distribuído 6-23
Laboratório 6–Criação de alarmes e eventos 6-39
6-2 Módulo 6 – Alarmes
Objetivos do módulo
z Apresentar os diferentes tipos de alarme e de evento
z Discutir o reconhecimento de alarmes e como os alarmes podem ser inibidos
z Adicionar a funcionalidade alarme ao aplicativo
Treinamento Wonderware
Seção 1 – Alarmes e eventos 6-3
Objetivos da seção
z Explicar e definir Alarmes e Eventos
z Identificar os diferentes tipos de alarme e de eventos e adicionar a funcionalidade
alarme ao aplicativo
Esta seção explica e define os diferentes tipos de alarmes e de eventos e como adicionar a
funcionalidade de alarme aos aplicativos.
Introdução
O InTouch tem dois tipos de comunicações para informar os operadores sobre a atividade do
processo: Alarmes e eventos.
Alarmes representam advertências de condições de processo que podem causar problemas e
requerer uma resposta do operador.
Um alarme típico é disparado quando um valor de processo excede um limite definido pelo
usuário, como um valor analógico excedendo um limite alto. Isto dispara um estado de alarme não
conhecido que pode ser usado para notificar o operador sobre um problema. Uma vez que o
operador reconhece o alarme, o sistema retorna um estado reconhecido.
O InTouch pode ser configurado para requerer que um alarme seja reconhecido mesmo se a
condição que causa o alarme tenha passado. Isto garante que um operador esteja ciente dos
eventos que causaram um estado de alarme temporário que retornou ao normal.
Eventos representam mensagens de status de sistema normal e não requerem uma resposta do
operador. Um evento típico é disparado quando uma determinada condição do sistema ocorre,
como um operador conectar-se ao InTouch. Se configurado para isto, o InTouch pode armazenar
um evento no banco de dados de alarme e imprimí-lo em uma impressora.
Qualquer tag pode ser configurada para fazer a monitoração de evento durante a definição da tag
no Dicionário Tagname. Quando definir um tagname para fazer monitoração do evento, uma
mensagem de evento é armazenada no sistema toda vez que o valor da tag muda. A mensagem
de evento armazena como o valor mudou, se a mudança foi iniciada pelo operador, E/S, scripts
ou pelo sistema.
Conceitos de alarme
Há vários termos e conceitos que geralmente se aplicam a alarmes, independente de um sistema
em particular no qual eles são usados ou como eles são implementados.
Alarms: Em geral, um alarme é um tipo específico de condição – em particular um alarme é uma
condição anormal.
A intenção de um alarme é sinalizar que algo está errado ou que um estágio em particular do
processamento foi atingido. Por exemplo, um alarme pode indicar que uma caldeira excedeu o
limite de temperatura seguro.
Priority: Um nível de prioridade associado ao alarme para indicar a severidade da situação ou da
condição.
No caso do limite de temperatura da caldeira, isto pode ser muito grave, requerendo atenção
imediata para proteger a vida e a propriedade. Por outro lado, em outras situações (menos
extremas) a severidade pode ser mínima.
Obs.: O Sistema de Alarme Distribuído não oferece suporte explícito para Áreas. Entretanto,
Grupos de alarme podem ser usados para dividir os alarmes em grupos que correspondem às
Áreas.
Treinamento Wonderware
Seção 1 – Alarmes e eventos 6-5
Tipos de alarmes
O InTouch classifica alarmes em diversas categorias gerais com base em suas características.
Estas categorias são conhecidas como Classe e Tipo.
O Sistema de Alarme Distribuído categoriza todos os alarmes em cinco condições gerais:
Discreta, Desvio, Taxa de mudança, SPC e Valor.
A tabela abaixo resume a condição de alarme para os dois sistemas.
Cada alarme pode ser associado a uma tag InTouch. Dependendo do tipo de tag, é possível
definir uma ou mais classes ou tipos de alarme para ela.
Condições de alarme são definidas dentro do Dicionário Tagname.
Tipos de evento
O InTouch também classifica eventos em diversas categorias gerais com base em suas
características. Estas categorias são conhecidas como Tipos de Eventos.
A tabela abaixo resume a classificação de eventos.
Evento Condição
ACK Alarme foi reconhecido.
ALM Ocorreu um alarme.
EVT Um evento de alarme ocorreu.
RTN Tagname retornou de um estado de alarme para um estado normal.
SYS Um evento de sistema ocorreu.
USER Mudou o $operador.
E/S O valor tagname foi violado a partir de um cliente DDE.
LGC Um QuickScript modificou o valor tagname.
OPR O operador modificou o valor de tag usando o Value Input.
Selecione
SelecioneDetails
Details&&
Alarms
Alarmspara
paraexibir
exibiraa
configuração
configuraçãode
de
alarme
alarme
Treinamento Wonderware
Seção 1 – Alarmes e eventos 6-7
Analog: Um alarme analógico corresponde a uma tag inteira ou real (ponto flutuante). Dentro do
tipo analógico há diversas classes de alarme.
z Value: O valor atual é comparado a um ou mais limites. Se o valor exceder o limite, o
estado de alarme é declarado. É possível configurar individualmente valores e prioridades
para limite "LoLo", limite "Lo", limite "Hi" e limite "HiHi'" e indicar se cada limite deve ou
não ser usado. A Faixa de Banda de Valor estabelece quanto o valor deve mudar antes
que seja removido do alarme.
z Deviation: O valor atual é comparado ao valor meta e o valor absoluto da diferença é
comparado a um ou mais limites, expressos como um percentual da faixa do valor
tagname – ou seja, a diferença total entre os valores permitidos configurados máximo e
mínimo. É possível configurar individualmente valores e prioridades para limite "Desvio de
Alarme" e "Desvio Grave" e indicar se cada limite deve ou não ser usado.
Valores podem também ser configurados para uma "Faixa de Banda de Desvio," também
expressa como um percentual da faixa da tag. Isto controle o percentual que o valor de
tag deve cair antes que seja removido do alarme.
z Rate-of-Change: O valor atual e o valor anterior são usados neste cálculo, juntamente
com o tempo atual e o tempo da atualização anterior. Se o valor absoluto da taxa de
mudança excede o limite, o estado de alarme é declarado. É possível configurar o valor e
a prioridade para o limite ROC e se o limite deve ou não ser usado.
O limite é expresso como um percentual da faixa do valor de tag, que pode ser por segundo, por
minuto, ou por hora.
Prioridades de alarme
Cada alarme configurado no InTouch tem um valor de prioridade associado a ele. Este valor
representa a severidade de um alarme e pode variar de 1 a 999 sendo que 1 é o mais severo.
Ao criar faixas de alarme usando estas prioridades e atribuindo alarmes a cada uma, é possível
filtrar facilmente alarmes críticos dos não-críticos. É possível também criar link de animação,
scripts de reconhecimento e visualização e impressão com filtro tudo baseado na faixa de
prioridade.
Por exemplo, se uma fábrica de processo determinou que ela precisa de quatro níveis de
severidade, ela pode estabelecer faixas como descritas abaixo.
Quando os engenheiros da fábrica criam as tags InTouch e as condições de alarme, cada alarme
são atribuídos a um destes níveis de severidade escolhendo um número de prioridade dentro da
faixa. Quando as faixas são configuradas, os operadores da fábrica podem exibir e imprimir
facilmente somente determinados níveis de severidade.
Grupos de alarme
A cada alarme InTouch é atribuído um Grupo de Alarme lógico. Cada Grupo de Alarme pode ser
definido pelo usuário, deve ter um nome exclusivo e pode ser organizado em hierarquias de até
32 níveis de detalhamento. Os grupos oferecem um modo de categorizar alarmes com base em
uma organização, layout de fábrica ou qualquer outra métrica. Grupo de Alarme são úteis para
filtrar telas de alarme, Impressoras de alarme e scripts de reconhecimento.
Cada tag é associado a um Grupo de Alarme. Se não associar um Grupo de Alarme a uma tag, o
InTouch o associa automaticamente com o grupo raiz, $System por padrão. Qualquer Grupo de
Alarme pode ter tags e outros nomes de Grupo de Alarme associados a ele.
Grupo de Alarme são organizados em uma estrutura de árvore hierárquica com o grupo raiz,
$System, no alto da árvore. Todos os Grupos de Alarme definidos automaticamente tornam-se
descendentes do grupo raiz.
Esta árvore pode ter até 32 níveis. Cada Grupo de Alarme pode ter um máximo de 32 subgrupos.
Cada subgrupo pode ter uma máximo de 32 subgrupos e assim por diante, até que o máximo de
32 níveis seja atingido.
Treinamento Wonderware
Seção 1 – Alarmes e eventos 6-9
Esta ilustração exibe apenas Grupos de Alarme, não tagnames dentro de cada grupo. Este
conceito de árvore é semelhante à estrutura de diretório do Windows Explorer, onde um diretório
pode conter outros sub-diretórios que são semelhantes a grupos e nomes de arquivos que são
semelhantes a tagnames.
Nomes de Grupos de Alarme são limitados a 31 caracteres e devem começar com um caractere
alfanumérico A-Z ou a-z. Ao mesmo tempo, o nome do Grupo não pode ter espaços no string. Por
exemplo, um nome válido é "AlarmGroup#1-23" enquanto que um exemplo de um nome inválido
é "Alarm Group # 1 - 23".
O Sistema de Alarme Distribuído usa também estes grupos como base da lista Grupos de Alarme.
Obs.: Enquanto que os Grupos de Alarme não contam como tags com a licença InTouch, eles
contam como tags no banco de dados. Portanto, o número total de Grupos de Alarme mais os
tagnames reais não podem exceder 61.402. Além disso, grupos não podem ser criados se o
WindowViewer estiver executando.
Os botões Modify e Delete não estão disponíveis até que um Grupo de Alarme seja definido.
O Grupo de Alarme $System não pode ser modificado ou excluído.
b. Clique em Add.
A caixa de diálogo Add Alarm Group é exibida:
c. Na caixa Group Name, insira o nome para um novo Grupo de Alarme. Já que este é o
primeiro Grupo de Alarme criado, ele é automaticamente atribuído ao Grupo Parente
$System.
Após criar um Grupo de Alarme, ele pode ser usado como um Grupo Parente
d. Clique em OK.
A caixa de diálogo Alarm Groups é exibida novamente:
e. Selecione o primeiro Grupo de Alarme criado e clique em Add para criar um segundo grupo.
O Grupo de Alarme que foi selecionado é agora o Grupo Parente do novo grupo de alarme.
Treinamento Wonderware
Seção 1 – Alarmes e eventos 6-11
A caixa de diálogo Alarm Groups é exibida novamente mostrando sua hierarquia de Grupo
de Alarme :
h. Clique em Close.
Obs.: É possível também modificar Grupos de Alarme enquanto define as tags no Dicionário
Tagname.
h. Clique em Close.
Treinamento Wonderware
Seção 1 – Alarmes e eventos 6-13
c. Clique em Delete.
Obs.: É possível também excluir Grupos de Alarme enquanto define as tags no Dicionário
Tagname. Os Grupos de Alarme podem ser excluídos independente de qualquer tagname em
uso no grupo a ser excluído. Qualquer tag no grupo excluído migrará para o grupo parente do
Grupo de Alarme .
O Sistema de Alarme Distribuído InTouch rastreia cada instância de um alarme: quando ele entra
pela primeira vez no estado de alarme, quando ele faz a transição para o sub-estado, quando
retorna a Normal, se está esperando por um Reconhecimento e quando é Reconhecido.
Treinamento Wonderware
Seção 1 – Alarmes e eventos 6-15
Alarmes como condições: O reconhecimento é feito para a instância do alarme. Uma instância
de alarme começa esperando por um ACK quando ele entra pela primeira vez no estado de
alarme. Se ele é ACKed e subseqüentemente faz a transição para um novo subestado de alarme
(Por exemplo de “Hi” para HiHi”), ele começa a esperar outro ACK. quando o ACK é recebido,
ele é aceito e aplica-se a todas as transições do alarme que ocorreu até então. O alarme é
considerado ACKed quando a instância mais recente foi ACKed.
Alarmes como eventos: O reconhecimento é feito para a instância de um alarme e deve ser para
a transição mais recente para um estado de alarme ou sub-estado. Uma instância de alarme
começa esperando por um ACK quando ele entra pela primeira vez no estado de alarme. Se ele
é ACKed e subseqüentemente faz a transição para um novo sub-estado de alarme, ele começa a
esperar por outro ACK. A cada transição subseqüente é atribuído um número sequencial e o
ACK deve ter anexado a ele o número sequencial da transição para a qual ele está respondendo.
O ACK é aceito somente se ele for a transição mais recente.
Um ACK rejeitado pode ser armazenado para fins de diagnóstico, mas não é rastreado no
sistema. Se aceito, ele aplica-se a todas as transações do alarme que ocorreram até então. O
alarme é considerado ACKed quando a instância mais recente foi ACKed. O modelo orientado
ao evento garante que se um alarme muda entre estados diferentes, o ACK corresponda à
informação atualizada. Nos sistemas com pequenos períodos de latência, ele pode parecer com
alarmes orientados à condição – mas em outros ambientes, como na Internet, os recursos deste
modelo podem se tornar muito importantes.
Alarmes de resumo expandidos: O reconhecimento é feito para cada transição do alarme. A
entrada inicial em um estado de alarme deve ser ACKed e o retorno ao estado normal deve
também ser ACKed separadamente. Qualquer transição para um novo sub-estado de alarme é
tratado como uma nova ocorrência e deve ser ACKed e RTN também deve ser ACKed. As
transições de sub-estado são tratadas como pertecentes a "RTN, "começando com a primeria
entrada em um estado com alarme quando o item era previamente normal. Se o item retorna
ao normal e subseqüentemente entra no estado de alarme novamente, um novo grupo RTN é
criado. Cada transição deve ser reconhecida individualmente e de forma explícita; e o alarme é
considerado reconhecimento somente quando o item retornou ao normal e todas as transições
nos grupos RTN pendentes foram reconhecidas.
Obs.: Aqui o termo resumo significa "aguardando reconhecimento." Este modelo de alarme
pode também ser conhecido como alarmes de retorno de chamada.
Para resumir, para alarmes orientados à condição, um reconhecimento conta contra todas as
entradas em um estado de alarme até o momento do reconhecimento. Para alarmes orientados
ao evento (como em OPC) um reconhecimento é aceito somente se ele se referir à mais recente
ativação de evento.
Para alarmes Resumo Expandido, todos os eventos – para ativar, desativar e sub-estados
diferentes – devem ser reconhecido antes que o alarme geral seja considerado reconhecido.
Obs.: Quando definir uma tag com o modelo ACK Expanded Summary, a opção RTN Implies
Ack na caixa de diálogo Alarm Properties não se aplica à tag.
Treinamento Wonderware
Seção 1 – Alarmes e eventos 6-17
Com o modelo exibido na figura anterior em mente, os controles de visibilidade a seguir são
manipulados no Fornecedor de Alarme.
z Alarm Disablement: Um alarme pode ser desabilitado pelo ajuste de um flag que
identifica-o como desabilitado. Nenhuma outra mudança na configuração do alarme é
envolvida.
Enquanto um alarme é desabilitado, qualquer verificação pode ou não continuar dependendo das
condições que colocariam o item em um estado de alarme. Porém enquanto a desabilitação tiver
efeito estas condições não podem colocar o item no estado de alarme.
Essencialmente, o item é um estado normal forçado. A desabilitação interrompe a conexão
entre o estímulo do alarme e o estado de alarme.
Uma vez que o alarme não ir para o estado de alarme, enquanto um alarme estiver desabilitado,
nenhuma entrada é feita no histórico para esse alarme.
z Alarm Inhibition: Um alarme pode ser inibido identificando uma tag que o identifique
como inibido . Esta tag é denominada tag inibidora. Nenhuma outra mudança na
configuração do alarme é envolvida.
Enquanto a tag inibidora for FALSO (ou zero), o alarme é manuseado normalmente; mas
enquanto a tag inibidora for VERDADE (ou diferente de zero), o item não pode ter alarme.
Em essência, ele é tratado da mesma maneira que um alarme desabilitado. O alarme é inibido
ativamente
A inibição do alarme é um processo de dois estágios.
1. Atribuir uma tag inibidora.
2. Uma mudança de estado de uma tag inibidora de FALSO a VERDADE ou vice-versa.
Assim como na desabilitação, a inibição interrompe a conexão entre o estímulo do alarme e o
estado de alarme.
z Alarm Suppression: Com o modelo de alarme em mente, temos a habilidade de
interromper a conexão entre o estado de alarme e o anúncio do alarme. O alarme ainda
ocorre e é armazenado/registrado, mas não está visível na Tela de alarme.
Este controle de visibilidade é conhecido como Supressão de Alarme. Supressão de
Alarme é discutida em detalhe na página 6-29 deste manual.
c. Clique em OK.
d. Selecione a opção Details & Alarms .
Treinamento Wonderware
Seção 1 – Alarmes e eventos 6-19
e. Clique no botão Ellipsis na coluna Alarm Inhibitor de uma das linhas Valor de alarme
(LoLo, Baixo, Alto, HiHi).
A inibição de alarme pode basear-se em uma tag que não seja de mensagem. Aqui, temos
uma tag do tipo Memória discreta. Quando seu valor torna-se verdadeiro, dispara a inibição.
f. Selecione a tag e clique em OK.
O Dicionário Tagname é exibido com a nova tag de inibição preenchida em:
Inibidor
Inibidorde
dealarme
alarmepara
para
LoLo
LoLo
Desabilitação de alarmes
a. A visualização Alarms do Dicionário Tagname pode ser usada para acessar um campo
.alarm enabled dot da tag. Este campo ponto pode desabilitar o alarme de uma tag individual
ou de um grupo de alarme.
Obs.: Campos ponto adicionais estão disponíveis de uma configuração de alarme. Para uma
lista completa dos campos ponto consulte o Guia de Referência InTouch.
Opções de configuração:
Alarm Buffer Size: O número de eventos de alarme mantidos na memória do WindowViewer.
Este número representa o número máximo de alarmes que o nó pode armazenar para o resumo
ou para consultas de histórico.
Obs.: Somente eventos de alarme na memória podem ser exibidos em objetos de exibição de
alarme. Se os alarmes não estão sendo usados, este valor pode ser ajustado para 1 para
conservar a memória. Se ajustar este valor muito alto, isto pode retardar o desempenho de seu
sistema. Para o Sistema de Alarme Distribuído, o valor padrão de 500 é recomendado.
RTN implies ACK: Reconhece automaticamente tags de alarme que retornam ao estado
"normal" (RTN). Não selecione esta opção se deseja que o operador reconheça um alarme após
Treinamento Wonderware
Seção 1 – Alarmes e eventos 6-21
o retorno ao normal. (RTN Implies ACK não se aplica a tags com o modelo ACK Expanded
Summary.)
Events Enabled: Habilita a armazenagem de evento de todas as mudanças de dados da tag que
são iniciadas pelo operador, E/S, QuickScripts ou pelo sistema. (Somente tagnames com Log
Events selecionado serão afetadas.)
Alarm Enable Retentive: Estado da variável .AlarmEnabled a ser retido quando o
WindowViewer é fechado e reiniciado.
Retain ACK Comment as Alarm Comment: Comentários personalizados sobrescrevem os
comentários de alarme. Caso contrário, os comentários de alarme do Dicionário Tagname serão
usados.
Treinamento Wonderware
Seção 2 – Objeto de alarme distribuído 6-23
Objetivo da seção
z Apresentar e configurar o controle de alarme distribuído
Introdução
O InTouch permite modificar a aparência da tela do alarme (incluindo as informações que são
exibidas), as cores usadas para diversas condições de alarme e o Grupo de Alarme e os níveis
de prioridade de alarme exibidos.
Treinamento Wonderware
Seção 2 – Objeto de alarme distribuído 6-25
Update Status Bar: A tela de alarme distribuído inclui uma barra de status que contém três
indicadores: Status message, Current Alarm Query e Progress Bar. Estes indicadores
fornecem as características gerais do estado atual de uma consulta de exibição e detalhes sobre
a supressão disponível no Objeto de Alarme Distribuído.
O painel direito da barra de status fica vermelho quando congelar está aplicado e o painel
esquerdo da barra de status é vermelho quando a supressão está aplicada A palavra
suppression é exibida no painel esquerdo quando a supressão está aplicada.
É possível desativar a exibição da barra de status em Runtime.
Recurso Descrição
Mensagem de status A mensagem de status no canto esquerdo da barra de status oferece
uma descrição mais detalhada do status da consulta atual.
Barra de progresso A barra de progresso atualizada no canto direito da barra de status
oferece uma indicação visual do progresso da consulta atual.
Consulta de alarme A Consulta de Alarme oferece uma indicação visual da consulta de
alarme atual.
Obs.: Se novos alarmes são recebidos enquanto a exibição é congelada, as palavras “New
Alarm (s)” são exibidas na barra de status.
Treinamento Wonderware
Seção 2 – Objeto de alarme distribuído 6-27
Right-Click Menu: O objeto Distributed Alarm Display é compatível com menus acessados por
clique através do botão direito do mouse para rápido acesso aos comandos que podem ser
aplicados ao objeto de exibição e/ou um ou mais alarmes selecionados, Grupos de Alarme, Tags
e prioridades contidas na exibição de Runtime.
Por padrão, o menu clique com o botão direito do mouse é desabilitado. Ele pode ser habilitado
ajustado o valor apropriado nas folhas de Propriedades. Além disso, as funções script podem ser
chamadas para executar qualquer coisa que pode ser feita com o menu do botão direito do
mouse.
a. Para habilitar a funcionalidade de clicar com o botão direito do mouse em Runtime, enquanto
estiver em Desenvolvimento, clique com o botão direito do mouse em Distributed Alarm
Display e selecione Properties.
Treinamento Wonderware
Seção 2 – Objeto de alarme distribuído 6-29
Com a funcionalidade clicar com o botão direito do mouse em Runtime agora habilitada, diversos
níveis adicionais de funcionalidade podem ser usados.
z Ack Selected: Quando o operador clica com o botão direito do mouse na tela e aponta
para Ack Selected durante Runtime, ele reconhece rapidamente o alarme selecionado.
z Ack Others: Quando o operador clica com o botão direito do mouse na tela e aponta para
Ack Others, um submenu é exibido com os comandos de reconhecimento. Durante
Runtime, ele reconhece rapidamente todos os alarmes na tela ou apenas os visíveis,
grupos, tagnames e prioridades selecionados clicando com o botão direito do mouse.
z Suppress Selected: Quando o operador clica com o botão direito do mouse na tela e
aponta para Suppress Selected durante Runtime, ele suprime o alarme selecionado.
z Suppress Others: Quando o operador clica com o botão direito do mouse na tela e
aponta para Suppress Others, um submenu é exibido contendo os comandos de
supressão. Durante o Runtime, o operador pode suprimir rapidamente todos os alarmes
na tela ou apenas os alarmes visíveis, grupos selecionados, tagnames selecionados e
prioridades selecionadas usando esta funcionalidade.
z Query Favorites: Quando você clica com o botão direito do mouse na tela e aponta para
Query Favorites, a caixa de diálogo Alarm Query é exibida.
z Stats: Posiciona a caixa de diálogo Alarm Statistics .
z Suppression: Posiciona a caixa de diálogo Alarm Suppression.
z Freeze: Congela a exibição atual.
Obs.: Telas de alarme adicionais estão disponíveis como Objetos de Alarme ActiveX.
Obs.: A caixa de diálogo Configuration comporta-se como qualquer caixa de diálogo padrão
Windows, pois nenhum ajuste é registrado até que você clique em OK. As opções são verificadas
para as entradas corretas, entretanto, quando alternar de uma folha de propriedade (guia) para
outra, se uma verificação de entrada falha, a folha de propriedade contendo a entrada com falha é
trazida novamente para foco e a caixa de mensagem é exibida indicando o erro. Se clicar em
Cancel, toda entrada é ignorada e a caixa de diálogo fecha.
Treinamento Wonderware
Seção 2 – Objeto de alarme distribuído 6-31
Opções de configuração:
Display Name: Insira o nome de uma tela de alarme. O nome deve ser exclusivo para cada tela
de alarme usada.
Obs.: O nome que digitar aqui será usado em todo o sistema para consulta deste objeto para
execução de tarefas como reconhecimento de alarme e consultas.
New Alarms Appear At: Local em que deseja que os novos alarmes sejam abertos dentro do
controle.
z Top of List: Exibe o alarme mais recente na parte superior da lista.
z Bottom of List: Exibe o alarme mais recente na parte inferior da lista.
Ajustes de propriedades
Propriedade Descrição
Show Titles Exibe a barra de título da mensagem de alarme
Allow Runtime Grid Changes Permite ao usuário mudar os ajustes de coluna em Runtime
Perform Query on Startup Inicia automaticamente a atualização da tela usando as
propriedades de consulta padrões, se selecionadas. Caso
contrário, execute um almDefQuery ou almQuery.
Use Default Ack Comment Se marcada e um string for inserido, quando um usuário
reconhece (ACKs) um alarme sem inserir um comentário, o string
de mensagem associado será usado como comentário padrão
Show Message Exibe a mensagem inserida na caixa de seleção quando
selecionada. Esta é a mensagem exibida dentro do DAO quando
não há alarmes a serem exibidos.
Show Status Bar Exibe a barra de status
Allow Runtime Alarm Selection Permite ao usuário selecionar os alarmes em Runtime
Show Context Sensitive Menu Habilita a ativação de um menu pop-up com clique com o botão
direito do mouse e usa o comando Ack padrão
Auto-Scroll to New Alarms Se o usuário rolar a lista do início, ela automaticamente salta para
o novo alarme
Use Extended Alarm Selection Permite que alarmes múltiplos sejam selecionados ao manter
pressionada a tecla Ctrl ou Shift juntamente com o mouse
Show Vert Scrollbar Exibe a barra de rolagem vertical no objeto de tela de alarme
Show Horz Scrollbar Exibe a barra de rolagem horizontal no objeto de tela de alarme
Obs.: As Propriedades de consulta padrão estão ativas se selecionar a opção Perform Query
on Startup ou se a função almDefQuery QuickScript for executada.
Propriedade Descrição
From Priority Prioridade de alarme mínima padrão.
To Priority Prioridade de alarme máxima padrão. Para mais informações, consulte "Prioridades
de alarmes" deste capítulo.
Alarm State Estado de alarme padrão para consulta (All, UnAck, Ack).
Query Type Ajusta o tipo de exibição como Resumo ou Histórico.
Alarm query Ajusta a consulta de Alarme inicial. Este campo aceita apenas texto; não aceita tags.
A sintaxe válida para estas listas inclui:
\\Node\InTouch!Group
Caminho completo para Alarm Group
\InTouch!Group
Caminho completo para Alarm Group local
\InTouch!Group!Tag
Caminho completo para Alarm Group local e Tag
GroupList
Entrada do Gerenciador de Nome Distribuído
Obs.: Para realizar consultas diversas, separe cada consulta com um espaço. Diversos Alarm
Providers são configurados como parte do curso Desenvolvimento Avançado de Aplicativos.
Treinamento Wonderware
Seção 2 – Objeto de alarme distribuído 6-33
Obs.: Se você clicar com o botão direito do mouse na caixa de texto em qualquer caixa de
diálogo de configuração de alarme, um menu será exibido mostrando os comandos que podem
ser aplicados ao texto selecionado.
A área de visualização (na parte de baixo da caixa de diálogo) exibe um exemplo da mensagem
de alarme configurada atualmente.
Este exemplo mostrará a mensagem usando a fonte selecionada mas não a cor.
Opções de configuração:
Date Format: Os formatos disponíveis incluindo os seguintes.
Time Format: Os valores deste campo são usados como um modelo para especificar o formato
de hora. Por exemplo, para especificar hora como 10:24:30 AM use HH:MM:SS AP.
Displayed Time: Tipo de exibição com base no status do alarme. Os formatos disponíveis
incluindo os seguintes.
Sort Order: Área: Ordem na qual deseja que os alarmes sejam classificados no objeto de alarme
(LCT e OAT).
Selecione Display Font: Mudança de fonte, estilo e tamanho usado na exibição do alarme.
Treinamento Wonderware
Seção 2 – Objeto de alarme distribuído 6-35
Column Management: Personaliza a ordem da coluna e suas respectivas larguras. Exibe a caixa
de diálogo Column Details .
Marque Column Names de acordo com o que deseja exibir. Use as setas Up e Down para mudar
a ordem na qual serão exibidos.
Clique no botão Edit para exibir a caixa de diálogo onde o nome e o tamanho da coluna
destacada podem ser personalizados.
Obs.: O valor deve ser grande o bastante para fornecer o nível de precisão desejado (32
caracteres no máximo).
Obs.: O tamanho deste campo deve ser grande o bastante para fornecer o nível de precisão
desejado (32 caracteres no máximo).
Área General: Cada caixa de cor abre a Paleta InTouch. Selecione a cor que deseja usar na
paleta para cada uma das opções a seguir:
Opção Descrição
Window Ajusta a cor do fundo da tela.
Grid Ajusta a cor da grade da tela.
Selection Back Ajusta a cor de fundo do texto destacado.
Texto de seleção Ajusta a cor de fundo do texto.
Title Bar Back Ajusta a cor de fundo da barra de título (visível somente se a
opção Show Titles estiver habilitada).
Title Bar Text Ajusta a cor da barra de texto (visível somente se a opção
Show Titles estiver habilitada).
Alarm Return Ajusta a cor de alarmes retornados (alarme que foram
retornados ao normal sem serem reconhecidos).
Event Ajusta a cor dos alarmes de Evento.
Treinamento Wonderware
Seção 2 – Objeto de alarme distribuído 6-37
Reconhecimento de alarmes
É possível reconhecer os alarmes usando a função Ack em uma ação ou QuickScript chave, ou
usando o menu com clique com o botão direito do mouse sensível ao contexto no Objeto de
Alarme Distribuído. A função Ack monitora e/ou controla o status de reconhecimento de alarme de
todos os tipos de alarmes locais .
Criar um botão 3-D ou qualquer outro objeto para o qual uma ação ou chave QuickScript pode ser
vinculada.
Em seguida, insira qualquer uma das declarações a seguir para o QuickScript Action Script.
Declaração Descrição
Ack $System; Reconhece todos os alarmes locais no sistema.
Ack Group Name; Reconhece todos os alarmes locais em um Grupo
de Alarme específico.
Ack Tagname; Reconhece os alarmes de um tagname específico.
$System.Ack=1; Reconhece todos os alarmes locais no sistema.
Group Name.Ack=1; Reconhece todos os alarmes locais em um Grupo
de Alarme específico.
Tagname.Ack=1; Reconhece os alarmes de um tagname específico.
Tagname.AckDev=1; Reconhece o alarme de desvio de um tagname
específico.
Tagname.AckROC=1; Reconhece o alarme da taxa de mudança de um
tagname específico.
Tagname.AckValue=1; Reconhece o alarme de valor de um tagname
específico.
b. Selecione Retain ACK Comment as Alarm Comment se deseja usar diversas funções
almAck() para personalizar comentários. Caso contrário, os comentários de alarme do
Dicionário Tagname serão usados.
c. Clique em OK.
Dica: Se você clicar com o botão direito do mouse na caixa de texto em qualquer caixa de diálogo
de configuração de alarme, um menu será exibido mostrando os comandos que podem ser
aplicados ao texto selecionado.
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-39
Objetivos
Ao final deste laboratório, você:
z Importará a janela Alarms
z Configurará a janela Alarms
z Converterá as tags de janela Alarms
z Configurará alarmes para tags
z Definirá o botão Acknowledge
z Criará uma tag inibidora
z Criará um chave inibidora
z Configurará campos de alarme Dot
z Configurará anúncio de alarme
z Criará eventos
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-41
"colar" .
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-43
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-45
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-47
35. Clique no botão Acknowledge. A cor do alarme mudará indicando que ele foi reconhecido.
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-49
51. Clique duas vezes com o mouse no campo Tagname e selecione InhibitTag do Tagname
Dictionary.
52. Clique em OK e em OK novamente.
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-51
56. Repita a etapa anterior com a chave posicionada em Off . O alarme HiHi agora é exibido.
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-53
59. Atribua um link de animação Value Display - Discrete . A caixa de diálogo Output Discrete
Expression é exibida.
60. Clique duas vezes com o mouse no campo de texto Expression (Apague qualquer
Expressão anterior, se houver.) A caixa de diálogo Select Tag é exibida:
61. Role para baixo na lista de Tagname para selecionar o Tagname $System.
62. Abra a lista drop-down Dot Field.
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-55
74. Complete a configuração do objeto Animation Link para corresponder à figura a seguir:
77. Use as etapas anteriores para configurar o objeto de exibição de texto RealTag.HiStatus com
o link Value Display-Discrete.
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-57
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-59
87. Crie um novo script de condição em que a condição On True tem a janela aberta quando uma
tag vai para alarme.
89. Insira o script Touch Pushbutton - Action a seguir para o botão Acknowledge Alarms.
O script Touch Pushbutton Action para o botão Acknowledge Alarms reconhecerá
TODOS os alarmes, ajuste a tag $NewAlarm como 0 e oculte a janela Alarm Acknowledge .
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-61
94. Mova os sliders. A janela Alarm Acknowledge deve agora abrir quando as tags vão para
alarme. A caixa de texto Attention deve piscar.
95. Clique no botão Acknowledge Alarms. A janela deve fechar e os alarmes atuais devem
mudar para o status ACK.
Monitoração de evento
Criação de eventos
97. Clique duas vezes com o mouse no objeto Alarm.
98. Mude Query Type para Historical na área Default Query Properties .
Treinamento Wonderware
Laboratório 6 – Criação de alarmes e eventos 6-63
100.Clique duas vezes com o mouse no botão DiscTag1 para rever o script Touch Pushbuttons
- Action.
101.Clique em OK e em OK novamente.
102.Abra o Tagname Dictionary.
103.Certifique-se de que a opção Log Events para DiscTag1 esteja marcada e Priority seja 998.
104.Alterne para Runtime e clique no botão DiscTag1 Toggle para exibir eventos.
Estes alarmes aparecerão na parte inferior da tela Alarm Object.
Treinamento Wonderware
Módulo 7
Objetivos do módulo
z Visualizar dados de usuário em tempo real
z Recuperar dados de arquivos de histórico
Treinamento Wonderware
Seção 1 – Tendências em tempo real 7-3
Objetivo da seção
z Visualizar dados de usuário em tempo real usando tendências de em tempo real
O InTouch oferece dois tipos de objetos de exibição de tendência: Histórico e tempo real Os dois
objetos de tendência podem ser configurados para exibir representações gráficas de tags
diversas em um período de tempo.
Introdução
Tendências de em tempo real permitem a representação gráfica de até quatro penas (valores de
dados). Tendências de histórico permitem fazer a representação gráfica de até oito. Os dois tipos
de tendência são criados usando ferramentas especiais no WindowMaker. Um assistente de
tendência de 16 penas opcional está disponível.
O InTouch fornece também controle total de configuração de tendência. Por exemplo, é possível
especificar o intervalo de tempo, faixa de valor, resolução de grade, localização de registro de
tempo, localização de registros de valor, número de penas e em atributos de cores.
O InTouch suporta também um sistema de histórico distribuído que permite Recuperar dados de
histórico de qualquer arquivo de armazenagem de histórico InTouch, mesmo aqueles distribuídos
em uma rede.
Em Runtime, os dados são escritos na tendência da direita para a esquerda. Não é limite
para o número de tendências que podem ser colocadas em uma janela.
Opções de configuração
A primeira vez que um objeto de tendência em tempo real é colado dentro de uma janela, os
ajustes de configuração padrão do sistema são usados. Uma vez que uma tendência em tempo
real é configurada, a próxima tendência criada, terá, por padrão, os mesmos ajustes.
a. Clique duas vezes com o mouse no objeto de tendência.
A caixa de diálogo Real Time Trend Configuration é exibida:
Obs.: Todas as entradas feitas na caixa de diálogo Real Time Trend Configuration são
independentes do tamanho da tendência e não podem ser modificadas em Runtime.
Time Span: Insira a duração de tempo a ser exibido horizontalmente (eixo x) em uma tendência.
Selecione a opção Sec, Min ou Hr .
Sample-Interval: Insira a freqüência na qual a expressão de tendência será avaliada e a carta
atualizada. Depois selecione a opção Msec, Sec, Min ou Hr .
Color: Clique em Chart Color e selecione a cor de fundo.
Border Color: Selecione um cor de borda da tendência. Repita o processo para todas as
seleções.
Área Time Divisions - Number of Major Div: Insira o número das divisões com mais tempo para
a tendência. Depois selecione uma cor para as linhas de divisão.
O número das principais divisões de tempo deve ser um múltiplo par do número de Minor Div/
Major Div.
Área Time Divisions - Minor Div/Major Div: Insira o número das divisões de tempo menores a
serem visíveis dentro de cada divisão de tempo maior. Depois, selecione uma cor para as linhas
de divisão.
Área Time Divisions - Top Labels: Exibe os rótulos na parte superior da tendência.
Área Time Divisions- Bottom Labels: Exibe os rótulos na parte inferior da tendência.
Treinamento Wonderware
Seção 1 – Tendências em tempo real 7-5
As tendências podem ter rótulos na parte superior e inferior ou não ter nenhum rótulo.
Ao usar rótulos de tempo, insira o número de rótulos de tempo por linha de divisão principal na
caixa Major Div/Time Label do grupo Time Divisions.
Área Time Divisions - Colors: Selecione uma cor para as linhas de divisão de tempo principais.
Área Value Divisions: Os ajustes nesta área são configurados da mesma forma dos ajustes na
área Time Divisions , exceto pelas divisões de valor secundárias e principais ajuste a faixa do
valor vertical (eixo y) para a tendência. Esta Faixa usa Unidades de Medida e é a mesma para
todas as tags de tendência.
Para Exibir pontos decimais das divisões de valor secundária e principal em Runtime, eles devem
ser formatados nesta área da caixa de diálogo Real Time Trend Configuration . Por exemplo,
0,00 a 100,00.
Min Value: Deve ser configurado para o valor Mínimo de uma tag tendenciada.
Max Value: Deve ser configurado para o valor Máximo de uma tag tendenciada.
Expression: Insira a tag ou expressão para qual cada Pen fará a tendência.
Até quatro penas podem ser visíveis em uma tendência. As penas podem ser usadas para exibir
qualquer tagname local que contém um ou mais tagnames locais. (Tags de tipo de mensagem
não podem ser armazenados ou tendenciados.) A habilidade de tendenciar expressões é útil na
criação de exibições personalizadas para exibir tagnames com faixas amplamente diferentes.
Color: Selecione a cor de cada pena que imprimirá cada tag na tendência.
Width: Largura em pixels de cada traço. Selecionar uma largura de pena maior do que 1 reduz
significativamente o desempenho na atualização e impressão de tendência .
Botão Select Display Font: Exibe a caixa de diálogo Font . Selecione a fonte, o estilo e a
dimensão a ser usados quando imprimir a tendência.
Only update when in memory: Atualiza sua tendência somente quando ela é exibida na janela
ativa.
Se esta opção não é selecionada, a tendência será atualizada constantemente, mesmo se não
estiver em uma janela aberta. Isto pode resultar em um desempenho ligeiramente mais lento do
sistema.
Treinamento Wonderware
Laboratório 7 – Configuração de tendências em tempo real 7-7
Objetivos
Ao final deste laboratório, você:
z Importará e Converterá a Janela Real Time Trend
z Configurará uma tendência em tempo real
Treinamento Wonderware
Laboratório 7 – Configuração de tendências em tempo real 7-9
7. Redimensione o objeto Real-Time Trend para ocupar a maioria do painel. A janela Real Time
Trend deve agora estar semelhante à figura:
A caixa de diálogo Real Time Trend Configuration deve agora ser semelhante à figura:
Treinamento Wonderware
Seção 2 – Tendências de histórico 7-11
Objetivos da seção
z Introduzir e explicar as tendências de histórico InTouch
z Explicar as opções de configuração de tendência de histórico
Introdução
Tendências de histórico oferecem fotos de dados de uma hora e data no passado. Elas não são
dinâmicas. Diferente das tendências de em tempo real, tendência de histórico somente são
atualizadas quando são instruídas a fazê-lo, mesmo através da execução de um QuickScript ou
uma ação pelo operador (ex.clicar um botão). Até oito tags (penas) podem ser tendenciadas de
uma vez sem limite do número de tendências exibido. Você tem total flexibilidade no projeto de
interface para sua tendência. Scooters podem ser Criados e que o operador desliza sobre a
tendência para acessar uma variedade de dados com base na localização atual do scooter.
Por exemplo, quando o operador posiciona o scooter sobre uma área na tendência que tem
dados visíveis, o tempo e os valores na localização para todos os pontos de dados sendo
tendenciados são retornados.
É possível também criar botões para aplicar ou remover zoom entre os scooters ou para os
dados, como do valor máximo para mínimo. Desvio médio e padrão podem ser exibidos para um
gráfico completo ou para a área entre os scooters.
Tendências de histórico também podem ser roladas para qualquer quantidade de tempo. Escalas
personalizadas podem ser criadas e vinculadas ao tagname .MinEU e .MaxEU .fields para exibir
as Unidades de Medida mínima e máxima. O sistema de histórico distribuído estende as
capacidades de recuperação das tendências de histórico para incluir bancos de dados de
armazenagem remotos. O sistema permite que informações de bancos de dados de
armazenagem de histórico diversos sejam exibidas em uma única tendência.
Obs.: Você deve selecionar a opção Log Data para cada tag no Dicionário Tagname para que
elas sejam tendenciadas.
Além de suas capacidades de tendenciamento, o InTouch inclui o HistData Utility, projetado para
trabalhar com os arquivos de armazenagem de histórico InTouch. O utilitário HistData converte
arquivos de armazenagem de histórico encriptado (.LGH) para arquivos de variáveis separados
por vírgula (.CSV) para uso em planilha eletrônica ou ambientes de edição de texto como o
Microsoft Excel.
c. Clique em Close.
Obs.: As Unidades de Medida Min/Max são muito importantes para exibir dados de tendência de
histórico. A tendência de histórico exibe de 0-100% da escala EU.
b. Selecione a opção Enable Historical Logging para habilitar a armazenagem de tag global.
Treinamento Wonderware
Seção 2 – Tendências de histórico 7-13
c. Na caixa Keep Log Files for, insira o número de dias (anterior a hoje) do arquivos de
armazenagem serem mantidos no disco.
Obs.: O InTouch criará e salvará dois arquivos de armazenagem de histórico por dia (24 horas).
Portanto, considerar o espaço do disco ao configurar este valor. Se seu disco rígido não tem
espaço livre suficiente para salvar esse arquivo, a armazenagem parará. É necessário liberar
espaço no disco e reiniciar. A armazenagem pode ser iniciada e interrompida em Runtime
vinculando a tag interna $HistoricalLogging ao botão ou QuickScript ou usando o Comando
Restart Historical Logging no WindowViewer.
Por exemplo, se inserir 10 e hoje é o dia 12 do mês, os arquivos de armazenagem para os dias 2
a 12 (10 dias mais hoje) serão salvos no disco. O arquivo do dia 1o. será automaticamente
excluído. Se inserir um zero, os arquivos de armazenagem serão mantidos indefinidamente.
Store Log Files in Application Directory: Salva o arquivo de armazenagem de histórico em um
diretório do aplicativo.
Store Log Files in specific Directory: Salva os arquivos em outro diretório. Insira o caminho
completo do diretório que deseja usar.
Esta entrada deve ser um caminho DOS ou UNC como C:\histlog.
Por padrão, arquivos de armazenagem de histórico são nomeados da seguinte maneira:
YYMMDD00.LGH e YYMMDD00.IDX
onde: YY corresponde ao ano em que o arquivo foi criado
MM corresponde ao mês em que o arquivo foi criado (01-12)
DD corresponde ao dia em que o arquivo foi criado (01-31)
00 representa horas; sempre exibe zeros (independente de quando os arquivos de
armazenagem foram criados).
Por exemplo, se os arquivos foram criados em 28 de dezembro de 2005, eles seriam nomeados
da seguinte maneira:
05122800.LGH e 05122800.IDX
Obs.: Esta versão do InTouch é compatível com os arquivos de armazenagem com extensões
.LGH e .IDX. As versões anteriores do InTouch usavam a extensão .LOG para arquivos de
armazenagem.
Name of Logging Node: Insira o nome do nó de rede para o no que será armazenado no
arquivo de armazenagem de histórico.
Default % of page to print on: Insira a taxa de percentual para o tamanho da página para a
tendência.
Example: Se usar 50 como o percentual, quando imprimir uma tendência de histórico, ela
preencherá metade da página (na vertical e na horizontal). Uma cópia impressa deste tamanho
precisará aproximadamente de um quarto do tempo para preparar do que uma cópia impressa de
página inteira.
Max consecutive time to spend printing: Insira o número de milissegundos (fatia de tempo do
processador) que o módulo de impressão de tendência de histórico gastará consecutivamente
imprimindo.
Time to wait between printing: Insira o número de milissegundos que o módulo de impressão
de tendência de histórico esperará entre as cópias impressas.
Always use colors when printing: Quando usar uma impressora colorida ou plotter.
Select Printer Font: Acessa a caixa de diálogo Font do Windows.
Treinamento Wonderware
Seção 2 – Tendências de histórico 7-15
Obs.: A configuração do assistente Hist Trend w/Scooters and Scale é semelhante ao objeto
na barra Draw Objects.
b. Selecione Trends.
Obs.: Os assistentes 16-Pen Trend e 16-Pen Trend Scooter não serão exibidos se não forem
instalados durante a instalação original do InTouch.
c. Posicione o assistente Hist Trend with Scooters and Scale na janela InTouch.
Treinamento Wonderware
Seção 2 – Tendências de histórico 7-17
Values…: Esta opção permite personalizar as divisões de eixo vertical, o formato e a faixa.
f. Clique no botão Values… no assistente Historical Trend Chart .
A caixa de diálogo Value Format (Vertical Axis) é exibida:
Pens…: Esta opção permite ao usuário selecionar quais valores e cores cada pena imprimirá.
j. Clique no botão Pens… no assistente Historical Trend Chart .
A caixa de diálogo Trend Pens é exibida:
Treinamento Wonderware
Seção 2 – Tendências de histórico 7-19
Allow Runtime Changes: A seleção desta opção ajusta a tendência de histórico para que
seja sensível ao toque no WindowViewer e o operador poderá mudar os recursos como as
atribuições da pena ou a data e hora de início.
n. Certifique-se de que Allow Runtime Changes esteja selecionado no Historical Trend Chart
Wizard e clique em OK.
o. Alterne para Runtime.
p. Clique com o mouse no objeto de tendência no WindowViewer.
A caixa de diálogo Historical Trend Setup é exibida:
Obs.: Este modo de exibição da tendência afeta o desempenho. Além disso, ele é o
comprimento das linhas desenhadas para gerar a tendência: quanto mais longas as linhas,
mais tempo leva para gerá-las. A largura da linha também é um fator de desempenho. Linhas
mais largas precisam de mais tempo para serem desenhadas. Tendências Min/Max ou
Average/Scatter são geralmente muito mais rápidas de gerar do que Average/Bar Chart.
s. Chart Length: Insira o comprimento horizontal (eixo x) de tempo a ser exibido na tendência e
selecione o aumento de tempo de acordo com o comprimento.
Somente as tags que estão definidas com a opção Log Data selecionada serão exibidas para
a fonte de tag selecionada.
Clique duas vezes com o mouse no tagname que a pena selecionada imprimirá na tendência
ou selecione o tagname e clique em OK.
A caixa de diálogo Historical Trend Setup reaparece exibindo o tagname selecionado
próximo ao botão Pen# que foi clicado originalmente.
É possível abrir a lista drop-down Filter para visualizar os filtros que podem ser usados para
preencher o Tag Browser. A primeira entrada desta lista é <none>, o que significa que
nenhum filtro está sendo usado. Somente as tags que estão definidas com a opção Log Data
selecionada serão exibidas para a fonte de tag selecionada.
Treinamento Wonderware
Seção 2 – Tendências de histórico 7-21
Obs.: O diagrama acima explica a funcionalidade do botão Zoom Bar e Scroll Bar quando o
assistente Historical Trend não é configurado para atualizar automaticamente.
Use os scooters na parte inferior do assistente Hist Trend with Scooters and Scale para
identificar uma área específica. Depois, clique no botão Zoom In para aplicar zoom em uma
área específica.
Trend Pen Legend: Exibe o tagname e os valores nos Scooters para uma pena. Por padrão, o
valor de uma pena no ponto mais à esquerda da Tendência de Histórico é exibida à esquerda,
enquanto o valor da pena no ponto mais à direita é exibido no lado direito da Legenda Trend Pen.
Entretanto, é possível usar os scooters na parte inferior do assistente de Historical Trend para
exibir o valor de uma pena em um tempo específico.
b. Posicione duas Legendas Trend Pen na sua janela InTouch. Configure a primeira para o
Número da pena IntTag (e a cor da Pena de Tendência), e a segunda para o Número de Pena
RealTag (e cor).
Treinamento Wonderware
Seção 2 – Tendências de histórico 7-23
.Field Descrição
.ChartLength Leitura/Escrita de um .field tagname inteiro usado para controlar a duração de
tempo exibida em um gráfico de tendência de histórico. .ChartLength exibe o
comprimento do gráfico em segundos.
.ChartStart Leitura/Escrita de um .field tagname inteiro usado para controlar o tempo de
início e/ou para rolar a tendência de histórico correspondente. .ChartStart
exibe o número de segundos passados desde 12:00 h, 1/1/70.
.DisplayMode Leitura/Escrita de um .field tagname analógico usado para determinar o
método a ser usado na exibição de valores na tendência.
.MaxRange, Leitura/Escrita de um .fields tagname real usado para representar o percentual
.MinRange da faixa de Unidade de Medida da tagname que deve ser exibida para cada
tagname que está sendo tendenciado. Os limites para .MaxRange e
.MinRange são de 0 a 100 e .MinRange deve sempre ser menos do que
.MaxRange. Se um valor menor do que 0 ou superior a 100 é atribuído a
algum destes campos, o valor será fixado em 0 ou 100. Se .MinRange for
superior ou igual a .MaxRange, a tendência não exibirá nenhum dado.
.Pen1 - .Pen8 Leitura/Escrita de um .fields tagnames do tipo TagID usado para controlar o
tagname sendo tendenciado historicamente para cada pena. Um tagname
TagID pode apenas ser equiparado a outro tagname TagID. Ele não pode ser
combinado com nenhum outro tipo de tagname a menos que a extensão
.TagID seja adicionada ao outro tagname. .TagID não pode ser usado para
tagnames de fornecedor de histórico remoto.
.ScooterLockLeft Leitura/Escrita de campo discreto. Quando o valor deste campo é
VERDADEIRO, o scooter DIREITO não pode mover-se para a esquerda da
posição do scooter da esquerda. (0=FALSO, 1=VERDADEIRO).
.ScooterLockRight Leitura/Escrita de campo discreto. Quando o valor deste campo é VERDADE,
o scooter ESQUERDO não pode mover-se para a direita da posição do
scooter da direita. (0=FALSO, 1=VERDADE).
.ScooterPosLeft Leitura/Escrita de campo real que representa a posição do scooter esquerdo
(faixa 0,0 a 1,0).
.ScooterPosRight Leitura/Escrita de campo real que representa a posição do scooter direito
(faixa 0,0 a 1,0).
.TagID Leitura/Escrita de um .field do tagname TagID juntamente com a Tendência de
Histórico .Pen1 - .Pen8. Tagnames TagID monitoram e/ou controlam o
tagname que está sendo tendenciado pela pena.
.UpdateCount .Field inteiro somente leitura é incrementado quando uma recuperação está
completa para a tendência.
.UpdateInProgress .field discreto somente leitura que exibe o status da retenção de dados de
histórico (0=nenhuma recuperação em andamento, 1=recuperação em
andamento).
.UpdateTrend Leitura/escrita de .field de tagname discreto que pode ser ajustado para 1 para
fazer com que uma Tendência de histórico seja atualizada usando todos os
valores atuais
Treinamento Wonderware
Seção 2 – Tendências de histórico 7-25
Utilitário HistData
O utilitário HistData oferece acesso aos arquivos de dados de histórico criados pelo InTouch. Ele
é usado para mover dados de histórico selecionados para um programa solicitante, como o
Microsoft Excel.
HistData permite visualizar imediatamente dados de histórico ou criar um arquivo para acesso
posterior. O acesso pode ser obtido através de funções de macro em um programa solicitante ou
de dentro do InTouch.
O programa HistData deve ser iniciado e reduzido a um ícone antes de iniciar qualquer programa
que o utilizará.
Obs.: O utilitário HistData não pode ser usado com as referências de tagname remotas, por
exemplo, DBS:TAG (AccessName:Item).
PRINTTAGNAMES Discreta O padrão deste item é 1 e faz com que HistData imprima os
tagnames na primeira linha do arquivo de saída acima da coluna
de valores associada. Se os tagnames não devem ser
impressos, o valor deste item deve ser mudado para 0 (zero).
DATA Mensagem Este item é usado para manter os dados solicitados no programa
HistData no formato de variável separada por vírgula. Ele é
usado por outros aplicativos para RECOMENDAR ou
SOLICITAR dados através de DDE.
STATUS Discreta Exibe o status da última operação. 1 indica sucesso e 0 (zero)
indica que um erro ocorreu.
Tendência de Histórico e Horário de Verão
O sistema de histórico InTouch considera fusos horários
automaticamente. Para informações sobre considerações de
Horário de Verão, consulte a área de Suporte InTouch do website
Wonderware.
SENDDATA Inteiro Quando ajustado como 1, HistData atualizará o item DATA com
os dados solicitados. Quando a atualização está completa,
SENDDATA é automaticamente reinicializado como 0 (zero).
Treinamento Wonderware
Laboratório 8 – Configuração de tendências de histórico 7-27
Objetivo
Ao término deste laboratório, você deverá um amplo conhecimento da criação e configuração das
Tendências de Histórico InTouch .
Para isto, as seguintes tarefas devem ser concluídas com sucesso:
z Criar uma janela de tendência de histórico
z Configurar o assistente de tendência
z Definir o painel de zoom/Pan de tendência
z Definir a legenda da pena de tendência
z Definir o assistente HistData
z Definir os sliders
2. Clique em OK.
3. Pressione as teclas Ctrl+T para abrir o Dicionário Tagname.
4. Confirme que a opção Log Data está habilitada para IntTag.
5. Clique em Save.
Obs.: A armazenagem de histórico não pode ser realizada em uma Tag Message.
Treinamento Wonderware
Laboratório 8 – Configuração de tendências de histórico 7-29
Sliders
Tendência de
histórico com
Scooter e Escalas
Trend Zoom /
Pan Panel:
Legendas da Assistente
pena de HistData
tendência
Treinamento Wonderware
Laboratório 8 – Configuração de tendências de histórico 7-31
23. Clique no botão Suggest para inserir os tagnames corretos. Certifique-se de que o tagname
HistTrend seja usado.
24. Clique em OK.
26. Clique em Suggest para inserir os tagnames corretos. Novamente, certifique-se de que o
tagname HistTrend seja usado.
27. No grupo Color, use verde para Trend Pen.
28. Verifique se 1 está inserido na caixa Pen Number.
29. Deixe todas as outras entradas com seus padrões.
30. Clique em OK.
31. Clique duas vezes com o mouse na segunda Trend Pen Legend (para a tag RealTag).
32. Clique em Suggest.
33. Insira um Trend Pen Color Red e um Pen Number 2.
34. Clique em OK.
Treinamento Wonderware
Laboratório 8 – Configuração de tendências de histórico 7-33
Treinamento Wonderware
Laboratório 8 – Configuração de tendências de histórico 7-35
Uma caixa de mensagem será exibida perguntando se deseja iniciar o programa HistData:
Atualizar o
tempo atual
44. Mova os sliders para cima e para baixo para mudar os valores e escrevê-los no arquivo de
Armazenagem de Histórico.
45. Clique no botão Update to Current Time para atualizar a tendência com os dados mais
recentes.
46. Mova os scooters e clique nos botões Zoom para aplicar ou remover zoom.
47. Clique no botão “Save to File” para realizar a extração HistData. As informações extraídas
podem ser visualizadas no formato de planilha eletrônica no arquivo .csv indicado por
“Filename” no assistente HistData Panel.
Treinamento Wonderware
Módulo 8
Comunicação de E/S
Seção 1 – Protocolos de comunicação de E/S 8-3
Seção 2 – Servidores de E/S Wonderware 8-13
Laboratório 9–Configuração de comunicação de E/S 8-19
Seção 3 – Localização de falhas de E/S 8-25
8-2 Módulo 8 – Comunicação de E/S
Objetivos do módulo
z Explicar protocolos de comunicação de E/S
z Estabelecer comunicação com drivers de comunicação e estar apto a configurar e
localizar falhas em Servidores de E/S
Treinamento Wonderware
Seção 1 – Protocolos de comunicação de E/S 8-3
Objetivos da seção
z Explicar protocolos de comunicação de E/S
z Explicar e configurar um Nome de Acesso InTouch
Esta seção explica os protocolos de comunicação de E/S e demonstra como configurar um nome
de acesso InTouch.
Obs.: NetDDE um protocolo mais antigo usado para comunicação em rede para fontes
Wonderware e não Wonderware, é compatível com Windows XP e Windows 2000, mas não com
o Windows 2003 Server. A comunicação com fontes Wonderware é recomendada usando
SuiteLink.
Wonderware SuiteLink
O Wonderware SuiteLink usa um protocolo de base TCP/IP. O SuiteLink é projetado
especificamente para atender as necessidades industriais, como integridade de dados, alto
throughput e diagnósticos mais fáceis. Este protocolo padrão é compatível para Windows 2000,
Windows 2003 Server e Windows XP.
SuiteLink não é uma substituição para o DDE. Wonderware recomenda que DDE seja usado
para comunicação com cliente interno e SuiteLink para comunicação em rede.
Cada conexão entre um cliente e um servidor depende da situação de sua rede.
O SuiteLink fornece os benefícios a seguir:
z Altos volumes de dados consistentes podem ser mantidos entre aplicativos,
independente dos aplicativos estarem em um único nó ou distribuídos em um grande
número de nós.
z Qualidade de Tempo de Valor (VTQ) coloca um registro de data e hora e um indicador de
qualidade em todos os valores de dados fornecidos para clientes VTQ.
z Diagnósticos extensos de throughput de dados, carregamento de servidor, consumo de
recurso de computador e transporte de rede se tornam acessíveis através do monitor de
desempenho do sistema operacional Microsoft Windows NT® . Este recurso é crítico para
o esquema e a manutenção de redes industriais distribuídas.
z O protocolo de transporte de rede é o TCP/IP usando a interface padrão Winsock da
Microsoft. Para usar o Protocolo de Comunicação SuiteLink, as condições a seguir devem
ser satisfeitas.
z O Microsoft TCP/IP deve estar configurado e funcionando corretamente.
z É necessário usar nomes de computador (Node Names) de não mais do que 15
caracteres.
Para mais informações sobre a instalação e configuração do Microsoft TCP/IP,
consulte sua documentação do sistema operacional Microsoft Windows.
z O Wonderware SuiteLink deve estar executando com um serviço. Se por algum
motivo o SuiteLink foi interrompido, será necessário iniciá-lo novamente. (SuiteLink é
instalado automaticamente como um Componente Comum quando instalar seu
InTouch. Ele é configurado para iniciar automaticamente como um Serviço Windows).
Treinamento Wonderware
Seção 1 – Protocolos de comunicação de E/S 8-5
Obs.: Todos os ajustes de Servidor de E/S a seguir são específicos para o ambiente de
treinamento das instalações Wonderware. Seu instrutor fornecerá as informações de
configuração apropriadas.
Obs.: O nome de Acesso configurado nas etapas a seguir é usado no laboratório subseqüente.
Obs.: Nomes de Acesso também podem ser criados durante a definição de uma tag do tipo E/S
no dicionário Tagname.
c. Clique em Add.
Treinamento Wonderware
Seção 1 – Protocolos de comunicação de E/S 8-7
Treinamento Wonderware
Seção 1 – Protocolos de comunicação de E/S 8-9
Obs.: Nomes de Acesso usados por tags não podem ser excluídos.
a. Pressione Ctrl+T.
A caixa de diálogo Tagname Dictionary é exibida:
b. Clique em Detalhes.
c. Clique em New para adicionar um tagname.
d. No campo Tagname insira um nome válido para o novo tagname
e. Clique em Type.
A caixa de diálogo Tag Types é exibida:
Treinamento Wonderware
Seção 1 – Protocolos de comunicação de E/S 8-11
j. Clique duas vezes com o mouse no Nome de Acesso para usá-lo ou selecioná-lo e clique em
Close.
Na figura anterior, o nome de acesso PLC1 é selecionado para esta tag. O Nome de Acesso
selecionado (agora associado à definição da tag) é exibido próximo ao botão Access Name
na parte de detalhes do Dicionário Tagname (exibido a seguir).
k. Na Caixa Item, insira o nome do item ou o número de valor de dado no aplicativo IOServer,
PLC ou aplicativo associado. Se o nome do item deve ser o mesmo do tagname, selecione a
caixa Use Tagname as Item Name para preencher automaticamente o nome Item .
Obs.: Saiba que o “tagname” é o nome usado dentro do InTouch para se referir ao valor de dados
(tag). O Item é o nome usado para um aplicativo Windows remoto para fazer referência ao
mesmo valor. Estes nomes não têm que ser o mesmo, mas é recomendado que sejam.
l. Clique em Close.
Obs.: O campo Type pode ser modificado após adicionar o item, até que ele seja atribuído a um
link de animação ou usado em um script.
Treinamento Wonderware
Seção 2 – Servidores de E/S Wonderware 8-13
Objetivo da seção
z Configurar um Servidor de E/S Wonderware (Modbus)
Introdução
Os servidores de E/S Wonderware são programas de aplicativo Microsoft que habilitam outros
aplicativos Windows DDE (InTouch ou Excel) a acessar dados no mundo real (PLCs ou RTUs).
Os servidores Wonderware são a princípio destinados para uso com programa InTouch da
Wonderware; entretanto, eles podem ser usados por um programa Microsoft Windows capaz de
atuar como um cliente DDE.
Nesta seção, examinaremos a inicialização, configuração e o uso do servidor de E/S
Wonderware. Devido aos servidores de E/S da Wonderware serem aplicativos Windows, eles
terão a mesma aparência e as capacidades básicas. Tenha em mente que dependendo do
servidor requerido, hardware adicional (rede e outros) pode ser necessário e as telas de
configuração podem requerer informações adicionais.
As informações a seguir fazem referência ao servidor de E/S Modbus como um servidor de
comunicação ponto a ponto usando porta serial RS-232 para controladores lógicos programáveis
fornecidos no ambiente de treinamento das instalações Wonderware. Seu instrutor pode ter que
configurar as seguintes telas de forma diferente.
Obs.: Todos os ajustes de Servidor de E/S a seguir são específicos para o ambiente de
treinamento das instalações Wonderware. O instrutor fornecerá as informações de configuração
apropriadas. Ele acessa um PLC Koyo DirectLogic O5 através de sua porta de programação.
A caixa de diálogo Communication Port Settings é exibida. Esta caixa é usada para
configurar a porta de comunicação que será usada para comunicar-se com o equipamento
PLC.
Obs.: Este tempo-limite é mantido apenas quando o PLC falha ao responder. Quando o PLC
está respondendo normalmente, não há punição. O valor padrão de 3 segundos deve ser
suficiente para a maioria das configurações.
Área Protocol : Selecione o protocolo configurado para o equipamento anexado a esta porta
de comunicação. RTU é recomendado.
Área Baud Rate : Selecione o ajuste de baud rate (taxa de bit serial) que corresponda ao
equipamento conectado a esta porta de comunicação.
Área Data Bits : Selecione a opção para o número de bits de dados que corresponde à
configuração do equipamento nesta porta de comunicação.
Se ASCII for selecionado para o protocolo, use 7. Se RTU for selecionado, use 8.
Área Stop Bits : Selecione o número apropriado de bits de parada para a porta de
comunicação. Se baud rate for maior do que 300, os bits devem ser ajustados em 1.
Área Parity : Selecione o ajuste que corresponde à configuração do equipamento nesta porta
de comunicação.
Obs.: Todos os equipamentos em uma única porta de comunicação devem ser configurados
com o mesmo Protocol, Parity, Stop Bits, Data Bits e Baud Rate.
Treinamento Wonderware
Seção 2 – Servidores de E/S Wonderware 8-15
Para esta aula de treinamento, os seguintes ajustes devem ser configurados como exibido.
c. Salve suas mudanças no diretório sugerido e clique em Done para sair.
Obs.: Clique em Save para salvar os ajustes atuais inseridos na porta de comunicação
selecionada. A caixa de diálogo Communication Port Settings permanece exibida e outra
porta de comunicação pode ser configurada.
Obs.: Uma vez que os tópicos tenham sido definidos, seus nomes serão listados no painel
Topics desta caixa de diálogo.
b. Clique em New para adicionar uma nova definição de tópico. A caixa de diálogo MODBUS
Topic Definition é exibida:
c. Topic Name: Insira um nome exclusivo (até 32 caracteres de comprimento) para o PLC no
campo.
Obs.: Ao comunicar-se com o InTouch, este nome exato é usado como o nome de tópico na
definição de Nome de Acesso.
Treinamento Wonderware
Seção 2 – Servidores de E/S Wonderware 8-17
o. Clique no botão Done para fechar esta caixa de diálogo e retornar à janela do programa do
servidor.
p. Clique em Modify para mudar uma definição de tópico existente.
q. Clique em Deletepara excluir uma definição de tópico existente.
Treinamento Wonderware
Laboratório 9 – Configuração de comunicação de E/S 8-19
Laboratório 9 – Configuração de
comunicação de E/S
Introdução
Neste laboratório, você configurará um servidor Modbus e estabelecerá comunicação com drivers
de comunicação por meio da criação e animação de novas tags.
Assumptions
Este laboratório foi desenvolvido usando um PLC Koyo como a fonte de dados. Se um PLC
contendo lógica de simulação não estiver disponível, um laboratório semelhante usando o
programa SIMULATION é fornecido no Apêndice F,
“I/O Simulation.” O programa SIMULATION é incluído com o InTouch.
A configuração do Servidor de E/S Modbus está incluída como uma tarefa orientada pelo instrutor
começando em página 8-13. Se o servidor de E/S ainda não foi configurado, faça isto agora.
Obs.: Todos os ajustes de Servidor de E/S a seguir são específicos para o ambiente de
treinamento das instalações Wonderware. Seu instrutor fornecerá as informações de
configuração apropriadas.
Objetivos
Ao final deste laboratório, você:
z Iniciará e configurará o Modbus Server
z Definirá o MODBUS Topic
z Criará um Novo Nome de Acesso
z Criará uma Janela de Chão de Fábrica
3. Clique em Done.
Treinamento Wonderware
Laboratório 9 – Configuração de comunicação de E/S 8-21
Treinamento Wonderware
Laboratório 9 – Configuração de comunicação de E/S 8-23
Importante: Todas as tags, exceto Start, devem ser configuradas como ‘somente leitura’.
20. Crie as tags a seguir. Uma vez que estaremos nos comunicando com um PLC, as tags
precisarão ser atribuídas ao Nome de Acesso, PLC1, com os itens listados abaixo.
z O campo de texto Start deve ser alternado entre Verde e Vermelho quando clicado.
z O campo de texto Gate_Valve deve mudar de Verde para Vermelho quando o valor da
tag muda.
z Os campos de textos Valve_A e Valve_B devem mudar de Verde para Vermelho
quando o valor da tag muda.
z O campo de texto Agitator deve mudar de Verde para Vermelho quando o valor da tag
mudar.
z O campo de texto Drain_Valve deve mudar de Verde para Vermelho quando o valor da
tag muda.
z O campo de texto Tank_Level deve mudar quando o valor da tag muda.
Agora é com você. Tente ser o mais criativo possível. Por exemplo: use o máximo de links
de animação possível, implemente tendência, tente usar assistentes, bitmaps, etc.
Os materiais usados nesta visualização de processo são totalmente escolhidos por você.
Este processo será repetido desde que o ponto ‘Start’ permaneça True. Se ‘Start’ for
ajustada como ‘False’, o processo parará quando o valor ‘Tank_Level’ atinge 0 (zero).
Treinamento Wonderware
Seção 3 – Localização de falhas de E/S 8-25
Objetivo da seção
z Explicar a localização de falha para o InTouch E/S
Esta seção explica como localizar falhas de E/S de comunicação entre o servidor de E/S e o
InTouch, e entre o servidor de E/S e o PLC.
Obs.: Todos os ajustes de servidor de E/S são específicos para o ambiente de treinamento nas
instalações da Wonderware. O instrutor fornecerá as informações de configuração apropriadas.
Quando esta caixa de diálogo é exibida, observe as informações na segunda linha. Estas
informações indicam que ao menos uma tag no WindowMaker está vinculada ao Nome de
Acesso que define MODBUS como o nome do aplicativo e PLC1 como o nome de tópico.
Neste caso, quando o programa WindowViewer foi iniciado, ele imediatamente procurou um
aplicativo de servidor de E/S chamado MODBUS contendo um tópico definido como PLC1. Ele
não encontrou este aplicativo e/ou tópico e está notificando que comunicações não podem ser
estabelecidas.
A seguir, veja a descrição de três situações que farão com que a caixa de diálogo anterior abra.
z O servidor de E/S não está executando.
O aplicativo de servidor de E/S (MODBUS neste caso) não está executando. É possível
verificar abrindo Windows Task List (CTRL+ALT) e marcando a lista de aplicativos em
execução no momento para o servidor MODBUS.
z O nome do programa de servidor está escrito errado na definição de Nome de
Acesso.
O servidor está executando, mas seu nome está escrito errado em uma ou mais
definições de Nome de Acesso. O nome inserido na definição de Nome de Acesso deve
ser o nome do programa do servidor de E/S real (menos a extensão .EXE) como visto
no Windows Explorer.
z O tópico não está definido no servidor ou está escrito errado.
Presuma que o nome do servidor esteja escrito corretamente e esteja executando.
WindowViewer está agora procurando um tópico definido no servidor como PLC1.
Para verificar o nome de tópico, feche WindowViewer. O servidor não pode ser configurado se
o WindowViewer estiver em execução. Abra a janela do programa servidor de E/S e clique em
Configure / Topic Definition. Se houver um tópico definido como PLC1 listado na caixa de
diálogo, certifique-se de que ele esteja escrito exatamente da mesma forma (incluindo
espaços, etc.) como no campo de definição do Nome de Acesso.
Obs.: Certifique-se de que não há espaços em branco após o nome de tópico na definição
do servidor e do Nome de Acesso no WindowMaker.
Quando confirmar todas as situações acima, reinicie o WindowViewer e alterne para a janela
do programa do servidor. Os dados devem agora aparecer na janela. Este dado indica que o
WindowViewer e o servidor estejam comunicando. Os dados indicam também mensagens de
ler e escrever que o servidor está tentando enviar ao PLC. Não há mensagens de erro:
somente mensagens de status são escritas nesta janela.
Treinamento Wonderware
Seção 3 – Localização de falhas de E/S 8-27
Obs.: Cada Tópico nos servidores de E/S da Wonderware inclui um bit de status.
a. Clique em Special / Tagname Dictionary para abrir a caixa de diálogo Dicionário Tagname .
b. Crie uma tag do tipo Discreta E/S .
c. Clique em Access Name para atribuir a tag a uma definição de Nome de Acesso que define
IOStatus para seu nome de tópico.
A caixa de diálogo Access Name Definition é exibida:
Observe que uma definição de Nome de Acesso denominada PLC1 (o tópico que precisamos
monitorar) existe atualmente. Para certificar-se de que este é o Nome de Acesso correto (com
o nome de tópico de PLC1), será necessário acessar a janela Modify Access Name .
e. Clique em Cancel para fechar a caixa de diálogo e retornar à caixa de diálogo Access Name
Definition.
f. Clique em Add.
A caixa de diálogo Add Access Names é exibida:
Treinamento Wonderware
Seção 3 – Localização de falhas de E/S 8-29
l. Clique em Close.
m. Na caixa Item, insira o Access Name real a ser monitorado, neste caso, PLC1.
Obs.: Ao monitorar o status de um tópico usando o item Status, ao menos um ponto de E/S deve
estar ativo.
Para monitorar o status de toda comunicação ao tópico, PLC1, crie a seguinte definição de
tagname.
O teste para o tópico PLC1 (exemplo anterior) pode ser feito com a desconexão do PLC.
Treinamento Wonderware
Seção 3 – Localização de falhas de E/S 8-31
Treinamento Wonderware
Módulo 9
Objetivos do módulo
z Identificar as funções de E/S avançadas
z Modificar os parâmetros de E/S das tags e acessar nomes em Runtime
z Mudar a atribuição da tag em Runtime
z Usar ferramentas de criação de tag avançadas
z Excluir tags do dicionário Tagname
Treinamento Wonderware
Seção 1 – Funções de E/S avançadas 9-3
Objetivos da seção
z Identificar funções de E/S avançadas
z Explicar o endereçamento de referência dinâmica
Função IOSetAccessName
A função QuickScript IOSetAccessName modifica o nome de nó, nome de aplicativo ou
partes de nome de tópico tópico de um Nome de Acesso durante Runtime. Isto habilita a
implementação de estratégias hot-backup para InTouch.
Sintaxe IOSetAccessName("AccessName", "NodeName", "AppName", "TopicName");
Argumentos Descrição
AccessName O Nome de Acesso existente para atribuir os novos valores AppName e Topic Name.
String real ou tag de mensagem.
NodeName O novo Nome de Nó a atribuir. String real ou tag de mensagem.
AppName O novo Nome de Aplicativo a atribuir. String real ou tag de mensagem.
TopicName O novo Nome de Tópico a atribuir. String real ou tag de mensagem.
Os valores Nome de Acesso, Nome de Nó, Nome de Aplicativo e Nome de Tópico podem ser
especificados como strings literais ou eles podem ser valores de string fornecidos pelas tags
InTouch ou funções. Se um string ("") vazio é especificado para um argumento, este argumento
retém seu valor atual.
Por exemplo, o Nome de Acesso MyAccess1 pode ser modificado para apontar para o aplicativo
EXCEL e o tópico Book1, sem afetar o Nome de Nó atual, usando a seguinte função script.
IOSetAccessName("MyAccess1", "", "EXCEL", "Book1");
Se um string vazio for especificado para um Tópico, o valor do Aplicativo atual do Nome de
Acesso é atualizado e seu valor Tópico é retido.
Por exemplo, o seguinte muda o Nome de Aplicativo para nome de acesso MyAccess2 para
"EXCEL" sem afetar seu valor Tópico atual.
IOSetAccessName("MyAccess2", "", "EXCEL", "");
De forma semelhante, se um string vazio for especificado apenas para um Nome de Aplicativo, o
valor Tópico atual da tag é atualizado e seu valor Aplicativo é retido.
Por exemplo, o seguinte muda o Tópico para tagname MyAccess3 para "Book2" sem afetar seu
valor de Nome de Aplicativo atual.
IOSetAccessName("MyAccess3", "", "", "Book2");
Por exemplo, o seguinte muda o Tópico para tagname MyAccess3 para "PLC2" sem afetar seu
valor de Nome de Nó atual ou Nome de Aplicativo.
IOSetAccessName("MyAccess3", "", "", "PLC2");
Este exemplo seria usado quando a redundância de PLC é um requisito.
Parâmetros Descrição
Tagname Qualquer tagname de ES InTouch encerrado por aspas.
AccessName O Nome de Acesso para o qual mudar a tag.
Item O Item para o qual mudar a tag.
Os valores Tagname, AccessName e Item podem ser especificados como strings literais
ou eles podem ser valores de string fornecidos por outras tags InTouch ou funções.
Por exemplo, o campo .Reference do tagname MyTag1 pode ser modificado para apontar o
nome de acesso Excel e o item R1C1 usando a função script a seguir.
IOSetItem("MyTag1", "excel", "R1C1");
ou por:
Number = 1;
TagNameString = "MyTag" + Text(Number, "#");
IOSetItem(TagNameString, "excel", "R1C1");
Se um string (" ") vazio for especificado para os valores Nome de Acesso e Itens, a tag é
desativada. Por exemplo, a tag MyTag2 é desativada por.
IOSetItem("MyTag2", "", "");
Se um string vazio for especificado apenas para um Item, o valor Item atual da tag é retido e seu
valor AccessName é atualizado. Por exemplo, o seguinte muda o Nome de Acesso para tagname
MyTag3 para "Excel2 " sem afetar seu valor Item atual.
IOSetItem("MyTag3", "excel2", "");
Obs.: Se um espaço aparecer entre as aspas duplas, o argumento é ajustado como blank ou
deactivate. Nenhum espaço entre aspas duplas significa “não mude este argumento.”
Da mesma forma, se um string vazio for especificado apenas para um AccessName, o valor Item
atual da tag é retido e seu valor AccessName é atualizado. Por exemplo, o seguinte muda o Item
para tagname MyTag3 para "R1C2" sem afetar seu valor Access Name atual.
IOSetItem("MyTag3”, "", "R1C2");
Treinamento Wonderware
Seção 1 – Funções de E/S avançadas 9-5
Sintaxe Descrição
Tagname.Reference="accessname.item” Muda o Nome de Acesso e item.
Tagname.Reference="[.]item” O mesmo Nome de Acesso, item diferente.
Tagname.Reference="accessname” Muda o Nome de Acesso.
Tagname.Reference= “ “ Desativa o tagname. Se um Nome de Acesso ou
Item não for especificado, o valor atual para esse
campo é assumido.
.ReferenceComplete 1 = Valid I/O for tag.0 = Either Access Name ou Item
is invalid for tag.
Obs.: Referências dinâmicas são usadas para visualizar pontos de dados cujos valores somente
são necessários temporariamente, como aplicativos em diagnósticos. Isto o torna uma ferramenta
ideal de localização de falhas. Uma vez que a fonte de dados de um tagname pode ser
modificado, referências dinâmicas não devem ser usadas para dados que precisam ser
permanentemente armazenados ou continuamente monitorados para condições de alarme.
Treinamento Wonderware
Seção 2 – Tags indiretas 9-7
Objetivos da seção
z Explicar o conceito e a prática de Tags indiretas
z Discutir as vantagens e desvantagens de usar Tags Indiretas
Esta seção explica o conceito e a prática de tags indiretas, incluindo discussões das vantagens e
desvantagens.
Tags indiretas
As tags do tipo indireta permitem criar uma janela e reatribuir as tags naquela janela a diversas
fontes. Por exemplo, é possível criar um Data Change QuickScript que modificaria a fonte de
todas as tags em uma janela, com base no valor que foi modificado.
Quando adequar uma tag indireta a outra fonte de tag, as tags indiretas e fonte tornam-se cópias
exatas uma da outra em todos os aspectos, incluindo .fields, scripts, etc.
Se o valor da tag fonte muda, a tag indireta reflete a mudança. Se o valor da tag indireta muda, a
tag fonte muda de acordo. É possível definir os valores de tag indireta no banco de dados como
retentivas e reiniciá-las para assumir a última atribuição da tag na inicialização.
As tags indiretas são atribuídas usando o campo .Name. Por exemplo, se criar uma tag analógica
indireta denominada Setpoint e usar a expressão abaixo em uma QuickScript, Setpoint1 se
tornaria a fonte para o valor do Setpoint, e vice versa:
Setpoint.Name = "Setpoint1";
Setpoint.Name = Setpoint1.Name;
É possível também concatenar tagnames para uso em tags indiretas. Por exemplo, se criou um
Data Change QuickScript que executa toda vez que um valor do tagname "Number" muda, o
tagname indireto, "Setpoint," mudaria de acordo:
Number = 1;
Setpoint.Name = "Setpoint" + Text(Number, "#" );
Quando este QuickScript é executado, o valor da tag analógica Number é convertido para texto e
adicionado à tag analógica Setpoint, tornando o Setpoint.Name igual a Setpoint1.
As tags do tipo analógicas indiretas são usadas para tags inteira (números completos) e real
(ponto flutuante).
As tags indiretas podem ser mapeadas para qualquer tag desde que sejam do mesmo tipo.
Obs.: Se uma atribuição indireta não existir ou se a tag não foi criada, a última atribuição é
retida.
Treinamento Wonderware
Laboratório 10 – Criação e uso de tags indiretas 9-9
Objetivos
Ao final deste laboratório, você:
z Criará e usará as tags indiretas
3. Crie duas novas tags denominadas Tag_A e Tag_B, com um Min Value de 0 e um Max
Value de 100. Cada uma é um tipo Inteiro de Memória.
4. Anexe uma Tag_A a um slider como exibido.
Treinamento Wonderware
Laboratório 10 – Criação e uso de tags indiretas 9-11
8. Clique em Validate.
Será solicitado que defina uma referência de tag Indirect_Toggle.
9. Clique em OK.
Treinamento Wonderware
Laboratório 10 – Criação e uso de tags indiretas 9-13
Treinamento Wonderware
Seção 3 – InTouch SuperTags 9-15
Objetivo da seção
z Definir as SuperTags usando a estrutura de modelo SuperTag
Introdução
As SuperTags são uma ferramenta de desenvolvimento que fornece um modo de organizar e
duplicar rapidamente tags.
O InTouch fornece uma estrutura de modelo que permite a definição de tipos de tagname
compostos conhecidos como SuperTags. Modelos SuperTag podem conter até 64 tagnames
membros e 2 níveis de encadeamento.
Uma SuperTag parente pode conter até 64 membros filhos embutidos e cada membro filho pode
conter até 64 tagnames submembros para um total de 4096 tagnames membros. (Quando um
modelo SuperTag parente é embutido em outro ele se torna um membro filho ).
Todas as tags filhas modelo SuperTag comportam-se exatamente como tags normais. Elas são
compatíveis com tendência, alarme e todos tagname .fields.
Por uma questão de conveniência, o InTouch fornece um TemplateMaker que pode ser usado
para criar suas SuperTags. O TemplateMaker permite criar, editar e excluir modelos e tagnames
membros SuperTag.
O InTouch salva todos os modelos SuperTag no arquivo SUPERTAG.DAT dentro de seu diretório de
instalação InTouch (não no diretório do aplicativo). Isto permite que os modelos sejam usados em
qualquer aplicativo.
O InTouch fornece também a habilidade de criar SuperTags de diversos modos alternativos. Por
exemplo, as SuperTags podem ser criadas diretamente do Dicionário Tagname, em um tagname
de link de animação ou caixas de entrada de expressão, em InTouch QuickScripts, ou em um
arquivo externo que pode ser descarregado dentro de seu aplicativo usando o utilitário InTouch
DBLoad.
Quando criar um modelo parente SuperTag, seu nome é adicionado automaticamente à sua caixa
de diálogo tagname Tag Types no Dicionário Tagname e fica imediatamente disponível para
seleção quando um novo tagname é criado. WindowMaker não precisa ser reiniciado para definir
tagnames usando um tipo de SuperTag recentemente criado.
Sintaxe SuperTag
Uma vez que os InTouch tagnames são limitados a 32 caracteres, cada SuperTag
ParentInstance\ChildMember\Sub-member é restrita a um máximo de 32 caracteres. Uma
referência SuperTag somente pode ser um máximo de dois modelos
(ParentInstance\ChildMember) e com um membro de detalhe ilustrado na figura a seguir.
Cada membro em um modelo SuperTag está acessível no formato padrão atualmente usado para
acessar os .fields dos tipos tagnames InTouch normais. A sintaxe de referência SuperTag é
compatível em todo o InTouch onde tagnames normais podem ser usados. Por exemplo, uma
referência de SuperTag válida seria:
ColdRoom4\EvapUnit1\FanMotor2.MaxEU
Referências de tag remota também são compatíveis com SuperTags. Por exemplo:
PLC1:"Turkey\EvapUnit2\PrsRegVlv.EngUnits"
Treinamento Wonderware
Seção 3 – InTouch SuperTags 9-17
Sem o uso de modelos SuperTag, precisaríamos definir manualmente cada tagname individual
para cada valor de dados em cada câmera frigorífica multiplicado pelo número total de câmeras.
Em outras palavras, teríamos que organizar e definir dezenas de tagnames no Dicionário
Tagname.
Usando SuperTags podemos economizar horas de tempo de desenvolvimento e minimizar a
possibilidade de cometer erros. Usando o cenário da câmera frigorífica descrito acima, criamos
um modelo parente SuperTag chamado EvapUnit. Este EvapUnit se tornará mais tarde um
membro filho do modelo parente ColdRoom. Este é um conceito de projeto de base de detalhe.
EvapUnit será definido com sete tagnames submembros.
c. Insira um nome exclusivo para o novo modelo no campo Name: . O nome deve ter um
máximo de 10 caracteres, iniciando com um caractere alfanumérico. Os caracteres especiais
não são suportados.
Ao adicionar novos modelos parentes, seus nomes abrem imediatamente como um tipo de
tagname no Dicionário Tagname (caixa de diálogo Tag Types) e estão imediatamente
disponíveis para seleção. Não é necessário reiniciar WindowMaker para definir novos
tagnames e atribuí-los ao tipo SuperTag.
d. Description: Insira qualquer informação para descrever o modelo (Opcional).
e. Clique em OK.
A caixa de diálogo TemplateMaker é reexibida mostrando o novo nome de modelo em sua
janela:
Observe que uma vez que um modelo é criado, os botões Add Member e Delete tornam-se
ativos. O dia, a data e a hora quando o modelo foi criado e/ou modificado pela última vez e a
descrição do modelo são agora exibidos quando o nome do modelo é selecionado.
Treinamento Wonderware
Seção 3 – InTouch SuperTags 9-19
Obs.: A janela TemplateMaker exibe todos os modelos parentes SuperTag definidos e seus
membros filhos em uma lista hierárquica. Para expandir a visualização do modelo, clique com o
botão esquerdo do mouse ao lado do nome do modelo. Todas as tags membro definidas para o
nome de modelo parente serão exibidas. Para recolher a visualização, clique com o botão
esquerdo do mouse ao lado do nome do modelo novamente.
Obs.: O tipo especificado aqui é apenas um placeholder para o modelo SuperTag. Por
padrão, todas as tags membro são ajustadas como tipos Memória quando definidos no
TemplateMaker. Entretanto, quando definir uma instância de modelo no Dicionário Tagname,
será necessário especificar se serão tags do tipo Memória - ou E/S.
g. Crie um outro modelo parente chamado ColdRoom. ColdRoom terá um tagname membro,
RoomTemp e dois modelos filhos membros EvapUnit, EvapUnit1 e EvapUnit2.
Os dois modelos filhos membros usarão o parente, EvapUnit, modelo SuperTag para seus
tipos.
h. Selecione InTouch Templates e depois clique em New Template.
A caixa de diálogo New Template é exibida:
i. Insira um nome exclusivo para o modelo parente novo no campo de texto Name (máximo de
10 caracteres.)
j. Insira qualquer informação para descrever o modelo no campo de texto Description .
k. Clique em OK.
A caixa de diálogo TemplateMaker é reexibida mostrando o novo nome de modelo em sua
janela:
l. Clique em OK.
Treinamento Wonderware
Seção 3 – InTouch SuperTags 9-21
Agora, crie três membros para nosso modelo parente ColdRoom, dois membros filhos
EvapUnit e um tagname membro, RoomTemp.
m. Selecione o modelo parente SuperTag (neste caso, ColdRoom) e depois clique em Add
Member.
A caixa de diálogo New Member Tag é exibida:
Obs.: Se pressionar a tecla ESC para fechar o TemplateMaker ao invés de OK, o modelo não será
excluído. Quando um modelo é excluído, todos os tagnames membros associados também são
excluídos.
Treinamento Wonderware
Seção 3 – InTouch SuperTags 9-23
Exemplos são tagnames definidos no Dicionário Tagname que usa uma SuperTag como seu tipo.
Em outras palavras, as modificações que fazemos na SuperTag não são retroativas. Entretanto,
todas as novas instâncias definidas usando a SuperTag modificada usam a nova composição.
De forma semelhante, se um tagname membro é adicionado à instância SuperTag através de um
método alternativo, seu modelo não é atualizado.
d. Clique em Type e selecione o tipo para o membro SuperTag. (A seleção das opções restantes
não é necessária neste contexto.) Neste caso, I/O Real.
e. Clique em Save ou Close para adicionar o membro.
f. Para visualizar o tagname membro na SuperTag Turkey sem sair do Dicionário Tagname,
selecione a opção Members na parte superior da caixa de diálogo.
Treinamento Wonderware
Seção 3 – InTouch SuperTags 9-25
i. Clique em Yes para criar outra instância SuperTag que é uma cópia exata da instância
SuperTag exibida.
Treinamento Wonderware
Laboratório 11 – Definição de SuperTags 9-27
Objetivos
Ao final deste laboratório, você:
z Criará novo modelo
z Criará novos membros
Treinamento Wonderware
Laboratório 11 – Definição de SuperTags 9-29
O novo Modelo Pump e os Membros são exibidos como mostrado na figura a seguir:
Treinamento Wonderware
Laboratório 11 – Definição de SuperTags 9-31
Treinamento Wonderware
Laboratório 11 – Definição de SuperTags 9-33
Edição de modelos
23. Abra TemplateMaker.
24. Expanda Pump Template.
25. Selecione Temp Pump Member e clique no botão Delete.
26. Confirme a exclusão clicando em Yes.
Treinamento Wonderware
Laboratório 11 – Definição de SuperTags 9-35
Pump3 não contém o tagname Temp porque ele foi baseado em Pump Template que você
editou.
Treinamento Wonderware
Seção 4 – DBDump e DBLoad 9-37
Objetivo da seção
z Explicar o uso dos utilitários DBDump e DBLoad
Introdução
Há dois programas de utilitário Dicionário Tagname : DBDump e DBLoad
DBDump: Exportar um aplicativo InTouch Dicionário Tagname como um arquivo de texto que
pode ser visualizado ou editado em outro programa (como um Microsoft Excel).
DBLoad: Importar um arquivo Dicionário Tagname formatado (criado em outro programa como
Excel ou um arquivo DBDump de outro aplicativo InTouch) para um aplicativo InTouch existente.
Estes dois utilitários permitem ao Dicionário Tagname ser copiado, modificado ou desenvolvido
em partes separadas e mescladas em um aplicativo.
O utilitário DBLoad também pode ser usado como uma alternativa para o InTouch TemplateMaker
criar instâncias SuperTag.
Obs.: Os utilitários DBDump e DBLoad são lançados de outro Gerenciador de Aplicativo InTouch
(INTOUCH.EXE). Além disso, é necessário converter um aplicativo criado em uma versão anterior
do InTouch antes de seu Dicionário Tagname poder ser extraído.
Utilitário DBDump
Veja como extrair um dicionário tagname de um aplicativo InTouch existente.
a. Feche WindowMaker e WindowViewer se eles estiverem em execução.
b. Inicie o InTouch Application Manager.
Name of CSV Dump file: Insira um nome para o arquivo que termine com a extensão .CSV
(Variável Separada por Vírgula) . Se o nome já existir, uma caixa de mensagem será aberta.
Group output by types: Agrupe os tagnames extraídos por tipo de tag ao invés de
alfabeticamente por tagname (padrão).
A informação de banco de dados do diretório do aplicativo selecionado será descarregada no
nome de arquivo especificado.
Quando o arquivo .CSV é aberto em Microsoft Excel, ele vê a vírgula como um delimitador e
automaticamente separada os registros de dados em colunas.
Treinamento Wonderware
Seção 4 – DBDump e DBLoad 9-39
Quando o arquivo .CSV é aberto em Notepad, cada registro de dados é separado por uma
vírgula.
Usando DBLoad, é possível:
z Mudar as propriedades de armazenagem.
z Fazer mudanças em massa ao dicionário Tagname.
z Modificar as propriedades existentes da tag .
Se a tag é renomeada, o DBLoad criará uma nova tag ao invés de excluir a instância de tag
original.
Não é possível excluir uma tag usando DBLoad; entretanto, novas tags podem ser criadas.
Obs.: Para mais informações sobre os modos de operação, consulte o Guia do Usuário InTouch.
Utilitário DBLoad
Usando o DBLoad, é possível importar tags de outros aplicativos, depois importar outras janelas.
O tamanho do arquivo pode se tornar grande ao carregar grandes quantias de tags, mas não
excessivamente.
Obs.: Use o arquivo exportado como um backup e realize um DBLoad no caso de falha de
sistema.
Name of CSV Load file: Insira o caminho para o arquivo .CSV para carregar ou localizar o
arquivo usando as caixas de listagem Directories e Drive. Uma vez que o arquivo esteja
devidamente selecionado seu nome será exibido no campo.
d. Clique em OK. A informação do banco de dados contido no arquivo selecionado começará a
carregar no Dicionário Tagname selecionado do aplicativo.
Treinamento Wonderware
Seção 4 – DBDump e DBLoad 9-41
Obs.: Quando o DBLoad é usado para criar instâncias SuperTag, estas instâncias não são
refletidas na definição de modelo SuperTag no TemplateMaker.
Quando criar uma SuperTag com DBLoad, deve-se usar o formato SuperTag válido e os registros
de dados de instância SuperTag devem começar com a palavra-chave válida para o :type do
tagname.
Por exemplo:
Treinamento Wonderware
Seção 5 – Otimização do dicionário Tagname 9-43
Objetivos da seção
z Explicar substituição, conversão e exclusão de tag/link
z Importar e exportar janelas
z Usar o utilitário de Referência Cruzada InTouch
Há diversos modos de editar links existentes e tags. Esta seção inclui a substituição, conversão e
exclusão de tagnames, assim como a utilização de Utilitário de Referência Cruzada InTouch.
Exclusão de Tags
Excluir tags é deliberadamente difícil no InTouch.
z Quando o WindowViewer estiver executando, excluir uma tag não é permitido.
z Quando uma tag é referida por algum script ou link de animação, ela não pode ser
excluída. Use a ferramenta Referência Cruzada para determinar o uso de tag.
Em outras palavras, para excluir uma tag não usada do Dicionário Tagname, deve-se concluir as
seguintes etapas:
z Desligue o WindowViewer.
z Elimine o uso de tag com o utilitário Cross Reference.
z Atualize a Contagem de Uso em Special/Update Use Counts.
z Confirme a exclusão.
O botão Delete não estará disponível se o WindowViewer estiver em execução ou se o InTouch
considerar que o tagname como usado no aplicativo.
Área Search Criteria : Permite a você limitar o escopo de sua busca. O escopo pode ser
determinado pela seleção das opções requeridas apenas.
z Search for all occurrences: Faça uma busca de todos os usos do tagname ou SuperTag
em link de animação, InTouch QuickScripts e todos os programas adicionais como SPC,
SQL Access Manager, Recipe Manager, etc.
z Search for specific occurrences: Faça uma busca apenas para o tagname ou SuperTag
nas opções especificadas.
Por exemplo, para buscar o uso nos scripts de janela, selecione Usage in window
scripts
z Filter: Insira um nome exclusivo para identificar o filtro que deseja definir ou abra a lista
drop-down Filter para selecionar um filtro selecionado previamente da lista. Quando
definir filtros, o nome que inserir é adicionado à lista Filter.
z Search: Começa a busca de referência cruzada com base no critério de visualização
especificado.
Treinamento Wonderware
Seção 5 – Otimização do dicionário Tagname 9-45
Ícone Descrição
Tagname ou SuperTag é atribuído a um objeto InTouch ou usado para armazenar um valor em
um InTouch QuickScript, assistente ou programa adicional. Clique para expandir a visualização
do nível.
Clique para desfazer a visualização do nível expandido.
Exibido para todos os scripts Application On Startup, While Running e On Shutdown; Scripts
Window On Show, While Showing e On Hide e scripts Key On Key Down, While Down e On
Key Up. Clique duas vezes com o mouse no ícone para visualizar.
Tagname ou SuperTag exibido é usado em um script Window.
Quando fizer referência cruzada pelo Window, este ícone precede o nome da janela na qual o
tagname ou SuperTag exibido é usado.
Tagname ou SuperTag exibido é usado em um Aplicativo SPC Pro.
Tag exibida é usada como um Inibidor de alarme. Clique duas vezes com o mouse ou clique
Treinamento Wonderware
Seção 5 – Otimização do dicionário Tagname 9-47
f. Clique duas vezes com o mouse em um tagname e depois clique duas vezes com o mouse
em qualquer um de seus scripts associados para abrí-lo na caixa de diálogo Script usage
for <Tag Name> .
g. Clique em Close.
h. Clique em Contract View na janela InTouch Cross Reference Utility para fazer a caixa de
diálogo retornar ao seu modo padrão.
O campo de lista drop-down no alto da caixa de diálogo exibe todos os scripts associados à
tag selecionada.
Treinamento Wonderware
Seção 5 – Otimização do dicionário Tagname 9-49
i. Abra a lista e selecione outro script. Para scripts Application, Window, Key e Condition, a lista
contém os nomes de todos os scripts que usam este tagname.
Para scripts Data Change, somente o tagname é listado.
Para QuickFunctions, a lista conterá os nomes de todos os QuickFunctions (visualização
somente leitura).
By Window Name: Fazer referência cruzada por nome de janela classifica a exibição por
nome de janela e depois pelos tagnames usados na janela.
Obs.: Esta visualização mostra apenas os tagnames usados na janela. Ela não inclui o uso
em link de animação, scripts, etc.
b. Na caixa File name, insira o nome para salvar o arquivo de referência cruzada. O arquivo
somente pode ser salvo como um arquivo .CSV .
c. Clique em Save.
Treinamento Wonderware
Seção 5 – Otimização do dicionário Tagname 9-51
d. Clique em OK.
Exclusão de diversos tagnames não usados
Após ter atualizado a contagem de uso, o InTouch permitirá excluir todas as tags não usadas. É
possível excluí-las uma por uma no Dicionário Tagname ou diversas de uma vez usando o
comando Delete Unused Tags.
a. Clique em Special / Delete Unused Tags.
A caixa de diálogo Choose Names to Delete é exibida:
b. Selecione os tagnames com Ctrl pressionada e clique em cada tag, depois clique em Delete.
c. Clique em All para excluir todos os tagnames exibidos.
Treinamento Wonderware
Seção 5 – Otimização do dicionário Tagname 9-53
Atenção: Todo o Dicionário Tagname deve ser lido a fim de atualizar a contagem de tagname
exibido. Quando esta opção está habilitada, o desempenho pode cair quando mudanças são
feitas no Dicionário Tagname. Se seu Dicionário Tagname for grande, não selecione esta
opção.
Treinamento Wonderware
Laboratório 12 – Exclusão de Tags 9-55
Objetivos
Ao final deste laboratório, você:
z Atualizará contagem de uso
z Excluirá tags
3. Clique em Yes.
4. Clique em OK.
Treinamento Wonderware
Laboratório 12 – Exclusão de Tags 9-57
Exclusão de tags
5. Selecione Special / Delete Unused Tags do menu do WindowMaker.
A caixa de diálogo Choose Names to Delete é exibida: A lista de tags não usadas em seu
sistema pode ser diferente.
7. Clique em Delete.
O sistema solicita que confirme a operação de exclusão.
8. Clique em OK.
9. Clique em OK.
Treinamento Wonderware
Módulo 10
Segurança
Seção 1 – Modelos de segurança 10-3
Laboratório 13–Estabelecer segurança 10-15
Seção 2 – Proteção do aplicativo 10-27
10-2 Módulo 10 – Segurança
Objetivos do módulo
z Definir Modelos de Segurança básicos
z Explicar o Modelo de Segurança InTouch
z Implementar Segurança InTouch
Treinamento Wonderware
Seção 1 – Modelos de segurança 10-3
Objetivos da seção
z Definir modelos de segurança
z Explicar a segurança InTouch
Introdução
Este módulo fornece as características gerais de três modelos de segurança disponíveis no
desenvolvedor InTouch (a opção None é auto-explicativa). O enfoque é no modelo de segurança
de base InTouch.
Todos os métodos de segurança InTouch são configuráveis com granularidade de aplicativo, o
que significa ser possível operar dois aplicativos com duas configurações de segurança diferentes
no mesmo computador.
Todos os três métodos de segurança são compatíveis com a distribuição de aplicativos de
Desenvolvimento de Aplicativo de Rede (NAD). A segurança de base InTouch trabalha com NAD
como nas versões anteriores do InTouch. Para mais informações sobre NAD, consulte o
Desenvolvimento de Aplicativo de Rede no Guia do Usuário InTouch.
O desenvolvedor InTouch pode selecionar entre três modelos de segurança:
z ArchestrA Security: Segurança de base ArchestrA para o Industrial Application Server
(IAS) é centralizada independente de NAD ser usado ou não.
Atividades referentes à Segurança IAS são configuradas externamente no Ambiente de
Desenvolvimento Integrado (IDE). Para mais informações sobre IDE, consulte o Guia de
Ambiente de Desenvolvimento Integrado (IDE) Wonderware ArchestrA.
Após selecionar uma autenticação e autorização ArchestrA, as opções Change
Password, LogOn, Configure Users e LogOff no menu Special...Security estão
disponíveis.
Os detalhes sobre os recursos disponíveis no Industrial Application Server são abordados
em um curso separado.
z InTouch Security: Ao aplicar segurança ao seu aplicativo, é possível controlar funções
específicas que um operador está autorizado a realizar vinculando estas funções às tags
internas. Registro de auditoria pode ser criado que ligam o operador a todos os alarmes/
eventos que ocorrem durante o tempo em que ele está conectado ao sistema.
Segurança é baseada no conceito do operador se conectar ao aplicativo, digitando seu
nome e senha. É necessário configurar o nome do usuário, senha e nível de acesso para
cada operador.
Não há associação entre o sistema operacional Microsoft e a segurança InTouch.
Segurança InTouch
A proteção de um aplicativo InTouch significa três coisas diferentes para pessoas diferentes:
Desenvolvedores de Aplicativo podem desejar proteger o sistema operacional, as ações dos
operadores de auditoria ou proteger o próprio aplicativo InTouch. Para acomodar as diferentes
necessidades, o esquema de segurança InTouch inclui várias opções para uma variedade de
aplicativos.
Em alguns casos a principal preocupação de segurança é limitar o acesso do operador a outros
aplicativos Windows ou ao sistema operacional no nó local .
As funções script estão disponíveis para bloquear o uso de teclas como <ALT> ou <TAB>. Há
modos de configurar o WindowViewer (View) para operar sempre maximizado ou para ocultar seu
menu de forma que os operadores não possam fechá-lo.
Em outros casos, a segurança pode incluir a auditoria das ações do operador (acompanhando o
que é feito e quando é feito). Eventos e tags de sistema inativo do InTouch podem rastrear estas
ações.
Em outros casos segurança significaria restringir os recursos de um aplicativo com base em
privilégios estabelecidos para o usuário atual (como uma identificação de usuário) ou o grupo ao
qual o usuário pertence (como Papéis). Esta funcionalidade é conseguida com o ajuste de um link
de visibilidade ou de desabilitação ao objeto com acesso limitado (por exemplo, um botão para
abrir outra janela).
O InTouch retém a segurança tradicional InTouch com base em um arquivo binário contendo uma
lista de usuários de aplicativo com senhas e níveis de acesso. O InTouch inclui funções de script
de segurança adicional e tags de sistema.
Treinamento Wonderware
Seção 1 – Modelos de segurança 10-5
O InTouch inclui a função script EnableDisableKeys() que habilita/desabilita as teclas ALT, TAB
ou WIN em Runtime. Essa desabilitação proíbe a alternância entre janelas de aplicativo ou
acesso àbarra de tarefa. Esta função, combinada com os ajustes WindowViewer: Always
Maximize e hide Menu bar e as opções de controle do Windows, protegerão de forma eficiente o
sistema operacional.
Outra prática comum para ocultar/exibir a barra de menu em View é criar uma janela de estilo
popup com suas coordenadas X,Y ajustadas em 0,-38, altura de 38 pixels e largura
correspondente à resolução do monitor (ex. 1024). Este exemplo usa o SO Microsoft Windows
Server 2003, resolução de tela de 1024 x 768. Os valores variarão dependendo do SO e da
resolução usada. Os valores serão -48 e +48 se a aparência e a funcionalidade do XP forem
aplicadas.
Treinamento Wonderware
Seção 1 – Modelos de segurança 10-7
Auditoria
Acompanhar o que os operadores fazem não faz com que um aplicativo InTouch seja mais seguro
mas é um aspecto importante de segurança no InTouch.
Quando os usuários e grupos (ou papéis) são criados para serem usados em um aplicativo
InTouch, registro de auditoria podem vincular os operadores a todos os alarmes/eventos que
ocorrem durante o tempo em que eles estão conectados ao sistema. Alarmes e eventos são muito
semelhantes em natureza, já que os dois requerem que uma condição ocorra e devem ser
armazenados. A diferença entre os dois é que os eventos, diferente dos alarmes, não requerem
um reconhecimento.
Objeto de alarme
distribuído
Controle ActiveX
AlarmViewerCtrl1
O Objeto de Alarme ActiveX contém links para as tags de segurança OS/ArchestrA. O Objeto de
Alarme Distribuído, não.
Proteção do aplicativo
O InTouch fornece um número de tags System e funções script que permitem que os
desenvolvedores InTouch configurem segurança para o aplicativo individual.
Obs.: Aplicar segurança ao seu aplicativo é opcional. O ajuste de segurança padrão para
aplicativos InTouch é None.
Entretanto, ao aplicar segurança ao seu aplicativo, é possível controlar funções específicas que
um operador está autorizado a realizar vinculando estas funções às tags internas. Uma vez que o
usuário seja validado e conectado ao aplicativo InTouch, as tags de sistema $Operator e
$AccessLevel contêm informações sobre o usuário e seu nível de acesso.
Para conectar-se a um aplicativo InTouch , o usuário pode clicar em Special / Security / Logon,
chamar uma função script para exibir uma caixa de diálogo (padrão) de conexão ou conectar-se
através de uma janela de conexão personalizada.
Obs.: Consulte o Guia de Referência InTouch para uma documentação completa das Tags de
Sistema e funções script
$AccessLevel é a tag usada para proteger os aplicativos InTouch. É a principal tag do sistema
para modificar o que um usuário ($Operator) pode ou não fazer durante o Runtime. Por exemplo,
para desabilitar um botão, apenas ajuste um link do tipo "disable" ou "visibility" a ele com uma
expressão como $AccessLevel < 9000.
Treinamento Wonderware
Seção 1 – Modelos de segurança 10-9
Se o menu Special não for exibido no WindowViewer, um registro personalizado na janela pode
ser criado para o operador fazer a conexão ao aplicativo.
Faça o link dos tagnames do sistema $OperatorEntered, $PasswordEntered e
$OperatorDomainEntered aos objetos de entrada do usuário ou use-os em um QuickScript para
ajustar User Name, Password e Domain Name. Estes são tagnames de mensagens internas
que têm por objetivo ser a operação de escrita apenas.
Por exemplo:
Set the User Name string into ->$OperatorEntered
Set the User Password string into ->$PasswordEntered
O $OperatorDomainEntered é necessário apenas se o modo de segurança for baseado em
sistema operacional. Além disso, se o modo de segurança for baseado em sistema operacional e
o valor $OperatorDomainEntered for nulo, ele é tratado para apontar uma máquina local.
Após o operador conectar-se ao aplicativo, o acesso a qualquer função protegida será dado
mediante a verificação da senha e do nível de acesso comparado ao valor especificado para o
tagname de segurança interno será vinculado à função.
Por exemplo, para fazer um objeto tornar-se visível com base no nível de acesso do usuário
conectado, a declaração a seguir poderia ser usada em uma expressão de link de animação
Visibilidade:
$AccessLevel >= 2000
Ou um QuickScript pode ser vinculado a uma declaração IF:
IF $Operator == "DayShift" THEN
Show "Control Panel Window";
{e outras linhas que somente são executadas para o Turno do Operador}
ENDIF;
É possível também controlar a funcionalidade touchscreen de um objeto com base no valor do
tagname de segurança interna usando o link de animação Disable . Por exemplo:
Se ninguém estiver conectado e a expressão acima for usada, o objeto ou botão é protegido
contra violação.
b. A primeira vez que usar segurança, é necessário fazer o logon como Name: Administrator e
Password: wonderware. Use Special / Security / Logon.
c. Selecione Special / Security / Configure Users.
A caixa de diálogo Configure Users é exibida:
Treinamento Wonderware
Seção 1 – Modelos de segurança 10-11
Conexão a um aplicativo
Há quatro tópicos pertinentes à conexão ao sistema de segurança InTouch.
z Special / Security / Log On
z Função QuickScript Post Logon Dialog (detalhada em Apêndice G, “Funções de script.”)
z Função QuickScript Attempt Invisible Logon (detalhada em Apêndice G, “Funções de
script.”)
z SystemTags ($OperatorEntered, $PasswordEntered)
To Log On using the Special / Security / Log On method
a. Clique em Special / Security / Log On.
A caixa de diálogo Log On é exibida:
Se a conexão for correta, a tag $AccessLevel será ajustada para seu valor pré-definido como
configurado na lista de segurança de usuário.
Treinamento Wonderware
Seção 1 – Modelos de segurança 10-13
b. Advertência: Insira o número de segundos que podem decorrer sem atividade do operador
(cliques do mouse ou seqüência de teclas) antes da tag discreta do sistema
$InactivityWarning ser ajustada como 1 (Verdadeiro).
$InactivityWarning pode ser usada em um Condition QuickScript para exibir uma janela
alertando o operador de que a sessão do sistema está prestes a ser encerrada .
Se o operador clica com o botão do mouse, pressiona uma tecla ou realiza uma ação usando
qualquer outro dispositivo de indicação antes do tempo limite especificado transcorrer,
$InactivityWarning e o temporizador são reinicializados e a sessão não é encerrada.
c. Timeout: Insira o número de segundos que podem decorrer sem atividade do operador
(cliques do mouse ou seqüência de teclas) antes da tag discreta do sistema
$InactivityTimeout ser ajustada como 1 (Verdadeiro).
Treinamento Wonderware
Laboratório 13 – Estabelecer segurança 10-15
Objetivos
Ao final deste laboratório, você será capaz de:
z Criar novas contas de usuário
z Criar método de conexão
z Criar scripts de segurança
z Configurar a navegação da janela
z Testar segurança
5. Clique em OK.
Treinamento Wonderware
Laboratório 13 – Estabelecer segurança 10-17
8. Anexe um script Touch Link - Touch Pushbuttons - Action ao botão rotulado Logon.
A função script PostLogonDialog( ) solicita ao usuário fazer a conexão ao aplicativo e
retorna o resultado como um valor DISCRETE. Como não é necessário armazenar o valor
retornado para este exercício, você usará uma tag local LogonResult para este valor.
9. Insira o script exibido no gráfico a seguir.
Treinamento Wonderware
Laboratório 13 – Estabelecer segurança 10-19
26. Valide e clique com o mouse em OK, depois em OK novamente para sair da caixa de diálogo
Animation Links Selection .
Obs.: O exemplo anterior usa o Sistema Operacional Windows 2003 com Temas XP ativados
com uma resolução de tela de 1024 x 768. Os valores variarão dependendo do sistema
operacional e da resolução usada. Tente Y Location em -38 para aparência e funcionalidade do
Windows NT.
28. Posicione um objeto bitmap na janela e aumente-o para cobrir toda a janela.
29. Clique com o botão direito do mouse no objeto bitmap e selecione Import Image.
30. Selecione o arquivo wwb1.jpg do diretório c:\wwimport.
Treinamento Wonderware
Laboratório 13 – Estabelecer segurança 10-21
39. Converta o conteúdo da janela Menu (F2, Special / Substitute Tags / Convert / Local).
Dica: Certifique-se de que a janela Menu esteja ativa antes de clicar F2 clicando uma vez em
uma área em branco da janela, por exemplo na área em preto do texto Disk Space Free.
Em seguida, é necessário vincular os botões nas janelas Menu, Historical Trend e Real-Time
Trend as suas respectivas janelas e configurar o script.
Treinamento Wonderware
Laboratório 13 – Estabelecer segurança 10-23
Obs.: O exemplo anterior usa o Sistema Operacional Windows 2003 com Temas XP ativados
com uma resolução de tela de 1024 x 768. Os valores variarão dependendo do sistema
operacional e da resolução usada. Tente Y Location em -38 para aparência e funcionalidade do
Windows NT.
Treinamento Wonderware
Laboratório 13 – Estabelecer segurança 10-25
Treinamento Wonderware
Seção 2 – Proteção do aplicativo 10-27
Objetivo da seção
z Explicar a aplicação de opções de segurança personalizadas a um aplicativo
Treinamento Wonderware
Seção 2 – Proteção do aplicativo 10-29
Área Miscellaneous
Beep when objects touched: Para que todos os objetos sensíveis touchscreen emitam um
bip quando selecionados no WindowViewer.
Update all trends "fast" para atualizar os objetos de tendência mais rapidamente.
Selecione esta opção somente quando estiver totalmente seguro de que nenhum objeto
esteja sobrepondo seus objetos de tendência em Runtime. Caso contrário, a tendência não
será desenhada corretamente.
Debug Scripts: Escreve uma mensagem para o programa Wonderware Logger sempre que
um QuickScript é executado.
Se selecionar a opção de menu Debug na folha de propriedade WindowViewer Properties/
Window Configuration, poderá habilitar e desabilitar este comando em Runtime do menu
Special do WindowViewer.
Use old SendKeys somente se estiver usando um aplicativo internacional desenvolvido
usando InTouch Versão 3.26 ou anterior (Esta é uma opção legada e não é usada para o
FactorySuite).
Área Blink Frequency: Slow, Medium, Fast: Insira as velocidades (em milissegundos) a serem
usadas para fazer piscar link de animação.
Área I/O
Retry Initiates: Insira quantos segundos devem transcorrer antes do InTouch tentar conectar-
se novamente a um servidor de E/S. Esta caixa não tem efeito quando o InTouch pode
conectar-se corretamente com o servidor de E/S pela primeira vez.
Start local servers: Exibe uma caixa de diálogo quando o WindowViewer é inicializado e o
servidor com o qual está tentando se comunicar não estiver executando.
Obs.: Após modificar qualquer um destes parâmetros, o WindowViewer deve ser reiniciado para
aplicar as mudanças.
Área Hotlinks
Show Halo around Hotlink: Exibe uma auréola quadrada em Runtime quando move o
cursor sobre um objeto.
Halo follows object shape: Exibe uma auréola em torno das bordas de um objeto em
Runtime quando move o cursor sobre um objeto.
Show halo around Active X control: Exibe uma auréola quadrada em Runtime quando
move o cursor sobre um controle Active X.
Área Keyboard
InTouch Keyboard: Exibe o teclado alfanumérico padrão na tela ou o teclado numérico
InTouch quando um link de animação é ajustado como Keypad = Yes.
Resizeable Keyboard: Exibe um teclado alfanumérico dimensionável na tela ou o teclado
numérico quando um link de animação é ajustado como Keypad = Yes. Clique em Options
para selecionar as propriedades da fonte. Selecione os parâmetros X e Y Location, Width e
Height para a dimensão inicial e o posicionamento em Runtime. O teclado ou o teclado
numérico é redimensionável durante o Runtime.
Windows Keyboard: Exibe o teclado internacional Windows com teclado numérico quando
um link de animação é ajustado como Keypad = Yes.
Treinamento Wonderware
Seção 2 – Proteção do aplicativo 10-31
Área Menus
Menu Bar: Evita que a barra de menu seja exibida.
WindowMaker: Evita que o operador possa alternar para o programa WindowMaker (Selecionar
esta opção não afeta a alternância rápida para o WindowMaker).
Logic: Evita que o operador inicie ou pare toda execução QuickScript durante o Runtime.
É possível usar a tagname de sistema $LogicRunning para permitir que o operador inicie e pare
todos os QuickScripts.
Obs.: Se a opção Allow CTRL-Break to stop scripts estiver selecionada, o operador poderá
parar a execução de todos os QuickScripts, independente se o menu Logic é exibido ou não.
Obs.: É necessário limpar a opção Control Menu (também denominada menu Sistema) a fim de
ocultar o botão close (X) no canto superior direito do aplicativo.
Title Bar Text: Insira o título a ser exibido na barra de título de seu aplicativo em Runtime. Ex.:
ABC Company, Paint APP1
Obs.: Não é possível mudar a barra de título se estiver usando uma "Licença Promocional."
Show Application Directory in Title Bar: Inclua o caminho ao diretório do aplicativo na barra de
título. Por exemplo: ABC Company, Paint APP1 - C:\DEMOAPP1
Hide Title Bar: Oculta a barra de título do aplicativo em Runtime.
Impossible to Close: Evita que o operador feche o WindowViewer.
Obs.: É necessário limpar a opção Control Menu (também denominada menu Sistema) a fim de
ocultar a caixa close (X) no canto superior direito do aplicativo.
Allow CTRL-Break to stop scripts: Permite que o operador pressione a seqüência de tecla CTRL
+ BREAK e pare a execução de todos os QuickScripts quando necessário durante o Runtime.
Obs.: QuickFunctions assíncronos que estão atualmente em execução não podem ser parados.
Entretanto, é possível evitar que novos QuickFunctions assíncronos sejam executados.
Disable ALT key para desabilitar a tecla ALT e evitar que o operador execute comandos de menu
usando a tecla ALT + acelerador. Por exemplo, ALT + FX para sair do aplicativo.
Obs.: Limpe a opção Control Menu (ou menu de Sistema) para ocultar a caixa close (X).
Hide Cursor para evitar que o cursor seja exibido durante o Runtime (se uma tela touchscreen
será usada).
Disable CTRL-ESC key para evitar que o operador acesse o menu Start do Windows para fechar
e/ou alternar entre aplicativos.
Disable WIN key para evitar que o operador acesse o menu Start do Windows para fechar e/ou
alternar entre aplicativos.
Always Maximize para manter o programa WindowViewer maximizado todo o tempo.
Obs.: As seleções de janelas home não têm efeito quando a alternância rápida é usada para
iniciar o WindowViewer. As janelas Home são abertas automaticamente quando o
WindowViewer é iniciado diretamente de seu ícone ou de seu comando de menu.
c. Clique em OK.
Treinamento Wonderware
Seção 2 – Proteção do aplicativo 10-33
Title Bar Text: Insira o título que deseja que seja exibido na barra de título de seu aplicativo em
Runtime.
Show Application Directory: Inclua o caminho ao diretório do aplicativo na barra de título.
Spacing: Insira o número de pixels para espaçamento entre as coordenadas de ajuste à grade.
Show Grid: Exiba uma grade em suas janelas quando habilitar a funcionalidade Snap to grid do
WindowMaker.
Obs.: Quando selecionar esta opção, a opção Close WindowViewer localizada na folha
WindowViewer Properties General Properties é automaticamente selecionada também.
Pick Through Hollow Objects: Selecione os objetos que estão atrás de objetos vazios.
Line Selection Precision: Insira o número de pixels que seu cursor pode se distanciar de uma
linha e ainda poder selecioná-la. Na maioria dos casos, o ajuste de parâmetro padrão de 4 deve
ser suficiente.
Level of Undo: Insira o número de níveis de desfazer/repetir a ser salvo (até 25 níveis). Insira
zero (0) para desabilitar a funcionalidade desfazer/repetir.
Um nível representa uma ação. As pilhas de desfazer e refazer são esvaziadas quando uma nova
janela é criada ou quando uma janela existente é aberta. As duas pilhas são esvaziadas quando a
janela é salva.
Obs.: Após estes ajustes serem modificados, o WindowMaker deve ser iniciado para aplicar as
mudanças.
Treinamento Wonderware
Módulo 11
Backup do aplicativo
Seção 1 – Backup do aplicativo 11-3
11-2 Módulo 11 – Backup do aplicativo
Objetivo do módulo
z Explicar o salvamento de um aplicativo e otimização dele para distribuição/implantação
Treinamento Wonderware
Seção 1 – Backup do aplicativo 11-3
Objetivo da seção
z Identificar os métodos de backup para aplicativos InTouch
Introdução
Antes de continuar com qualquer mudança de conteúdo do diretório de aplicativo, é altamente
recomendado que o arquivo de aplicativo tenha back up no disco rígido sempre que possível.
Ao fazer o back up de um aplicativo InTouch, WindowViewer deve SEMPRE encerrar. É
recomendado também que o WindowMaker seja encerrado.
Fazer o back up dos arquivos cria um registro de seu desenvolvimento e garante a recuperação
do trabalho no caso de algum evento inesperado.
Uma operação de backup deve ocorrer antes de mudanças significativas no aplicativo ou antes
de um aplicativo ser distribuído/implementado em outro nó.
Uma vez publicado um aplicativo, é possível usar diversos métodos para carregar o arquivo do
aplicativo publicado em outro nó InTouch.
z Copiar para um disquete
z Copiar o arquivo para a intranet de sua empresa
z Copiar o arquivo através da Internet
z Executar o arquivo de auto-extração como um programa no nó de destino
Treinamento Wonderware
Seção 1 – Backup do aplicativo 11-5
d. Clique em Next.
A caixa de diálogo InTouch Application Publisher -- Step 2 of 4 é exibida:
e. Enter Author Name: Insira o nome da pessoa (até 256 caracteres) para entrar em contato
com referente ao aplicativo.
f. Enter a short description…: Insira uma descrição para o aplicativo (até 256 caracteres).
Enter package name…: Insira um nome para o pacote (até 32 caracteres).
7. Clique em Next.
Obs.: A informação inserida na etapa anterior, enquanto solicitada, somente é usada quando
publicada para um Cliente IIS como FS WebServer ou SuiteVoyager® 1.0. A informação é
armazenada em um arquivo denominado packagename.inf e não é um componente
necessário ao copiar o executável de auto-extração.
h. Enter the InTouch application source…: Insira o caminho correto para a fonte de aplicativo
InTouch. O padrão é o diretório de aplicativo WindowMaker.
i. Runtime only: Evita a inclusão de arquivos de desenvolvimento WindowMaker no arquivo
publicado. Esta opção não é recomendada se deseja-se editar este aplicativo no
WindowMaker.
10. Clique em Next.
Treinamento Wonderware
Seção 1 – Backup do aplicativo 11-7
k. Verifique se o nome executável na primeira caixa está correto (por padrão, ele será o mesmo
do Package Name que você especificou).
l. No segundo arquivo, insira o caminho para o diretório onde deseja salvar o arquivo publicado
ou clique em Browse para localizar um diretório diferente.
m. NÃO publique em um local de disquete (A:\). Copie os arquivos publicados para o disquete
após a operação de publicação ser correta.
n. Clique em Finish.
Arquivo Descrição
ALARM.CFG Este arquivo binário contém informação de armazenagem de alarme e
impressão.
ALMGRP.INI Arquivo de texto contendo as Listas de Grupo de Alarme especificados
na configuração Name Manager/Distributed Alarms.
APP.VER Este arquivo binário contém a versão do aplicativo.
APPEDIT.LOK Arquivo somente leitura criado pelo WindowMaker para evitar que
diversos nós sejam editados no aplicativo.
APPCHNGD.FMS Arquivo atualizado do WindowMaker ao realizar um Special/Notify
Clients é realizado.
APPLIST.INI Arquivo de texto contendo informações sobre as cores personalizadas
e transparentes usadas pela Paleta do WindowMaker.
APPSTG.STG Arquivo binário contendo informações sobre as cores personalizadas e
transparentes usadas pela Paleta do WindowMaker.
APPLOGIC.LGC Este arquivo binário contendo o script Application (On Start, While
Showing, On Shutdown).
COLORCH.INI Arquivo de texto contendo as 32 cores usadas pelas caixas de seleção
de cor no WindowMaker.
DB.INI Este arquivo contém os padrões para cada caixa de diálogo no
Dicionário Tagname.
DDE*.AVL, DDE*.BIN, DDE.CFG Estes arquivos contêm informações de nomes e nós de Acesso DDE.
DHISTCFG.INI Este arquivo é usado pelo sistema de histórico distribuído.
DS######.CFG Este arquivo contém informação de configuração de conjunto de
dados SPC.
DS######.DAT Este arquivo binário contém dados coletados usando SPC.
DS.INF Este arquivo binário contém informação de conjunto de dados.
GROUP.DEF Este arquivo contém informações para grupos de alarme tagname.
HISTLOG.CFG Este arquivo contém informação de configuração usada pelo Historical
logger.
HISTPRV.INI Arquivo de texto contendo informação do provedor de histórico
distribuído especificado pela configuração Name Manager/
Distributed History .
INTOUCH.INI Este arquivo contém a informação de configuração usada pelo InTouch
para o aplicativo.
INTRACK.INI Arquivo de texto contendo informação sobre a configuração InTrack.
INTRACK.ITL Arquivo binário contendo informação da taglist InTrack.
ITOCX.CFG Arquivo binário contendo informação de referência cruzada sobre
controles ActiveX usados no aplicativo.
LINKDEFS.INI Este arquivo contém os padrões para cada caixa de diálogo de link no
WindowMaker.
OCX.INI Arquivo de texto contendo o Globally Unique Identifier (GUID) e uma
descrição de cada controle ActiveX registrado no InTouch dos
Assistentes de Instalação/Active X.
Treinamento Wonderware
Seção 1 – Backup do aplicativo 11-9
Arquivo Descrição
PASSWORD.BIN Este arquivo binário contém os Nomes de Usuários, Senhas e Níveis
de acesso usados na seção de segurança do aplicativo.
RETENTIV.X, RETENTIV.A, Estes arquivos binários contêm valores retentivos para este aplicativo.
RETENTIV.D, RETENTIV.H,
RETENTIV.S, RETENTIV.T
SECCONFIG.XML Este arquivo contém a definição de modelo de segurança para este
aplicativo.
SERIAL.TRN Este arquivo contém os números de série para todas as tendências em
tempo real no aplicativo.
SPC.CFG Arquivo binário contendo informação sobre a configuração SPC.
SPC.INI Arquivo de texto contendo informação sobre a configuração do nome
da fonte de Conjunto de dados SPC Dataset e de dados SPCPro.
SPCPASSWORD Arquivo binário contendo a configuração de usuário/senha para coleta
de dados baseada em eventos e automática para o banco de dados
SPCPro.
SUPERTAG.DAT Arquivo binário contendo as definições de modelo usadas pelo
WindowMaker ao criar SuperTags a partir do Dicionário Tagname.
SQL.DEF Arquivo de texto contendo a bindlist e os modelos definidos a partir do
SQL Access Manager.
TAGBRW.DAT Arquivo binário contendo a última configuração usada pelo Tag
Browser.
TAGNAME.AVL, Estes arquivos contêm informações específicas sobre itens no
TAGNAME.NDX, TAGNAME.X Dicionário Tagname.
TBOX.INI Este arquivo contém os ajustes iniciais para a caixa de ferramentas.
Ele é atualizado toda vez que o WindowMaker é fechado e reiniciará
com os mesmos ajustes para o aplicativo.
*.TRN Este arquivo representa informações de tendência para uma janela. Se
uma janela não tiver informações de tendência, não haverá arquivo
.TRN correspondente.
VERS_RES.INF Este arquivo contém o número de versão InTouch e a resolução de tela
do aplicativo.
VIEW.INI Este arquivo contém as seleções de janela padrão usados pelo
WindowViewer.
*.WIN Este arquivo WindowMaker contém uma descrição detalhada de cada
janela. Nomes de arquivo estão no formato a seguir: win#####.win.
WIZ.INI Arquivo de texto contendo informação sobre os Assistentes
registrados no InTouch a partir do Install Wizards/ActiveX.
WM.INI Este arquivo contém as seleções de janela padrão usados pelo
WindowMaker na inicialização.
*.WVW Quando uma janela é carregada pela primeira vez pelo WindowViewer
ela é “compilada” e salvo no arquivo .WVW. Isto melhora
consideravelmente o tempo de carregação de janela no
WindowViewer.
WWREPORT.INI Arquivo de texto contendo o tagname da tag a ser incrementada ao
usar a função de comunicação InTrack.
WW_WDWS.NDX Este arquivo contém uma referência cruzada dos nomes de janela do
aplicativo.
*.AEH Este é um arquivo de texto criado pelo programa WWLOGGER.EXE e
contém o registro de erro para todos os produtos Wonderware.
Arquivo Descrição
*.ALG Este é o arquivo ALARM. Ele é um arquivo de texto criado pelo
programa de alarme InTouch e contém uma lista de todos os alarmes
armazenados.
*.LGH Este arquivo binário contém dados armazenados do InTouch.
*.IDX Este é o arquivo índice para o arquivo *.LGH.
*.CSC Este arquivo binário contém um script de condição.
*.KSC Este arquivo binário contém um script Key.
*.CSV Arquivo de texto no formato Variável Separada por Vírgula.
*.TXT Arquivo de texto.
*.BMP, *.JPG. *.PCX, *.TGA Arquivos gráficos/imagens contendo um objeto bitmap do bitmap tem
um link String Value Display.
*.PAL Arquivo de Paleta do Windows criado para exportar uma paleta de cor
do WindowMaker ou por um utilitário de terceiros.
*.WAV Arquivo de som Microsoft.
*.NEH Arquivo de texto criado pelo Wonderware NT Conversion Logger
quando um aplicativo InTouch de 16 bits é convertido para 32 bits.
Contém um registro do processo de conversão, incluindo qualquer erro
encontrado.
*.DCH Este arquivo binário contém um script Data Change.
*.NMD Um arquivo binário contendo um script QuickFunction.
*.OES Um arquivo binário contendo um script ActiveX event.
*.?BK Todos os arquivos com .?BK são arquivos backup. O InTouch cria
arquivos backup de todos os arquivos editados. Todos os arquivos
backup podem ser excluídos quando o aplicativo é concluído. Isto
liberará espaço de disco e tornará o diretório do aplicativo menor para
fazer backups ou transportar um aplicativo.
Determinados arquivos InTouch podem ser excluídos para conservar espaço de disco.
Geralmente, qualquer arquivo cuja extensão termine em BK (ex..cbk) pode ser excluído pela
especificação de uma exclusão de *.?BK em um dos utilitários de manipulação de arquivo (ex.
Winfile ou Explorer).
Porque o WindowViewer sempre compila um arquivo .wvw novo para cada nova versão dos
arquivos .win, todos os arquivos .wvw podem ser excluídos e novos arquivos .wvw serão
compilados a partir dos arquivos .win existentes quando o WindowViewer é lançado.
Dependendo de como o aplicativo foi configurado, arquivos de armazenagem de histórico e
arquivos de armazenagem de alarme podem ser armazenados no diretório de aplicativo. Se os
arquivos de armazenagem são desnecessários, todos os arquivos que terminam com .LGH e
.IDX (arquivos de armazenagem de histórico) podem ser removidos. A maioria dos arquivos
restantes são essenciais para um aplicativo e não devem ser mexidos.
Se é necessário reduzir ainda mais o tamanho, um utilitário de compressão pode ser usado (ex.
PKZip ou WinZip) ou um utilitário de backup pode ser usado para condensar e armazenar o
aplicativo. Ao usar um dos programas de compressão, recomenda-se converter o arquivo zipado
em um arquivo zip de auto-extração pela execução do zip2exe ou um equivalente. Isto garantirá
que o destinatário do aplicativo tenha a versão correta para descomprimir o arquivo.
Treinamento Wonderware
Apêndice A
Características gerais
Este Apêndice explica:
z Mudanças na Licença FactorySuite 2000
z Definição/Descrição/Função da Licença
z Etapas de instalação
z Requisitos de componente
z Pacote
z Questões de chave de hardware
z Licenças Demo
z Atualização de FactorySuite 2000
z Uso de versões anteriores
z Problemas de instalação
z Compatibilidade Ano 2000
z Outras questões de compatibilidade
Para mais informações sobre dúvidas de licenciamento, consulte o Guia de Administradores de
Sistema FactorySuite , a Wonderware TechNote #113, Características gerais do sistema de
licença FactorySuite contido no Wonderware KBCD, ou no site Wonderware
www.wonderware.com/support.
As questões podem ser enviadas também por meio de fax ou diretamente para a equipe de
Suporte Técnico da Wonderware através do site Tech Support Web.
Introdução
Wonderware® FactorySuite® 2000 é formado de componentes de software integrados que são
entregues em CD-Roms de diversos produtos em uma única caixa de CD-ROM. O Acordo de
Licença Wonderware dá o direito de usar e exibir o software em um único computador em um
único endereço.
Além disso, a Wonderware fornece diversos tipos de mecanismos de validação para licença e
habilitação de programas de software específicos. Isto é realizado por meio de um novo sistema
de gestão de licença que substitui o Utilitário FactorySuite 1000 License.
Licença FactorySuite2000
O FactorySuite 2000 tem um arquivo de licença, WWSuite.lic, que está localizado na pasta
Licenses no disco de arquivo de licença. Toda a informação para os componentes FactorySuite
licenciados está contida neste arquivo.
O arquivo de licença FactorySuite 2000 WWSuite.lic está localizado no sub-diretório \Common no
diretório de instalação FactorySuite (geralmente \Program Files\FactorySuite\Common\
Licenses).
O Utilitário FactorySuite 2000 License que vem com o FactorySuite 2000 pode ler arquivos de
licença instalados e instalar novos arquivos de licença.
Cada arquivo de licença contém o nome do cliente, nome da empresa e localização e as opções
licenciadas do cliente. Esta informação pode ser visualizada usando o programa License Viewer.
O arquivo de licença é formado de dois níveis de informação: Componente e Função. A
informação Componente estabelece quais componentes FactorySuite 2000 estão licenciados; a
informação Função habilita de fato os componentes que são parte da informação Componente.
Treinamento Wonderware
Apêndice A – Licença FactorySuite 2000 A-3
Software
Um Kit Habilitador de Licença inclui um disquete com o Arquivo de Licença. A etiqueta do
disquete lista informações sobre o cliente e as opções licenciadas. O Kit Habilitador de Licença
contém um arquivo de licença para os produtos comprados apenas. Você pode entrar em contato
com seu distribuidor Wonderware local a qualquer hora para obter uma licença de demonstração
para qualquer componente FactorySuite 2000 desejado. (Para uma revisão de quais
componentes são licenciados, consulte as seções denominadas Requisitos de Componente e
Licenças Demo acima).
Para ativar o arquivo de licença, simplesmente instale o software de componente FactorySuite
licenciado depois instale o arquivo de licença do disquete de Licença.
Chave de Software/Hardware
Esta opção é a mesma da opção Arquivo de Licença de Software, exceto pelo arquivo de licença
estar bloqueado para uma chave de hardware específica. Se tiver este tipo de opção de licença,
seu Kit Habilitador de Licença incluirá disco de arquivo de licença e uma chave de hardware
(algumas vezes denominada dongle). Observe que o código de peça listado na etiqueta do disco
de arquivo de licença deve incluir um “D” (para Dongle) (exemplo, 01-627D) ou um “E”, que é uma
atualização de uma chave de hardware existente.
Sua chave de hardware tem um número de série exclusivo que corresponde ao algoritmo de
autenticação do arquivo de licença. O arquivo de licença e a chave de hardware devem ser
instalados no mesmo computador a fim de habilitar o componente FactorySuite licenciado. A
identificação do host do arquivo de licença determina qual chave de hardware deve ser instalada
no computador. Por exemplo, a linha a seguir no arquivo de licença especifica a identificação do
host:
HOSTID=Wonderware_HWKeyID=xxxxxxxx one xxxxxxxx é a representação hexadecimal do
número de série da chave de hardware yyyyyyyy.
Para ativar o arquivo de licença, instale o software de componente FactorySuite licenciado e o
arquivo de licença. Depois Conecte a chave de hardware na porta paralela do computador antes
de começar o componente FactorySuite.
Requisitos de componente
Os componentes FactorySuite que requer arquivos de licença são:
z InTouch
z Servidores E/S (Edição 4.5 e mais recente para 16 bits; Edição 5.5 e mais recente para
32 bits)
z InControl
z InTrack
z InBatch
z IndustrialSQL Server
z Factory Focus
z FactorySuite Web Server
Espera-se que o cliente siga um arquivo licenciado escrito que é enviado com o FactorySuite.
O complemento InTouch individual a seguir não requer arquivos de licença:
z Acesso SQL
z Programa SPC
z Gerenciador de Receita
z NetDDE
z Extensões Windows NT
Obs.: Como na versão 7.0, SPC Pro sem licença realiza apenas os recursos antigos do SPC, ex.
v.5.6b e 6.0b. Para obter o uso de novas funções SPC Pro, uma licença para SPC Pro é
requerida.
Informação no disco
O arquivo de licença contem o nome do cliente, localização e opções de licença. Esta informação
pode ser revisada usando o programa License Viewer.
Instalação
Execute o programa Setup do disco de arquivo de licença e selecione os componentes de arquivo
de licença para instalar no microcomputador. Se um componente FactorySuite ainda não foi
instalado no microcomputador, um diretório padrão será criado para o arquivo de licença
selecionado. Para mudar o diretório de destino do arquivo de licença, selecione o arquivo de
licença e navegue no microcomputador.
Mediante a validação das informações de licença, o gerenciador de licença ativa o componente e
as opções FactorySuite 2000 apropriados.
Problemas de instalação
No caso de problemas ao instalar ou usar o arquivo de licença, ligue para seu distribuidor
Wonderware local.
Treinamento Wonderware
Apêndice A – Licença FactorySuite 2000 A-5
Outra compatibilidade
Para verificar se você está compatível com a sua licença FactorySuite, execute o programa
License Utility e visualize as informações de licença que são exibidas Observe que é possível
visualizar o arquivo de licença que está no computador local ou em qualquer computador remoto
em toda a rede. O License Utility pode navegar em computadores remotos específicos ou realizar
busca em toda a rede procurando um arquivo de licença. Entretanto, realizar busca em toda a
rede pode levar algum tempo e recomendamos que, quando possível, use a função navegar e
busque um ou mais computadores remotos específicos para o arquivo de licença. Para mais
detalhes, consulte o Guia de Administradores de Sistema FactorySuite.
Fazer cópias backup do arquivo de licença é permitido desde que o objetivo seja criar uma cópia
backup para emergências. Seu acordo de licença Wonderware estabelece que você pode fazer
ou manter uma cópia do software somente para fins de backup ou de arquivo. Fazer e manter
cópias de materiais escritos fornecidos pela Wonderware é permitindo somente para seu próprio
uso.
Obs.: Para uma apresentação detalhada das etapas de instalação e das questões de
compatibilidade, consulte Wonderware Tech Note #113, Características Gerais do Sistema de
Licença FactorySuite 2000.
Para mais informações sobre nosso programa de Suporte Abrangente, é possível entrar em
contato com seu distribuidor Wonderware local, seu Provedor de Suporte Certificado local ou o
Suporte Técnico Wonderware.
Treinamento Wonderware
Apêndice B
Características gerais
Este apêndice explica como acessar o suporte ao produto e informações de suporte no Website
de Suporte Técnico da Wonderware o ArchestrA® Guia de Implantação.
Obs.: As páginas da rede exibidas nas paginas a seguir estão sujeitas a mudanças sem
comunicação prévia.
Quando entrar no site de Suporte Técnico pela primeira vez, você terá acesso limitado. Para ter
acesso a áreas e serviços diferentes, é necessário primeiro se registrar selecionando o link
Register na página principal e preenchendo a informação solicitada. Após enviar a informação,
um e-mail será enviado a você com a identificação do usuário e a senha atribuídos da
Wonderware.
Após se registrar, clique em Login e insira sua identificação de usuário e senha para acessar as
áreas de suporte.
Treinamento Wonderware
Apêndice B – Suporte para Produtos Wonderware B-3
Acesso a áreas e serviços diferentes no site depende de seu nível de suporte com base nos
seguintes tipos de programas de suporte:
z Suporte Básico
z Suporte Abrangente
z Suporte à Empresa
Para informações sobre cada um destes programas de suporte, assim como informações sobre
como entrar em contato com o Suporte Técnico, políticas e procedimentos de suporte e muito
mais, consulte o guia Políticas, Termos e Condições de Suporte Técnico. Este guia está
disponível para download no arquivo de Ajuda formato HTML no Website de Suporte Técnico.
Para fazer o download do arquivo, clique no link Políticas, Termos e Condições de Suporte
Técnico na seção Quick Links exibida abaixo:
Considerações
O Guia de Implantação é destinado a:
z Engenheiros e outro pessoal técnico que desenvolverão e implementarão as soluções
FactorySuite A2 System.
z Pessoal de vendas ou Engenheiros de venda que precisam definir topologias de sistema
a fim de enviar propostas de projeto FactorySuite A2 System.
Presume-se que você esteja familiarizado com o ambiente de trabalho do sistema operacional
Microsoft Windows 2000 Server, Windows Server 2003 e Windows XP Professional, assim como
com uma linguagem de script, de programação ou macro. Além disso, uma compreensão dos
conceitos como variáveis, declarações, funções e métodos ajudará a alcançar melhores
resultados. Presume-se que você esteja familiarizado com os componentes individuais que
formam o ambiente FactorySuite A2. Para informações adicionais sobre componentes, consulte a
documentação do usuário associada.
Treinamento Wonderware
Apêndice B – Suporte para Produtos Wonderware B-5
Acesso
O Guia de Implantação está localizado no Team.Wonderware.
1. Em Team.Wonderware, selecione Product Info / Find Products By Name / Industrial
Application Server.
4. Selecione o arquivo.
Treinamento Wonderware
Apêndice C
Nome de Acesso:
Informações que são usadas para a comunicação com outras fontes de dados de E/S incluindo o
nome de nó, nome do aplicativo e o nome de tópico.
Contêiner/Controle ActiveX
Controles ActiveX, originalmente conhecidos como controles OLE ou OCXs, são componentes de
software independentes que realizam funções específicas em um modo padrão. Controles
ActiveX devem ser posicionados em um contêiner ActiveX. InTouch é um contêiner ActiveX.
Alarme
Um sinal de advertência exibido ou ativado quando um desvio crítico de condições normais
ocorre.
Alarm Logger
O Alarm Logger fornece ao usuário um registro centralizado de informações de alarme em nós
diversos em um utilitário separado e independente. O Alarm Logger fornece também acesso aos
alarmes distribuídos.
Prioridades alarme
Cada alarme configurado no InTouch tem um valor de prioridade associado a ele. Este valor
representa a severidade de um alarme e pode variar de 1 a 999 sendo que 1 é o mais severo.
Analógico
Refere-se à representação de quantidades numéricas pela medição de variáveis físicas
contínuas.
Animação
Dar ‘vida’ a um objeto usando movimento ou cor.
Links de animação
Animar um objeto vinculando-o a caixas de diálogo específicas ou scripts que executam
comandos específicos.
Aplicativo
Um programa ou grupo de programa usado para um tipo de trabalho em particular, como o
InTouch.
Application Explorer
A visualização gráfica hierárquica do WindowMaker do aplicativo atual.
Application Manager
Programa InTouch que organiza os aplicativos criados e estabelece qual aplicativo é o aplicativo
padrão.
Application Publisher
Programa InTouch que cria um arquivo de auto-extração que contém todos os arquivos relevantes
e ajusta procedimentos que são necessários para instalar o aplicativo em outro nó InTouch.
Scripts de aplicativo
Scripts vinculados a todo um aplicativo
Argumento
Uma variável para a qual um valor lógico ou numérico pode ser atribuído. Até 16 argumentos
podem ser especificados para um InTouch QuickFunction.
Binário
Pertencente ao sistema numérico com uma base de 2, ou a uma característica ou propriedade
envolvendo uma escolha ou uma condição na qual há exatamente duas possibilidades.
Treinamento Wonderware
Apêndice C – Glossário de Termos do InTouch C-3
Código binário
Um sistema codificado no qual a codificação de qualquer dado é feita através do uso de bits: 0 ou
1.
Bit
Um dígito binário; um dígito (1 ou 0). A menor unidade de informação reconhecida por um
computador e seu equipamento associado.
Bitmap
Uma imagem de memória gráfica. Os bitmaps podem ser manipulados no InTouch usando o
Microsoft Paint.
Botão
Os botões grandes retangulares com cantos arredondados ou pequenos botões redondos
exibidos em caixas de diálogo. Clique com a seta cursor para selecionar a opção ou comando do
botão.
Célula
Uma célula é uma coleção de dois ou mais objetos, símbolos ou outras células que são unidas
para formar uma única unidade. As células mantêm um relacionamento espacial fixo entre os
seus elementos gráficos individuais. Cada componente de uma célula pode ter seus próprios
links. Células são usadas para criar dispositivos virtuais como um controlador slide.
Caixa de seleção
Uma pequena caixa quadrada exibida em uma caixa de diálogo que pode ser habilitada ou
desabilitada. Caixas de seleção são geralmente associadas a opções diversas que podem ser
ajustadas.
Área de transferência
Uma área de armazenamento para manter dados (texto, bitmap, objeto gráfico, etc.) que estão
sendo copiados ou movidos para outro aplicativo ou janela.
Comando
Uma palavra ou frase, geralmente encontrada em um menu que executa uma ação.
Botão de Comando
Um retângulo com cantos arredondados com um rótulo que descreve uma ação, como OK,
Cancel ou Close. Quando escolhido, o botão de comando executa uma ação.
Tecla de Comando
Qualquer tecla de teclado usada para realizar funções separadas.
Linha de Comando
O string de argumentos que segue qualquer comando MS-DOS, incluindo o comando para iniciar
um programa aplicativo. Os argumentos na linha de comando são passados para a função MS-
DOS ou o programa no momento da inicialização.
Script de Condição
Scripts vinculados a um tagname discreto ou expressão que corresponda a Verdadeiro ou Falso.
CSV - Variável Separada por Vírgula
CSV é o formato usado pela área de transferência para transferir colunas de texto e dados
numéricos entre aplicativos. Um item de dados CSV é um texto que faz com que cada variável
seja separada por vírgula. O Microsoft Excel é compatível com este formato.
Utilitário de Referência Cruzada
Um utilitário para determinar o uso de tagnames em várias funções.
Banco de Dados
Uma coleta de registros ou arquivos relacionados logicamente. Um banco de dados consolida
muitos registros em uma fila comum de registros de dados que atua como um único arquivo
central.
Script de Troca de Dados
Scripts vinculados a um tagname e/ou tagname.field apenas Este script é executado uma vez
quando o valor de um tagname ou de um campo muda com um valor maior do que o valor
deadband definido no Dicionário Tagname.
DBDump/DBLoad
Dois utilitários que permitem que um banco de dados seja copiado ou modificado e mesclado em
outro aplicativo.
Padrão
Uma opção, comando ou dispositivo automaticamente selecionado ou escolhido pelo sistema.
Por exemplo, um dos botões de comando em uma caixa de diálogo já está selecionado quando a
caixa de diálogo é aberta. Isto indica que é o valor padrão e será escolhido automaticamente se a
tecla <Enter> for pressionada. Os valores padrões são sobrescritos ao selecionar outra opção,
comando ou dispositivo apropriado.
Driver de Dispositivo
Um programa que controla como o computador interage com dispositivos como impressora,
monitor ou mouse. Um driver de dispositivo habilita o uso de dispositivos com o computador.
Caixa de Diálogo
Uma janela exibida quando o Windows precisa de mais informações antes de executar um
comando. Por exemplo, se o comando Save em um menu File é selecionado, uma caixa de
diálogo será exibida solicitando um nome para o arquivo a ser salvo.
Valor discreto
Uma variável que tem apenas dois estados: '1' (Verdadeiro, Habilitado) ou '0' (Falso,
Desabilitado).
Aplicativos Distribuídos
Aplicativos distribuídos são muito mais complexos, geralmente com diversas camadas de redes.
DDE - Troca de Dados Dinâmica
DDE é a passagem de dados entre aplicativos, realizada sem o envolvimento ou monitoração do
usuário. No ambiente Windows, DDE é obtido através de um conjunto de tipos de mensagens,
procedimentos recomendados (protocolos) para processamento destes tipos de mensagem e
algum tipo de dados recentemente definido. Ao seguir os protocolos, os aplicativos que foram
escritos de forma independente um do outro podem passar dados entre eles sem o envolvimento
do usuário. Por exemplo, InTouch e Excel.
Eventos
Eventos são associados com controles ActiveX e ocorrem através do contêiner ActiveX. É
possível executar eventos de controle ActiveX em Runtime (WindowViewer) designando uma
ação em particular e associando-a ao evento pela criação de scripts ActiveX Event.
Expressão
Um termos geral para numerais, numerais com sinais de operação, variáveis e combinações
deles: 6, 3+6, n+10 são todos expressões.
Extensão
O ponto e três letras ao final de um nome de arquivo. Uma extensão identifica que tipo de
informação um arquivo contém. Por exemplo, uma extensão pode ser .EXE, .BAT indicando que
um arquivo contém um aplicativo.
Treinamento Wonderware
Apêndice C – Glossário de Termos do InTouch C-5
FactorySuite
Pacote de software Wonderware formado por um sistema integrado IHM baseado em
componente capaz de colocar uma fábrica em operação.
Interface de Usuário Gráfica (GUI)
A representação gráfica de um programa de software visto no monitor do computador e usado
para inserir, monitorar e manipular dados. A GUI usa funções padrões Microsoft ex. barras de
ferramenta flutuante e ancoradas, funções acionadas pelo clique com o botão direito do mouse e
menus, etc.
Tendência de histórico
Representações gráficas de dados sobre um determinado período de tempo. Elas não são
dinâmicas e somente são atualizadas quando são instruídas a fazê-lo, mesmo através da
execução de um script ou uma ação pelo operador (ex.clicar um botão).
Interface Homem Máquina (IHM)
Antiga MMI (Man Machine Interface). Ferramenta que permite a uma pessoa controlar
equipamento remotamente.
Inteiro
Qualquer membro de um conjunto formado de números inteiros positivos e negativos e zero.
Exemplos: -59, -3, 0.
Scripts de tecla
Scripts vinculados a uma tecla ou combinação de teclas específica de teclas no teclado
Caixa de listagem
Uma caixa dentro de uma caixa de diálogo listando todas as escolhas disponíveis para um
comando. Por exemplo, uma lista de nomes de arquivos em um disco. Geralmente, um item é
selecionado da caixa de listagem e OK é escolhido. Se houver mais opções que podem se
encaixar na caixa de listagem, ela terá barras de rolagem vertical. A seleção da seta para baixo
próxima ao primeiro item na lista exibirá o resto da caixa de listagem.
Macro
Uma única declaração de linguagem de programação simbólica que quando traduzida resulta em
uma série de declarações de linguagem de máquina.
Arquitetura Mestre-Escravo
Desenvolvida para superar algumas das dificuldades das arquiteturas baseadas em cliente e
servidor. Ao mesmo tempo que permite que os nós View sejam ajustados em uma arquitetura do
tipo servidor ou cliente, não requer que tenham as mesmas fontes de dados.
Menu
Menus são listagens de grupos de Janelas disponíveis e comandos de aplicativo. Títulos de menu
são exibidos na barra de menu na parte superior da janela. Um comando é escolhido exibindo o
menu, seguido pela seleção do comando desejado.
Barra de Menu
A barra horizontal que lista os nomes dos menus de um aplicativo. A barra de menu é exibida
abaixo da barra de título de uma janela. Cada aplicativo Window tem uma barra de menu
diferente para cada aplicativo, embora alguns menus (e comandos) sejam comuns a muitos
destes aplicativos.
Caixa de Mensagem
Uma caixa de diálogo especial através da qual um aplicativo exibe mensagens de erro e outras
informações importantes. Caixas de mensagem alertam o usuário quando um erro ocorre ou
quando o aplicativo precisa de informações para completar uma ação ou comando.
Método
Métodos são associados a controles ActiveX. Eles são semelhantes aos chamados de função
script que podem ser acessados do contêiner ActiveX . Por exemplo, Browser.Navigate
("URLPageName"), Engine.start().
Modo
Um método ou condição de operação.
Multi-tarefas
A habilidade de um computador realizar duas ou mais funções (tarefa) simultaneamente.
NAD
Desenvolvimento de Aplicativo de Rede ou NAD é uma arquitetura que combina o melhor das
arquiteturas baseadas em cliente e baseadas em servidor. NAD fornece notificação automática de
mudanças de aplicativo e distribuição automática de aplicativos atualizados para os nós View.
NAD pode ainda ser usado para distribuir automaticamente aplicativos mestre/escravo
Objeto
Um conjunto de dados. Os objetos vêm em diversos formatos: imagens bitmap, texto, gráfico de
tendência de histórico e de tempo real, etc.
Botão Option
Um pequeno botão redondo exibido em uma caixa de diálogo. Um botão de opção é selecionado
para definir a opção, mas dentro de um grupo de botões de opção relacionados, somente um
pode ser selecionado. Um botão de opção tem um ponto preto quando é selecionado e em branco
quando não é selecionado.
Caminho
A hierarquia de arquivos através da qual o controle passa para encontrar um arquivo em
particular. Designa um ou mais drives de disco e/ou caminhos de diretório a serem pesquisados
seqüencialmente para um programa ou arquivo de lote se o arquivo não pode ser encontrado no
drive e diretório atual ou especificado. Os caminhos de drives e/ou diretório são pesquisados na
ordem em que são exibidos no Caminho.
Pixel
Uma célula de figura. A tela do monitor visual é dividida em linhas e colunas de pontos muito
pequenos, quadrados ou células, cada um é um pixel. A menor unidade na grade da tela do
monitor que pode ser armazenada ou exibida. Uma figura de computador é geralmente composta
de um vetor retangular de pixels. A resolução de uma figura é expressa pelo número de pixels no
monitor. Por exemplo, uma figura com 800 x 600 pixels é muito mais definida do que uma figura
com 640 x 480 pixels.
Controlador Lógico Programável (PLC)
Computador usado para controlar equipamento de fábrica e gerar dados para servir as
necessidades internas. Usado nos aplicativos de controle de processo.
Controle de Processo
O uso do computador para controlar processos industriais como uma refinaria de petróleo e
produção de aço.
Processamento
O aplicativo que tem controle do processador no momento. Um aplicativo recebe controle do
controlador mediante o recebimento de uma mensagem. Ele retém controle do controlador até
que a mensagem seja processada.
Propriedades
As propriedades são associadas aos controles ActiveX e podem ser associadas com os
tagnames InTouch. As propriedades que podem ser configuradas para um controle ActiveX em
particular são determinadas pelo projetista do controle ActiveX. Algumas propriedades têm uma
Treinamento Wonderware
Apêndice C – Glossário de Termos do InTouch C-7
única direção, o que significa que a propriedade ajusta o valor do tagname ou o valor do tagname
ajusta a propriedade. Enquanto outras propriedades são bidirecionais, o que significa que o valor
pode ser ajustado a partir do tagname ou da propriedade.
Protocolo
Estabelece as regras ou as convenções que regem a troca de informações entre os sistemas de
computador ou os aplicativos.
QuickFunction
QuickFunctions são scripts que podem ser escritos e chamados a partir de outros scripts ou
expressões. É possível usar até 16 argumentos por QuickFunction. Eles são armazenados no
aplicativo no qual foram criados. QuickFunctions podem ser definidos como assíncronos que,
quando executados, executam em segundo plano do processo principal WindowViewer
(Runtime).
QuickScript
Script criado em InTouch. Capacidades InTouch QuickScript permitem executar comandos e
operações lógicas baseadas no cumprimento de critérios específicos. Por exemplo, uma tecla
sendo pressionada, uma janela sendo aberta, um valor mudando, etc.
Tendência em Tempo Real
Representações gráficas de valores de diversos tagnames exibidos com o passar do tempo
Registrador
Um equipamento de alta velocidade usado em uma unidade central de processamento para
armazenagem temporária de pequenas quantidades de dados ou resultados intermitentes
durante o processamento.
Tagname Remoto
Um tagname que reside em uma fonte de tag remota mas é referido em um aplicativo InTouch
local. Aplicativos clientes podem ser projetados sem usar nenhum tagname no Dicionário
Tagname local usando referencias de tagname remotas.
Runtime
O período durante o qual os dados são coletados pela unidade de controle e o processamento
efetivo é realizado na unidade aritmética-lógica. Além disso, o tempo durante o qual um programa
está executando.
Editores de Script
Caixas de diálogo que permitem que scripts sejam criados, editados ou manipulados.
Segurança
A segurança em um aplicativo é uma função opcional. Se implementado, ele fornece a habilidade
para controlar se operadores específicos estão autorizados ou não a realizar funções específicas
dentro de um aplicativo. A segurança para funções específicas é realizada vinculando-as aos
tagnames de segurança.
Serviço
Um tipo especial de programa "privilegiado" e opera em um nível muito mais baixo no sistema. Os
serviços executam automaticamente no segundo plano e eles não requerem que o usuário se
conecte. Porque o sistema operacional do Windows NT é um sistema operacional seguro,
programas normais não são autorizados a acessar o hardware diretamente, como um disco rígido
ou outros objetos de sistema, como o Event Lot. Os programas de serviço podem acessar os
objetos de hardware e de sistema para outros programas normais. Por exemplo, o Wonderware
Logger, WindowViewer podem ser executados como serviços NT.
SmartSymbol
SmartSymbols integram a tecnologia orientada ao objeto com os gráficos InTouch para
transformá-los em modelos reutilizáveis. As mudanças feitas aos SmartSymbols
automaticamente se propagam por todo o aplicativo, bem como através de múltiplos nós de
microcomputador conectados em rede. SmartSymbols permitem a criação de modelos de gráficos
que podem conectar-se a Objetos ArchestrA®, tags InTouch locais e tags InTouch por meio de
referências remotas. Estes modelos de símbolo são salvos na Biblioteca SmartSymbol e podem
ser iniciados selecionando-os e posicionando-os dentro de janela InTouch.
Computador Independente
Um sistema de computador exclusivo e autônomo, diferente de um computador que está
conectado e dependente de um sistema de computador remoto. Um computador independente
operará por si mesmo, não necessitando de equipamento.
Aplicativos Independentes
Os aplicativos independentes são os que usam apenas uma Interface de Operação (OI) para
cada sistema monitorado. Eles são geralmente mais fáceis de configurar, com mínima ou
nenhuma conexão de rede e requerem apenas manutenção simples.
String
Uma seqüência conectada de caracteres ou bits tratados como um único item de dados.
SuperTag
O InTouch é compatível com uma estrutura de modelo que permite definir tipos de tagnames
compostos denominados SuperTags. Os modelos SuperTag podem conter até 64 tagnames
membros e 2 níveis de encadeamento. Consulte TemplateMaker.
Símbolo
Um símbolo é uma combinação de objetos simples (linhas, formas preenchidas e texto), que é
tratado como um único objeto. Qualquer mudança de atributo aplicada a um símbolo, seja uma
mudança em um atributo estático em WindowMaker ou uma mudança em um atributo dinâmico
no WindowViewer, afetará todos os objetos de componente de um símbolo.
Sintaxe
As regras que regem a estrutura de uma linguagem e suas expressões.
Tarefa
Uma tarefa é um aplicativo em execução. Tarefa é um sinônimo para "processo".
Tag Browser
Principal ferramenta para visualização e seleção local e remota de tagnames e de tagname
dot.fields (.field) dos aplicativos FactorySuite ou qualquer outra fonte de tag que seja compatível
com a interface do InTouch Tagname Dictionary. Ele permite selecionar os tagnames existentes,
incluir novos tagnames e visualizar as informações básicas do Dicionário Tagname. Permite
também acessar as caixas de diálogo que realizam uma edição, replicação de tagname e
selecionar tagnames (referências remotas) em fontes de tag remotas.
Tagname
O nome atribuído a uma variável definida no Dicionário Tagname (banco de dados InTouch ).
TemplateMaker
Utilitário InTouch que permite criar modelos SuperTag. Consulte SuperTag.
Text Box
Uma caixa onde a informação necessária para executar um comando é digitada. Uma caixa de
texto geralmente é exibida em uma caixa de diálogo.
Barra de título
A barra na parte superior de cada janela que contém o nome do aplicativo e o documento ou
arquivo sendo usado por aquele aplicativo. (No InTouch há uma opção para eliminar a Barra de
título.) As barras de título também são usadas para mover uma janela na tela segurando-a
enquanto arrasta o mouse.
Treinamento Wonderware
Apêndice C – Glossário de Termos do InTouch C-9
Treinamento Wonderware
Apêndice D
Controles ActiveX
D-2 Apêndice D – Controles ActiveX
Introdução
Os controles ActiveX, originalmente conhecidos como controles OLE ou OCXs, são componentes
de software independentes que realizam funções específicas em um modo padrão. Os controles
ActiveX definem interfaces padrão para componentes reutilizáveis. Os controles ActiveX não são
aplicativos separados. Ao invés disto, eles são servidores que são posicionados em um contêiner
de controle. Para usar os controles ActiveX, eles devem ser posicionados em um contêiner
ActiveX. O InTouch é um contêiner ActiveX. O Microsoft VisualBasic e os navegadores da internet
também são contêineres ActiveX.
Os controles ActiveX compartam-se exatamente como Assistentes InTouch, exceto por trazerem
nova funcionalidade aos aplicativos InTouch. Os controles ActiveX podem ser criados usando
Visual Basic, Microsoft VC++ ou outras ferramentas de desenvolvimento de terceiros. Os
controles ActiveX podem também ser trazidos de terceiros para funcionalidade específica. Estes
controles são integrados ao formulário OCX. O componente FactorySuite InTrack da Wonderware
também fornece diversos controles ActiveX. Além disso, IndustrialSQL Server Historian
ActiveTrend permite executar o programa IndustrialSQL Trend (ou um subconjunto funcional) de
dentro do InTouch. ActiveEvent permite comunicar o subsistema IndustrialSQL Event quando um
evento ocorreu em outro aplicativo.
Há três componentes principais de controle ActiveX: propriedades, métodos e eventos. As
propriedades são muito semelhantes às variáveis que podem ser modificadas, ex. Calendar.day,
Control.height, etc. Os métodos são semelhantes às funções script que podem ser chamadas a
partir de outros contêineres. Por exemplo, Browser.Navigate("http://www.wonderware.com"),
Engine.start(). Os eventos ocorrem através do contêiner ActiveX. Por exemplo, Control.click
(shift), FileViewer.DoubleClick (name) , etc.
O InTouch dá acesso às propriedades de controle ActiveX, aos métodos e eventos. Estas
propriedades podem ser associadas aos tagnames InTouch ou podem ser acessadas através de
InTouch QuickScripting.
Obs.: Para que um script ActiveX Event funcione corretamente, o controle ActiveX para o qual o
script foi criado deve ser carregado na memória. Se a janela que contém um controle ActiveX é
fechada, seus scripts ActiveX Event ou qualquer outro InTouch QuickScripts que contenha
funções de script associados com o controle ActiveX não executarão corretamente.
Um ou mais controles ActiveX podem ser usados em seu aplicativo InTouch. O InTouch permite
selecionar facilmente e colar um controle ActiveX dentro de uma janela de aplicativo e adicioná-lo
aos Wizards / ActiveX Toolbar Os scripts de ActiveX Event também podem ser importados de
um aplicativo para outro.
Treinamento Wonderware
Apêndice D – Controles ActiveX D-3
Em alguns casos, pode ser necessário configurar Colors e Fonts. Outros podem requerer
esta configuração. Entretanto, para todos os controles ActiveX, o InTouch adiciona três guias:
Control Name, Properties e Events.
3. Clique na guia Control Name e insira um nome exclusivo para o controle ActiveX na caixa
ControlName.
Obs.: É necessário definir um nome exclusivo para cada controle ActiveX usado em seu
aplicativo InTouch. Control Name é usado em funções script para identificar o controle. Por
exemplo:
#Calendar2.day = Tag1;
#Calendar2.year = 1997;
Treinamento Wonderware
Apêndice D – Controles ActiveX D-5
3. Na lista Installed Wizards, selecione o controle a ser excluído de seu aplicativo e clique no
botão Remove . Uma caixa de mensagem interativa é exibida pedindo que confirme a
remoção.
Obs.: Para selecionar um grupo de controles, clique na sua primeira seleção, mantenha
pressionada a tecla SHIFT e selecione sua última seleção. Para selecionar controles diversos
que não são listados ao mesmo tempo, clique no primeiro controle e mantenha pressionada a
tecla CTRL ao clicar em outro.
4. Clique em Yes para remover o controle. O controle removido é movido para a lista Available
ActiveX controls.
Obs.: Ao remover um controle, ele não é excluído. Entretanto, ele não é mais carregado na
memória. Portanto, ele não funcionará corretamente.
Obs.: O botão Install é ativo somente quando os controles são exibidos na lista Available
ActiveX controls.
6. Clique em Close.
Adicionar um controle
ActiveX à barra de
ferramentas
Treinamento Wonderware
Apêndice D – Controles ActiveX D-7
4. O cursor mudará para um símbolo de canto ao retornar para a janela. Clique no local da
janela para colar o controle ActiveX.
5. Clique duas vezes com o mouse no controle para configurar suas propriedades.
Obs.: Quando determinados itens em uma coluna Range são clicados, uma seta é exibida. Esta
seta pode ser clicada para visualizar a lista de possíveis valores do item. Os items na lista são
para fins de visualização apenas e não podem ser mudados.
2. Clique no meio de cada célula na coluna Associated Tag e insira uma tagname para a
respectiva propriedade. Se um tagname é inserido e não foi definido no Dicionário Tagname,
será solicitado que ele seja definido agora.
Treinamento Wonderware
Apêndice D – Controles ActiveX D-9
Se clicar duas vezes com o mouse em uma célula em branco ou clicar no botão , o Tag
Browser será exibido com os tagnames para a fonte de tag selecionada. Clique duas vezes
com o mouse no tagname desejado e clique em OK. O tagname é inserido na célula.
3. Quando o tagname é especificado, clique duas vezes com o mouse na célula à esquerda da
tagname. Selecione a direção da associação para o tagname com sua propriedade. Clicar
duas vezes com o mouse levará você a várias escolhas de direção de associação.
Há, na verdade, dois campos em cada célula na coluna Associated Tag. A seleção da
direção da associação e a entrada de tagname. O controle ActiveX determina a direção da
associação e o tipo de propriedade determina o tipo de tagname que deve ser usado.
É possível selecionar uma associação direcional ou bidirecional. Entretanto, se a direção da
associação selecionada não for válida para a propriedade ou tagname, o controle mudará
automaticamente de acordo. Por exemplo, se selecionou quando o valor de tagname
muda, sua propriedade associada é mudada de acordo. Um determinado subconjunto dos
símbolos abaixo será exibido com base no relacionamento potencial entre a propriedade e o
tagname.
Por exemplo, se associou uma propriedade a um tagname que pode ser escrito, você verá um
conjunto diferente de associações do que se você associasse a mesma propriedade a um
tagname somente leitura. Selecione o símbolo de associação de propriedade da seguinte
maneira:
o tagname pode mudar o valor da propriedade, mas a propriedade não pode mudar o
valor do tagname. A propriedade não pode mudar o valor do tagname porque a
propriedade não pode ser protegida ou o tagname é somente leitura.
A propriedade pode mudar o valor do tagname, mas o tagname não pode mudar o valor
da propriedade. O tagname não pode mudar o valor da propriedade porque a propriedade
é somente leitura .
4. Clique em OK.
Exemplos:
#Calendar2.Day = 29;
Tag1 = #Calendar2.year;
Obs.: Para que um script ActiveX Event funcione corretamente, o controle ActiveX para o qual o
script foi criado deve ser carregado na memória. Se a janela que contém um controle ActiveX é
fechada, seus scripts ActiveX Event ou qualquer outro InTouch QuickScripts que contenha
funções de script associados com o controle ActiveX não executarão corretamente.
2. Clique duas vezes com o mouse em uma célula em branco na coluna Script.
Treinamento Wonderware
Apêndice D – Controles ActiveX D-11
4. Na lista Control Name, selecione o controle ActiveX cujos métodos ou propriedades deseja
acessar.
Os nomes de todos os controles ActiveX que estão sendo usados no momento serão listados.
#ThisControl.Navigate ("http:\\www.wonderware.com");
#ThisControl.Navigate(URL); { where URL is a tagname}
Este Controle está acessível apenas através de scripts ActiveX Event. Ele não é acessível
através de outro tipo de InTouch QuickScript.
5. Na lista Method / Property, selecione o método ou propriedade que deseja usar em seu
script. As propriedades são os itens na lista que incluem parênteses. Por exemplo, Display().
6. Clique em Done. O nome e o método de controle selecionado são automaticamente
inseridos em seu script.
Os métodos e as propriedades de controle ActiveX também são acessados através do menu
Insert em todos os tipos InTouch QuickScripts.
Treinamento Wonderware
Apêndice D – Controles ActiveX D-13
Obs.: Para que um script ActiveX Event funcione corretamente, o controle ActiveX para o qual o
script foi criado deve ser carregado na memória. Se a janela que contém um controle ActiveX é
fechada, seus scripts ActiveX Event ou qualquer outro InTouch QuickScripts que contenha
funções de script associados com o controle ActiveX não executarão corretamente.
1. Clique duas vezes com o mouse no controle ActiveX para o qual deseja criar um script
ActiveX Event para abrir a caixa de diálogo Properties de controle ActiveX.
2. Clique na guia Events.
3. Na coluna Event, selecione o evento para o qual deseja associar um script ActiveX Event.
4. Na respectiva célula na coluna Script, insira um nome exclusivo para o script ActiveX Event
que deseja criar e depois clique duas vezes com o mouse no nome ou clique em OK.
A caixa de mensagem a seguir é exibida:
5. Clique em OK.
O editor de script ActiveX Event é exibido mostrando o nome inserido na caixa de entrada
Name (consulte o exemplo a seguir). Se clicar duas vezes com o mouse em uma célula
Script em branco quando o editor de script ActiveX Event é exibido, é necessário inserir um
nome para o script ActiveX Event.
A caixa de diálogo Choose ActiveX Script é exibida listando todos os scripts ActiveX Event
em seu aplicativo:
Treinamento Wonderware
Apêndice D – Controles ActiveX D-15
8. Na lista Control Name, selecione This Event para acessar os parâmetros para o evento
selecionado. Neste caso, o evento selecionado é Error.
Obs.: This Event está acessível apenas através de scripts ActiveX Event. Ele não é
acessível através de outro tipo de InTouch QuickScript. É necessário selecionar This Event
para acessar os parâmetros de evento para um controle ActiveX.
MyActiveXErrorNumber = #ThisEvent.ErrorNumber;
em que: # indica que esta é uma função de script ActiveX, ThisEvent refere-se ao evento
selecionado na folha de propriedade Event do controle ActiveX e ErrorNumber é o
parâmetro passado pelo evento selecionado.
9. Na lista Method / Property, selecione o evento a ser usado em seu script ActiveX Event.
10. Clique em Done.
O nome de controle selecionado, ex. This Event e o parâmetro de evento selecionado são
inseridos automaticamente em seu script na posição do cursor. Por exemplo:
11. Clique em OK para salvar seu script ActiveX Event e fechar o editor de script. A caixa de
diálogo Properties do controle ActiveX é reexibida.
12. Clique em OK para fechar a caixa de diálogo Properties ou continuar a criar scripts ActiveX
Events.
2. Clique duas vezes com o mouse em uma célula na coluna Script ou insira um nome para o
script ActiveX Event e clique em OK.
3. Se um script ActiveX Event para o nome inserido não existir no momento, uma caixa de
mensagem será exibida perguntando se deseja criá-lo agora. Clique em OK.
Treinamento Wonderware
Apêndice D – Controles ActiveX D-17
O ActiveX Control Browser exibirá os nomes de todos os controles ActiveX sendo usados em
seu aplicativo. Quando selecionar um nome de controle, seus respectivos métodos serão
exibidos. Selecione o método para inserir seu script e depois clique em Done.
Treinamento Wonderware
Apêndice D – Controles ActiveX D-19
Obs.: Esta caixa de diálogo somente exibirá scripts ActiveX Event que foram escritos para o
mesmo tipo de controle ActiveX e o mesmo evento selecionado. Por exemplo, vamos
considerar que esteja criando um script ActiveX Event para um segundo evento "Click" do
controle ActiveX Calendar. Você já criou dois outros scripts ActiveX Event denominados
Click1 e Click2 em seu aplicativo. Click1 foi criado para um evento "Click" diferente do
controle ActiveX Calendar e Click2 foi criado para um evento "Click" de um controle ActiveX
InSQLTrend. Ao clicar no botão e a caixa de diálogo Choose ActiveX Script ser exibida,
ela somente exibirá o script Click1 uma vez que ele foi criado para o mesmo tipo de controle
ActiveX e para o mesmo evento.
O nome do script selecionado é automaticamente inserido na célula Script onde você clicou
anteriormente no botão .
Por exemplo:
5. Clique em OK para fechar a caixa de diálogo Properties ou continuar a criar scripts ActiveX
Events.
Obs.: Quando importar scripts ActiveX Event de um aplicativo para outro, todos os scripts
ActiveX Events são importados. Além disso, para que um script ActiveX Event importado funcione
corretamente no novo aplicativo, o mesmo controle ActiveX e o mesmo evento para o qual o script
foi criado originalmente devem também ser usados no novo aplicativo e ele deve ser carregado
na memória.
Se a janela que contém um controle ActiveX é fechada, seus scripts ActiveX Event ou qualquer
outro InTouch QuickScripts que contenha funções de script associados com o controle ActiveX
não executarão corretamente.
Treinamento Wonderware
Apêndice E
Armazenagem de Histórico
Para descrever a armazenagem de histórico, asumimos que temos uma tag denominada tag1,
que muda seu valor às 10:00:00 h (hora do computador) e usa os exemplos a seguir.
Se realizarmos a armazenagem a oeste do GMT, o registro de hora para o valor armazenado é
calculado da seguinte maneira:
Logged_TimeStamp = Computer_Time+(Offset–DST)
Onde Logged_TimeStamp é o registro de data e hora do registro no arquivo de Armazenagem de
Histórico.
Exemplo 1
O Fuso Horário é ajustado para Pacific Standard Time (GMT-8) e DST é habilitado.
Logged_TimeStamp = 10:00:00+(8–1) = 17:00:00
Exemplo 2
O Fuso Horário é ajustado para Pacific Standard Time (GMT-8) e DST não é habilitado.
Logged_TimeStamp = 10:00:00+(8-0) = 18:00:00
Se temos a mesma tag e valores, mas estamos realizando a armazenagem à leste do GMT, o
registro de data e hora para o valor armazenado é calculado da seguinte maneira:
Logged_TimeStamp = Computer_Time+(-Offset+DST)
Exemplo 3
O Fuso Horário é ajustado para Amsterdã, Berlim, Bern, Roma (GMT+1) e DST é habilitado.
Logged_TimeStamp = 10:00:00+(–1+1) = 10:00:00
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-3
Exemplo 4
O Fuso Horário é ajustado para Monrovia, Casablanca (GMT0) e DST não é habilitado porque
Casablanca não segue o DST.
Logged_TimeStamp = 10:00:00+(-0+0) = 10:00:00
Neste exemplo, o registro de hora no arquivo de Armazenagem de Histórico é o mesmo da hora
do computador. Observe que GMT0-Monrovia, Casablanca é o ajuste de fuso horário ideal.
Recuperação de histórico
A ferramenta de recuperação também considera as diferenças nos ajustes de fuso horário e DST
no computador no qual a retenção ocorre. Na maioria dos casos, se a armazenagem e a retenção
forem realizadas no mesmo computador ou em computadores com ajustes de fuso horário
idêntico, os registros recuperados estarão corretos.
Lembre-se de que o DST pode afetar a recuperação de dados, mesmo quando a armazenagem e
a retenção são realizadas no mesmo computador ou em computadores com ajustes de fuso
horário idêntico. A escolha de um fuso horário que segue o DST ou a habilitação de DST faz com
que os dados recuperados tenham duas horas de diferença no início do dia, o quadro de
tendência de histórico exibirá duas horas de linha simples ou nenhum dado. Este comportamento
está presente quando o ajuste de Fuso Horário é do tipo GMT+x (à leste do GMT) e DST está
habilitado.
Por exemplo, se o fuso horário em seu computador é ajustado como Amsterdã, Berlim, Bern,
Roma (GMT+1) e DST estiver habilitado, os dados recuperados exibirão uma linha simples no
início do dia e os dados atuais estarão duas horas no futuro.
A solução é ajustar o fuso horário para um horário que não siga o DST, como GMT0-Monrovia,
Casablanca. Isto faz com que o registro de hora no arquivo de Armazenagem de Histórico seja o
mesmo do relógio do computador. Além disso, DST não é habilitado porque GMT0-Monrovia,
Casablanca não segue DST.
Tech Note 21
Entender como scripts operam no InTouch
Esta nota descreve como a ferramenta de script opera dentro do ambiente Wonderware®
InTouch® . Ela é destinada a todos os funcionários e distribuidores Wonderware, profissionais
OEMs, VARs, MIS/MES, integradores de sistema, engenheiros de aplicação, desenvolvedores de
sistema e administradores de sistema de aplicativos InTouch. Você deve ter um nível de
competência de programação avançado a fim de aplicar algumas das funções exibidas nesta
edição.
O teste para este artigo foi concluído usando InTouch Release 5.6 em Microsoft Windows 95;
entretanto, os resultados devem ser precisos para InTouch edições 5.0b a 5.6.
Termo de isenção de responsabilidade As informações contidas aqui estão corretas com base
nos exemplos de script e aplicativo de demonstração usados neste artigo. Entretanto, seus
resultados e experiências no uso do mecanismo de script InTouch podem variar devido às
circunstâncias fora da realidade dos exemplos mostrados aqui.
Características gerais
O mecanismo de script do InTouch inclui e opera uma variedade de tipos de script de forma
integrada. Os programadores podem ocasionalmente encontrar problemas com scripts
complexos, especialmente quando eles executam um tipo de script a partir de outro. Esta Nota
Técnica ajudará a analisar seus scripts e compreender como o mecanismo de script funciona de
forma que quando escrever seus scripts, você irá fazê-lo com um mínimo de erros.
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-5
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-7
Se uma janela for chamada a partir de um script Application On Startup, então os processos da
janela (incluindo qualquer script Window Action que é chamado) não terão início até que o script
Application On Startup seja concluído. Entretanto, estas solicitações serão colocadas em fila e
executarão, desde que o script Application On Startup e o script Home Window’s On Show sejam
concluídos.
Os scripts Window Action On Show da janela home executam após o WindowViewer iniciar
corretamente. Se estes scripts mudarem algum dado, quaisquer scripts Data Change sem
varredura serão executados primeiro e os scripts Condition sem varredura serão executados em
seguida. Todos os scripts com varredura são manipulados desta mesma maneira.
A diferença entre os scripts com e sem varredura é que os scripts com varredura são colocados
na área de armazenagem durante o tempo de varredura e os scripts sem varredura restantes
dentro do scripts com varredura shell ou thread não executarão até que o tempo de varredura do
script seja concluído. (Observe que este tipo de projeto de script permite que o “encadeamento”
de scripts opere dentro de outros scripts.) Uma vez que o tempo de varredura expire, isto gera um
vetor de interrupção no script atual. A interrupção faz a ramificação para o script de varredura
temporizado que opera até a conclusão ou até que outro script com varredura seja executado.
Os scripts temporizados não executam quando o temporizador do script conclui. Lembre-se de
que muitos processos estão executando em um determinado momento e alguns destes
processos não podem ser interrompidos. Os exemplos de processos que não podem ser
interrompidos são gravação em disco, atualizações DDE, ODBC e processos de
precondicionados no InTouch (ou seja, malhas FOR-NEXT, outros scripts com precedência sênior,
etc.). Quando o tempo de varredura expira, um flag que evita que o script execute enquanto o
temporizador estiver contado é apagado, permitindo que o script temporizado comece. Um script
com um tempo de varredura de 100 milissegundos provavelmente executaria uma vez a cada 100
milissegundos se não houver um servidor de E/S executando ou armazenagem de histórico ou
recuperação, e se o aplicativo tiver apenas uma janela simples sem outros scripts em execução.
Entretanto, isto não é realista para aplicações “reais”!
Scripts On Shutdown Application executam quando o WindowViewer está encerrando. Se tentar
executar um script Data Change e/ou de um script Condition a partir de um script On Shutdown,
os scripts Data Change e Condition podem não ser chamados ou concluídos. Como os scripts On
Startup, as sub-rotinas de script Data Change e Condition no mecanismo de script podem não
estar disponíveis durante o encerramento.
Se tentar atingir um processo interno ou condição antes de sair do WindowViewer, sua melhor
chance para atingir o processo ou condição é executar o script de Data Change ou Condition
antes do script On Shutdown. Quando o script On Shutdown está executando, os processos
dentro do WindowViewer estão sendo encerrados. Sob estas circunstâncias, processos “longos”
não terminarão se o WindowViewer encerrar antes da tarefa, que foi executada a partir de um
script On Shutdown , ser concluída.
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-9
mecanismo de script são ajustados para 100 milissegundos, eles não executarão pelo menos até
que o Tick Interval seja reiniciado. O resultado é que cada script temporizado não executará por
pelo menos 1000 milissegundos, mesmo se eles forem ajustados para um valor menor. Observe
que estes tempos não são cumulativos. Ou seja, se usar um script temporizado, o temporizador
executará de forma assíncrona com relação ao temporizador do Tick Interval.
O que acontece se o Tick Interval é ajustado para um valor menor do que seu script temporizado?
Por exemplo, se Tick Interval é ajustado em 100 milissegundos e um script Condition é ajustado
em 450 milissegundos, quando o script Condition executará? Presumindo que nenhum processo
“longo” esteja em execução e que precisará de mais do que alguns milissegundos, uma vez que
o script Condition inicie e o temporizador esteja executando, Tick Interval resetará cinco vezes
antes do script Condition atingir o tempo-limite. Isto significa que o script executará por cerca de
500 milissegundos, não 450 milissegundos.
Dentro do aplicativo InTouch , a malha “externa” do mecanismo de script (como exibido na Figura
1) tem a prioridade mais baixa. Isto ocorre para que outros processos Windows possa continuar a
executar. Estes processos Windows tentarão executar em 55 milissegundos no Windows 95 ou
Windows para Workgroups ou 10 milissegundos para o Windows NT; este é o OpSysTick. os
processos DDE são mantidos nesta taxa, depois são redefinidos no tempo de varredura ajustado
no servidor de E/S, se algum estiver em execução. As atualizações de tela do “sistema
operacional” são manuseadas nesta taxa, assim como as varreduras de teclado e de mouse do
“sistema operacional”.
Aplicativo de teste
Duas versões de um aplicativo de teste InTouch foram criadas para demonstrar como o
mecanismo de script funciona.
Obs.: Os dois aplicativos de teste estão disponíveis em Wonderware BBS (fone 949-727-0726).
On Application Startup:
testvar = 1;
startupvar = 1;
A = startupvar;
startupvar = startupvar + 1;
Condition Script:
Condition:
b > 0
Comment:
On True:
startupvar = startupvar + 1;
c = startupvar;
Condition Script:
Condition:
g > 0
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-11
On True:
startupvar = startupvar + 1;
o = startupvar;
Data change script:
On Changes to b:
startupvar = startupvar + 1;
e = startupvar;
Data change script:
On Changes to g:
startupvar = startupvar + 1;
j = startupvar;
Comment:
On True:
startupvar = startupvar + 1;
h = startupvar;
Condition Script:
Condition:
j > 0
Comment:
On True:
startupvar = startupvar + 1;
n = startupvar;
Condition Script:
Condition:
p > 0
Comment:
On True:
startupvar = startupvar + 1;
q = startupvar;
Condition Script:
Condition:
A > 0
Comment:
On True:
startupvar = startupvar + 1;
s = startupvar;
Condition Script:
Condition:
r > 0
Comment:
On True:
startupvar = startupvar + 1;
End1 = startupvar;
Condition Script:
Condition:
n > 0
Comment:
Data change script:
On Changes to m:
startupvar = startupvar + 1;
p = startupvar;
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-13
Ao mudar o script Condition que inicia a tag ‘o’ para um script While True Condition com um
tempo de varredura de 1100 milissegundos, um vetor interrompido será gerado a partir de um
script “área retida” quando o temporizador expirar. O resultado é que os scripts Data Change e
Condition em sua ramificação não iniciarão como exibido na Figura 5.
somente após a reinicialização de Tick Interval. Isto ocorre após o script Condition “n o”
executar. Isto exibe um "nó" de vetor de interrupção ou um local onde o mecanismo de script foi
interrompido para manipular outros processos com base em alguma decisão que provavelmente
lida com um tempo ou período de "espera" de processo externo. Embora não seja fácil prever
este local de interrupção em particular, ele fornece uma idéia de quando um DDE e outros
processos podem ser atualizados.
Uma pergunta comum é “Quando as tags DDE são atualizadas?” Com base em nosso aplicativo
de teste, na maioria das instâncias, as tags DDE não serão atualizadas até que Tick Interval seja
resetado. Por que? Para que as tags DDE seja atualizadas, ou estejam ativas, uma das seguintes
dez condições deve ocorrer:
1. Um tópico DDE é ajustado como Advise All Items.
2. Um tagname é exibido em uma janela de aplicativo aberta.
3. Um tagname é usado em um script Window ou script Action e a janela do aplicativo que está
associada a qualquer um destes scripts é aberta.
4. Um tagname está ativamente sendo usado por uma tendência em tempo real.
5. Um tagname é usado para alarme.
6. Um tagname é um evento armazenado e Event Logging está habilitado.
7. Um tagname é armazenado em um arquivo Historical Log e Historical Logging está habilitado.
8. Um tagname é usado em um script Key, Condition, Data Change ou Application.
9. Um tagname é um tagname Auto Collection no Programa SPC.
10. Um tagname é acessado por um aplicativo cliente (como Microsoft Excel) usando DDE.
Exceto pelo item 1, o tagname em cada um dos nove itens restantes tem algum link com um script
ou com uma janela de aplicativo (que tem um link com um script). Já que sabemos quando o tag
DDE é atualizado, podemos presumir que a tag nestas condições será atualizada
aproximadamente de acordo com o Tick Interval. O Item 1 é baseado no servidor de E/S, portanto
o tempo de atualização corresponde ao tempo de varredura do Servidor de E/S (ajustado no
servidor de E/S ou tópico —ele não tem nada a ver com o mecanismo de script). Quando um item
DDE é escrito por uma entrada de usuário, como pressionar a tecla <Enter>, ele causará um vetor
de interrupção. O vetor de interrupção faz uma solicitação ao servidor para escrever o valor ao
dispositivo DDE no tempo de tick do servidor DDE.
As atualizações do dispositivo DDE não serão exibidas imediatamente se não forem roteadas
através do mecanismo de script.
Como um exemplo, crie os itens a seguir em um novo aplicativo:
z Uma tag DDE User Input que é um hot link para uma planilha do Microsoft Excel;
z Uma exibição de valor separada usando a tag DDE como a expressão;
z Uma exibição para um valor de tag que está sendo atualizado a partir de uma tag DDE
através de um script Data Change imediato (ele executa como uma instância de um
banco de dados de variável modificado pelo DDE);
z Uma exibição para um valor de tag que está sendo atualizado a partir de uma tag DDE
através de um script Condition, imediato e sem varredura (ele executa em uma instância
de um banco de dados de variável modificado pelo DDE);
Em seguida, exiba a planilha Excel na tela do monitor abaixo das janelas InTouch. Ao ajustar Tick
Interval em 20000 milissegundos, o aplicativo mostra que na medida em que o valor da tag User
Input é modificada, a planilha Excel, o valor da tag DDE e as tags rescritas são todas atualizadas
imediatamente na conclusão do vetor de interrupção e exibidas na tela, independente do valor
Tick Interval. (Isto pode ser um script Pushbutton Action ao invés de uma entrada de usuário.)
A escolha do tempo de varredura/Tick Interval apropriados para estes scripts pode requerer um
ajuste para o qual será necessário experimentar diversos valores até que um valor satisfatório
possa ser encontrado. O motivo disto é que há muitos outros processos executando dentro do
InTouch que precisam ser mantidos além do mecanismo de script. Alguns destes processos são
acessos DDE, atualizações de tela e verificações de mensagens para o WW Logger.
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-15
Conclusão
Há muitos fatores que afetam o mecanismo de script InTouch . Se não for cuidadoso ao projetar
os scripts para um aplicativo, seu aplicativo pode resultar em um comportamento indesejado.
Para evitar problemas com scripts complexos, você deve exibir graficamente o que deseja realizar
com seus scripts. Isto pode ser feito fazendo o fluxograma de seu aplicativo antes de começar a
escrever seus scripts. Além disso, a otimização de seu aplicativo pode requerer o correto
encadeamento de scripts e o ajuste dos tempos de varredura.
Script Data Change em Tag1 que modifica Tag2. Script Data Change em Tag2. Script1 modifica
Tag1.Script1 chama Script2 que chama Script3 que tenta chamar Script2. Neste caso, a última
tentativa de chamar Script2 não executará.
P Qual a seqüência e a temporização para executar comandos dentro de um script?
R Cada comando em um script é executado a fim de que ele seja encontrado no arquivo script.
Cada comando é concluído antes que ele se mova para o próximo comando, exceto para funções
que requerem uma tag DONE como FileMove(), FileCopy() ou PrintWindow().
A seguir há uma lista de ordem de precedência, em ordem decrescente, para avaliação de
operadores de script. Os operadores que estão listados na mesma linha têm precedência igual.
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-17
Advertência Não escreva nenhum script que dependa deste comportamento. As versões futuras
do InTouch podem não operar de acordo com esta lógica e deixarão seu aplicativo exposto a
dificuldades de atualização e/ou incompatibilidades.
Se modificar o valor de uma tag vinculada a um script Condition interno ao corpo desse script, os
resultados podem não ser os esperados. Veja um exemplo do que acontece ao fazer isto.
Veja um exemplo de script Condition:
Condition: ( X == 25 )
ON TRUE body:
PrintWindow("Main Window");
Blob = TAN(MyAngle);
X=0;
AppActivate("NotePad");
Show("Blaster Control");
TagLevel = NewValue * SIN( Blob );
ON FALSE body:
SendKeys("Main Window Printed");
Blob = 0;
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-19
P Se um valor de tag muda, o novo valor é enviado imediatamente ao servidor de E/S? Se não,
quando? Quando o servidor de E/S realiza a escrita? Um servidor de E/S fica inativo enquanto o
script é executado?
R Não, o novo valor de tag não é imediatamente enviado ao servidor de E/S. Ao invés disto, o
valor é enviado após o script ser concluído. E, sim, o servidor de E/S fica temporariamente inativo
enquanto um script executa.
P Quando as tags do sistema para data e hora são atualizadas? (ou seja, $Month, $Day, $Year,
$Time, etc.) Pensei que fossem atualizadas com base no valor do ajuste Update Time Variables
em /Special/Configure/View Generic. Escrevi um script para mudar a hora e data e $Time mudou,
mas $Date não atualizou até que o WindowViewer foi reiniciado.
R Se mudar a hora ou data do sistema em seu computador, certifique-se de enviar uma
mensagem WM_TIMECHANGE a todos os aplicativos Windows que estão executando no
momento, incluindo seus aplicativos InTouch. Os aplicativos Windows raramente ficam em “fila”
para o tempo atual.
P Quero imprimir um arquivo de meu aplicativo InTouch . Como faço isto?
R É possível usar FileCopy()function, como neste exemplo:
status = FileCopy("c:\autoexec.bat","lpt2", Monitor.Name);
Ele imprime o arquivo AUTOEXEC.BAT em uma impressora LPT2 e usa o Monitor da tag Integer
como DoneTag. (Observação: É possível também usar a função FilePrint() que faz parte da
biblioteca de função de script de Suporte Técnico e está disponível no CD de Base de
Conhecimento .)
P Como crio um temporizador em InTouch?
R Use um script Condition que faz referência a uma tag Memory Discrete denominada Flag.
Depois, crie um script On True Condition que faz referência a uma tag denominada Counter,
ajustada em zero (ou seja, inicialize o contador). Ajuste o tempo, While True Every xxx msec, para
a freqüência desejada. O script While True Condition deve incrementar a tag Counter toda vez
que o script executa. Quando Counter é maior do que um valor pré-selecionado, ajuste uma tag
Memory Discrete denominada Trigger em um (1).
Veja um exemplo de script Condition:
Counter = Counter + 1;
ActivateApp "App2";
SendKeys( "%({F4})" );
Entretanto, quando saio de meu aplicativo, ‘App1’ e ‘App2’ ainda estão executando. Copiei este
script para um script Pushbutton Action e os dois aplicativos foram encerrados. Por que meu
script On Shutdown Application não funciona?
R Porque o WindowViewer captura a CPU durante o encerramento, não é possível executar um
script que faz com que outro aplicativo tenha acesso à CPU. Portanto, a função ActivateApp( )
não funcionará em um script On Shutdown Application.
P Então, por que não há uma função script KillApp( )?
R Há uma função script denominada WWControl( ). WWControl( ) pode ser usada para encerrar
um aplicativo. Se usá-la em seu script Application Action, ela derrubará seus aplicativos durante o
encerramento. Por exemplo, insira esta linha em seu script On Shutdown Application:
WWControl( "Notepad - (Untitled)", "CLOSE");
Execute Notepad sem carregar qualquer arquivo e inicie o aplicativo em WindowViewer. Saia do
WindowViewer e o aplicativo Notepad deve desaparecer.
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-21
Product = 1;
NumberToRaise = 4;
FOR Index = 1 TO 10
Product = Product * NumberToRaise;
NEXT;
Uma vez que o script acima tenha concluído o processamento, o valor de Product será 1.048.576.
Aqui há mais alguns exemplos de vários scripts complexos:
Declaração IF-THEN sem cláusula ELSE:
IF a <> 0 THEN
a = a + 100;
ENDIF;
Declaração IF-THEN-ELSE com uma cláusula ELSE:
IF temp > 500 THEN
Disc = 1;
Real = 43.7;
ELSE
Disc = 0;
Real = 93.4;
ENDIF;
Declaração IF-THEN-ELSE com uma cláusula ELSE IF e uma cláusula ELSE:
IF temp > 500 THEN
Disc = Disc * 10;
ELSE
IF temp > 250 THEN
x = y / z;
a = abc + def;
ENDIF;
ENDIF;
Declaração IF-THEN-ELSE com uma cláusula ELSE IF e uma cláusula ELSE
IF temp > 500 THEN
Disc = Disc - 10;
ELSE
IF temp < 250 THEN
Disc = Disc + 10;
ELSE
Disc = Disc + 50;
Real = 100;
ENDIF;
ENDIF;
Declaração IF-THEN-ELSE com várias cláusulas ELSE IF e uma cláusula ELSE
IF temp > 100 THEN
temphihi = 1
Disc = 50;
ELSE
IF temp > 80 THEN
temphi = 1;
ELSE
IF temp < 30 THEN
templo = 1;
ELSE
IF temp < 10 THEN
templolo = 1;
ELSE
tempok = l;
ENDIF;
ENDIF;
ENDIF;
ENDIF;
Declaração IF-THEN-ELSE que testa Condition 1 ou Condition 2
IF (pump1 < 50.0) OR (pump2 < 50.0) THEN
alarm-1 = 1;
ELSE
alarm-1 = 0;
ENDIF
Declaração IF-THEN-ELSE que testa Condition 1 e Condition 2
IF (pump1 < 50.0) AND (pump2 < 50.0) THEN
alarm-2 = 1;
ELSE
alarm-2 = 0;
ENDIF;
Declaração IF-THEN-ELSE que testa equivalência:
IF a > 50 THEN
IF b == 100 THEN
c = 0;
ENDIF;
ENDIF;
As estruturas de controle podem ser colocadas dentro de outras estruturas de controle (como um
bloco IF-THEN dentro de uma malha FOR-NEXT). Uma estrutura de controle dentro de outra
estrutura de controle é conhecida como encadeamento.
Exemplo:
FOR TagX = 1 TO 5
FOR TagY = 1 TO 10
...declarações...
IF (condição) THEN
[EXIT FOR;]
ENDIF;
...declarações...
NEXT;
NEXT;
Onde:
O primeiro NEXT fecha a malha FOR mais interna e o último NEXT fecha a malha FOR mais
externa. De forma semelhante, em declarações IF encadeadas, as declarações ENDIF
automaticamente são aplicáveis à declaração IF anterior mais próxima.
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-23
Obs.: Este documento presume que você esteja familiarizado com o Sistema Operacional
Windows, InTouch e script InTouch. Este documento refere-se ao uso correto de Scripts e
QuickFunctions. Detalhes sobre QuickFunctions podem ser encontrados no Guia de Usuário
InTouch e Technote 205 denominada “Using QuickFunctions in InTouch 7.x”.
Obs.: Não há limite para quantas funções Assíncronas podem ser executadas, entretanto, para
garantir um desempenho confiável, é altamente recomendado que não mais do que três sejam
executadas simultaneamente. Cada thread Assíncrono requer muitos recursos, reduzindo, assim,
o desempenho do sistema.
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-25
DCS2
Logmessage("DCS2 started");
Call QF();
Logmessage("DCS2 ended");
QF
Logmessage("QF started");
Logmessage("QF ended");
Comportamento
1) DCS1 iniciado
2) DCS1 concluído
3) DCS2 iniciado
4) QF iniciado
5) QF concluído
Como pode observar, o QuickFunction Assíncrono foi executado somente uma vez e o DCS2
nunca terminou.
Possível Solução
DCS2
Logmessage("DCS2 started");
If NOT IsAnyAsyncFunctionBusy(1);
Call QF2();
Logmessage("DCS2 ended");
Comportamento
1) DCS1 iniciado
2) DCS1 concluído
3) DCS2 iniciado
4) QF iniciado
5) QF concluído
6) DCS2 concluído
7) QF iniciado
8) QF concluído
Como pode observar, o QF foi executado duas vezes e o DCS2 executou até o seu final. Este
comportamento é verdadeiro somente se o QuickFunction Assíncrono terminou executando em 1
segundo. Se QF demorar mais do que 1 segundo para executar, ele não será chamado
novamente do segundo script Data Change.
Chamar um QuickFunction enquanto outro QuickFunction Síncrono chamada de um
QuickFunction Assíncrono está executando
Vamos considerar que temos um QuickFunction Assíncrono denominado QF_Async que chama
um QuickFunction Síncrono denominado QF_Sync. Espera-se que o QuickFunction Síncrono
dure ‘X’ segundos. Se o aplicativo tentar chamar um terceiro QuickFunction (Assíncrono ou
Síncrono) enquanto QF_Sync ainda está executando, as atualizações de View pararão. As
atualizações serão retomadas assim que QF_Sync termine.
Explicação
1) CallExecute() considera a expressão QF_Async como um parâmetro e verifica seu tipo.
Sendo um QuickFunction Assíncrono, ela lançará um thread separado para executá-la e
CallExecute() sairá.
2) QF_Async chama QF_Sync. CallExecute() é chamada novamente deste segundo thread. Ele
determina que QF_Sync é um QuickFunction Síncrono, começa a executá-lo e não sai antes que
QF_Sync termine.
3) Um terceiro QuickFunction é chamado a partir de um CSC, DCS ou script Application. Agora o
thread principal não pode chamar a função CallExecute(), pois ela já está ocupada como parte da
execução do thread secundário. Então, o thread principal tem que esperar até que CallExecute ()
esteja livre da execução do thread secundário. Durante este tempo, View parará a atualização.
Obs.: Isto pode criar um problema para falha de “Hot Backup” sobre a lógica que pode depender
de contador ou de scripts Heartbeat que não estarão em execução nesta situação, resultando em
uma falsa perda de comunicação.
Obs.: O valor do parâmetro 'Timeout' deve ser selecionado cuidadosamente. Se houver algum
QuickFunction Assíncrono executando quando a função IsAnyAsyncFunctionsBusy(timeout) é
chamada, o WindowViewer parará a atualização até que todos os QuickFunction Assíncronos
terminem ou até que o 'tempo-limite' tenha decorrido.
Treinamento Wonderware
Apêndice E – Notas técnicas relacionadas ao InTouch E-27
Exemplos:
CSC1
Logmessage("CSC1 started");
Call QF();
Logmessage("CSC1 ended");
CSC2
Logmessage("CSC2 started");
IF NOT IsAnyAsyncFunctionBusy(10)
THEN
Call QF2();
ENDIF;
QF1
Logmessage("QF1 started");
For index=1 to 999999
Mytag=Mytag+1;
NEXT;
Logmessage("QF1 ended");
Como pode observar, QF1 está executando um ForNextLoop que terá um tempo-limite de 5
segundos. QF1 levará 5 segundos para executar.
Obs.: Ao usar “For Next Loops”, o atraso de tempo-limite pode ser ajustado adicionando a linha
“looptimeout=seconds” no arquivo Intouch.ini. Segundos é o tempo definido em que For next loop
deve ser concluída, de forma que ela não execute indefinidamente. Neste exemplo de teste,
temos “looptimeout=5” no arquivo Intouch.ini.
QF2
Logmessage("QF2 started");
Logmessage("QF2 ended");
Comportamento
1) 17:01:27.734 CSC1 iniciado
2) 17:01:27.734 CSC1 concluído
3) 17:01:27.734 CSC2 iniciado
4) 17:01:27.734 QF1 iniciado
5) 17:01:32.734 QF1 concluído
6) 17:01:32.734 CSC2 concluído
7) 17:01:32.734 QF2 iniciado
8) 17:01:32.734 QF2 concluído
Observe que um segundo script de condição (CSC2) não iniciou o QF2 QuickFunction
Assíncrono até o término de QF1 (atraso de 5 segundos). A IsAnyAsyncFunctionBusy (10) verifica
constantemente se há algum QuickFunction Assíncrono está executando. Em nosso caso, QF1
estava executando. Assim que QF1 terminou, QF2 foi chamado. Se QF1 tivesse levado mais do
que 10 segundos (tempo-limite) para executar, QF2 nunca teria sido executado porque a
IsAnyAsyncFunctionBusy(10) tem um tempo-limite de 10 segundos.
Recomendações
1. Não execute mais do que três QuickFunction Assíncronos simultaneamente. (A execução de
apenas um QuickFunction Assíncrono por vez é altamente recomendada.)
2. Não tente executar mais do que uma instância de qualquer QuickFunction Assíncrono ao
mesmo tempo.
3. Evite chamar QuickFunctions Síncronos de dentro de um QuickFunction Assíncrono
especialmente quando não souber quanto tempo a função Síncrona levará.
4. Controle o lançamento de QuickFunction Assíncrono usando tags discretas (Flags) para
determinar quando um QuickFunction Assíncrono termina e quando iniciar outro
QuickFunction Assíncrono.
A IsAnyAsyncFunctionBusy() pode ser usada também para determinar se algum script
Assíncrono está executando.
Treinamento Wonderware
Apêndice F
Simulação de E/S
F-2 Apêndice F – Simulação de E/S
Introdução
Neste laboratório, você configurará um servidor SIMULATE I/O e estabelecerá comunicação com
o InTouch S criando e animando as novas tags.
Este laboratório tem por objetivo ser usado durante o Module 8, “I/O Communication” e deve
substituir o Lab 9, “Configuring I/O Communication” no caso de um PLC não estar disponível para
InTouch.
Este laboratório foi desenvolvido usando o aplicativo de servidor SIMULATE I/O que é enviado
com o InTouch.
Objetivos
Ao término deste laboratório, você deverá ter uma janela InTouch que usa dados de E/S do
aplicativo Simulation.
Para isto, as seguintes tarefas devem ser concluídas com sucesso:
z Iniciar e Configurar o servidor SIMULATE I/O
z Criar um Novo Nome de Acesso
z Criar um Aplicativo Factory Floor
4. Clique em New.
Treinamento Wonderware
Apêndice F – Simulação de E/S F-3
7. Clique em OK para aceitar o diretório padrão. O tópico é exibido no painel Topic Definition
Topics
8. Clique em Done.
3. Clique em Add. \
A caixa de diálogo Add Access Name é exibida:
4. Configure a caixa de diálogo Add Access Name como exibido e clique em OK para aceitar o
novo Access Name.
O novo nome é exibido:
5. Clique em Close.
Treinamento Wonderware
Apêndice F – Simulação de E/S F-5
2. Crie as tags a seguir. Uma vez que estaremos nos comunicando com o PLC, as tags
precisarão ser atribuídas ao Nome de Acesso , PLC1 com os itens listados abaixo.
Observação Importante: Todas as tags, exceto a tag Start, devem ser configuradas como
‘somente leitura’.
Nome de
Tagname Tipo de tag Item
Acesso:
Start E/S discreta: PLC1 Início
Valve_A E/S discreta: PLC1 V1
Valve_B E/S discreta: PLC1 V2
Agitador E/S discreta: PLC1 A1
Drain_Valve E/S discreta: PLC1 V3
Tank_Level Inteiro E/S PLC1 L1
(Min/Max EU 0-1000)
(Min/Max Raw 0-1000)
Objeto de
Link de animação Propriedade / Ajuste de Parâmetro
Texto
Início Pushbutton Touchscreen - Valor Ação: Toggle
Discreto
Cor de Texto Discreto 1,Verdadeiro,Habilitado: Vermelho/
0,Falso,Desabilitado: Verde
Valve_A Cor de Texto Discreto 1,Verdadeiro,Habilitado: Vermelho/
0,Falso,Desabilitado: Verde
Valve_B Cor de Texto Discreto 1,Verdadeiro,Habilitado: Vermelho/
0,Falso,Desabilitado: Verde
Agitador Cor de Texto Discreto 1,Verdadeiro,Habilitado: Vermelho/
0,Falso,Desabilitado: Verde
Drain_Valve Cor de Texto Discreto 1,Verdadeiro,Habilitado: Vermelho/
0,Falso,Desabilitado: Verde
Tank_Level Exibir valor - Analógico
Treinamento Wonderware
Apêndice F – Simulação de E/S F-7
O campo de texto Start deve ser alternado entre Verde e Vermelho quando clicado.
O campo de texto Gate_Valve deve mudar de Verde para Vermelho quando o valor da tag muda.
Os campos de textos Valve_A e Valve_B devem mudar de Verde para Vermelho quando o valor
da tag mudar.
O campo de texto Agitator deve mudar de Verde para Vermelho quando o valor da tag muda.
O campo de texto Drain_Valve deve mudar de Verde para Vermelho quando o valor da tag muda.
O campo de texto Tank_Level deve mudar quando o valor da tag muda.
Agora é com você. Tente ser o mais criativo possível. Por exemplo: use o máximo de links de
animação possível, implemente tendências, tente usar assistentes, bitmaps, etc.
Os materiais usados nesta visualização de processo são totalmente escolhidos por você.
Quando Start é ajustado como Verdadeiro, Agitator é ajustado como Verdadeiro, Valve_A é
ajustado como Verdadeiro e Tank_Level começa a aumentar até que atinja 800.
At Tank_Level = 800, Valve_A é ajustado como Falso e Valve_B é ajustado como Verdadeiro.
Em Tank_Level = 1000, Valve_B é ajustado como Falso, Agitator é ajustado como Falso,
Drain_Valve é ajustado como Verdadeiro e Tank_Level reduzirá até que atinja 0 (zero).
Quando Start é ajustado como Falso, todos os pontos são configurados como Falso / 0 (zero).
Treinamento Wonderware
Apêndice G
Funções de script
G-2 Apêndice G – Funções de script
Características gerais
Este Apêndice explica as Funções Script InTouch e é organizado para refletir os grupos de
Função encontrados dentro do InTouch.
z Funções string
z Funções de cálculo
z Funções de sistema
z Complementos
z Diversas funções
Treinamento Wonderware
Apêndice G – Funções de script G-3
Funções string
Funções string são usadas em variáveis string.
Função Descrição
DText Muda o tagname de mensagem baseado no valor de um tagname discreta.
StringASCII Retorna o valor ASCII do primeiro caractere em um tagname de mensagem
especificada.
StringChar Retorna o caractere correspondente a um código ASCII especificado.
StringCompare Compara dois strings de texto (sensível a maiúscula/minúscula).
StringCompareNoCase Compara dois strings de texto (não sensível a maiúscula/minúscula).
StringFromIntg Converte um valor inteiro em sua representação string em outra base.
StringFromReal Converte um valor real em uma representação string, seja um número de ponto
flutuante ou uma notação exponencial.
StringFromTime Converte um valor de tempo (em segundos desde Jan-01-1970) em uma
representação de string particular. O valor de tempo deve ser igual a UTC (total
de segundos desde Jan-01-1970 GMT). O valor retornado é o horário local.
StringFromTimeLocal Converte um valor de tempo (em segundos desde Jan-01-1970) em uma
representação string particular. O valor retornado reflete Localtime.
StringInString Retorna a posição em Text onde Search For ocorre pela primeira vez.
StringLeft Retorna o número de caracteres especificados por Chars a paartir do caractere
de texto mais à esquerda.
StringLen Retorna o comprimento de texto para um resultado inteiro.
StringLower Converte todos os caracteres maiúsculos em texto com caractere minúsculo e
coloca o string resultante em MessageResult.
StringMid Extrai do texto o número específico de caracteres especificado por Chars,
começando na posição StartChar. Esta função é ligeiramente diferente de seu
complemento, a função StringLeft() e a função StringRight(), porque ela
permite ao usuário especificar o início e o fim do string a ser extraído da tag de
mensagem.
StringReplace Substitui ou muda partes específicas de um string fornecido. Usar esta função
pode remover um tagname string e substituir caracteres, palavras ou frases.
StringRight Retorna o número de caracteres especificados por Chars começando no
caractere de texto mais à direita.
StringSpace Gera um string de espaços dentro de um tagname de mensagem ou de uma
expressão.
StringTest Testa o primeiro caractere de texto para determinar qual seu tipo.
StringToIntg Converte o valor numérico de um tagname de mensagem em um valor inteiro
para o qual cálculos matemáticos podem ser aplicados.
StringToReal Converte o valor numérico de um tagname de mensagem em um valor real
(ponto flutuante) para o qual cálculos matemáticos podem ser aplicados.
StringTrim Remove espaços de texto não desejados.
StringUpper Converte todos os caracteres minúsculos em texto para letra maiúscula.
Text Faz com que um tipo de tagname exiba o valor de um tagname analógico
(inteiro ou real) com base no Format_Text especificado.
WWStringFromTime Extrai 1 de 5 formatos de hora de um determinado campo formatado de hora/
data:
1: 08/22/2003
2: 12:51:26 AM
3: Sex Ago 22 00:52:03 2003
4: Sex
5: Sexta-feira
Funções de cálculo
A tabela a seguir descreve rapidamente cada função de script de cálculo. Para mais detalhes e
exemplos de sintaxe, consulte os arquivos de Ajuda do aplicativo InTouch .
Função Descrição
Abs Retorna o valor absoluto (equivalente sem sinal) de um número especificado.
ArcCos Dado um número entre -1 e 1 (inclusive), retorna um ângulo entre 0 e 180 graus
cujo co-seno corresponde a este número.
ArcSin Dado um número entre -1 e 1 (inclusive), retorna um ângulo entre -90 e 90
graus cujo seno corresponde a este número.
ArcTan Dado um número entre, retorna um ângulo entre -90 e 90 graus cuja tangente
corresponde a este número.
Cos Retorna o co-seno de um ângulo dado em graus.
Exp Retorna o resultado de e elevado à potência.
Int Retorna o próximo inteiro menos que ou igual a um número especificado.
Log Retorna o log natural de um número.
LogN Retorna os valores do logaritmo de x à base n.
Pi Retorna o valor de Pi.
Round Arredonda um número real em uma precisão especificada.
Sgn Determina o sinal de um valor (seja ele positivo, zero ou negativo).
Sin Retorna o seno de um ângulo dado em graus.
Sqrt Faz com que o InTouch calcule automaticamente a raiz quadrada do valor, que
segue a declaração.
Tan Retorna a tangente de um ângulo dado em graus.
Trunc Trunca um número real (ponto flutuante) eliminando a porção à direita da casa
decimal.
Treinamento Wonderware
Apêndice G – Funções de script G-5
Funções de sistema
A tabela a seguir descreve rapidamente cada função de script de sistema. Para mais detalhes e
exemplos de sintaxe, consulte os arquivos de Ajuda do aplicativo InTouch.
Função Descrição
ActivateApp Ativa outro aplicativo Windows em execução no momento.
FileCopy Copia um SourceFile para um DestFile, semelhante ao comando Copiar do
DOS ou à função Copiar no Arquivo Windows.
FileDelete Exclui arquivos desnecessários ou indesejados.
FileMove Semelhante ao FileCopy() exceto por mover o arquivo de um local a outro.
FileReadFields Lê um registro Variável Separada por Vírgula (CSV) de um arquivo
especificado.
FileReadMessage Lê um número especificado de bytes (ou toda uma linha) de um arquivo
especificado.
FileWriteFields Escreve um registro Variável Separada por Vírgula (CSV) para um arquivo
especificado.
FileWriteMessage Escreve um número especificado de bytes (ou toda uma linha) para um arquivo
especificado.
InfoAppActive Testa se um aplicativo está ativo.
InfoAppTitle Retorna o nome de lista do Título do Aplicativo ou da Tarefa Windows de um
programa especificado que está executando no momento.
InfoDisk Retorna informações sobre um drive de disco local específico (ou rede).
InfoDosEnv Esta função é usada para Recuperar o ajuste de uma variável de ambiente DOS
em particular.
InfoFile Retorna informações sobre um arquivo específico ou sub-diretório.
InfoInTouchAppDir Retorna o aplicativo atual do diretório InTouch .
InfoResources Retorna vários valores de recurso de sistema.
StartApp Inicia automaticamente outro aplicativo Windows.
Complementares
Funções complementares estão fora do escopo do curso Básico InTouch. Elas estão incluídas
aqui para fins de totalidade.
Para mais informações sobre funções Add-ons, consulte os arquivos de ajuda InTouch.
Função Descrição
RecipeDelete Exclui um Nome de Receita do arquivo de modelo de receita
especificado.
RecipeGetMessage Escreve um código de erro em um tagname Analógico e o código de
erro correspondente a um tagname de mensagem.
RecipeLoad Carrega uma receita específica para uma unidade específica de
tagnames.
RecipeSave Salva uma receita criada recentemente ou para salvar mudanças feitas
em uma receita existente para o arquivo modelo de receita
especificado.
RecipeSelectNextRecipe Selecione o Nome de Receita seguinte atualmente definido no arquivo
de modelo de receita.
RecipeSelectPreviousRecipe Selecione o Nome de Receita anterior atualmente definido no arquivo
de modelo de receita.
RecipeSelectRecipe Selecione um Nome de Receita específico atualmente definido no
arquivo de modelo de receita.
RecipeSelectUnit Seleciona a unidade de tagnames para a qual os valores de receita
atuais serão carregados.
SPCConnect Usado em conjunto com conjuntos de dados de coleta de dados
automáticos. Antes do conjunto de dados de coleta de dados
Automático iniciar a coleta de dados, esta função deve ser usada para
indicar ao SPC em qual usuário o nó se encontra.
SPCDatasetDig Esta função é usada para exibir a caixa de diálogo SPCPro Dataset
Configuration no WindowViewer. Novos Conjuntos de Dados podem
ser adicionados e excluídos. Não há parâmetros ou nenhum valor de
retorno.
SPCDiconnect Esta função é usada para desconectar um Agente de um banco de
dados SPC Pro. Quando esta função é usada, todos os conjuntos que
foram atribuídos ao Agente que estava desconectado pararão a coleta.
SPCDisplayData Esta função é projetada para permitir fácil rolagem do gráfico para
qualquer data e hora. É possível usar um tagname para monitorar o
status da busca de dados SPC. O status conterá um 0 se o SPC
encontrou dados e 1 se não foi possível encontrar dados para o
período de tempo especificado.
SPCLocateScooter Esta função é projetada para permitir fácil rolagem do Scooter para
qualquer número de amostra válido. O tagname Scooter definido no
conjunto de dados será atualizado com o valor de amostra da barra X.
O ajuste de SampleNumber em 0 oculta/desabilita o Scooter.
SPCMoveScooter Esta função é projetada para permitir fácil rolagem do Scooter para
qualquer número de amostra válido. O tagname Scooter definido no
conjunto de dados será atualizado com o valor de amostra da barra X.
SPCSaveSample Salva uma amostra de entrada manualmente. Esta função é usada em
conjunto com a função SPCSetMeasurement.
SPCSelectDataset Abre uma caixa de diálogo a partir da qual o usuário pode selecionar
um conjunto de dados direto.
SPCSelectProduct Abre uma caixa de diálogo a partir da qual o usuário pode selecionar
um produto em um determinado conjunto de dados.
Treinamento Wonderware
Apêndice G – Funções de script G-7
Função Descrição
SPCSetControlLimits Permite entrada manual fácil ou orientada por evento dos valores
limites de controle para um Gráfico de Controle.
SPCSetMeasurement Permite entrada manual fácil ou orientada por evento de valores de
medição analógicos pelo processamento de QuickScript.
SPCSetProductCollected Muda o produto sendo coletado em um Conjunto de dados
especificado.
SPCSetProductDisplayed Muda o produto sendo exibido em um Conjunto de dados especificado.
SPCSetRangeLimits Permite entrada manual fácil ou orientada por evento dos Limites de
Controle para um Gráfico de Faixa.
SPCSetSpecLimits Permite entrada manual fácil ou orientada por evento dos valores
limites de especificação para um Gráfico de Controle.
SQLAppendStatement Continua uma declaração SQL usando o conteúdo do string. Erros são
retornados no retorno da função.
SQLClearParam Limpa o valor do parâmetro especificado. SQLSetParam deve ser
chamado novamente antes de chamar a função SQLExecute().
SQLClearStatement Libera os recursos associados com a declaração especificada pelo
SQLHandle.
SQLClearTable Exclui todos os registros em uma tabela de banco de dados, mas
mantém a tabela.
SQLCommit O comando SQLCommit() define o fim de um grupo de comandos de
transação. O grupo de comandos desenvolvido entre o comando
SQLTransact() e o comando SQLCommit() é denominado um conjunto
de transação. Um conjunto de transação é manuseado como uma
única transação. Após o comando SQLTransact() ser abordado, todas
as operações subseqüentes não serão comprometidas para o banco
de dados até que o comando SQLCommit() seja abordado.
SQLConnect Conecta o InTouch ao banco de dados especificado no ConnectString.
SQLCreateTable Cria uma tabela no banco de dados usando os parâmetros no Modelo
de Tabela nomeado. Os modelos de Tabela (definidos no arquivo
SQL.DEF ) determinam a estrutura de uma tabela de banco de dados.
SQLDelete Exclui um registro ou diversos registros.
SQLDisconnect Desconecta o usuário do banco de dados.
SQLDropTable Apaga uma tabela.
SQLEnd Isto é usado após uma função SQLSelect() liberar recursos que
estavam sendo usados para armazenar a Tabela Resultados.
SQLErrorMsg Recupera a mensagem de erro de texto associada com um
ResultCode específico. ErrorMsg é o tagname de Mensagem de
Memória InTouch (máximo de 131 caracteres) associado ao
ResultCode.
SQLExecute Executa a declaração SQL. Se a declaração é uma declaração
selecionada, o parâmetro BindList designa o nome de BindList para
ser usado ao conectar as colunas de banco de dados com os
tagnames. Se BindList é NULL, nenhum relacionamento de tagnames
é formado. Por exemplo, a declaração SQL poderia ser Criar
Visualização, Inserir, etc. Erros são retornados no retorno da função.
Se a declaração foi "preparada," o manuseio da declaração retornada
da preparação deve ser passada. Se a declaração não foi "preparada,"
o manuseio da declaração deve ser zero (0).
SQLFirst Seleciona o primeiro registro da Tabela Resultados criado pela última
função SQLSelect(). Uma função SQLSelect() deve ser processada
antes de usar este comando.
Função Descrição
SQLGetRecord Recupera o registro especificado pelo RecordNumber do buffer de
seleção atual.
SQLInsert Insere um novo registro na tabela de referência usando os valores dos
tagnames no BindList fornecido. O parâmetro BindList define quais
tagnames InTouch são usados e com quais colunas de banco de
dados elas estão associadas.
SQLInsertEnd Libera a declaração.
SQLInsertExecute Executa a declaração já preparada.
SQLInsertPrepare Cria e prepara uma declaração Insert para execução. A declaração
Insert não é processada. O parâmetro SQLHandle é um tagname
Integer que conterá um valor após a declaração ser processada.
SQLLast Seleciona o último registro da Tabela Resultados criada pela última
função SQLSelect(). Uma função SQLSelect() deve ser processada
antes de usar este comando.
SQLLoadStatement Lê a declaração contida no FileName. Neste ponto a declaração é
semelhante a uma criada pela função SQLSetStatement() e pode ser
acrescentada através de uma função SQLAppendStatement() ou
executada pela função SQLExecute(). Pode haver somente uma
declaração por arquivo. Entretanto, a função SQLAppendStatement()
pode ser usada para acrescentar algo à declaração se a função
SQLPrepareStatement() ou a função SQLExecute() não foi chamada.
SQLManageDSN Executa o programa de configuração Microsoft ODBC Manager. Isto
pode ser usado para adicionar, excluir e modificar todos os nomes de
fonte de dados.
SQLNext Seleciona o próximo registro da Tabela Resultados criada pela última
função SQLSelect(). Uma função SQLSelect() deve ser processada
antes de usar este comando.
SQLNumRows Indica quantas linhas atendem o critério especificado na última função
SQLSelect(). Por exemplo, se uma WhereExpression é usada para
selecionar todas as linhas com um nome de coluna AGE, onde AGE
corresponde a 45, o número de linhas retornado poderia ser 40 ou
4000. Isto pode determinar qual função é processada em seguida.
SQLPrepareStatement Uma SQLPrepareStatement() prepara uma declaração SQL existente
para uso pela função SQLSetParam(). Uma declaração pode ser
criada usando uma SQLSetStatement() ou SQLLoadStatement(). O
manuseio de declaração é retornado.
SQLPrev Seleciona o registro anterior da Tabela Resultados criada pela última
função SQLSelect().
SQLRollback O comando SQLRollback() reverte ("roll back") o conjunto de
transação comprometido recentemente. Um conjunto de transação é
um grupo de comandos emitido entre o comando SQLTransact() e o
comando SQLCommit() é ou o comando SQLRollback(). Um conjunto
de transação é manuseado como uma única transação. Após o
comando SQLTransact() ser emitido, todas as operações
subseqüentes não são comprometidas com o banco de dados até que
o comando SQLCommit() seja emitido.
Treinamento Wonderware
Apêndice G – Funções de script G-9
Função Descrição
SQLSelect Instrui o banco de dados para recuperar informações da tabela.
Quando uma função SQLSelect() é processada, uma Tabela de
Resultados temporária é criada em memória, contendo registros que
podem ser navegados usando funções SQLFirst(), SQLLast(),
SQLNext() e SQLPrev().
Observação Sempre use a função SQLEnd() após um SQLSelect()
liberar recursos que estavam sendo usados para armazenar a Tabela
Resultados.
SQLSetParamClear Estabelece o valor do parâmetro especificado para o string
especificado. A função SQLSetParamChar() pode ser chamada várias
vezes antes da execução, resultando no valor de parâmetro que está
sendo ajustado para a concatenação de todos os valores enviados.
Comprimentos de 0 (zero) são ignorados.
SQLSetParamDate Estabelece o valor do parâmetro de data especificado para o string
especificado.
SQLSetParamDateTime Estabelece o valor do parâmetro de data-hora especificado para o
string especificado.
SQLSetParamDecimal Estabelece o valor do parâmetro decimal especificado para o string
especificado. Precision é o número de dígitos no valor e Scale é o
número de dígitos à direita da casa decimal.
SQLSetParamFloat Estabelece o valor do parâmetro especificado para o ParameterValue
especificado.
SQLSetParamInt Estabelece o valor do parâmetro especificado para o ParameterValue
especificado.
SQLSetParamLong Estabelece o valor do parâmetro especificado para o ParameterValue
especificado.
SQLSetParamNull Estabelece o valor do parâmetro especificado para o NULL.
SQLSetParamTime Estabelece o valor do parâmetro de hora especificado para o string
especificado.
SQLSetStatement Inicia um buffer de declaração SQL usando o conteúdo de
SQLStatement, na conexão estabelecida, ConnectionID. Pode haver
um buffer de declaração SQL por ConnectionID. Os erros são
retornados no retorno da função.
SQLTransact O comando SQLTransact() define o início de um grupo de comandos
de transação. O grupo de comandos desenvolvido entre o comando
SQLTransact() e o comando SQLCommit() é denominado um conjunto
de transação. Um conjunto de transação é manuseado como uma
única transação. Após o comando SQLTransact() ser emitido, todas as
operações subseqüentes não serão comprometidas com o banco de
dados até que o comando SQLCommit() seja emitido.
SQLUpdate Modifica um registro que atualiza o registro com os valores de
tagname atual.
SQLUpdateCurrent Considera o registro selecionado atual e o atualiza com os novos
valores InTouch. O exemplo a seguir atualizará o registro selecionado
atual.
Funções diversas
Funções diversas são usadas para realizar várias ações, incluindo ocultar uma janela, monitorar e
controlar tendência de histórico, imprimir janelas, etc.
A sintaxe específica destas funções é abordada no Guia de Referência InTouch.
Função Descrição
Ack Função script para reconhecer alarmes locais.
AddPermission Estabelece o Nível de Acesso para um grupo em particular ou usuário
no domínio especificado.
Tentativas de atingir a conta Account localizada no Domínio Domain.
almAckAll Reconhece todos os alarmes na consulta de alarme atual. Uma vez
que a exibição de alarme tem apenas uma área de exibição limitada, a
função almAckAll pode reconhecer alarmes que não são visíveis na
exibição.
almAckDisplay Reconhece apenas os alarmes que estão atualmente visíveis na
exibição de alarme.
almAckGroup Reconhece todos os alarmes que têm um determinado nome de Grupo
do mesmo provedor.
almAckPriority Reconhece todos os alarmes dentro de uma faixa de prioridade
especificada tendo o mesmo nome de provedor e nome de grupo.
almAckRecent Reconhece somente o alarme mais recente que ocorreu na consulta
de alarme atual.
almAckSelect A exibição de alarme distribuído permite que alarmes sejam
selecionados clicando neles com o mouse em Runtime. A função
almAckSelect pode ser usada para reconhecer estes alarmes.
almAckSelectedGroup Reconhece todos os alarmes que têm o mesmo nome de grupo do
mesmo provedor como um ou mais dos alarmes selecionados.
almAckSelectedPriority Reconhece todos os alarmes que têm a mesma prioridade do mesmo
provedor e nomes de grupo como um ou mais dos alarmes
selecionados.
almAckSelectedTag Reconhece todos os alarmes que têm o mesmo Tagname do mesmo
provedor e nomes de grupo e têm a mesma prioridade como um ou
mais dos alarmes selecionados.
almAckTag Reconhece todos os alarmes que têm o mesmo Tagname, nome de
Provedor e nome de Grupo dentro de uma determinada Faixa de
prioridade.
almDefQuery Realiza uma consulta para atualizar um objeto de exibição de alarme
usando as propriedades padrões.
almMoveWindow Rola a janela do objeto de exibição de alarme.
almQuery Realiza uma consulta para atualizar um objeto de exibição de alarme.
almSelectAll Alterna a seleção de todos os alarmes em um objeto de exibição de
alarme.
almSelectGroup Alterna a seleção de todos os alarmes que estão contidos em uma
instância nomeada Distributed Alarm Display como resultado da última
consulta de exibição e onde o alarme resultante contém o mesmo
nome do grupo de alarme.
almSelectionCount Retorna o valor inteiro contendo o número de alarmes selecionado
pelo operador no Distributed Alarm Object.
almSelectItem Alterna a seleção do item que foi destacado em um objeto de exibição
de alarme.
Treinamento Wonderware
Apêndice G – Funções de script G-11
Função Descrição
almSelectPriority Alterna todos os alarmes que estão contidos em uma instância
Distributed Alarm Object nomeada como resultado da última consulta
de exibição e onde os alarmes resultantes estão na faixa de prioridade
especificada.
almSelectTag Alterna todos os alarmes que estão contidos em uma instância
Distributed Alarm Object nomeada como resultado da última consulta e
de um determinado tagname.
almSetQueryByName Inicia uma nova consulta de alarme para a instância nomeada
Distributed Alarm Object usando os parâmetros de consulta
associados ao nome de consulta definido pelo usuário (favorito).
almShowStats Exibe a tela de estatísticas de objeto de exibição de alarme.
almSuppressAll Suprime a exibição de todas as instâncias atuais e futuras dos alarmes
na consulta atual incluindo os que não são exibidos no momento no
objeto de exibição de resumo de alarme.
almSuppressDisplay Suprime a exibição das ocorrências atuais e futuras destes alarmes
visíveis no objeto de exibição de resumo de alarme.
almSuppressGroup Suprime a exibição das ocorrências atuais e futuras dos alarmes que
pertencem a um determinado nome de Grupo.
almSuppressPriority Suprime a exibição das ocorrências atuais e futuras de qualquer
alarme da faixa de prioridade especificada, tendo o mesmo nome de
Provedor e nome de Grupo.
almSuppressRetain Retém a supressão de alarme de todas as consultas seguintes.
almSuppressSelected Suprime a exibição das ocorrências futuras dos alarmes selecionados
no objeto de exibição de resumo de alarme.
almSuppressSelectedGroup Suprime a exibição das ocorrências atuais e futuras dos alarmes que
pertencem aos mesmos grupos de um ou mais alarmes selecionados
tendo o mesmo nome de Provedor dentro de um Distributed Alarm
Display Control nomeado.
almSuppressSelectedPriority Suprime a exibição das ocorrências atuais e futuras dos alarmes que
pertencem aos mesmos grupos de um ou mais alarmes selecionados
tendo o mesmo nome de Provedor e tag de Grupo dentro de um
Distributed Alarm Display Control nomeado.
almSuppressSelectedTag Suprime a exibição das ocorrências atuais e futuras de qualquer
alarme que pertence ao mesmo nome de Tagname de um ou mais
alarmes selecionados tendo o mesmo nome de Provedor, nome de
Grupo e faixa de Prioridade.
almSuppressTag Suprime a exibição das ocorrências atuais e futuras de qualquer
alarme emitido por um dado nome de tagname, tendo o mesmo nome
de Provedor, de Grupo e faixa de Prioridade.
almUnselectAll Remove todos os alarmes selecionados em uma instância Distributed
Alarm Display nomeada.
almUnSuppressAll Limpa todos os alarmes suprimidos.
APUFindAlarmGroupInstance Encontra a primeira instância do Utilitário de Impressão de Alarme
usando o String de Grupo de Alarme especificado. Isto pode ser usado
para obter inicialmente a instância desejada de um Utilitário de
Impressão de Alarme. O String de grupo de alarme inicial é lido a partir
do arquivo ALC. A correspondência string String NÃO distingue
maiúsculas e minúsculas.
Função Descrição
APUFindFileInstance Encontra a primeira instância do Utilitário de Impressão de Alarme
usando o arquivo de configuração ALC especificado. Isto pode ser
usado para obter inicialmente a instância desejada de um Utilitário de
Impressão de Alarme. O caminho do arquivo que uma instância de
ALC usa pode ser controlado manualmente pelo usuário ou ele pode
ser especificado na linha de comando quando o programa é iniciado. A
correspondência string do caminho de arquivo NÃO distingue entre
maiúsculas e minúsculas.
APUFindPrinterInstance Encontra a primeira instância do Utilitário de Impressão de Alarme
usando o nome ou a porta da impressora especificada. Isto pode ser
usado para obter inicialmente a instância desejada de um Utilitário de
Impressão de Alarme. O nome da impressora é armazenado e lido do
arquivo ALC. A correspondência string do nome da impressora NÃO
distingue entre maiúsculas e minúsculas.
APUGetAlarmGroupText Obtém o Texto do Grupo de Alarme de Consulta de Alarme. O texto do
grupo de alarme inicial é lido a partir do arquivo ALC.
APUGetConfigurationFilePath Obtém o caminho completo do arquivo de configuração ALC em uso.
O caminho do arquivo que uma instância de ALC usa pode ser
controlado manualmente pelo usuário ou ele pode ser especificado na
linha de comando quando o programa é iniciado.
APUGetInstanceCount Retorna o número de instâncias de execução do Utilitário de
Impressão de Alarme até e incluindo a instância dezesseis. Qualquer
instância além das primeiras dezesseis executando simultaneamente
não serão controladas dinamicamente e seus status não podem ser
obtidos.
APUGetPrinterJobCount Obtém a mais recente contagem de trabalho de status da impressora
Windows para a impressora usada por esta instância. Os resultados
não serão os atuais a menos que uma consulta esteja executando. Os
resultados não serão os atuais a menos que um alarme seja impresso
– a contagem de trabalho é geralmente atualizada quando a
impressora é aberta inicialmente e depois toda vez que uma linha de
alarme é impressa. É possível usar isto para determinar se o spooler
do Windows está sendo preenchido com trabalhos da impressora de
linha de alarme. Se este número tornar-se muito maior com o tempo,
ele pode indicar que a impressora de linha de alarme está fisicamente
desconectada ou sem papel ou tem algum outro erro não comunicado.
Este valor somente é válido para impressoras atribuídas à uma
impressora Windows e não significa muito para impressoras
associadas com uma porta paralela ou serial.
APUGetPrinterName Obtém o nome ou o nome da porta da impressora Windows para a
impressora usada por esta instância. Retorna ‘NONE’ se nenhuma
impressora estiver configurada. O nome da impressora é armazenado
e lido do arquivo ALC.
Treinamento Wonderware
Apêndice G – Funções de script G-13
Função Descrição
APUGetPrinterStatus Obtém o mais recente status da impressora Windows para a
impressora usada por esta instância. Os resultados não serão os
atuais a menos que uma consulta esteja executando. Os resultados
não serão os atuais a menos que um alarme seja impresso – o status é
geralmente atualizado quando a impressora é aberta inicialmente e
depois toda vez que uma linha de alarme é impressa.
O seletor pode ser um dos seguintes:
· 0 = AlarmPrinterError
· 1 = AlarmPrinterNoPaper
· 2 = AlarmPrinterOffline
· 3 = AlarmPrinterOverFlow
NOTE: Esta informação de status está sendo consultada para a
impressora com base nos padrões de driver Microsoft/Windows. Nem
todos os Fabricantes de Impressora seguirão estes padrões e,
portanto, nem todas as impressoras retornarão informações de status.
APUGetQueryAlarmState Obtém o Estado de Alarme para a Consulta (0 = All, 1 = Ack, 2 =
UnAck). O estado de alarme inicial é lido do arquivo ALC.
APUGetQueryFromPriority Obtém a Prioridade de Formulário para a Consulta. A prioridade inicial
é lida do arquivo ALC.
APUGetQueryProcessingState Obtém o Estado de Processamento de Consulta de Alarme (0 = Stop,
1 = Start).
APUGetQueryToPriority Obtém a Prioridade Principal para a Consulta. A prioridade inicial é lida
do arquivo ALC.
APUIsInstanceUsed O desempenho correto implica na instância estar em uso.
APUSetAlarmGroupText Estabelece o Texto do Grupo de Alarme de Consulta de Alarme. Uma
consulta não pode estar sendo executada para que esta função
execute da forma correta. (Consulte as funções abaixo quanto a
Iniciar, Parar e Estado de Processamento de Consulta) O texto de
grupo de alarme inicial é lido de um arquivo ALC.
APUSetQueryAlarmState Estabelece o Estado de Alarme para a Consulta (0 = All, 1 = Ack, 2 =
UnAck). Uma consulta não pode estar executando para esta função
ser correta. (Consulte as funções abaixo para Iniciar, Parar e Estado
de Processamento de Consulta)
APUSetQueryFromPriority Estabelece a Prioridade de Formulário para a Consulta. Uma consulta
não pode estar executando para esta função ser correta. (Consulte as
funções abaixo para Iniciar, Parar e Estado de Processamento de
Consulta)
APUSetQueryToPriority Estabelece a Prioridade Principal para a Consulta. A prioridade
‘Principal’ deve corresponder ou ser maior do que a prioridade ‘De’ ou
a função não será correta. Uma consulta não pode estar executando
para esta função ser correta. (Consulte as funções abaixo para Iniciar,
Parar e Estado de Processamento de Consulta)
APUSetTimeoutValues Especificar intervalos de tempo-limite em segundos. Isto pode
controlar quantos erros relacionados a acesso à memória ou erros
resultando de falha ao obter respostas válidas são observados
enquanto o programa está em execução. O tempo-limite padrão para
acesso de memória é de 2 segundos. O tempo de espera de resposta
mais curto padrão é 10 segundos e o tempo de espera de resposta
mas longo padrão é de 20 segundos.
Função Descrição
APUStartInstance Inicia uma instância da Impressora de Alarme em um estado
minimizado com o arquivo de configuração especificado. Retorna a
instância iniciada para Instance ou um código de erro para ErrorCode.
O programa de Impressora de Alarme não começará automaticamente
o processamento do banco de dados de alarme. Use o comando
APUStartQuery() para fazer com que a instância comece o
processamento do banco de dados de alarme.
APUStartQuery Estabelece os limites de data e de hora para registros serem
processados e depois inicia a consulta. É um erro tentar iniciar uma
consulta se uma consulta já estiver em execução. O ajuste de dados
para todos 0 faz com que todos os alarmes sejam impressos. Qualquer
0 individual que implique em “estado não importante” faz o padrão para
o valor razoável mais baixo. 01 de janeiro de 1900 à meia-noite é a
hora mais antiga usada como o padrão. A hora e data especificada
estão em horário local. Um valor –1 para o ano ajustará os dados para
o horário atual em que o comando é processado
APUStopInstance Para a instância especificada da Impressora de Alarme. Qualquer
outra adição de registros a serem impressos parará, qualquer consulta
que esteja em execução no momento comparada ao banco de dados
de alarme para impressão será interrompida e a instância do programa
sairá.
APUStopQuery Solicita que a instância especificada pare de executar sua consulta. O
aplicativo permanecerá em execução, mas não processará nenhuma
outra consulta de banco de dados de alarme. Uma chamada para
APUStartQuery() pode fazer com que a instância comece as consultas
do banco de dados de alarme.
APUTranslateErrorCode Converte um código de erro retornado por uma das funções APU em
um string em inglês descrevendo rapidamente o código de erro. Pode
falhar se um código de erro desconhecido for passado para conversão.
AttemptInvisibleLogon Tenta conectar-se com o InTouch usando as credenciais fornecidas.
ChangePassword Exibe a caixa de diálogo Change Password permitindo que o operador
conectado mude sua senha.
ChangeWindowColor A função script muda a cor da Janela InTouch usando valores
vermelho, verde e azul que variam de 0 a 255.
DialogStringEntry Exibe um teclado alfanumérico na tela, permitindo que o operador
mude o valor de string atual de um tagname de mensagem no
Dicionário Tagname.
DialogValueEntry Exibe um teclado numérico na tela, permitindo que o usuário mude o
valor atual de um tagname Discreta, Inteira ou Real no Dicionário
Tagname.
EnableDisableKeys Habilita/desabilita filtros de tecla para teclas Alt, Escape e Windows.
FilePrint FilePrint é usado para dizer ao InTouch para imprimir o arquivo
especificado.
FileSelect Apresenta ao usuário a caixa de diálogo Windows File Open e retorna
a inserção de arquivo especificada.
Treinamento Wonderware
Apêndice G – Funções de script G-15
Função Descrição
GetAccountStatus Usado para determinar quando a senha do usuário expirará. O valor
de retorno exibirá o número de dias (valor positivo) até que a senha do
usuário expire. GetAccountStatus exibe também os valores de status
de conta a seguir:
Account password expired = -1
Account password will never expire = -2
Account locked out = -3
Account disabled = -4
Account info failed = -5
Os usuários podem escrever um script para exibir uma janela pop-up
mostrando o número de dias até que a senha do usuário expire, ou a
correta mensagem/advertência que corresponde ao valor de retorno
da função.
GetNodeName Retorna o nome do nó NetDDE para uma variável de string.
GetPropertyD Recupera o valor discreto da propriedade especificada durante
Runtime.
GetPropertyI Recupera o valor inteiro da propriedade especificada durante Runtime.
GetPropertyM Recupera o valor de mensagem da propriedade especificada durante
Runtime.
Hide Oculta várias janelas de dentro do QuickScript. Uma função Hide()
deve preceder o nome de cada janela a ser ocultada.
HideSelf Oculta a Janela ativa no momento.
HTGetLastError Determina se houve um erro durante a última recuperação de uma
pena especificada.
HTGetPenName Retorna o tagname da tag usada no momento para a pena
especificada # da tendência especificada
HTGetTimeAtScooter Retorna a hora em segundos desde 00:00:00 horas GMT, 1 de janeiro
de 1970 para a amostra na localização do scooter especificado pelo
ScootNum e ScootLoc. UpdateCount, ScootNum e ScootLoc faz com
que a expressão a ser avaliado quando qualquer um destes
parâmetros muda. Isto garante que a expressão seja avaliada após
novas recuperações ou após o movimento de um scooter.
HTGetTimeStringAtScooter Retorna o string contendo a hora/data para a amostra na localização
do scooter especificada por ScootNum e ScootLoc. UpdateCount,
ScootNum e ScootLoc faz com que a expressão seja avaliada quando
qualquer um destes parâmetros é alterado. Isto garante que os valores
sejam atualizados após novas recuperações ou após o movimento do
scooter. O formato do string determina o conteúdo do valor de retorno.
HTGetValue Retorna um valor do tipo solicitado para toda a pena especificada da
tendência. O parâmetro UpdateCount fará com que a expressão seja
avaliada após a conclusão de uma recuperação.
HTGetValueAtScooter Retorna um valor do tipo solicitado para a amostra na posição,
tendência e pena #. scooter especificadas O parâmetro UpdateCount
fará com que a expressão seja avaliada após a conclusão de uma
recuperação.
HTGetValueAtZone Retorna um valor do tipo solicitado para os dados contidos entre as
posições scooter direita e esquerda para uma pena especificada da
tendência. O parâmetro UpdateCount fará com que a expressão seja
avaliada após a conclusão de uma recuperação.
HTScrollLeft Estabelece a hora de início de uma tendência para um valor mais
antigo do que o horário de início atual por um percentual da largura de
tendência. O efeito é rolar a data/hora do gráfico para a esquerda com
base em um determinado percentual.
Função Descrição
HTScrollRight Estabelece a hora de início de uma tendência para um valor mais novo
do que o horário de início atual por um percentual da largura de
tendência. O efeito é rolar a data/hora do gráfico para a direita com
base em um determinado percentual.
HTSelectTag Exibe a caixa de diálogo Select Tag e o operador pode selecionar um
tagname diferente para a pena especificada. (A caixa de diálogo
somente lista os tagnames que foram definidos para armazenagem de
histórico (Opção de Log Data selecionada) no Dicionário Tagname.
HTSetPenName Atribui um tagname diferente à uma pena de tendência.
HTUpdateToCurrentTime Faz com que os dados a serem recuperados e exibidos com uma hora
final sejam iguais à hora atual. A hora de início corresponderá à
EndTime menos a Largura do gráfico.
HTZoomIn Calcula uma nova largura de gráfico e horário de início. Se
.ScooterPosLeft da tendência for 0.0 e .ScooterPosRight for 1.0, a
nova largura de gráfico corresponderá à largura de gráfico antiga
dividida por dois. A nova hora será calculada com base no valor de
LockString.
HTZoomOut Calcula uma nova largura de gráfico e horário de início. A nova largura
de gráfico é a antiga largura de gráfico multiplicada por dois. A nova
hora será calculada com base no valor de LockString.
InfoAppStatus Retorna um valor True ou False que informa o status atual do
aplicativo especificado.
InfoAppTitleExpand Retorna o título do Aplicativo ou a Lista de Tarefa Windows Microsoft
de uma janela cujo título esteja parcialmente ou totalmente
especificado.
InfoWinEnv Recupera o valor de um atributo em particular para a sessão atual do
Windows.
InTouchVersion Habilita os usuários a obter a informação da versão do InTouch através
de scripts.
InvisibleVerifyCredentials Selecione para verificar as credenciais de um determinado usuário
sem armazenar o usuário no InTouch.
IOGetApplication Retorna o nome do aplicativo definido para um Nome de Acesso
específico para o tagname especificado.
IOGetNode Retorna a informação de nó (endereço) definida para um Nome de
Acesso específico para o tagname especificado.
IOGetTopic Retorna o nome de tópico definido para um Nome de Acesso
específico para o tagname especificado.
IOReinitialize Encerra todas as conversações de E/S existentes e reinicia todo o
processo de configuração de conversações de E/S. Todos os pontos
de E/S são afetados quando esta função executa.
IOSetAccessName Modifica as partes de nome de aplicativo ou de tópico de um Nome de
Acesso durante o Runtime o que permite a implementação de
estratégias de hot-backup para InTouch.
IOSetItem Muda o nome de acesso e/ou item em um campo de Referência de
tagname do tipo E/S.
IOStartUnitConversations Quando o WindowViewer é iniciado, ele processa automaticamente
uma solicitação inicial para começar todas as conversações de E/S. Se
um programa servidor de E/S não responder à solicitação inicial do
WindowViewer, é possível forçar o WindowViewer a tentar novamente
para estabelecer a conversação de E/S executando esta função em
um QuickScript.
Treinamento Wonderware
Apêndice G – Funções de script G-17
Função Descrição
IsAnyAsynchFunctionBusy Usado para descobrir se algum QuickFunction Assíncrono está
executando. Esta função pode ser usada para fazer com que o
QuickScript chame uma espera QuickFunction Assíncrono para que
todos os outros QuickFunction Assíncronos concluam o
processamento. Isto permite que o QuickScript sincronize novamente.
IsAssignedRole Usado para descobrir se um usuário conectado tem o papel indicado.
LogMessage Escreve uma mensagem definida pelo usuário para o Wonderware
Logger.
Logoff Encerra a sessão do usuário no InTouch.
LogonCurrentUser Esta função script é projetada para o InTouch executar no modo de
sistema operacional de segurança. Quando a função script é
chamada, quem quer que esteja conectado ao computador será
conectado no InTouch.
MessageBox Esta função exibe uma caixa de mensagem Windows padrão com uma
mensagem de texto específica.
MoveWindow MoveWindow posiciona uma janela que está sendo usada sobre o
InTouch.
OpenWindowsList Exibe uma caixa de diálogo com uma lista das janelas abertas no
momento.
PlaySound Toca um som no formato wave especificado por um nome de arquivo
.wav.
PostLogonDialog Exibe a caixa de diálogo de Conexão InTouch Logon e retorna TRUE.
PrintHT Pode ser usado em um botão para impressão do gráfico de Tendência
de Histórico associado com o tagname de tipo Tendência de Histórico.
A Tendência de Histórico deve estar visível na tela ao usar esta função.
PrintScreen Imprime a tela especificada.
PrintWindow Imprime a janela especificada.
ptGetTrendType Estas funções de script são carregadas quando a tendência 16pen é
ptLoadTrendCfg instalada e somente aplica-se à tendência 16pen.
ptPanCurrentPen
ptPanTime
ptPauseTrend
ptSaveTrendCfg
ptSetCurrentPen
ptSetPen
ptSetPenEx
ptSetTimeAxis
ptSetTimeAxisToCurrent
ptSetTrend
ptSetTrendType
ptZoomCurrentPen
ptZoomTime
QueryGroupMembership Válido somente para o modo de segurança OS e aplica-se ao usuário
conectado no momento. Se um usuário estiver conectado no momento
e se ele sair do grupo lpszGroup que está localizado no domínio
lpszDomain, TRUE é retornado e em todos os outros casos, teremos o
retorno de FALSE.
ReloadWindowViewer Permite ao usuário controlar o recarregamento do WindowViewer.
RestartWindowViewer Permite ao usuário controle sobre o encerramento e a reinicialização
do WindowViewer.
Função Descrição
SendKeys Envia teclas para um aplicativo. Para o aplicativo que recebe, as teclas
parecem ter sido inseridas a partir do teclado. Esta capacidade pode
ser usada para inserir dados em um aplicativo ou para emitir
comandos ao aplicativo. A maioria das teclas do teclado podem ser
usadas em uma declaração SendKeys. Cada tecla é representada por
um ou mais caracteres como A para a letra A ou {ENTER} para a tecla
Enter.
SetPropertyD Especifica o valor discreto da propriedade que deve ser escrito durante
o Runtime.
SetPropertyI Especifica o valor inteiro da propriedade que deve ser escrito durante o
Runtime.
SetPropertyM Especifica o valor de mensagem da propriedade que deve ser escrito
durante o Runtime.
SetWindowPrinter Pode ser usado para fazer o WindowViewer imprimir em um local
diferente da impressora padrão.
Show Exibe uma janela especificada. (O nome da janela deve estar entre
aspas.)
ShowAt Especifica a localização horizontal e vertical em pixel de uma janela
quando ela é exibida.
ShowHome Exibe a janela "home". Janelas Home são as selecionadas para
abrirem automaticamente quando o WindowViewer é iniciado. (As
janelas são selecionadas no folha de propriedade WindowViewer
Properties - Home Windows.)
ShowTopLeftAt Especifica a localização horizontal e vertical em pixel do canto superior
esquerdo de uma janela quando ela é exibida.
TseGetClientId Retorna uma versão string da identificação do cliente (o endereço
TCP/IP do cliente) se o aplicativo View estiver em execução em um
cliente servidor Terminal. Caso contrário, ele retorna um string vazio.
TseQueryRunningOnClient Retorna um valor inteiro diferente de zero se o aplicativo View estiver
em execução em um cliente servidor Terminal. Caso contrário, ele
retorna um valor zero (0).
TseQueryRunningOnConsole Retorna um valor inteiro diferente de zero se o aplicativo View estiver
em execução em um console de servidor Terminal. Caso contrário, ele
retorna um valor zero (0).
UTCDateTime Permite ao usuário obter a hora UTC (Coordinated Universal Time), o
fuso horário atual e o desvio do GMT e o status do horário de verão.
wcAddItem Adiciona o string fornecido para a caixa de listagem ou a caixa
combinada. Se a caixa de listagem ou a caixa combinada não foi
criada como classificada, o string é adicionado ao final da lista. Caso
contrário, o string é inserido na lista e a lista é classificada.
wcClear Remove todos os itens da caixa de listagem ou da caixa combinada.
wcDeleteItem Exclui o item associado ao argumento de índice de item nas caixas
listagem e combinada.
wcDeleteSelection Exclui o item selecionado no momento a partir da lista.
wcErrorMessage Retorna um string de mensagem descrevendo o erro.
wcFindItem Determina o índice correspondente do primeiro item na caixa de
listagem ou caixa combinada que corresponde ao string de mensagem
fornecido.
wcGetItem Retorna a propriedade do valor do string de item associado com o
ItemIndex correspondente na caixa de listagem ou caixa combinada.
Treinamento Wonderware
Apêndice G – Funções de script G-19
Função Descrição
wcGetItemData Determina o valor inteiro associado ao item de lista identificado pelo
parâmetro ItemIndex.
wcInsertItem Insere o string de mensagem na lista. ItemIndex é o número de índice
correspondente à posição na caixa de listagem que receberá o string.
Diferente de wcAddItem(), wcInsertItem() não classificará a lista,
mesmo que tenha sido criado como uma caixa de listagem ou caixa
combinada classificada.
wcLoadList Substitui o conteúdo da caixa de listagem ou da caixa combinada com
os itens contidos no FileName.
wcLoadText Substitui o conteúdo da caixa de Texto pelo conteúdo do FileName.
wcSaveList Substitui o conteúdo de FileName pelos itens listados no objeto caixa
de listagem ou caixa combinada.
wcSaveText Salva o texto contido na caixa Texto para FileName. Se o arquivo não
existir, ele será criado. Se ele existir, ele deve ser Leitura/Escrita.
wcSetItemData Atribui um valor inteiro do item (número) ao item na lista especificado
pelo ItemIndex. Esta função permite a atribuição de um número a um
string.
WindowState Retorna um valor discreto se uma janela especificada está aberta ou
não.
WWAlwaysOnTop Fará com que um aplicativo Windows especificado permaneça sobre
todas as outras janelas de aplicativo.
WWContext Usado para determinar quando o cursor está sobre uma determinada
região de uma janela de aplicativo InTouch .
WWControl Permite a você Recuperar, Minimizar, Maximizar ou Fechar um
aplicativo do InTouch.
WWControlPanel Inicia o Painel de Controle e posiciona o applet nomeado.
WWDosCommand Inicia uma Caixa Windows DOS em um estado inicial especificado e
executa uma linha de comando especificada.
WWExecute Envia um comando (usando um DDE Execute ) a um Application e
Topic especificados.
WWExitWindows Permite ao usuário InTouch encerrar com segurança o sistema
operacional Windows de dentro de um aplicativo InTouch .
WWFreeHandles Retorna o número de alças de dimensionamento livres de Global
Memory.
WWIsDayLightSaving Esta função script retorna 1 se Daylight Savings estiver habilitado e 0
se Daylight Savings não estiver habilitado.
WWMoveWindow Esta função script redimensiona e move a janela inserida à nova
localização especificada.
WWPoke Faz um poke para um valor (usando um DDE Poke) para um
Application, Topic e Item especificados.
WWRequest Faz uma única solicitação para um valor (usando DDE Request) de um
Application, Topic e Item especificados.
WWStartApp Inicia um aplicativo Windows especificado e posiciona o aplicativo
dentro do estado Window desejado.
Objetivos do apêndice
z Apresentar as funções destacadas do Windows XP para Microcomputadores Tablet
z Apresentar as funções de destaque do Wonderware InTouch
z Demonstrar a função script AnnotateLayout
z Mudar a orientação da tela de paisagem para retrato
z Apresentação de dicas para usar microcomputadores Tablet
Os microcomputadores Tablet são usados há anos em ambientes de Utilidades, Petróleo e Gás e
Resposta de Emergência. Eles são extremamente duráveis e têm diversas funções que os tornam
apropriados para uso industrial.
Hardware
Os microcomputadores Tablet robustos são unidades seladas à prova d'água e resistentes à
vibração. A maioria vem equipada com um sensor de luz que permite o ajuste automático do
brilho da tela com base na luz em volta deles. Eles têm baterias duplas que permitem que as
baterias sejam trocadas em movimento quando necessário. A maioria vem com estações de
ancoragem e um painel digital. Um cartão de rede sem fio os torna completamente portáteis em
um ambiente sem fio.
Sistema Operacional
Os microcomputadores Tablet executam em Microsoft Windows XP Tablet PC Edition, totalmente
compatíveis com a funcionalidade de todo o software, incluindo extensões para caneta que
permitem que os dados sejam inseridos com uma caneta digital. A pena digital também é usada
como um dispositivo de indicação.
Usuários Alvo
Estas funções tornam os microcomputadores Tablet uma ferramenta ideal para criar eficiência em
configurações de fábrica. Elas permitem aos usuários acessar aplicativos InTouch em qualquer
lugar a qualquer hora em uma faixa de rede sem fio. Eles são perfeitos para usuários que
precisam se movimentar, monitorar atividades de planta, inserir pequenas quantidades de dados
ou inserir dados sem um teclado. Eles também são ideais para ambientes desfavoráveis.
Tinta digital
Tinta digital em termos práticos é simplesmente escrita manual eletrônica. O uso de pena digital
permite inserir dados, mudar valores de referência e fazer anotações escritas. Isto é
especialmente útil quando o tablet não está ancorado.
Treinamento Wonderware
Apêndice H – Como usar InTouch em um microcomputador Tablet H-3
Windows Journal
Windows Journal é um aplicativo de anotações que permite criar e organizar notas escritas
manualmente em um microcomputador Tablet usando uma caneta digital. É possível vê-lo como
uma versão do Notepad que lida com "digital ink". Ele também fornece capacidades de
reconhecimento de caractere de forma que sua escrita manual possa ser convertida em texto;
embora seja possível inserir, gerenciar e manter suas notas em tinta digital se desejar.
Rotação da Tela
A ferramenta XRT Screen Rotation é especialmente útil quando o Tablet não está ancorado. Isto
permite mudar da orientação paisagem para retrato. Isto é mais confortável quando estiver
segurando o Tablet e fazendo anotações. Para tanto, é necessário mudar a resolução da tela.
Treinamento Wonderware
Apêndice H – Como usar InTouch em um microcomputador Tablet H-5
Write Anywhere
Com a função Write Anywhere, é possível usar a maior parte da tela sem seu microcomputador
Tablet como uma área de escrita. Isto é especialmente útil para tarefas de escrita longas.
A função Write Anywhere converte sua escrita manual em texto digitado e a insere em um local
que você especificar, como um documento de processamento de texto. É possível usar a função
Write Anywhere para inserir texto em qualquer local onde seja possível usar um teclado padrão
para inserir texto.
A função Write Anywhere reconhece a escrita manual em inglês apenas.
Esta função também permite escrever ou destacar um aplicativo em uso com a caneta digital e
pode funcionar como uma transparência.
Acesse esta função pelo Tablet PC Input Panel.
Tools / Options e clique na guia Write Anywhere.
Selecione o botão Show the Turn on Write Anywhere na barra de título.
Clique em Apply.
Clique em OK.
O ícone Write Anywhere estará agora visível em seu Tablet PC Input Panel.
Treinamento Wonderware
Apêndice H – Como usar InTouch em um microcomputador Tablet H-7
Rotação da Tela
A ferramenta XRT Screen Rotation pode ser usada no InTouch. Observe que o InTouch somente
seleciona a resolução de tela Windows quando um aplicativo é iniciado. As mudanças feitas
enquanto o aplicativo está em execução resultará em conseqüências estranhas. É necessário
configurar as Propriedades do InTouch Node para permitir que o uso do WindowViewer ou a
mudança dinâmica da resolução.
Desligar
O microcomputador tablet pode ser desligado pressionando e mantendo pressionado o botão
power.
Treinamento Wonderware
Apêndice I
Introdução
A fim de criar um ambiente de trabalho mais eficiente, o InTouch permite salvar diversas vezes
atalhos de teclado para executar os comandos. Isto elimina a necessidade de movimentos extras
com o mouse para algumas ações comuns.
Atalho Comando
F2 Selecionar tudo
Ctrl + A Links de animação
Ctrl + E Substituir tags
Ctrl + L Substituir strings
Ctrl + T Dicionário tagname
Ctrl + Z Desfazer
Ctrl + Y Refazer
Ctrl + D Duplicar
Ctrl + X Recortar
Ctrl + C Copiar
Ctrl + V Colar
Del Apagar
F5 Fazer símbolo
Shift + F5 Desagrupar símbolo
F3 Fazer célula
Shift + F3 Desagrupar célula
Treinamento Wonderware