Escolar Documentos
Profissional Documentos
Cultura Documentos
SIEMENS S7-1500
KTP700
WONDERWARE INDUSOFT WEB STUDIO
REDES INDUSTRIAIS E SUPERVISÓRIO
SENAI-SP, 2018.
Trabalho elaborado pela Escola e Faculdade de Tecnologia SENAI "Roberto Mange" CPF 5.01
Equipe responsável
Coordenação
Elaboração
Alex Piza
Coordenação Técnica
Celso Martinez
Versão 1
SENAI Serviço Nacional de Aprendizagem Industrial
Escola e Faculdade de Tecnologia SENAI “Roberto Mange”
Rua Pastor Cícero Canuto de Lima, 71
CEP 13036-210 – Campinas, SP
E-mail: senaicampinas@sp.senai.com.br
SUMÁRIO
1 INTRODUÇÃO
2 CRIANDO UM PROJETO
3 CONFIGURANDO O HARDWARE
4 PROJECT TREE
5 PROGRAMAÇÃO BÁSICA
5.1 Temporizadores
5.2 Contadores
Página | 3
5.3 Comparadores
6 PROGRAMAÇÃO AVANÇADA
6.1.1 Functions
6.1.2 Function Block ....................................................................................... 46
Página | 4
6.6.1 Configuração TSEND_C. ....................................................................... 69
Página | 5
8.2.2.4 Display Gráfico (Graphic I/O Field) ................................................... 106
9 INTERFACE DO USUÁRIO
MENU RIBBON
9.5
9.5.1 Aba Início
Página | 6
ÍNDICE DE FIGURAS
Figura 1 - Tela de Abertura TIA Portal V11 ................................................................. 10
Página | 9
Figura 83 - Instalação AS-i .......................................................................................... 81
Página | 11
1 INTRODUÇÃO
O software de supervisão que será utilizado em sala de aula é o Indusoft Web Studio
Este supervisório é um dos lideres atuais do mercado de sistemas de supervisão, tendo
uma ampla plataforma de desenvolvimento, aliando simplicidade e funcionalidade ao
seu sistema.
Página | 12
2 Criando um Projeto
Na área de trabalho, de um duplo clique no ícone TIA Portal V11. A seguinte tela abrirá
Página | 13
Após aberto o software, a seguinte tela irá
aparecer.
Migrate project: Migra um software iniciado no Simatic Manager V5.x para o TIA V11
Página | 14
Ao clicar em create new project, será possível nomear o projeto, bem como alterar seu
destino de gravação, caso necessite gravá-lo em pen-drive, por exemplo.
Página | 15
3 Configurando o hardware
Após nomear e selecionar o caminho de destino, clique em create. O projeto será criado
e você poderá iniciar os trabalhos, conforme mostra a figura 4.
Página | 16
Após selecionada a ferramenta de configuração de equipamento, como se trata de um
projeto novo, devemos inserir um novo equipamento, como sugere a figura 5.
Após clicar no botão add new device, poderá ser escolhido o modelo de CLP e
IHM que serão utilizados no projeto. O CLP montando nos kits didáticos é a:
Página | 17
É indispensável que os módulos montados no kit didático sejam totalmente reproduzidos
no software, de modo que não ocorram erros na inicialização do CLP quando do
download das configurações para o mesmo. Desta forma, é necessário configurar os
seguinte módulos juntamente com a CPU:
Vale lembrar que está configuração está sendo feita em função do KIT didático que
será trabalhando em aula, possuir exatamente estes módulos, porém, estas
configuração varia de acordo com a aplicação automatizada.
Página | 18
3.2 Configuração Automática de Hardware
Página | 19
Figura 8 - Auto-detectando o hardware
Página | 20
Feito isto, o software estará configurado e pronto para iniciar a programação
ANOTAÇÕES GERAIS
Página | 21
3.3 Configuração do endereço IP
Depois de configurado o endereço IP, é necessário salvar o projeto no botão save project.
Salvando o projeto, o programa irá compilar as informações e só assim as entradas estarão
disponíveis para a programação.
Página | 23
Figura 11 - Endereçamentos Lógicos
Página | 24
Memória de ciclo de inicialização;
Página | 25
Para isto é necessario habilitar estas funções. Juntamente com estas
configurações, pode-se habilitar também, memórias que possuem um pulso de clock
definido. Todas estas configurações estão disponíveis com um duplo clique na CPU,
abrindo a aba de propriedades.
Página | 26
4 Project Tree
Program blocks: Nesta pasta está o bloco de programação principal para o início
do programa, denominado Main [OB1].
Página | 27
4.1 Device Configuration
Esta aba será acessível somente quando o CLP estive em modo online, dando
acesso as funções de reset da CPU, buffer de diagnóstico, capacidade da CPU
de temporizadores/contadores e etc
Nesta pasta estão concentrados todos os blocos utilizados no programa, sejam eles
FC, FB, DB, OB. Também está disponível a função para inserir novos blocos ao
programa.
Página | 28
Figura 14 - Technology Blocks
Através destas fontes, é possível importar um programa feito em SCL para o projeto
atual Caso você tenha exportado as fontes de um projeto do Simatic Manager, é
possível a importação para o TIA V11 através desta função.
Um duplo clique sob a opção Show all tags, na pasta PLC Tags, abrirá uma janela onde
poderão ser realizadas todas as declarações de variáveis do sistema.
Página | 29
Figura 15 - Declaração de Variáveis
Neste local é possível criar tabelas para monitorar e forçar variáveis do sistema.
Página | 30
Clicando em “add new watch table”, uma nova tabela será criada. Nela poderão ser
inseridos os endereços a serem monitorados, por exemplo, entradas digitais e
analógicas, saídas digitais e analógicas, memórias de quaisquer tipo, endereços de
DB.
ANOTAÇÕES GERAIS
Página | 31
Figura 16 - Watch Window
Caso seja necessário forçar algum endereço, deve-se manipular a tabela chamada
“force table”. Através dela, o CLP ignora o resultado lógico da operação do
determinado endereço e prevalece o que estiver na tabela de force.
É importante lembrar que não podem ser forçados endereços de entradas digitais ou
analógicas, por se tratarem de elemento que fornecem o sinal para o CLP. São aceitos
apenas endereços de saída digital e analógica, memórias e endereçamentos de DB’s.
Página | 33
Após inserido o valor a ser forçado na colune “force value”, é necessário aplicar
o valor, pressionando o primeiro F da coluna superior esquerda, conforme a figura
17.
Mostra as principais informações a respeito do programa que está sendo desenvolvido, como:
Memória disponível;
Página | 34
Figura 19 - Local Modules
Página | 35
Figura 20 - Local Modules na Arvore do Projeto
Página | 36
5 Programação Básica
Para o início da programação, deve-se levar em consideração a tabela destacada na figura 10.
Página | 37
Da esquerda para a direita, na tabela destacada, a ordem de elementos é:
Contato NA;
Contato NF;
Bobina Simples;
Abertura de linha;
Fechamento de Linha;
Para alteração do tipo da bobina simples, basta um duplo clique sob a mesma, onde
aparecerão os outros modelos disponíveis, conforme figura ao lado.
Página | 38
P Flanco Positivo – Atua como um filtro de
entrada, lendo apenas o instante em
que o nível lógico passa de 0 para 1,
durante um
ciclo de scan.
N Flanco Negativo - Atua como um filtro
de entrada, lendo apenas o instante em
que o nível lógico passa de 1 para 0,
durante um
ciclo de scan.
NOT Contato de Negação – Inverte o nível
lógico da entrada da instrução em sua
saída
5.1 Temporizadores
Existem basicamente três tipos de temporizadores utilizados no TIA V11, são eles:
Página | 39
TOF: Temporizador com retardo na desenrgização;
Figura 24 - Gráfico TP
Para inserir o temporizador, basta selecionar a empty box e nomeá-la com o nome do
temporizador que será utilizado (TON, TOF, TP). A figura 11 mostra este procedimento.
Página | 40
Figura 25 - Inserindo um TON
Página | 41
Ao inserir o temporizador, abrirá uma janela conforme a figura abaixo:
Página | 42
Inserido o temporizador o mesmo possui duas entradas e duas saídas:
PT: Preset do tempo a ser contado. Sua sintaxe deve ser T#xxs;
Página | 43
As figuras a seguir mostram o comportamento online do temporizador:
Página | 44
5.2 Contadores
Para inserir o contador, basta selecionar a empty box e nomeá-la com o nome do temporizador que
será utilizado (CTU, CTD, CTUD). Ao inserir o contador, a mesma janela do temporizador irá
aparecer. Nela deve- se colocar um nome para o temporizador, levando em consideração a
observação do temporizador: NÃO UTILIZAR CARACTERES ESPECIAIS NEM
ESPAÇO.
Página | 45
Ao inserir o contador, o mesmo possui três entradas e duas saídas, conforme mostra a
figura abaixo:
5.3 Comparadores
Os comparadores são inseridos da mesma forma dos contatos NA, porém devem ser
buscados na aba ao lado, conforme mostra a figura acima:
Igual:
Página | 47
Figura 33 - Comparador Diferente
ANOTAÇÕES GERAIS
Página | 48
Maior:
Maior
Igual:
Página | 49
Figura 36 - Comparador Maior Igual
Página | 50
Menor Igual:
Em todos estes blocos, é muito importante a distinção dos tipos de dados a serem
comparados, pois não é possível a comparação de duas variáveis diferentes, como por
exemplo: Comparar uma variável do tipo INT com uma variável do tipo REAL.
Página | 51
6 Programação Avançada
FC [Function];
FB [Function Block];
DB [Data Block];
OB [Organization Block];
Página | 52
Dependendo do tipo de bloco a ser utilizado na aplicação, o programa pode ser
dividido nas seguintes áreas:
ANOTAÇÕES GERAIS
Página | 53
Figura 39 - Tipos de Programas
Programa Linear: Tem sua estrutura marcada pela ausência de qualquer bloco. Todo o
programa é escrito dentro do OB1, que é o bloco principal de programação.
Os elementos Functions são funções que executam determinadas ações e não possuem
armazenamento de memória. Todos os dados são perdidos após a função chegar ao fim
da chamada.
Página | 54
Figura 40 - Function
Após criada a FC, ela ficará armazenada juntamente com o OB1, na pasta Program Block
Página | 55
com a árvore do projeto.
Página | 56
Figura 42 - Variáveis da FC
Input: São dados de entrada do sistema, como por exemplo: sensores, botões, fins-de-
curso e etc. Geralmente são variáveis apenas de leitura do sistema
Output: São as variáveis de saída do bloco, como por exemplo: válvula para
acionamento de um cilindro, contatora para acionamento de um motor e etc. Geralmente
são variáveis somente de escrita do sistema, onde pode-se alterar o valor do estado
atual do equipamento.
InOut: São variáveis onde podem ser feitas leituras e escritas simultaneamente.
Geralmente variáveis que possam comunicar com algum sistema de supervisão para
alteração de setpoint’s de um processo.
Página | 57
6.1.2 Function Block (FB)
O FB possui uma área de armazenamento de memória. Toda vez que a FB for chamada,
deverá ser associada a ela um novo data block (DB). Nesta DB, são salvos todos os
tipos de dados do bloco, como: entradas, saídas, variáveis temporárias, locais..
Todos os dados contidos dentro de cada DB, podem ser acessados pela chamada da FB.
Página | 58
Figura 44 - Inserindo um FB
Após criada a FB, ela ficará armazenada juntamente com o OB1, na pasta Program Block
Página | 59
Figura 45 - Variáveis FB
Input: São dados de entrada do sistema, como por exemplo: sensores, botões, fins-de-
curso e etc. Geralmente são variáveis apenas de leitura do sistema
Output: São as variáveis de saída do bloco, como por exemplo: válvula para
acionamento de um cilindro, contatora para acionamento de um motor e etc. Geralmente
são variáveis somente de escrita do sistema, onde pode-se alterar o valor do estado
atual do equipamento.
InOut: São variáveis onde podem ser feitas leituras e escritas simultaneamente.
Geralmente variáveis que possam comunicar com algum sistema de supervisão para
alteração de setpoint’s de um processo.
Static: Variáveis estáticas que são salvas dentro da DB instanciada da FB. Desta
maneira, estes dados são salvos ao final do processamento do bloco, podendo ser
utilizados no próximo ciclo de scan do sistema.
Página | 60
6.1.3 Bloco de Dados (DB)
DB’s instanciadas são aquelas que são delcaradas juntamente com alguma FB, por
exemplo: TON, CTU ou qualquer outra FB que for criada dentro do programa.
Existem dois grupos de dados que podem ser trabalhados dentro das DB. São
os tipos elementares e os tipos complexos, aos quais iremos ver a seguir.
Página | 61
Dados elementares são utilizados com frequência em programações básicas, pois
possuem os tipos de dados básicos:
6.1.3.2 Tipos
Complexos
Página | 62
Figura 48 - Dados Complexos
Página | 64
Figura 49 - Tipos de OBs
Página | 65
Figura 50 - Blocos de Organização
Página | 66
6.1.4.3 OB20x – Time delay interrupt
Página | 67
6.1.4.4 OB3x – Cyclic Interrupt
User data types são utilizados muito especificamente quando se fala em programação
estruturada. Através deles, podemos definir um tipo de dado que reúna mais de uma
informação, por exemplo, podemos criar uma estrutura que contenha dados booleanos,
inteiros, reais e etc...tais tipos de dados, são utilizados e acessados em nosso programa
de usuário através da utilização do “.”, como podemos ver na figura 48.
Página | 68
Figura 51 - PLC Data Types
Neste exemplo, foi criada uma estrutura para se trabalhar com valores analógicos.
Todos estes valores serão lidos e utilizados num sistema de supervisão, logo, reunimos
todas as informações necessárias em um único tipo de dado, chamado ANALÓGICO.
Para acessar estar informações, temos que declarar uma variável do tipo
ANALÓGICO em nossa DB principal.
Página | 69
Note que o software criou uma estrutura em cima do tipo de dado analógico. Neste
estrutura estão todos os dados contidos no tipo de dado criado anteriormente. Para
acessar estes dados, devemos primeiro acessar a DB depois a estrutura da UDT para
então acessar a informação final.
6.3 Multi-instance
Página | 70
Figura 53 - Multi-instance
Neste caso, declaramos um temporizador IEC na aba static de uma FB. Como já visto
anteriormente, os temporizadores IEC se utilizam de DB’s para armazenamento de seus
dados, sendo assim, a partir deste momento, será possível acessar seus dados
internamente dentro de uma DB, pois dentro da DB principal da minha FB1, inserimos
mais uma DB, que é a DB do temporizador. Desta forma, note que agora existe um
sustenido “#”
Página | 71
Figura 54 - Intanciando o DB
O multi-instance funciona para qualquer tipo de DB, não podendo ser utilizada em FC’s
Página | 72
Figura 55 - Bloco de Controle PID
Para o correto funcionamento do bloco PID, é necessário que seja criado um Bloco de
Organização de interrupção de tempo OB30, pois a atualização do PID tem prioridade
sobre a execução do programa cíclico.
Página | 73
Figura 56 - Inserindo o OB30
Neste OB30, iremos configurar o scantime em 100ms, porém, pode ser configurado um
tempo qualquer a cima de 10ms.
Quando o bloco for inserido em uma network do programa, ele seguirá o mesmo conceito
de temporizadores e contadores que vimos anteriormente, necessitando nomear a DB
que ele possui.
Página | 74
Figura 57 - Bloco PID
Neste caso, dois botões aparecem no canto direito superior do bloco são eles:
Botão de configuração;
Botão de comissionamento;
Página | 75
Figura 58 - Janela de configuração do PID
Página | 76
Figura 60 - PID manual
Para poder acessar os parâmetros de PID através de uma IHM, deve-se acessar os
seguintes parâmetros dentro da DB do bloco PID na estrutura sRet.
P = r_Crtl_Gain
I = r_Ctrl_Ti
D = r_Ctrl_Td
Página | 77
Figura 61 - Acesso aos parametros PID
ANOTAÇÕES GERAIS
Página | 78
6.4.2 Comissionamento do PID
Página | 79
Figura 63 - Pretuning PID
Os cálculos de pretuning nem sempre são precisos, em função disto, é possível realizar
outros tipos de cálculo, utilizando o modo fine tuning
Nos CLP’s S7-1200 e S7-1500, o SCL já está incorporado na criação de FC’s e FB’s.
Nas versões do Simatic Manager V5.5, é necessária a utilização de um pacote de
software adquirido separadamente.
Página | 80
Figura 64 - Exemplo de código SCL
Página | 81
Figura 65 - Funções de conversão de tipos de dados
Estas são as principais funções utilizadas para a programação SCL, de acordo com a
norma IEC 61131-1.
Página | 82
Outras linguagens de programação de acordo com a norma são:
Ladder;
FBD;
Grafcet;
STL;
SCL;
Para isto, se faz necessária a utilização de dois blocos do sistema disponíveis na biblioteca
No projeto PLC_1, deverá ser inserido o bloco TSEND_C, para envio de dados ao
PLC_2. Ao inserir este bloco, automaticamente o software cria uma DB para
comunicação. Esta DB poderemos nomeá-la conforme nossa necessidade.
Página | 84
Figura 69 - TSEND_C
Por hora, iremos deixar de lado a configuração do parceiro PLC_2. Lembre sempre de
salvar o projeto.
Página | 86
Figura 72 - TSEND_C configuração
Neste caso, a conexão ficará configurada da maneira conforme a figura 53. Será utilizada
coma conexão ISO-on-TCP e no campo TSAP, devemos completar com ISSO-1 nos dois
campos.
Página | 87
Figura 73 - Block Parameters TSEND_C
Neste caso, devemos fazer a configuração conforme a figura 54. Na área SEND AREA
(DATA), iremos configurar o dado que será enviado para o parceiro PLC_2. Neste caso,
podemos declarar uma memória qualquer MW10. Caso fosse necessário o envio de
mais informações, poderíamos utilizar o campo length para isto. Ao final da
programação, o bloco ficará da seguinte maneira:
Página | 88
Figura 74 - Bloco TSEND_C configurado
Página | 89
Figura 75 - Configuração TRCV_C
Página | 90
Figura 76 - TRCV_C Block Parameters
Nesta aba, iremos configurar no campo RECEIVE AREA (DATA),onde iremos receber os
dados enviados pelo PLC_1, podendo ser uma memória de qualquer endereço, não
necessariamente o endereço configurado no PLC_1.
Página | 91
Figura 77 - Conecction Data TSEND_C
Página | 92
Figura 78 - Entrada REQ TSEND_C
Como pode-se ver na figura 59, inserimos uma clock memory de 1Hz na entrada REQ.
Ou seja, esta entrada ficará variando entre 0 e 1 e sempre na borda de subida, fará o
envio de dados ao parceiro.
Página | 93
Figura 79 - Topologia convencional de um sistema de automação
Tendo em vista a utilização de apenas um cabo para alimentação e transmissão de
sinais, é notável a grande diferença, principalmente em nível de manutenção quando o
sistema AS-i é utilizado. Em um sistema convencional, sem a utilização do protocolo,
todos os elementos de campo (atuadores e sensores) estariam ligados diretamente a
CPU do processo, conforme a figura 49.
Página | 94
Isto levaria diretamente ao que representa a figura 50, em termos de fios e cabos em
leitos e eletrocalhas da instalação.
6.7.1 Topologia
Página | 96
Figura 84 - Linha do tempo AS-i
Página | 97
Mestre da rede:
Também é possível a integração da rede AS-i com outras redes, para isto, faz-se
necessária a utilização de “coupler”, que são gateways de conversão de um determinado
protocolo para outro, que veremos a seguir.
Página | 98
Figura 86 - Topologia integrada
A figura 55 mostra uma topologia integrada a sistemas Profinet e Profibus.
Para a instalação de componentes AS-i, deve-se levar em consideração que a rede por
padrão tem um alcance de 100m e até 62 escravos, porém, caso a rede tome outras
proporções, faz- se necessária a utilização de acessórios para aumentar o alcance da
rede.
Página | 99
Com repetidor:300m, 100m por segmento com um repetidor e uma fonte de
alimentação por segmento. Importante salientar que pode-se ter apenas dois
repetidores em série sem a utilização de escravos entre eles.
Com repetidor e plug extensor:400m, apenas um repetidor ligado em série se
combinado ao plug extensor
A máxima distância que a rede pode alcançar é de 600m, levando em conta algumas
considerações:
Página |
101
Figura 89 - Módulos de campo
Para a correta instalação destes módulos, devemos fazer a ligação do cabo AS-i
(amarelo) para a alimentação e troca de dados quando estivermos utilizando módulos
de entradas digitais. Caso sejam utilizados módulos de saída digital, é necessária a
instalação do cabo auxiliar da fonte (preto) para uma segunda alimentação aos
dispositivos a serems acionados.
A conexão física dos componentes é dada através dos “terminais vampiro”, que
perfuram o cabo e fazem a conexão com os terminais do módulo;
Página |
102
Figura 91 - Terminais Vampiro
Página |
103
ANOTAÇÕES GERAIS
Página |
104
6.7.3 Endereçamento de Rede
Como em qualquer outra rede, não é possível que dois escravos possuam o mesmo
endereçamento, pois ocasiona erro na rede e até, em alguns casos, a parada do CLP.
Página |
105
6.7.4 Comunicação via DP coupler para rede AS-i
Página |
106
conforme especificação do fabricante.
ANOTAÇÕES GERAIS
Página |
107
Figura 95 - Módulo DP Coupler AS-i
Display até que o LED ADR fique aceso. Após isto, deve-se seguir a seguinte sequencia:
2. Pressionar o botão “display” até o LED ADR ficar aceso (após isto, ele indicará
o endereço atual do escravo);
3. Caso você pressionar “display” novamente, ele retornará para o endereço do
escravo e o o endereço ficará salvo;
4. Quando você pressionar o botão “set”o LED ficará aceso, do contrário, se você
pressionar “display”o LED se apagará. Você deverá repetir a operação para os
7 LED’s de endereço, ligando ou desligando cada BIT para compor o endereço
seguindo a seguinte sequencia: 1-2-4-8-16-32-64. Com esta estes 7 LED’s de
endereçamento, ó possível fazer combinações de 0 a 127 (número máximo de
escravos profibus, conforme norma);
Página |
108
5. Quando todos os bits estiverem endereçados os LED de endereço começarão a
piscar, se você pressionar o botão “set”, ele salvará o endereço do escravo. Caso
você pressione o botão “display”, o endereço será descartado.
Após esta configuração, deve-se primeiramente selecionar a aba Network view, dentro
de Devices & Networks na árvore do projeto. Selecionando esta aba, o catálogo de
hardware irá mudar, oferecendo as opções de equipamentos que podem entrar em rede
conforme a figura 66.
Página |
109
Figura 97 - Selecionando o DP Coupler no catálogo de hardware
Página |
110
Figura 98 - Escravo inserido
Para associar uma rede ao escravo, o método utilizado é o drag & drop (arrastar e soltar)
entre as conexões de cor roxa dos dois equipamentos.
Página |
111
Figura 99 - Rede profibus associada entre os equipamentos
Selecionando o escravo na tela da figura 68, teremos que configurar o mesmo endereço
profibus configurado no hardware, agora no software.
Página |
112
Figura 100 - Configuração do endereço Profibus no TIA
O próximo passo é dar um duplo clique no escravo dp coupler, a fim de entrar em suas
propriedades de confoguração.
Página |
114
7 Download do Programa
Página |
115
Com o programa finalizado, é necessário fazer o download do mesmo para o equipamento.
A tela acima Irá abrir e então será necessário selecionar qual o meio físico utilizado para
efetuar o download. No caso do kit de desenvolvimento, estará previsto a utilização do
meio físico, ethernet, bem como sua referida placa de rede, conforme mostra a tabela
destacada na figura 24.
Caso em um primeiro momento o programa não encontre nenhum CLP na rede, significa
que o IP configurado é diferente do IP programado no CLP, desta forma, faz-se
necessária a utilização da opção “Show all accessible devices”, para que o programa
encontre todos os equipamentos conectados a ele e assim, será feita a seleção do CLP
e posteriormente o download.
Página |
117
8 Iniciando um Projeto com a IHM
Levando em consideração que a programação vai ser feita de forma integrada entre
CLP e IHM, e que os dois equipamentos vão permanecer no mesmo projeto, podemos
ter como base o projeto existente até o momento desta apostila. No projeto que estamos
trabalhando, podemos inserir um novo equipamento, conforme sugere a figura abaixo:
Página |
118
Após o duplo clique em Add new device, a seguinte janela irá aparecer para fazer a
seleção do equipamento desejado:
O kit didático utilizado em aula acompanha uma IHM modelo KTP 700 Basic Color
PN, desta forma, devemos localizá-la na árvore acima e em seguida, clicar em OK.
Página |
119
8.1 Configurando a IHM
Após a seleção do equipamento, uma janela assistente para configuração irá aparecer.
Nesta janela estão todas as opções necessárias para a pré-configuração da IHM, onde
pode ser feita a seleção da conexão, pré-criação de alarmes, layout de telas, mapa de
navegação e etc...
Nesta figura, podemos selecionar com qual CLP iremos fazer a conexão, caso nosso
projeto tenha mais de um equipamento.
Página |
120
Com esta IHM, pode-se estabelecer conexão com mais de um CLP também, basta
inserir uma nova conexão manualmente após finalizado o assistente.
Página |
121
8.1.2 Layout de Tela
Página | 100
8.1.3 Pré-configurando alarmes:
Alarmes ativos;
Alarmes reconhecidos;
Página | 101
8.1.4 Mapeamento de Telas
Página | 102
8.1.5 System Screen
Administração de Usuários;
Informações do sistema.
Página | 103
8.1.6 Rodapé
A tela a seguir da a opção de configurar também o layout da página, porém, seu foco
são nos botões de operação. Nela você poderá escolher quais os botões necessários
para a sua aplicação, são eles:
Página | 104
8.2 Objetos de Tela
Linha;
Elipse;
Circulo;
Retângulo;
Texto;
Página | 105
Figura;
Página | 106
8.2.2 Elementos
8.2.2.2 Botão
Este display pode ser utilizado para selcionar textos conforme a necessidade do projeto,
por exemplo: Seleção de Receitas, Seleção de Rotas, Seleção de Modo de Operação;
Mostra um display de data/hora. Pode ser configurado para mostrar apenas a Data ou
apenas a Hora, ou os dois.
Página | 107
8.2.2.6 Bar (Bar)
Este botão é utilizado como botão de seleção, pois ele não é apenas um pulso no
tag associado. Ele mantem o valor selecionado. Funcionamento semelhante a um
botão com trava.
Página | 108
8.3 Propriedades dos objetos
Ao inserir qualquer objeto na tela, ele poderá ser alterado conforme a necessidade do
nosso projeto, para isso, existem 3 principais abas em qualquer objeto adicionado na
tela, são elas:
Propriedades;
Animações;
Eventos.
Página | 109
Figura 113 - Propriedades do Botão
8.4 Animações
Página | 111
8.5 Events
Na aba Events, poderemos executar funções pré-determinadas para que o processo funcione
adequadamente, por exemplo:
Ao clicar num botão, outra tela deverá abrir, ou um motor deverá acionar e etc...
Na aba events, podemos selecionar a fonte do evento, conforme mostra a figura 36:
Click: Evento chamado no clique do botão;
Change: Evento chamando quando o valor do tag associado, muda seu valor;
Página | 110
É importante lembrar que apenas quando o objeto da tela for um BOTÃO,
utilizaremos os eventos, pois em objetos de sinalização
Após selecionado o evento, devemos incluir uma função a este evento, como sugere
a figura 37.
Página | 111
As funções disponíveis estão separadas em grupos, como segue:
Página | 112
o Limpar o buffer de alarmes;
o Decrementar tag;
Edit bits: É a área mais utilizada, visto que através dele é possível a
manipulação de valores de bits;
o InvertBit: Cada vez que é chamado, inverte o valor do bit;
Keyboard:
Other functions:
Página | 113
INTERFACE DO USUÁRIO
A Barra de Título também oferece os seguintes botões (da esquerda para a direita):
Página | 114
Botão Restaurar Abaixo: reduz a janela ao seu tamanho original
(padrão).
Botão Fechar: Clique para salvar o Banco de Dados e então feche o ambiente
de desenvolvimento. Se você modificou qualquer tela ou planilha, o aplicativo
solicitará que você salve seu trabalho. A função deste botão é semelhante a
clicar Sair da Aplicação no menu do Aplicativo.
Campo Descrição
Modo de execução O atual Modo de execução da aplicação.
CAP Indica se a tecla Caps Lock está ligada (preto) ou desligada
(cinzento).
NUM Indica se a tecla Num Lock está ligada (preto) ou desligada
(cinzento).
SCRL Indica se a tecla Scroll Lock está ligada (preto) ou desligada
(cinzento).
ID do Objeto O número de identificação de um objeto selecionado da tela.
Posição do Cursor A localização do cursor na tela ativa ou planilha. Se é uma tela,
então a posição do cursor do mouse é dada como coordenadas
X, Y, onde X é o número de pixels da borda esquerda da tela e
Y é o número de pixels da borda superior da tela. Se for uma
planilha, então a posição do cursor de texto é dada como linha
e coluna.
Página | 115
5.3. BOTÃO DE ARQUIVO
Página | 116
5.5. MENU RIBBON
A Aba Início do Menu Ribbon é usada para gerenciar o seu projeto dentro do ambiente
de desenvolvimento.
Página | 117
As ferramentas estão organizadas nos seguintes grupos:
A Aba Inserir do Menu Ribbon é usada para inserir novas tags, telas, planilhas, e
outros componentes em seu projeto.
A Aba Projeto do Menu Ribbon é usada para configurar as definições de seu projeto.
Página | 118
As ferramentas estão organizadas nos seguintes grupos:
A Aba Gráficos do Menu Ribbon é usada para desenhar telas do projeto. Esta aba
está disponível somente quando você tem uma tela de projeto aberto para edição.
A Aba Formato do Menu Ribbon é usado para formatar e organizar os objetos em uma
tela de projeto. Esta aba está disponível apenas quando você tiver selecionado um ou
mais objetos em uma tela de projeto.
Página | 119
Figura 11: Aba Formato
A Aba Ajuda do Menu Ribbon fornece ajuda adicional para o uso do software.
Thin Clients contém todas páginas da Web (i.e., telas salvas em formato
HTML) criadas para o projeto.
Página | 122
Disposição mostra todas as telas atualmente abertas no Editor de Telas e
permite visualizar como as telas se juntam durante a execução do projeto.
Página | 123
ODBC contém as planilhas ODBC usadas para configurar como a interface
ODBC executa em um ambiente de rede e usa a configuração padrão do
Windows ODBC. Você configura funções ODBC para trocar dados entre seu
projeto e de qualquer banco de dados de suporte a interface ODBC.
Drivers contém as planilhas de Driver usadas para configurar uma interface (ou
interfaces) de comunicação entre o projeto e o equipamento remoto (tais como
CLP ou transmissores). Um driver de comunicação é um arquivo .DLL que
contém informações específicas sobre o equipamento remoto e implementa o
protocolo de comunicação.
Página | 124
OPC contém as planilhas OPC usadas para configurar a interface OPC entre o
seu projeto e um Servidor OPC. Um módulo de Cliente OPC permite o seu
projeto comunicar com qualquer equipamento que atua como um Servidor OPC
implementando o padrão OPC descrito no documento OLE for Process Control
Data Access Standard Version 2.0 publicado pela fundação OPC.
OPC UA contém as planilhas OPC UA que são usados para se conectar com
servidores de OPC, através do novo protocolo OPC Unified Architecture.
DDE contém as planilhas DDE usadas para configurar um Cliente DDE para uma
aplicação Servidora DDE (tais como Microsoft Excel ou qualquer outro programa
do Windows que suporte essa interface). DDE (Dynamic Data Exchange) é um
protocolo que permite a troca dinâmica de dados entre aplicações Windows.
Uma conversa DDE é uma interação entre os programas cliente e servidor. IWS
fornece interfaces que executam como Clientes ou como Servidores.
Use o poderoso editor de tela orientada a objetos para criar e editar uma variedade de
telas e planilhas para seus projetos.
Página | 125
Você pode inserir informações usando o mouse e teclado, dados de controle de saída
para os seus processos, e atualizar automaticamente as telas com base na entrada de
dados de seus processos.
Página | 126
5.8. JANELA DE SAÍDA
A Janela de Saída pode ser configurada para exibir mensagens de depuração geradas
durante a execução do projeto.
Ao clicar com o direito e selecionar a opção Configurações, será exibida uma janela
de Configuração de Logs. Os campos da Janela de Configuração de Logs estão
descritos na tabela a seguir:
Opção Descrição
Comando de Mostra qualquer comando de Leitura e/ou escrita
Leitura/Escrita que são enviadas ao dispositivo conectado.
Analizador de Mostra mensagens geradas pelo driver configurado.
Protocolo
Mensagens OPC Mostra mensagens geradas pela comunicação via
OPC.
Mensagens TCP/IP Mostra mensagens geradas pela comunicação via
TCP/IP.
Receita/Relatório Mostra mensagens geradas pelas tarefas de Receita
e Relatório.
Mostrar Abrir/Fechar Mostra detalhadamente informações sempre que
uma tela é aberta ou fechada.
Logon/Logout Mostra mensagens sempre que um usuário faz o
logon e/ou logout.
Rastrear Mensagem Mostra mensagens geradas pela função Trace().
Essa função é usada para gerar mensagens
customizadas configuradas em seu projeto.
Mensagens do Banco Mostra mensagens geradas pelas interfaces de
de Dados Banco de Dados ODBC e ADO.NET.
Mensagens DDE Mostra mensagens geradas pela comunicação via
DDE.
Inserir Data/Hora Insere a Data e Hora em cada mensagem.
Página | 127
TAGS
Tags são um núcleo central de qualquer projeto do IWS. Tags são variáveis usadas pelo
IWS para receber e armazenar os dados obtidos a partir da comunicação com
dispositivos no chão de fábrica, a partir dos resultados dos cálculos e funções, e de
entrada do usuário. Por sua vez, as tags podem ser utilizadas para mostrar informações
nas telas (e páginas Web), para manipular objetos da tela, e para controlar tarefas em
execução.
Mas as tags são mais do que simples variáveis. O IWS inclui um gerenciador de banco
de dados em tempo real que fornece um número de funções sofisticadas, como a
impressão da hora de qualquer alteração de valor, verificando valores de tag contra os
valores mínimo e máximo de tempo de execução, comparando os valores de tags para
limites de alarmes, e assim por diante. Uma tag do IWS tem valor e várias propriedades
que podem ser acessados, alguns em desenvolvimento, enquanto outros só na
execução.
Todas as tags são organizadas em uma das seguintes categorias, que são
representados por pastas na Aba Global do Explorador de Projeto:
Tags do Projeto são tags que você cria durante o desenvolvimento do projeto.
Locais onde as tags do projeto são usados incluem:
Tags de Tela
Tags de Controle
Página | 128
Por exemplo, você pode criar tags em SteepleChase e importá-los para o IWS então
IWS pode ler/escrever dados de um programa SteepleChase de controle baseado em
PC.
Você não pode modificar tags compartilhadas com IWS - você deve modificar as tags
no programa original de controle baseado em PC, e então re-importá-los para o banco
de dados de Tags.
Tags de Sistema são tags predefinidas com funções predeterminadas que são
usadas para tarefas do supervisório IWS. Por exemplo,
A maioria das tags do sistema é somente leitura, o que significa que você não
pode adicionar, editar ou remover essas tags do banco de dados.
Depois de criar uma tag, você pode usá-lo em qualquer lugar dentro do projeto, e usar
a mesma tag para mais de um objeto ou atributo.
Os nomes das Tags devem ser únicos - você não pode especificar o mesmo
nome para duas tags diferentes (ou funções). Se você digitar um nome de tag já
existente, o IWS reconhece que o nome existe e não vai criar essa nova tag.
Você deve iniciar cada nome da tag com uma letra. Entretanto, você pode usar
letras, números e o caractere de sublinhado (_) no nome da tag.
Você pode usar o caracter @ no início de um nome de tag para indicar que a tag será
utilizada como uma tag indireta no projeto.
Página | 129
Alguns exemplos de tags válidas incluem:
Temperatura
Pressao1
contador
Outra consideração na concepção de uma tag é o tipo de dado que a tag irá receber.
IWS reconhece o seguinte, padrão de tipos de dados da tag:
String (dado alfanumérico, até 1024 caracteres): Caracter string até 1024
caracteres que contém letras, números ou caracteres especiais. Suporta
caracteres ASCII e UNICODE. Exemplos: Produto X123, 01/01/90, *** On ***.
Você também pode fazer uma tag dentro de uma tag composta assinalando-a como
uma Tag Classe.
Uma Tag Vetor consiste em um conjunto de Tags com o mesmo nome, mas com
índice de Vetor único (uma matriz de n linhas e uma coluna) para diferenciar cada Tag.
Página | 130
Cada posição de vetor (incluindo a posição 0) conta como uma tag para as restrições de licenciamento, pois
cada posição tem um valor independente.
NomeDaTag[NdoVetor], ou NomeDaTag[NdoVetor+c]
Use a tag vetor, sempre que possível, pois otimiza o uso da memória e simplifica a tarefa de configuração.
Por exemplo, se você quer um display para monitorar cada tanque, você pode usar tags vetor para configurar
um único display, contendo tags vinculadas à qualquer tanque. Por exemplo (usando a tag nt como um
índice contendo
número do tanque): pressao[nt], temperatura[nt], e temperatura[nt+1].
Você deve especificar um índice máximo para cada tag vetor na coluna tamanho de qualquer folha de
dados. Você pode especificar n para indicar tag vetor tem posições de 0 até n. Por exemplo, se o tamanho
da TagA é 3, os elementos de tag podem ser TagA[0], TagA[1], TagA[2], e TagA[3].
Um índice de vetor pode ser uma tag, um valor numérico, ou uma expressão com uma operação aritmética
"+". Quando você se refere a um vetor com um índice usando a operação aritmética +, você deve usar a
seguinte sintaxe:
NomeTagVetor[Valor1+Valor2]
Onde Valor1 e Valor2 podem ser uma tag inteira ou uma constante numérica. Por exemplo:
temperatura[nt+2] ou temperatura[nt+6].
Classes permitem alto grau de encapsulamento. Uma Classe é um modelo composto por duas ou mais
definições de tag, cada uma com seu próprio tipo de dados. Você pode usar Classes nos projetos que tem
itens (ex. Liquido dos Tanques) com múltiplos atributos (ex. Nível, temperatura, pressão) para ser
monitorado ou controlado.
Os nomes das Classes devem ser únicos - você não pode especificar o mesmo nome para duas
classes diferentes (ou funções). Se você digitar um nome de classe já existente, o IWS reconhece
que o nome existe e não vai criar essa nova classe.
O membro de uma Classe não pode pertencer à outra Classe. Porém, você pode criar membros
com o mesmo nome em diferentes Classes.
Página | 131
Quando uma nova Tag Classe é criada, cada membro da classe conta como uma tag usada, porque cada
membro pode obter um valor. (Por exemplo, se você criar uma classe com 5 membros, e em seguida criar
cinco tags com essa classe, então você tem um total de 25 tags utilizadas).
"NomeDaTag.NomeDoMembro", ou "NomeDaTag[NdoVetor].NomeDoMembro"
Use a tag classe, sempre que possível, pois otimiza o uso da memória e simplifica a tarefa de configuração.
Por exemplo, se você quer um display para monitorar os atributos de um tanque, você pode usar tags classe,
contendo membros vinculadas à tag do tanque. Por exemplo (usando a tag tanque com os membros de uma
classe do tanque): tanque.nivel, tanque.temperatura, tanque[4].vazao.
O IWS suporta acesso indireto para tags no banco de dados. Por exemplo, considere uma tag X do tipo
String. Esta tag pode conter o nome de qualquer outra tag no banco de dados (isto é, ela pode fornecer um
ponteiro para qualquer outro tipo de tag, incluindo um tipo de classe). A sintaxe para uma tag indireta é
simples: @NomeTagIndireta. Por exemplo, suponha que uma tag chamada X contém uma string "TEMP".
Lendo e/ou escrevendo para @X dá acesso ao valor da variável TEMP.
Qualquer tag criada como uma tag do tipo string é potencialmente uma tag indireta (ponteiro). Para referir a
uma tag tipo-classe, você pode declarar uma tag tipo-string que aponta para um tag classe.
“TagIndireta = TagProjeto”
“@TagIndireta”
Página | 132
REFERÊNCIAS
Página | 133