Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

Prévia do material em texto

Ignition Core 
Treinamento de 5 dias.
HMI · SCADA Software
Copyright (c) 2022 FG Automação Industrial
Todos os direitos reservados.
Versão traduzida para português (BR) do 
Treinamento Ignition Core de 5 dias.
 
 
©2019 Inductive Automation Página 1 de 397 
Treinamento básico do software Ignition de 5 dias 
 
 
 © 2019 Inductive Automation. 
 
Todos os direitos reservados. Nenhuma parte desta obra pode ser reproduzida de qualquer 
forma ou por qualquer meio - gráfico, eletrônico, fotográfico ou mecânico; incluindo, mas não 
limitado a, fotocópia, gravação, gravação ou armazenamento de informações e sistemas de 
recuperação - sem a permissão por escrito da Inductive Automation. 
 
Todos os nomes de produtos da Inductive Automation, incluindo, mas não se limitando à 
Ignition by Inductive Automation®, Ignition Edge by Inductive Automation®, Ignition SCADA 
by Inductive Automation®, Perspective®, como 
bem como o nome da empresa, o símbolo da marca de verificação Inductive Automation® e 
Ignition e o símbolo da roda dentada/seta da Inductive Automation são marcas registradas da 
Inductive Automation, seja por meio de registro federal ou uso contínuo. Outras marcas e 
nomes de produtos são marcas registradas de seus respectivos proprietários. 
Todos os esforços foram feitos para tornar este livro o mais completo e preciso possível, mas 
nenhuma garantia de adequação é declarada ou implícita. As informações fornecidas são 
"como estão" sem qualquer garantia de qualquer tipo. A Inductive Automation não terá 
responsabilidade perante qualquer pessoa ou entidade com relação a qualquer perda ou dano 
de quaisquer atos ou omissões decorrentes ou com base nas informações contidas em seu 
livro. 
 
 
 
 
 
 
 
Impresso: dezembro de 2019 nos EUA 
Versão: 8.0 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 2 de 397 
Sumário 
BEM-VINDO ...................................................................................................................... 7 
Sobre este treinamento ................................................................................................................................................................... 7 
CAPÍTULO 1 ...................................................................................................................... 8 
Introdução ao Software ................................................................................................................................................... 8 
O que é o Ignition? ............................................................................................................................................................................. 8 
Ignition Software Stack ................................................................................................................................................................... 9 
Ignition Como um Hub de Comunicações ............................................................................................................................ 10 
As Várias Arquiteturas do Ignition.......................................................................................................................................... 10 
Partes Principais do Ignition ..................................................................................................................................................... 10 
CAPÍTULO 2 .................................................................................................................... 12 
Instalação e Ativação...................................................................................................................................................... 12 
Instale o Ignition no Windows .................................................................................................................................................. 13 
Comissionamento ........................................................................................................................................................................... 17 
Instalando um Banco de Dados ................................................................................................................................................ 20 
Acessando o Gateway .................................................................................................................................................................... 20 
Licenciamento e Ativação............................................................................................................................................................ 23 
Como Funciona o Licenciamento ............................................................................................................................................. 23 
Como Funciona a Ativação .......................................................................................................................................................... 26 
CAPÍTULO 3 .................................................................................................................... 29 
Conectando a PLCs e Bancos de Dados .................................................................................................................... 29 
Conectando-se a Simuladores ................................................................................................................................................... 30 
Conectando-se a Dispositivos Allen Bradley ...................................................................................................................... 34 
Conectando-se a Um Banco de Dados .................................................................................................................................... 38 
Guia de Conexão do Microsoft SQL Server ........................................................................................................................... 41 
CAPÍTULO 4 .................................................................................................................... 42 
Inicie o Designer e Crie um Projeto .......................................................................................................................... 42 
Iniciando o Designer ...................................................................................................................................................................... 43 
Criando um Projeto ........................................................................................................................................................................ 47 
CAPÍTULO 5 .................................................................................................................... 49 
Clientes Vision, Janelas e Navegação ........................................................................................................................ 49 
Tipos de Lançamento .................................................................................................................................................................... 50 
Baixando e Instalando .................................................................................................................................................................. 50 
Janelas, Componentes e Templates ......................................................................................................................................... 55 
Nomes e Organização das Janelas ............................................................................................................................................ 55 
 
 
©2019 Inductive Automation Página 3 de 397 
Tipos de Janelas ............................................................................................................................................................................... 56 
Alterando as Propriedades da Janela .....................................................................................................................................a janela para Components e pressione Enter. 
4. Clique com o botão direito do mouse em Components e desmarque Open on STarup. 
Observação: é importante ter apenas uma janela principal definida como Open on 
Startup. Caso contrário, você terá várias janelas principais ocultando umas das outras. 
 
5. Clique duas vezes em Components para abri-lo. 
6. Na Janela Principal, selecione o componente Header Label. 
• Altere a propriedade Text do rótulo para Components 
• Clique no ícone de pasta no Property Editor do Image Path para selecionar um 
ícone diferente. 
 
 
 
 
 
 
©2019 Inductive Automation Página 64 de 397 
Clientes Vision, Janelas e Navegação 
 
Agora que criamos uma Janela de Componentes, podemos adicioná-la às nossas guias. 
7. No Project Browser, clique duas vezes na janela Navigation para abri-la. 
8. Clique com o botão direito do mouse no componente Tab Strip e selecione 
Customizer > Tab Strip Customizer. A janela do Tab Strip Customizer é exibida. 
9. Selecione a guia Overview e clique no botão Add Tab à esquerda. Uma nova guia 
chamada Tab 1 é adicionada. 
10. Clique na lista suspensa para Window Name e selecione Main Windows/ 
Components. 
11. Altere o Display Name para Components. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 65 de 397 
Clientes Vision, Janelas e Navegação 
 
12. Clique em OK para enviar suas alterações. 
13. Salve o projeto. 
Volte para o seu Cliente aberto para visualizar suas alterações. Por padrão, todas as 
atualizações do projeto serão enviadas automaticamente para todos os Clientes para que 
você veja seu novo botão Faixa de Guias imediatamente. 
 
 
 
 
 
 
©2019 Inductive Automation Página 66 de 397 
Capítulo 6 
 
Propriedades e Veiculações do Componente Vision 
 
 
 
 
Componentes são o conteúdo útil de suas janelas. Qualquer interface de usuário 
de computador contém componentes, eles são os widgets com os quais você 
trabalha todos os dias, são os botões, áreas de texto, menus suspensos, gráficos 
e assim por diante. 
O módulo Vision vem com uma série de componentes úteis prontos para uso, 
muitos dos quais são especializados para uso em controles industriais. Outros 
módulos, como o módulo Relatórios, possuem mais componentes para fins 
especiais. 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 67 de 397 
Propriedades e Vinculações do Componente Vision 
Configurando Componentes 
A configuração de componentes é provavelmente a maior parte do trabalho de um 
designer ao projetar um projeto do Vision. O fluxo de trabalho básico é pegar um 
componente da paleta e soltá-la em um contêiner em uma janela. A partir daí, você pode 
usar o mouse para arrastar e redimensionar o componente para a posição correta. 
Enquanto o componente está selecionado, você pode usar o painel Property Editor para 
alterar as propriedades do componente, o que altera a aparência e o comportamento do 
componente. 
Para fazer o componente fazer algo útil, como exibir informações dinâmicas ou controlar 
um registro de dispositivo, você configura associações de propriedade para o componente. 
Para fazer o componente reagir à interação do usuário, configure o script para ele. 
Você pode configurar os seguintes itens para cada componente: 
● Propriedades 
● Propriedades Personalizadas (Propriedades Dinâmicas) 
● Tamanho e Posição 
● Modo de layout 
● Personalizadores de estilo 
● Script 
● Segurança 
 
 
 
 
 
©2019 Inductive Automation Página 68 de 397 
Propriedades e Vinculações do Componente Vision 
 
Arraste Componentes Para a Janela 
O fluxo de trabalho básico é pegar um componente da paleta de componentes ou do 
Symbol Factory e soltá-lo em um contêiner em uma janela. A partir daí, você pode usar o 
mouse para arrastar e redimensionar o componente para a posição correta. 
As formas também são componentes. Use a barra de ferramentas de formas para criar 
formas diferentes. 
Cada forma pode ser selecionada individualmente, nomeada e atribuída às suas próprias 
propriedades. As formas têm alguns recursos adicionais que outros componentes não têm, 
como a capacidade de rotação. As Formas são criadas usando as ferramentas de forma 
não arrastadas da paleta de componentes. 
Vamos arrastar alguns componentes para sua janela. 
Arraste Componentes Para a Tela 
À direita do designer, você encontrará uma lista de componentes 
1. Abra sua nova janela principal. Você pode encontrá-lo no Project Browser ou, como já 
está aberto no exemplo anterior, há uma guia na parte inferior do Designer. 
2. Selecione o texto de boas-vindas grande e o botão Abrir Pop-up e exclua-os clicando 
com o botão direito do mouse e selecionando Delete ou pressionando a tecla delete. 
3. Clique e arraste alguns componentes para a janela, por exemplo: 
● Cylindrical Tank 
● Label 
● LED Display 
● Meter 
4. Salve o projeto. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 69 de 397 
Propriedades e Vinculações do Componente Vision 
 
Enquanto o componente está selecionado, você pode usar o painel Property Editor para 
alterar as propriedades do componente, o que altera a aparência e o comportamento do 
componente. 
Para fazer o componente fazer algo útil, por exemplo, exibir informações dinâmicas ou 
controlar um registro de dispositivo, você configura associações de propriedade para o 
componente. Para fazer o componente reagir à interação do usuário, configure 
manipuladores de eventos para ele. 
Entendendo o Layout do Componente 
Layout é o conceito de que o tamanho e a posição de um componente, que é relativo ao 
tamanho e à posição de seu contêiner familiar, podem ser dinâmicos. O recurso de layout 
permite a criação de janelas que se redimensionam graciosamente. Este é um conceito 
muito importante devido à implantação de clientes Vision lançados pela Web, eles 
geralmente acabam sendo lançados em muitos monitores diferentes com muitas 
resoluções diferentes. 
 
 
 
 
 
©2019 Inductive Automation Página 70 de 397 
Propriedades e Vinculações do Componente Vision 
 
 
Você pode escolher entre dois modos de layout: relativo e ancorado. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 71 de 397 
Propriedades e Vinculações do Componente Vision 
 
Modo Relativo 
O layout relativo é o modo padrão, que é um modo simples, mas eficaz. Ele simplesmente 
mantém o tamanho e a posição de um componente em relação ao seu contêiner familiar 
constante, mesmo que o contêiner familiar aumente ou diminua. 
Mais precisamente, ele lembra a posição e o tamanho do componente como uma 
porcentagem dos limites de seu familiar na última vez que a janela foi salva. O modo 
Relativo também tem a opção de dimensionar adequadamente a fonte de um componente. 
 
 
Modo Ancorado 
O layout ancorado permite especificar várias "âncoras" para o componente. As âncoras 
ditam a distância de cada uma das quatro arestas do componente de suas arestas 
correspondentes no contêiner familiar. 
 
 
 
 
©2019 Inductive Automation Página 72 de 397 
Propriedades e Vinculações do Componente Vision 
Por exemplo, se você ancorar em cima e à esquerda, seu componente permanecerá a uma 
distância constante das bordas superior e esquerda de seu familiar. Como você não 
especificou uma âncora para os lados direito ou inferior, eles não serão afetados pelo 
layout. 
 
Exemplos 
O recurso de layout de componentes do Ignition permite que os componentes sejam 
redimensionados automaticamente. Esse recurso oferece a vantagem de não precisar 
desenvolver uma aplicação em uma resolução específica. Para ilustrar como o layout de 
componentes funciona, vejamos alguns pequenos exemplos com os componentes que 
acabamos de adicionar. Você pode alterar o layout de vários componentes ao mesmo 
tempo. 
1. Selecione todos os componentes que você acabou de adicionar à janela principalclicando neles enquanto mantém o controle pressionado. 
2. Clique com o botão direito em um dos componentes selecionados e selecione a opção 
Layout. Use os exemplos a seguir para testar o layout no Cliente. 
Exemplo 1 - Modo Relativo - Manter proporção 
Por padrão, as restrições de layout de um componente são definidas para Relative- 
Maintain Aspect Ratio, o que significa que os componentes serão redimensionados com 
base na proporção do tamanho do componente para o tamanho da janela, mantendo a 
proporção. 
Para ver a configuração padrão, clique com o botão direito do mouse nos componentes e 
escolha Layout... no menu. Este é o layout padrão para novos componentes, então você 
não precisa alterar nada. Abra o cliente e redimensione-o. À medida que a janela fica 
maior, os componentes serão redimensionados, mas nunca parecerão distorcidos. 
 
 
 
©2019 Inductive Automation Página 73 de 397 
Propriedades e Vinculações do Componente Vision 
Componentes Definidos para Manutenção-Relativa da Proporção 
 
Componentes Definidos para Manutenção-Relativa da Proporção, 
Redimensionado Maior 
 
 
 
 
©2019 Inductive Automation Página 74 de 397 
Propriedades e Vinculações do Componente Vision 
Exemplo 2 - Modo Relativo - Sem Proporção 
A opção Relative- Do not Maintain Aspect Ratio significa que os componentes serão 
redimensionados com base no tamanho do contêiner e ignoram quaisquer alterações na 
proporção. Isso significa que os componentes serão distorcidos se as proporções do 
designer e do cliente forem diferentes. 
1. Selecione todos os novos componentes na janela. 
2. Clique com o botão direito do mouse em um dos componentes selecionados e selecione 
Layout. 
3. Selecione Relative, mas agora desmarque Maintain Aspect Ratio. 
4. Salve o projeto e teste-o em um cliente aberto. Observe como os componentes 
parecem distorcidos com todos os componentes definidos com No Aspect Ratio. 
Todos os componentes definidos com proporção de manutenção relativa 
 
 
 
 
 
©2019 Inductive Automation Página 75 de 397 
Propriedades e Vinculações do Componente Vision 
Todos os componentes definidos sem proporção 
 
Exemplo 3 - Modo Ancorado 
A opção Anchored Mode significa que os componentes serão bloqueados a uma certa 
distância de um conjunto de arestas. Isso significa que os componentes não serão 
redimensionados a menos que estejam travados em arestas opostas e seguirão as arestas 
conforme as dimensões do Cliente mudam. 
1. Selecione todos os novos componentes na janela. 
2. Clique com o botão direito do mouse em um dos componentes selecionados e selecione 
Anchored Mode. 
3. Selecione as opções de layout Top e Left e certifique-se de que as outras opções 
estejam desmarcadas. Pressione OK. 
3. Salve o projeto e abra um cliente. 
Os componentes serão todos bloqueados no canto superior esquerdo do Cliente. À medida 
que o Cliente aumenta, você notará um espaço vazio à direita e abaixo dos componentes. 
 
 
 
©2019 Inductive Automation Página 76 de 397 
Propriedades e Vinculações do Componente Vision 
 
 
 
5. Isso é mais perceptível se você tornar a janela do Designer pequena e o Cliente grande. 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 77 de 397 
Propriedades e Vinculações do Componente Vision 
 
Essa é a ideia básica. Você pode testar todos os modos de layout para ter uma ideia melhor 
deles. 
Ferramentas de Desenho 
Formas como linhas, retângulos e círculos são criadas usando as ferramentas de forma 
não arrastadas da paleta de componentes. Mas as formas também são componentes, pois 
cada forma pode ser selecionada individualmente, nomeada e atribuída às suas 
propriedades. As formas têm alguns recursos adicionais que outros componentes não têm, 
como a capacidade de girar. 
Por padrão, a barra de ferramentas de forma é exibida na borda direita da janela do 
Designer, mas você pode arrastá-la para onde preferir. 
 
 
 
 
 
 
©2019 Inductive Automation Página 78 de 397 
Propriedades e Vinculações do Componente Vision 
 
Há uma série de ferramentas aqui para seu uso, e cada uma faz com que a área de trabalho 
de edição da janela aja de maneira diferente quando ativa. 
As ferramentas de forma permitem criar várias formas e editá-las depois de criadas. Clique 
no ícone da ferramenta para torná-la a ferramenta ativa, depois clique no Designer e 
arraste para colocar a ferramenta em sua área de trabalho. Você também pode clicar duas 
vezes em uma forma para mudar para a ferramenta nativa dessa forma. Quando uma 
ferramenta está ativa, uma barra de ferramentas é exibida com ações e configurações 
específicas para essa ferramenta. 
Depois que uma forma é criada, você pode alterar sua cor de preenchimento, cor de traço 
e estilo de traço. Todas as formas podem ser tratadas como caminhos e usadas com 
funções de geometria composta para alterar ou criar outras formas. 
Ferramenta de Seleção 
Normalmente a ferramenta de seleção está ativa. Quando ativado, você pode selecionar 
formas e componentes. Os componentes selecionados podem ser movidos, 
redimensionados e girados. Para obter mais informações sobre a ferramenta de seleção 
para manipular componentes e formas, consulte o Manual do Usuário do Ignition. 
Ferramenta Retângulo 
A “ferramenta retângulo” cria e edita formas retangulares. Para criar um retângulo, 
selecione a ferramenta e arraste para dentro de uma janela, mantendo pressionada a tecla 
Ctrl, formando um quadrado perfeito. Depois que um retângulo é criado, você pode usar 
as alças quadradas para alterar a altura e a largura do retângulo. Isso é importante porque 
é a única maneira de redimensionar um retângulo girado enquanto ele permanece um 
retângulo. 
 
 
 
©2019 Inductive Automation Página 79 de 397 
Propriedades e Vinculações do Componente Vision 
Se você redimensionar um retângulo girado não ortogonalmente usando a ferramenta de 
seleção, ele se inclina e se torna um paralelogramo, mas se você clicar duas vezes nele 
para que a “ferramenta retângulo” fique ativa, você pode alterar a largura e a altura do 
retângulo usando as alças específicas da ferramenta. 
Há também pequenas alças de círculo que permitem alterar o raio de arredondamento do 
canto do retângulo. Basta arrastar o círculo para baixo ao lado do retângulo selecionado 
para torná-lo um retângulo arredondado. Mantenha pressionada a tecla Ctrl para arrastar 
cada alça de arredondamento independentemente se desejar arredondamento de canto 
não simétrico. Você pode usar o botão Endireitar na barra de ferramentas da ferramenta 
retângulo para retornar um retângulo arredondado para ser um retângulo de canto reto 
padrão. 
Ferramenta Elipse 
A ferramenta elipse cria e edita círculos e elipses. Você a usa da mesma maneira que a 
ferramenta retângulo. Enquanto for a ferramenta ativa, você pode arrastar dentro de uma 
janela para criar uma nova elipse. Mantenha pressionada a tecla Ctrl para torná-lo um 
círculo perfeito. Quando uma elipse é selecionada, use as alças de largura e altura para 
alterar a forma. 
Ferramenta Polígono/Estrela 
A ferramenta polígono cria polígonos e estrelas. Use a barra de ferramentas que fica visível 
quando esta ferramenta está ativa para alterar as configurações da forma que é criada ao 
arrastar para criar um polígono. Você pode usar esta ferramenta para fazer qualquer 
polígono com 3 cantos (um triângulo) ou mais. Uma vez criado, você pode usar a alça 
quadrada central para mover o polígono e as alças de diamante para alterar o tamanho e 
o ângulo do polígono. Mantenha pressionada a tecla Ctrl para manter a rotação do 
polígono em um múltiplo de 15°. 
Ferramenta Seta 
A ferramenta de seta cria formas de seta de um ou dois lados. Quando estiver ativo, basta 
arrastar para criar uma nova seta. Use a caixa de seleção na barra de ferramentas para 
escolher uma seta simples ou dupla. Paraalterar a seta, use as alças de diamante para 
alterar as duas extremidades da seta e as alças circulares para alterar o tamanho do eixo 
e da cabeça. Ao alterar a direção da seta, você pode manter pressionada a tecla Ctrl para 
ajustar a seta em incrementos de 15°. 
 
 
 
 
 
 
©2019 Inductive Automation Página 80 de 397 
Propriedades e Vinculações do Componente Vision 
Ferramenta Lápis 
A ferramenta permite desenhar linhas e formas à mão livre. Quando selecionado, você 
pode desenhar diretamente em uma janela mantendo pressionado o botão do mouse. 
Solte o botão do mouse para finalizar o caminho. Se você parar de desenhar dentro do 
pequeno quadrado colocado na origem da forma, você cria um caminho fechado, caso 
contrário, você cria um caminho aberto (linha). 
Na barra de ferramentas da ferramenta lápis, há uma configuração Simplifiy e Smooth, 
bem como alternar entre criar segmentos de linha reta ou segmentos de linha curva. 
A opção Simplify permite especificar um tamanho em pixels que diminui o número de 
pontos usados ao criar a linha. Em geral, os pontos na linha estão tão distantes quanto 
esta configuração Simplificar. Se você achar que a linha não é precisa o suficiente, diminua 
essa configuração. Se você optar por criar segmentos curvos, os segmentos entre os 
pontos serão curvas de Bézier em vez de linhas retas. A opção Smooth controla o quão 
curvilíneo esses segmentos podem obter. 
Ferramenta de Linha 
A ferramenta de linha desenha linhas, polígonos arbitrários ou caminhos curvos. Ao 
contrário de todas as outras ferramentas, você não arrasta para criar novos caminhos com 
a ferramenta de linha. Em vez disso, você clica em cada vértice que deseja adicionar ao 
seu caminho. Para desenhar uma linha reta, basta clicar uma vez onde deseja que a linha 
comece e clique duas vezes onde deseja que a linha termine. Para fazer um caminho de 
vários vértices, clique em cada vértice e para finalizar a linha, clique duas vezes, pressione 
entre ou faça um vértice dentro da caixa de origem. 
Conforme você desenha a linha, as sessões "bloqueadas" são desenhadas em verde e o 
próximo segmento é desenhado em vermelho. Mantenha pressionada a tecla Ctrl a 
qualquer momento para ajustar o próximo segmento em incrementos de 15°. 
Na barra de ferramentas da ferramenta de linha, você pode escolher entre três modos: 
normal line, perpendicular e curve. O modo perpendicular é como o modo de linha, 
exceto que cada segmento é restrito a ser horizontal ou vertical. O modo Curve cria um 
caminho de curva Bézier tentando desenhar uma curva suave entre os dois vértices 
anteriores e o novo vértice. 
Ferramenta de Caminho 
A ferramenta de caminho edita todas as formas e caminhos. Essa ferramenta permite 
modificar diretamente os nós no caminho, adicionar novos nós, remover nós e alternar 
segmentos entre retos ou curvos. 
 
 
 
 
©2019 Inductive Automation Página 81 de 397 
Propriedades e Vinculações do Componente Vision 
Ferramenta Gradiente 
A ferramenta de gradiente afeta a orientação e a extensão de qualquer pintura de 
gradiente. 
Ferramenta Conta-gotas 
A ferramenta conta-gotas define a(s) forma(s) e/ou componente(s) selecionada(s) de 
primeiro plano/fundo ou cores de traço/preenchimento, puxando as cores de outro lugar 
na janela. Quando esta ferramenta estiver ativa, clique com o botão esquerdo para definir 
o preenchimento ou fundo da seleção e clique com o botão direito para definir o traço da 
seleção ou primeiro plano. Observe que essa ferramenta funciona na maioria dos 
componentes e também nas formas. Por exemplo, clicar com o botão direito do mouse 
define a cor da fonte em um botão, ou clicar com o botão esquerdo define a cor de fundo. 
Arraste algumas formas para a janela. 
Definindo o preenchimento e o Traçado de Uma Forma 
Todas as formas têm três propriedades que afetam sua aparência, são as seguintes: 
• Fill Paint é do tipo Paint e representa a cor interna da forma. 
• Stroke Paint é do tipo Paint e representa a cor do contorno da forma. 
• Stroke Style é do tipo Stroke e afeta as propriedades de espessura, cantos e traço do 
contorno da forma. 
Editando Tintas 
As tintas de preenchimento e traçado podem ser definidas para uma variedade de tipos 
diferentes de tintas. Você pode editar o preenchimento ou a pintura do traçado de uma 
forma de duas maneiras: 
1. Selecione um dos componentes da ferramenta de desenho. 
2. Na propriedade Fill Paint, clique no ícone Edit à direita do Property Editor para abrir 
a roda de cores. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 82 de 397 
Propriedades e Vinculações do Componente Vision 
 
 
Tipos de Pintura de Preenchimento e Traçado 
Na parte superior do painel Preenchimento e traçado, uma área de seleção permite 
escolher entre os cinco tipos de tinta diferentes. 
 
Esses cinco tipos de tinta são os seguintes: 
• No Paint - Quando usado como tinta de preenchimento, torna o interior da forma 
transparente. Usado como a pintura do traço, não desenha o contorno das formas. 
 
 
 
 
©2019 Inductive Automation Página 83 de 397 
Propriedades e Vinculações do Componente Vision 
• Solid Color - Equivalente ao tipo Color usado em outras partes da biblioteca de 
componentes. Uma cor sólida é qualquer cor, incluindo um nível alfa (transparência). 
• Linear Gradient - Misture suavemente qualquer número de cores ao longo de uma linha 
reta ao longo da forma. Cada cor é chamada de Stop. Cada parada é representada como 
um controle que pode ser arrastado em uma visualização horizontal do gradiente no editor 
de gradiente. Você pode clicar em uma parada para selecioná-la e alterar sua cor ou 
arrastá-la para posicioná-la. Você pode clicar com o botão direito nele para removê-lo. 
Você pode clicar com o botão direito do mouse na faixa de visualização para adicionar 
novas paradas e alterar o modo de ciclo do gradiente. 
 
• Radial Gradient - Muito semelhante ao gradiente linear, exceto que as cores emanam 
de um ponto criando uma elipse de cada matiz. As tintas radiais são configuradas da 
mesma forma que as tintas lineares. 
• Pattern Paint - Usa um padrão de pixel repetido com duas cores diferentes. Você pode 
escolher um padrão na lista suspensa ou criar o seu próprio usando o editor de padrões 
integrado. 
Limites de pintura gradiente 
As duas pinturas de gradiente, linear e radial, são mais do que uma lista de paradas 
coloridas, elas também precisam ser colocadas em relação à forma. O mesmo gradiente 
pode parecer muito diferente dependendo de como é colocado contra a forma. Por padrão, 
um gradiente linear é executado horizontalmente na largura de toda a forma, mas isso é 
facilmente alterado. Ao alternar para a Gradient Tool, você pode arrastar as alças que 
controlam como o gradiente é aplicado. 
 
 
 
 
 
 
©2019 Inductive Automation Página 84 de 397 
Propriedades e Vinculações do Componente Vision 
 
Ciclos de gradiente 
As duas pinturas de gradiente, linear e radial, ambas têm um modo de três ciclos que você 
pode escolher clicando com o botão direito do mouse na faixa de visualização. 
 
Os três modos de ciclo mostrados acima são os seguintes: 
1. No Cycle - A primeira e a última paradas continuam para sempre após a borda dos 
limites da pintura. 
2. Reflect - Além dos limites da tinta, ela é refletida e desenhada ao contrário e depois 
refletida novamente, criando uma repetição suave. 
3. Repeat - Além dos limites da tinta, repete-se para sempre. 
Estilo de traço 
A pintura de traço de uma forma é apenas metade da história. O estilo de traçado também 
é um componente importante de como um contorno é desenhado. Principalmente o estilo 
controla a espessura da linha desenhada, mas você também pode usá-lo para criar uma 
linha tracejada. 
A configuração de espessura é especificada em pixels. Criar uma linha tracejada é tão fácil 
quanto escolher o estilo na lista.O efeito das configurações de espessura e padrão de traço é bastante autoexplicativo, mas 
as outras configurações de traço são um pouco mais sutis. Você pode notar seu efeito 
mais facilmente em linhas grossas. 
 
 
 
 
©2019 Inductive Automation Página 85 de 397 
Propriedades e Vinculações do Componente Vision 
Propriedades do Componente 
Cada componente tem um conjunto único de propriedades. Uma propriedade é 
simplesmente uma variável nomeada que afeta algo sobre o comportamento ou a 
aparência do componente. 
Cada propriedade tem um tipo de dados distinto. Passe o mouse sobre o nome da 
propriedade no painel Property Editor para ver sua descrição, tipo de dados e nome de 
script. 
 
 
As diferentes maneiras que um nome de propriedade pode aparecer são as seguintes: 
● Um nome azul que indica que a propriedade é uma propriedade personalizada 
(dinâmica). 
● Um nome em negrito com um ícone de vinculação que indica que a 
propriedade está vinculada usando uma vinculação de propriedade. 
● Um nome em negrito com um ícone de paleta de cores que indica que a 
propriedade está usando as configurações de estilos do componente. 
● Um nome em negrito vermelho com um ícone de aviso que indica que a 
propriedade tem uma vinculação e um estilo. A propriedade pode ter uma 
vinculação ou um estilo, mas não ambos. 
 
 
 
 
 
 
©2019 Inductive Automation Página 86 de 397 
Propriedades e Vinculações do Componente Vision 
Propriedades do Componente Personalizado 
A maioria dos componentes do Vision oferece suporte a propriedades personalizadas. Isso 
significa que, além das propriedades normais do componente, você pode adicionar suas 
próprias propriedades. Você pode pensar nessas propriedades como suas próprias 
variáveis na janela. 
As propriedades personalizadas são extremamente úteis e essenciais para a criação de 
projetos sustentáveis usando o Ignition Vision. Eles permitem que você transforme um 
componente "simples" em um personalizado para seu uso específico. 
Você notará que as propriedades personalizadas adicionadas são exibidas no Property 
Editor em azul. Você pode usar essas propriedades como quaisquer outras, com vinculação 
de dados, scripts, estilos e assim por diante. 
Noções Básicas Sobre Vinculação de Propriedade 
O Property Binding é talvez o conceito mais importante a ser entendido ao projetar um 
projeto usando o módulo Vision. É principalmente por meio da vinculação de propriedades 
que você dá vida às janelas e as faz fazer coisas úteis. 
Quando você inicialmente coloca um componente em uma tela, ele não faz nada. Alterar 
suas propriedades no Designer faz com que pareça ou haja diferente, mas não tem 
conexão com o mundo real. Isso é o que a vinculação de propriedade adiciona. 
A vinculação de propriedade, como o próprio nome sugere, permite vincular uma 
propriedade a outra coisa. Que outra coisa poderia ser: 
• Propriedade de algum outro componente 
• Uma etiqueta OPC 
• Os resultados de uma consulta SQL 
• Uma expressão envolvendo qualquer uma dessas coisas 
• Os resultados de um script Python 
Agora que sabemos um pouco sobre os componentes e propriedades, vamos arrastar 
alguns componentes na janela e testar algumas vinculações. 
 
 
 
 
 
©2019 Inductive Automation Página 87 de 397 
Propriedades e Vinculações do Componente Vision 
Vinculações de Propriedade 
As associações de propriedade são úteis para forçar dois componentes a corresponderem 
exatamente aos seus valores. Vamos pegar um componente Tanque e um componente 
Deslizante e usar um para alterar o outro. 
1. Se você ainda não tiver um em sua janela principal, arraste um componente Cylindrical 
Tank para a janela. 
Alterar a propriedade Value no tanque altera o nível do líquido no tanque. 
Alterar a propriedade Capacity no tanque também altera o nível. Arraste um componente 
Slider para a janela. 
1. Coloque o Designer no Preview Mode selecionando-o em Menubar under Project -> 
Preview Mode. Agora você pode arrastar a alça do controle deslizante e pode ver que a 
propriedade valor do componente do controle deslizante muda. 
 
4. Você pode alterar outras propriedades no Slider para afetar a aparência. Defina a 
propriedade Horizontal Slider como False e altere a forma do controle deslizante para 
ser alto e fino. Mova-o ao lado do tanque. 
5. Agora podemos ligar o tanque e o controle deslizante juntos. Como as vinculações 
escutam as alterações de valor, selecione o componente Cylindrical Tank para adicionar 
a vinculação lá. 
6. Encontre a propriedade Value do tanque e clique no ícone de vinculação à direita. 
7. Selecione o tipo de associação de Propriedade. 
8. Expanda a árvore de propriedades e selecione a propriedade Slider -> Value. 
 
 
 
©2019 Inductive Automation Página 88 de 397 
Propriedades e Vinculações do Componente Vision 
 
9. Clique em OK. Agora você pode ver que o valor do tanque corresponde ao controle 
deslizante. 
10. Coloque o Designer de volta no Preview Mode e mova o controle deslizante para 
ver a mudança de valor. 
 
 
 
 
©2019 Inductive Automation Página 89 de 397 
Propriedades e Vinculações do Componente Vision 
11. O componente Deslizante tem mais uma propriedade que vale a pena mudar. Retire o 
Designer do modo de visualização, selecione o controle Slider e defina a propriedade 
Defer Updates como False. Isso fará com que o controle deslizante dispare 
constantemente atualizações em vez de esperar até que você solte a alça do controle 
deslizante. Você pode testar este é o modo de visualização. 
Veiculações de Expressão 
Também podemos definir uma vinculação mais complexa. A vinculação de expressão 
permitirá que você use mais de uma propriedade em nossa linguagem de expressão para 
criar uma lógica complexa para retornar um único valor. Vamos adicionar um rótulo ao 
nosso exemplo que exiba o valor atual de uma maneira melhor. 
1. Arraste um componente Label para a janela abaixo do tanque. 
A propriedade Texto do componente é o que nos permite escrever na janela. Você pode 
alterar a propriedade Texto para testá-la. 
2. Clique no ícone de vinculação à direita da propriedade Texto. 
3. Queremos mostrar o valor do Tanque, mas também queremos mostrar às unidades 
"galões". Selecione o tipo de vinculação Expression. 
4. Podemos começar com um link para o Tanque. Clique no ícone Insert Property no 
canto superior direito. 
5. Selecione a propriedade Cylindrical Tank -> Value e clique em OK. Você o verá 
preencher o campo de expressão com: 
{Root Container.Cylindrical Tank.value} 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 90 de 397 
Propriedades e Vinculações do Componente Vision 
 
6. Podemos usar esse valor e adicionar uma string a ele. Você pode concatenar strings na 
linguagem de expressão com o operador +. Adicione +"gal" à expressão. Observe o 
espaço antes do "g" em gal. 
 {Root Container.Cylindrical Tank.value}+ "gal" 
7. Clique em OK. Agora você verá o valor na alteração da etiqueta. 
Você pode usar o modo de visualização para mover o controle deslizante e ver o valor na 
etiqueta atualizar. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 91 de 397 
Propriedades e Vinculações do Componente Vision 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 92 de 397 
Capítulo 7 
 
Tags 
 
 
 
 
 
No Ignition, uma Tag é mais do que simplesmente o que é considerado uma "tag" 
em outros sistemas. Cada Tag do Ignition inicia de forma semelhante como um 
ponto de dados e pode ter um valor estático ou dinâmico que vem de um endereço 
OPC, uma expressão ou uma consulta SQL. 
 
Além disso, as Tags do Ignition nos permitem adicionar configurações para 
alarme, dimensionamento, armazenamento histórico e muito mais. 
 
As Ignition Tags são armazenadas em Providers, e você pode ter quantos 
provedores quiser. Por padrão, uma novainstalação do Ignition terá um único 
provedor interno de tags - isso pode ser considerado como um banco de dados 
interno de tags padrão. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 93 de 397 
Tags 
Principais Benefícios das Tags 
As tags funcionam de forma natural e fácil com o Ignition para oferecer os seguintes 
recursos interessantes: 
Design de Tela de Arrastar e Soltar 
Usando os módulos Vision e Perspective, você pode arrastar e soltar Tags em uma janela 
para criar automaticamente novos componentes vinculados. Arraste Tags para 
componentes ou propriedades existentes para vinculá-los rapidamente aos dados. 
Design Orientado a Objetos 
Use Tag UDTs (User Defined Types) para projetar tipos de dados reutilizáveis, 
parametrizados e extensíveis. Você pode criar e configurar novas instâncias desses tipos 
em segundos, economizando muito tempo em relação aos sistemas de tags tradicionais. 
Desempenho e Escalabilidade 
As Tags oferecem um ótimo desempenho tanto no Gateway quanto no Cliente. No 
Gateway, o sistema pode suportar milhares de alterações de valor por segundo e centenas 
de milhares de Tags. No Cliente, as Tags melhoram a eficiência com sua arquitetura de 
assinatura leve. Adicionar Clientes adicionais cria um efeito quase insignificante no banco 
de dados e no desempenho do Gateway. 
Feedback de Componentes integrados 
As tags oferecem um sistema de qualidade e sobreposição para os componentes do módulo 
Vision e Perspective. Se a qualidade dos dados de uma Tag não for boa, um componente 
que depende dele recebe uma sobreposição visual. Os componentes de entrada exibem 
uma sobreposição animada enquanto as solicitações pendentes de gravação estão sendo 
gravadas. Esses recursos comunicam efetivamente o status do sistema rapidamente. 
Valores das Tags 
Fundamentalmente, o objetivo principal de uma Tag é representar um valor no sistema 
Ignition. Os valores podem vir do OPC, expressões, consultas e assim por diante, e podem 
ser usados em janelas do Vision, visualizações do Perspective, Transaction Groups e muito 
mais. 
 
 
 
 
 
 
©2019 Inductive Automation Página 94 de 397 
Tags 
Além disso, as Tags oferecem o seguinte conjunto principal de recursos que está acima e 
além de valores simples: 
• Alarme 
• Dimensionamento 
• Metadados 
• Histórico 
Dependendo do tipo específico de Tag, ainda mais opções podem estar disponíveis. Em 
geral, as tags fornecem uma interface comum para vincular vários tipos de dados no 
Ignition. 
Criando Tags 
Agora que você está no Designer e criou algumas janelas de navegação, um bom 
primeiro passo é criar algumas Tags. Você usará essas Tags para status e controle em 
tempo real e para armazenar o histórico com o Histórico de Tags. As tags são todas 
configuradas no painel Tag Browser. 
Criando tags arrastando-as do OPC 
A maneira mais fácil de criar Tags é arrastando as Tags do Navegador OPC. 
1. No Tag Browser, primeiro selecione a pasta Tags e clique no ícone Navegador de 
Servidores OPC. 
 
 
 
 
 
©2019 Inductive Automation Página 95 de 397 
Tags 
O navegador OPC é exibido e você pode navegar por todas as suas conexões OPC. 
Por padrão, você tem uma conexão com o Ignition OPC UA Server interno, que contém 
os dispositivos que você criou anteriormente. Navegue pelos dispositivos e encontre 
algumas Tags de seu interesse. 
2. No navegador OPC, destaque ambas as pastas dentro da pasta GenSim e arraste-a 
para a pasta Tags no Tag Browser. 
 
Você pode arrastar Tags ou pastas individuais. Ao arrastar pastas, o Ignition mantém a 
mesma hierarquia do PLC. 
3. Expanda a pasta GenSim > Ramp para ver os valores ativos. 
É isso! Agora você tem algumas tags. Você pode ver seus valores entrarem e começar a 
atualizar automaticamente. Por padrão, eles são atualizados a uma taxa de 1 segundo. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 96 de 397 
Tags 
 
 
Propriedades das Tags 
Cada Tag tem um conjunto de propriedades que afetam a aparência e o comportamento 
do seu projeto. Você pode acessar as propriedades da Tag clicando duas vezes em uma 
Tag ou clicando com o botão direito do mouse em uma Tag e selecionando Edit Tag. 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 97 de 397 
Tags 
 
Existem muitas propriedades para cada Tag e vamos passar por todas elas esta semana. 
Por enquanto, queremos apenas falar sobre as primeiras seções: 
• Propriedades Básicas - Estas propriedades são as principais informações de uma Tag: 
nome, Grupo de Tags (execução) e status habilitado. 
• Valor - Esta seção é de onde a Tag obtém seus dados. Para uma Tag OPC como os 
simuladores, isso significa os dados do caminho OPC. 
• Propriedades Numéricas - Esta seção controla como o valor bruto é representado na 
Tag do Ignition. Inclui uma banda morta, escala e limites de engenharia. 
• Propriedades de Metadados - Esta seção oferece um local para documentar a Tag da 
maneira que desejar. 
A Segurança, Permissões, Histórico e Alarmes serão abordados nas seções posteriores da 
aula. 
 
 
 
 
 
©2019 Inductive Automation Página 98 de 397 
Tags 
Você também pode adicionar propriedades às Tags clicando no ícone Adicionar na parte 
superior. Essas propriedades aceitam quaisquer valores estáticos e podem ser usadas para 
identificar ou agrupar suas Tags ou para armazenar dados adicionais. Eles são comumente 
usados para serem vinculados a outras propriedades, como configurações de alarme. 
Arrastando Tags para Janelas e Componentes 
Você pode arrastar Tags para um componente de três maneiras diferentes: 
• Arraste uma Tag para uma janela e então crie um componente. 
• Arraste um componente da Paleta de componentes para a janela e depois arraste uma 
Tag para o componente. 
• Arraste um componente da Paleta de componentes para a janela e depois arraste uma 
Tag para apenas uma propriedade do componente. 
Arrastando uma Tag para uma Janela para Criar um 
Componente 
1. Abra a Main Window. 
2. Arraste a Tag Ramp 1 da pasta Rampa para a janela (que é o Recipiente Raiz). 
Um menu pop-up é exibido. 
3. No menu pop-up, selecione Display > Tank. 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 99 de 397 
Tags 
 
4. Observe no Property Editor que as propriedades Mouseover Text, Value e Units do 
componente Tank estão em negrito, isso significa que essas propriedades estão 
vinculadas a Tags. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 100 de 397 
Tags 
5. Clique no ícone de vinculação à direita da propriedade Value. 
A janela de vinculação de propriedade é exibida mostrando que o valor da propriedade 
está vinculada a Tag Ramp 1. 
 
Arrastando Várias Tags Para Uma Janela 
Você também pode selecionar várias Tags de uma vez e arrastá-las para a janela ao 
mesmo tempo. 
1. Selecione várias das Realistics Tags (com CTRL+click ou Shift+click) e arraste 
todos para a janela. 
2. Selecione o componente LED Display. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 101 de 397 
Tags 
 
3. Observe que arrastar a Tag para um componente existente vincula várias propriedades 
de uma só vez. 
 
 
 
 
 
©2019 Inductive Automation Página 102 de 397 
Tags 
Vinculações Bidirecionais 
As tags que você arrasta para a tela criarão automaticamente vinculações bidirecionais 
quando forem soltas. 
1. Arraste um Numeric Text Field para a janela. 
2. Arraste a Tag WriteableInteger1 para a propriedade Valor (Integer) do campo de 
texto numérico. 
3. Observe que apenas uma propriedade está em negrito agora. 
 
4. Coloque o Designer no modo de visualização e altere o valor no campo de texto 
numérico. 
Uma mensagem de erro deve aparecer informando que o Gateway não está no 
Read/Write Mode. Este é um recurso de segurança no Ignition.©2019 Inductive Automation Página 103 de 397 
Tags 
 
5. Você pode habilitar o Read/Write Mode na barra de menus do designer. Selecione 
Project > Comm Read/Write e tente alterar o valor novamente. 
6. Se você estiver trabalhando no Designer e tentar inserir um valor no Numeric Text 
Field do Property Editor e o Read/Write Mode não estiver ativado, você receberá uma 
mensagem pop-up. Você tem a opção de escolher Enable Read/Write Mode na caixa 
de mensagem. Selecione Enable Read/Write Mode ou Write Once. Tente inserir um 
valor novamente. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 104 de 397 
Tags 
Tipos de Tags 
Existem vários tipos de Tags. Enquanto falamos de "Tags" geralmente queremos dizer as 
Tags executadas pelo Gateway, mas as Tags do sistema e as Tags do Cliente podem 
desempenhar um papel importante no design geral de um projeto. 
Tags Executadas Pelo Gateway 
As Tags executadas no Gateway suportam todos os recursos principais das Tags: 
dimensionamento, alarme, histórico e permissões baseadas em função. Elas são idênticas 
em suas configurações, além de definir como o valor é gerado. 
• Tag OPC - Um servidor OPC e endereço que direciona valores. O endereço OPC é 
subscrito à taxa do Grupo de Tags da Tag. 
• Tag de Memória - Um valor simples que é especificado durante a configuração e é 
armazenado quando escrito (se a Tag permitir escrita). 
• Tag de Expressão - A Tag acionada por uma expressão. A sintaxe da expressão é a 
mesma das associações de propriedades e permite operações matemáticas, referências a 
outras Tags, operações lógicas e muito mais. 
• Tag Derivada - Uma Tag acionada por uma Tag de origem e possui expressões de 
leitura e escrita. Ela se comporta da mesma forma que a Tag de Expressão, mas permite 
que você escreva valores de volta na Tag de origem. 
• Tag de Consulta - Executa uma Consulta SQL, cujo resultado fornece o valor para a 
Tag. Assim como a vinculação SQL no Vision, o SQL Query Tag pode fazer referência a 
outras Tags para construir consultas dinâmicas. 
• Tag de Referência - Um tipo simples que possui o mesmo valor de outra Tag. Dessa 
forma, você pode ter várias cópias da mesma fonte e definir valores diferentes para 
alarmes, histórico, escala, etc. 
• Tag Complexa (UDT) - Criada a partir de um tipo de Tag padrão, mas oferece uma 
variedade de recursos adicionais. Em termos simples, você pode pensar nelas como uma 
forma de criar "templates de dados", onde uma determinada estrutura de Tag é definida 
e pode então ser criada como se fosse uma única Tag. 
 
 
 
 
 
 
©2019 Inductive Automation Página 105 de 397 
 
Tags 
Criando Tags de Memória 
Tags de Memória são simplesmente valores. Você pode usá-las como setpoints (que não 
são armazenados no PLC) ou apenas para armazenar informações extras. 
1. No Tag Browser, clique com o botão direito do mouse em Tags ou em uma pasta de 
sua preferência e selecione New Tag > Memory Tag. 
 
 
2. No Editor de ag, defina o Nome para TempF, defina o Tipo de Dados para Float, e 
defina o valor inicial para uma temperatura razoável como 50,3. 
 
 
 
 
©2019 Inductive Automation Página 106 de 397 
Tags 
 
3. Clique em OK. 
É isso! Agora você tem uma Tag de Memória que pode ser lida ou gravada. Isso é como 
ter uma variável global para seu projeto. 
Criando uma Tag Derivada 
Uma Tag Derivada permite realizar um cálculo especial baseado em outras Tags para 
leitura e outro para escrita. Dessa forma, você pode fazer o cálculo uma vez e visualizá-
lo em qualquer janela do seu projeto. 
1. No Tag Browser, clique com o botão direito do mouse em Tags ou em uma pasta de sua 
preferência e selecione New Tag > Derived Tag. 
 
 
 
 
 
©2019 Inductive Automation Página 107 de 397 
Tags 
 
2. No Editor de Tags, defina o nome para TempC, o Tipo de Dados para Float. 
3. Defina o Source Tag Path para nossa nova Tag TempF. Você pode clicar no ícone 
Edit à direita para selecionar a Tag. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 108 de 397 
Tags 
 
4. Este tipo de Tag possui expressões de Leitura e Gravação. Encontre a propriedade 
Read Expression e clique no ícone Edit à direita. 
5. Digite esta expressão usando o objeto {origem} integrado: 
({origem}-32)*5/9 
 
 
 
 
©2019 Inductive Automation Página 109 de 397 
Tags 
6. Clique em Commit e em OK. Você verá o valor do seu cálculo na Tag. 
 
7. Com uma Tag Derivada, você também escreve o valor de volta na mesma Tag. Na 
Tag Editor > Escrever Expressão, clique no ícone Edit à direita. 
8. Insira a seguinte expressão: 
{valor}*9/5+32 
 
Agora quando escrevermos na Tag, ela enviará um valor modificado de volta para a Tag 
de origem. 
 
 
 
 
©2019 Inductive Automation Página 110 de 397 
Tags 
Sistemas de Tags Client e Gateway 
O Ignition vem com Tags de sistema predefinidos para fornecer mais informações sobre 
o Cliente e o Gateway. No Tag Browser, na pasta Sistema, você pode ver vários Clientes 
e Gateway Tags. 
Para o Cliente, eles fornecem as seguintes informações: 
• Endereço IP do cliente; 
• Nome do host do cliente; 
• Cliente OS; 
• Quem está conectado e quais funções eles têm; 
• Qual projeto está aberto; 
• Endereço do gateway; 
• e mais... 
Para o Gateway, eles fornecem as seguintes informações: 
• Informações de conexão do banco de dados; 
• Estatísticas de desempenho do Ignition; 
• Informações de redundância; 
• Número de sessões do cliente abertas e mais… 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 111 de 397 
Tags 
 
Sistemas de Tags 
Os sistemas de tags fornecem status sobre o sistema, como uso de memória, métricas de 
desempenho e assim por diante. Eles existem para o Cliente e o Gateway. Você pode 
modificar as Tags do sistema Gateway para realizar alarmes, histórico e dimensionamento, 
mas não pode modificar as Tags do Cliente. 
Tags do Cliente Vision 
As Tags de Cliente, como o nome indica, estão disponíveis apenas para uso em Clientes 
Vision. Isso significa que seus valores são isolados para um tempo de execução do cliente. 
Apesar de serem criados no Designer, cada Cliente cria suas próprias instâncias. Isso os 
torna muito úteis como variáveis no projeto, para passar informações entre telas e entre 
outras partes dos Clientes, como scripts. 
As tags de cliente são um híbrido de tags de memória, expressão e consulta SQL. No 
entanto, elas não têm um Grupo de Tags. Quando configurado para ser executado como 
uma expressão ou consulta, uma taxa de pesquisa é especificada, ditando a frequência 
com que o valor é calculado. 
 
 
 
 
©2019 Inductive Automation Página 112 de 397 
Tags 
Uma ótima maneira de usar tags de cliente é ter uma variável que é usada em várias 
páginas quando você não pode usar uma tag de memória normal porque cada cliente em 
execução deseja seu próprio valor. Por exemplo, você pode ter várias janelas reutilizadas 
para todas as áreas ao redor de suas instalações. Se você está passando o nome da área 
em cada tela, então você quer usar uma Tag para lembrar sem ter que passar variáveis 
ao abrir as janelas. Se duas ou mais pessoas quiserem ver áreas diferentes ao mesmo 
tempo, uma Tag de Memória não funcionará, mas uma Tag de Cliente sim. 
Grupos de Tags 
As Tags são executadas por Grupos de Tags dentro de um Provedor de Tags. Em um 
sistema típico, há vários grupos de tags e um ou dois provedores de tags: o provedor de 
tags interno e possivelmente um provedor de tags externo de outra instalação do Ignition. 
Os Grupos de Tags ditam a taxa de execução das Tags e, portanto, desempenham um 
papel crucial no projeto de sistemas grandes e de alto desempenho. Eles oferecem vários 
modos de execução importantes para ajudar a criar projetos eficientes. 
Os diferentes modos de execução são os seguintes: 
● Direct - Executa com base em uma taxafixa. 
● Driven - Executa em uma taxa lenta ou rápida com base em uma condição. Este 
tipo pode ser configurado para executar uma vez quando a condição for True. 
● Leased - Executa a uma taxa lenta ou rápida de acordo com a necessidade dos 
valores da Tag. 
Grupo de Tags Diretas 
O Modo Direto é executado em uma taxa fixa, que é definida pela configuração de taxa 
lenta. Toda Tag que usa o modo Direto irá fazer o polling do PLC na configuração de taxa 
lenta 24x7x365 (sempre). 
O Ignition vem com dois dois Grupos de Tags Diretas padrão chamados Default e Default 
Historical. Você pode modificar as configurações desses Grupos de Tags padrão. 
Edit um grupo de tags 
1. Abra o Designer. No Tag Browser, clique no ícone Edit Tag Groups. 
 
 
 
 
 
 
©2019 Inductive Automation Página 113 de 397 
Tags 
 
O Edit Tag Groups é exibido. À esquerda da janela, você pode ver os Grupos de Tags 
padrão: Default e Defalt Historical. Ambos são grupos de tags diretas. O Grupo de 
Tag Default é uma taxa de 1 segundo e o Default Historical é uma taxa de 10 segundos. 
 
 
 
 
©2019 Inductive Automation Página 114 de 397 
Tags 
2. Selecione o Default Tag Group à esquerda. Agora você pode fazer alterações no Grupo 
de tags, incluindo a alteração da taxa lenta para 30.000 ms. Para a aula, deixaremos a 
taxa padrão em 1.000ms. 
Como todas as novas Tags usam automaticamente esse grupo padrão, é uma boa ideia 
alterá-lo para uma taxa muito mais lenta e criar uma nova taxa de 1 segundo com um 
nome diferente. 
Definindo a taxa de grupo de tags para uma tag 
1. Clique com o botão direito do mouse em qualquer Tag e selecione Edit Tag. 
A janela Editor de tags é exibida. 
2. Em Propriedades básicas, localize a propriedade suspensa Grupo de Tags e defina-a 
como um New Tag Group. Certifique-se de salvar seu projeto depois de criar um novo 
Grupo de Tags. 
3. Clique em OK para salvá-lo. 
 
 
 
 
©2019 Inductive Automation Página 115 de 397 
Tags 
Você verá imediatamente a atualização da Tag em uma taxa diferente. A Tag também usa 
o Grupo de Tags para determinar a velocidade de registro de dados para o histórico. O 
Grupo de Tags de histórico não afeta a rapidez com que os valores são pesquisados do 
PLC, mas afeta a rapidez com que os dados são registrados. Se você tiver o histórico 
ativado em sua Tag, essa propriedade aparecerá na seção Histórico. 
Grupo de Tags Alugadas 
O Grupo de Tags alugadas é executado na Leased/Driven Rate (tarifa rápida) quando 
qualquer uma das Tags que ele contém estiver inscrito e visível em uma janela do cliente. 
Se não houver Tags inscritas, o Grupo de Tags é executado na taxa lenta. 
Cada Tag que usa o Grupo de Tags alugado irá sondar o PLC na Leased/Driven Rate 
(taxa rápida) quando um cliente ou seção precisa do valor, e na taxa lenta quando 
nenhum dos Tags tiver um vínculo em uma janela ou visualização ativa. 
Adicionar um grupo de tags alugado 
Vamos adicionar um novo Grupo de Tags alugado que atualiza a Tag a uma taxa de 1 
segundo quando um cliente precisa da Tag e 30 segundos quando o cliente é fechado. 
1. No Tag Group Editor clique no ícone Add para adicionar um novo Grupo de Tags. 
2. Defina o seguinte: 
Tag Group Name: Leased 
Mode: Leased 
Rate: 30000 
Leased/Driven Rate: 1000 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 116 de 397 
Tags 
 
3. Clique em OK para salvar. 
4. Defina o Grupo de Tags nas Tags para usar este novo Grupo de Tags Alugado. 
As Tags só serão pesquisadas quando um componente que está vinculado a ele estiver 
aparecendo em um Cliente. 
5. Para testar seu grupo de tags, edite uma tag do Ignition para usar este grupo e 
arraste-a para uma janela. 
Grupo de Tags Direcionadas 
A taxa do Grupo de Tags Direcionadas é baseada em uma simples comparação entre um 
valor de Tag e um número. Se a condição for True, o Grupo de Tags é executado em uma 
taxa rápida. Se False, ele é executado em uma taxa lenta. Existem duas exceções para 
isso: 
● Qualquer Operador de Mudança; 
● Modo de disparo único. 
Usando qualquer um deles, o Grupo de Tags não é executado em uma taxa. Em vez disso, 
será acionado por uma alteração no valor do Tag de condução. Qualquer alteração será 
executada toda vez que o valor for alterado, e o disparo único será executado uma vez 
quando a condição de comparação for True e não novamente até que a condição se torne 
False e subsequentemente True. 
É útil ter em mente que a Tag direcionada pode ser uma Tag de Expressão que realiza 
cálculos complexos e referência outras Tags. Dessa forma, é possível criar um 
acionamento robusto de Grupos de Tags. 
Cada Tag que usa o Grupo de Tags acionado, fará o polling do PLC na taxa rápida quando 
a condição for True e na taxa lenta quando a condição for False. 
 
 
 
©2019 Inductive Automation Página 117 de 397 
Tags 
Adicionar um grupo de tags orientadas 
Vamos adicionar um Grupo de Tags Direcionadas que atualiza as Tags com base na 
temperatura externa da nossa Tag de Memória. 
1. Clique no ícone Edit Tag Groups no Tag Browser para abrir o Editor de Grupos de 
Tag. 
 
2. Clique no ícone Add para adicionar um novo Grupo de Tags e defina o seguinte: 
Tag Group Name: Driven 
Mode: Driven 
Rate (ms): 0, portanto, não pesquisamos quando a condição é False. Se você definir o 
valor para 10 segundos, ele simplesmente pesquisará mais lentamente quando a 
condição for False. 
Leased/Driven Rate (ms): 1000 
Driving Expression: {[default]TempF} 
Driving Comparison:> 
Comparison Value: 50 
 
 
 
 
 
 
©2019 Inductive Automation Página 118 de 397 
Tags 
 
 
3. Clique em OK para salvar. 
Defina o Grupo de Tags em qualquer Tag para atualizar nesta condição. Se você usar 
este Grupo de Tags para o histórico, a Tag armazenará apenas o histórico durante esses 
momentos. 
Após configurar as Tags para usar este Grupo de Tags, altere a Tag TempF para ver se 
funcionou. 
 
 
 
 
 
 
©2019 Inductive Automation Página 119 de 397 
Capítulo 8 
 
Tags Complexas (UDTs) 
 
 
 
 
Tags complexas, também conhecidas como Tag UDTs, permitem que você 
aproveite os princípios de design de dados orientados a objetos no Ignition. 
Usando Tags complexas, você pode reduzir drasticamente a quantidade de 
trabalho necessário para criar sistemas robustos essencialmente criando 
"templates de dados" parametrizados que você pode usar para gerar instâncias 
de Tags. 
Os principais recursos dos UDTs são os seguintes: 
• Definição Central - Depois de definir seu tipo de dados, você pode criar 
instâncias dele. Se posteriormente você quiser alterar algum aspecto do Tag, 
basta editar a definição do tipo e todas as instâncias dele são atualizadas 
automaticamente. 
• Configurações parametrizadas - Defina parâmetros personalizados em seu 
tipo de dados e, em seguida, faça referência a eles dentro de suas Tags de 
membro. Quando for a hora de criar instâncias, você pode simplesmente modificar 
seus valores de parâmetro para alterar a origem dos dados subjacentes. 
• Extensível - Os tipos de dados podem herdar de outros tipos de dados para 
adicionar membros adicionais ou substituir configurações. As instâncias também 
podem substituir as configurações, permitindo flexibilidade para lidar com dados 
irregulares e casos de canto. 
 
 
 
 
 
 
©2019 Inductive Automation Página 120 de 397 
Tags Complexas (UDTs) 
Terminologia 
Os seguintes termos são frequentemente usados ao discutir Tags complexas: 
• UDT (User Defined Type) - A definição do tipo de dado: sua estrutura, Tags, atributos 
e configurações. Este deve ser um tipo genérico, como Motor ou Tanque de Resfriamento. 
• Instâncias - Executando cópias de um tipo de dados com dados específicos para todos 
os membros. As instâncias são vinculadas a seus tipos familiares e são recarregadas 
quando seu familiar é alterado. Além das configurações especificamentesubstituídas, 
todas as configurações são herdadas da definição de tipo. Este deve ser um objeto 
específico, como Motor 3 ou Tanque de Resfriamento 5. 
• Parâmetros - Propriedades personalizadas em tipos de dados que você pode usar dentro 
do tipo ou definição de instância para criar templates de dados parametrizados. Por 
exemplo, se um tipo de dado for composto por três Tags OPC que diferem apenas por um 
número no caminho, você pode utilizar um parâmetro para o "endereço base", permitindo 
que instâncias sejam criadas com apenas uma configuração. 
• Membros - Tags dentro de um tipo de dado ou instância. Os membros podem ser tipos 
básicos de Tags ou outros UDTs. 
Criando Tags Complexas (UDTs) 
Até agora lidamos apenas com Tags simples. No Ignition, você pode criar tipos definidos 
pelo usuário (UDTs) para tags. Esses tipos podem modelar UDTs em determinados PLCs, 
por exemplo, um ControlLogix ou podem ser completamente novos. Você cria UDTs em 
uma pasta especial no Tag Browser chamada Data Types. 
 
 
 
 
 
 
©2019 Inductive Automation Página 121 de 397 
Tags Complexas (UDTs) 
Existem três maneiras de criar UDTs: 
• Manualmente 
• Do OPC através do navegador OPC 
• De Tags existentes 
Se o seu PLC suporta UDTs, a maneira mais fácil de criar um tipo é pelo OPC. Como 
estamos conectados a um ControlLogix e ele suporta UDTs, usamos o segundo método 
(do OPC) para criar os UDTs. Em nosso PLC ControlLogix, já temos uma configuração de 
UDT do motor. Vamos criar o UDT no Ignition. 
Crie o UDT do Navegador OPC 
1. No Tag Browser clique no ícone OPC Browser. 
2. Na pasta CLX, vá para a pasta Controller:Global e localize o arquivo M1. 
M1 representa um motor que possui quatro Tags: AMPS, HOA, RUN_CMD e STATUS. 
3. Arraste a pasta M1 para a pasta Data Types no Tag Browser. 
 
 
 
 
©2019 Inductive Automation Página 122 de 397 
Tags Complexas (UDTs) 
4. Uma janela pergunta se você deseja criar um Tipo ou Tags. Clique em Create Type. 
 
A janela Editor de tags é exibida. Observe que duas Tags, AMPS e HOA, são 
automaticamente parte do UDT. 
5. No Editor de Tag, altere o nome de M1 para MotorUDT para tornar o nome do tipo 
mais genérico. 
6. Clique com o botão direito do mouse na Tag RUN_CMD e selecione Delete. Em 
seguida, exclua também a Tag STATUS. 
 
7. Neste momento cada Tag está apontando para um endereço específico no PLC. 
Selecione a Tag AMPS para ver que está apontando para M1 no PLC. 
 
 
 
 
©2019 Inductive Automation Página 123 de 397 
Tags Complexas (UDTs) 
 
Como estamos criando um UDT, não queremos apontar para um conjunto específico de 
Tags. Queremos que cada instância do UDT faça referência a um conjunto diferente de 
Tags. Para fazer isso, precisamos adicionar um parâmetro ao UDT. 
Os parâmetros são propriedades personalizadas em tipos de dados. Você pode usar os 
parâmetros dentro do tipo ou definição de instância para criar templates de dados 
parametrizados. 
Por exemplo, se um tipo de dado for composto por três Tags OPC que diferem apenas por 
um número no caminho, você pode utilizar um parâmetro para o "endereço base", 
permitindo que instâncias sejam criadas com apenas uma configuração. 
8. No Editor de Tags, clique duas vezes no tipo de dados MotorUDT e edite os parâmetros 
clicando no ícone Edit. 
9. Clique no ícone Add para adicionar um parâmetro. Altere o nome para MotorNumber e 
clique em Commit. 
 
 
 
 
 
 
©2019 Inductive Automation Página 124 de 397 
Tags Complexas (UDTs) 
 
10. Clique em Apply. Agora para cada Tag, podemos substituir o número do motor pelo 
parâmetro MotorNumber. 
11. Selecione a etiqueta AMPS. No Caminho do Item OPC, clique no ícone de vinculação 
à direita e selecione a opção Edit.... 
 
 
 
 
 
©2019 Inductive Automation Página 125 de 397 
Tags Complexas (UDTs) 
12. Agora você verá seu Caminho de Item OPC original. Coloque o cursor após “M1”. 
Clique no ícone de parâmetros à direita para abrir a lista de parâmetros. 
13. Clique na opção MotorNumber para inserir {MotorNumber}. Exclua o "1" em "M1" 
antes de prosseguir. 
O OPC Item Path mostrará: 
ns=1;s=[CLX]Global.M{MotorNumber}.AMPS 
14. Faça o mesmo para a tag HOA. O OPC Item Path mostrará: 
ns=1;s=[CLX]Global.M{MotorNumber}.HOA 
15. Clique em OK para salvar o UDT. Você verá o MotorUDT na pasta Data Types. 
 
Criando instâncias de UDT 
Agora que temos o Motor UDT, podemos criar instâncias dele. As instâncias estão 
executando cópias de um tipo de dados com dados concretos para todos os membros. 
1. No Tag Browser, clique com o botão direito em Tags e selecione New Folder para criar 
uma nova pasta. Nomeie a pasta como “Motors”. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 126 de 397 
Tags Complexas (UDTs) 
 
 
Você pode criar uma única instância do motor ou usar o assistente de várias instâncias 
para criar rapidamente todos os quatro ao mesmo tempo. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 127 de 397 
Tags Complexas (UDTs) 
2. Clique com o botão direito do mouse na pasta Motors e selecione New Tag> Data 
Type Instance> Multi-Instance Wizard. 
 
O Assistente de Criação de Instância é exibido. 
3. Na lista suspensa Step1 - Select the Data Type to Create, selecione Motor. 
4. Defina o seguinte: 
Base Tag Name: "Motor" (observe o espaço no final) 
Tag Name Pattern: 1-10, isso cria 10 Tags Motor 1, Motor 2, etc. 
Parameter: MotorNumber que é o que usamos para referenciar Tags específicas no 
PLC. 
Pattern: 1-10 para que a Tag Motor 1 tenha parâmetro 1 e Motor 2 tenha parâmetro 2 e 
assim por diante. 
Tags to create: 10 Este campo não será editável após o preenchimento do Pattern. 
 
 
 
 
©2019 Inductive Automation Página 128 de 397 
Tags Complexas (UDTs) 
 
Basicamente, você tem o nome da Tag e o valor do parâmetro para definir. 
5. Clique em Preview para ver o que o Ignition criará para o nome da Tag e o valor do 
parâmetro. 
 
 
 
 
 
 
©2019 Inductive Automation Página 129 de 397 
Tags Complexas (UDTs) 
 
6. Clique em OK para ver todas as quatro Tags criadas. 
Se você expandir cada Tag, poderá ver todos os membros da UDT e seus respectivos 
valores. 
 
Agora, se você fizer uma alteração no UDT, todas as 10 instâncias serão atualizadas 
automaticamente porque são desse tipo. 
 
 
 
 
©2019 Inductive Automation Página 130 de 397 
Tags Complexas (UDTs) 
7. Edite seu Motor UDT clicando duas vezes nele no Tag Browser. O Editor de tags é 
exibido. 
8. Clique no ícone Add Tag no canto superior esquerdo da janela e selecione Memory 
Tag. 
 
9. Defina o seguinte: 
Name: HighSP 
Data Type: Integer 
 Value: 40 
10. Clique em OK para salvar. Observe que cada instância obtém automaticamente a 
nova Tag. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 131 de 397 
Tags Complexas (UDTs) 
 
Substituindo Instâncias UDT 
Todos sabemos que nem todos os motores são exatamente iguais, portanto, existe uma 
maneira de fazer alterações em instâncias individuais de um UDT. Você pode substituir 
qualquer propriedade de um UDT acessando o Editor de tags e selecionando o círculo cinza 
ao lado de qualquer valor de propriedade. Isso significa que agora você pode alterar o 
valor na instância para que seja diferente da definição do UDT. Isso também significa que 
quaisquer atualizações na definição do UDT não substituirão esse valor. 
Você pode usar isso para fazer muitas alterações em suas tags, mas se precisar substituir 
todas as instâncias de um UDT, deverá tornar essa propriedade dinâmica. 
Aninhamento de UDTs e Herança 
Ao criar novos UDTs, você pode torná-los tão simples ou complexos quanto desejar. No 
exemplo acima, temos um UDT simples com apenas três Tags. Você também pode incluir 
outros UDTs dentro de um UDT. Por exemplo, você pode ter um UDT para um 
transportador em que cada transportadortenha um motor conectado a ele. Você pode 
reutilizar seu motor UDT como parte do transportador. Desta forma, ao atualizar o UDT 
do Motor, todos os UDTs do Conveyor serão atualizados automaticamente. 
UDTs também podem ter relacionamentos pai-filho. Você pode ter vários tipos de motores, 
onde um é simples como o exemplo acima, e um é um VFD (variable frequency drive) que 
tem nosso motor simples como pai e adiciona alguns outros Tags que controlam a 
velocidade do motor. Desta forma, quando você atualizar o UDT do motor simples, todos 
os UDTs do motor VFD serão automaticamente. 
 
 
©2019 Inductive Automation Página 132 de 397 
 
Capítulo 9 
Templates 
 
 
 
Os templates são um recurso simples, mas muito poderoso no Ignition, que você 
pode usar com as janelas do Vision. O poder vem da capacidade de modificar 
apenas o template em um local, afetando todas as instâncias usadas em todo o 
projeto. 
Os sistemas HMI e SCADA normalmente têm muitas repetições em suas telas. 
Você pode usar um grupo dos mesmos componentes repetidamente em seu 
projeto para representar motores diferentes. Os dados que conduzem cada 
conjunto de gráficos são diferentes, mas os próprios gráficos são cópias uns dos 
outros. No nosso exemplo, existem quatro motores iguais. Você pode criar um 
único template e usar instâncias do template repetidamente. 
Sem templates, a única maneira de fazer isso é copiar e colar os componentes 
toda vez que você quiser representar um motor. Isso é simples e funciona, mas 
pode causar grandes dores de cabeça e correções demoradas mais tarde. Se você 
quiser fazer uma alteração na forma como os motores são representados, terá 
que fazer a alteração em cada cópia do grupo. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 133 de 397 
templates 
Template Principal e Instâncias de Template 
Ao usar templates, você define os gráficos para exibir um motor em um local, chamado 
de Template principal. Você pode usar esse template várias vezes em seu projeto em 
várias janelas, elas são chamadas de instâncias de template. 
Quaisquer alterações feitas no template mestre são refletidas instantaneamente em todas 
as instâncias do template. Usando templates no início do desenvolvimento de seu projeto 
para qualquer exibição repetida, você pode economizar uma quantidade significativa de 
tempo posteriormente. 
Parâmetros do Template 
Como o principal uso dos templates é a facilidade de manutenção de elementos repetidos 
da interface do usuário, o uso correto dos parâmetros é de grande importância. Os 
parâmetros permitem que cada template de instância faça referência a diferentes 
elementos de dados de configurações de dados repetidas. 
Parâmetros e Propriedades Internas 
Ao abrir o Personalizador de Propriedades Personalizadas para um template mestre, você 
notará que ele é diferente de todos os outros componentes. Existem dois tipos de 
propriedades personalizadas: propriedades de parâmetro e propriedades internas. 
• A Propriedade de Parâmetro aparece em cada template de instância, permitindo que 
cada template de instância seja configurado de forma diferente. Comumente, isso é algum 
tipo de indireção. Por exemplo, se seu template é para representar motores, você pode 
ter MotorNumber como uma propriedade de parâmetro. Em seguida, você pode usar essa 
propriedade como uma variável de indireção em outras associações no template. 
As propriedades de parâmetro não são vinculáveis de dentro do template de design 
mestre. Quando você usa o template para criar uma instância de template, a propriedade 
se torna vinculável. Isso garante que a propriedade tenha apenas uma única associação 
configurada para ela. 
• A Propriedade Interna não pode ser usada como parâmetro. Ele aparece ao projetar 
o template principal, mas não aparece nas instâncias do template. As propriedades 
internas são vinculáveis de dentro do template de design principal. Essas propriedades 
devem ser usadas para o funcionamento interno do template. 
 
 
 
 
 
©2019 Inductive Automation Página 134 de 397 
templates 
Indireção e Tags UDT 
Existem duas maneiras principais de obter a indireção ao usar templates. Vamos continuar 
usando o exemplo de um motor. Seu sistema possui muitos motores e seu template é 
usado para exibir o status dos motores e controlar o modo de operação do motor. O 
objetivo é poder soltar instâncias do template em suas janelas, e configurá-las em um 
único passo para apontar para as Tags corretas do motor. 
Se as Tags que representam os datapoints de cada motor estiverem organizadas de forma 
ordenada em pastas ou com uma convenção de nomenclatura consistente, você pode usar 
a indireção padrão para configurar seu template. Você pode adicionar um parâmetro como 
MotorNum ao template. Em seguida, você configura o conteúdo do template usando a 
vinculação indireta da Tag, onde o valor de MotorNum é usado para a indireção. 
Se seus motores são representados por um tipo de dado de Tag personalizado, você pode 
economizar algum esforço e usar uma propriedade desse tipo de Tag diretamente. Torne 
sua propriedade de indireção do mesmo tipo que seu tipo de dados customizados. Em 
seguida, você pode usar associações de propriedade simples para configurar os 
componentes dentro do seu template. Ao criar uma instância de template, você pode 
simplesmente vincular essa propriedade diretamente a Tag de Motor correta, e todas as 
sub-Tags do motor são mapeadas corretamente por meio das vinculações de propriedade. 
O parâmetro de Destino de Queda 
Você pode escolher um de seus parâmetros como destino para soltar. Isso permite que 
você solte Tags em suas janelas para facilitar a vinculação ainda mais rápida. Por exemplo, 
digamos que você tenha um parâmetro que seja um número Integer e o tenha tornado o 
destino de soltar. Se você soltar uma Tag inteira em uma janela, seu template aparecerá 
na lista de componentes que ela sugere que você faça. Escolher seu template cria uma 
instância de template e vincula esse parâmetro à Tag. 
Isso também funciona para tags UDT. Digamos que você tenha um tipo de dados 
personalizado chamado Motor e um template com um parâmetro do tipo Motor definido 
como destino para soltar. Se você soltar uma Tag do motor em uma janela, ela cria uma 
instância do seu template automaticamente. Se você tiver mais de um template 
configurado com destinos de queda Motor, você deve escolher qual template usar. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 135 de 397 
templates 
Criando um Template 
Nós vamos fazer o seguinte: 
• Criar um template para o Motor. 
• Usar parâmetros em instâncias de template. 
• Adicionar um componente ao template e vincular ao UDT. 
• Usar o template na janela. 
Criar um Template para o Motor 
1. No Project Browser, vá para o item especial chamado Template. 
 
2. Clique com o botão direito do mouse em Templates e selecione New Template. 
Renomeie-o para Motor Template. 
 
 
 
 
©2019 Inductive Automation Página 136 de 397 
templates 
Agora você pode ver uma caixa quadriculada no espaço de design onde você projeta seu 
template. A caixa quadriculada informa que o template é completamente transparente. 
Você pode definir uma cor de fundo, se quiser. 
Usar Parâmetros em Instâncias de Template 
Como o principal uso dos templates é a facilidade de manutenção de elementos 
repetidores da interface do usuário, o uso apropriado dos parâmetros é de grande 
importância. 
Os parâmetros permitem que cada instância de template faça referência a elementos de 
dados de diferentes estruturas de dados repetidos. O parâmetro pode ser um tipo de 
dados simples (Integer, Float e assim por diante) ou um tipo complexo (UDT). 
UDTs e templates combinam bem. Como já temos um UDT, vamos trabalhar com ele. 
Primeiro, vamos usar o Motor UDT com o template Motor. 
1. Clique com o botão direito do mouse na caixaquadriculada do template Motor e 
selecione Customizers > Custom Properties. 
 
Como mencionado anteriormente, existem dois tipos de propriedades: propriedade de 
parâmetro e propriedade interna. 
Vamos adicionar uma propriedade de parâmetro para que ela possa existir em todas as 
instâncias que você colocar nas telas. Em seguida, cada instância pode vincular a 
propriedade do parâmetro a uma Tag. 
 
 
 
©2019 Inductive Automation Página 137 de 397 
templates 
2. Na janela Propriedades Personalizadas, clique no ícone Add para incluir os valores de 
parâmetro do template. 
Name: MotorData 
Type: MotorUDT (Clique duas vezes para obter a lista suspensa e selecione User 
Defined/Tags/MotorUDT) 
Group Target: Check the Box (quando esta caixa está selecionada, você pode soltar 
Tags em suas instâncias de template para facilitar a vinculação ainda mais rápida.) 
 
3. Clique em OK. 
Agora no Property Editor sob os Template Parameters, você pode ver a propriedade 
MotorData. 
 
 
 
 
©2019 Inductive Automation Página 138 de 397 
templates 
 
Adicionar um Componente ao Template e Vinculá-lo a Partes 
do UDT 
1. Adicione um componente LED Display e um componente Label ao template. 
Usaremos isso para os AMPs. 
2. Altere a propriedade texto da Label para "Amps". 
Agora podemos vincular o Value do Painel de LED a Tag AMPS do MotorUDT. 
3. Selecione o componente LED Display. 
4. Na propriedade Value, clique no ícone de vinculação. 
5. Selecione o tipo de vinculação de Propriedade. 
6. Na árvore de propriedades, expanda MotorData e selecione a tag AMPS. 
7. Clique em OK para concluir a vinculação. 
Você notará que o Painel LED não atualiza seu valor. Isso porque o valor nesta definição 
de template é NULL. Ainda não estamos vinculados a um Motor específico. 
 
 
 
 
 
©2019 Inductive Automation Página 139 de 397 
templates 
 
8. Adicione uma Label na parte superior do motor para mostrar o nome do motor. Altere 
a propriedade Fonte para tamanho 14 e negrito. 
9. Defina a propriedade Horizontal Alignment como Center. 
O Ignition exibe algumas informações meta para que você saiba exatamente para qual 
Tag o UDT está apontando, nos ligamos a isso. 
10. Na propriedade Text, clique no ícone de Vinculação. 
11. Selecione o tipo de vinculação de Propriedade. 
12. Na árvore de propriedades, expanda MotorData e Meta e selecione a propriedade 
TagName. 
13. Clique em OK para concluir a vinculação. 
Você nota que a etiqueta fica em branco. Novamente, isso ocorre porque o valor nesta 
definição de template é NULL. Ainda não estamos vinculados a um Motor específico. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 140 de 397 
templates 
 
Agora precisamos de uma imagem. Podemos usar a Fábrica de Símbolos para obter um 
SVG. 
14. Abra a Symbol Factory. 
15. Selecione qualquer motor na pasta Motors e arraste-o para o template. 
 
Os componentes da fábrica de símbolos são compostos de vários sub componentes ou 
caminhos que compõem um gráfico baseado em vetor. Se você expandir o componente 
no Project Browser, poderá ver todos os caminhos. 
 
 
 
©2019 Inductive Automation Página 141 de 397 
templates 
Você também pode clicar duas vezes no componente no espaço de design para 
selecionar os sub componentes individuais. Queremos que o componente Integer seja de 
uma cor com base no valor HOA, portanto, usamos um método especial, conforme 
descrito aqui, para aplicar uma tonalidade. 
16. Selecione o componente de imagem do motor e na barra de menu do Designer e 
escolha Edit > Duplicate ou pressione Ctrl-D. 
17. Com a nova imagem selecionada, clique no ícone Union na barra de ferramentas ou 
selecione Shape > Union. 
 
18. No Editor de Propriedade, clique no ícone Edit da propriedade Stroke Paint e 
selecione o ícone No Paint. Isso remove o contorno. 
 
 
 
 
©2019 Inductive Automation Página 142 de 397 
templates 
19. Em seguida, clique no ícone de vinculação ao lado da propriedade Fill Paint. 
20. Selecione o tipo propriedade de vinculação e, em seguida, selecione a Tag HOA no 
MotorData UDT. 
 
Ao associar uma propriedade de cor a uma Tag, você pode definir uma cor para cada 
estado da Tag na Number-to-Color Translation. Vamos definir três opções de cores. 
21. Clique no ícone Add new row para que haja três linhas. 
22. Clique duas vezes na área de cores para o valor 0 e selecione uma cor vermelha da 
paleta. Defina o valor 1 para verde e o valor 2 para amarelo. 
 
 
 
 
©2019 Inductive Automation Página 143 de 397 
templates 
23. Precisamos garantir que cada cor seja semitransparente para que você possa ver o 
símbolo real por trás dela. Clique na roda de cores e defina o canal alfa na parte inferior 
para 40. Pressione a tecla Enter se você digitar o valor. 
24. Clique no ícone x no canto superior direito e clique em OK para enviar a alteração de 
cor. 
25. Podemos repetir este processo para os outros dois valores: 1=Verde, 2=Amarelo. 
 
26. Clique em OK quando terminar com as cores. O template agora se parece com isso: 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 144 de 397 
templates 
Observe que quando você clicou em OK, o gráfico ficou preto. Isso ocorre porque a 
propriedade MotorUDT não está vinculada. Nós o associamos a uma Tag quando criamos 
uma instância do template. A definição do template aqui é genérica e não aponta para 
nada. Você pode ver isso se visualizar a propriedade UDT do motor. 
 
Para manter os dois componentes da imagem exatamente um em cima do outro, 
podemos agrupá-los. 
27. Selecione ambos os componentes no Project Browser. 
28. Clique na opção Component > Group na barra de menu ou no ícone Combine na 
barra de ferramentas. 
 
Agora eles são um componente. Você pode verificar isso no Project Browser. 
 
 
 
 
 
 
©2019 Inductive Automation Página 145 de 397 
templates 
 
Use o Template na Janela 
Agora que o template foi criado, podemos usá-lo em uma janela. Existem duas maneiras 
de trazer um template na janela: 
• Arraste o template para a janela. 
• Arraste a Tag para a janela e selecione o template (somente se o destino para soltar 
estiver selecionado). 
Como marcamos a caixa Soltar destino, vamos arrastar uma Tag para a janela. 
1. A partir do Tag Browser, arraste o Tag Motor 1 para a janela Componentes. 
O Ignition sabe que há apenas um template com esse tipo, então ele o cria 
automaticamente para você. Se houver mais de um template, o Ignition permitirá que 
você selecione o template em uma lista suspensa. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 146 de 397 
templates 
 
2. Agora arraste mais motores na janela. Você pode arrastar o template do Project 
Browser e então arrastar Tags para a instância do template. 
 
 
 
 
©2019 Inductive Automation Página 147 de 397 
templates 
Agora que temos alguns Motores em uma janela, queremos poder controlar o estado 
HOA de cada um. Vamos fazer uma alteração rápida no template. 
1. Abra a definição do template novamente. 
2. Para adicionar um botão HOA ao template, arraste um componente Multi-State 
Button da Paleta de Componentes. 
3. Defina a propriedade Display Style como Row. 
4. Estique o componente para que fique longo e curto para que os botões fiquem 
bonitos. 
O Botão de Vários Estados tem algumas propriedades especiais para fazê-lo funcionar. 
Precisamos vincular as propriedades Control Value e Indicator Value a HOA Tag da 
propriedade UDT. 
5. Clique no ícone de vinculação da propriedade Valor do indicador e selecione o tipo de 
vinculação de Propriedade. 
6. Selecione a tag MotorData -> HOA e clique no botão OK. Agora o Botão de Vários 
Estados mostrará o valor atual do HOA. 
7. Para que o escrever de volta funcione ao clicar em um botão, precisamos vincular a 
propriedade Valor de Controle. Faça a mesma ligação na58 
Anatomia de Uma Janela .............................................................................................................................................................. 60 
Adicionando uma Janela à Navegação ................................................................................................................................... 62 
CAPÍTULO 6 .................................................................................................................... 66 
Propriedades e Veiculações do Componente Vision .......................................................................................... 66 
Configurando Componentes ...................................................................................................................................................... 67 
Arraste Componentes Para a Janela ....................................................................................................................................... 68 
Entendendo o Layout do Componente .................................................................................................................................. 69 
Ferramentas de Desenho............................................................................................................................................................. 77 
Propriedades do Componente .................................................................................................................................................. 85 
Noções Básicas Sobre Vinculação de Propriedade........................................................................................................... 86 
CAPÍTULO 7 .................................................................................................................... 92 
Tags....................................................................................................................................................................................... 92 
Principais Benefícios das Tags .................................................................................................................................................. 93 
Valores das Tags .............................................................................................................................................................................. 93 
Criando Tags ..................................................................................................................................................................................... 94 
Propriedades das Tags ................................................................................................................................................................. 96 
Arrastando Tags para Janelas e Componentes .................................................................................................................. 98 
Tipos de Tags .................................................................................................................................................................................. 104 
Criando Tags de Memória ......................................................................................................................................................... 105 
Criando uma Tag Derivada ....................................................................................................................................................... 106 
Sistemas de Tags Client e Gateway ....................................................................................................................................... 110 
Sistemas de Tags ........................................................................................................................................................................... 111 
Tags do Cliente Vision ................................................................................................................................................................. 111 
Grupos de Tags ............................................................................................................................................................................... 112 
CAPÍTULO 8 .................................................................................................................. 119 
Tags Complexas (UDTs) ............................................................................................................................................. 119 
Terminologia ................................................................................................................................................................................... 120 
Criando Tags Complexas (UDTs) ........................................................................................................................................... 120 
Criando instâncias de UDT........................................................................................................................................................ 125 
Substituindo Instâncias UDT ................................................................................................................................................... 131 
Aninhamento de UDTs e Herança .......................................................................................................................................... 131 
CAPÍTULO 9 .................................................................................................................. 132 
Templates ........................................................................................................................................................................ 132 
Template Principal e Instâncias de Template .................................................................................................................. 133 
Parâmetros do Template ........................................................................................................................................................... 133 
Criando um Template ................................................................................................................................................................. 135 
Criando Vinculações de Tags Indiretas ............................................................................................................................... 149 
 
 
©2019 Inductive Automation Página 4 de 397 
CAPÍTULO 10 ................................................................................................................ 155 
Histórico de tags ........................................................................................................................................................... 155 
Registre os Dados ......................................................................................................................................................................... 156 
Registro de Dados Para o Motor............................................................................................................................................. 159 
Armazenamento de Dados ........................................................................................................................................................ 161 
CAPÍTULO 11 ................................................................................................................ 162 
Exibir Dados do Histórico.......................................................................................................................................... 162 
Criar um Gráfico ............................................................................................................................................................................ 163 
Adicionar Subplots ao Gráfico .................................................................................................................................................etapa anterior, mas antes de 
clicar em OK, marque a caixa Bidirectional. Isso garante que, quando a propriedade 
Valor de Controle for alterada, a vinculação será gravada de volta na Tag HOA. 
 
 
 
 
 
©2019 Inductive Automation Página 148 de 397 
templates 
8. Clique OK. Você pode precisar mover os componentes um pouco para que todos se 
encaixem. 
 
Agora vamos voltar para a janela Componentes. Você notará que todos os templates 
foram atualizados para incluir o botão HOA. 
 
Agora você tem um template que pode controlar o motor. 
 
 
 
 
 
©2019 Inductive Automation Página 149 de 397 
templates 
Criando Vinculações de Tags Indiretas 
As Vinculações Indiretas de tags são uma parte importante do Ignition e do sistema de 
vinculação. Isso significa que a Tag que está vinculada pode ser alterada com base no 
valor de outra coisa. Por exemplo, você pode fazer uma seleção em uma lista suspensa 
para escolher quais Tags serão exibidas na tela. 
Temos várias Tags UDT de motor e um template de motor. Vamos criar uma lista 
suspensa com um template de motor anexado. A lista suspensa oferece a opção de qual 
motor observar. As tags do motor ficam assim: 
Motors/Motor 1 
Motors/Motor 2 
Motors/Motor 3 
Motors/Motor 4 
A única diferença entre cada motor é o número. 
Criar um Template de Motor Indireto 
1. No Designer, abra a janela Componentes. 
2. No Project Browser, em templates, arraste o template do Motor. 
3. Na guia Input da Paleta de Componentes, arraste um componente Dropdown List. 
Agora precisamos configurar as opções para a lista suspensa no Property Editor. O 
componente suspenso tem a propriedade Data, que é um conjunto de dados. Existem 
várias maneiras de configurar o conjunto de dados, mas o padrão é usar um integer e 
uma coluna de string. O formato é o seguinte: 
Duas Colunas [Integer, String] (Default) 
201 maçãs 
202 laranjas 
203 bananas 
• A Dropdown List exibe os valores da segunda coluna. 
 
 
 
 
©2019 Inductive Automation Página 150 de 397 
templates 
• O Selected Value representa o valor da primeira coluna. 
• O Selected String Value selecionado representa o valor da segunda coluna. 
• A Selected Label representa o valor da segunda coluna. 
4. Selecione o componente Dropdown List e clique no ícone de exibição Dataset View ao 
lado da propriedade Data. 
5. No lado direito da janela Dataset Viewer, clique no ícone Add Row quatro vezes 
para adicionar quatro linhas. 
6. Defina as linhas com os seguintes valores: 
Value Label 
1 Motor 1 
 2 Motor 2 
 3 Motor 3 
 4 Motor 4 
 
7. Clique em OK para enviar suas alterações. 
8. Defina a propriedade Selected Value como 1. Observe os valores para Selected 
String Value e o Selected Label são preenchidos para você. 
 
 
 
 
 
 
©2019 Inductive Automation Página 151 de 397 
templates 
 
Queremos usar o Valor Selecionado em uma ligação indireta no template para 
selecionar dinamicamente qual motor observar. 
9. Selecione o novo template de Motor na janela e vincule a propriedade MotorData UDT 
usando um tipo de vinculação de Tag Indireta. 
 
A maneira mais fácil de usar a vinculação indireta de Tags é selecionar uma Tag como 
ponto de partida e torná-la dinâmica. 
 
 
 
 
©2019 Inductive Automation Página 152 de 397 
templates 
10. Clique no ícone de Tag à direita do Caminho de Tag Indireta e selecione a Tag 
Motor 1 como referência. Certifique-se de não selecionar uma das tags na instância 
Motor 1 UDT. 
 
A lista suspensa contém o número do motor a ser observado. Portanto, precisamos 
vincular o número da Tag do Motor ao valor selecionado do menu suspenso. 
11. Destaque o número 1 (em Motores/Motor1) no Caminho de Tag Indireta e exclua-o. 
Em seguida, clique no ícone Insert Property à direita para trazer a propriedade 
Selected Value do menu suspenso. Certifique-se de deixar o espaço entre Motor e 1. 
 
 
 
 
 
 
©2019 Inductive Automation Página 153 de 397 
templates 
 
12. O Ignition insere {1} e o vincula ao menu suspenso. Isso significa que o Ignition 
substitui {1} pelo valor da lista suspensa permitindo selecionar qual Tag do motor 
observar. 
 
 
 
 
©2019 Inductive Automation Página 154 de 397 
templates 
13. Defina a caixa de seleção Bidirecional na parte inferior e clique em OK. 
Agora você pode experimentá-lo, e clicar no botão HOA mudará sua Tag valores. 
14. Salve seu projeto e abra o Cliente. 
Você pode alterar a lista suspensa e selecionar um motor diferente. 
 
 
É tão fácil quanto configurar a indireção da Tag. Você pode aplicar isso a pop-ups ou em 
qualquer lugar no Ignition. 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 155 de 397 
Capítulo 10 
 
Histórico de tags 
 
 
 
 
 
 
Armazenar histórico no Ignition é poderoso e simples de usar. Existem duas 
maneiras principais de armazenar o histórico: usando o Histórico de Tags ou 
registrando dados com o módulo SQLBridge. Este capítulo se concentra no 
Histórico de Tags. 
O registro de dados é fácil de fazer com o Histórico de Tags. Uma vez que você 
tenha uma conexão com o banco de dados, tudo que você faz é definir as Tags 
para armazenar o histórico e o Ignition cuida do trabalho. O Ignition cria as 
tabelas, registra os dados e mantém o banco de dados. 
Os valores históricos de Tags passam pelo mecanismo de armazenamento e 
encaminhamento antes de serem armazenados na conexão de banco de dados 
associada ao provedor de histórico. 
Os dados são armazenados de acordo com seu tipo de dados diretamente em uma 
tabela no banco de dados SQL, juntamente com sua qualidade e um carimbo de 
tempo de resolução de milissegundos. Os dados são armazenados apenas na 
mudança, de acordo com o modo de valor e as configurações de banda morta em 
cada Tag, evitando assim o armazenamento de dados duplicados e 
desnecessários. O armazenamento das estatísticas de execução do Grupo de Tags 
garante a integridade dos dados. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 156 de 397 
Histórico de Tags 
Registre os Dados 
Vamos registrar as Realistics Tags. 
1. Selecione cada Tag na pasta Realistics, clique com o botão direito e selecione Edit 
Tag. 
 
A janela Editor de tags é exibida. 
Nesta janela, você pode editar a Tag e alterar o nome, tipo de dados, opções de escala, 
metadados, permissões, histórico e alarmes. 
Na seção History das propriedades da Tag, defina a Propriedade de History Enabled 
como true. Você verá mais propriedades aparecerem. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 157 de 397 
Histórico de Tags 
 
3. Selecione sua conexão com o banco de dados no menu suspenso do provedor de 
armazenamento. 
A propriedade Modo de Amostra determina a frequência com que os valores da Tag são 
armazenados no banco de dados. Usaremos a opção On Change, o que significa que o 
Histórico de Tags corresponderá à taxa de execução do Grupo de Tags principal da Tag. 
Nota: Geralmente em um projeto real, você deseja ver dados ao vivo em uma taxa rápida 
e armazenar o histórico em uma taxa mais lenta. Para isso, você pode alterar o Modo de 
Amostra para Grupo de Tags e selecionar Histórico de Grupo de Tags, ou Periódica e inserir 
uma Taxa de Amostra estática. É preferível usar um Histórico de Grupo de Tags caso você 
queira alterar várias Tags de uma vez, posteriormente. 
 
 
 
 
 
©2019 Inductive Automation Página 158 de 397 
Histórico de Tags 
 
 
4. Clique em OK. Agora no Tag Browser, à direita de cada Tag Realistic que está 
armazenando o histórico, um ícone de histórico de tags aparece informando que está 
configurado. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 159 de 397 
Histórico de Tags 
 
Se você olhar em seu banco de dados, verá todas as tabelas e dados que o Ignition criou 
para você. 
Vamos também registraros dados dos motores que criamos. Como criamos o motor a 
partir de um UDT, só precisamos editar o UDT e não cada instância individual. 
Registro de Dados Para o Motor 
Vamos registrar dados para o Motor UDT. 
1. Clique com o botão direito no Motor UDT e selecione Edit Tag. 
2. No Editor de Tag, clique na Tag AMPS e, em Histórico, defina Permitir Histórico como 
true. 
3. Defina o seguinte no editor de tags e clique em Aplicar: 
Provedor de Armazenamento: MSSQL 
Modo de Amostra: On Change 
4. Faça o mesmo para a etiqueta HOA. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 160 de 397 
Histórico de Tags 
 
5. Clique em OK para salvar. 
É isso. Agora, cada instância do motor inicia automaticamente o registro de dados. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 161 de 397 
Histórico de Tags 
 
Armazenamento de Dados 
O Ignition usa um algoritmo para pré-compactar os dados (cortando valores 
desnecessários). 
Enquanto os usuários avançados podem alterar a tabela de acordo com seu banco de 
dados para ser mais eficiente (por exemplo, usando um mecanismo compactado), o 
Ignition não realiza compactação binária nem criptografa os dados de forma alguma. 
O Ignition usa o algoritmo Sliding Window para compactar dados. Há mais informações 
sobre isso no manual do usuário, mas basicamente isso significa que o Ignition verificará 
cada novo ponto de dados possível para ver se ele se encaixa na tendência dos últimos 
pontos de dados (com base na Deadband). Se for adequado, o Ignition não armazena os 
novos dados. Se o novo ponto de dados estiver fora da tendência recente, o ponto de 
dados anterior será armazenado e uma nova tendência recente será iniciada. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 162 de 397 
Capítulo 11 
 
Exibir Dados do Histórico 
 
 
 
 
 
 
 
Agora veremos as informações que registramos com o Histórico de Tags. Para 
isso iremos: 
• Criar um gráfico 
• Adicionar Subplots ao gráfico 
• Permitir que os usuários alterem o modo gráfico (tempo real ou histórico) em 
tempo de execução 
• Permitir que os usuários adicionem e removam canetas em tempo de execução 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 163 de 397 
Exibir Dados Históricos 
Criar um Gráfico 
Antes de criarmos um gráfico para dados históricos, precisamos de uma nova janela para 
exibi-lo. 
1. Crie uma janela chamada History duplicando sua Janela de Componentes e 
renomeando-a. 
2. Exclua todos os componentes da janela, exceto os componentes do cabeçalho. 
3. Altere o text do rótulo do cabeçalho para History e defina uma nova imagem. 
4. Adicione um link à sua janela History na tela Navigation como na janela anterior. Abra 
a janela Navigation, clique com o botão direito do mouse no componente Tab Strip, 
selecione o personalizador e adicione uma nova guia apontada para esta janela. 
Agora podemos adicionar nosso gráfico. 
1. Na guia Gharts da Paleta de componentes, arraste o componente Easy Chart. 
 
2. Clique com o botão direito do mouse no gráfico e defina o layout como Anchored e 
selecione todos os 4 lados. Desta forma, ele irá esticar quando o Cliente o fizer. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 164 de 397 
Exibir Dados Históricos 
 
Podemos adicionar as Tags ao gráfico da mesma forma que criamos as janelas de status 
e controle, ou seja, arrastando e soltando. 
3. Arraste as primeiras cinco Realistics Tags do Tag Browser para o Easy Chart. 
 
 
 
 
©2019 Inductive Automation Página 165 de 397 
Exibir Dados Históricos 
As Tags são exibidas na Janela de Histórico, mas como acabamos de começar a registrar 
os dados, não aparecem muitos dados. 
4. Para mostrar mais dados, vá ao Property Editor e altere a propriedade Modo Gráfico 
do Easy Chart para Realtime. Isso mostrará os 5 minutos mais recentes em vez de um 
intervalo de tempo. 
 
Agora, vamos configurar o gráfico um pouco mais adicionando Subplots. 
Adicionar Subplots ao Gráfico 
1. Clique com o botão direito do mouse no gráfico e selecione Customizers > Easy 
Chart Customizer. 
 
 
 
 
©2019 Inductive Automation Página 166 de 397 
Exibir Dados Históricos 
A janela Easy Chart Customizer é exibida. Aqui você pode alterar as canetas, eixos, 
Subplots e grupos dinâmicos. 
2. Para adicionar outra Subplot, clique na guia Subplots e clique no ícone Add. Existem 
dois gráficos agora e você pode atribuir um Peso Relativo para cada enredo. 
3. Faça o Plot 1 três vezes maior que o Plot 2, definindo o peso relativo de Plot 1 para 
um valor de 3 e Plot 2 para um valor de 1. 
 
Em seguida, vamos tornar nossa Tag Realistic0 parte do Plot 2. 
4. Vá para a guia Pens, selecione Realistic0 e clique no ícone Edit pen à direita. 
5. Na janela Edit Caneta, altere o Subplot para 2 e clique em OK. 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 167 de 397 
Exibir Dados Históricos 
 
Personalize o Easy Chart 
O componente Easy Chart tem muitas propriedades que alteram a forma como ele se 
comporta e parece. Por exemplo, se você definir a propriedade Aplicação Automática como 
verdadeiro, não precisará clicar no botão Aplicar sempre que selecionar ou desmarcar uma 
caneta. O componente Easy Chart também possui muitas funções integradas, como salvar 
os dados no Excel, imprimir e muito mais. 
Você pode fazer alterações no componente Easy Chart em tempo de execução por meio 
da associação. Por exemplo, você pode alterar o modo (entre Histórico e Tempo real) em 
uma lista suspensa. 
Alterar o Modo de Gráfico (tempo real ou histórico) em 
Tempo de Execução 
1. Arraste um componente Dropdown da guia Input da Paleta de componentes. 
 
 
 
 
 
©2019 Inductive Automation Página 168 de 397 
Exibir Dados Históricos 
2. Defina o layout do componente suspenso como Anchored para que ele não se mova 
sobre o Easy Chart no cliente. 
3. Para definir os itens a serem selecionados, clique no ícone Dataset View à direita da 
propriedade Dados. 
4. Adicione duas linhas clicando no ícone Add Row. 
5. Defina os dados com os seguintes valores: 
1 Historical 
2 Realtime 
 
O valor é usado nos bastidores e o rótulo é exibido ao usuário em tempo de execução. 
6. Clique no ícone Preview no Designer para interagir com a janela como se fosse um 
cliente. 
Você pode então ver as opções na lista suspensa. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 169 de 397 
Exibir Dados Históricos 
 
Depois de selecionar uma opção, os valores são exibidos como propriedades na lista 
suspensa. 
 
7. A propriedade Valor Selecionado permite alterar o modo do Easy Chart. Coloque o 
Designer de volta no modo Design e selecione o Easy Chart. 
8. No Property Editor, clique no ícone de vinculação à direita da propriedade Modo de 
Gráfico. 
9. Selecione o tipo de vinculação de Propriedade. 
10. Selecione a propriedade Dropdown -> Selected Value e clique em OK. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 170 de 397 
Exibir Dados Históricos 
 
Agora, em tempo de execução, o usuário pode alterar o modo do gráfico em tempo real. 
Usando uma Tag Browse Tree com o Easy Chart 
O componente Tag Browse Tree permite ao usuário visualizar e interagir com os Tags do 
Ignition de um Cliente. Por exemplo, o usuário pode selecionar e arrastar Tags Históricas 
da Tag Browse Tree para o Easy Chart para exibir o histórico de Tags. 
Adicionar um Componente de Tag Browse Tree 
1. Na Paleta de Componentes, arraste o componente Tag Browse Tree para o lado 
esquerdo da janela. 
2. Defina o Layout neste componente como Ancorado e selecione apenas superior, 
inferior e direito. 
Como estamos usando a Tag Browse Tree em combinação com o Easy Chart, queremos 
apenas mostrar as Tags que foram historiadas. Uma opção seria definir o Tag Tree Mode 
para Historical Tag Tree,que usaria nossos Provedores de Tags Históricas para conduzir 
a árvore. No entanto, temos uma maneira diferente em mente. 
3. Para filtrar as Tags em tempo real, desmarque Include Realtime Tags no Property 
Editor da Tag Browse Tree. 
 
 
 
 
©2019 Inductive Automation Página 171 de 397 
Exibir Dados Históricos 
 
4. No Tag Browser, encontre a pasta Realistic dentro da pasta GenSim. Em seguida, 
clique com o botão direito do mouse na pasta e selecione Copy Tag Path. 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 172 de 397 
Exibir Dados Históricos 
 
 
 
 
5. Cole este caminho de Tag na propriedade Root Node Path no componente árvore de 
navegação de tag. 
Isso filtra o componente para exibir apenas as Tags e subpastas dentro da pasta 
Realistic. 
 
 
 
 
 
 
©2019 Inductive Automation Página 173 de 397 
Exibir Dados Históricos 
 
As Tags dentro da pasta Realistic agora são exibidas e o ícone Histórico de Tags ao lado 
das Tags mostra que são Tags Históricas. 
 
6. Configure o Designer para o modo Preview e, em seguida, selecione e arraste as 
Realistics Tags adicionais (5-9) da Tag Browse Tree para o Easy Chart. 
As tags são adicionadas como canetas e os dados históricos são exibidos no Easy Chart. 
 
 
 
©2019 Inductive Automation Página 174 de 397 
Exibir Dados Históricos 
 
Criando Tabelas 
Além da exibição gráfica dos dados do histórico, também podemos mostrar os dados 
registrados em tabelas. 
Exibir Dados Históricos em Formato Tabular 
1. Arraste o componente Table para a parte inferior da janela do Histórico. 
 
2. Defina o Layout como Anchored e selecione apenas os botões esquerdo, direito e 
inferior. 
 
 
 
 
 
©2019 Inductive Automation Página 175 de 397 
Exibir Dados Históricos 
A tabela exibe informações por meio da propriedade Data Dataset. Uma propriedade de 
conjunto de dados pode ter várias colunas e linhas de dados. Ao vincular a uma 
propriedade de conjunto de dados, o Ignition fornece três tipos extras de vinculação: 
• Histórico de tags 
• Atualização de Células 
 • Funções 
O tipo de vinculação do histórico de tags permite trazer de volta os dados do histórico 
para qualquer componente de várias maneiras. 
3. Vincule a propriedade Data usando o tipo de vinculação Histórico de Tags. 
 
4. Na caixa Available Historical Tags, navegue até a pasta com as Tags que você está 
registrando historicamente. 
 
 
 
 
©2019 Inductive Automation Página 176 de 397 
Exibir Dados Históricos 
 
5. Selecione várias das Realistics Tags na caixa Available Historical Tags e arraste-
as para a caixa Selected Historical Tags à direita. 
Isso permite que o Ignition saiba de quais Tags você deseja consultar. 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 177 de 397 
Exibir Dados Históricos 
 
6. Na janela Vinculação de Propriedade, defina as seguintes opções: 
Date Range: Realtime 
Most Recent: 30 sec (para trazer de volta os 30 segundos mais recentes de dados para 
as Realistics Tags) 
Aggregation Mode: Time-weighted Average 
Return Format: Wide (o valor padrão) 
Sample Size: Fixed - 15 
Polling Mode: Off (para que seja executado apenas uma vez) 
O intervalo de datas, o modo de agregação, o tamanho da amostra, o formato de 
retorno e as opções de pesquisa permitem especificar como você deseja recuperar o 
histórico das tags selecionadas. Segue uma descrição dessas configurações e suas 
opções. 
 
 
 
 
©2019 Inductive Automation Página 178 de 397 
Exibir Dados Históricos 
 
7. Clique em OK. 
Agora você pode ver os dados brutos voltando para a tabela. 
 
 
 
 
 
©2019 Inductive Automation Página 179 de 397 
Exibir Dados Históricos 
Configurações na Página de vinculação de Propriedade 
Date Rage - O intervalo de datas permite que você escolha uma consulta histórica ou em 
tempo real. 
• As consultas históricas usam um intervalo de datas que deve ser vinculado a outros 
componentes na tela, normalmente um intervalo de datas ou um par de componentes de 
calendário. 
• As consultas em tempo real sempre exibem um intervalo que termina com a hora atual, 
portanto, tudo o que você especificou é uma duração, por exemplo, 30 segundos, que são 
os últimos 30 segundos até a hora atual. 
Aggregation Mode - você usa o modo de agregação quando os dados são mais densos 
do que o solicitado. Isso acontece ao usar tamanhos de retorno fixos ou de intervalo, pois 
geralmente há vários valores brutos para o intervalo de janela definido. Outra operação 
comum é definir o tamanho do retorno como 1 para usar essas funções agregadas para 
fins de cálculo. 
• Min/Max retorna duas entradas por intervalo de tempo, as entradas min e max. 
• Time-weighted Average retorna o valor médio ponderado no tempo de todas as 
amostras nessa fatia de tempo. 
• Closest Value retorna o valor real mais recente no final da janela. 
• Basic Average retorna a média matemática simples ((V1+ V2+...+ Vn) /n) dos valores. 
Return Format - O Formato de Retorno permite escolher o formato que os dados do 
histórico de tags retornam em um conjunto de dados. 
• Wide retorna as colunas do dataset na seguinte ordem: timestamp é a primeira coluna 
e cada coluna subsequente é o nome da Tag. O formato Wide é compatível com os gráficos. 
• Tall retorna as colunas do conjunto de dados na seguinte ordem: a primeira coluna é o 
caminho para a Tag, seguida por uma coluna para valor, depois qualidade e, finalmente, 
carimbo de data/hora. O formato Tall não é compatível com os gráficos. 
Sample Size - O tamanho da amostra determina como os dados subjacentes são 
agregados e/ou interpolados. 
• Natural calcula um tamanho de retorno com base na taxa dos grupos de Tags históricas 
de registro. Por exemplo, se você consultar 1 hora de dados para um log de classe de 
varredura a cada minuto, o tamanho natural do retorno será 60. 
 
 
 
 
©2019 Inductive Automation Página 180 de 397 
Exibir Dados Históricos 
• On Change significa que você receberá uma entrada sempre que qualquer uma das 
Tags em consideração for alterada. 
• Fixed especifica o número de linhas no conjunto de dados resultante. 
• Interval permite definir um tamanho de janela em vez de definir um tamanho de retorno 
fixo. Por exemplo, se você quiser trazer de volta um ponto de dados a cada 15 minutos, 
poderá usar o tamanho da amostra do intervalo. 
Polling Options - A pesquisa tem três opções de modo de binding. 
• Off executa uma vez quando a janela é aberta e só executa novamente se for alterada. 
O exemplo típico de uma vinculação que pode ser alterada é uma vinculação de consulta 
SQL em que ela usa a notação de chave ({}) para incluir informações dinâmicas dentro 
da consulta. Quando essas informações dinâmicas alteram a consulta, ela é executada 
novamente. 
• Relative é executada em uma taxa regular que é baseada em um delta da taxa de 
pesquisa básica do projeto. Isso geralmente é uma boa ideia para que você possa acelerar 
ou desacelerar o sistema de polling de um cliente Integer em um só lugar. 
• Absolute é executada em uma taxa absoluta que você especifica em vez de uma 
baseada na taxa relativa. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 181 de 397 
Capítulo 12 
 
Transaction Groups 
 
 
 
 
 
 
Transaction Groups é o coração do módulo Ignition SQL Bridge. Transaction 
Groups são unidades de execução que executam uma variedade de ações, como 
armazenar dados históricos, sincronizar valores de banco de dados com itens OPC 
ou carregar valores de receita. Uma ampla variedade de tipos de grupos, tipos de 
itens e opções significa que os Transaction Groups podem ser configurados para 
realizar muitos tipos diferentes de tarefas. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 182 de 397Transaction Groups 
O Ciclo de Execução da Transação 
Todos os Transaction Groups seguem um ciclo de execução semelhante. A avaliação básica 
pode ser diferente, mas o ciclo geral é o mesmo. As ações principais estão em negrito, 
mas os ciclos de execução realizam as seguintes etapas: 
1. O timer é executado, o grupo entra em execução. 
2. Está pausado? Quebre a execução. 
3. O cluster é mestre? Se não, interrompa a execução. 
Os Transaction Groups são executados apenas no mestre. 
4. Avalie os itens "run always": itens OPC, referências de tags e itens de expressão 
configurados para ignorar o acionador. 
5. Avalie o trigger. Se houver um trigger definido, mas não estiver ativo, interrompa a 
execução. 
6. Avaliar itens "acionados": Itens de expressão não configurados para ignorar o 
acionador. 
7. Se aplicável, leia os valores do banco de dados. 
8. Faça uma comparação entre os itens e seus destinos. 
9. Efetuar qualquer escrita em outras Tags ou Banco de Dados que resultem da execução. 
10. Reportar alarmes. 
11. Reconheça o trigger, se aplicável. 
12. Escreva o valor do handshake, se aplicável. 
Tipos de Transaction Groups 
Existem quatro tipos de Transaction Groups que você pode usar em seus projetos. Cada 
tipo oferece uma funcionalidade diferente, são as seguintes: 
• Histórico; 
• Padrão; 
• Bloquear dados; 
• Procedimento armazenado. 
 
 
©2019 Inductive Automation Página 183 de 397 
Transaction Groups 
Grupo Histórico 
O grupo histórico facilita o registro rápido de dados históricos em um banco de dados SQL. 
O grupo histórico insere registros de dados em um banco de dados SQL mapeando itens 
para colunas. Com suporte total para acionamento, itens de expressão, medidores de 
horas e eventos e muito mais, você pode configurar transações históricas complexas. 
Ao contrário do grupo padrão, o grupo histórico não pode atualizar linhas, apenas inserir. 
Além disso, ele não pode escrever de volta para itens, exceto para redefinições de gatilho 
e handshakes. 
Grupo Padrão 
O grupo padrão é chamado assim porque é um grupo flexível e de uso geral que pode ser 
adaptado a diversas situações. O template de dados é baseado em linhas, com 
mapeamento de itens para colunas e os dados correspondentes a uma linha específica de 
uma tabela. 
O grupo padrão contém itens que podem ser mapeados para o banco de dados ou usados 
internamente para recursos como acionamento ou handshakes. Os itens mapeados para 
o banco de dados têm como destino uma coluna específica de uma única linha específica, 
escolhida de acordo com as configurações do grupo. Os itens podem ser mapeados de 
forma unidirecional ou bidirecional em que o valor do banco de dados e o item serão 
sincronizados. 
O grupo também pode inserir novas linhas em vez de atualizar uma linha específica. Desta 
forma, os dados podem ser inseridos para fins históricos com base em um temporizador, 
com um gatilho opcional. 
Grupo de Dados do Bloco 
O grupo de dados do bloco é assim chamado porque grava "blocos" de dados em uma 
tabela, consistindo em várias linhas e colunas. 
Um grupo de dados de bloco contém um ou mais itens de bloco. Cada item de bloco é 
mapeado para uma coluna na tabela do grupo. Em seguida, define qualquer número de 
valores (itens OPC ou Tag) que serão escritos verticalmente como linhas sob aquela 
coluna. 
Os grupos de blocos são muito eficientes e podem ser usados para armazenar grandes 
quantidades de dados no banco de dados. Por exemplo, 100 colunas com 100 linhas cada, 
ou seja, 100.000 pontos de dados que geralmente levam apenas algumas centenas de 
milissegundos para serem gravados, dependendo do banco de dados. 
 
 
 
©2019 Inductive Automation Página 184 de 397 
Transaction Groups 
Assim como o grupo padrão, o grupo de blocos pode inserir um novo bloco ou atualizar o 
primeiro, o último ou um bloco personalizado. Além disso, o grupo pode ser definido para 
inserir apenas as linhas que foram alteradas no bloco. 
Grupo de Procedimentos Armazenados 
O grupo de procedimentos armazenados é semelhante aos outros grupos em termos de 
execução, acionamento e configuração de itens. A principal diferença é que, 
diferentemente dos outros tipos de grupo, o destino não é uma tabela de banco de dados, 
mas sim um procedimento armazenado. 
Os itens do grupo podem ser mapeados para parâmetros de entrada ou saída do 
procedimento. Eles também podem ser vinculados a parâmetros de saída, caso em que o 
valor retornado do procedimento será gravado no item. Os itens podem ser vinculados a 
uma entrada e uma saída ao mesmo tempo. 
Configurações Comuns 
A seguir estão as configurações comuns em Transaction Groups: 
• Update Rate - É a frequência com que o grupo é avaliado. Por vários motivos, o grupo 
pode não ser executado durante a avaliação, sendo o motivo mais comum o trigger. 
• Data Source - É a conexão de dados a ser usada para o grupo. Pode ser "Padrão", que 
usará a conexão padrão para o projeto. 
• Update Mode - Para grupos que o suportam, define o padrão de como os dados se 
movem em relação a seus destinos. 
• Store Timestamp - Armazena um carimbo de data/hora junto com os dados sempre 
que o grupo for executado. 
• Store Quality Code - Armazena uma qualidade agregada para o grupo junto com os 
dados regulares. A qualidade agregada é um bit-wise das qualidades dos itens no grupo. 
Agrupar Itens 
Os itens são os elementos principais de um grupo. Quando os itens são executados, os 
valores são então usados pelo grupo (para fins lógicos), por outros itens e para gravar no 
banco de dados. 
Os itens podem ser gravados, do banco de dados ou de outros itens. A seguir estão os 
tipos de itens de grupo: 
 
 
 
 
©2019 Inductive Automation Página 185 de 397 
Transaction Groups 
• Item OPC 
• Item de Expressão (Run-Always) 
• Item de Expressão (On-Trigger) 
• Referência de Tag 
Item OPC 
Um item OPC, se inscreve diretamente em um servidor OPC à taxa do grupo. Executado 
pelo grupo, portanto os alarmes são avaliados quando o grupo é executado. Esses itens 
são executados mesmo quando o trigger não está ativo. 
Item de Expressão (Run-Always) 
Itens de expressão Run-Always são muito parecidos com uma Tag de expressão, eles 
podem ser um valor estático, uma expressão ou uma consulta de banco de dados. Os itens 
de expressão Run-Always são avaliados em cada intervalo de grupo antes que o estado 
do trigger seja avaliado. 
Item de Expressão (On-Trigger) 
Os itens de expressão On-Trigger são os mesmos que os itens de expressão Run-Always, 
exceto que eles são executados somente após o trigger ter sido avaliado e estar ativo. 
Referência da Tag 
Esta é uma referência a uma Tag. Permite que uma Tag seja usada em um grupo como 
qualquer outro tipo de item, exceto que a Tag é avaliada pelo seu Grupo de Tags e não 
pelo grupo. 
É fácil confundir a definição e a finalidade de Tags e itens OPC em Transaction Groups, 
embora tenham benefícios distintos. 
Tags podem ser referenciadas dentro de grupos, porém é fundamental lembrar que elas 
são executadas pelo Ignition Gateway, de acordo com suas classes de scan e independente 
do grupo. Adicionar uma Tag em um grupo é como criar um atalho para essa Tag. 
Triggers 
As configurações do trigger determinam quando um grupo será realmente executado. Eles 
são examinados cada vez que o grupo avalia de acordo com a taxa de atualização do 
grupo. Se passarem, o grupo correrá e realizará sua ação. 
 
 
 
©2019 Inductive Automation Página 186 de 397 
Transaction Groups 
As configurações do trigger são as mesmas para todos os tipos de grupo. Eles estão 
localizados no lado direito da área de trabalho do Grupo de Transações, na segunda guia, 
rotulada Trigger. 
Existem dois tipos de triggers: 
• Executa o grupo apenas na mudança - Async Trigger 
• Executa o grupo em um item específico do grupo 
Handshake 
Os handshakes do grupo também são definidosna guia Trigger. Você pode especificar um 
handshake de sucesso e falha. 
O handshake de sucesso gravará o valor especificado no item fornecido quando o grupo 
tiver concluído todas as outras execuções acionadas sem erro. 
O handshake de falha, por outro lado, será gravado quando a execução do grupo for 
interrompida devido a um erro, como um erro de gravação no banco de dados ou em um 
item. 
Criando um Grupo Histórico Básico 
O grupo histórico facilita o registro rápido de dados históricos em um banco de dados 
SQL. 
Criar um Grupo Histórico 
Vamos criar um grupo histórico que registra algumas Tags no banco de dados a cada 10 
segundos. 
1. No Designer, no Project Browser, selecione o item Transaction Groups. 
 
 
 
©2019 Inductive Automation Página 187 de 397 
Transaction Groups 
A área de trabalho é alterada para a visualização Transaction Groups. 
2. No Project Browser, clique com o botão direito do mouse no item Transaction Groups 
e selecione New Transaction Group > New Historical Group. Um novo grupo é 
adicionado. 
3. Nomeie o grupo como Basic History. 
 
Agora precisamos arrastar as Tags que queremos registrar. 
4. Arraste todas as Tags de Rampa do Tag Browser para a tabela OPC Básico/Grupo de 
Itens. 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 188 de 397 
Transaction Groups 
 
Você notará que cada Tag é mapeado automaticamente para a tabela do banco de dados 
na coluna Nome do destino. Assim, quando o grupo insere um novo registro, o Ignition 
sabe onde colocar os valores. 
Em seguida, precisamos configurar a taxa de grupo e em qual tabela de banco de dados 
efetuar login. 
5. Na guia Ação à direita, defina o seguinte: 
Execution Scheduling: Timer e taxa de grupo de 10 segundos(s). Você pode executar o 
grupo a partir de um temporizador ou de um agendamento. 
Data source: 
Table name: basic_history (O Ignition cria automaticamente a tabela se ela não 
existir.) 
Store timestamp to: marque a caixa 
 
 
 
 
©2019 Inductive Automation Página 189 de 397 
Transaction Groups 
Delete records older than: marque a caixa e defina 90 dias. 
Como os dados estão sendo registrados em uma única tabela, você não deseja que a 
tabela cresça para sempre, portanto, marque a caixa para excluir registros anteriores a 
um período de tempo. 
 
Quase pronto. Precisamos habilitar o grupo e salvar o Designer. 
6. Clique no botão Enabled acima da tabela Basic OPC/Group Items e salve o 
projeto no Designer. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 190 de 397 
Transaction Groups 
 
Você notará que o grupo terá uma seta verde no Project Browser informando que o 
grupo está em execução. 
 
 
Vamos olhar para o banco de dados para ver os dados. 
7. Clique no ícone Database à direita da tabela na guia Action. 
O Database Query Browser é exibido mostrando os dados registrados para distante. 
8. Clique no botão Auto Refresh para ver os novos dados chegarem a cada 10 
segundos. 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 191 de 397 
Transaction Groups 
 
Criando um Grupo de Receitas 
Você pode usar Transaction Groups para registrar dados, bem como para carregar 
receitas no PLC. 
Vamos criar um exemplo completo de um sistema de gerenciamento de receitas. 
Armazenamos todas as nossas receitas no banco de dados e criamos um grupo de 
transações para carregar uma receita no PLC. 
Para criar este sistema de gerenciamento de receitas, realizamos os seguintes passos: 
• Criar uma tabela de banco de dados de todas as receitas. 
• Criar algumas Tags para escrever o valor da receita. 
• Criar um Grupo de Transações padrão para carregar os valores da receita no PLC. 
• Configurar o grupo para gravar em Tags com base no ID da receita. 
Criar Uma Tabela de Receitas no Banco de Dados 
Primeiro, precisamos criar uma tabela de banco de dados de todas as receitas. Cada 
receita tem um id exclusivo, um nome e dois pontos de ajuste (sp1, sp2). Como as 
receitas são armazenadas no banco de dados, você pode ter quantas receitas desejar. 
1. Antes de começarmos, verifique se o modo de comunicação do designer está definido 
como leitura/gravação. 
 
 
 
©2019 Inductive Automation Página 192 de 397 
Transaction Groups 
 
2. Em seguida, abra o menu Ferramentas na parte superior do Designer e selecione 
Navegador de Consulta de Banco de Dados para abri-lo. 
 
3. Na entrada da consulta no Navegador de Consulta de Banco de Dados, insira a 
seguinte consulta e clique em Execute: 
 CREATE TABLE recipes ( 
 id INT PRIMARY KEY, 
recipe_name VARCHAR(50), 
 sp1 FLOAT, 
sp2 FLOAT 
) 
Isso criará a tabela que abrigará nossa lista de receitas e pontos de ajuste. 
 
 
 
 
 
 
©2019 Inductive Automation Página 193 de 397 
Transaction Groups 
 
4. Agora que nossa tabela foi criada, podemos adicionar registros à tabela. Cada linha em 
nossa tabela corresponde a uma única receita. Insira a seguinte consulta no Navegador 
de Consulta de Banco de Dados e clique em Executar: 
INSERT INTO recipes (id, recipe_name, sp1, sp2) 
VALUES (1, 'Recipe 1', 10, 0) 
Sinta-se à vontade para usar quaisquer valores para os campos recipe_name, sp1 e sp2 
que desejar. Depois de executar a consulta, você pode clicar duas vezes na tabela de 
receitas no lado direito do Navegador de Consulta de Banco de Dados e clicar em Executar 
para visualizar a tabela. 
5. Agora que temos uma linha na tabela, podemos usar alguns recursos especiais do 
Navegador de Consulta de Banco de Dados para preencher a tabela com mais registros. 
Na parte inferior do Navegador de Consulta de Banco de Dados, clique no botão Edit. 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 194 de 397 
Transaction Groups 
 
6. Após clicar no botão Edit, clique com o botão direito do mouse na linha existente na 
tabela e clique em Adicionar Linha. Faça isso algumas vezes, para adicionar 4-6 linhas à 
tabela. 
 
7. Depois que as linhas estiverem configuradas, você pode clicar duas vezes nas células 
da tabela para alterar o valor dessa célula. Configure os valores na coluna id para serem 
números sequenciais começando em 1 e insira qualquer nome de receita e pontos de 
ajuste que você desejar. 
 
 
 
 
 
 
©2019 Inductive Automation Página 195 de 397 
Transaction Groups 
 
8. Quando terminar, clique no botão Apply na parte inferior do Database Query Browser. 
Isso confirmará as alterações que você fez na tabela. 
Crie Algumas Tags Para Escrever o Valor da Receita 
Em seguida, precisamos de algumas Tags para gravar esses valores de receita. 
1. NoDatabase Query Browser, expanda a pasta Tags. 
2. Clique com o botão direito do mouse na pasta de Tags, crie uma nova pasta e chame-
a de “Receitas”. 
 
3. Abra o navegador OPC e navegue até a pasta Writeable dentro do dispositivo GenSim. 
4. Arraste os itens OPC WriteableFloat1, WriteableFloat2, WriteableInteger1 e 
WriteableString1 para a pasta Recipe no Tag Browser, para criar Tags correspondentes 
para cada item. 
 
 
 
 
©2019 Inductive Automation Página 196 de 397 
Transaction Groups 
 
5. Renomeie a Tag WriteableString1 para Nome da Receita. 
6. Renomeie a Tag WriteableInteger1 para ID da Receita. 
7. Renomeie a Tag WriteableFloat1 para SP1. 
8. Renomeie a Tag WriteableFloat2 para SP2. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 197 de 397 
Transaction Groups 
 
Criar um Transaction Group Padrão para Atualizar Tags 
Agora que temos nossas Tags, a melhor maneira de carregar os valores da receita é com 
um Standard Transaction Group. 
1. No Designer, no Project Browser, selecione o item Transaction Groups. Seu 
Designer mudará para o espaço de trabalho Transaction Groups. 
2. Clique com o botão direito do mouse no item Transaction Groups e selecione New 
Transaction Group > NewStandard Group 
 
 
 
 
©2019 Inductive Automation Página 198 de 397 
Transaction Groups 
3. Dê ao grupo o nome de Receita. E clique em Criar Grupo. 
 
4. A partir do Tag Browser no lado esquerdo, arraste todas as quatro Tags de receita 
para a tabela OPC Básico/Grupo de Itens do grupo. 
 
Estes são os itens com os quais o grupo precisa trabalhar. 
Em seguida, precisamos configurar o mapeamento entre o banco de dados e os itens. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 199 de 397 
Transaction Groups 
5. Vá para a tabela OPC Básico/Grupo de Itens e selecione o Target Name para cada 
item. Clique uma vez no nome do destino para uma lista suspensa. Defina o seguinte: 
Recipe ID: Read only 
Recipe Name: Recipe_name 
SP1: SP1 
SP2: SP2 
 
Observe que o item ID da Receita está definido como somente leitura, pois só 
precisamos dele como trigger e para a cláusula where. 
6. Na guia Action no lado direito da área de trabalho, defina o seguinte: 
Update rate: 1 sec 
Update mode: DB to OPC (muito importante!) 
Data source: 
Table name: recipes 
Automatically create table: desmarque a caixa 
Use custom index column: marque a caixa e insira id 
Store timestamp to: desmarque a caixa 
 
 
 
 
©2019 Inductive Automation Página 200 de 397 
Transaction Groups 
Table action: update/select e key/value pairs 
Column: id 
Value: ID da receita (use as listas suspensas para preencher os campos) 
 
 
 
 
©2019 Inductive Automation Página 201 de 397 
Transaction Groups 
Aqui o grupo irá rodar a cada 1 segundo pegando os valores da tabela de receitas onde o 
id é igual a Tag da receita atual para anotá-los nas Tags. Neste momento, o grupo é 
executado a cada 1 segundo. No entanto, queremos que o grupo seja executado apenas 
quando a Tag de receita atual for alterada. Para isso precisamos configurar a aba Trigger. 
7. Vá para a guia Trigger e use os seguintes parâmetros: 
Execute this group on a trigger: marque a caixa 
Trigger on item: Recipe ID 
Only Execute once while trigger is active: marque a caixa 
Reset trigger after execution: desmarque a caixa 
TRigger Conditions: Active on value change 
 
 
 
 
 
©2019 Inductive Automation Página 202 de 397 
Transaction Groups 
8. Por fim, clique no botão Enable acima das tabelas e salve o projeto pressionando 
Ctrl-S ou selecionando File> Save no menu. 
O grupo já está funcionando. 
 
Imediatamente SP 1-2 obterá os valores da receita 1 do banco de dados. 
 
Consulte também o Status do grupo, observe o fato dele estar em execução e o número 
total de execuções. 
 
Agora precisamos alterar o valor da Receita Atual para carregar uma nova receita. 
 
 
 
©2019 Inductive Automation Página 203 de 397 
Transaction Groups 
Teste o Grupo de Receitas 
Agora que o trabalho básico está pronto, você pode adicionar janelas a uma interface que 
altera o valor da receita e executa o grupo. Por exemplo: 
1. Vá para o Tag Browser, clique duas vezes no valor para Recipe ID e altere-o para 2. 
Agora o grupo será executado e os valores da receita 2 serão carregados. 
Nota: O Designer precisa estar no modo Read/Write para editar o valor das Tags. 
2. Volte para o espaço do Vision no Designer. 
3. Abra a janela Main Widows -> Empty. 
4. No Navegador de guias, arraste a tag Recipe ID para a janela e selecione um campo 
de texto numérico. 
5. Multi-Selecione as Tags SP1 e SP2 e arraste-as para a tela como componentes do 
Display de LED. 
6. Arraste a Tag do Recipe Name para a janela como uma etiqueta. 
7. Coloque o Designer no modo de visualização e edite o valor no campo de texto numérico 
para carregar uma nova receita. Você pode escolher qualquer valor que exista na coluna 
ID na tabela do banco de dados. 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 204 de 397 
Capítulo 13 
 
Alarmes 
 
 
 
 
 
 
O alarme é um recurso central da plataforma Ignition. Os alarmes são condições 
avaliadas em relação a um ponto de dados numérico específico. Mais comumente, 
os alarmes são configurados em um item de Tag ou Grupo de Transação. 
 
Qualquer número de alarmes pode ser anexado a um ponto de dados. Quando a 
condição de alarme se torna True, o alarme é considerado "ativo". Por exemplo, 
em uma Tag analógica você pode adicionar um alarme de alto nível que fica ativo 
quando o valor da Tag for superior a 50,0. Você pode adicionar outro alarme na 
mesma Tag para um nível alto-alto quando o valor for superior a 75,0. Em uma 
Tag discreta, você pode configurar um alarme para estar ativo quando o valor for 
diferente de zero. Cada alarme tem seu próprio nome, prioridade e muitas outras 
configurações. 
 
Quando a condição de alarme se torna False depois de ter sido True, diz-se que o 
alarme foi "apagado". Cada alarme possui uma zona morta numérica e bandas 
mortas de atraso de tempo que podem afetar quando o alarme fica ativo e 
apagado, isto é para evitar oscilações frequentes de um alarme entre ativo e 
apagado quando o valor está pairando próximo ao setpoint. Em algum momento, 
um operador pode reconhecer um alarme, informando que viu o evento. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 205 de 397 
Alarmes 
O histórico de alarmes é armazenado em qualquer diário de alarme configurado. Eles 
registrarão todas as alterações de estado em cada alarme, bem como reconhecimentos, 
em um banco de dados SQL externo de sua escolha. 
Diários de Alarmes 
Um Diário de Alarmes armazena informações históricas sobre alarmes em um banco de 
dados. Ele pode armazenar dados básicos sobre alarmes ocorridos, como sua origem e 
carimbo de data/hora, juntamente com dados associados ao alarme e os valores das 
propriedades do alarme no momento em que o evento ocorreu. O armazenamento é usado 
pelo componente e também pode ser acessado por meio de funções de script e consultas 
diretas ao banco de dados. 
Notificações de Alarme 
A notificação de alarme é o ato de enviar uma mensagem a um grupo de pessoas quando 
um alarme se torna ativo ou claro. No Ignition, esta funcionalidade é habilitada com o 
Módulo de Notificação de Alarme instalado. 
Propriedades do Alarme 
Cada alarme que você configura tem muitas propriedades que podem ser configuradas. 
Essas propriedades podem alterar o comportamento do alarme. É importante entender o 
que é cada propriedade. 
Nome do Alarme 
Cada alarme tem seu próprio nome. Por exemplo, se a Tag estiver representando um nível, 
o nome do alarme pode ser "Alto Nível". 
Habilitado 
Este booleano determina se o alarme será avaliado ou não. A condição de um alarme 
desabilitado não é avaliada e, portanto, não gera nenhum evento de alarme. 
Prioridade 
Pode afetar como ele aparece em uma tabela de status de alarme ou pode afetar como 
ele é escalado por meio de um pipeline. A seguir estão as prioridades, que podem ser 
referenciadas por seu equivalente Integer em scripts e expressões: Diagnóstico [0], Baixa 
[1], Média [2], Alta [3], Crítica [4]. 
 
 
 
 
©2019 Inductive Automation Página 206 de 397 
Alarmes 
Origem do Timestamp 
Escolhe de onde o timestamp para o evento de alarme deve vir: a hora do sistema de 
quando o evento foi gerado, ou o carimbo de data e hora do valor que disparou o evento. 
Rótulo 
Este valor de string é usado para exibir informações de alarme para os operadores. 
Caminho de Exibição 
Este valor de string é usado para exibir o alarme para os operadores. Se este valor estiver 
em branco, o operador verá o caminho para a Tag em vez disso. Use o caractere de barra 
para separar os níveis de hierarquia no caminho, por exemplo: Área 
Leste/Caldeiras/Caldeira5 
Modo de Confirmação 
Dita como o reconhecimento funciona para o alarme. 
• Unused - A confirmação não é usada para esta Tag. Qualquer alarme gerado será 
automaticamente marcado como reconhecido. 
• Auto - O alarmeé reconhecido automaticamente quando o alarme fica limpo. 
• Manual - O alarme nunca é definido para ser reconhecido pelo sistema, está ativado ao 
usuário para confirmar manualmente os alarmes. 
Notas 
Um local para qualquer documentação de forma livre sobre o alarme que pode ser exibido 
aos operadores. 
Notas de Confirmação Necessárias 
Se esta configuração for True, os operadores não podem reconhecer este alarme sem 
digitar algumas notas. 
Prateleiras Permitidas 
Se esta configuração for True, o recurso de prateleiras está disponível para este alarme. 
 
 
 
 
 
©2019 Inductive Automation Página 207 de 397 
Alarmes 
Modo 
Define a condição que o alarme está avaliando. Seguem as diferentes opções de modo: 
• Equal - Ativo quando o valor da Tag for igual ao setpoint do alarme. 
• Not Equal - Ativo quando o valor da Tag não é igual ao setpoint do alarme. 
• Above Setpoint - Ativo quando o valor da Tag está acima do setpoint do alarme. 
• Below Setpoint - Ativo quando o valor da Tag está abaixo do setpoint do alarme. 
• Between Setpoints - Ativo quando o valor da Tag está entre o menor e maior setpoint. 
Se alguma mudança for True, um evento é gerado para cada mudança de valor entre os 
setpoints. 
• Outside Setpoints - Ativo quando o valor da Tag está fora do menor e maior setpoint. 
Se alguma mudança for True, um evento é gerado para cada mudança de valor fora dos 
setpoints. 
• Out of Rage - Igual aos Setpoints Externos, mas usados Tags Engineering High e 
Engineering Low como os pontos de ajuste alto e baixo. 
• Bad Quality - Ativo se o valor da Tag se tornar uma qualidade ruim, por exemplo, na 
perda de comunicação. 
• Any Change - Gera um evento de alarme toda vez que o valor da Tag for alterado. 
Observe que este alarme nunca estará "ativo" porque cada alarme ativo é emparelhado 
com um evento claro correspondente, instantaneamente. 
• Bit State - Ativo quando um bit específico de uma Tag inteira se torna Alto. Você deve 
especificar qual posição de bit usar, com zero sendo o menor bit significativo. A 
propriedade On Zero é usada para inverter a lógica e alarme quando o bit está baixo. 
• On Condition - Use este modo de forma livre quando desejar especificar a condição 
usando uma expressão ou outra Tag. Para fazer isso, vincule a Propriedade Is Active para 
uma expressão ou Tag apropriada. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 208 de 397 
Alarmes 
Setpoints / Low Setpoints / High Setpoints 
As propriedades do Setpoint são usadas para muitos modos de alarme para especificar a 
faixa para o qual o alarme se torna ativo. 
Inclusive / Low Inclusive / High Inclusive 
As propriedades inclusivas correspondem a um setpoint. Se for true, o intervalo será 
ativado se o valor for exatamente igual ao setpoint, não apenas acima ou abaixo. 
Modo de Deadband 
A seguir estão os dois modos de Deadband: 
• Absolute - A configuração de banda morta é considerada um valor absoluto. 
• Percent - A banda morta real é calculada como uma porcentagem da tag da unidade de 
engenharia. 
Deadband 
O valor de Deadband é interpretado de acordo com o modo. Observe que todos os alarmes 
sejam avaliados somente após a alteração do valor da Tag, o que significa que a própria 
deadband da Tag é considerada a primeira. 
Quando a deadband é positiva, uma condição de alarme ativa precisa ser eliminada no 
setpoint(s) pela quantidade da deadband para que o alarme seja apagado. Por exemplo, 
suponha que você tenha um alarme Between Setpoints com setpoint de 50 e um setpoint 
alto de 70, com uma deadband de 2. O alarme fica ativo se o valor estiver entre 50 e 70, 
mas só será apagado se o valor cair abaixo de 48 ou sobe acima de 72. 
Active Delay 
O tempo, em segundos, antes que o alarme seja considerado ativo após a condição de 
alarme se tornar True. Também conhecido como "deadband de tempo de borda 
ascendente". 
Clear Delay 
O tempo, em segundos, antes de um alarme ativo ser considerado limpo após a condição 
de alarme se tornar False. Também conhecido como "deadband de tempo de borda de 
queda". 
 
 
 
 
©2019 Inductive Automation Página 209 de 397 
Alarmes 
Ack Pipeline 
O nome de um pipeline de notificação de alarme para colocar este alarme quando o alarme 
é reconhecido. 
Active Pipeline 
O nome de um pipeline de notificação de alarme para colocar este alarme quando ele 
torna-se ativo. Esta é a fonte primária para enviar mensagens de alarme. Muitos alarmes 
podem compartilhar um único pipeline. 
Clear Pipeline 
O nome de um pipeline de notificação de alarme para colocar este alarme quando ele fica 
claro. 
Custom Subject 
Uma string que é usada como a linha de assunto de uma mensagem de notificação por 
email. Se em branco, as configurações de mensagem definidas no bloco de notificação que 
enviou o email é usado em seu lugar. 
Custom Message 
Uma string que é usada como o corpo da mensagem de notificação por e-mail deste 
alarme. Se estiver em branco, as configurações de mensagem definidas no bloco de 
notificação que enviou o email é usado em seu lugar. 
Configure um Digital Alarm 
Primeiro vamos criar um alarme onde a Tag entra em alarme quando o valor é igual a 
true. Uma vez que criamos as Tags, é fácil configurar alarmes nessas Tags. 
1. Vá para o Designer. 
2. No Tag Browser, clique com o botão direito do mouse na Tag WriteableBoolean1 na 
Writeable Folder e selecione Edit Tag. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 210 de 397 
Alarmes 
 
3. Role para baixo até a propriedade Alarms e clique no ícone Edit para configurar um 
alarme. 
 
 
 
 
©2019 Inductive Automation Página 211 de 397 
Alarmes 
Podemos configurar um ou mais alarmes em uma determinada Tag. 
4. Para adicionar um alarme, clique duas vezes no link + New Alarm... ou clique no ícone 
Add à direita da lista Alarms. 
Quando você clica duas vezes no novo alarme, todas as definições de configuração são 
exibidas no lado direito. Cada alarme deve ter um nome e uma prioridade. A prioridade é 
uma forma de classificar a importância de um alarme. O nome simplesmente descreve o 
que é esse alarme. 
5. Quando o alarme ocorre, queremos que o operador veja "Test Alarm" e uma gravidade 
"Medium". Defina as seguintes propriedades de alarme: 
Nome: Test Alarm 
Prioridade: Medium 
Para selecionar a condição para quando o alarme estiver ativado, digite o seguinte: 
Modo: Equal 
Setpoint: 1 
 
 
 
 
©2019 Inductive Automation Página 212 de 397 
Alarmes 
7. Deixe o restante das configurações em paz por enquanto e clique em Commit para 
salvar as alterações. 
8. Clique em OK para salvar a Tag. 
Um ícone de alarme agora é exibido à direita da Tag para que você saiba um alarme está 
configurado nele. 
 
9. Defina o valor do Tag como true e a Tag ficará em alarme. 
 
Resumo do alarme 
Vejamos agora a exibição do status atual de nossos alarmes. Já existe uma tela de alarme 
criada para você pelo modelo de projeto. Ele tem um cabeçalho e um componente Alarm 
Status Table que mostra todos os alarmes. No Project Browser, selecione a pasta Main 
Windows e abra a janela Alarms. 
 
 
 
 
 
©2019 Inductive Automation Página 213 de 397 
Alarmes 
 
Adicionando Vários Alarmes Simultaneamente 
Antes de falarmos mais sobre a Alarm Status Table, vamos adicionar mais alguns 
alarmes para torná-la interessante. 
Você pode selecionar várias Tags e adicionar o mesmo alarme a todos eles de uma vez. 
Permite adicionar alarmes a todos as Realistics Tags. 
1. No Tag Browser, expanda para a pasta GenSim/Realistic. 
2. Selecione com a tecla Shift pressionada todas as Realistics Tags. Clique com o botão 
direito em um deles e selecione Edit Tags. 
3. Clique no ícone Edit da propriedade Alarms. 
4. Clique no ícone + para adicionar um novo estado de alarme e preencha as seguintes 
propriedades: 
Nome: High Alarm 
Priority: CriticalModo: Above Setpoint 
Setpoint: 35 
5. Clique em Commit no canto inferior esquerdo e clique em OK. 
Resumos de Alarmes 
A Alarm Status Table é um componente integrado que é altamente personalizável e 
existe para exibir as informações de alarme atuais. 
 
 
 
©2019 Inductive Automation Página 214 de 397 
Alarmes 
Basta soltar um em uma janela e ele começará a mostrar os dados imediatamente. Os 
operadores também podem mostrar/ocultar informações sobre o componente de status 
de alarme no tempo de execução. 
Um operador pode selecionar um alarme e clicar no ícone Magnifying Glass para 
visualizar os detalhes do alarme. 
 
Você pode pressionar o botão Acknowledge para reconhecer o alarme. O Current 
State mudará. 
 
 
 
 
 
©2019 Inductive Automation Página 215 de 397 
Alarmes 
Você pode arquivar o alarme para silenciá-lo temporariamente. Para visualizar alarmes 
arquivados, clique no ícone Shelve. 
 
Um operador pode clicar com o botão direito do mouse no cabeçalho da tabela para 
adicionar/remover colunas. Você também pode redimensionar as colunas e mudar a 
ordem das colunas. 
 
Por fim, uma vez que você tenha configurado um alarme e a Tag esteja armazenada no 
histórico, você pode clicar no ícone Graph na Alarm Status Table para visualizar uma 
tendência rápida. 
 
 
 
©2019 Inductive Automation Página 216 de 397 
Alarmes 
 
Alterar o comportamento da Alarm Status Table 
Também é possível alterar o comportamento da tabela. Por exemplo, todos os botões 
expostos na tabela podem ser mostrados ou ocultados, com base nas propriedades 
expostas da Alarm Status Table. São propriedades booleanas que podem ser ativadas ou 
desativadas estaticamente, ou vinculadas à saída de Tags ou expressões. Por exemplo, é 
fácil mostrar ou ocultar o botão Acknowledge com base no qual o usuário está 
conectado. 
 
Além disso, é possível alterar a aparência dos estados de alarme na tabela. Clique com o 
botão direito do mouse na Alarm Status Table, localize Customizers e selecione Alarm 
Row Styles. 
 
 
 
 
©2019 Inductive Automation Página 217 de 397 
Alarmes 
 
Essa interface nos permite configurar uma lista de expressões – a primeira expressão que 
retornar True para um determinado alarme decidirá como esse alarme será estilizado na 
tabela. 
Por exemplo, na configuração padrão, um alarme com prioridade de diagnóstico será 
configurado para ter um fundo cinza escuro, enquanto todos os outros alarmes irão para 
a segunda expressão, e assim por diante, até que suas propriedades permitam que 
correspondam a uma das condições . É possível configurar condições personalizadas, bem 
como alterar os estilos de linha em diferentes condições. 
Mostrar ou Ocultar Alarmes 
Existe um conjunto de propriedades para filtragem de alarmes. Usando as propriedades 
Source Filter e Display Path Filter, você pode filtrar alarmes apagados, filtrar alarmes em 
uma determinada pasta de Tags e filtrar alarmes que correspondam a um determinado 
caminho de exibição. Este campo aceita curingas (* e ?) para ajudar a combinar grupos 
de alarmes. 
 
 
 
 
©2019 Inductive Automation Página 218 de 397 
Alarmes 
 
Por exemplo, se a Alarm Status Table estiver exibindo todos os nossos alarmes existentes 
e você quiser exibir apenas o alarme booleano, poderá adicionar *Boolean* à propriedade 
Display Path Filter da seguinte maneira: 
 
 
 
 
 
 
©2019 Inductive Automation Página 219 de 397 
Alarmes 
E agora apenas o alarme WriteableBoolean é mostrado na Alarm Status Table. 
 
Filtragem de Alarme Dinâmico 
Você também pode permitir que seus usuários definam os filtros de alarme em tempo real, 
adicionando um componente e uma simple binding. 
1. Arraste um componente Text Field para a janela. Defina o nome do campo Text para 
Search. 
2. O layout da Alarm Status Table é definido como anchored em todos os 4 lados. Defina 
o layout do seu campo de texto para anchored e ajuste-o para que nunca se 
sobreponham. 
3. Selecione a Alarm Status Table e clique no ícone de binding para a propriedade 
Display Path Filter. 
4. Selecione o tipo Expression binding e insira o seguinte: 
"*" + {Root Container.Search.text} + "*" 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 220 de 397 
Alarmes 
 
5. Clique em OK. 
Agora você pode colocar o designer no modo de visualização para testá-lo. 
Alarmes em UDTs 
Os Tipos Definidos por Usuários no Ignition são ótimos porque você pode especificar a 
configuração do seu tipo em um único local. Cada instância da Tag herdará 
automaticamente a configuração. Isso é ótimo ao configurar alarmes porque os alarmes 
normalmente precisam ser configurados de uma determinada maneira. O desenvolvedor 
pode configurar o alarme no UDT e cada instância terá automaticamente os alarmes. 
Adicionar um Alarme a um UDT 
Vamos editar o UDT do motor que criamos anteriormente e adicionar um alarme ao Tag 
AMPS. Nosso alarme em nosso Tag AMPS irá olhar para o Tag AMPS High Setpoint que já 
configuramos, e o alarme será acionado quando o valor de Amps exceder o setpoint 
configurado. 
1. Clique duas vezes em Motor UDT na pasta Data Types para editar o UDT. 
 
 
 
 
 
©2019 Inductive Automation Página 221 de 397 
Alarmes 
 
2. Clique na etiqueta AMPS. 
3. Role para baixo até a propriedade Alarmes e clique no ícone Edit para configurar um 
alarme. 
4. Adicione um alarme e configure as seguintes propriedades: 
Nome: AMPS High Alarm 
Prioridade: High 
 
 
 
 
©2019 Inductive Automation Página 222 de 397 
Alarmes 
Agora há um problema aqui. O problema é que o nome do alarme é AMPS High Alarm. 
Isso significa que cada instância do UDT terá um alarme com o mesmo nome e não 
teremos como diferenciá-los. 
Como a configuração está no UDT, precisamos garantir que alteram dinamicamente 
qualquer propriedade que deva ser diferente para cada instância. Podemos usar os 
parâmetros UDT para essa finalidade. 
Em vez de definir o caminho de exibição, podemos vincular a propriedade a uma expressão 
envolvendo o parâmetro UDT InstanceName e o nome da propriedade do alarme. 
Observe que você pode vincular a propriedade a um parâmetro Tag, expressão e UDT. 
Você também pode usar parâmetros UDT na expressão. Isso só está disponível em UDTs. 
5. Associe o caminho de exibição à seguinte expressão (observe os espaços): 
{InstanceName} + " " + {name} 
 
6. Clique no link Voltar no canto superior esquerdo para salvar as alterações em sua 
expressão. 
7. Por último, queremos definir o modo de alarme. Altere a propriedade Mode para Above 
Setpoint. 
8. Podemos definir o ponto de ajuste dinamicamente com uma ligação. Clique no ícone de 
ligação para a propriedade Setpoint. 
 
 
 
©2019 Inductive Automation Página 223 de 397 
Alarmes 
9. Selecione o botão Tag para nosso tipo de binding. 
10. Você notará que existem duas abas disponíveis, UDT e Tags. SelecioneUDT para ver 
a lista de itens selecionáveis no UDT. 
 
11. Selecione a Tag HighSP e clique no link Back logo acima. Isso significa que para cada 
instância do UDT, o alarme será vinculado ao tag HighSP correspondente naquela 
instância. 
12. Clique em Commit no canto inferior direito para salvar o alarme. 
13. Clique em OK para salvar a nova configuração de alarme no UDT. 
Dê uma olhada no Tag Browser e cada instância de um motor terá automaticamente o 
alarme configurado no Tag AMPS. 
Dados associados 
Às vezes, você pode querer ter mais dados do que apenas seus pontos de ajuste de 
alarme e valores quando um alarme dispara. Os alarmes do Ignition podem transportar 
quaisquer dados extras que você desejar como Associated Data. As Associated Data são 
como propriedades personalizadas nos componentes do Vision; cada alarme pode ter 
quantas Propriedades de Associated Data você desejar, e essas propriedades podem ser 
vinculadas.©2019 Inductive Automation Página 224 de 397 
Alarmes 
Por exemplo, se o seu Motor Amps entrar em seu estado de alarme alto, você pode querer 
saber qual era o valor HOA quando o alarme aconteceu. Em vez de ter que verificar o 
histórico do Tag e esperar que o valor tenha sido registrado, você pode adicionar o valor 
HOA diretamente ao alarme. 
1. Clique duas vezes em Motor UDT na pasta Data Types para editar o UDT. 
2. Clique na Tag AMPS. 
3. Role para baixo até a propriedade Alarms e clique no ícone Edit para editar nosso 
alarme. 
4. Selecione Amps High Alarm. 
5. No topo da lista de propriedades do alarme, clique na propriedade Add New Associated 
Data na parte inferior da lista. 
6. Role para baixo até a propriedade New Data e clique duas vezes nela para editar o 
nome. Configure-o para HOA. 
 
 
 
 
©2019 Inductive Automation Página 225 de 397 
Alarmes 
7. Clique no ícone de binding à direita. 
8. Selecione o botão Tag e a guia UDT para selecionar um dos membros UDT. 
9. Selecione a tag HOA. 
10. Clique no link Back no canto superior esquerdo, clique no botão Commit e, em seguida, 
no botão OK no canto inferior direito para salvar. 
Agora, quaisquer novos alarmes de motor verificarão o valor de HOA quando estiverem 
ativos ou limpos, e manterão os dados adicionais enquanto estiverem no sistema. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 226 de 397 
Capítulo 14 
 
Histórico de Alarmes 
 
 
 
 
 
 
Até agora, trabalhamos apenas com a Alarm Status Table, que está nos mostrando 
uma lista ao vivo dos alarmes que nosso Gateway está armazenando na memória. 
No entanto, esse sistema não acompanha as informações para sempre - se 
quisermos manter um registro persistente dos eventos de alarme, precisaremos 
configurar um Alarm Journal. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 227 de 397 
Histórico de Alarmes 
Ver o Histórico de Alarmes 
1. Faça login e vá para a guia Config da página da Web do Gateway. 
2. Selecione Alarming > Journal no menu. 
 
Aqui podemos criar um novo perfil para registrar alarmes no banco de dados. 
3. Clique em Create New Alarm Journal Profile.... 
A janela New Alarm Journal Profile é exibida. 
 
4. Defina o nome do perfil e a conexão do banco de dados da seguinte forma: 
 Nome: Journal 
 Banco de dados: MSSQL 
 
 
 
 
©2019 Inductive Automation Página 228 de 397 
Histórico de Alarmes 
Você também pode especificar filtros e habilitar a remoção de dados para excluir 
registros anteriores a um determinado período de tempo. 
 
5. Clique em Create New Alarm Journal Profile para salvar o perfil. 
Na próxima vez que o alarme ocorrer, o Ignition criará duas tabelas em nosso banco de 
dados (alarm_events e alarm_event_data) e começará a registrar o histórico de alarmes. 
O Ignition também possui um componente integrado que é altamente personalizável 
para atender às suas necessidades, chamado Alarm Journal Table. 
6. Arraste a tabela Alarm Journal da guia Alarming da Component Palette para nossa 
janela Alarm Testing. 
 
 
 
 
©2019 Inductive Automation Página 229 de 397 
Histórico de Alarmes 
Se algum alarme mudou de estado desde que o diário foi criado, imediatamente você 
verá o histórico de todos os seus alarmes. 
 
Assim como o componente Alarm Status, você pode mostrar/ocultar colunas, reorganizar 
colunas e selecionar um alarme para visualizar mais informações sobre o alarme. 
 
 
 
 
©2019 Inductive Automation Página 230 de 397 
Histórico de Alarmes 
A tabela Alarm Journal mostrará por padrão as últimas 8 horas de eventos de alarme e 
será atualizada apenas quando a janela for aberta pela primeira vez. Em vez de usar esse 
comportamento padrão, tornaremos o intervalo de datas selecionável pelo usuário. 
7. Arraste o componente Data Rage da guia Calendar da Component Palette e coloque-
o acima da tabela de diário de alarmes. 
 
Agora, precisamos vincular a tabela de diário de alarmes ao componente de intervalo de 
datas. 
8. Selecione o componente diário de alarmes e vincule a propriedade Start Date à 
propriedade de data rages. 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 231 de 397 
Histórico de Alarmes 
 
 
9. Clique em OK para salvar a ligação. 
10. Faça o mesmo para a propriedade End Data, vinculando-a à End Date 
do componente Date Range. 
11. Clique em OK para salvar a ligação. 
Agora você pode alterar a data inicial e final para visualizar todos os eventos no período 
de tempo. 
Se você tiver mais de um perfil de diário adicionado ao Ignition, poderá definir o nome do 
diário para o nome do perfil que deseja consultar. 
Concentre-se em um alarme específico ou pesquise um 
alarme 
Existem dois recursos extras que a tabela de diário de alarmes oferece: foco em alarmes 
e pesquisa. 
O recurso de foco é muito útil. Normalmente, você está vendo o histórico de vários 
alarmes. O recurso de foco permite que você se concentre em um alarme específico para 
visualizar apenas o histórico desse alarme. 
 
 
 
 
©2019 Inductive Automation Página 232 de 397 
Histórico de Alarmes 
Para usá-lo em tempo de execução, basta clicar no ícone Focus na parte inferior direita 
e selecione Target Alarm Source. 
 
Agora você verá apenas esses alarmes. 
 
Quando terminar, basta clicar no ícone Focus novamente para remover o foco. 
Além disso, o operador em tempo de execução pode procurar alarmes específicos 
usando o Ícone de Filter no canto inferior direito. Quando você clica nele, uma caixa de 
diálogo aparece com as opções de pesquisa. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 233 de 397 
Histórico de Alarmes 
 
Alarms Status Table - Lançamentos Diários 
Uma vez que você tenha um perfil de Alarm Journal configurado e a Tag armazenada no 
histórico, você pode clicar no ícone Graph na Alarm Status Table para visualizar a 
tendência com marcadores para quando o alarme se tornar ativo, apagado e 
reconhecido. 
 
 
 
 
 
 
©2019 Inductive Automation Página 234 de 397 
Capítulo 15 
Notificação de Alarme 
 
 
 
 
 
 
Visão Geral da Notificação de Alarmes 
A notificação de alarme é o ato de enviar uma mensagem a um grupo de pessoas 
quando um alarme se torna ativo ou claro. No Ignition, esta funcionalidade é 
habilitada com o Módulo de Notificação de Alarme instalado. Você também pode 
adicionar os módulos de notificação de voz e SMS para formas adicionais de 
notificar os usuários. 
Perfis de Notificação de Alarme 
Um perfil de notificação define um canal de entrega através do qual uma 
mensagem de notificação de alarme pode ser enviada a um usuário. O Módulo de 
Notificação de Alarme vem com perfis de notificação de e-mail unidirecionais e 
bidirecionais. 
O perfil de notificação de e-mail unidirecional simplesmente envia um e-mail 
contendo a mensagem de notificação de alarme. O perfil de notificação de e-mail 
bidirecional envia um e-mail que contém links que permitem que o usuário 
reconheça o(s) alarme(s). 
Módulos adicionais podem ser adicionados ao Ignition para permitir mais maneiras 
de enviar mensagens de notificação de alarme. O Módulo de Notificação por 
Telefone adiciona a capacidade de notificar os usuários ligando para eles no 
telefone. O Módulo de Notificação por SMS adiciona a capacidade de enviar 
mensagens de texto aos usuários para notificá-los sobre alarmes. 
 
 
 
 
 
©2019 Inductive Automation Página 235 de 397 
Notificação de Alarme 
Horários 
O sistema de notificação de alarme no Ignition usa o sistema de agendamento de usuário 
integrado. As mensagens de notificação de alarme serão enviadas apenas para usuários 
cuja agenda esteja ativa no momento. Quando uma mensagem de notificação de alarme 
atinge um bloco de notificação em um pipeline, a listade plantão desse bloco será usada 
para localizar os usuários a serem notificados. Dos usuários na lista, apenas aqueles 
usuários cuja agenda está ativa no momento receberão a mensagem de notificação de 
alarme. 
Listas de Plantão 
Uma lista de plantão é um agrupamento ordenado de usuários. Eles são usados como uma 
forma de agrupar os usuários para que os alarmes possam ser enviados. Dependendo do 
perfil de notificação de alarme utilizado, os usuários podem ser notificados um de cada 
vez (sequencial), ou todos de uma vez (paralelo). Você pode criar e gerenciar escalas de 
plantão na página de configuração do Gateway ou em um componente. 
Pipelines de Notificação de Alarme 
Esses pipelines definem a lógica do que deve acontecer entre um alarme se tornar ativo 
(ou reconhecido ou claro) e as pessoas serem notificadas. Os pipelines são configurados 
no Designer. 
Notificação de Alarme - Informações do Usuário 
A primeira parte do nosso sistema de notificação de alarmes em que trabalharemos são 
nossos usuários. Precisamos fornecer aos usuários detalhes de contato, para que, quando 
os vincularmos ao nosso esquema de notificação, o Ignition saiba como alcançá-los. 
As configurações de usuário relevantes são armazenadas em perfis de autenticação no 
Ignition. 
Edite o perfil de autenticação do usuário no gateway 
1. Faça login e vá para a guia Config da página da Web do Gateway. 
2. Selecione SEcurity > Users, Roles no menu. A página User Sources é exibida. 
Aqui podemos editar o perfil que vem com o Ignition, chamado default, ou adicionar um 
novo perfil de autenticação. Vamos apenas usar o perfil padrão que vem com o Ignition. 
3. Clique no botão manage users à direita do perfil de autenticação padrão. 
 
Notificação de Alarme 
 
 
©2019 Inductive Automation Página 236 de 397 
 
4. Encontre o usuário administrador e clique em Edit no lado direito. 
5. Clique em Add Contact na parte inferior da página, escolha um tipo de E-mail e um 
valor de admin@mycompany.com. 
6. Clique em Save à direita e clique em Save Changes na parte inferior da página. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 237 de 397 
Notificação de Alarme 
 
Notificação de Alarme — Listas de Chamada 
Uma lista de plantão é um agrupamento ordenado de usuários. Eles são usados como uma 
forma de agrupar os usuários para que os alarmes possam ser enviados a eles. 
Dependendo do perfil de notificação de alarme utilizado, os usuários podem ser notificados 
um de cada vez (sequencial), ou todos de uma vez (paralelo). Você pode criar e gerenciar 
escalas de plantão na página de configuração do Gateway. 
Você deseja criar uma lista de plantão diferente para cada grupo de pessoas que recebe 
alarmes. Normalmente os clientes criam grupos para Gerentes ou Operadores ou criam 
grupos por área da planta. Não há limite para o número de listas que você pode criar. 
As listas podem ser configuradas na configuração do Ignition Gateway e no tempo de 
execução. 
Criar Listas de Chamada no Gateway 
1. Vá para a guia Config da página da Web do Gateway. 
2. Selecione Alarming > On-Call Rosters no menu. 
3. Clique em Create New On-Call Roster…. 
 
 
 
 
 
 
©2019 Inductive Automation Página 238 de 397 
Notificação de Alarme 
 
4. Defina o nome para Use Group 1. 
5. Clique em Create New On-Call Roster. 
 
Agora você precisa adicionar usuários à lista. 
6. Clique no link manage à direita da lista. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 239 de 397 
Notificação de Alarme 
 
Você pode adicionar usuários de qualquer perfil de autenticação e as listas podem ser 
compostas por usuários de vários perfis. 
7. Selecione o perfil default na lista suspensa. 
8. Selecione o usuário admin e clique na seta para a direita para movê-lo para o On-
Call Roster. Clique em salvar. 
 
Você notará o ícone de E-mail à direita dos usuários. Isso permite que você saiba quais 
informações de contato o usuário possui. 
 
 
 
 
©2019 Inductive Automation Página 240 de 397 
Notificação de Alarme 
Notificação de Alarme — Notificação por E-mail 
Para enviar notificações por e-mail, precisamos adicionar um perfil de notificação por e-
mail ao Ignition. 
Adicionar um Perfil de Notificação por E-mail 
1. Na guia Config da página da Web do Gateway, selecione Alarming > Notification 
no menu. 
2. Para adicionar um perfil, clique no link Create New Alarm Notification Profile.... 
 
3. Escolha a opção Email Notification e clique em Next. 
Você pode ter várias opções disponíveis aqui, elas dependem de quais módulos você 
instalou. 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 241 de 397 
Notificação de Alarme 
 
Para enviar notificações por e-mail, você precisa especificar um servidor SMTP que o 
Ignition possa usar. Você pode usar o servidor da sua empresa ou qualquer servidor SMTP 
público como Gmail ou Yahoo. 
Você também pode especificar um servidor de e-mail na seção Networking do Gateway. 
Se fizer isso, você selecionaria Use SMTP Profile? aqui. 
Dentro do perfil de notificação por email, defina as seguintes configurações: 
Nome: Email 
Nome do host: localhost 
Bidirecional habilitado: True 
Gateway (em configurações bidirecionais): localhost:8088 
As configurações bidirecionais permitem que os usuários que recebem as notificações por 
e-mail reconheçam o alarme da notificação. Ao usar essa funcionalidade, é importante 
certificar-se de que a propriedade Gateway esteja configurada para um domínio ou 
endereço IP que possa ser acessado de onde quer que as notificações de alarme estejam 
sendo enviadas. 
 
 
 
 
 
©2019 Inductive Automation Página 242 de 397 
Notificação de Alarme 
 
 
 
 
©2019 Inductive Automation Página 243 de 397 
Notificação de Alarme 
5. Clique em Create New Alarm Notification Profile para adicionar. É isso! Agora 
você pode usar o perfil em pipelines de notificação. 
 
Notificação de Alarme - Pipelines 
Agora que configuramos nossas informações de contato do usuário, listas e perfis de 
notificação de alarme, podemos criar um pipeline para reunir tudo. 
Os pipelines são um mecanismo gráfico para criar lógica, fornecendo um mecanismo de 
arrastar e soltar fácil de usar para criar cenários de notificação complexos. Usando 
pipelines, é possível realizar muitas tarefas, como escalonamento de alarmes, 
consolidação de notificações e despacho condicional. 
Quando você cria um novo pipeline ou seleciona um para editar, o Designer alterna para 
o espaço de trabalho do pipeline. A área de trabalho é efetivamente uma tela em branco, 
na qual você organiza e conecta vários blocos de pipeline. Cada bloco de pipeline tem uma 
entrada e potencialmente tem saídas. Usando o mouse, você pode desenhar conectores 
entre a saída de um bloco e a entrada de outro. O bloco inicial é a única parte fixa da área 
de trabalho. Ele representa o ponto de entrada para eventos de alarme no pipeline e é 
tratado como um bloco de saída. 
Várias saídas podem ser conectadas a uma única entrada. Além disso, é perfeitamente 
aceitável escrever a saída de um bloco downstream de volta à entrada de um bloco 
anterior, criando um loop. Claro, alguns cuidados devem ser tomados ao fazer isso, pois 
pode facilmente resultar em comportamentos inesperados, como enviar muitos e-mails 
para um evento! 
 
 
 
 
 
©2019 Inductive Automation Página 244 de 397 
Notificação de Alarme 
Blocos de Pipeline 
Os blocos são descritos individualmente na próxima seção, mas aqui está uma breve 
visão geral. 
 
• O bloco Notification fornece uma notificação por meio do perfil de notificação 
selecionado. 
• O bloco Delay bloqueia o evento de alarme pelo período de tempo especificado. 
• O bloco Splitter encaminha um único evento simultaneamente para vários outros blocos. 
• O bloco Switch avalia uma expressão não165 
Personalize o Easy Chart ........................................................................................................................................................... 167 
Usando uma Tag Browse Tree com o Easy Chart ........................................................................................................... 170 
Criando Tabelas ............................................................................................................................................................................. 174 
CAPÍTULO 12 ................................................................................................................ 181 
Transaction Groups ..................................................................................................................................................... 181 
O Ciclo de Execução da Transação ........................................................................................................................................ 182 
Tipos de Transaction Groups................................................................................................................................................... 182 
Configurações Comuns ............................................................................................................................................................... 184 
Agrupar Itens .................................................................................................................................................................................. 184 
Triggers ............................................................................................................................................................................................. 185 
Handshake ....................................................................................................................................................................................... 186 
Criando um Grupo Histórico Básico ..................................................................................................................................... 186 
Criando um Grupo de Receitas ............................................................................................................................................... 191 
CAPÍTULO 13 ................................................................................................................ 204 
Alarmes ............................................................................................................................................................................ 204 
Diários de Alarmes ....................................................................................................................................................................... 205 
Notificações de Alarme ............................................................................................................................................................... 205 
Propriedades do Alarme ............................................................................................................................................................ 205 
Configure um Digital Alarm ...................................................................................................................................................... 209 
Resumos de Alarmes ................................................................................................................................................................... 213 
Alarmes em UDTs ......................................................................................................................................................................... 220 
CAPÍTULO 14 ................................................................................................................ 226 
Histórico de Alarmes ................................................................................................................................................... 226 
Ver o Histórico de Alarmes ....................................................................................................................................................... 227 
CAPÍTULO 15 ................................................................................................................ 234 
Notificação de Alarme ................................................................................................................................................. 234 
Visão Geral da Notificação de Alarmes ................................................................................................................................ 234 
 
 
©2019 Inductive Automation Página 5 de 397 
Notificação de Alarme - Informações do Usuário ........................................................................................................... 235 
Notificação de Alarme — Listas de Chamada ................................................................................................................... 237 
Notificação de Alarme — Notificação por E-mail ........................................................................................................... 240 
Notificação de Alarme - Pipelines .......................................................................................................................................... 243 
Notificação de Alarme - Pipeline de Escalação ................................................................................................................ 251 
CAPÍTULO 16 ................................................................................................................ 256 
Segurança ........................................................................................................................................................................ 256 
Tipos de Autenticação ................................................................................................................................................................. 257 
Configuração Básica de Segurança ........................................................................................................................................ 258 
Segurança do Componente ....................................................................................................................................................... 263 
Segurança do Gateway ................................................................................................................................................................ 269 
CAPÍTULO 17 ................................................................................................................ 272 
Janelas Pop-up ............................................................................................................................................................... 272 
Criando uma Janela Pop-up ...................................................................................................................................................... 273 
Abrindo Várias Instâncias de uma Janela Pop-up .......................................................................................................... 285 
Criando um Easy Chart Indireto ............................................................................................................................................. 287 
Criando um Display de Alarme Dinâmico .......................................................................................................................... 295 
CAPÍTULO 18 ................................................................................................................ 298 
Criação de Scripts ......................................................................................................................................................... 298 
O que é Python? .............................................................................................................................................................................booleana e encaminha para uma saída com 
base no resultado. 
• O bloco Expression avalia uma expressão que resulta em true ou false e encaminha o 
evento para essa saída. 
• O bloco Set Property avalia uma expressão e define o resultado como uma propriedade 
de tempo de execução no evento de alarme. 
• O bloco Jump encaminha o evento de alarme para um pipeline diferente. 
• O bloco Script executa uma tarefa fora do pipeline. 
Propriedades do Pipeline 
Os pipelines têm poucas configurações, mas são importantes. Você pode ver e modificar 
as configurações no Pipeline BLock Editor ao clicar em qualquer lugar no espaço de 
trabalho do pipeline que não seja um bloco. 
 
 
 
 
©2019 Inductive Automation Página 245 de 397 
Notificação de Alarme 
• Condição de Desistência 
Existem três condições possíveis: Acknowledged, Cleared, e Shelved. Eles ditam 
quando os alarmes caem do pipeline. Se qualquer uma das condições selecionadas se 
tornar true para um evento em um pipeline, ele "desaparecerá" totalmente, não importa 
onde esteja. Nenhuma outra ação será tomada para esse evento. 
• Pipeline Ativado 
A configuração Enabled especifica se o pipeline tem permissão para receber eventos. 
Fluxo de Eventos 
Entender como os eventos fluem pelos pipelines é crucial para aproveitá-los totalmente. 
Os alarmes são configurados em Tags individuais e cada alarme pode especificar um 
pipeline de destino para condições ativas, limpas ou de confirmação. Quando a condição 
para esse alarme é atendida, um novo evento de alarme é gerado e enviado para o ponto 
de entrada do pipeline associado. O evento de alarme então se move pelos diferentes 
elementos lógicos do pipeline até que finalmente atinja um ponto de extremidade do 
pipeline ou até que o alarme corresponda à condição de dropout do pipeline, após a qual 
ele sai do pipeline. Pode haver vários eventos de alarme em um pipeline em um 
determinado momento e você pode visualizar o status atual do pipeline na tela de status 
Alarm Pipelines no Ignition Gateway. É possível encaminhar eventos de um pipeline para 
outro, possibilitando a criação de pipelines multifuncionais e reutilizáveis. 
Cada evento de alarme progride sequencialmente pelos blocos de um pipeline. No entanto, 
vários eventos de alarme podem existir em paralelo no pipeline e novos eventos podem 
entrar no pipeline a qualquer momento. Algumas configurações de bloco podem resultar 
na retenção de eventos de alarme, como notificação consolidada, mas um evento de 
alarme não pode afetar outros eventos no pipeline. Nesse caso específico, quando vários 
eventos são coletados juntos para notificação, os eventos que não forem eliminados do 
pipeline após a notificação serão encaminhados individualmente para a saída do bloco. 
A cada transição, e ocasionalmente também dentro da execução do bloco, as condições 
de dropout serão avaliadas. Se o evento não atender mais às condições, ele sairá do 
pipeline. É crucial entender como isso funciona para entender a execução do pipeline. Por 
exemplo, um cenário comum é colocar um bloco Delay diretamente na frente de um bloco 
Notification. Se o atraso for de 5 minutos e "Limpar" for uma das condições de desistência 
do pipeline, isso significa que apenas os eventos que permanecerem ativos por mais de 5 
minutos resultarão em notificações. Se reconhecer for uma das condições de dropout, isso 
significaria que os operadores (ou qualquer pessoa visualizando o status do alarme) teriam 
cinco minutos para reconhecê-los e só então as notificações seriam enviadas. 
 
 
 
 
©2019 Inductive Automation Página 246 de 397 
Notificação de Alarme 
Crie um Pipeline Simples de Notificação por E-mail 
1. Volte para o Ignition Designer. 
Aqui você pode criar um ou mais pipelines. Vamos criar um pipeline simples para enviar 
notificações por e-mail quando ocorrerem alarmes. 
2. No Project Browser, clique com o botão direito do mouse na pasta Alarm Pipelines e 
selecione New Alarm Pipeline. 
 
3. Nomeie o pipeline “Basic Pipeline” e clique em Create Pipeline. 
4. Arraste um bloco Notification para o pipeline. 
Este bloco, na verdade, notifica uma escala de plantão por meio do perfil de notificação 
quando um evento de alarme entra no bloco. 
5. Arraste o pino de saída do bloco Start para IN do bloco Notification. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 247 de 397 
Notificação de Alarme 
 
Estamos quase terminando. Agora precisamos definir qual perfil de notificação de alarme 
o bloco usará e para quem enviaremos as notificações. 
6. Clique no bloco Notification. 
7. No Pipeline Block Editor, na guia de notificação, defina o bloco de notificação para 
usar o perfil Email Notification. 
Além disso, você pode definir o endereço do remetente, o assunto e a mensagem do e-
mail. 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 248 de 397 
Notificação de Alarme 
 
8. Selecione a guia Contacts e selecione o nome da lista que deseja notificar. No nosso 
caso, usaremos o grupo de usuários 1. Você pode selecionar uma escalação diretamente 
ou criar uma expressão que retorne um nome de escalação. Você também pode usar uma 
Calculated Roster, que permite escrever um script Python para indicar quem notifica. Essa 
terceira abordagem pode ser usada sem nenhuma lista de plantão configurada. 
 
Observação: primeiro você deve salvar seu projeto no Designer para que o pipeline 
funcione. Nosso pipeline básico está pronto. Quando ocorrer um alarme, o Ignition enviará 
um e-mail para todos na lista do grupo de usuários 1. 
 
 
 
©2019 Inductive Automation Página 249 de 397 
Notificação de Alarme 
Nosso pipeline finalizado fica assim: 
 
No momento, esse pipeline não está sendo usado. 
A última etapa é especificar quais alarmes usarão esse pipeline quando estiverem ativos. 
Para isso basta editar os alarmes que já configuramos nas Tags. 
9. Edite a Tag de alarme WriteableBoolean1. 
10. Entre na interface de configuração de alarme para a Tag e encontre a propriedade 
Active Pipeline. 
11. Defina a propriedade Active Pipeline para o pipeline Basic Pipeline que acabamos de 
criar. 
 
12. Clique em OK para salvar o projeto. Agora, quando o alarme WriteableBoolean1 se 
tornar ativo, irá para o bloco START do pipeline. 
 
 
 
©2019 Inductive Automation Página 250 de 397 
Notificação de Alarme 
13. Como ainda não temos um servidor SMTP funcionando, usaremos um programa para 
"capturar" os e-mails que o Ignition está enviando. No Windows Start Menu, localize e 
abra a aplicação Papercut. 
14. Com o Papercut aberto, tente ativar a Tag WriteableBoolean1. Você deverá ver um 
e-mail chegando ao Papercut, completo com a mensagem configurada e o link de 
confirmação. 
15. Se você quiser ver o status de um pipeline, vá para a guia Status do Ignition Gateway. 
Clique no link Alarm Pipelines no lado esquerdo. 
 
16. Você verá uma lista de seus pipelines. Clique no botão Details para obter mais 
informações. Se nada estiver ativo, a lista estará vazia. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 251 de 397 
Notificação de Alarme 
 
17. Acione o alarme WriteableBoolean1 e você verá exatamente onde o alarme está no 
pipeline. 
 
Notificação de Alarme - Pipeline de Escalação 
Os pipelines podem ter uma lógica bastante complexa para fazer loop e escalar alarmes 
quando não estão sendo atendidos. Vamos criar um pipeline que chamará os usuários três 
vezes e, se ninguém reconhecer o alarme, ele será escalado para outra lista. 
Criar um pipeline de escalonamento 
1. No Designer, criaremos um novo pipeline chamado Complex Pipeline. 
 
 
 
 
 
 
©2019 Inductive Automation Página 252 de 397 
Notificação de Alarme 
2. Primeiro, precisamos introduzir um contador para registrar quantas vezes ligamos para 
nossos usuários. Arraste o bloco Set Property para a janela do pipeline.Esse bloco cria uma variável com escopo apenas para esse pipeline. 
3. Conecte o START ao IN do bloco Set Property. 
4. No Pipeline Block Editor, defina o nome da propriedade como numCalls e inicialize o 
valor da propriedade como 0. 
Observe que o bloco Set Property tem uma configuração Scope. Uma configuração de local 
limita o escopo da variável para a execução atual do pipeline, enquanto uma configuração 
global fará com que o valor da variável persista em todos os eventos de alarme que 
passam pelo pipeline. 
 
Agora podemos notificar nossos usuários. 
5. Arraste um bloco Notification para o pipeline. 
6. Defina o bloco para usar o perfil de notificação por e-mail e defina a lista para o grupo 
de usuários 1. 
7. Conecte o OUT do bloco Set Property ao IN do bloco Notification. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 253 de 397 
Notificação de Alarme 
 
Se ninguém reconhecer o alarme, o alarme atingirá o pino de saída do bloco de notificação. 
Se nada estiver conectado ao OUT, o pipeline cairá. Não queremos que isso aconteça. Em 
vez disso, gostaríamos de esperar alguns minutos para que os usuários respondam à 
notificação e, em seguida, notifique-os novamente ou encaminhe o alarme. 
8. Arraste um bloco Delay para o pipeline e conecte a saída do bloco Notification à entrada 
do bloco Delay. Defina o valor de atraso para 300 segundos (5 minutos). Se nossos 
usuários responderem ao e-mail dentro do intervalo de 5 minutos, nenhuma ação adicional 
será tomada. 
9. Dado que o tempo do bloco Delay já passou, queremos incrementar nosso contador e 
decidir se notificamos novamente. Arraste em outro bloco Set Property e conecte o OUT 
do bloco Delay ao IN do bloco Set Property. 
Nota: Você pode inverter a orientação de IN e OUT clicando com o botão direito do mouse 
no bloco. 
10. No Pipeline Block Editor, defina o nome da propriedade como numCalls novamente. 
Desta vez, defina o valor da propriedade (expressão) para o valor anterior mais um como: 
{numCalls} + 1 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 254 de 397 
Notificação de Alarme 
 
Agora precisamos verificar quantas vezes faremos um loop por esse pipeline. Usaremos 
uma expressão para verificar se o valor é menor que 3. 
12. Arraste um bloco Expression para o pipeline. 
13. No Pipeline Block Editor, defina a expressão como {numCalls} User, Roles. 
3. Clique em manage users para editar o perfil padrão. 
 
 
 
 
 
 
©2019 Inductive Automation Página 259 de 397 
Segurança 
Adicionar uma nova função 
Vamos adicionar uma nova função chamada "Operator". 
1. Clique na guia Roles e clique no link Add Role.... 
 
2. Defina o nome da função como Operator. 
3. Clique no botão Add Role. 
 
 
 
 
©2019 Inductive Automation Página 260 de 397 
Segurança 
Adicionando novos usuários 
Agora, vamos criar um usuário chamado oper. 
1. Na guia Users, clique em Add User. 
 
2. Na janela Add User, defina o seguinte 
Nome de usuário: oper 
senha: password 
Funções: marque a caixa Operator 
3. Clique no botão Add User. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 261 de 397 
Segurança 
 
 
 
4. Por fim, adicionaremos um usuário "convidado" sem funções. Clique na guia Users e 
clique no link Add User. 
5. Na janela Add User, defina o seguinte: 
Nome de usuário: guest 
senha: password 
Funções: deixe ambas as caixas de funções desmarcadas. 
 
 
 
 
©2019 Inductive Automation Página 262 de 397 
Segurança 
 
6. Clique no botão Add User.©2019 Inductive Automation Página 263 de 397 
Segurança 
Segurança do Componente 
Agora que temos alguns usuários para trabalhar, vamos configurar alguma segurança em 
uma janela. 
1. Volte para o Ignition Designer. 
2. Abra a janela Empty, que veio pré-criada em nosso Project Template. 
3. Adicione quatro botões Multi-State à janela da guia Buttons. Qualquer outro 
componente de entrada funcionará tão bem. 
4. Clique com o botão direito do mouse em um dos botões e selecione Security. Um novo 
painel de configurações de segurança é exibido. 
 
 
 
 
©2019 Inductive Automation Página 264 de 397 
Segurança 
5. Desmarque Inherit Permissions para aplicar nossa própria segurança. 
6. Na caixa de diálogo, você pode escolher quais restrições colocar no componente se o 
requisito de função abaixo não for atendido. Deixe Disable e Disable Events marcados. 
7. Na seção Exempt Role, verifique a função Administrator para conceder autorização 
a essa função. 
O usuário deve ter a função de administrador para usar o Button. 
 
Um ícone de segurança é exibido ao lado do componente, indicando que a segurança 
está configurada. 
 
 
 
 
©2019 Inductive Automation Página 265 de 397 
Segurança 
Agora o componente será desabilitado se o usuário não tiver a função de administrador. 
8. Configure as restrições de segurança nos outros três botões Multi-State da seguinte 
forma: 
Botão 2 - Hide - Operator 
Botão 3 - Access Denied Overlay - Administrator and Operator 
Botão 4 - Inherit Permissions (não configurar nada) 
9. Salve o projeto e inicie o Cliente para testá-lo. 
Se o usuário não tiver a função de administrador, o primeiro botão será desabilitado. Tente 
mudar os usuários para um que não tenha a função. Também vale a pena notar que 
apenas os operadores poderão ver o segundo botão - os administradores não. A função 
Administrator não é mais poderosa que a função Operator, exceto nas formas que 
configuramos explicitamente. 
Por fim, entrar como usuário convidado produzirá a sobreposição de acesso negado no 
terceiro botão, pois o usuário convidado não possui nenhuma das funções necessárias. Se 
o convidado tiver qualquer uma das funções, ele poderá acessar o recurso. 
 
 
 
 
 
©2019 Inductive Automation Página 266 de 397 
Segurança 
Colocando Segurança em uma Janela 
Você também pode colocar segurança em janelas e contêineres. Se você colocar segurança 
nos contêineres, ela se aplicará a todos os filhos dentro do contêiner. Os contêineres 
podem ser uma ótima maneira de bloquear vários componentes sem precisar configurar a 
segurança em cada um deles. 
Vamos colocar segurança em nossa janela de histórico. 
1. Clique com o botão direito do mouse na janela History e selecione Security. 
 
2. Aqui você notará que a única restrição é Do Not Open. Se marcarmos a caixa de 
seleção "Não abrir" e "Administrador", somente os administradores poderão acessar a 
janela. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 267 de 397 
Segurança 
 
3. Selecione File > Save. 
4. Experimente no Cliente. Quando você não tem privilégios, você recebe essa mensagem: 
 
 
 
 
 
 
©2019 Inductive Automation Página 268 de 397 
Segurança 
Aplicando Segurança em Todo o Projeto 
Outro lugar para aplicar a segurança é no projeto como um todo. 
1. Em Project > Properties no Designer, você pode definir as propriedades para que o 
projeto exija determinadas funções para permitir o login: 
 
2. Na janela de propriedades do projeto, selecione Project > General e você verá uma 
configuração de Required Roles. 
3. Defina a configuração de Required Roles para Operator. Agora você deve ter a função 
Administrator ou Operator para efetuar login no tempo de execução. 
 
 
 
 
©2019 Inductive Automation Página 269 de 397 
Segurança 
Segurança do Gateway 
O último local em que a segurança é usada é no próprio Ignition Gateway. Na guia Ignition 
Gateway Config, há configurações em Config > Gateway Settings que afetam como as 
pessoas podem fazer login nas várias páginas da página da Web do Gateway, bem como 
no Designer. 
Um perfil de autenticação controla o acesso a todas essas áreas. Por padrão, o perfil de 
autenticação chamado "default" é usado. 
 
Se você alterasse a função(ões) da página inicial para Administrator, isso forçaria os 
usuários a efetuar login para visualizar a página inicial do Gateway. 
Configurando SSL/TLS 
Por padrão, todas as solicitações feitas na página da Web do Ignition Gateway (incluindo 
conexões de clientes e sessões) não são criptografadas, o que significa que qualquer 
pessoa com acesso à rede do Gateway pode espionar a conexão. Para Gateways 
hospedados na nuvem, isso pode constituir uma vulnerabilidade de segurança muito séria. 
A configuração de conexões para usar a porta SSL do Gateway criptografa o tráfego e 
impede que terceiros escutem. 
O Gateway já está configurado para usar SSL, mas apenas em uma porta diferente daquela 
com a qual estamos trabalhando, a porta SSL (que tem como padrão 8043). Em Config 
> Networking > Web Server, é possível alterar esta porta. Há também uma opção 
Force Secure Redirect, que envia todo o tráfego que atinge o Gateway Web Server para 
a porta SSL, incluindo solicitações na página da Web do Gateway, bem como solicitações 
feitas por clientes e sessões. 
 
 
 
 
©2019 Inductive Automation Página 270 de 397 
Segurança 
Ao usar SSL, principalmente em um Gateway acessível publicamente, vale a pena importar 
seu próprio certificado SSL, disponível de uma Autoridade de Certificação de terceiros 
(CA). O certificado SSL integrado é auto-assinado, o que significa que os navegadores que 
acessam a página da Web do Gateway não confiarão nele. Encontrar a propriedade 
SSL/TLS Certificate na página Servidor Web e clicar em Details fornecerá uma interface 
guiada para visualizar o certificado atual e criar e importar o seu próprio. 
 
Zonas de Segurança 
Uma zona de segurança é um grupo de gateways, computadores ou endereços IP que 
compartilham configurações de segurança unificadas. Embora o Ignition dependa muito 
de um modelo de segurança baseado em função, é possível configurar algumas restrições 
de segurança de alto nível com base na zona de segurança, controlando assim o acesso 
com base na origem de uma determinada solicitação de recurso, em vez de no usuário 
que a está solicitando. 
 
 
 
 
©2019 Inductive Automation Página 271 de 397 
Segurança 
As zonas de segurança podem ser configuradas em Config > Security > Security Zones 
na página da Web do Gateway. A partir daí, basta clicar em Create New Security Zone..., 
dar um nome à zona de segurança e adicionar endereços IP, nomes de host e/ou nomes 
de gateway que devem corresponder à zona. 
 
Quaisquer conexões que não correspondam a nenhuma zona de segurança serão 
descartadas na zona Default. 
Para configurar a segurança por zona, navegue até Config > Security > Service 
Security. A partir desta página, você pode configurar uma política para cada zona, 
restringindo o acesso de Alarmes, Provedores Históricos e Tags. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 272 de 397 
Capítulo 17 
 
Janelas Pop-up 
 
 
 
 
Nos capítulos anteriores, criamos um template para mostrar os dados de Tag para 
nossos motores. Além disso, tornamos o modelo dinâmico, para que ele pudesse 
analisar os dados de qualquer motor único, em vez de estar vinculado a um único 
motor. Neste capítulo, exploraremos uma tarefa semelhante, usando uma janela 
pop-up para mostrar dinamicamente informações mais detalhadas para um 
determinado motor. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 273 de 397 
Janelas Pop-up 
Criando uma Janela Pop-up 
Neste exercício, estaremos configurando uma janela pop-up parametrizada. Ou seja, uma 
janela pop-up querecebe um parâmetro e usa esse parâmetro para decidir para quais de 
nossos itens (áreas, estações, motores, etc.) queremos mostrar os dados. Essa 
abordagem, principalmente, eliminará a necessidade de criar uma nova janela pop-up para 
cada motor. 
Crie uma janela pop-up de motor detalhada 
1. No Project Browser, expanda a pasta Windows/Popups e clique com o botão direito do 
mouse na janela Popup. Selecione a opção Duplicate. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 274 de 397 
Janelas Pop-up 
2. Clique com o botão direito do mouse na nova janela pop-up (1) e selecione Rename. 
3. Dê à nova janela um nome de Motor Details e aperte enter. 
4. Edite o componente Header Label para dizer Motor Details. 
É importante saber que quando você passa um parâmetro para uma janela, o valor é 
passado para as propriedades personalizadas do Root Container da janela de destino. 
Por exemplo, se você passar um parâmetro de string chamado MotorName em uma 
janela pop-up, a janela pop-up deverá ter uma propriedade de string chamada 
MotorName como uma propriedade personalizada em seu Root Container. O Root 
Container é onde o Ignition coloca todos os parâmetros de passagem. 
5. Clique com o botão direito do mouse no Root Container da janela e selecione 
Customizers> Custom Properties. 
 
6. Na janela Custom Properties, clique no ícone Add para adicionar uma nova 
propriedade personalizada. 
7. Especifique MotorName como o nome da propriedade e String como o tipo. 
 
 
 
 
©2019 Inductive Automation Página 275 de 397 
Janelas Pop-up 
8. Clique em OK. 
Agora o MotorName é uma propriedade personalizada que aparece na janela Root 
Container. 
 
Nota: Nunca vincule a propriedade customizada na janela pop-up, pois passaremos o valor 
para ela. Se estiver vinculado, ele substituirá o valor passado. 
9. Arraste o template Motor para a janela. 
O template Motor é um bom ponto de partida para mostrar informações detalhadas sobre 
o Motor. Observe que precisamos vincular o parâmetro UDT que o modelo está esperando. 
10. Clique no ícone de vinculação na propriedade Motor do template Motor. Precisamos 
vincular o modelo à instância correta do Motor UDT com base no parâmetro MotorName 
que a janela é passada. Podemos fazer uso de uma vinculação de Tag Indireta para 
encontrar o motor certo. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 276 de 397 
Janelas Pop-up 
 
11. Selecione a Indirect Tag no menu de Binding. A primeira parte da configuração da 
vinculação será selecionar uma Tag de motor de amostra. Depois disso, faremos uma 
única parte do caminho da Tag dinâmica, conforme nossa estrutura exige. 
12. No lado direito da interface da Tag Indireta, clique no ícone Tag. 
13. Expanda a pasta Tags e depois a pasta Motors. Selecione Motor 1 de dentro da pasta 
e clique em OK. 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 277 de 397 
Janelas Pop-up 
 
14. A única coisa que resta a fazer é substituir dinamicamente "Motor 1" no caminho da 
Tag pelo parâmetro MotorName passado na janela Popup. 
15. Apague "Motor 1" do caminho da Tag, mas deixe o resto do caminho (incluindo o "/"). 
Em seguida, com o cursor ainda localizado onde o texto "Motor 1" estava, clique no ícone 
Insert Property no lado direito. Na árvore Property, expanda o Root Container, selecione 
a nova propriedade MotorName e clique em OK 
Você verá um {1} inserido no Indirect Tag Path e uma nova entrada na tabela References. 
16. Marque a caixa de seleção Bidirecional para permitir a gravação de volta na Tag e 
clique em OK. 
 
 
 
 
 
 
©2019 Inductive Automation Página 278 de 397 
Janelas Pop-up 
 
17. Arraste um campo de Numeric Text da guia Input da tabela Component Palette 
abaixo do template. 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 279 de 397 
Janelas Pop-up 
 
18. Além dos dados em nosso template, queremos fornecer uma maneira de visualizar e 
controlar a Tag de ponto de ajuste alto que configuramos em nosso UDT. Arraste um rótulo 
da guia Display ao lado do campo de texto numérico. 
19. Defina a propriedade Text como Amps High SP. 
 
 
 
 
©2019 Inductive Automation Página 280 de 397 
Janelas Pop-up 
20. No Property Editor, defina a propriedade Number TYpe como Float. 
21. Agora podemos vincular o valor do componente HighSP usando uma Indirect Tag 
Binding assim como o template Motor. Clique na vinculação da propriedade Value (Float). 
22. Selecione a Indirect Tag no menu de Binding. 
23. No lado direito da interface da Indirect Tag clique no ícone Tag. Expanda a pasta Tags 
e, em seguida, a pasta Motors. 
24. Selecione o Tag HighSP do Motor 1 UDT e clique em OK. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 281 de 397 
Janelas Pop-up 
25. Agora substitua o texto "Motor 1" no caminho do Tag pelo parâmetro MotorName 
passado na janela Popup. Exclua "Motor 1" do caminho da Tag, mas deixe o restante do 
caminho (incluindo os dois caracteres "/"). 
26. Em seguida, com o cursor ainda localizado onde estava o texto "Motor 1", clique no 
ícone de inserir propriedade no lado direito. 
27. Na árvore Property, expanda o Root Container, selecione a nova propriedade 
MotorName e clique em OK. 
28. Marque a caixa de seleção Bidirectional para permitir a gravação de volta na Tag e 
Clique OK. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 282 de 397 
Janelas Pop-up 
29. Finalmente, para nosso botão HOA no template Motor, adicionaremos segurança, para 
que apenas os operadores possam fazer alterações no valor HOA de um Motor. Para fazer 
isso, precisamos voltar para a definição do Template do Motor. Clique duas vezes no 
Template do Motor para abri-lo. 
30. Clique com o botão direito do mouse no botão Multi-State e selecione Security. 
Desmarque Inherit Permissions e certifique-se de que as propriedades Disable e 
Disable Events estejam marcadas em restrições. Em Exempt Roles, verifique a função 
Operator para evitar que nossas restrições se apliquem aos usuários com a função. 
 
 
31. Você também pode adicionar as mesmas restrições ao campo de texto numérico do 
Amps HighSP no pop-up de detalhes do motor, para que apenas os operadores possam 
modificar os pontos de ajuste. 
32. Gostaríamos de abrir a janela pop-up quando um usuário clica em um modelo Motor. 
Abra o template Motor novamente. 
33. Para fazer com que o usuário clique na imagem de um motor, adicionaremos nosso 
script pop-up aberto à imagem. Clique com o botão direito do mouse no componente 
Union que está tingindo o motor e selecione Scripting.... 
 
 
 
 
 
 
©2019 Inductive Automation Página 283 de 397 
Janelas Pop-up 
 
34. Na janela Component Scripting [Motor], selecione mouseReleased no menu da 
árvore Event Handlers. 
35. Escolha a guia Navigation. 
36. Selecione o botão de opção Open/Swap, certifique-se de que o botão de opção Open 
e a caixa de seleção and Center estão selecionadas. 
37. No menu suspenso Window, escolha Popups/Motor Details. 
38. Marque a caixa Pass Parameters para passar o parâmetro MotorName necessário 
para a janela Popup. 
39. Clique no ícone Add à direita para adicionar um novo parâmetro. 
40. A entrada do Parameter Name é um menu suspenso. Selecione o MotorName na 
lista suspensa. 
Nota: O nome deve corresponder exatamente ao parâmetro que adicionamos ao Root 
Container da janela pop-up. 
41. Em seguida, precisamos definir qual valor deve ser passado. Optamos por usar um 
parâmetro MotorName (em oposição a, digamos, um parâmetro MotorNum) por um 
motivo simples: o MotorName já é uma propriedade exposta em nosso modelo. 
Com a linha de parâmetro selecionada, clique no ícone Insert Property no lado direito. 
 
 
 
©2019 Inductive Automation Página 284 de 397 
Janelas Pop-up 
Na árvore de propriedades, localize o parâmetroMotor para o modelo e expanda-o. 
Dentro, encontre e expanda a pasta Meta. Essa pasta foi criada automaticamente e contém 
algumas informações básicas sobre a instância UDT. Selecione a propriedade TagName e 
clique em OK. 
 
42. Clique em OK na interface Component Scripting. 
É isso! O Ignition agora passa o valor MotorName para a janela pop-up quando o usuário 
clica no motor apropriado na janela de visão geral. 
Salve seu projeto e experimente-o no cliente. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 285 de 397 
Janelas Pop-up 
 
Abrindo Várias Instâncias de uma Janela Pop-up 
Por padrão, você só pode ter uma instância da janela pop-up aberta por vez. Se a janela 
já estiver aberta, o Ignition a reabrirá com um parâmetro diferente. Se você quiser abrir 
várias instâncias de uma só vez, basta alterar o script. 
Abrindo várias instâncias de uma janela pop-up 
1. Volte para o Template do Motor, clique com o botão direito do mouse no componente 
Union que está tingindo o motor e selecione Scripting.... 
2. Clique no evento mouseReleased. 
3. Para alterar o script para abrir uma nova instância da janela em vez de apenas abrir a 
janela, basta clicar na caixa de seleção Additional Instance. 
Além disso, devemos desativar a caixa de seleção "and Center" para deixar as instâncias 
abertas em paz. 
 
 
 
 
©2019 Inductive Automation Página 286 de 397 
Janelas Pop-up 
 
Agora você pode abrir as janelas pop-up lado a lado. 
 
 
 
 
©2019 Inductive Automation Página 287 de 397 
Janelas Pop-up 
Criando um Easy Chart Indireto 
Nossa janela pop-up está funcionando bem. No entanto, seria bom mostrar alguns dados 
históricos relacionados ao nosso Motor em um gráfico na janela pop-up. Como temos 
apenas uma janela pop-up, temos que fazer com que o gráfico aponte indiretamente para 
o histórico correto que corresponde ao motor selecionado anteriormente. 
Fazendo o Easy Chart indireto 
Vamos adicionar um Easy Chart indireto à janela pop-up. 
1. Volte para a janela Motor Details e aumente-a para dar espaço para o gráfico. 
2. Encontre o Easy Chart na seção Charts da Component Palette e arraste-o para a janela. 
3. Começaremos adicionando algumas canetas de Tag ao gráfico. Na Tag Browser, 
encontre a Tag AMPS do Motor 1 e arraste-a para o gráfico. Faça o mesmo para a Tag 
HOA do Motor 1 e a Tag HighSP do Motor 1. 
 
4. No Property Editor no Easy Chart, defina o modo do gráfico para Realtime. 
 
 
 
 
©2019 Inductive Automation Página 288 de 397 
Janelas Pop-up 
Temos três canetas em nosso gráfico, uma Tag AMPS, uma Tag HOA e uma Tag HighSP. 
No entanto, a maneira como eles estão sendo exibidos não é muito útil. A Tag HOA pode 
ser 0, 1 ou 2, enquanto as Tags AMPS e HighSP podem ser potencialmente um número 
analógico muito grande. Para exibir esses dados de forma significativa no mesmo gráfico 
fácil, teremos que dividir nossas canetas Tag em Subplots separadas. 
5. Clique com o botão direito do mouse no Easy Chart, expanda Customizers e selecione 
Easy Chart Customizer. 
6. Começaremos adicionando um Subplot para nossa caneta HOA usar. Selecione a guia 
Subplots e clique no ícone Add para adicionar um subplot. 
7. Defina o Peso Relativo do Gráfico 1 para 3, deixando o peso do Gráfico 2 em 1. Isso 
fará com que o Subplot AMPS seja três vezes o tamanho do Subplot HOA. 
 
8. Em seguida, adicionaremos um Eixo para nossa caneta HOA usar. Selecione a guia Axes 
e clique no ícone Add para adicionar um eixo. 
9. O valor HOA pode ser 0, 1 ou 2, mas exibir esses números no eixo pode confundir 
nossos operadores. O que gostaríamos é uma maneira de mostrar "Hand", "Off" e "Auto" 
no eixo. Vamos configurar nosso eixo para fazer isso. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 289 de 397 
Janelas Pop-up 
Especifique as seguintes propriedades no eixo: 
Nome: HOA 
Etiqueta: HOA 
Tipo: Symbol 
Símbolos/Grid Bands: "Off, Auto, Hand" 
10. Há mais uma mudança que podemos fazer no Eixo. Como o Auto Range está ativado, 
o intervalo do eixo será de 0 a 2. No entanto, se o status do HOA for 0 ou 2, será difícil 
ver a caneta no gráfico, pois ela ficará na borda superior ou inferior. 
Para dar um pouco de preenchimento às canetas, desmarque Auto Range e configure 
os seguintes limites: 
Lower Bound: -0,1 
Upper Bound: 2,1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 290 de 397 
Janelas Pop-up 
 
11. Clique em OK para criar o Eixo. 
12. Finalmente, temos que configurar a caneta da Tag HOA para usar o subplot e o eixo 
que nós configuramos. Abra a guia Pens, selecione a caneta da Tag HOA em Tag History 
Pens e clique no ícone Edit para modificar a caneta. 
13. Defina o eixo como HOA e o subplot como 2. Clique em OK para confirmar as 
alterações na caneta. 
 
 
 
 
©2019 Inductive Automation Página 291 de 397 
Janelas Pop-up 
 
 
14. Clique em OK para confirmar as alterações no gráfico. Agora você deve ver as 
canetas em diferentes subtramas em seu gráfico. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 292 de 397 
Janelas Pop-up 
 
15. Agora que temos o gráfico bonito, queremos torná-lo dinâmico. Role para baixo até a 
parte inferior do Property Editor para o componente Chart. Existem cinco propriedades 
que armazenam a configuração do gráfico: 
• Canetas DB (DB Pens) 
• Tags de canetas (Tags Pens) 
• Canetas Calculadas (Calculated Pens) 
• Eixos (Axes) 
• Subplots 
Todas essas propriedades são conjuntos de dados, que permitem que toda a gama de 
detalhes de configuração seja armazenada para cada caneta, eixo ou subplot. 
Como arrastamos as canetas de marcação para o gráfico, o conjunto de dados de canetas 
de marcação agora contém dados: 
16. Clique no ícone Dataset View à direita da propriedade Tag Pens para ver as colunas 
que podemos alterar. 
17. Para desabilitar a capacidade do usuário de adicionar ou remover Tags históricos do 
Easy Chart durante o tempo de execução, desmarque as caixas de seleção na última 
coluna denominada USER_REMOVABLE. 
 
 
 
©2019 Inductive Automation Página 293 de 397 
Janelas Pop-up 
 
18. Uma das colunas é TAG_PATH. Você notará que cada Tag_path tem o caminho 
completo para a Tag assim: [~]Motors/Motor 1/Amps 
Precisamos alterar dinamicamente o caminho da Tag para cada caneta. O único tipo de 
ligação que nos permite fazer isso é a ligação de atualização de célula. 
 
19. Agora, clique no ícone de vinculação à direita de Tag Pens e escolha o tipo de 
vinculação Cell Update. Esse tipo de vinculação está disponível para nós porque estamos 
em uma propriedade Dataset. As associações de atualização de célula nos permitem 
vincular células individuais em um conjunto de dados a outras propriedades. 
20. Selecione a célula TAG_PATH da linha AMPS e clique no ícone Add Row para 
adicionar uma linha na tabela Cell Bindings apontando para essa célula. Selecionar uma 
célula primeiro significa que os campos Row e Column serão preenchidos para nós. 
 
 
 
©2019 Inductive Automation Página 294 de 397 
Janelas Pop-up 
 
21. Selecione a linha no conjunto de dados Cell Bindings, clique no ícone Insert Property 
e selecione a propriedade MotorName no Root Container da janela. 
 
 
 
 
©2019 Inductive Automation Página 295 de 397 
Janelas Pop-up 
Quase lá! O caminho da Tag não pode ser apenas a string Motor 1 ou Motor 2. Ele precisa 
ser o caminho completo para a Tag histórica apropriada. 
22. Clique duas vezes na célula para anexar ao campo Value. Adicione ao início e ao final 
dele para que fique assim: 
[~]Motors/{Root Container.MotorName}/AMPS 
 
23. Clique em OK. 
Agora o Ignition atualizará dinamicamente essa célula com base no parâmetro 
MotorName. Queremos preencher apenas uma célula primeiro, para que seja fácil 
encontrar erros se houver um erro. 
24. Agora, abraa vinculação novamente para fazer a mesma coisa para a Tag HighSP. 
Selecione a célula TAG_PATH para a Tag HOA e clique no ícone verde Add para adicionar 
uma linha na tabela Cell Bindings para essa célula. Copie e cole o campo Value da 
referência que já configuramos e altere o final da referência, para que fique assim: 
[~]Motors/{Root Container.MotorName}/HighSP 
25. Por último, faremos a Tag HOA. Selecione a célula TAG_PATH para a Tag HOA, e 
clique no ícone Add para incluir uma linha na tabela Cell Bindings para essa célula. Copie 
e cole o campo Value da referência que já configuramos e altere o final da referência, 
para que fique assim: 
[~]Motors/{Root Container.MotorName}/HOA 
É isso! Agora você tem um Easy Chart indireto. Salve o projeto e inicie um cliente para 
testá-lo. Abra cada pop-up do motor e veja a alteração do gráfico. 
Criando um Display de Alarme Dinâmico 
A última coisa que iremos adicionar à nossa janela pop-up é uma tela que mostrará os 
alarmes ao vivo para o motor especificado. Para isso, utilizaremos a Alarm Status Table 
com a qual trabalhamos nos capítulos anteriores. 
 
 
 
©2019 Inductive Automation Página 296 de 397 
Janelas Pop-up 
Configurando a Alarm Status Table 
1. Localize o componente Alarm Status Table na seção Alarming da Component Palette 
e arraste-o para uma janela pop-up. 
2. Antes de adicionarmos um filtro à Alarm Status Table, queremos torná-la mais bonita. 
Coloque o Designer no modo de visualização para editar os cabeçalhos. 
3. Você pode clicar com o botão direito do mouse no cabeçalho e selecionar cada coluna 
ou desmarcar até ter apenas o que precisa. Mostre quatro estas colunas: 
Active Time 
Display Path 
Current State 
Priority 
4. Por padrão, a tabela Alarm Status exibe todos os alarmes em nosso sistema. Precisamos 
configurar um filtro que só permitirá a exibição de alarmes para o motor atual. No Property 
Editor da Status Alarm Table, localize a propriedade Filter de associação de exibição e 
clique no ícone de vinculação. 
 
5. Queremos configurar um Display Path Filter que corresponda apenas aos alarmes do 
motor especificado. A abordagem mais fácil é filtrar quaisquer alarmes que não tenham 
nosso MotorName em algum lugar no caminho de exibição. 
 
 
 
©2019 Inductive Automation Página 297 de 397 
Janelas Pop-up 
Selecione um tipo de Expression e use o ícone Insert Property no lado direito para 
puxar a propriedade MotorName para a expressão. Em seguida, modifique a expressão 
para ler: 
"*" + {Root Container.MotorName} + " *" 
Essa expressão está enviando caracteres de asterisco ao MotorName; sem eles, teríamos 
que corresponder exatamente ao caminho de origem. Observe também que um espaço 
extra foi adicionado antes do segundo asterisco - isso é para evitar que o Motor 1 mostre 
os alarmes do Motor 10. 
 
6. Clique em OK para salvar a expressão. Agora você deve ver apenas alarmes para o 
motor atual na tabela Alarm Status. 
 
 
 
©2019 Inductive Automation Página 298 de 397 
Capítulo 18 
 
Criação de Scripts 
 
 
 
 
A criação de scripts oferece um grau significativo de flexibilidade e personalização 
onde as opções padrão disponíveis são insuficientes. Existem duas linguagens de 
script principais no Ignition: Python e Expression Language. 
Vamos agora focar na linguagem Python no Ignition. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 299 de 397 
Criação de Scripts 
O que é Python? 
Na maioria das vezes, quando falamos de "scripts", estamos falando de scripts Python. 
Python é uma linguagem de programação de propósito geral que foi desenvolvida no início 
dos anos 90 e ganhou popularidade significativa nos anos 2000. Nós gostamos porque é 
extremamente legível, elegante, poderoso e fácil de aprender. 
Como um bônus adicional, ele interage graciosamente com Java, dando aos 
programadores uma ferramenta extremamente poderosa quando combinada com o 
Ignition, que é escrito em Java. 
Python ou Jython? Você ouvirá frequentemente o Python ser chamado de "Jython" por 
usuários avançados do Ignition. Python é a linguagem, Jython é a implementação da 
linguagem que usamos. 
Na criação de scripts, existem duas técnicas da seguinte forma: 
• Criando e acessando variáveis 
• Usando instruções de fluxo de controle 
As duas formas mais comuns de fluxo de controle são instruções If e For Loops. 
Aprendendo Python 
Python é fácil de aprender porque sua sintaxe é intuitiva e fácil de ler. 
Olá Mundo 
Começaremos com o exemplo com o qual a maioria das linguagens de programação 
modernas começa; exibindo as palavras "Hello World". Para fazer isso, precisamos de um 
ambiente para escrever nosso código. O console de script permite criar código e executá-
lo dentro da ferramenta. Você o encontrará no menu Ferramentas. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 300 de 397 
Criação de Scripts 
 
Uma vez aberto, queremos adicionar algum código ao lado esquerdo do console. O script 
a seguir imprimirá "Hello World" no console de saída à direita. 
print "Hello World" 
A palavra-chave print é uma ferramenta útil em Python, permitindo que você coloque texto 
no console de saída. Isso é útil para depurar seus scripts. Você pode imprimir várias coisas 
separando-as com vírgulas. 
 
 
 
 
©2019 Inductive Automation Página 301 de 397 
Criação de Scripts 
Comentários 
Comentários são notas que você pode deixar em seu código. Embora não seja uma técnica 
específica em Python, eles podem ser muito úteis para descrever o que o código faz e por 
que você escolheu escrever o código da maneira que fez. Muitas vezes, seus comentários 
o ajudarão a lembrar o que o script faz quando você não passa por ele há muito tempo. 
Crie um comentário usando o sinal de hashtag antes de seu comentário. Após o sinal de 
hash (#), tudo depois será um comentário. O comentário pode estar na sua própria linha 
ou no final de uma linha de código existente. 
# Este é um comentário 
print "Testing" # Isso também é um comentário 
Onde o Python é Usado? 
Python é usado em muitos lugares no Ignition. O lugar mais aparente, está nos 
manipuladores de eventos do componente. Scripts de evento de projeto e módulos de 
script são dois outros lugares importantes onde o Python é usado. 
Manipuladores de eventos 
A manipulação de eventos permite que você use scripts para responder a uma ampla 
variedade de eventos disparados por componentes. Isso permite configurar janelas que 
são muito interativas e são uma parte importante do design do projeto nos módulos Vision 
e Perspective. 
Um evento pode ser muitas coisas, como um clique do mouse, um pressionamento de 
tecla ou simplesmente uma alteração de propriedade. Sempre que esses eventos ocorrem, 
um script pode ser chamado para "tratar" o evento. Diferentes componentes podem 
disparar diferentes tipos de eventos. 
Os eventos são organizados em conjuntos de eventos. Por exemplo, o conjunto ou tipo de 
evento de mouse inclui mouseClicked, mousePressed e mouseReleased. Muitas vezes, os 
eventos em um conjunto de eventos compartilham as mesmas propriedades de seu objeto 
de evento. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 302 de 397 
Criação de Scripts 
Construtores de scripts Vision 
Ao criar um manipulador de eventos no Vision, você pode usar um dos práticos 
"construtores de scripts" em vez de escrever o script manualmente. Na janela Component 
Scripting, os construtores de scripts podem ser acessados como guias na parte superior. 
A última guia, Script Editor, permite que você escreva manualmente um manipulador de 
eventos. Você também pode usá-lo para visualizar o script que foi gerado pelo construtor 
de scripts, o que é uma boa maneira de começar a aprender a escrever manipuladores de 
eventos manualmente. 
 
Criando e Acessando Variáveis 
Você cria variáveis simplesmenteatribuindo um valor a elas. Você não precisa declarar as 
variáveis, porque o Python tem um sistema do tipo dinâmico. Isso significa que o Python 
descobre o tipo da variável em tempo real, quando o script é executado. 
As variáveis são criadas simplesmente atribuindo um valor a elas. As variáveis não 
precisam ser declaradas, pois o Python possui um sistema de tipos dinâmicos. Isso 
significa que o Python descobre o tipo da variável rapidamente quando o script é 
executado. 
Acessar uma variável é tão simples quanto criá-la. Basta usar o nome da variável onde 
você deseja usar seu valor. 
Embora o console de script seja um ótimo lugar para testar um script, a desvantagem é 
que ele não salva nosso trabalho em uma reinicialização do designer, nem pode interagir 
com componentes em uma janela. Assim, podemos colocar um script em um componente 
em uma janela para que possamos voltar a ele mais tarde. O componente mais fácil para 
adicionar um script é o Button. Podemos usar o evento de ação executada do botão para 
nosso script, que é quando o botão é pressionado. 
 
 
 
 
©2019 Inductive Automation Página 303 de 397 
Criação de Scripts 
1. Crie uma nova janela principal. Não se esqueça de adicionar uma nova guia à sua janela 
de navegação para que ela possa ser acessada a partir do cliente. 
2. Adicione um componente Button à janela. Clique com o botão direito e selecione 
Scripting para abrir o script do componente. 
 
3. Selecione o manipulador de eventos actionPerformed e alterne para a guia Script 
Editor. 
4. Adicione o seguinte script: 
var=6 
print var 
var="abc" 
print var 
 
 
 
 
 
©2019 Inductive Automation Página 304 de 397 
Criação de Scripts 
 
O código acima irá imprimir "6" e "abc" no console quando o botão for pressionado. 
5. Clique em OK para salvar o script. 
6. Experimente colocando o Designer no modo de visualização e clicando no componente 
botão. 
7. Ao contrário do Console de Script, onde a saída foi exibida dentro da ferramenta, não 
temos um Output Console aberto para ver nossos valores impressos. 
8. Para abrir um Output Console no Designer, selecione Console no menu Tools. 
 
Existem funções exclusivas para cada objeto que podem ser usadas para manipular o 
objeto de alguma forma. Por exemplo, objetos de string têm funções que podem alterar o 
caso dos caracteres ou remover caracteres da string. 
 
 
 
 
 
 
©2019 Inductive Automation Página 305 de 397 
Criação de Scripts 
var = "my string" 
 print var 
print var.strip() 
print var.upper() 
print var 
Strings literais podem ser digitadas usando aspas duplas ou aspas simples. Isso pode ser 
útil quando sua string contém uma citação ou outra. Você também pode usar o caractere 
de barra invertida para escapar de caracteres especiais. 
Os números podem ser digitados normalmente, como 42 ou 3,14159. 
Booleanos são True ou False (a primeira letra deve ser maiúscula). 
x = "isn’t this grand" y = 5.56 
cond = True 
print x, y, cond 
Python tem muitos operadores aritméticos que você pode usar para combinar valores: 
adição (+), subtração (-), divisão (/), multiplicação (*) e módulo (%) apenas para citar 
alguns. 
Há muitos operadores de comparação que você pode usar para construir sua condição, 
como: igual (==), diferente de (!=) maior que (>) e maior que ou igual (>=). 
Há também operadores lógicos que você pode usar para combinar várias condições: (e), 
(ou) e (não). 
Usando Declarações de Fluxo de Controle 
O fluxo de controle é outro conceito básico do Python que segue instruções lógicas para 
executar código em uma determinada ordem ou quando determinadas condições são 
atendidas. As duas formas mais comuns de fluxo de controle são instruções if e loops for. 
Instruções If 
As instruções If são bem conhecidas entre os programadores. As instruções if, fazem com 
que seu script execute um bloco de instrução somente se uma determinada condição for 
true. 
 
 
 
©2019 Inductive Automation Página 306 de 397 
Criação de Scripts 
Existem muitas maneiras de criar uma condição, mas geralmente isso é feito com os 
operadores de comparação. Existem muitos operadores de comparação que você pode 
usar para construir sua condição: igual (==), diferente de (!=) maior que (>) e maior ou 
igual (>=) para citar alguns. 
Há também operadores lógicos que você pode usar para combinar várias condições: (e), 
(ou) e (não). Vamos testar isso. 
1. Adicione um novo componente Button à janela e abra o editor de script para o evento 
actionPerformed. 
2. Adicione o seguinte código, que você verá que não fará nada: 
var = 10 
if varde mais, 
enquanto a formatação de strings permite que você insira valores em pontos específicos 
na string. Nós passamos por ambos abaixo. 
1. Crie um novo componente Button na janela e abra a janela de script. 
2. Selecione o manipulador de eventos actionPerformed e vá para a guia Script Editor. 
3. Digite o seguinte código que usa concatenação de strings: 
 temp = 65.8 
 city = "Folsom" 
print "The temperature in " + city + " is 
 currently: " + str(round(temp, 1)) + " °F." 
4. Teste o código. Depois de confirmar que funciona, adicione a seguinte linha para 
formatação de string abaixo do script original: 
 print "The temperature in %s is currently: %.1f °F." %(city, temp) 
 
Ambas as impressões exibirão a mesma frase no Console usando métodos diferentes para 
criá-las. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 310 de 397 
Criação de Scripts 
 
Embora a concatenação seja bastante direta e funcione apenas em stings, a formatação 
de string tem muitos especificadores que você pode usar para inserir diferentes tipos de 
valores na string. 
Especificador de formato e Significado 
%% - Insere um sinal % na string final 
%c - Um único personagem. O valor deve ser uma string de comprimento 1 ou um número 
inteiro 
%d ou %i - Integer assinado 
%f - Ponto Floating, formato decimal 
%s - Uma String, converte o valor em uma string usando str() 
%u - Decimal não assinado 
%x ou %X - Hexadecimal não assinado 
Python no Ignition 
Funções do sistema 
A API de script do Ignition, que está disponível sob o nome do módulo "system", está 
repleta de funções que são úteis ao projetar projetos no Ignition. Essas funções não fazem 
parte da linguagem Python padrão, mas são incorporadas ao Ignition para facilitar a 
execução de certas tarefas comuns e interagir com vários sistemas no Ignition. No 
exemplo abaixo, abordamos algumas das coisas que você pode fazer com as funções do 
sistema. 
 
 
 
 
©2019 Inductive Automation Página 311 de 397 
Criação de Scripts 
1. Adicione um componente Button na janela. 
2. Abra o editor de script para o evento actionPerformed. 
3. Adicione o script abaixo: 
system.gui.messageBox("Hello World") 
 
Podemos exibir mensagens simples usando a função de caixa de mensagem. Observe 
como a caixa de mensagem mantém o foco na tela e não desaparece até que o usuário a 
descarte. A caixa de mensagem, juntamente com algumas outras funções, bloqueará a 
execução adicional do script enquanto estiver ativo. Eles normalmente aguardam a 
entrada do usuário de alguma forma. Vamos tentar adicionar outra função do sistema que 
irá capturar o endereço IP do Gateway. 
4. Adicione o seguinte script na parte inferior do seu código: 
 print system.util.getGatewayAddress() 
Observe como essa linha não será executada e imprimirá o endereço do Gateway no 
console até que a caixa de mensagem seja descartada. 
Você também pode obter informações de Tags ou manipulá-las de alguma forma a partir 
de um script usando funções do sistema. 
5. Adicione o seguinte script na parte inferior do seu código (como uma linha, sem 
quebras): 
 print system.tag.readBlocking (["[default]_GenSim_/Ramp/Ramp1"])[0].value 
 
 
 
 
 
 
©2019 Inductive Automation Página 312 de 397 
Criação de Scripts 
 
 
 
 
 
 
 
 
 
 
Script de Componentes 
Em um manipulador de eventos, o objeto de evento fornece contexto ao evento que 
disparou o script. Por exemplo, o objeto de evento para um clique do mouse terá as 
coordenadas xey de onde ocorreu o clique. Um evento de pressionamento de tecla, por 
outro lado, terá um código de tecla, mas não uma coordenada. Por meio desse objeto de 
evento, podemos percorrer a hierarquia da janela para obter valores de diferentes 
componentes. Para fazer isso, precisamos criar o que é conhecido como caminho de 
componente. Dentro do Vision, você só pode subir ou descer na hierarquia, mas nunca de 
um lado para o outro. Isso significa que, se você tiver dois componentes no mesmo root 
container, não poderá pular diretamente de um para o outro, mas deverá viajar até o 
ancestral comum e depois voltar para o outro componente. Vejamos como isso funciona 
no próximo exemplo. 
 
 
 
 
 
©2019 Inductive Automation Página 313 de 397 
Criação de Scripts 
Buscando uma entrada 
1. Adicione outro botão à janela e adicione um campo de texto ao lado dele. 
2. Abra a janela de script no Button e selecione o actionPerformed manipulador de 
eventos. Alterne para a guia Script Editor. 
3. Adicione o seguinte script: 
input = event.source.parent.getComponent("Text Field").text 
system.gui.messageBox(input) 
Observe como o caminho do componente salta de objeto para objeto até chegar ao destino 
do texto do campo de texto. Podemos então salvar isso em uma variável e usá-la em uma 
função do sistema que exibe nossa mensagem. 
Funções do componente 
Além de obter os valores dos componentes na janela, muitos componentes também 
possuem funções exclusivas que você pode usar. Um dos melhores exemplos é o Power 
Table, que possui uma função especial que permite imprimir o conteúdo da tabela. 
1. Adicione um Button à janela e adicione um componente Power Table ao lado dele. 
2. Na Power Table, selecione a propriedade TestData para adicionar alguns dados de teste 
à tabela. 
 
 
 
 
©2019 Inductive Automation Página 314 de 397 
Criação de Scripts 
3. Abra a janela do editor de script para o evento actionPerformed no componente 
Button. 
4. Adicione o seguinte script: 
 # print the table 
 
# get the table 
table = event.source.parent.getComponent('Power Table')’ 
 
# print 
 table.print() 
5. Clique em OK. 
6. Coloque o Designer no modo de visualização e clique no componente Button. 
Ao executar o script, uma caixa de diálogo de impressão aparece onde você pode 
selecionar as opções de impressão antes de imprimir. 
 
Essas funções de componente são exclusivas de cada componente e podem permitir que 
você manipule os componentes de maneiras interessantes. 
 
 
 
 
©2019 Inductive Automation Página 315 de 397 
Criação de Scripts 
Usando Funções de Extensão 
Além de adicionar scripts a manipuladores de eventos existentes, você também pode 
modificar componentes usando funções de extensão. Em vez de executar essas funções 
com base em algum evento externo, essas são funções que o próprio componente chama 
em determinados momentos. Você pode modificar o que essas funções fazem usando 
scripts. 
Muitos componentes têm várias Extension Functions que você pode usar para fazer 
alterações comuns neles. Por exemplo, o componente Power Table tem Extension 
Functions para configurar células individuais, responder a eventos de edição de células, 
criar menus de clique com o botão direito e muito mais. 
Vamos ver como colorir linhas inteiras no componente Power Table. 
1. Podemos usar a Power Table que usamos no exemplo anterior, então selecione-a. 
2. Clique com o botão direito do mouse no componente Power Table, selecione Scripting... 
e selecione a função de extensão ConfigureCell. 
3. Clique na opção Enabled na parte superior da janela para que você possa modificar 
sua função personalizada. 
 
 
 
 
 
©2019 Inductive Automation Página 316 de 397 
Criação de Scripts 
Todo o texto roxo entre aspas triplas (""") são notas sobre como essa função específica 
funciona. Especificamente, essa função é chamada para cada célula para determinar como 
ela se parece. Na parte inferior, há algumas linhas de código que vamos descomentar e 
ver o que ele faz. 
4. Selecione todo o texto comentado em cinza, exceto a primeira linha, que na verdade é 
um comentário. 
5. Pressione control + / para descomentar todo o código de uma vez. 
 
6. Pressione OK para vê-lo em ação. Você notará que todas as outras linhas na Power 
Table agora são cinza claro. 
 
 
 
 
 
 
 
 
 
©2019 Inductive AutomationPágina 317 de 397 
Criação de Scripts 
 
7. Retorne ao script para fazer algumas modificações. Queremos alterar o script para que 
ele também altere a cor da linha se o valor booleano estiver desmarcado. 
8. Você notará que não temos mais o botão seletor de propriedades disponível para nós, 
e isso é porque essas funções de extensão normalmente não têm um objeto de evento, 
então precisaremos construir o caminho nós mesmos usando o objeto self fornecido. 
Adicione o código abaixo: 
if selected: 
return {'background': self.selectionBackground} 
elif self.data.getValueAt(rowView, "Boolean Column") == 
False: 
return {'background': 'green'} 
elif rowView % 2 == 0: 
return {'background': 'white'} 
else: 
return {'background': '#DDDDDD'} 
 
 
 
 
 
 
©2019 Inductive Automation Página 318 de 397 
Criação de Scripts 
 
Scripts de Eventos de Cliente e Gateway 
Eventos de cliente e gateway são eventos especiais não baseados em componentes. Muitas 
vezes, esses scripts podem ser acionados automaticamente, sem que o usuário execute 
alguma ação para acioná-los. Esses eventos especiais também analisam o conceito de 
escopo ou onde o script é executado. 
Eventos do cliente 
Há um punhado de eventos de cliente diferentes que são acionados por ações diferentes. 
Como scripts em componentes, cada script pode ser acionado em cada cliente que está 
executando este projeto no momento. Isso significa que para scripts executados 
automaticamente como os scripts Timer, cada cliente executará o script em uma taxa 
definida. Um script em execução no Cliente é considerado no Client Scope. Normalmente 
você quer ter cuidado ao interagir com recursos globais como Tags desses scripts, pois 
você pode ter vários scripts de Cliente gravando no mesmo Tag ao mesmo tempo! 
Se você der uma olhada na seção Timer dos Client Events, você notará que já existe um 
script lá. Isso foi criado para nós pelo modelo de projeto que selecionamos no início da 
semana. Ele é executado a cada cinco segundos e verifica-se há quanto tempo o cliente 
está ativo. Se estiver inativo por mais de cinco minutos, ele bloqueará o cliente. Podemos 
desativá-lo clicando duas vezes no nome do script e desmarcando a caixa de seleção 
Enabled. 
 
 
 
 
 
 
©2019 Inductive Automation Página 319 de 397 
Criação de Scripts 
 
 
Eventos de Gateway 
Os eventos de gateway funcionam de maneira um pouco diferente dos eventos de cliente, 
embora muitos deles pareçam semelhantes. Enquanto os Eventos do Cliente são acionados 
por coisas que acontecem no Cliente, os Eventos do Gateway são acionados por coisas 
que estão sendo executadas no Gateway. Isso também significa que esses scripts são 
executados no escopo do gateway. Ao serem executados no escopo do gateway, esses 
scripts não podem afetar diretamente os objetos dentro do cliente, como janelas e 
componentes. 
Vejamos o Tag Change Event, que está presente tanto como Client Event quanto como 
Gateway Event. Quando o Gateway Tag Change Script é acionado, ele é executado uma 
vez no servidor Gateway. Quando essa mesma Tag aciona um Script de Alteração de Tag 
de Cliente, esse script é executado em todos os Clientes atualmente abertos que estão 
executando este projeto. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 320 de 397 
Criação de Scripts 
 
Biblioteca de Scripts do Projeto 
A Biblioteca de Scripts do Project é um local onde você pode criar suas próprias funções 
de script. Pense em funções de script como modelos, onde você pode criá-lo uma vez e 
usá-lo várias vezes. Abaixo, temos um exemplo simples para montar um. 
1. No Project Browser, abra a pasta Scripting. 
2. Clique com o botão direito do mouse na Project Library e selecione New Script. Dê-
lhe um nome de “myScripts”. 
3. Copie o código abaixo no script. 
 def myMessage(message): 
 system.gui.messageBox(message) 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 321 de 397 
Criação de Scripts 
 
4. Volte para a janela de script e adicione um botão à tela e entre em seu script. 
5. Chame a função referenciando primeiro o nome do script e depois o nome da função, 
como no script abaixo: 
myScripts.myMessage("This is my Project Script") 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 322 de 397 
Capítulo 19 
Perspective 
 
 
 
 
 
 
O Perspective é um módulo que permite criar recursos que permitem que um 
usuário faça a transição facilmente da visualização do projeto em um computador 
para a visualização em um dispositivo móvel. Tudo é baseado em tecnologias da 
Web, como HTML e CSS, que permitem criar telas que são exibidas no navegador 
da Web e podem responder facilmente às mudanças no tamanho da tela. 
Perspective é um sistema de visualização diferente do Vision, utilizando layouts 
diferentes que determinam onde os componentes estão na tela e como eles são 
redimensionados. Como o Perspective é iniciado no navegador da Web, você 
basicamente cria páginas da Web para as quais o usuário pode navegar com um 
URL. Essas páginas podem ter muitas visualizações, onde cada visualização possui 
componentes que se movem de acordo com o layout da visualização. 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 323 de 397 
Perspective 
Criando uma View 
A View nos permite visualizar componentes na tela e exibir dados semelhantes ao que 
faríamos no sistema Vision. Podemos criar uma View e ver como podemos adicionar 
componentes a ela. 
1. Crie uma nova View clicando com o botão direito do mouse na pasta Views na seção 
Perspective do Project Browser. 
Nome: Coordinate 
Disposição: Coordinate 
URL da página: Enabled, com um URL de "/" 
 
 
 
 
 
©2019 Inductive Automation Página 324 de 397 
Perspective 
2. Arraste um Cylindrical Talk para a View. Semelhante ao componente Vision Cylindrical 
Tank, também tem muitas propriedades em comum. 
3. Arraste um controle Slider para a View. Também é semelhante ao componente Vision 
Slider e queremos unir os dois. 
4. Selecione o Tank e configure uma vinculação na propriedade Value clicando no ícone 
de vinculação à esquerda do nome da propriedade. 
 
5. Na janela Edit Binding, selecione o tipo de propriedade e clique no botão Insert 
Property de propriedade à direita. Localize slider.props.value e selecione-o para a 
vinculação. 
 
 
 
 
©2019 Inductive Automation Página 325 de 397 
Perspective 
6. Você pode colocar seu Designer no modo de visualização para mover o controle 
deslizante e ver a alteração do valor do tanque. 
 
Vinculações de Tags 
As associações de tags funcionam da mesma maneira que no Vision, e podemos utilizar 
muito da funcionalidade de arrastar e soltar com a qual estamos acostumados. Basta 
adicionar um componente à View e arrastar e soltar um Tag nele para configurar 
automaticamente a vinculação na propriedade. 
Seleção Profunda 
Com tantos tipos de contêineres diferentes para aninhar um no outro para obter o layout 
desejado, é possível selecionar profundamente em componentes para interagir com 
qualquer um de seus filhos. Para selecionar profundamente um componente, clique duas 
vezes nele e algumas coisas mudarão. 
No Navegador de projeto, o componente agora terá um ícone de cruz ao lado dele em vez 
da raiz, indicando que é o componente selecionado em profundidade no momento. 
O restante da visualização ficará esmaecido, enquanto o componente não ficará. Qualquer 
filho do componente pode então interagir. Ao aninhar contêineres entre si, é uma 
ferramenta muito útil, permitindo que você acesse o contêiner e configure seus 
componentes filhos. 
 
 
 
©2019 Inductive Automation Página 326 de 397 
Perspective 
 
Enquanto estiver profundamente selecionado dentro de um contêiner, se houver outro 
contêiner aninhado dentro, você poderá selecionar mais profundamente simplesmente 
clicando duas vezesno contêiner filho. A seleção profunda permite selecionar em 
contêineres até onde você precisa ir. 
Para sair da seleção profunda e subir um nível, basta clicar fora dos limites do contêiner 
selecionado em profundidade. 
Coordenar o Dimensionamento do Layout 
O contêiner de coordenadas usa um sistema de layout que funciona como as janelas do 
Vision. Por padrão, está no modo Fixo, que funciona de maneira semelhante ao modo 
ancorado do Vision. O componente terá uma localização x e y definida com larguras e 
alturas que não mudam, independentemente do tamanho da View. 
No modo Porcentagem, o layout funciona de maneira semelhante ao modo relativo do 
Vision. Os componentes receberão x, y, largura e altura que é uma porcentagem de sua 
posição na visualização, o que permite que ela cresça e diminua com a visualização. 
Configuração de Páginas 
As páginas são abertas no navegador da Web quando você inicia um projeto Perspective. 
As páginas têm um URL e visualizações que são exibidas na página. 
Para configurar as Páginas, clique no ícone Settings (engrenagem) no canto inferior 
esquerdo do Designer. 
 
 
 
 
©2019 Inductive Automation Página 327 de 397 
Perspective 
 
Aqui na seção de configurações, você encontrará Configuration Page à esquerda. Você 
notará que já existe uma Página configurada com a URL ‘/’, que foi criada para nós 
automaticamente quando criamos a opção View com a opção URL da página habilitada. 
Novas Páginas podem ser criadas manualmente clicando no ícone Add. Cada página 
precisa receber um URL e uma visualização primária. Ele pode então ter visualizações 
encaixadas na borda da página. 
Iniciando Uma Sessão 
Iniciar uma sessão envolve simplesmente navegar para qualquer uma das páginas 
configuradas no Projeto. Isso envolve adicionar a URL da página ao final de uma URL base. 
A URL base será mais ou menos assim: 
GatewayIP:8088/data/perspective/client/projectName 
Portanto, uma página com um URL de '/' simplesmente precisa colocá-lo no final do URL 
base. 
As Sessões do Perspective também podem ser iniciadas na página da Web do Gateway na 
guia Home. Isso abrirá a sessão para a página definida com a URL de ‘/’. Isso significa que 
você deseja ter uma página definida com um URL de '/'. 
 
 
 
 
©2019 Inductive Automation Página 328 de 397 
Perspective 
 
Por fim, você também pode abrir a sessão no designer. Simplesmente vá para o menu de 
ferramentas na Seção do Perspective, selecione Launch Perspective...>Launch 
Session. Você também pode clicar com o botão direito do mouse em uma página na seção 
Page Configuration e selecionar Launch URL para iniciar a URL dessa página específica. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 329 de 397 
Perspective 
Templates no Perspective 
Embora não haja uma seção no Perspective pára Templates como existe no Vision, as 
Views podem ser incorporadas em outras Views da mesma forma que você colocaria um 
template em uma janela. 
Template do Motor 
Vamos montar um Motor Template no Perspective como fizemos no Vision. 
1. Crie uma nova View que usaremos para nosso template. 
Name: MotorView 
Layout: Flex 
Page URL: false 
 
2. No Property Editor, altere o tamanho da View para ter largura e altura de 200x200. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 330 de 397 
Perspective 
 
 
3. No Navegador de projeto, selecione a raiz e certifique-se de que sua propriedade de 
direção esteja definida como columm. 
4. Adicione um componente Label à View e defina a base para 50px 
5. Adicione um botão de vários estados. Edite as propriedades da seguinte forma: 
orientation: row 
grow: 1 
basis: 70px 
 
 
 
 
 
 
©2019 Inductive Automation Página 331 de 397 
Perspective 
6. Adicione um Flex Container. Edite as propriedades da seguinte forma: 
name: Row Flex 
direction: row 
grow: 0 
basis: 50px 
7. Faça uma seleção profunda no novo contêiner para que possamos adicionar 
componentes a ele. Adicione um rótulo ao contêiner Row Flex. Edite as propriedades da 
seguinte forma: 
text: Amps 
alignVertical: center 
grow: 1 
 
 
 
 
©2019 Inductive Automation Página 332 de 397 
Perspective 
8. Adicione também um componente de exibição de LED ao contêiner Row Flex e defina 
o grow para 1. 
9. Adicione um componente Coordinate Container ao MotorView. Edite as propriedades 
da seguinte forma: 
name: SVG Container 
mode: Percent 
10. Faça uma seleção profunda no Container SVG para que possamos adicionar um 
gráfico de motor a ele. 
11. Vá para Tools > Symbol Factory. Na caixa de pesquisa, digite "motor". 
12. Arraste o símbolo Simple motor 4 para o container. 
 
 
13. Clique com o botão direito do mouse na imagem do motor e selecione Flatten. Isso 
cria um contorno da imagem. Você verá no Project Browser que agora existem dois 
componentes de motor simples. 
 
 
 
 
 
 
©2019 Inductive Automation Página 333 de 397 
Perspective 
 
14. Selecione o Simple motor 5. No Property Editor, expanda a propriedade dos 
elementos. Em seguida, expanda a propriedade 0 e a propriedade de preenchimento. 
15. Ao lado da propriedade Paint, clique no quadrado Color Selector. Use a roda de cores 
para escolher uma cor amarela ou defina o valor na paleta para FFFF0066. 
 
 
 
 
©2019 Inductive Automation Página 334 de 397 
Perspective 
Styles 
Os Styles no Perspective oferecem uma maneira de alterar como um componente é exibido 
aplicando CSS. Eles são definidos em cada componente e qualquer combinação de 
configurações de CSS pode ser aplicada. Coisas como alterar o tamanho ou a fonte do 
texto ou definir cores de fundo ou margens. 
Adicionando um Style a View do Motor 
1. No MotorView, selecione profundamente o Flex Container e selecione o rótulo Amps. 
2. Nas propriedades do componente, clique no ícone Modify Style ao lado da propriedade 
Style. 
3. Um editor do Style é aberto com várias seções. Expanda a seção Text para fazer 
alterações nos estilos de texto. Aqui você pode alterar coisas como a cor do texto, fonte, 
tamanho e muito mais. 
4. Defina as seguintes propriedades na seção de texto: 
Font Size: 18px 
Font Family: Arial 
Text Align: center 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 335 de 397 
Perspective 
 
5. Clique em OK. Salve seu projeto. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 336 de 397 
Perspective 
Classes do Styles 
As classes do Styles oferecem uma maneira de criar um conjunto reutilizável de regras de 
estilo e aplicá-las em um grande conjunto de componentes. Assim como os modelos do 
Vision, eles podem ser alterados e cada componente que usa esse estilo será atualizado 
automaticamente. Ao desenvolver um projeto, queremos garantir que nossa aparência 
seja consistente em todas as visualizações. É uma boa ideia iniciar seu projeto com uma 
pequena lista das configurações de fonte que serão usadas em todos os lugares. Desta 
forma, seu projeto será mais fácil de ler. 
Criando uma classe de estilo de cabeçalho 
1. No Project Browser sob o objeto Perspective, clique com o botão direito do mouse na 
pasta Styles e selecione New Style.... 
2. Nomeie seu novo estilo Header. 
3. Defina as seguintes propriedades na seção de texto: 
Color: blue (#234077) 
Font Size: 26px 
Font Weight: bold 
Text Align: center 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 337 de 397 
Perspective 
 
4. Clique em OK. 
5. Selecione o componente Title Label do MotorView. 
6. Nas propriedades do componente, expanda o estilo e clique no ícone Expand ao lado 
da propriedade classes para ver todas as classes de estilo disponíveis. 
Você pode selecionar quantas classes desejar e todas as configurações de CSS serão 
usadas de cada classe selecionada, desde que não se sobreponham. 
7. Selecione a classe Header.299 
Aprendendo Python ..................................................................................................................................................................... 299 
Python no Ignition ........................................................................................................................................................................ 310 
CAPÍTULO 19 ................................................................................................................ 322 
Perspective ..................................................................................................................................................................... 322 
Criando uma View ........................................................................................................................................................................ 323 
Vinculações de Tags ..................................................................................................................................................................... 325 
Seleção Profunda ........................................................................................................................................................................... 325 
Coordenar o Dimensionamento do Layout ....................................................................................................................... 326 
Configuração de Páginas ............................................................................................................................................................ 326 
Iniciando Uma Sessão ................................................................................................................................................................. 327 
Templates no Perspective ......................................................................................................................................................... 329 
Incorporando Views .................................................................................................................................................................... 350 
Layout do Breakpoint ................................................................................................................................................................. 357 
Segurança do Perspective ......................................................................................................................................................... 361 
CAPÍTULO 20 ................................................................................................................ 367 
Relatórios ........................................................................................................................................................................ 367 
Criando um Relatório Básico em PDF .................................................................................................................................. 368 
 
 
©2019 Inductive Automation Página 6 de 397 
Adicionando Dados ao Seu Relatório ................................................................................................................................... 369 
Criando seu Relatório ................................................................................................................................................................. 374 
Cronograma ..................................................................................................................................................................................... 382 
Relatórios de Clientes ................................................................................................................................................................. 385 
CAPÍTULO 21 ................................................................................................................ 387 
Rede Gateway................................................................................................................................................................. 387 
Conecte-se a um Gateway ......................................................................................................................................................... 388 
Configurar um Provedor de Tags Remoto ......................................................................................................................... 390 
CAPÍTULO 22 ................................................................................................................ 392 
Backups ............................................................................................................................................................................ 392 
Backup/Restauração do Gateway ......................................................................................................................................... 393 
Criando um Backup Agendado ................................................................................................................................................ 394 
Backup/Restauração do Projeto ............................................................................................................................................ 395 
 
 
 
 
©2019 Inductive Automation Página 7 de 397 
 
 
Bem-vindo 
 
 
 
Obrigado por escolher o Ignition by Induction Automation, um software 
SCADA/HMI de automação industrial altamente configurável. 
Sobre este treinamento 
Usaremos uma abordagem passo a passo para ensinar a você os principais 
recursos e capacidades oferecidos pelo Ignition. Focamos na plataforma Ignition 
e seus principais módulos: Vision, Perspective, Ponte SQL, Histórico de Tags, 
Relatórios e Alarmes. 
Embora a arquitetura do Ignition seja modular, os módulos são perfeitamente 
integrados para que você possa se concentrar nas tarefas que estão sendo 
executadas. 
Algumas das coisas que você aprenderá neste treinamento são: como instalar o 
software, conectar-se a PLCs e Bancos de Dados SQL, criar seus próprios projetos, 
criar Tags e armazenar histórico, iniciar Clientes e Sessões, definir alarmes e 
notificações e gerar relatórios. 
Vamos começar! 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 8 de 397 
 
 
 
Capítulo 1 
Introdução ao Software 
 
 
 
 
 
 
 
Este capítulo apresenta você ao Ignition. Ele descreve o que é o Ignition, o que 
ele pode fazer, quais são os módulos e como o Ignition pode ser usado em 
diferentes situações, como redundância e segurança de rede. 
O que é o Ignition? 
O Ignition é uma plataforma de software para criar aplicações personalizadas de 
interface homem-máquina (IHM), controle de supervisão e aquisição de dados 
(SCADA), sistema de execução de fabricação (MES) e Internet das Coisas 
Industrial (IIoT). O Ignition foi projetado desde o início para ser acessível e fácil 
de começar, ao mesmo tempo em que é flexível e capaz de escalar até os 
maiores projetos. O Ignition é instalado como software de servidor e baseia-se 
fortemente nas tecnologias atuais da web. 
 
 
 
 
 
 
Introdução ao software 
 
 
©2019 Inductive Automation Página 9 de 397 
Fluxo Básico do Ignition 
O Ignition é único no espaço industrial porque é centrado no servidor. Você inicia um 
Designer e extrai dados do Gateway. Então, quando você salva seu projeto, ele é 
armazenado de volta no Gateway. Quando os clientes de tempo de execução são abertos, 
eles também extraem do Gateway. Isso significa que qualquer computador que tenha uma 
conexão com o Gateway estará sempre atualizado. 
O Que o Ignition Pode Fazer? 
O Ignition possui uma arquitetura unificada que fornece uma maneira de criar qualquer 
coisa que você precise. Ele pode ser usado para SCADA, histórico, relatórios, aplicativos 
de banco de dados, alarmes e muito mais. Você também pode misturar©2019 Inductive Automation Página 338 de 397 
Perspective 
 
8. Você verá a atualização do rótulo para o Header Style. 
 
 
 
 
©2019 Inductive Automation Página 339 de 397 
Perspective 
9. Vamos fazer uma mudança na classe de estilo. Você pode adicionar estados de elemento 
adicionais, como um mouseover, para mostrar algo diferente quando o mouse se move 
sobre o componente. Abra a classe de estilo Header no Project Browser. 
10. Em Styles Rules, clique no ícone Add à direita e selecione a opção Element State. 
11. Selecione o novo Element State na lista à esquerda e altere o menu suspenso Element 
State para pairar. 
12. Agora você pode alterar qualquer um dos elementos CSS para estados diferentes. 
Qualquer coisa não definida usará o Base Style. Para reverter as cores de teste e de fundo, 
defina as seguintes propriedades: 
Text color: white (#FCFCFC) 
Background Color: blue (#234077) 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 340 de 397 
Perspective 
 
Parâmetros e Vinculações 
Agora que temos o Motor View configurado para ficar bem, podemos adicionar vinculações 
para tornar tudo dinâmico. Assim como no Vision, precisamos saber qual motor estamos 
procurando para configurar nossas vinculações. Para fazer isso, temos parâmetros de 
visualização para nos permitir passar valores para a visualização. 
Criar um parâmetro 
1. Selecione o MotorView no Project Browser. 
2. Sob as propriedades na seção PARAMS, clique no link Add View Parameter... e 
selecione a opção Value. Isso lhe dará um par key:value que podemos editar. 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 341 de 397 
Perspective 
 
3. À direita deste parâmetro há um ícone de seta que indica a direção do parâmetro. Você 
pode clicar nesta seta para tornar o parâmetro um parâmetro Input, Output ou InOut. 
Deixe-o apontando para a esquerda (Input). Isso nos permite passar informações para 
essa visualização quando ela é incorporada em uma visualização maior. 
4. Clique duas vezes na tecla PARAMS e digite "motorNum". 
5. Clique no value e digite um número de motor válido como "2". 
 
 
 
 
©2019 Inductive Automation Página 342 de 397 
Perspective 
Criando vinculações de Propriedade 
Agora podemos usar esta propriedade para criar ligações indiretas em todos os 
componentes do MotorView. As vinculações no Perspective são muito semelhantes às 
ligações no Vision. Cada propriedade possui um ícone de vinculação e cada vinculação 
possui vários tipos, como Tag, propriedade e assim por diante. 
Encadernação do título 
Para o Title Label, queremos apenas ver o nome do motor. Passamos apenas o número do 
motor, mas podemos construir o nome usando uma ligação de expressão. 
1. Selecione o componente Title Label. 
2. Na propriedade de texto, clique no ícone de binding à esquerda. 
3. Selecione o Expression Binding Type. 
4. No campo Expression, clique no ícone Insert Property à direita. 
5. Nessa caixa de diálogo, expanda as pastas view e params, selecione o parâmetro 
motorNum e clique em OK. 
 
 
 
 
©2019 Inductive Automation Página 343 de 397 
Perspective 
6. Para adicionar a palavra Motor ao início, atualize a expressão para o seguinte: 
"Motor " + {view.params.motorNum} 
7. Observe que há uma Binding Preview na parte inferior da tela. A partir daqui, sabemos 
que nossa expressão está correta e podemos ver qual será o resultado quando 
terminarmos. Clique no botão OK na parte inferior. 
 
Encadernação HOA 
O botão Multi-State precisa usar o motorNum PARAM para vincular a um valor de HOA 
dinâmico. Usaremos uma vinculação de Tag Indireta. 
1. Selecione o componente Multi-State Button e clique no ícone de binding da propriedade 
controlValue. 
2. Selecione o Tag Binding Type. 
3. Selecione o Indirect Radio Button . 
4. Você pode construir o Tag Path usando os botões Tag e Property Selector a direita. 
Clique no ícone Browse Tags e selecione Motors/Motor 1/HOA Tag. 
 
 
 
 
©2019 Inductive Automation Página 344 de 397 
Perspective 
 
5. Apague o "1" no Tag Path e, deixando o cursor ali, clique no ícone Insert Property. 
6. Selecione a propriedade view -> params -> motorNum. Clique OK. Você verá uma 
referência {motorNum} adicionada ao Tag Path. 
7. Marque a caixa de seleção Bidirectional. 
 
 
 
 
©2019 Inductive Automation Página 345 de 397 
Perspective 
8. Clique em OK. 
9. No Property Editor, clique com o botão direito do mouse na propriedade controlValue 
e escolha a opção Copy Binding. 
10. Clique com o botão direito do mouse na propriedade IndicatorValue e escolha a 
opção Paste Binding. 
 
Amps Binding 
Da mesma forma, queremos que o LED Amps seja vinculado indiretamente ao Tag 
AMPS. Iremos vincular o LED Amps da mesma maneira. 
1. Selecione profundamente o contêiner Flex e selecione o componente LED. 
 
 
 
 
©2019 Inductive Automation Página 346 de 397 
Perspective 
2. No Property Editor, clique no ícone binding da propriedade value. 
3. Na janela Edit binding, selecione o tipo Tag Binding e o Indirect radio button. 
4. Clique no ícone Browse Tags à direita e selecione Motors/Motor 1/AMPS Tag. Clique 
em OK. 
5. Apague o "1" no Tag Path, e deixando o cursor ali, clique no ícone Insert Property. 
6. Selecione a propriedade view -> params -> motorNum. Você verá uma referência 
{motorNum} adicionada ao Tag Path. 
 
7. Clique em OK para enviar. 
Binding do Tom da Imagem 
Iremos vincular a cor do Motor da mesma forma que o botão Multi-State, mas desta vez 
mudamos o valor do HOA para uma cor usando as Binding Transforms. 
 
 
 
 
©2019 Inductive Automation Página 347 de 397 
Perspective 
1. Selecione profundamente o container Coordinate e selecione o componente de 
imagem do motor superior. 
 
2. No Property Editor, expanda para a propriedade elements para localizar 
elements[0].fill.paint. 
3. Clique no ícone binding da propriedade de paint. 
 
 
 
 
©2019 Inductive Automation Página 348 de 397 
Perspective 
4. Na tela Edit Binding, selecione o tipo Tag Binding e o Indirect radio button. 
5. Clique no ícone Browse Tags à direita e selecione Motors/Motor 1/HOA Tag. 
6. Apague o "1" no Tag Path e, deixando o cursor ali, clique no ícone Insert Property. 
7. Selecione a propriedade view -> params -> motorNum. Clique OK. Você verá uma 
referência {motorNum} adicionada ao Tag Path. 
8. Agora que temos o valor, podemos alterá-lo com um Transform. Clique no botão Add 
Transform + abaixo da vinculação. 
9. Selecione o tipo de transformação Map e clique em Add Transform >. Isso nos 
permite mapear entradas e saídas em uma tabela. 
 
10. Na tabela Map, clique no ícone Add à direita três vezes para adicionar linhas à tabela 
além da linha Fallback. 
 
 
 
 
©2019 Inductive Automation Página 349 de 397 
Perspective 
 
11. Na coluna de tipo Input, digite um valor para cada linha: 0, 1 e 2. 
12. As colunas Input e Output podem alterar os tipos, se necessário. No cabeçalho da 
coluna Output, clique na palavra Value ou no triângulo à direita. Selecione Color para 
mapear números para cores. 
13. Clique na célula colorida da linha com valor 0 para alterar a cor. Selecione red. 
14. Agora para a mesma linha, clique no color wheel. Na parte inferior, arraste o controle 
slider horizontal (alpha ou transparency) para 40. 
 
 
 
 
 
 
©2019 Inductive Automation Página 350 de 397 
Perspective 
15. Repita para as outras cores. 1 é verde e 2 é amarelo. Todos devem ter uma 
transparência de 40. 
16. Defina a cor Fallback da mesma forma para preto e 40 de transparência. 
17. Clique em OK para enviar. 
Agora você pode selecionar o MotorView e alterar o parâmetro motorNum para ver tudo 
atualizado. Coloque o Designer no modo de visualização e altere o valor HOA para verificar. 
 
Incorporando Views 
Agora que temos uma visualizaçãoreutilizável, podemos adicioná-la a qualquer outra 
visualização no projeto. Para adicioná-lo a uma view maior, precisamos incorporá-lo. 
Existem algumas maneiras de incorporar views, e veremos duas maneiras de fazer isso 
com componentes: o componente Embedded View e o componente Carousel. 
Componente Embedded View 
Quando queremos incluir uma pequena dentro de uma visão maior, podemos usar o 
componente Embedded View. Este componente simples permite selecionar uma 
visualização e exibi-la. Vamos usá-lo para adicionar alguns MotorViews à Coordinate View 
grande. 
1. Abra a Coordinated View. 
2. Arraste um componente Embedded View para a Coordinate View. 
3. Nas propriedades Embedded View, defina a propriedade path como MotorView. Você 
pode selecioná-lo na lista suspensa. 
4. Clique OK. 
 
 
 
©2019 Inductive Automation Página 351 de 397 
Perspective 
 
Isso mostra os detalhes do MotorView, mas você pode notar que não há como selecionar 
um motor. Para fazer isso, precisamos adicionar um parâmetro. 
5. Expanda a propriedade params, clique no ícone Add Object Member e selecione 
value. 
 
 
 
 
©2019 Inductive Automation Página 352 de 397 
Perspective 
6. Clique duas vezes na key e digite "motorNum". Isso deve corresponder exatamente 
ao nome do parâmetro MotorView. 
7. Clique em value e digite um número de motor válido como "1". Agora você verá o 
MotorView preenchido com os dados do Motor 1. 
8. Você pode copiar/colar este componente várias vezes e alterar a propriedade motorNum 
para mostrar vários motores em sua visualização. 
 
 
 
 
©2019 Inductive Automation Página 353 de 397 
Perspective 
Componente Carousel 
Outra maneira de exibir várias exibições dentro de outra exibição é usar os outros 
componentes de incorporação. Um bom exemplo é o componente Carousel. Isso é focado 
em uma experiência móvel e permite que os usuários passem por uma lista de 
visualizações ou a definem para ser um letreiro de rotação automática. Vamos configurar 
uma página que seja útil principalmente em um smartphone. 
1. No Project Browser, clique com o botão direito do mouse na pasta Views e selecione 
New View.... 
2. Insira os seguintes valores para a nova view, certifique-se de marcar a caixa de seleção 
URL da página: 
Name: Carousel 
Layout: FlexPage 
URL: /carousel 
3. Clique no botão Create View. 
 
Selecionamos a visualização Flex porque só precisamos de um componente e é a maneira 
mais fácil de forçar um único componente a usar a visualização inteira. 
4. Arraste um componente Carousel para a view. 
5. Nas propriedades POSITION do componente Carousel, defina grow para 1. 
 
 
 
©2019 Inductive Automation Página 354 de 397 
Perspective 
6. Agora podemos começar a adicionar views ao Carousel. Na propriedade views existe 
um objeto 0 com parâmetros dentro dele. Expanda a propriedade views[0]. 
 
7. Defina a propriedade viewPath como MotorView. Clique OK. 
Isso mostra o motor padrão, mas podemos alterá-lo da mesma maneira que a Embedded 
View no exemplo anterior. 
8. Expanda a propriedade viewParams, clique no botão + Add Object Member… e 
selecione value. 
9. Clique duas vezes na key e digite "motorNum". Isso deve corresponder exatamente 
ao nome do parâmetro MotorView. 
10. Clique em value e digite "1". Agora você verá o MotorView preenchido com os dados 
do Motor 1. 
11. Para adicionar outra vista do motor, clique no ícone Add ao lado da propriedade de 
Views. 
 
 
 
©2019 Inductive Automation Página 355 de 397 
Perspective 
 
Você terá que definir as propriedades viewPath e viewParams para cada elemento, mas 
você pode copiá-las/colar, pois elas são muito semelhantes. 
12. Clique com o botão direito do mouse no elemento view[0] que já configuramos e 
selecione Copy. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 356 de 397 
Perspective 
 
13. Clique com o botão direito do mouse no novo elemento view[1] e selecione Paste. 
Você verá que viewPath e viewParams agora estão preenchidos. 
14. Expanda a propriedade viewParams e altere o valor da propriedade motorNum para 
2. 
 
15. Coloque o Designer no modo de visualização e mova-se entre Motor 1 e Motor 2 
clicando nas setas, pontos ou clicando e arrastando (deslizando) para a esquerda e para 
a direita. 
16. Agora repita os passos 12-15 para preencher o resto dos motores. 
17. Agora você pode iniciar a página /carousel na configuração da página do Perspective 
para testá-la. 
 
 
 
 
 
©2019 Inductive Automation Página 357 de 397 
Perspective 
 
Layout do Breakpoint 
Agora que temos views de tamanho grande e pequeno, podemos falar sobre outro tipo de 
layout de visualização: Breakpoint. A ideia por trás do layout Breakpoint é que um usuário 
verá diferentes visualizações com base no tamanho de seu dispositivo. Especificamente, 
uma visualização quando a largura é pequena e outra quando a largura é grande. As 
visualizações não precisam ser as mesmas, portanto, podem ter componentes ou layouts 
completamente diferentes. Vamos criar uma página que mostre a visualização Coordinate 
ao usar um dispositivo grande como um monitor de computador e a visualização Carousel 
ao usar um dispositivo pequeno como um telefone. 
Criando uma Página Breakpoint 
1. No Project Browser, clique com o botão direito do mouse na pasta Views e selecione 
New View.... 
2. Insira os seguintes valores para a nova visualização, certifique-se de marcar a caixa 
de seleção URL da página: 
Name: Breakpoint 
Layout: Breakpoint 
Page URL: false 
3. Clique no botão Create View. 
 
 
 
 
©2019 Inductive Automation Página 358 de 397 
Perspective 
 
4. A visualização Breakpoint será aberta e você poderá ver que não há nada nela. Na parte 
superior do Property Editor, há uma única configuração de Breakpoint e a capacidade de 
selecionar entre dois filhos: Small e Large. Selecione a opção Large clicando nela. 
 
Você só pode ter um componente no Breakpoint Large e um no Small em uma visualização 
de Breakpoint. Para nos permitir visualizar mais de uma coisa, vamos puxar uma 
visualização Embedded. 
5. Arraste um componente Embedded View para a visualização Breakpoint. 
6. No Property Editor, defina a propriedade de caminho da Embedded View para 
Coordinate. Ao contrário do MotorView, não temos parâmetros para definir. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 359 de 397 
Perspective 
 
7. Clique em OK. 
8. Selecione o filho small nas configurações do ponto de interrupção na parte superior do 
Property Editor. Você notará que a visualização Breakpoint muda de volta para a tela vazia 
original. 
 
 
 
©2019 Inductive Automation Página 360 de 397 
Perspective 
9. Arraste outro componente Embedded View para a visualização Breakpoint. 
10. No Property Editor, defina a propriedade path da Embedded View para Carousel. Não 
há parâmetros a serem definidos para esta exibição. 
 
11. Agora que nossa visualização Breakpoint está configurada, precisamos de uma 
maneira de iniciá-la. Vamos para Perspective Page Configuration clicando no ícone Settings 
(engrenagem) no canto inferior esquerdo do Designer. 
12. Na lista de configuração da página, clique com o botão direito do mouse na página raiz 
"/" e selecione Iniciar URL. 
Esta página está atualmente usando a Coordinate View como sua Primary View. 
13. De volta à página de configuração, altere o menu suspenso Primary View para nossa 
nova visualização Breakpoint. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 361 de 397 
Perspective 
 
Agora, quando você abrir o projeto, ele será padronizado para essa visualização. 
14. Inicie uma sessão novamente. Altere o tamanho da sua janela para ver seu breakpoint 
mudar quando a janela ficar abaixo de 640px ou acima de 640px. 
Segurança do Perspective 
Com o Perspective rodando no navegador da web, a segurançaé tratada de forma 
diferente dos Vision Clients. Os Provedores de Identidade são usados para autenticar 
usuários em uma Sessão do Perspective. Um provedor de identidade (IdP) é um sistema 
que mantém informações do usuário e pode autenticar usuários em vários aplicativos. 
Existem dois sistemas principais que os IdPs usam: OpenID e SAML. Cada IdP usa um 
desses sistemas e o Ignition pode se conectar a qualquer tipo. 
Enquanto o Ignition pode ser conectado a IdPs de terceiros, as User Sources do Ignition 
também podem ser usadas como IdP. Se você entrar na página Identity Providers na 
página da Web do Gateway, você notará que já existe um IdP chamado default. Esse IdP 
está vinculado à origem do usuário chamada padrão e autenticará todos os usuários nessa 
origem do usuário. 
 
 
 
 
 
©2019 Inductive Automation Página 362 de 397 
Perspective 
Níveis de Segurança 
Os Níveis de Segurança (Security Levels) são um novo sistema de segurança que funciona 
com as informações do usuário fornecidas pelo IdP para conceder aos usuários 
determinadas permissões que podem ser aplicadas posteriormente a um projeto do 
Perspective. Uma vantagem dos Níveis de Segurança é que eles não são baseados apenas 
em funções e podem, em vez disso, utilizar outras informações para determinar quais 
permissões um usuário deve ter. No entanto, como os níveis de segurança não estão 
conectados a um IdP, precisamos criar os diferentes níveis de segurança aos quais as 
informações do usuário do IdP podem corresponder. 
1. Vá para a guia Config da página da Web do Gateway. Role para baixo até a página 
Security Levels na seção Security. Queremos adicionar níveis para as funções que nossos 
usuários podem ter, para que possamos usar esses níveis para segurança. 
2. Navegue até o nó Roles da árvore e clique no botão Add Security Levels no canto 
inferior direito da tela. Dê ao nível um nome de Administrator. 
 
3. Selecione o nó Roles novamente e adicione outro nível. Dê ao nível um nome de 
Operator. 
 
 
 
©2019 Inductive Automation Página 363 de 397 
Perspective 
4. Clique no botão Save na parte inferior da tela para salvar os novos níveis. 
Segurança no Projeto do Perspective 
Agora que temos os Níveis de Segurança configurados, podemos usá-los dentro do projeto. 
Primeiro, o projeto precisa ter um conjunto de Provedores de Identidade. 
1. Abra as Propriedades do Projeto. 
 
2. Na seção Geral do Projeto (Project General), clique no ícone Expand e selecione um 
Provedor de Identidade que o projeto usará. 
 
 
 
 
©2019 Inductive Automation Página 364 de 397 
Perspective 
Agora que você escolheu um IdP, há três locais onde a segurança pode ser habilitada. 
Protegendo o Projeto 
Projetos no Perspective, por padrão, não exigem que um usuário efetue login, mas você 
pode exigir determinados níveis de segurança. Nas Propriedades do Projeto (Project 
Property), navegue até a seção Perspective Permissions e você pode escolher quais níveis 
são necessários para usar o projeto. 
 
Protegendo uma View 
Cada visualização individual também pode ser protegida usando Níveis de Segurança. 
Basta clicar com o botão direito do mouse na visualização e selecionar Configure View 
Permissions. Aqui você pode configurar permissões para uma View como faria para todo 
o projeto. 
 
 
 
 
 
©2019 Inductive Automation Página 365 de 397 
Perspective 
 
Protegendo Scripts 
Por fim, as ações de script que são acionadas com base em eventos de componentes 
também podem ser protegidas. Para adicionar uma ação de script a um evento de 
componente, basta clicar com o botão direito do mouse no componente e selecionar 
Configure Events. Após selecionar um evento, clique no botão de adição para adicionar 
uma ação de script. Depois de escrever um script, você pode clicar no botão Security 
Settings na parte inferior da janela para exigir determinados níveis de segurança para 
executar o script, da mesma forma que os níveis de segurança podem ser necessários 
para acessar um projeto. 
 
 
 
 
 
 
©2019 Inductive Automation Página 366 de 397 
Perspective 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 367 de 397 
Capítulo 20 
Relatórios 
 
 
 
 
O módulo Relatórios cria relatórios PDF ricos e dinâmicos a partir de qualquer 
dado. O Ignition Reporting Module é uma solução de relatórios independente que 
simplifica e aprimora o processo de geração de relatórios do início ao fim. 
Você pode gerar relatórios a partir de arquivos existentes ou criá-los do zero. 
Extraia dados de várias fontes e crie relatórios com uma interface simples de usar. 
Adicione tabelas, gráficos, tabelas, crosstabs, formas e outros componentes para 
um impacto visual. Salve seus relatórios nos formatos de arquivo PDF, HTML, CSV 
e RTF e configure o agendamento e a entrega automáticos. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 368 de 397 
Relatórios 
Criando um Relatório Básico em PDF 
O Módulo de Relatórios permite criar relatórios dinâmicos em PDF. 
Criando um Relatório 
Vamos criar um relatório que exiba o histórico armazenado por um Transaction Group. 
1. No Designer, no Project Browser, selecione o item Reports. 
 
A área de trabalho mudará para a visualização de relatórios. 
2. No Project Browser, clique com o botão direito do mouse no item Reports e 
selecione New Report. 
 
 
 
 
©2019 Inductive Automation Página 369 de 397 
Relatórios 
3. Clique com o botão direito do mouse em New Report, escolha Rename ou pressione 
F2 e nomeie-o como Basic Report. 
Você verá cinco seções no relatório: Report Overview, Data, Design, Preview, and 
Schedule: 
 
Report Overview: Esta página é uma coleção de informações úteis sobre seu relatório. 
Ele será preenchido à medida que o relatório for gerado e usado. 
Data: Esta página é onde você define os dados que entram no seu relatório. Você pode 
adicionar tantos parâmetros de tipo de dados básicos e fontes de dados de tipo de conjunto 
de dados para uso no relatório. Os dados podem ser dependentes de outros parâmetros, 
bem como aninhados em conjuntos de dados. 
Design: Crie seus relatórios adicionando gráficos e tabelas às suas páginas. Agrupe 
tabelas e insira dados da maneira que desejar. Os cálculos em fontes de dados são gerados 
automaticamente. 
Preview: Visualize seu relatório em andamento. Exiba suas informações de dados e 
design para visualizar dentro do designer. Há um limite de consulta aplicado 
automaticamente para evitar a solicitação de muitos dados. 
Schedule: Configure agendamentos em seu relatório para imprimir, salvar, enviar por e-
mail automaticamente e muito mais. 
Adicionando Dados ao Seu Relatório 
Vamos adicionar alguns dados do banco de dados ao nosso relatório com base nos horários 
de início e término. 
1. Clique na guia Data no Designer. 
A StartDate e a EndDate já estão criadas para você. Por padrão, eles fazem um intervalo 
de tempo começando 8 horas atrás e terminando agora. 
2. Como nossos dados estão sendo armazenados em uma taxa muito rápida de 1 segundo, 
altere a Expressão StartDate para mostrar 8 minutos em vez de 8 horas. 
 dateArithmetic (now (), -8, "min") 
 
 
 
 
©2019 Inductive Automation Página 370 de 397 
Relatórios 
3. Clique no ícone Add para adicionar uma nova fonte de dados. Selecione SQL Query 
para adicionar um novo tipo de origem de consulta. 
Observação: esse tipo de consulta nos permite usar o construtor de consultas para 
gerar consultas para nós. 
 
4. Altere o nome da Data Key no canto superior direito para history. 
5. Em SQL Query Builder, defina a lista suspensa para MSSQL, isso dirá ao construtor 
qual sintaxe usar. 
6. Clique no botão Show Builder para começar a projetar sua consulta. 
7. Clique no nome da tabela history à direita e arraste-a para o painel SQL Query 
Builder.Você pode ver uma consulta que está sendo gerada para você na parte inferior. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 371 de 397 
Relatórios 
 
8. Clique nas caixas de seleção ao lado de cada uma das colunas Ramp e no t_stamp 
para trazer cada uma para a consulta. 
 
 
 
 
 
©2019 Inductive Automation Página 372 de 397 
Relatórios 
9. Você pode definir cada coluna para fazer parte da cláusula Where editando a tabela no 
meio, mas precisamos de algo um pouco mais complexo para este relatório. Clique no 
botão Apply para que possamos modificar nossa consulta para incluir os carimbos de data 
e hora de início e término. 
10. Modifique a consulta existente para selecionar em nossa tabela de histórico. 
SELECT history.t_stamp, 
 history.Ramp1, 
 history.Ramp2, 
 history.Ramp3 
FROM history 
WHERE history.t_stamp BETWEEN ? AND ? 
Você notará que as caixas de parâmetros aparecem na parte inferior quando você 
adiciona os pontos de interrogação. Clicar em uma dessas caixas destaca o "?" 
correspondente. 
 
 
 
 
 
©2019 Inductive Automation Página 373 de 397 
Relatórios 
11. Na caixa Parameter 1, clique no botão Report Parameters e selecione StartDate. 
12. Na caixa Parameter 2, clique no botão Report Parameters e selecione EndDate. 
 
13. Clique na guia Preview para verificar se sua consulta está correta. Você notará um 
erro na parte inferior se houver um problema. 
 
Agora você tem dados em seu relatório! O próximo passo é Projetá-lo. 
 
 
 
©2019 Inductive Automation Página 374 de 397 
Relatórios 
Criando seu Relatório 
Vamos adicionar um display para mostrar os dados que coletamos do banco de dados. 
Clique na guia Design no Designer. Essa tela é muito semelhante à seção Janelas do 
Designer. O módulo relatório tem sua própria coleção de componentes e propriedades. 
Adicione um Título 
1. Clique no componente Text e, em seguida, clique e arraste na parte superior da 
página. 
No Property Inspector, digite "My First Report" e clique no ícone Text para alterar o 
tamanho da fonte para 36 Bold. 
 
 
3. Você pode alterar o tamanho e a localização da forma do texto selecionando-a (clique 
para longe e para trás se o contorno estiver vermelho) e, em seguida, arrastando as 
alças cinzas. 
 
 
©2019 Inductive Automation Página 375 de 397 
Relatórios 
4. Arraste o componente para a borda cinza da página do relatório. Você vai vê-lo encaixar 
no canto. Expanda o componente para ter toda a largura do relatório. 
Adicionar um Intervalo de Datas 
1. No Key Browser, expanda a pasta Parameters. 
2. Arraste o StartDate para a tela sob o título. 
3. Estique o componente em toda a largura do relatório. 
 
4. Clique na guia Preview. Você verá sua StartDate, mas ela não inclui o carimbo de 
data/hora. 
5. Volte para a guia Design e selecione o componente StartDate. 
6. No Property Inspector, clique na guia Propertys. 
7. Altere a propriedade Date Format para adicionar um carimbo de data/hora. Para fazer 
isso, você pode digitar um valor ou clicar no ícone Calendar à direita para abrir uma lista 
de opções. Vamos inserir o nosso: "MMM d, y h:mm a" 
 
 
 
 
 
 
©2019 Inductive Automation Página 376 de 397 
Relatórios 
 
8. Volte para a guia Preview para ver a alteração. 
9. Na guia Design, agora podemos adicionar a EndDate ao relatório. Com o componente 
StartDate ainda selecionado, clique na guia Edit Text no Property Inspector. 
10. Você pode adicionar um texto diretamente ou arrastar as teclas do Key Browser. 
Arraste o EndDate para a área Edit Text. 
11. Agora podemos adicionar um texto entre as duas teclas, digite: 
"@StartDate@ to @EndDate@" 
 
 
 
 
©2019 Inductive Automation Página 377 de 397 
Relatórios 
Adicionar um Número de Página 
1. O relatório tem várias chaves internas que podemos usar. No Key Browser, expanda a 
pasta Built In. 
2. Você notará várias opções de páginas nas Keys. Isso lhe dirá muito sobre a página do 
relatório que você está visualizando no momento. Arraste a tecla Page of PageMax para 
o relatório. Mova-o para o canto inferior direito do relatório. 
3. Vá para a guia Preview para ver o valor da Page of PageMax. Você irá notar que não 
está no canto inferior direito. Isso ocorre porque cada nova forma de texto é justificada à 
esquerda por padrão. 
4. Volte para a guia Design e selecione o componente Page of PageMax. 
5. No Property Inspector, clique na guia Properties e defina a propriedade Horizontal 
Alignment para a direita. Volte para a guia Preview para verificar suas alterações. 
 
Adicionar um Gráfico 
1. Clique no componente Timeseries Chart e arraste-o para a página. Você verá o 
Property Inspector no canto inferior esquerdo mudar para mostrar informações sobre ele. 
 
 
 
©2019 Inductive Automation Página 378 de 397 
Relatórios 
 
2. Arraste o conjunto de dados de histórico para a Timeseries Chart’s Data Key. 
3. Arraste os Tags Ramp1, Ramp2 e Ramp3 do Key Browser para as três Pens no 
Property Inspector. 
 
 
 
 
©2019 Inductive Automation Página 379 de 397 
Relatórios 
4. Agora clique na guia Preview para ver seu gráfico! 
Adicionar uma Tabela 
1. Clique no componente Table e arraste-o para a página. Você verá o Property 
Inspector no canto inferior esquerdo mudar para mostrar as informações da tabela. 
 
2. No Key Browser, expanda a pasta Parameters e os objetos Datasources para ver 
nossos dados. 
3. Arraste o conjunto de dados do histórico para o campo Data Key da tabela. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 380 de 397 
Relatórios 
 
4. Agora podemos arrastar colunas para a tabela. Arraste Ramp1, Ramp2, Ramp3 e 
t_stamp para a tabela. 
 
5. Clique no guia Preview para ver sua mesa! Você notará que sua coluna Timestamp 
está mostrando apenas a data. Você pode alterar isso da mesma forma que o componente 
StartDate no exemplo anterior. 
Na guia Design, selecione a célula @t_stamp@ da tabela. No Property Inspector, 
selecione a guia Properties e altere a propriedade Date Format clicando no ícone 
Calendar. Escolha qualquer formato que você goste. 
Agora vamos adicionar uma Header e Summary à tabela. 
Relatórios 
 
 
©2019 Inductive Automation Página 381 de 397 
6. Selecione a tabela e vá para a parte inferior do Property Inspector. Clique nas 
caixas de seleção Header e Summary para ativar essas linhas. 
6. Digite nas colunas de cabeçalho para dar um nome a cada uma. 
 
8. No Key Browser, clique na caixa de seleção Show Calculation. Agora, cada coluna no 
conjunto de dados terá valor, total, etc. 
 
9. Arraste cada um dos itens a seguir para a linha Summary de nossa tabela. Em seguida, 
clique na célula e digite para adicionar texto a cada uma. Digite o seguinte: 
 
 
 
 
©2019 Inductive Automation Página 382 de 397 
Relatórios 
Ramp 0: Total @total.Ramp1@ 
Ramp 1: Average @average.Ramp2@ 
Ramp 2: Max @max.Ramp3@ 
 
10. Clique no guia Preview para ver sua tabela! 
Cronograma 
Você pode adicionar quantos agendamentos desejar ao seu relatório. Os agendamentos 
permitem que você salve seu relatório automaticamente, envie por e-mail e muito mais. 
Vamos salvar nosso relatório todos os dias à 1h. 
1. Clique na guia Schedule e clique no ícone Add no canto superior direito para adicionar 
uma nova agenda à tabela. 
2. Abaixo da nossa tabela estão três guias. Na guia Schedule inferior, você pode definir 
a frequência com que o relatório é executado usando um sistema de agendamento 
CRONTAB. Defina os campos de texto para o seguinte: 
Minutes: 0 
 Hours: 1 
Days: * 
Months: * 
 Weekdays: * 
Isso nos dá um tempo de 1am, todos os dias. 
 
 
 
 
 
 
©2019 Inductive Automation Página 383 de 397 
Relatórios 
 
3. Na guia Parameters, você pode alterar os valores dos parâmetros para fora dos 
padrões. Nesse caso, queremosque um relatório diário mostre o dia inteiro, não apenas 
os últimos 8 minutos. Desmarque as caixas Default e digite o seguinte. Isso retorna de 
meia-noite à meia-noite para o dia anterior. 
StartDate: 
addDays(midnight(now()), -1) 
EndDate: 
midnight(now()) 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 384 de 397 
Relatórios 
 
4. Na guia Actions, você pode definir um número de ações para acontecer sempre que 
esse agendamento for executado. Clique no ícone Add e selecione New Save File 
Action. 
 
5. No campo Folder Path, você pode inserir qualquer caminho (no computador Ignition 
ou em uma unidade compartilhada). O Ignition criará esta pasta se ela não existir. Insira 
o seguinte folder path e selecione PDF como o tipo de formato. 
C: \Reports 
6. Você pode alterar a expressão FileName para qualquer coisa que desejar. A função 
dateFormat usa a mesma string de formato que vimos ao projetar o relatório. Se o seu 
relatório for diário, você não precisará das horas no carimbo de data/hora, mas se ele 
estiver sendo executado a cada 30 minutos, você deverá adicionar minutos ao nome do 
arquivo para evitar que os arquivos sejam substituídos. 
 
 
 
 
©2019 Inductive Automation Página 385 de 397 
Relatórios 
 
7. Tente clicar no botão Run Selected Action Immediately para testá-la. 
Relatórios de Clientes 
Você pode permitir que seus usuários visualizem relatórios dinamicamente em qualquer 
janela do seu cliente. Adicionar um relatório é muito rápido e simples, vamos adicionar 
uma nova janela de relatório. 
1. Vá para a seção Janela do Designer e crie uma nova janela principal chamada Report. 
2. Selecione o componente Report Viewer e adicione-o à sua janela. 
3. Selecione seu relatório na propriedade Report Path. Você o verá preencher 
imediatamente com 8 minutos de dados. 
 
 
 
 
 
©2019 Inductive Automation Página 386 de 397 
Relatórios 
4. Para tornar o intervalo de tempo do relatório dinâmico, adicionaremos um componente 
Data Rage à janela. 
5. No componente Report Viewer, simplesmente vincule as propriedades StartDate e 
EndDate às propriedades Start Date e End Date do componente Date Range. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 387 de 397 
Capítulo 21 
Rede Gateway 
 
 
 
 
 
 
A Rede Gateway permite conectar Gateways entre si para que possam 
compartilhar dados como Tags, alarmes e histórico. Fazer uma conexão de rede 
de gateway é fácil. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 388 de 397 
Rede Gateway 
Conecte-se a um Gateway 
Vamos configurar uma conexão com o Gateway do instrutor. 
1. Vá para a seção Config da página da Web do Gateway e navegue até a página Gateway 
Network da seção Networking em ambos os Gateways que estarão conectados. 
 
Um Gateway fará uma conexão de saída, enquanto o outro Gateway aceitará a conexão 
de entrada. Na aula, você fará a conexão de saída com o Gateway do instrutor enquanto 
ele aceitará a conexão de entrada. 
2. No Gateway que recebe a conexão de entrada (Gateway do Instrutor), na guia General, 
defina Exigir SSL como false. O Instrutor fará isso em seu Gateway. 
3. No Gateway que faz a conexão de saída (seu Gateway), selecione a guia Outgoing 
Connections na parte superior. 
4. Selecione Create new Outgoing Gateway Connection... 
 
 
 
 
 
©2019 Inductive Automation Página 389 de 397 
Rede Gateway 
5. Defina o Host para o endereço IP do Gateway que aceita a conexão, Port para 8088 e 
Use SSL para False. 
 
6. Role até o final da página e clique no botão Create New Outgoing Gateway Connection. 
 
7. A última etapa é aprovar a conexão de entrada no outro Gateway (instrutor). 
Novamente, o instrutor fará isso. Assim que o instrutor aprovar a conexão, seu Gateway 
deverá estar conectado. 
E isso é tudo o que há para isso. 
 
 
 
 
©2019 Inductive Automation Página 390 de 397 
Rede Gateway 
Configurar um Provedor de Tags Remoto 
Agora que os Gateways estão conectados através da Rede Gateway, você pode verificar o 
status da conexão na seção Status, bem como compartilhar dados configurando um 
Remote Provider. 
Um provedor de Tag Remoto permite que você puxe um provedor de Tag de um Gateway 
para outro, desde que ambos estejam conectados através da Rede do Gateway. 
1. Na seção Config da página da Web do Gateway, navegue até a página Realtime da 
seção Tags. 
 
2. Clique em Create New Realtime Tag Provider. 
3. Selecione a opção Remote Tag Provider (Gateway Network). 
 
4. Você deve ver uma opção para o Gateway do instrutor que está conectado através da 
Rede Gateway. 
 
 
 
 
©2019 Inductive Automation Página 391 de 397 
Rede Gateway 
5. Forneça um nome para o Tag Provider, e isso puxará as Tags do instrutor para seu 
Gateway em um novo provedor remoto. 
 
6. Entre no seu Designer e encontre o Tag Browser. Expanda a pasta All Providers e você 
verá seu novo provedor de Tags. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 392 de 397 
Capítulo 22 
Backups 
 
 
 
 
 
 
Existem dois tipos de backups no Ignition. Os backups de gateway consistem em 
tudo no Ignition, exceto no status de ativação. Isso significa todos os projetos, 
Tags, configurações de conexão, configurações de notificações de alarme e muito 
mais. Os Backups de Gateway consistem em todos os projetos, Tags, 
configurações de conexão, configurações de notificações de alarme e muito mais. 
Geralmente, os únicos itens não incluídos em um Gateway Backup são licenças, 
módulos e arquivos armazenados externamente ao Ignition, como tabelas de 
banco de dados ou programas PLC. Os backups de gateway são ideais ao transferir 
uma instalação do Ignition de um servidor para outro. A restauração de um backup 
do Gateway é considerada uma operação de substituição, pois a cópia de backup 
substituirá todos os recursos no Gateway de destino. 
 
Os backups de projetos são muito menos inclusivos. Eles contêm apenas recursos 
no escopo do projeto, como modelos, janelas, Transaction Groups ou um projeto 
inteiro. As tags não são incluídas em um backup do projeto, exceto as tags do 
cliente, que são do escopo do projeto. Embora menores em escopo, os Backups 
de Projetos podem ser mesclados em um projeto existente, permitindo que você 
adicione facilmente recursos de um projeto em um projeto diferente. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 393 de 397 
Backups 
Backup/Restauração do Gateway 
Backup de Gateway 
Os backups podem ser feitos acessando a seção Configure do Gateway e selecionando 
System > Backup/Restore no Ignition Gateway. Clique no botão Download Backup 
e salve o arquivo em algum lugar seguro, de preferência em algum lugar que NÃO resida 
na mesma máquina que está executando o Gateway. 
Os backups salvam os dados do usuário dentro do servidor Ignition Gateway. Isso inclui 
todos os projetos, drivers, imagens e configuração, mas não os módulos. 
 
Restauração do Gateway 
A restauração de um backup é feita em System > Backup/Restore no Ignition Gateway. 
Clique em Choose File, navegue até o arquivo de backup e clique em Restore. O Gateway 
será reiniciado para aplicar as configurações restauradas. 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 394 de 397 
Backups 
 
Criando um Backup Agendado 
Sempre que estiver desenvolvendo no Ignition, é uma boa ideia fazer backups regulares. 
O Ignition pode até fazer isso automaticamente com as configurações de backup 
agendadas. 
1. Para ativar os backups agendados, na seção Config da página da Web do Gateway, vá 
para a página Gateway Settings. 
2. Role para baixo até a seção Scheduled Backup Settings. 
3. Selecione a opção Enabled Scheduled Backups. 
4. Preencha um caminho de pasta para a opção Backup Folder. Pode ser uma pasta local 
comoC:\Backups ou uma unidade de rede compartilhada como: 
\\StorageComputer\IgnitionBackups 
 
 
 
©2019 Inductive Automation Página 395 de 397 
Backups 
É sempre recomendável armazenar backups longe do computador em que o Ignition está 
instalado. Dessa forma, se o computador Ignition travar, você ainda terá acesso aos seus 
backups. Em um piscar de olhos, você pode instalar o Ignition novamente e carregar o 
backup mais recente para executar rapidamente. 
Backup/Restauração do Projeto 
Você também pode fazer backup de seus projetos individualmente. Ao fazer isso, lembre-
se de que os recursos com escopo do Gateway não fazem parte do projeto. Esses backups 
não incluem Tags, conexões de dispositivos, conexões de banco de dados, etc. 
Para fazer um backup do projeto, vá para System > Projects no Ignition Gateway. Clique 
no botão mais e na opção de exportação. Isso produz um arquivo de backup *.zip que 
pode ser importado diretamente para outro Gateway da mesma página. 
 
Você também pode fazer um backup do projeto a partir do Designer. Clique em File > 
Export e será aberta uma janela que permite selecionar quais recursos exportar. 
 
 
 
 
 
 
©2019 Inductive Automation Página 396 de 397 
Backups 
 
A importação do Designer usa a mesma janela de seleção de recursos que a janela Export 
e causará uma mesclagem diretamente no projeto aberto no momento. 
 
 
 
 
 
©2019 Inductive Automation Página 397 de 397 
Backups 
Se você estiver fazendo um backup de projeto, provavelmente deseja fazer backup de 
suas Tags também. No Designer, selecione a pasta Tags (ou qualquer outra combinação 
de Tags/pastas) no Tag Browser. Em seguida, clique no botão Tag Export para exportar 
todas as suas Tags.e combinar para 
obter a funcionalidade desejada e deixar de fora o resto. 
O Que Torna o Ignition Especial? 
Existem alguns pontos-chave que diferenciam o Ignition de outros softwares HMI/SCADA. 
O licenciamento é vendido pelo servidor e fornece Tags, Clientes, telas, conexões e 
dispositivos ilimitados. Ele possui um pequeno instalador que baixa e instala em minutos 
no Windows, Mac e Linux. O Designer está incluído e permite criar projetos rapidamente, 
vincular valores, configurar expressões e adicionar scripts. É modular, por isso é flexível e 
escalável. E é fácil começar e ver resultados reais em apenas alguns minutos. 
O Que São Módulos? 
Os módulos são aplicações construídas na plataforma Ignition, são semelhantes aos 
aplicativos para um smartphone. Os módulos são perfeitamente integrados ao Ignition 
para que você possa escolhê-los com base nos requisitos do seu sistema e da planta. Os 
módulos incluem conexões e drivers OPC UA, sistemas de visualização, armazenamento 
histórico, notificação de alarme e muito mais. 
Ignition Software Stack 
A arquitetura ou estrutura de alto nível do software Ignition possui várias camadas 
distintas. A plataforma fica em Java, portanto, é independente do sistema operacional. Os 
módulos estão na plataforma e podem acessar qualquer funcionalidade da plataforma. 
Módulos adicionais são criados para funcionar usando a funcionalidade dos módulos 
principais como ponto de partida. 
 
 
 
Introdução ao software 
 
 
©2019 Inductive Automation Página 10 de 397 
Ignition Como um Hub de Comunicações 
Você pode usar o Ignition como um hub de comunicação eficaz em sua rede. Essa 
localização central é possível porque o Ignition se comunica com muitos tipos de 
dispositivos e serviços. 
As Várias Arquiteturas do Ignition 
Ignition sendo um software e sistema moderno, combina servidores web, bancos de dados 
e OPC UA. Essa combinação permite uma ampla variedade de configurações poderosas 
com base no sistema do cliente e nas necessidades da planta. Existem vários tipos de 
arquiteturas que podem ser construídas com o Ignition a partir de uma instalação 
autônoma e indo até um sistema multi-site espalhado por diferentes países. O Ignition 
pode ser usado na nuvem, se você quiser, e tem redundância de failover como recurso 
principal. 
Partes Principais do Ignition 
O Ignition tem quatro partes principais: Gateway, Designer, Vision Clients e Perspective 
Sessions. O Gateway é o principal serviço que impulsiona tudo. O Designer é uma aplicação 
que permite configurar e construir seus projetos. Os Vision Clients são iniciados a partir 
do Gateway, executados como aplicações completas e parecem clientes tradicionais 
instalados sem a necessidade de instalar e sincronizar projetos manualmente. Os clientes 
são os "tempos de execução" do Módulo Vision. As Sessões do Perspective são iniciadas a 
partir do Gateway, executadas em um navegador da Web e parecem clientes tradicionais 
instalados que são sincronizados automaticamente. As sessões são os "tempos de 
execução" do Módulo Perspective. 
Gateway 
A arquitetura do Gateway contém muitas partes, cada uma realizando tarefas específicas 
ou fornecendo informações para outros sistemas. O Gateway contém conexões de banco 
de dados e dispositivos, Tags, alarmes, fontes de usuários, projetos e muito mais. 
Projetos 
Um projeto é a unidade central de configuração. Um projeto contém Windows, Views, 
Transaction Groups e muito mais. Você usa o Ignition Designer para projetar e criar 
projetos. Não há limite para o número de projetos que você pode criar no Gateway. 
 
 
 
Introdução ao software 
 
 
©2019 Inductive Automation Página 11 de 397 
Configurações Compartilhadas Entre Todos os Projetos 
É importante observar que muitos sistemas no Gateway são compartilhados entre todos 
os projetos como Tags, conexões de banco de dados, perfis de autenticação, OPC e 
conexões de dispositivos, armazenamento de alarmes e notificação. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 12 de 397 
 
Capítulo 2 
Instalação e Ativação 
 
 
 
 
 
 
 
O Ignition pode ser instalado em qualquer sistema operacional Windows, Linux ou 
Mac OS X de 64 bits. O instalador pode ser baixado do nosso site ia.io e instalado 
em qualquer computador moderno para teste. Ao usar o Ignition na produção, é 
recomendado um computador de classe de servidor. 
Os requisitos mínimos do sistema para o Ignition são extremamente baixos, mas 
recomendamos pelo menos um processador dual core, 4GB de RAM e 10 GB de 
espaço livre no HD. 
 
 
 
 
 
 
 
 
 
 
 
 
Instalação e Ativação 
 
 
©2019 Inductive Automation Página 13 de 397 
Instale o Ignition no Windows 
Antes de instalar o Ignition, certifique-se de ter privilégios de Administrador para 
executar o instalador do Ignition. Existe um instalador já baixado e adicionado à sua área 
de trabalho na aula. Se você não tiver um instalador, você pode baixá-lo do site 
inductiveautomation.com. 
1. Vá para a área de trabalho e encontre o arquivo do instalador. É um arquivo executável 
chamado algo como: Ignition-X.X.X-windows-x64-installer.exe, onde X.X.X é o número da 
versão. 
2. Clique duas vezes no arquivo executável .exe para iniciar a instalação. A janela de 
configuração dá as boas-vindas ao assistente de configuração do Ignition. 
3. Clique em Next. 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 14 de 397 
Instalação e Ativação 
4. Clique no botão I have read and agree with the terms and conditions e clique 
em Next. 
 
A janela Diretório de Instalação é exibida. Por padrão, o Ignition é instalado no diretório 
de Arquivos de Programas. Esta é geralmente uma boa escolha. 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 15 de 397 
Instalação e Ativação 
5. Deixe o diretório de instalação padrão e clique em Next. 
 
6. A janela Installation Mode é exibida. Selecione o modo Typical. A instalação Típica 
inclui todos os módulos Ignition que precisaremos. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 16 de 397 
Instalação e Ativação 
7. O Assistente de Configuração mostra que o Ignition está pronto para ser instalado. 
Clique em Next. 
 
O Java também é instalado se você não o tiver instalado em sua máquina. 
8. Depois que o instalador terminar de transferir os arquivos, clique em Next. 
9. A instalação do Ignition está concluída, certifique-se de que a caixa de seleção para 
Start Ignition Now esteja selecionado e clique em Finish. 
 
 
 
 
 
©2019 Inductive Automation Página 17 de 397 
Instalação e Ativação 
Comissionamento 
Assim que o Ignition for iniciado, um navegador da Web será aberto e você será solicitado 
a iniciar o processo de comissionamento. 
1. Clique no botão Get Started para continuar. 
 
Digite um nome de usuário e senha para criar o usuário principal do Ignition. 
Isso pode ser alterado posteriormente, mas será a principal maneira de acessarmos o 
Gateway e o Designer em classe. Anote seu nome de usuário e senha aqui. 
Usuário: ____________________ 
Senha: ____________________ 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 18 de 397 
Instalação e Ativação 
 
3. Digite a senha novamente para confirmar e clique em Next. 
 
 
 
 
©2019 Inductive Automation Página 19 de 397 
Instalação e Ativação 
4. A configuração agora está concluída. Clique no botão Start Gateway para iniciar o 
Ignition. Levará um momento para ser concluído. 
 
5. Clique no botão Gateway Homepage para iniciar o Gateway. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 20 de 397 
Instalação e Ativação 
 
O Ignition se instala como um serviço de janela (Start > Control Panel > 
Administrative Tools > Services > Ignition Gateway), portanto,ele é iniciado 
automaticamente quando o computador é inicializado. 
Instalando um Banco de Dados 
Para aproveitar ao máximo o Ignition, convém instalar um banco de dados. Nossos 
computadores de treinamento já possuem MySQL e Microsoft SQL Server instalados, então 
não precisamos fazer mais nada. 
Se você deseja instalar um banco de dados em outro computador, consulte o manual 
online em docs.inductiveautomation.com. 
Acessando o Gateway 
O Ignition Gateway é acessado por meio de um navegador da Web e é o principal serviço 
de software que impulsiona tudo no Ignition. É um aplicativo único que executa um 
servidor da Web incorporado, conecta-se a dados, executa módulos, comunica-se com 
Clientes e Sessões e muito mais. 
 
Instalação e Ativação 
 
 
©2019 Inductive Automation Página 21 de 397 
O Gateway possui um servidor web e quando está em execução você pode acessá-lo 
para fazer alterações e visualizar dados através de uma página web. 
1. Após o comissionamento, seu navegador é redirecionado automaticamente para: 
http://localhost:8088 
Você pode abrir um navegador mais tarde e inserir este endereço para voltar. 
 
Se estiver em uma máquina diferente, você acessa o Gateway usando o nome do 
computador ou o endereço IP da seguinte forma: 
http://NomedoComputador:8088 http://XXX.XXX.XXX.XXX:8088 
Observação: para acessar a página inicial do Gateway de outra máquina, a porta 8088 
deve estar aberta no firewall. 
O Gateway é o local central no Ignition onde todos os serviços gerais são configurados. 
O próximo passo é fazer login na seção de configuração. 
Na página inicial do Gateway, clique no botão Config no canto superior esquerdo. 
 
 
 
©2019 Inductive Automation Página 22 de 397 
Instalação e Ativação 
3. Faça login usando o nome de usuário e a senha que você criou durante a etapa de 
Comissionamento da instalação. 
Depois de fazer o login, você pode navegar para as várias áreas do Gateway usando a 
árvore de menu no lado esquerdo da página. 
Guias de Gateway 
As guias no canto superior esquerdo do Gateway levam você às seções principais do 
servidor. 
Home 
O guia Home leva você à página inicial que mostra uma lista de maneiras de começar a 
usar o Ignition ou aprender sobre ele. 
• Inicie o Designer. 
• Iniciar um Cliente ou Sessão. 
• Saiba mais sobre o Ignition. 
Status 
O guia Status fornece informações detalhadas sobre várias partes do sistema Ignition. 
As subpáginas contêm informações sobre o seguinte e mais: 
• O estado dos módulos instalados 
• O mapa de redundância atual 
• O status de todas as conexões do Banco de Dados, conexões do Servidor OPC e 
Provedores de Tags 
• O status do mecanismo de armazenamento e encaminhamento, incluindo desempenho 
de 
métricas e informações de cache de dados 
• Designers, Clientes e Sessões Atuais conectados ao Gateway 
Configuração 
A guia Config leva você para a seção Config, onde você faz todas as operações do 
Gateway e da plataforma, como fazer backup do sistema, restaurar e gerenciar projetos, 
além de: 
 
 
 
©2019 Inductive Automation Página 23 de 397 
Instalação e Ativação 
• Criar novos projetos. 
• Criar conexões de banco de dados. 
• Criar conexões com servidores OPC. 
• Ajustar as configurações de desempenho. 
• Modificar as configurações de dados do Histórico de Tags. 
• Gerenciar usuários e funções. 
Lançar Designer 
O botão Get Designer no canto superior direito da página levará você a baixar o 
instalador do Designer Launcher. Executando isso permitirá que você inicie um Designer 
e comece a trabalhar em seu projeto. 
Licenciamento e Ativação 
O Ignition possui um modo de teste gratuito que funciona por duas horas de cada vez e 
é infinitamente ajustável. Para esta aula, iremos ativar uma licença de uma semana para 
podermos ver histórico ininterrupto e alarmes ao longo da semana. Com esta licença de 
servidor Ignition, se pode: 
• Iniciar clientes em tempo de execução ilimitados. 
• Criar Tags ilimitadas de dispositivos, servidores OPC e outras Tags. 
• Conectar-se a PLCs, bancos de dados SQL e dispositivos ilimitados. 
Como Funciona o Licenciamento 
Ignition é uma plataforma modular, portanto é licenciada com base em módulos. 
Módulos licenciados e não licenciados podem operar lado a lado, de modo que alguns 
módulos podem ser testados em modo de avaliação enquanto outros estão sendo 
executados em um estado licenciado. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 24 de 397 
Instalação e Ativação 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 25 de 397 
Instalação e Ativação 
 
Quando um módulo individual está em estado de teste, o Ignition mostra o tempo de 
teste restante na parte superior da página da Web do Gateway. 
 
CD-Key e Arquivo de Licença 
Apesar do licenciamento modular, geralmente há um CD-Key para cada servidor. Ou 
seja, uma única licença que determina quais módulos estão ativados no momento. 
Quando os módulos são adquiridos, você recebe uma CD-Key, um código de seis dígitos, 
que identifica sua compra. Você então usa esse CD-Key para ativar o software através 
do Ignition Gateway. Se você estiver adicionando um módulo adicional, sua conta será 
atualizada e você poderá utilizar seu CD-Key existente para ativar os novos recursos. 
Você pode desativar seu CD-Key a qualquer momento, liberando-o para ativação em 
uma máquina diferente. 
 
 
 
 
 
©2019 Inductive Automation Página 26 de 397 
Instalação e Ativação 
Como Funciona a Ativação 
A ativação é o método pelo qual uma CD-Key é atribuída a um computador e os módulos 
são notificados sobre seu estado de licença. A ativação pode ser feita de forma 
automática (pela Internet) ou manualmente (por e-mail ou através do site da Inductive 
Automation). 
Vamos percorrer a ativação de nossa cópia do Ignition pela Internet. 
Ativar o Ignition Online 
1. Vá para a página inicial do Gateway e faça login na seção Configure. 
2. No menu à esquerda, selecione System > Licensing. 
3. Clique no botão Activate Online à direita. 
 
 
A janela Activate online é exibida. 
 
 
 
 
 
©2019 Inductive Automation Página 27 de 397 
Instalação e Ativação 
 
 
4. Digite sua CD-Key e clique em Activate. 
Uma vez ativada, a Licença Atual é exibida e se você expandi-la, você pode ver todos os 
módulos conectados ao seu CD-Key. 
5. Vá para a seção Status do Gateway e selecione Systems>Modules. 
A página de configuração do módulo é exibida. Observe que a coluna de licença para 
alguns ou todos os módulos agora estão listados como ativados (dependendo do seu CD-
Key). 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 28 de 397 
Instalação e Ativação 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 29 de 397 
Capítulo 3 
Conectando a PLCs e Bancos de Dados 
 
 
 
 
 
 
Agora que você instalou o Ignition e fez login na seção Config do Gateway, você 
pode adicionar ou conectar-se a dispositivos e bancos de dados. Um dispositivo é 
uma conexão nomeada a um dispositivo industrial como um PLC. Se você não 
possui um dispositivo real, o Ignition possui dispositivos simuladores que você 
pode adicionar que agem como se fosse uma conexão com um dispositivo real. 
Um banco de dados é um software que permite armazenar dados a longo prazo 
para fins históricos ou outros. 
Nesta seção, mostraremos como se conectar a dispositivos simuladores, 
dispositivos PLC reais e um banco de dados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 30 de 397 
Conectando a PLCs e Bancos de Dados 
Conectando-se a Simuladores 
Conectando a um dispositivo simulador 
Precisamos nos conectar a alguns dispositivos para nos fornecer Tags para trabalhar 
durante a semana. Eles serão usados posteriormente para valores, histórico e alarmes 
em tempo real.1. Do Gateway, vá para a seção Config. 
2. No menu à esquerda, selecione OPC UA > Device Connections. A página Devices é 
exibida. 
3. Clique em Create New Device.... 
 
4. Na página de seleção do tipo de dispositivo, selecione Programmable Device 
Simulator e clique em Next. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 31 de 397 
Conectando a PLCs e Bancos de Dados 
 
5. A página New Device para Programmable Device Simulator é exibida. 
Digite GenSim como o Name e clique em Create New Device para adicionar seu 
dispositivo. 
 
 
 
 
 
©2019 Inductive Automation Página 32 de 397 
Conectando a PLCs e Bancos de Dados 
6. Seu dispositivo foi adicionado e a tabela a seguir é exibida. Se o Ignition for 
conectado com sucesso, na coluna Status, ele mostrará Running. 
 
7. Agora podemos definir o programa para o simulador. À direita, clique no menu 
suspenso More e selecione edit program. 
 
8. Na lista suspensa Load Program, selecione a opção Generic Program e clique no 
botão Load Simulator Program. 
 
 
 
 
 
©2019 Inductive Automation Página 33 de 397 
Conectando a PLCs e Bancos de Dados 
9. Você verá muitas instruções aparecerem. É assim que o simulador cria Tags e define 
seus valores. Clique no botão Save Program. 
 
 
 
 
 
 
©2019 Inductive Automation Página 34 de 397 
Conectando a PLCs e Bancos de Dados 
10. O simulador obtém seus valores de um arquivo de instruções. Cada arquivo de 
instrução possui um conjunto de Intervalos de Tempo e Caminhos de Tags. Se houver 
mais de um Intervalo de Tempo para um Tag, ele percorrerá esses valores em ordem. 
Alternativamente, você pode ter um único intervalo de tempo e uma função no campo 
Origem do valor. O Programa Genérico que carregamos usa este método para valores de 
Tags. Isso faz com que os Tags percorrem valores gerados como Rampas, Sines e outros. 
Você pode criar manualmente esses arquivos de instrução se quiser simular seu processo 
em execução. É melhor exportar o arquivo (como um CSV), modificá-lo em outro programa 
como o Excel e importar o arquivo. 
Conectando-se a Dispositivos Allen Bradley 
Agora vamos conectar a dois PLCs reais: um ControlLogix e um MicroLogix. Você ainda 
deve estar na seção Config na página Device Connections. 
11. Clique em Create New Device.... 
A página de seleção do tipo de dispositivo é exibida. 
12. Selecione o driver Logix Allen-Bradley e clique em Next. 
 
A página de detalhes do dispositivo é exibida mostrando as configurações disponíveis 
para dispositivos AB Logix v21+. 
Conectando a PLCs e Bancos de Dados 
 
 
©2019 Inductive Automation Página 35 de 397 
13. Insira as seguintes informações: 
Name: CLX 
Hostname: 172.16.3.103 
Slot Number: 0 
Nota: Deixe o connection path em branco. 
 
 
 
 
©2019 Inductive Automation Página 36 de 397 
Conectando a PLCs e Bancos de Dados 
14. Clique em Create New Device. 
Isso leva você de volta à página Devices e dirá que o novo dispositivo "CLX" foi criado 
com sucesso. Após alguns segundos, o dispositivo CLX mostrará "Connected" na coluna 
Status. 
Agora vamos conectar a um segundo dispositivo MicroLogix. 
15. Na página Devices, clique em Create New Device.... 
A página de seleção do tipo de dispositivo é exibida. 
16. Selecione Allen-Bradley MicroLogix e clique em Next. 
A página de detalhes do dispositivo é exibida mostrando a configuração disponível para o 
AB MicroLogix. 
17. Insira as seguintes informações: 
Name: MLX 
Hostname: 172.16.3.101 (ou 172.16.3.102) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 37 de 397 
Conectando a PLCs e Bancos de Dados 
 
18. Clique em Create New Device. 
A página Devices é exibida mostrando que você agora criou um novo dispositivo 
"MLX". 
Agora você instalou 3 dispositivos que estão todos conectados conforme mostrado 
abaixo: 
 
 
 
 
©2019 Inductive Automation Página 38 de 397 
Conectando a PLCs e Bancos de Dados 
Conectando-se a Um Banco de Dados 
Muitos dos recursos avançados do Ignition, como Transaction Groups e Histórico de tags, 
exigem uma conexão com um banco de dados externo. 
Esta seção descreve como você pode se conectar a um banco de dados externo, como o 
Microsoft SQL Server. 
Conectando-se ao Microsoft SQL Server 
1. Do Gateway, vá para a seção Config. 
2. No menu à esquerda, selecione Databases > Connections. 
3. Clique em Create new Database Connection.... 
 
 
4. Selecione Microsoft SQL Server e clique em Next. 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 39 de 397 
Conectando a PLCs e Bancos de Dados 
 
5. Na página New Database Connection, insira as seguintes informações: 
Name: MSSQL 
Connect URL: jdbc:sqlserver://localhost\SQLEXPRESS 
Observação: estamos nos conectando à edição expressa do SQL Server. Se você tiver o 
SQL Server completo, substitua SQLEXPRESS por MSSQLSERVER ou seja qual for o 
nome da sua instância. 
username: sa 
password: sqlserver (a senha é o que você digitou durante a instalação do SQL Server, 
para Treinamento, a senha é sqlserver) 
Propriedades de conexão extras: databaseName=test (digite o nome do seu banco de 
dados aqui se for diferente) 
 
 
 
©2019 Inductive Automation Página 40 de 397 
Conectando a PLCs e Bancos de Dados 
 
 
 
 
 
 
©2019 Inductive Automation Página 41 de 397 
Conectando a PLCs e Bancos de Dados 
6. Na parte inferior do formulário, clique em Create New Database Connection. 
Sua conexão agora está criada e a página Conexões do Banco de Dados é exibida 
mostrando o Status de sua conexão como Valid. 
 
 
 
7. Para exibir os detalhes sobre o status de sua conexão com o banco de dados, consulte 
a guia Note na janela acima e clique no link Database Connection Status. 
Guia de Conexão do Microsoft SQL Server 
Existem várias maneiras diferentes de se conectar ao Microsoft SQL Server, mas na aula 
já temos um tipo configurado. Se você quiser usar uma maneira diferente de se conectar, 
você pode encontrar um guia de conexão completo na documentação online em 
https://docs.inductivetautomation.com. 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 42 de 397 
 
Capítulo 4 
 
Inicie o Designer e Crie um Projeto 
 
 
 
 
 
 
 
Agora que configuramos algumas conexões, iniciaremos o Designer e começaremos a criar 
um projeto. O Ignition possui um programa inicializador especial disponível no Gateway 
que nos permite usar o Designer sem primeiro instalar o Java em qualquer computador. 
Assim que o Designer estiver aberto, iremos nos familiarizar com os painéis e espaços de 
trabalho disponíveis. A configuração para quase todos os módulos está disponível através 
do Designer, e é aqui que iremos passar a maior parte do nosso tempo durante a semana 
trabalhando em nossos projetos. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 43 de 397 
Inicie o Designer e crie um projeto 
Iniciando o Designer 
1. Clique no botão Get Designer no canto superior direito de qualquer página Gateway. 
Isso o levará à página de download do Designer Launcher. 
 
2. Clique no botão Download para Windows na parte superior da página. Esta página 
tentará detectar seu sistema operacional e fornecerá o instalador correto. 
3. Quando o arquivo DesignerLauncher.exe for baixado, execute-o. 
A primeira tela que se abre permite que você crie um atalho na área de trabalho. Clique 
em Next para continuar. 
 
 
 
 
 
 
 
 
Inicie o Designer e crie um projeto 
 
 
©2019 Inductive Automation Página 44 de 397 
 
 
4. O Designer Launcher está pronto para ser instalado. Clique no botão Install e 
aguarde alguns segundos para concluir. 
5. Quando o instalador estiver concluído, clique no botão Finish. O Launcher será 
iniciado automaticamente. 
6. O Launcher tentará primeiro detectaruma instalação do Ignition em sua rede. Se ele 
perguntar se você deseja criar uma conexão com uma instalação específica do Ignition, 
verifique o Nome e o Endereço IP e clique em OK se estiver correto. Isso adiciona o 
Gateway por Endereço IP. 
7. Se o seu Gateway não aparecer, clique no botão Add Designer para adicioná-lo 
manualmente. 
Aguarde um momento para que a lista seja preenchida e selecione sua instalação do 
Ignition na lista. Aquele com um URL de http://localhost:8088 está correto. 
Se você não vir seu Gateway, clique no botão Manually Add Gateway no canto 
superior direito. Digite a URL http:// localhost:8088 e clique no botão Add Gateway. 
 
 
 
 
 
©2019 Inductive Automation Página 45 de 397 
Inicie o Designer e crie um projeto 
 
8. Isso leva você de volta à lista de Designers. Adicionar o Designer só precisa ser feito 
uma vez. Na próxima vez que você abrir o Designer Launcher, ele já terá esse link. 
9. Clique no botão Launch para sua nova conexão de Gateway. 
 
10. O Designer é inicializado e a janela de login é exibida. 
 
 
 
 
©2019 Inductive Automation Página 46 de 397 
Inicie o Designer e crie um projeto 
 
11. Digite o nome de usuário e a senha que você criou ao instalar o Ignition. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 47 de 397 
Inicie o Designer e crie um projeto 
Criando um Projeto 
Agora, a janela Open/ Create Project é exibida. Inicialmente, não temos projetos, 
portanto, devemos criar um. 
 
1. Clique no botão + New Project para criar um novo projeto. 
2. Em Project Name, insira um nome para seu novo projeto (sem espaços). 
3. Em Project Title, dê ao seu projeto o título que desejar. 
4. Para Project Template, selecione o template Vision Tab Nav na lista suspensa. 
Em vez de começar a partir de um projeto em branco, os templates de Projeto permitem 
que você comece a partir de um de nossos projetos básicos que já possuem a navegação 
configurada. Esses projetos são projetados para ajudá-lo a começar mais rapidamente e 
são totalmente personalizáveis. 
5. Clique em Create New Project. É isso! O Designer está agora lançado e você pode 
trabalhar no projeto! 
 
 
 
 
©2019 Inductive Automation Página 48 de 397 
Inicie o Designer e crie um projeto 
 
 
 
©2019 Inductive Automation Página 49 de 397 
Capítulo 5 
 
Clientes Vision, Janelas e Navegação 
 
 
 
Os Vision Clients são iniciados a partir do Client Launcher ou do Designer e 
normalmente têm muitas janelas pelas quais o usuário pode navegar. 
Aqui você aprenderá como iniciar um cliente e criar uma estrutura de navegação 
para seu projeto. 
Cada projeto é uma coleção de janelas, componentes e templates. Uma janela é 
uma hierarquia de componentes e templates são componentes reutilizáveis. 
Podemos criar uma estrutura de navegação para permitir que os usuários se 
movam facilmente entre as páginas. 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 50 de 397 
Clientes Vision, Janelas e Navegação 
Tipos de Lançamento 
• Standard - O modo Standard ou Windowed é o método usual de inicialização do 
Cliente. O Cliente é iniciado com o Client Launcher e é executado como seu próprio 
aplicativo totalmente independente que pode ser movido ou redimensionado em seu 
computador. 
• Full Screen - O modo de inicialização de Full Screen é semelhante ao modo Windowed 
e também funciona como um aplicativo completo e independente. Porém, neste modo, o 
Cliente ocupa a tela inteira, não possui barra de título ou bordas e cobre a barra de 
tarefas do sistema operacional. 
Baixando e Instalando 
Os Client Launchers estão disponíveis na página inicial do Gateway e podem ser 
instalados no Windows, Linux e Mac OS X. 
Baixe e Instale o Client Launcher 
1. Na página inicial do Gateway, clique no botão Download Vision Client Launcher. 
Isso leva você à página de download do Client Launcher. Esta página tentará detectar 
seu sistema operacional e fornecerá o instalador correto. 
2. Clique no botão Download for Windows na parte superior da página. 
 
3. Quando o arquivo VisionClientLauncher.exe for baixado, execute-o. 
4. Primeiro, decida se deseja um atalho na área de trabalho e clique no botão Next. 
 
 
 
 
 
©2019 Inductive Automation Página 51 de 397 
Clientes Vision, Janelas e Navegação 
 
5. O Client Launcher está pronto para ser instalado. Clique no botão Install e aguarde 
alguns segundos para concluir. 
6. Quando o instalador estiver concluído, clique no botão Finish. O Launcher será 
iniciado automaticamente. 
7. O Launcher tentará primeiro detectar uma instalação do Ignition em sua rede. Se ele 
perguntar se você deseja criar uma conexão com uma instalação específica do Ignition, 
verifique o Nome e o Endereço IP e clique em OK se estiver correto. Você deve ver o 
nome inserido ao restaurar o Backup do Gateway anteriormente. 
8. Se o seu Gateway não aparecer, clique no botão Add Vision Client para adicioná-lo 
manualmente. 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 52 de 397 
Clientes Vision, Janelas e Navegação 
 
Aguarde um momento para que a lista seja preenchida e selecione sua instalação do 
Ignition na lista. Aquele com um URL de http://localhost:8088 está correto. Clique no 
botão Add Selected Gateway no canto inferior direito. 
Se você não vir seu Gateway, clique no botão Manually Add Gateway no canto 
superior direito. Digite a URL http://localhost:8088 e clique no botão Add Selected 
Gateway. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 53 de 397 
Clientes Vision, Janelas e Navegação 
 
9. Isso leva você a uma lista dos projetos do Vision nesse Gateway. Selecione o projeto 
desejado e clique no botão Add Applications no canto superior direito. Isso adiciona o 
projeto à sua lista de projetos disponíveis e o levará de volta à tela de inicialização. 
 
 
 
 
 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 54 de 397 
Clientes Vision, Janelas e Navegação 
 
10. Vá para o projeto e clique no botão Launch Windowed para seu projeto abri-lo. 
 
11. Agora você pode usar o Cliente. Navegue pelas janelas clicando nas guias na parte 
superior. Ainda não temos muitos componentes, mas em breve teremos. 
 
 
 
 
 
©2019 Inductive Automation Página 55 de 397 
Clientes Vision, Janelas e Navegação 
Iniciador de Cliente e Redundância 
O Client Launcher pode tirar proveito de uma configuração de Gateway redundante. 
Sempre que uma conexão é estabelecida com um gateway principal, o endereço IP do 
gateway de backup é armazenado automaticamente no arquivo de configuração do 
ativador do cliente. Se o gateway principal não puder ser contatado na próxima vez que o 
inicializador do cliente for executado, será feita uma tentativa de contatar o backup. 
Janelas, Componentes e Templates 
Janelas, componentes e templates são os blocos de construção fundamentais para projetos 
que usam o módulo Ignition Vision. Um projeto Vision é uma coleção de Janelas. Essas 
janelas são carregadas no Vision Client, onde qualquer número delas pode ser aberto ao 
mesmo tempo. 
Uma janela em si é uma hierarquia de componentes. Os componentes variam em 
complexidade, desde o humilde Button e Label até os poderosos componentes Easy Chart 
e Table. Formas como uma linha ou um retângulo também são considerados componentes, 
mas possuem alguns recursos adicionais, como a capacidade de serem girados. 
Os templates são componentes reutilizáveis em muitas janelas. Eles são projetados 
separadamente, fora de qualquer janela. Depois de desenhados, você pode adicioná-los a 
qualquer janela dentro de um projeto. O verdadeiro poder de um template é que, se você 
alterar seu design, todos os usos desse template em todas as janelas refletirão essas 
alterações. Esse recurso oferece aos templates uma grande vantagem sobreum estilo de 
design de copiar e colar. 
Janelas, componentes e templates são projetados visualmente com uma interface de 
arrastar e soltar no Ignition Designer. Cada componente tem uma série de propriedades 
que controlam a aparência e o comportamento do componente. 
Nomes e Organização das Janelas 
Para manter sua navegação de janela organizada, você tem muitas opções. Você pode 
criar pastas para cada janela, renomear as pastas e adicionar notas informativas 
relacionadas à janela. 
Criando Pastas 
Ao criar pastas, você pode organizar suas janelas. Cada janela deve ter um nome exclusivo 
entre as janelas em sua pasta. O nome de uma janela e o caminho da pasta são muito 
importantes, é como outras janelas fazem referência a ela. 
 
 
 
 
©2019 Inductive Automation Página 56 de 397 
Clientes Vision, Janelas e Navegação 
Renomeando uma Janela 
Para renomear uma janela, no painel Project Browser, clique com o botão direito do 
mouse em uma janela e escolha Rename ou pressione F2. 
Adicionando Notas a uma Janela 
Para adicionar notas de janela no Project Browser, clique com o botão direito do mouse 
em uma janela e escolha Notes. Este campo de texto de formato livre permite 
documentar a finalidade e qualquer informação técnica sobre como a janela funciona. 
Tipos de Janelas 
Existem três tipos de janelas: Main, Popup e Docked. Você pode criá-los no menu File > 
New, conforme mostrado abaixo. 
 
Ao alterar as propriedades de uma janela, você pode transformar qualquer janela em 
várias configurações. Você pode alterar as propriedades Dock Position, Border Display 
Policy, Titlebar Display Policy, e Start Maximized de uma janela para alterá-la em uma 
das três categorias. 
 
 
 
 
©2019 Inductive Automation Página 57 de 397 
Clientes Vision, Janelas e Navegação 
Janelas Principais 
Uma janela é chamada de "janela principal" quando está definida como Start Maximized 
e tem suas políticas de exibição de borda e barra de título definidas como When Not 
Maximized ou Never. 
A janela principal ocupa todo o espaço disponível (menos o espaço usado por qualquer 
janela "encaixada") e funciona como uma típica "tela HMI". Pode haver muitas janelas 
principais em um projeto, mas você deve abrir apenas uma janela principal por vez. 
Janelas Pop-up 
Uma janela é chamada de "janela pop-up" quando sua Dock Position é definida como 
Float e não está maximizada. Suas políticas de exibição de borda e barra de título 
geralmente são definidas como When Not Maximized ou Always, para que possam ser 
alteradas pelo usuário final. 
As janelas pop-up geralmente são abertas por componentes em uma janela principal e 
devem estar na parte superior da tela. Portanto, eles devem ter sua propriedade Layer 
definida com um número maior que zero para que não se percam atrás da janela principal. 
Para fazer uma janela aparecer em uma posição específica, edite a propriedade Starting 
Location da janela. 
As janelas pop-up geralmente são parametrizadas para que possam ser reutilizadas. Por 
parametrizado, significa que você define parâmetros personalizados para a janela pop-up 
e quando você cria instâncias dela para utilizá-la, você pode simplesmente passar seus 
novos valores de parâmetro. 
Janelas Ancoradas 
Uma janela é chamada de "janela ancorada" cuja Dock Position é definida para qualquer 
coisa, menos Float. Isso faz com que a janela fique em um lado da tela e nada possa 
sobrepô-la. Ele também normalmente tem suas políticas de exibição de borda e barra de 
título definidas como Never. Isso faz com que a janela "ancorada" pareça estar unida 
perfeitamente com a janela atual da "tela principal". 
Essas telas geralmente são altas e finas ou curtas e largas, dependendo da borda em que 
estão encaixadas. A finalidade de uma janela ancorada é disponibilizar algumas 
informações, normalmente controles de navegação e informações gerais de status. O uso 
de janelas ancoradas pode ajudar a eliminar a cópia de elementos de design repetitivos 
em cada tela, facilitando a manutenção. 
 
 
 
 
 
©2019 Inductive Automation Página 58 de 397 
Clientes Vision, Janelas e Navegação 
 
Alterando as Propriedades da Janela 
As Janelas tem várias propriedades que definem sua aparência e comportamento. Você 
pode alterar essas propriedades no Property Editor. Há também algumas propriedades 
adicionais que você pode alterar no Project Browser. 
Alterando as Propriedades no Property Editor 
1. Vá para o painel Property Editor no Designer. 
2. Altere as propriedades nas seções Behavior, Appearence e Layout do painel. 
 
 
 
 
 
 
 
 
©2019 Inductive Automation Página 59 de 397 
Clientes Vision, Janelas e Navegação 
 
Alterando Propriedades do Project Browser 
1. No Project Browser, clique com o botão direito do mouse em uma janela. 
2. No menu pop-up, você pode selecionar e editar as seguintes propriedades da janela: 
Open on Startup, "About" Window, Notes..., Scripting..., e Security. Observe que 
a janela deve estar aberta para editar algumas propriedades. 
 
 
 
 
 
 
©2019 Inductive Automation Página 60 de 397 
Clientes Vision, Janelas e Navegação 
 
Anatomia de Uma Janela 
Nome e Caminho 
As janelas são a unidade de nível superior de um design para projetos do Vision. Uma 
janela é identificada por seu caminho, que é o nome de todas as suas pastas familiares 
mais seu nome com barras (/) entre cada uma. Por exemplo, o caminho para uma janela 
no nível superior chamada MainWindow é simplesmente seu nome: MainWindow, 
enquanto o caminho para uma janela chamada UserOptions em uma pasta chamada 
OptionsWindows é: OptionWindows/UserOptions. 
 
 
 
 
©2019 Inductive Automation Página 61 de 397 
Clientes Vision, Janelas e Navegação 
Barra de Título e Borda 
Uma janela pode exibir uma barra de título e/ou uma borda. A barra de título permite que 
você arraste a janela e aloja os botões fechar e maximizar/restaurar da janela. A borda 
de uma janela permite redimensionar a janela quando ela está flutuando ou encaixada. 
A exibição ou não da barra de título e da borda depende dos valores das propriedades da 
política de exibição da barra de título e da borda da janela e seu estado atual. 
Normalmente, uma janela exibe uma barra de título e uma borda quando está flutuando, 
mas apenas uma barra de título quando maximizada. Muitas vezes, é desejável remover 
barras de título e bordas em janelas maximizadas. 
Root Container 
Dentro de uma janela há sempre o Root Container. Este é um componente de contêiner 
normal, exceto que não pode ser excluído ou redimensionado, seu tamanho é sempre 
definido para preencher toda a janela. O Root Container é onde você coloca todos os seus 
componentes na janela. 
 
 
 
 
 
 
©2019 Inductive Automation Página 62 de 397 
Clientes Vision, Janelas e Navegação 
Adicionando uma Janela à Navegação 
Como começamos com um dos projetos de esqueleto de template, é fácil adicionar 
novas janelas à navegação. Se você olhar no Project Browser em Windows, poderá ver 
várias pastas e janelas que foram criadas automaticamente para você. 
Existem duas janelas com um ícone de quadrado e triângulo à direita delas: Janelas 
principais/Visão geral e Navegação. Essas janelas são configuradas para abrir na 
inicialização, portanto, são as primeiras janelas que o usuário verá no ambiente de 
tempo de execução. 
A janela de Navegação contém guias que permitem que você escolha a janela principal 
que deseja visualizar. No momento, existem apenas três janelas principais. Vamos 
adicionar outro. 
Adicionar uma Janela Principal 
1. Clique com o botão direito do mouse na Main Windows/ Overview e selecione 
Duplicate Janela. 
 
 
 
 
©2019 Inductive Automation Página 63 de 397 
Clientes Vision, Janelas e Navegação 
2. Clique com o botão direito do mouse na janela recém-criada, Overview(1), e selecione 
Rename. 
3. Renomeie

Mais conteúdos dessa disciplina