Apostila TIA V11 (1).pdf

Embed Size (px)

Citation preview

  • 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