Transcript
Curso de Programao de CLP, IHM e Supervisrio
Siemens S7-1200/IHM KTP600/Elipse E3
NIKOLAS HENNEMANN BARBOSA Luzerna, 2013
Pgina | 2
1 Introduo .................................................................................................... 5
2 Criando um Projeto ...................................................................................... 6
3 Configurando o hardware ............................................................................ 9
3.1 Configurao Manual de Hardware ............................................................................ 9
3.2 Configurao Automtica de Hardware ................................................................... 12
3.3 Configurao do endereo IP ................................................................................... 14
3.4 Configurao de endereos lgicos .......................................................................... 14
3.5 Configurao de Clock e System Memory ................................................................ 15
4 Project Tree ............................................................................................... 17
4.1 Device Configuration ............................................................................................... 18
4.2 Online & Diagnostics ................................................................................................ 18
4.3 Program Blocks ........................................................................................................ 18
4.4 Technology Blocks ................................................................................................... 18
4.5 External Source File ................................................................................................. 19
4.6 Declarao da Lista de Variveis .............................................................................. 19
4.7 PLC Data Types ........................................................................................................ 20
4.8 Watch and Force Tables ........................................................................................... 20
4.9 Program Info ........................................................................................................... 22
4.10 Local Modules ......................................................................................................... 22
5 Programao Bsica.................................................................................. 25
5.1 Temporizadores ....................................................................................................... 27
5.2 Contadores .............................................................................................................. 33
5.3 Comparadores ......................................................................................................... 35
5.4 Tipos de Blocos ........................................................................................................ 38
5.4.1 Functions ......................................................................................................... 38
5.4.2 Function Block ................................................................................................. 41
Pgina | 3
5.4.3 Bloco de Dados (DB) ......................................................................................... 44
5.4.3.1 Tipos Elementares ........................................................................................ 44
5.4.3.2 Tipos Complexos .......................................................................................... 45
5.4.4 Blocos de Organizao (OB) ............................................................................. 46
5.4.4.1 OB1 Program Cycle .................................................................................... 48
5.4.4.2 OB10x Startup ........................................................................................... 48
5.4.4.3 OB20x Time delay interrupt ....................................................................... 48
5.4.4.4 OB3x Cyclic Interrupt ................................................................................. 49
5.4.4.5 OB4x Hardware Interrupt .......................................................................... 49
5.4.4.6 OB80 Time error interrupt ......................................................................... 49
5.4.4.7 OB82 Diagnostic Interrupt ......................................................................... 49
6 Download do Programa ............................................................................. 49
7 Iniciando um Projeto com a IHM ................................................................ 50
7.1 Configurando a IHM................................................................................................. 53
7.1.1 Criando a Conexo com o CLP .......................................................................... 53
7.1.2 Layout de Tela.................................................................................................. 54
7.1.3 Pr-configurando alarmes: ............................................................................... 55
7.1.4 Mapeamento de Telas ..................................................................................... 56
7.1.5 System Screen.................................................................................................. 57
7.1.6 Rodap ............................................................................................................ 58
7.2 Objetos de Tela........................................................................................................ 59
7.2.1 Basic Objects .................................................................................................... 59
7.2.2 Elementos ........................................................................................................ 60
7.2.2.1 Display (I/O Field) ......................................................................................... 60
7.2.2.2 Boto ........................................................................................................... 60
7.2.2.3 Display Simblico (Symbolic I/O Field) .......................................................... 60
Pgina | 4
7.2.2.4 Display Grfico (Graphic I/O Field) ................................................................ 60
7.2.2.5 Display de Data/Hora (DateTime Field) ......................................................... 60
7.2.2.6 Bar (Bar)....................................................................................................... 60
7.2.2.7 Switch (Switch)............................................................................................. 60
7.3 Propriedades dos objetos ........................................................................................ 61
7.4 Animaes ............................................................................................................... 62
7.5 Events...................................................................................................................... 64
7.5.1 Funes dos Eventos ........................................................................................ 65
Pgina | 5
1 Introduo
A presente apostila tem como objetivo auxiliar os alunos do curso de programao avanada
de CLP, IHM e Supervisrios na criao de um projeto novo utilizando o software TIA V11,
destinado a programao de Controladores Lgicos Programveis da linha S7-1200 da
Siemens.
Neste documento tambm esto descritos procedimentos para utilizao de temporizadores,
contadores, entradas e sadas analgicas, criao de FC, FB e DB, programao estruturada,
programao em SCL, STL, bem como utilizao do controle PID prprio do CLP.
Levando em considerao a arquitetura e a filosofia TIA (Totally Integrated Automation), neste
software possvel a programao de toda a linha de CLPs, IHM e Supervisrio da Siemens.
A verso utilizada no SENAI a TIA Basic, liberando apenas a programao da linha S71200 e
IHM KTP, porm, nas verses Professional e Advanced, esto liberadas todas as famlias de
CLPs (S7-1200, S7-300, S7-400, ET200s CPU) e tambm toda a linha de IHMs (KTP, TP, MP,
Comfort Panel).
Utilizando este princpio, nesta apostila tambm estar disponvel um tutorial de criao de
projeto uitilizando a IHM KTP600, disponveis nos KIT didticos da Unoesc.
O software de superviso que ser utilizado em sala de aula o Elipse E3, da marca Elipse de
Porto Alegre RS. Este supervisrio um dos lideres atuais do mercado de sistemas de
superviso, tendo uma ampla plataforma de desenvolvimento, aliando simplicidade e
funcionalidade ao seu sistema.
Pgina | 6
2 Criando um Projeto
Na rea de trabalho, de um duplo clique no cone TIA Portal V11. A seguinte tela abrir
Figura 1 - Tela de Abertura TIA Portal V11
Pgina | 7
Aps aberto o software, a seguinte tela ir aparecer.
Figura 2 - Tela de Criao do Projeto
Nesta tela, podem ser feitos os seguintes comandos:
Open existing project: D a possibilidade de abrir um projeto existente.
Create new project: Cria um novo projeto.
Migrate project: Migra um software iniciado no Simatic Manager V5.x para o TIA V11
Pgina | 8
Ao clicar em create new project, ser possvel nomear o projeto, bem como alterar seu destino
de gravao, caso necessite grav-lo em pen-drive, por exemplo.
Figura 3 - Iniciando o Projeto
Pgina | 9
3 Configurando o hardware
3.1 Configurao Manual de Hardware
Aps 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.
Figura 4 - Configurando o Hardware
Criado o projeto, devemos iniciar a configurao de Hardware do sistema. De um clique no
boto destacada em vermelho na figura 4. Esta configurao indispensvel para o correto
funcionamento do CLP. dever do aluno configurar no software quais so os equipamentos
utilizados no kit.
Pgina | 10
Aps selecionada a ferramenta de configurao de equipamento, como se trata de um projeto
novo, devemos inserir um novo equipamento, como sugere a figura 5.
Figura 5 - Inserindo a CPU
Aps clicar no boto add new device, poder ser escolhido o modelo de CLP e IHM que
sero utilizados no projeto. O CLP montando nos kits didticos a:
CPU 1214C DC/DC/DC: cdigo 6ES7 214-1AE30-0XB0.
Pgina | 11
indispensvel que os mdulos montados no kit didtico sejam totalmente reproduzidos no
software, de modo que no ocorram erros na inicializao do CLP quando do download das
configuraes para o mesmo. Desta forma, necessrio configurar os seguinte mdulos
juntamente com a CPU:
CM1241 (RS485) - 6ES7 241-1CH30-0XB0
CM1243-5 (PROFIBUS DP) 6GK7 243 5DX30 0XE0
Deve-se seguir a sequncia de montagem como mostra a figura 6.
Figura 6 - Configurando o Hardware
Com um duplo clique sob os mdulos de comunicao, automaticamente eles so inseridos no
rack, conforme figura a cima.
Vale lembrar que est configurao est sendo feita em funo do KIT didtico que ser
trabalhando em aula, possuir exatamente estes mdulos, porm, estas configurao varia de
acordo com a aplicao automatizada.
Pgina | 12
3.2 Configurao Automtica de Hardware
Outra maneira de fazer a configurao do hardware, fazendo-o de forma automtica. Apenas
os equipamentos que suportem porta Profinet integrada possuem esta caracterstica. Para
fazer-se esta configurao, ao invs de adicionar o modelo j CPU, insere-se um modelo sem
especificao,e logo aps, da-se um comando para que o TIA detecte a configurao
completa do hardware, importando os modelos de mdulos e cartes de expanso conectados
a CPU, bem como suas respectivas verses de firmware.
Figura 7 - Inserindo uma CPU genrica
Aps inserir a CPU genrica, a seguinte tela abrir. (Figura 8)
Pgina | 13
Figura 8 - Auto-detectando o hardware
Clicando em detect, o software estabelecer uma conexo com o CLP lendo todas as
configuraes do hardware conectado ao computador.
Figura 9 - Hardware detectado
Feito isto, o software estar configurado e pronto para iniciar a programao.
Pgina | 14
3.3 Configurao do endereo IP
Aps a insero dos mdulos de comunicao, o prximo passo a configurao do endereo
IP do CLP. Para tal comunicao, basta um duplo clique na porta RJ45 junto da CPU.
Figura 10 - Configurando o Endereo IP
Caso no seja selecionado automaticamente o campo ethernet address, na tela de
propriedades, deve-se selecionar o campo e configurar o endereo IP, conforme figura 7.
Depois de configurado o endereo IP, necessrio salvar o projeto no boto save project.
Salvando o projeto, o programa ir compilar as informaes e s assim as entradas estaro
disponveis para a programao.
3.4 Configurao de endereos lgicos
Aps a correta configurao do hardware interessante verificar os endereos lgicos
fornecidos pelo software as entradas e sadas do sistema. Estes endereos so de suma
importncia para o correto desenvolvimento do software. Conforme mostra a figura 9,
podemos modificar todos os endereamentos tanto da CPU como de mdulos de expanso:
Pgina | 15
Figura 11 - Endereamentos Lgicos
Todos os endereos em destaque na figura 11, podem ser modificados atravs do software,
basta a modificao na referida janela: device overview. A medida em que so inseridos os
mdulos, automaticamente o software atribui endereos a eles, deve-se verificar quais so
estes endereos para fazer a correta utilizao no desenvolvimento do programa.
3.5 Configurao de Clock e System Memory
Esta configurao muito utilizada para auxiliar o programador durante o desenvolvimento do
software, uma vez que podem-se configurar memrias de sistema para aplicaes especficas
como:
Memria sempre em UM;
Memria sempre em ZERO;
Memria de ciclo de inicializao;
Mudana do status do diagnstico;
Pgina | 16
Para isto necessario habilitar estas funes. Juntamente com estas configuraes, pode-se
habilitar tambm, memrias que possuem um pulso de clock definido. Todas estas
configuraes esto disponveis com um duplo clique na CPU, abrindo a aba de propriedades.
Figura 12 - Configurao de Memria de Clock e de Sistema
Pgina | 17
4 Project Tree
Na tela esquerda do monitor, denominada Project Tree, esto todas as informaes
necessrias para o desenvolvimento da aplicao.
Figura 13 - Project Tree
As principais pastas para o desenvolvimento do programa so:
PLC tags: Responsvel pela declarao da lista de IOs do sistema;
Program blocks: Nesta pasta est o bloco de programao principal para o incio do
programa, denominado Main [OB1].
Pgina | 18
4.1 Device Configuration
Responsvel pela configurao do equipamento. Com um duplo clique nele, voc poder
modificar a configurao de hardware atual, inserindo ou removendo objetos. Tambm
possvel a criao/modificao de configuraes de rede.
4.2 Online & Diagnostics
Esta aba ser acessvel somente quando o CLP estive em modo online, dando acesso as
funes de reset da CPU, buffer de diagnstico, capacidade da CPU de
temporizadores/contadores e etc
4.3 Program Blocks
Nesta pasta esto concentrados todos os blocos utilizados no programa, sejam eles FC, FB, DB,
OB. Tambm est disponvel a funo para inserir novos blocos ao programa.
4.4 Technology Blocks
Blocos tecnolgicos so blocos de funes prontos e disponibilizados pela Siemens, como
blocos de controle PID, blocos de controle de movimento (motion) para utilizao com
inversores de frequncia e servos-motores.
Pgina | 19
Figura 14 - Technology Blocks
4.5 External Source File
Atravs destas fontes, possvel importar um programa feito em SCL para o projeto atual Caso
voc tenha exportado as fontes de um projeto do Simatic Manager, possvel a importao
para o TIA V11 atravs desta funo.
4.6 Declarao da Lista de Variveis
Um duplo clique sob a opo Show all tags, na pasta PLC Tags, abrir uma janela onde podero
ser realizadas todas as declaraes de variveis do sistema.
Pgina | 20
Figura 15 - Declarao de Variveis
Para a declarao de variveis somente necessria a escrita do nome do smbolo que ser
utilizado, ao pressionar a tecla ENTER, automaticamente as outras colunas sero preenchidas,
inclusive a coluna de endereamento. Por padro, esta coluna inicia sempre no endereo
%I0.0. Caso seja necessrio mudar a rea de endereamento, o mesmo deve ser feito mo.
4.7 PLC Data Types
Nesta seo possvel criar um tipo de dado conforme a necessidade do usurio. Ao invs de
se trabalhar com variveis do tipo bool, byte, word, double word, pode-se criar uma prpria
estrutura de dados, acessando-a atravs de uma DB e utilizando seus dados internos. Mais
detalhes sero vistos no capitulo 6.1.5 de programao avanada.
4.8 Watch and Force Tables
Neste local possvel criar tabelas para monitorar e forar variveis do sistema. Clicando em
add new watch table, uma nova tabela ser criada. Nela podero ser inseridos os endereos
a serem monitorados, por exemplo, entradas digitais e analgicas, sadas digitais e analgicas,
memrias de quaisquer tipo, endereos de DB.
Pgina | 21
Figura 16 - Watch Window
Caso seja necessrio forar algum endereo, deve-se manipular a tabela chamada force
table. Atravs dela, o CLP ignora o resultado lgico da operao do determinado endereo e
prevalece o que estiver na tabela de force.
importante lembrar que no podem ser forados endereos de entradas digitais ou
analgicas, por se tratarem de elemento que fornecem o sinal para o CLP. So aceitos apenas
endereos de sada digital e analgica, memrias e endereamentos de DBs.
Figura 17 - Force table
Pgina | 22
Aps inserido o valor a ser forado na colune force value, necessrio aplicar o valor,
pressionando o primeiro F da coluna superior esquerda, conforme a figura 17.
4.9 Program Info
Mostra as principais informaes a respeito do programa que est sendo desenvolvido, como:
Utilizao de memria de dados e de trabalho;
Numero de FCs, FBs, DBs e OBs utilizados
Memria disponvel;
Figura 18 - Program Info
4.10 Local Modules
D acesso ao mdulos perifricos a CPU, como por exemplo, remotas profibus, cartes de
rede...
Pgina | 23
Figura 19 - Local Modules
A figura 19 se reflete na seguinte arvore de projeto de local modules:
Pgina | 24
Figura 20 - Local Modules na Arvore do Projeto
Pgina | 25
5 Programao Bsica
Neste tpico ser dada nfase na utilizao de temporizadores, contadores e comparadores de
entradas analgicas. Operao simples, porm de grande importncia durante a programao
de CLPs.
Para o incio da programao, deve-se levar em considerao a tabela destacada na figura 10.
Figura 21 - Elementos de Programao
Nesta barra de ferramentas possvel inserir as principais instrues para o desenvolvimento
do programa.
Pgina | 26
Da esquerda para a direita, na tabela destacada, a ordem de elementos :
Contato NA;
Contato NF;
Bobina Simples;
Bloco Genrico (utilizados para chamar temporizadores e contadores);
Abertura de linha;
Fechamento de Linha;
Para alterao do tipo da bobina simples, basta um duplo clique sob a mesma, onde
aparecero os outros modelos disponveis, conforme figura ao lado.
Instruo Descrio Simbolo
NA Contato Normalmente Aberto
NF Contato Normalmente Fechado
Bobina Simples Bobina Simples
Bobina SET Bobina SET Atribui o valor 1 ao endereo
de forma retentiva
Bobina RESET Bobina Reset Atribui o valor 0 ao
endereo de forma retentiva
Bobina SB Bobina Set bit field
Bobina RB Bobina Reset bit field
Pgina | 27
P Flanco Positivo Atua como um filtro de
entrada, lendo apenas o instante em que o
nvel lgico 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
nvel lgico passa de 1 para 0, durante um
ciclo de scan.
NOT Contato de Negao Inverte o nvel
lgico da entrada da instruo em sua
sada
5.1 Temporizadores
Existem basicamente trs tipos de temporizadores utilizados no TIA V11, so eles:
TON: Temporizador com retardo na energizao;
Figura 22 - Grfico TON
Pgina | 28
TOF: Temporizador com retardo na desenrgizao;
Figura 23 - Grfico TOF
TP: Temporizador de pulso;
Figura 24 - Grfico 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.
Pgina | 29
Figura 25 - Inserindo um TON
Pgina | 30
Ao inserir o temporizador, abrir uma janela conforme a figura abaixo:
Figura 26 - Nomeando o TON
Nesta janela, necessrio inserir um nome para o temporizador.
IMPORTANTE: NO DEVEM SER UTILIZADOS CARACTERES ESPECIAIS E ESPAOS NO NOME
DO TEMPORIZADOR.
Pgina | 31
Inserido o temporizador o mesmo possui duas entradas e duas sadas:
IN: Quando habilitada, inicia a contagem do tempo;
PT: Preset do tempo a ser contado. Sua sintaxe deve ser T#xxs;
Q: Sada do temporizador que ativada quando a contagem chega ao preset;
ET: Tempo decorrido da contagem. Geralmente utilizado para mostrar em IHM.
Figura 27 - Utilizao do TON
Pgina | 32
As figuras a seguir mostram o comportamento online do temporizador:
Figura 28 - TON Online - Contagem de Tempo
Quando o temporizador atinge a contagem do preset, a sada Q ativada:
Figura 29 - Tempo Atingido
Pgina | 33
5.2 Contadores
O contador dividido em trs tipos:
CTU: contador crescente;
CTD: contador decrescente;
CTUD: contador crescente/decrescente.
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 considerao a observao do temporizador: NO
UTILIZAR CARACTERES ESPECIAIS NEM ESPAO.
Figura 30 - Nomeando o Contador
Pgina | 34
Ao inserir o contador, o mesmo possui trs entradas e duas sadas, conforme mostra a figura
abaixo:
CU: Cada pulso nesta entrada, incrementa a contagem do contador;
R: Um pulso nesta entrada reinicia a contagem;
PV: Preset de contagem para acionar a sada Q;
Q: Sada ativada quando a contagem chega no nmero pr-determinado;
CV: Contagem decorrida at o momento. Normalmente utilizada para IHM.
Figura 31 - Utilizando o Contador
A opo demonstrada acima a mais prtica para se obter os blocos
desejados, porm existem outros meios de chama-los na network de
programao. A outra maneira mais utilizada atravs da barra lateral
direita chamada Instructions:
As pastas mais utilizadas so as destacadas em vermelho na figura ao
lado:
Bit logic operation: Possui as operaes binrias a serem
utilizadas (contato NA, NF, bobina );
Timer operations: Possui todos os temporizadores disponveis
para utilizao no software;
Pgina | 35
Counter operations: Contm os contadores disponveis para utilizao no software;
Comparator operations: Operaes de comparaes do tipo maior, menor,
maior/igual, menor/igual, igual, diferente e etc...
Math Functions: Operaes matemticas disponveis de soma, subtrao, diviso,
multiplicao e etc...
5.3 Comparadores
Os comparadores so inseridos da mesma forma dos contatos NA, porm devem ser buscados
na aba ao lado, conforme mostra a figura acima:
Os comparadores esto divididos da seguinte maneira:
Igual:
Figura 32 - Comparador Igual
Diferente:
Figura 33 - Comparador Diferente
Pgina | 36
Maior:
Figura 34 - Comparador Maior
Menor:
Figura 35 - Comparador Menor
Maior Igual:
Figura 36 - Comparador Maior Igual
Pgina | 37
Menor Igual:
Figura 37 - Comparador Menor Igual
Em todos estes blocos, muito importante a distino dos tipos de dados a serem
comparados, pois no possvel a comparao de duas variveis diferentes, como por
exemplo: Comparar uma varivel do tipo INT com uma varivel do tipo REAL.
A ordem de processamento da comparao dada pelo elemento acima do contato com o
elemento abaixo do mesmo, logo, comparamos o primeiro com o segundo.
Pgina | 38
5.4 Tipos de Blocos
Os blocos de programao esto subdivididos em 5 reas:
FC [Function];
FB [Function Block];
DB [Data Block];
OB [Organization Block];
Dependendo do tipo de bloco a ser utilizado na aplicao, o programa pode ser dividido nas
seguintes reas:
Figura 38 - Tipos de Programas
Programa Linear: Tem sua estrutura marcada pela ausncia de qualquer bloco. Todo o
programa escrito dentro do OB1, que o bloco principal de programao.
Programa Particionado: Tem sua estrutura fracionada em vrios blocos. Facilita a organizao
e manuteno do programa. Normalmente utilizados com FCs.
Programa Estruturado:Programao estruturada atravs da utilizao de FBs.
(FC)
5.4.1 Functions
Pgina | 39
Os elementos Functions so funes que executam determinadas aes e no possuem
armazenamento de memria. Todos os dados so perdidos aps a funo chegar ao fim da
chamada.
Quando so utilizados blocos do tipo function necessria a utilizao de variveis globais
para o armazenamento de dados.
Figura 39 - Function
Para criao de uma function, seguem-se os passos conforme descrito na figura:
Figura 40 - Criando uma FC
Aps criada a FC, ela ficar armazenada juntamente com o OB1, na pasta Program Block com a
rvore do projeto.
Pgina | 40
Para criar a programao dentro da FC, devemos levar em considerao as variveis de
entradas, sadas e temporrias que constituem a mesma.
Figura 41 - Variveis da FC
Input: So dados de entrada do sistema, como por exemplo: sensores, botes, fins-de-curso e
etc. Geralmente so variveis apenas de leitura do sistema
Output: So as variveis de sada do bloco, como por exemplo: vlvula para acionamento de
um cilindro, contatora para acionamento de um motor e etc. Geralmente so variveis
somente de escrita do sistema, onde pode-se alterar o valor do estado atual do equipamento.
InOut: So variveis onde podem ser feitas leituras e escritas simultaneamente. Geralmente
variveis que possam comunicar com algum sistema de superviso para alterao de setpoints
de um processo.
Temp: So as variveis temporrias da funo. Estas variveis temporrias que auxiliam na
programao dentro da FC. Ao invs de se utilizar de uma memria M (globais) do CLP,
podem-se utilizar as memrias L (locais). Estas variveis estaro disponveis apenas dentro do
bloco que elas foram criadas. Deve-se levar em considerao que ao utilizar memrias Locais,
SEMPRE, deve-se primeiramente escrever um valor nela, para depois poder fazer uma leitura.
Isto justifica o porque de a FC perder os dados aps o trmino do processamento do bloco. As
Fcs, no possuem uma rea para armazenar os dados aps a primeira varredura do software,
ou seja, caso uma leitura seja realizada antes de uma escrita, corre-se o risco de ler um valor
que no seja coerente com o processo.
Pgina | 41
(FB)
O FB possui uma rea de armazenamento de memria. Toda vez que a FB for chamada, dever
ser associada a ela um novo data block (DB). Nesta DB, so salvos todos os tipos de dados do
bloco, como: entradas, sadas, variveis temporrias, locais..
Figura 42 - Function Block
Todos os dados contidos dentro de cada DB, podem ser acessados pela chamada da FB.
5.4.2 Function Block
Pgina | 42
Figura 43 - Inserindo um FB
Aps criada a FB, ela ficar armazenada juntamente com o OB1, na pasta Program Block
juntamente com a rvore do projeto.
Para criar a programao dentro da FB, devemos levar em considerao as variveis de
entradas, sadas e temporrias que constituem a mesma.
Pgina | 43
Figura 44 - Variveis FB
Input: So dados de entrada do sistema, como por exemplo: sensores, botes, fins-de-curso e
etc. Geralmente so variveis apenas de leitura do sistema
Output: So as variveis de sada do bloco, como por exemplo: vlvula para acionamento de
um cilindro, contatora para acionamento de um motor e etc. Geralmente so variveis
somente de escrita do sistema, onde pode-se alterar o valor do estado atual do equipamento.
InOut: So variveis onde podem ser feitas leituras e escritas simultaneamente. Geralmente
variveis que possam comunicar com algum sistema de superviso para alterao de setpoints
de um processo.
Temp: So as variveis temporrias da funo. Estas variveis temporrias que auxiliam na
programao dentro da FB. Ao invs de se utilizar de uma memria M (globais) do CLP,
podem-se utilizar as memrias L (locais). Estas variveis estaro disponveis apenas dentro do
bloco que elas foram criadas. Deve-se levar em considerao que ao utilizar memrias Locais,
SEMPRE, deve-se primeiramente escrever um valor nela, para depois poder fazer uma leitura.
Static: Variveis estticas que so salvas dentro da DB instanciada da FB. Desta maneira, estes
dados so salvos ao final do processamento do bloco, podendo ser utilizados no prximo ciclo
de scan do sistema.
Pgina | 44
Blocos de dados so elementos utilizados na organizao e estruturao do programa. Eles
dividem-se basicamente em duas estruturas. DBs globais e DBs instanciadas.
DBs globais podem ser acessados de qualquer parte do programa. Um exemplo claro de
funcionamento de uma DB global quando ela no est associada a nenhum FB, por
exemplo...uma DB onde estaro todos os dados que sero utilizados na IHM ou supervisrio.
Desta maneira, entende-se que o DB no uma ferramenta de programao, pois
internamente ele no possui lgicas, apenas armazena dados de todos os tipos para serem
acessados posteriormente.
Figura 45 - Acessando dados de uma DB global
DBs instanciadas so aquelas que so 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. So os tipos
elementares e os tipos complexos, aos quais iremos ver a seguir.
5.4.3.1 Tipos Elementares
5.4.3 Bloco de Dados (DB)
Pgina | 45
Dados elementares so utilizados com frequncia em programaes bsicas, pois possuem os
tipos de dados bsicos:
Figura 46 - Dados Elementares
5.4.3.2 Tipos Complexos
Variveis de tipo complexo so utilizados quando o programa desenvolvido exige um nvel de
controle ou estruturao maior, pois em sua maioria so unidos vrios tipos de dados
elementares em uma nica estrutura, de fcil acesso e entendimento.
Pgina | 46
Figura 47 - Dados Complexos
Os blocos de organizao so a interface entre o sistema operacional do CLP e o programa do
usurio, elas podem ser programadas pelo usurio, isto permite controlar a reao da CPU, os
blocos de organizao chamados pelo sistema operacional para os seguintes eventos.
Comportamento de partida Definem como a CPU se porta no momento da
passagem de STOP para RUN.
Processamento de programa cclico Execuo normal do programa.
Execuo de programas dirigidos interrupo Partes do cdigo que
necessitam de processamento interrupto em sua execuo, como exemplo pode-
se citar um calculo PID.
Manipulao de erros Diagnsticos do sistema, monitorao e tratamento de erros.
Todas as OBs tm funes especiais, a prxima imagem descreve a numerao
correspondente a OBs especficas e logo se descreve algumas OBs para tratamento e
diagnsticos de erros.
5.4.4 Blocos de Organizao (OB)
Pgina | 47
Figura 48 - Tipos de OBs
Os blocos de organizao podem ser divididos da seguinte forma:
Pgina | 48
Figura 49 - Blocos de Organizao
5.4.4.1 OB1 Program Cycle
O Program Cycle executado ciclicamente no bloco principal do programa. Todos os blocos
criados (FC,FB) devem ser chamados nele para serem executados.
5.4.4.2 OB10x Startup
O OB de startup executado apenas uma vez quando o modo de operao do CLP passa de STOP para RUN.
Somente aps a execuo deste OB, que o OB Program Cycle ser executado.
5.4.4.3 OB20x Time delay interrupt
Este OB ir interromper o programa ciclico quando um tempo especfico de execuo expirar. Por exemplo,
uma vez por semana, uma vez por ms. Este tempo especificado atravs da entrada de parmetro da
instruo SRT_DINT
Pgina | 49
5.4.4.4 OB3x Cyclic Interrupt
O OB de interrupo ciclica executado em tempos especficos de intervalos. muito utilizado
para executar blocos de controle PID e ele definido na janela de dilogo do OB
5.4.4.5 OB4x Hardware Interrupt
O OB de interrupo de hardware interrompe a execuo do programa cclico quando alguma
anomalia de hardware encontrada, por exemplo, a retirada de algum mdulo da CPU ou
danificao de algum equipamento de hardware.
5.4.4.6 OB80 Time error interrupt
A interrupo de tempo ocorre quando o tempo de ciclo mximo atingido. Este tempo geralmente de
150ms e interrompe imediatamente a execuo do programa cclico.
5.4.4.7 OB82 Diagnostic Interrupt
A interrupo de diagnostic interrompe a execuo do programa cclico quando a opo de
diagnstico habilitada em algum mdulo que tenha essa funo em especfico.
6 Download do Programa
Com o programa finalizado, necessrio fazer o download do mesmo para o equipamento.
Pgina | 50
Figura 50 - Fazendo Download
A tela acima Ir abrir e ento ser necessrio selecionar qual o meio fsico utilizado para
efetuar o download. No caso do kit de desenvolvimento, estar previsto a utilizao do meio
fsico, ethernet, bem como sua referida placa de rede, conforme mostra a tabela destacada na
figura 24.
Caso em um primeiro momento o programa no encontre nenhum CLP na rede, significa que o
IP configurado diferente do IP programado no CLP, desta forma, faz-se necessria a utilizao
da opo Show all accessible devices, para que o programa encontre todos os equipamentos
conectados a ele e assim, ser feita a seleo do CLP e posteriormente o download.
Obs.: Para efetuar o download completo, isto , configurao de hardware + software,
necessrio selecionar na aba do Projeto, o item do CLP_1[CPU 1214C DC/DC/DC], lembrando
que todo download de hardware leva a CPU para stop.
Caso seja necessrio apenas o download do software, necessrio selecionar a pasta Program
Block e prosseguir com o download.
7 Iniciando um Projeto com a IHM
Pgina | 51
Levando em considerao que a programao vai ser feita de forma integrada entre CLP e
IHM, e que os dois equipamentos vo 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:
Figura 51 - Inserindo a IHM
Pgina | 52
Aps o duplo clique em Add new device, a seguinte janela ir aparecer para fazer a seleo do
equipamento desejado:
Figura 52 - Selecionando o Equipamento
O kit didtico utilizado em aula acompanha uma IHM modelo KTP 600 Basic Color PN, desta
forma, devemos localiz-la na rvore acima e em seguida, clicar em OK.
Pgina | 53
7.1 Configurando a IHM
Aps a seleo do equipamento, uma janela assistente para configurao ir aparecer. Nesta
janela esto todas as opes necessrias para a pr-configurao da IHM, onde pode ser feita
a seleo da conexo, pr-criao de alarmes, layout de telas, mapa de navegao e etc...
Figura 53 - Inserindo uma Conexo entre IHM e CLP
Nesta figura, podemos selecionar com qual CLP iremos fazer a conexo, caso nosso projeto
tenha mais de um equipamento.
Com esta IHM, pode-se estabelecer conexo com mais de um CLP tambm, basta inserir uma
nova conexo manualmente aps finalizado o assistente.
Aps selecionada a conexo, clicar em NEXT.
7.1.1 Criando a Conexo com o CLP
Pgina | 54
A prxima tela trata-se da configurao do layout da pgina:
Figura 54 - Configurando o Layout da Pgina
Neste parte da configurao, possvel selecionar um logo para colocar no cabealho da
pgina, bem como opes de esconder/mostrar o relgio, cor de fundo da tela.
7.1.2 Layout de Tela
Pgina | 55
Aps a configurao do layout da pgina, podem ser pr-configuradas algumas telas de
alarmes, como:
Alarmes ativos;
Alarmes reconhecidos;
Alarmes no reconhecidos.
Figura 55 - Pr-configurando Alarmes
Neste caso, no necessrio selecionar as telas de alarmes.
7.1.3 Pr-configurando alarmes:
Pgina | 56
Nesta tela possvel fazer um mapeamento de navegao e telas da IHM. Ao clicar no smbolo
+ da tela, a mesma criar outra tela.
Figura 56 - Navegao de Telas
importante salientar que todas as telas criadas nesta etapa do assistente, automaticamente
j sero criadas no projeto, com o nome dado a tela e tambm botes de navegao entre as
telas.
7.1.4 Mapeamento de Telas
Pgina | 57
A seguinte tela System Screen d a opo de adicionar ao projeto da IHM as telas de sistema,
so elas:
Informaes do projeto: mostra as informaes bsicas, modelo de IHM, verso de
software e etc..
Configurao: Modos de operao, Linguagem...
Administrao de Usurios;
Informaes do sistema.
Figura 57 - Configurao de Telas do Sistema
7.1.5 System Screen
Pgina | 58
A tela a seguir da a opo de configurar tambm o layout da pgina, porm, seu foco so nos
botes de operao. Nela voc poder escolher quais os botes necessrios para a sua
aplicao, so eles:
Home: Volta para a tela principal do projeto;
Language: Seleciona o idimoa da IHM;
Login/Logoff: Faz o login/logoff do operador da IHM;
Power: Troca o modo de operao da IHM.
Figura 58 - Botes pr-configurados
7.1.6 Rodap
Pgina | 59
7.2 Objetos de Tela
Figura 59 - Objetos de Tela
Na janela Basic Objects, temos os seguintes objetos para serem utilizados:
Linha;
Elipse;
Circulo;
Retngulo;
Texto;
Figura;
Estes objetos podem so utilizados principalmente para sinalizao de processo, podendo
trocar de cor, aparecer ou desaparecer, conforme os tags associados a eles.
7.2.1 Basic Objects
Pgina | 60
Na aba elements, podemos ter acesso aos seguintes elementos:
7.2.2.1 Display (I/O Field)
Pode ser utilizado como entrada de dados ou sada de dados, ou ainda entrada/sada ao
mesmo tempo. Muito utilizados para visualizao de valores internos do CLP como
temperatura, nvel, contagem e etc...
7.2.2.2 Boto
Utilizado para executar aes, conforme a necessidade do projeto. Para o correto
funcionamento, deve-se associar uma tag ao boto, que ir executar uma das seguintes
funes;
7.2.2.3 Display Simblico (Symbolic I/O Field)
Este display pode ser utilizado para selcionar textos conforme a necessidade do projeto, por
exemplo: Seleo de Receitas, Seleo de Rotas, Seleo de Modo de Operao;
7.2.2.4 Display Grfico (Graphic I/O Field)
Display Grfico que possibilita a escolha de arquivos de figuras do mesmo modo do item
acima.
7.2.2.5 Display de Data/Hora (DateTime Field)
Mostra um display de data/hora. Pode ser configurado para mostrar apenas a Data ou apenas
a Hora, ou os dois.
7.2.2.6 Bar (Bar)
Este objeto permite mostrar a variao de valores analgicos.
7.2.2.7 Switch (Switch)
Este boto utilizado como boto de seleo, pois ele no apenas um pulso no tag
associado. Ele mantem o valor selecionado. Funcionamento semelhante a um boto com
trava.
7.2.2 Elementos
Pgina | 61
7.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, so elas:
Propriedades;
Animaes;
Eventos.
A aba de propriedades inclui todas as configuraes do boto, como por exemplo;
General: Configurao geral do boto, como texto (label), que aparece ao pressionar
ou soltar o boto, seleo de tecla de atalho (hotkey), e seleo do modelo do boto;
Appearence: Configurao da aparncia do boto. Nesta aba pode-se configurar a cor
de fundo do boto e tambm a cor da letra que aparecer na parte posterior do
mesmo.
Design: Utilizado para configurao do estilo do boto, se 3D ou no;
Layout: Nesta aba configurado o tamanho exato do boto, bem como seu
posicionamento na tela;
Text Format: Formato do texto;
Miscellaneous: Utilizado para configurar o nome do objeto e tambm a camada
associada a ele;
Security: Nesta seo pode-se configurar o nvel de acesso a execuo da ao do
boto:
Pgina | 62
Figura 60 - Propriedades do Boto
Figure 1 - Propriedades do boto
7.4 Animaes
Na aba Animations do objeto da IHM, pode-se configurar tudo em relao a animaes que o
objeto pode ter. Estas animaes, podem ser do tipo:
Visibility: Esconde/Mostra o objeto conforme o estado da tag associada a ele, quando
criada uma conexo tag/animao;
Display: Pode-se configurar tambm para que o objeto mude sua cor, de acordo com a
situao da tag associada, por exemplo: a figura de um motor desligado deve ser
verde, ao ligar o motor, automaticamente, a cor do mesmo, muda para vermelho. Este
tipo de efeito causado pela associao de uma tag booleana na propriedade display
do objeto;
Movement: Pode ser feito com que o objeto mude seu posicionamento de acordo com
a tag associada no projeto. Por exemplo, em determinada situao, o objeto boto
deve estar presente num ponto X,Y da tela. Ao acionar um sensor no campo, o mesmo
boto dever deslocar-se para outro ponto da tela, automaticamente.
Pgina | 63
Figura 61 - Animaes do Objeto Boto
Pgina | 64
7.5 Events
Na aba Events, poderemos executar funes pr-determinadas para que o processo funcione
adequadamente, por exemplo:
Ao clicar num boto, outra tela dever abrir, ou um motor dever acionar e etc...
Figura 62 - Eventos do objeto Boto
Na aba events, podemos selecionar a fonte do evento, conforme mostra a figura 36:
Click: Evento chamado no clique do boto;
Press: Evento chamando quando pressionamento o boto;
Release: Evento chamando quando soltamos o boto;
Activate: Evento chamando quando o objeto ativado;
Deactivate: Evento chamado quando o objeto desativado;
Change: Evento chamando quando o valor do tag associado, muda seu valor;
Pgina | 65
importante lembrar que apenas quando o objeto da tela for um BOTO, utilizaremos os
eventos, pois em objetos de sinalizao
Aps selecionado o evento, devemos incluir uma funo a este evento, como sugere a figura
37.
Figura 63 - Funes dos Eventos
As funes disponveis esto separadas em grupos, como segue:
All system functions: Todas as funes disponveis, sem distino de grupo;
Alarms: Reune todas as funes relacionadas a alarmes;
o Mostrar janela de alarmes;
7.5.1 Funes dos Eventos
Pgina | 66
o Limpar o buffer de alarmes;
Calculations scripts: Utilizada para fazer clculos matemticos quando o evento
chamado;
o Incrementar tag;
o Decrementar tag;
Edit bits: a rea mais utilizada, visto que atravs dele possvel a manipulao de
valores de bits;
o InvertBit: Cada vez que chamado, inverte o valor do bit;
o SetBit: Leva o valor do bit para 1;
o ResetBit: Leva o valor do bit para 0;
Keyboard:
Keyboard operating for screen objects
Other functions:
o Stop runtime: para o servio da IHM e leva para o painel de controle;
Screens: Utilizado para manipulao de telas
o ActivatePreviousScreen: Ativa a tela anterior a atual;
o ActivateScreen: Ativa a tela conforme o nome da mesma;
o ActivateScreenByNumber: Ativa a tela conforme o numero da mesma;
Settings: Manipula as configuraes da IHM;
o ChangeConnection: Muda a conexo da IHM, caso haja alguma outra
configurada. Por exemplo: Conexo Profinet e Conexo Profibus;
System: Configuraes do sistema
o CalibrateTouchScreen: Calibra a tela touchscreen durante o runtime;
Pgina | 67
1 Introduo2 Criando um Projeto3 Configurando o hardware3.1 Configurao Manual de Hardware3.2 Configurao Automtica de Hardware3.3 Configurao do endereo IP3.4 Configurao de endereos lgicos3.5 Configurao de Clock e System Memory
4 Project Tree4.1 Device Configuration4.2 Online & Diagnostics4.3 Program Blocks4.4 Technology Blocks4.5 External Source File4.6 Declarao da Lista de Variveis4.7 PLC Data Types4.8 Watch and Force Tables4.9 Program Info4.10 Local Modules
5 Programao Bsica5.1 Temporizadores5.2 Contadores5.3 Comparadores5.4 Tipos de Blocos5.4.1 Functions5.4.2 Function Block5.4.3 Bloco de Dados (DB)5.4.3.1 Tipos Elementares5.4.3.2 Tipos Complexos
5.4.4 Blocos de Organizao (OB)5.4.4.1 OB1 Program Cycle5.4.4.2 OB10x Startup5.4.4.3 OB20x Time delay interrupt5.4.4.4 OB3x Cyclic Interrupt5.4.4.5 OB4x Hardware Interrupt5.4.4.6 OB80 Time error interrupt5.4.4.7 OB82 Diagnostic Interrupt
6 Download do Programa7 Iniciando um Projeto com a IHM7.1 Configurando a IHM7.1.1 Criando a Conexo com o CLP7.1.2 Layout de Tela7.1.3 Pr-configurando alarmes:7.1.4 Mapeamento de Telas7.1.5 System Screen7.1.6 Rodap
7.2 Objetos de Tela7.2.1 Basic Objects7.2.2 Elementos7.2.2.1 Display (I/O Field)7.2.2.2 Boto7.2.2.3 Display Simblico (Symbolic I/O Field)7.2.2.4 Display Grfico (Graphic I/O Field)7.2.2.5 Display de Data/Hora (DateTime Field)7.2.2.6 Bar (Bar)7.2.2.7 Switch (Switch)
7.3 Propriedades dos objetos7.4 Animaes7.5 Events7.5.1 Funes dos Eventos
top related