• Nenhum resultado encontrado

Curso de Programação de CLP, IHM e Supervisório Siemens

N/A
N/A
Protected

Academic year: 2021

Share "Curso de Programação de CLP, IHM e Supervisório Siemens"

Copied!
134
0
0

Texto

(1)

Curso de Programação de CLP, IHM e

Curso de Programação de CLP, IHM e Supervisório Siemens

Supervisório Siemens

S7-1200/IHM KTP600/Elipse E3

S7-1200/IHM KTP600/Elipse E3

 jrmautomacaosj

 jrmautomacaosjc@gmail.comc@gmail.com

Página | 1 Página | 1

(2)
(3)

11

Introdução Introdução ...5...5

22

Criando Criando um um Projeto Projeto ...6...6

33

ConfigurandConfigurando o o o hardwhardware are ...9...9 3.

3.11 Configuração Manual de Hardware ...9 Configuração Manual de Hardware ...9 3.2

3.2 Configuração Automática de  Configuração Automática de HardwaHardware ...re ...1...122 3.

3.33 Configuração do endereço IP ...14 Configuração do endereço IP ...14 3.4

3.4 Configuração de endereços lógicos Configuração de endereços lógicos ...14...14 3.5

3.5 Configuração de Clock  Configuração de Clock e System Memory ...e System Memory ...15...15

44

Project Project Tree Tree ...17..17 4.

4.11  Device Configuration ...18  Device Configuration ...18 4.

4.22 Online & Diagnostics ...18 Online & Diagnostics ...18 4.

4.33  Program Blocks ...18  Program Blocks ...18 4.

4.44  Technology Blocks ...18  Technology Blocks ...18 4.

4.55 External Source File ...19 External Source File ...19 4.

4.66 Declaração da Lista de Variáveis ...19 Declaração da Lista de Variáveis ...19 4.

4.77 PLC Data Types ...20 PLC Data Types ...20 4.

4.88 Watch and Force Tables ...20 Watch and Force Tables ...20 4.

4.99  Program Info ...22  Program Info ...22 4.10

4.10  Local Modules ...22  Local Modules ...22

55

PrograProgramação mação Básica...Básica...…...25...…...25 5. 5.11  Temporizadores ...27  Temporizadores ...27 5. 5.22  Contadores ...33  Contadores ...33 5. 5.33  Comparadores ...35  Comparadores ...35 5.

5.44 Tipos de Blocos ...38 Tipos de Blocos ...38 5.4.1

5.4.1  Functions ...38  Functions ...38 5.4.2

5.4.2  Function Block ...41  Function Block ...41

 jrmautomacaosj

(4)
(5)

11

Introdução Introdução ...5...5

22

Criando Criando um um Projeto Projeto ...6...6

33

ConfigurandConfigurando o o o hardwhardware are ...9...9 3.

3.11 Configuração Manual de Hardware ...9 Configuração Manual de Hardware ...9 3.2

3.2 Configuração Automática de  Configuração Automática de HardwaHardware ...re ...1...122 3.

3.33 Configuração do endereço IP ...14 Configuração do endereço IP ...14 3.4

3.4 Configuração de endereços lógicos Configuração de endereços lógicos ...14...14 3.5

3.5 Configuração de Clock  Configuração de Clock e System Memory ...e System Memory ...15...15

44

Project Project Tree Tree ...17..17 4.

4.11  Device Configuration ...18  Device Configuration ...18 4.

4.22 Online & Diagnostics ...18 Online & Diagnostics ...18 4.

4.33  Program Blocks ...18  Program Blocks ...18 4.

4.44  Technology Blocks ...18  Technology Blocks ...18 4.

4.55 External Source File ...19 External Source File ...19 4.

4.66 Declaração da Lista de Variáveis ...19 Declaração da Lista de Variáveis ...19 4.

4.77 PLC Data Types ...20 PLC Data Types ...20 4.

4.88 Watch and Force Tables ...20 Watch and Force Tables ...20 4.

4.99  Program Info ...22  Program Info ...22 4.10

4.10  Local Modules ...22  Local Modules ...22

55

PrograProgramação mação Básica...Básica...…...25...…...25 5. 5.11  Temporizadores ...27  Temporizadores ...27 5. 5.22  Contadores ...33  Contadores ...33 5. 5.33  Comparadores ...35  Comparadores ...35 5.

5.44 Tipos de Blocos ...38 Tipos de Blocos ...38 5.4.1

5.4.1  Functions ...38  Functions ...38 5.4.2

5.4.2  Function Block ...41  Function Block ...41

 jrmautomacaosj

(6)
(7)

5.4.3

5.4.3 Bloco de Dados (DB) ...44 Bloco de Dados (DB) ...44 5.4.3.1

5.4.3.1  Tipos Elementares ...44  Tipos Elementares ...44 5.4.3.2

5.4.3.2  Tipos Complexos ...45  Tipos Complexos ...45 5.4.4

5.4.4 Blocos de Organização (OB) ...46 Blocos de Organização (OB) ...46 5.4.4.1

5.4.4.1 OB1 – Program Cycle ...48 OB1 – Program Cycle ...48 5.4.4.2

5.4.4.2 OB10x – Startup ...48 OB10x – Startup ...48 5.4.4.3

5.4.4.3 OB20x – Time delay interrupt ...48 OB20x – Time delay interrupt ...48 5.4.4.4

5.4.4.4 OB3x – Cyclic Interrupt ...49 OB3x – Cyclic Interrupt ...49 5.4.4.5

5.4.4.5 OB4x – Hardware Interrupt ...49 OB4x – Hardware Interrupt ...49 5.4.4.6

5.4.4.6 OB80 – Time error interrupt ...49 OB80 – Time error interrupt ...49 5.4.4.7

5.4.4.7 OB82 – Diagnostic Interrupt ...49 OB82 – Diagnostic Interrupt ...49

66

DownloDownload ad do do PrograPrograma ma ...49...49

77

Iniciando um Projeto Iniciando um Projeto com a com a IHM ...IHM ...50.50 7.

7.11 Configurando a IHM...53 Configurando a IHM...53 7.1.1

7.1.1 Criando a Conexão com o CLP ...53 Criando a Conexão com o CLP ...53 7.1.2

7.1.2  Layout de Tela...54  Layout de Tela...54 7.1.3

7.1.3 Pré-configurando alarmes: ...55 Pré-configurando alarmes: ...55 7.1.4

7.1.4 Mapeamento de Telas ...56 Mapeamento de Telas ...56 7.1.5

7.1.5  System Screen...57  System Screen...57 7.1.6

7.1.6  Rodapé ...58  Rodapé ...58 7.

7.22  Objetos de Tela...59  Objetos de Tela...59 7.2.1

7.2.1  Basic Objects ...59  Basic Objects ...59 7.2.2

7.2.2  Elementos ...60  Elementos ...60 7.2.2.1

7.2.2.1 Display (I/O Field) ...60 Display (I/O Field) ...60 7.2.2.2

7.2.2.2  Botão ...60  Botão ...60 7.2.2.3

7.2.2.3 Display Simbólico (Symbolic I/O Field) ... 60 Display Simbólico (Symbolic I/O Field) ... 60

 jrmautomacaosj

(8)
(9)

7.2.2.4 Display Gráfico (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  Animações ...62

7.5  Events...64

7.5.1 Funções dos Eventos ... 65

(10)
(11)

1 Introdução

 A presente apostila tem como objetivo auxiliar os alunos do curso de

programação avançada de CLP, IHM e Supervisórios na criação de um projeto novo utilizando o software TIA V11, destinado a programação de Controladores

Lógicos Programáveis da linha S7-1200 da Siemens.

Neste documento também estão descritos procedimentos para utilização de temporizadores, contadores, entradas e saídas analógicas, criação de FC, FB e

DB, programação estruturada, programação em SCL, STL, bem como utilização do controle PID próprio do CLP.

Levando em consideração a arquitetura e a filosofia TIA (Totally Integrated  Automation), neste software é possível a programação de toda a linha de

CLP’s, IHM e Supervisório da Siemens.

 A versão utilizada no SENAI é a TIA Basic, liberando apenas a programação da linha S71200 e IHM KTP, porém, nas versões Professional e Advanced, estão liberadas todas as famílias de CLP’s (S7-1200, S7-300, S7-400, ET200s CPU)

e também toda a linha de IHM’s (KTP, TP, MP, Comfort Panel).

Utilizando este princípio, nesta apostila também estará disponível um tutorial de criação de projeto utilizando a IHM KTP600, disponíveis nos KIT didáticos da

Unoesc.

O software de supervisão que será utilizado em sala de aula é o Elipse E3, da marca Elipse de Porto Alegre – RS. Este supervisório é um dos líderes atuais

do mercado de sistemas de supervisão, tendo uma ampla plataforma de desenvolvimento, aliando simplicidade e funcionalidade ao seu sistema.

 jrmautomacaosjc@gmail.com

(12)
(13)

2 Criando um Projeto

Na área de trabalho, de um duplo clique no ícone TIA Portal V11.  A seguinte tela abrirá

(14)
(15)

 Após aberto o

 Após aberto o softwaresoftware, a seguinte tela ir, a seguinte tela irá aparecer.á aparecer.

Figura 2 - Tela de Criação do Projeto

Figura 2 - Tela de Criação do Projeto

Nesta tela, podem ser feitos os seguintes comandos: Nesta tela, podem ser feitos os seguintes comandos:

● Open existing project: Dá a possibilidade de abrir um projeto existente. ● Open existing project: Dá a possibilidade de abrir um projeto existente. ● Create new project: Cria um novo projeto.

● Create new project: Cria um novo projeto.

● Migrate project: Migra um software iniciado no Simatic Manager V5.x para o ● Migrate project: Migra um software iniciado no Simatic Manager V5.x para o TIA V11

TIA V11

 jrmautomacaosj

 jrmautomacaosjc@gmail.comc@gmail.com

Página | 7 Página | 7

(16)
(17)

 Ao clicar em crea

 Ao clicar em create new projete new project, será possívct, será possível nomear o pel nomear o projeto, berojeto, bem comom como alterar seu destino de gravação, caso necessite gravá-lo em pen-drive, por alterar seu destino de gravação, caso necessite gravá-lo em pen-drive, por exemplo.

exemplo.

Figura 3 - Iniciando o Projeto

Figura 3 - Iniciando o Projeto

 jrmautomacaosj

(18)
(19)

3 Configurando o hardware

3 Configurando o hardware

3.1

3.1 Configuração Manual de HardwareConfiguração Manual de Hardware  Após nomear e

 Após nomear e selecionar o caselecionar o caminho de deminho de destino, clique estino, clique emm create.

create.

O projeto será criado e você poderá iniciar os trabalhos, conforme mostra a O projeto será criado e você poderá iniciar os trabalhos, conforme mostra a figura 4

figura 4..

Figura 4 - Configurando o Hardware

Figura 4 - Configurando o Hardware

Criado o projeto, devemos iniciar a configuração de Hardware do sistema. De Criado o projeto, devemos iniciar a configuração de Hardware do sistema. De um clique no botão destacada em vermelho na

um clique no botão destacada em vermelho na figura 4figura 4. Esta configuração é. Esta configuração é indispensável para o correto funcionamento do CLP. É dever do aluno

indispensável para o correto funcionamento do CLP. É dever do aluno configurar no software quais são os equipamentos utilizados no kit. configurar no software quais são os equipamentos utilizados no kit.

 jrmautomacaosj

(20)
(21)

 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.

Figura 5 - Inserindo a CPU

 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:

● CPU 1214C DC/DC/DC: código 6ES7 214-1AE30-0XB0.

(22)
(23)

É 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:

● CM1241 (RS485) - 6ES7 241-1CH30-0XB0

● CM1243-5 (PROFIBUS DP) – 6GK7 243 – 5DX30 – 0XE0

Deve-se seguir a sequência de montagem como mostra a figura 6.

Figura 6 - Configurando o Hardware

Com um duplo clique sob os módulos de comunicação, automaticamente eles são inseridos no rack, conforme figura a cima.

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  jrmautomacaosjc@gmail.com

(24)
(25)

3.2 Configuração Automática de Hardware

Outra maneira de fazer a configuração do hardware, é fazendo-o de forma automática. Apenas os equipamentos que suportem porta Profinet integrada possuem esta característica.

Para fazer-se esta configuração, ao invés de adicionar o modelo já CPU, insere-se um modelo “sem especificação”, e logo após, dá-se um comando para que o TIA detecte a configuração completa do hardware, importando os modelos de módulos e cartões de expansão conectados a CPU, bem como suas respectivas versões de firmware.

Figura 7 - Inserindo uma CPU genérico

 Após inserir a CPU genérica, a seguinte tela abrirá. (Figura 8).  jrmautomacaosjc@gmail.com

(26)
(27)

Figura 8 – Auto - detectando o hardware

Clicando em detect, o software estabelecerá uma conexão com o CLP lendo todas as configurações do hardware conectado ao computador.

Figura 9 - Hardware detectado

Feito isto, o software estará configurado e pronto para iniciar a programação.  jrmautomacaosjc@gmail.com

(28)
(29)

3.3 Configuração do endereço IP

 Após a inserção dos módulos de comunicação, o próximo passo é a

configuração do endereço IP do CLP. Para tal comunicação, basta um duplo clique na porta RJ45 junto da CPU.

Figura 10 - Configurando o Endereço IP

Caso não seja selecionado automaticamente o campo ethernet address, na tela de propriedades, deve-se selecionar o campo e configurar o endereço IP,

conforme figura 7.

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.

3.4 Configuração de endereços lógicos

 Após a correta configuração do hardware é interessante verificar os endereços lógicos fornecidos pelo software as entradas e saídas do sistema. Estes

endereços são de suma importância para o correto desenvolvimento do software. Conforme mostra a figura 9, podemos modificar todos os

endereçamentos tanto da CPU como de módulos de expansão:  jrmautomacaosjc@gmail.com

(30)
(31)

Figura 11 - Endereçamentos Lógicos

Todos os endereços em destaque na figura 11, podem ser modificados através do software, basta a modificação na referida janela:

device overview.

 A medida em que são inseridos os módulos, automaticamente o software atribui endereços a eles, deve-se verificar quais são estes endereços para fazer a correta utilização no desenvolvimento do programa.

3.5 Configuração de Clock e System Memory

Esta configuração é muito utilizada para auxiliar o programador durante o

desenvolvimento do software, uma vez que podem-se configurar memórias de sistema para aplicações específicas como:

● Memória sempre em UM; ● Memória sempre em ZERO;

● Memória de ciclo de inicialização; ● Mudança do status do diagnóstico;

(32)
(33)

Para isto é necessário 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 propriedade.

Figura 12 - Configuração de Memória de Clock e de Sistema

(34)
(35)

4 Project Tree

Na tela à esquerda do monitor, denominada

Project Tree, estão todas as informações necessárias para o desenvolvimento da aplicação.

Figura 13 - Project Tree

 As principais pastas para o desenvolvimento do programa são:

● PLC tags: Responsável pela declaração da lista de IO’s do sistema; ● Program blocks: Nesta pasta está o bloco de programação principal para o início do programa, denominado Main [OB1]

 jrmautomacaosjc@gmail.com

(36)
(37)

4.1 Device Configuration

Responsável pela configuração do equipamento. Com um duplo clique nele, você poderá modificar a configuração de hardware atual, inserindo ou

removendo objetos. Também é possível a criação/modificação de configurações de rede.

4.2 Online & Diagnostics

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

4.3 Program Blocks

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.

4.4 Technology Blocks

Blocos tecnológicos são blocos de funções prontos e disponibilizados

pela Siemens, como blocos de controle PID, blocos de controle de movimento (motion) para utilização com inversores de frequência e servos-motores.

(38)
(39)

Figura 14 - Technology Blocks 4.5 External Source File

 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.

4.6 Declaração da Lista de Variáveis

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.

 jrmautomacaosjc@gmail.com

(40)
(41)

Figura 15 - Declaração de Variáveis

Para a declaração de variáveis somente é necessária a escrita do nome do símbolo que será utilizado, ao pressionar a tecla ENTER, automaticamente as outras colunas serão preenchidas, inclusive a coluna de endereçamento. Por padrão, esta coluna inicia sempre no endereço%I0.0. Caso seja necessário mudar a área de endereçamento, o mesmo deve ser feito à mão.

4.7 PLC Data Types

Nesta seção é possível criar um tipo de dado conforme a necessidade do

usuário. Ao invés de se trabalhar com variáveis do tipo bool, byte, word, double word, pode-se criar uma própria estrutura de dados, acessando-a através de uma DB e utilizando seus dados internos. Mais detalhes serão vistos no

capitulo 6.1.5 de programação avançada. 4.8 Watch and Force Tables

Neste local é possível criar tabelas para monitorar e forçar variáveis do sistema. 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

(42)
(43)

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.

Figura 17 - Force table  jrmautomacaosjc@gmail.com

(44)
(45)

 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.

4.9 Program Info

Mostra as principais informações a respeito do programa que está sendo desenvolvido, como:

Utilização de memória de dados e de trabalho; Número de FC’s, FB’s, DB’s e OB’s utilizados Memória disponível;

Figura 18 - Program Info 4.10 Local Modules

Dá acesso ao módulos periféricos a CPU, como por exemplo, remotas profibus, cartões de rede...

(46)
(47)

Figura 19 - Local Modules

 A figura 19 se reflete na seguinte arvore de projeto de local modules.

(48)
(49)

Figura 20 - Local Modules na Arvore do Projeto

(50)
(51)

5 Programação Básica

Neste tópico será dada ênfase na utilização de temporizadores, contadores e comparadores de entradas analógicas. Operação simples, porém de grande importância durante a programação de CLP’s. Para o início da programação, deve-se levar em consideração a tabela destacada na figura 10.

Figura 21 - Elementos de Programação

Nesta barra de ferramentas é possível inserir as principais instruções para o desenvolvimento do programa.

 jrmautomacaosjc@gmail.com

(52)
(53)

Da esquerda para a direita, na tabela destacada, a ordem de elementos é: ● Contato NA;

● Contato NF;

● Bobina Simples;

● Bloco Genérico (utilizados para chamar temporizadores e contadores); ● 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.

(54)
(55)

5.1 Temporizadores

Existem basicamente três tipos de temporizadores utilizados no TIA V11, são eles:

● TON: Temporizador com retardo na energização;

Figura 22 - Gráfico TON

(56)
(57)

● TOF: Temporizador com retardo na desenrgização

Figura 23 - Gráfico TOF ● TP: Temporizador de pulso;

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.

(58)
(59)

Figura 25 - Inserindo um TON

(60)
(61)

 Ao inserir o temporizador, abrirá uma janela conforme a figura abaixo:

Figura 26 - Nomeando o TON

Nesta janela, é necessário inserir um nome para o temporizador.

IMPORTANTE: NÃO DEVEM SER UTILIZADOS CARACTERES ESPECIAIS E ESPAÇOS NO NOMEDO TEMPORIZADOR.

(62)
(63)

Inserido o temporizador o mesmo possui duas entradas e duas saídas: ● IN: Quando habilitada, inicia a contagem do tempo;

● PT: Preset do tempo a ser contado. Sua sintaxe deve ser T#xxs; ● Q: Saída do temporizador que é ativada quando a contagem chega ao preset;

● ET: Tempo decorrido da contagem. Geralmente utilizado para mostrar em IHM.

Figura 27 - Utilização do TON

(64)
(65)

 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 saída Q é ativada

Figura 29 - Tempo Atingido  jrmautomacaosjc@gmail.com

(66)
(67)

5.2 Contadores

O contador é dividido em três 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 consideração a observação do temporizador: NÃOUTILIZAR CARACTERES ESPECIAIS NEM ESPAÇO.

Figura 30 - Nomeando o Contado

(68)
(69)

 Ao inserir o contador, o mesmo possui três entradas e duas saídas, 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 saída Q;

● Q: Saída ativada quando a contagem chega no número pré-determinado; ● CV: Contagem decorrida até o momento. Normalmente utilizada para IHM

Figura 31 - Utilizando o Contador 

 A opção demonstrada acima é a mais prática para se obter os blocos desejados, porém existem outros meios de chama-los na network

deprogramação. A outra maneira mais utilizada é através da barra lateral direita chamada Instructions:

 As pastas mais utilizadas são as destacadas em vermelho na figura ao lado: ● Bit logic operation : Possui as operações binárias a seremutilizadas (contato NA, NF, bobina …);

● Timer operations: Possui todos os temporizadores disponíveis para utilização no software;

(70)
(71)

●Counter operations: Contém os contadores disponíveis para utilização no software;

●Comparator operations: Operações de comparações do tipo maior, menor, maior/igual, menor/igual, igual, diferente e etc...

●Math Functions: Operações matemáticas disponíveis de soma, subtração, divisão, multiplicação e etc...

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: Os comparadores estão divididos da seguinte maneira:

●Igual:

Figura 32 - Comparador Igual

Figura 33 - Comparador Diferente  jrmautomacaosjc@gmail.com

(72)
(73)

● Maior:

Figura 34 - Comparador Maior ● Menor:

Figura 35 - Comparador Menor  ● Maior Igual:

Figura 36 - Comparador Maior Igual  jrmautomacaosjc@gmail.com

(74)
(75)

● Menor Igual:

Figura 37 - Comparador 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.A ordem de processamento da comparação é dada pelo elemento acima do contato com o elemento abaixo do mesmo, logo,

comparamos o primeiro com o segundo.

(76)
(77)

5.4 Tipos de Blocos

Os blocos de programação estão subdivididos em 5 áreas: ● FC [Function];

● FB [Function Block]; ● DB [Data Block];

● OB [Organization Block];

Dependendo do tipo de bloco a ser utilizado na aplicação, o programa pode ser dividido nas seguintes áreas:

Figura 38 - 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.

Programa Particionado: Tem sua estrutura fracionada em vários blocos. Facilita a organização e manutenção do programa. Normalmente utilizados com FC’s.

Programa Estruturado: Programação estruturada através da utilização de FB’s.

(78)
(79)

5.4.1 Functions (FC)

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. Quando são utilizados blocos do tipo

Function é necessária a utilização de variáveis globais para o armazenamento de dados.

Figura 39 – Function

Para criação de uma function, seguem-se os passos conforme descrito na figura:

Figura 40 - Criando uma FC

 Após criada a FC, ela ficará armazenada juntamente com o OB1, na pasta Program Block com a árvore do projeto.

(80)
(81)

Para criar a programação dentro da FC, devemos levar em consideração as variáveis de entradas, saídas e temporárias que constituem a mesma.

Figura 41 - 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 deum 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 set point’s de um processo.

Temp: São as variáveis temporárias da função. Estas variáveis temporárias que auxiliam na programação dentro da FC. Ao invés de se utilizar de uma memória M (globais) do CLP, podem-se utilizar as memórias L (locais). Estas variáveis estarão disponíveis apenas dentro do bloco que elas foram criadas. Deve-se levar em consideração que ao utilizar memórias 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 após o término do

processamento do bloco. AsFc’s, não possuem uma área para armazenar os dados após 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 não seja coerente com o processo.

(82)
(83)

5.4.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..

Figura 42 - Function Block

Todos os dados contidos dentro de cada DB, podem ser acessados pela chamada da FB.

 jrmautomacaosjc@gmail.com

(84)
(85)

Figura 43 - Inserindo um FB

 Após criada a FB, ela ficará armazenada juntamente com o OB1, na pasta Program Block juntamente com a árvore do projeto. Para criar a programação dentro da FB, devemos levar em consideração as variáveis de entradas, saídas e temporárias que constituem a mesma.

(86)
(87)

Figura 44 - 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 deum 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 set point’s de um processo.

Temp: São as variáveis temporárias da função. Estas variáveis temporárias que auxiliam na programação dentro da FB. Ao invés de se utilizar de uma memória M (globais) do CLP, podem-se utilizar as memórias L (locais). Estas variáveis estarão disponíveis apenas dentro do bloco que elas foram criadas. Deve-se levar em consideração que ao utilizar memórias Locais, SEMPRE, deve-se primeiramente escrever um valor nela, para depois poder fazer uma leitura.

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.

(88)
(89)

5.4.3 Bloco de Dados (DB)

Blocos de dados são elementos utilizados na organização e estruturação do programa. Eles dividem-se basicamente em duas estruturas. DB’s globais e DB’s instanciadas.

DB’s globais podem ser acessados de qualquer parte do programa. Um exemplo claro de funcionamento de uma DB global é quando ela não está

associada a nenhum FB, por exemplo...uma DB onde estarão todos os dados que serão utilizados na IHM ou supervisório.

Desta maneira, entende-se que o DB não é uma ferramenta de programação, pois internamente ele não possui lógicas, apenas armazena dados de todos os tipos para serem acessados posteriormente

Figura 45 - Acessando dados de uma DB global

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

(90)
(91)

5.4.3.1 Tipos Elementares

Dados elementares são utilizados com frequência em programações básicas, pois possuem os tipos de dados básicos:

Figura 46 - Dados Elementares 5.4.3.2 Tipos Complexos

Variáveis de tipo complexo são utilizados quando o programa desenvolvido exige um nível de controle ou estruturação maior, pois em sua maioria são unidos vários tipos de dados elementares em uma única estrutura, de

fácil acesso e entendimento.

(92)
(93)

Figura 47 - Dados Complexos 5.4.4 Blocos de Organização (OB)

Os blocos de organização são a interface entre o sistema operacional do CLP e o programa do usuário, elas podem ser programadas pelo usuário, isto permite controlar a reação da CPU, os blocos de organização 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 cíclico – Execução normal do programa. ● Execução de programas dirigidos à interrupção – Partes do código que necessitam de processamento interrupto em sua execução,

como exemplo pode-se citar um cálculo PID.

● Manipulação de erros – Diagnósticos do sistema, monitoração e tratamento de erros.

Todas as OB’s têm funções especiais, a próxima imagem descreve a

numeração correspondente a OB’s específicas e logo se descreve algumas OB’s para tratamento e diagnósticos de erros.

(94)
(95)

Figura 48 - Tipos de OBs

Os blocos de organização podem ser divididos da seguinte forma:

(96)
(97)

Figura 49 - Blocos de Organização 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 operação do CLP passa de STOP para RUN. Somente após a execução 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 específico de

execução expirar. Por exemplo, uma vez por semana, uma vez por mês. Este tempo é especificado através da entrada de parâmetro da instrução “SRT_DINT”

(98)
(99)

5.4.4.4 OB3x – Cyclic Interrupt

O OB de interrupção ciclica é executado em tempos específicos de intervalos. É muito utilizado para executar blocos de controle PID e ele é definido na

 janela de diálogo do OB

5.4.4.5 OB4x – Hardware Interrupt

O OB de interrupção de hardware interrompe a execução do programa cíclico quando alguma anomalia de hardware é encontrada, por exemplo, a retirada de algum módulo da CPU ou danificação de algum equipamento de hardware.

5.4.4.6 OB80 – Time error interrupt

 A interrupção de tempo ocorre quando o tempo de ciclo máximo é atingido. Este tempo geralmente é de150ms e interrompe imediatamente a execução do programa cíclico.

5.4.4.7 OB82 – Diagnostic Interrupt

 A interrupção de diagnostic interrompe a execução do programa cíclico quando a opção de diagnóstico é habilitada em algum módulo que tenha essa função em específico.

6 Download do Programa

Com o programa finalizado, é necessário fazer o download do mesmo para o equipamento.

 jrmautomacaosjc@gmail.com

(100)
(101)

Figura 50 - Fazendo Download

 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 oIP 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

.

Obs.: Para efetuar o download completo, isto é, configuração de hardware + software, é necessário 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 necessário apenas o download do software, é necessário selecionar a pasta Program Block e prosseguir com o download

.

(102)
(103)

7 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:

Figura 51 - Inserindo a IHM

(104)
(105)

 Após o duplo clique em Add new device, a seguinte janela irá aparecer para fazer a seleção do equipamento desejado:

Figura 52 - Selecionando o Equipamento

O kit didático 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.

 jrmautomacaosjc@gmail.com

(106)
(107)

7.1 Configurando a IHM

7.1.1 Criando a Conexão com o CLP

 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....

Figura 53 - Inserindo uma Conexão entre IHM e CLP

Nesta figura, podemos selecionar com qual CLP iremos fazer a conexão, caso nosso projeto tenha mais de um equipamento.Com está 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. Após selecionada a

conexão, clicar em NEXT.

(108)
(109)

7.1.2 Layout de Tela

 A próxima tela trata-se da configuração do layout da página:

Figura 54 - Configurando o Layout da Página

Neste parte da configuração, é possível selecionar um logo para colocar no cabeçalho da página, bem como opções de esconder/mostrar o relógio, cor de fundo da tela.

(110)
(111)

7.1.3 Pré-configurando alarmes:

 Após a configuração do layout da página, podem ser pré-configuradas algumas telas de alarmes, como:

● Alarmes ativos;

● Alarmes reconhecidos;

● Alarmes não reconhecidos.

Figura 55 - Pré-configurando Alarmes Neste caso, não é necessário selecionar as telas de alarmes.

 jrmautomacaosjc@gmail.com

(112)
(113)

7.1.4 Mapeamento de Telas

Nesta tela é possível fazer um mapeamento de navegação e telas da IHM. Ao clicar no símbolo “+” da tela, a mesma criará outra tela.

Figura 56 - Navegação de Telas

Nesta tela é possível fazer um mapeamento de navegação e telas da IHM. Ao clicar no símbolo “+” da tela, a mesma criará outra tela.

(114)
(115)

7.1.5 System Screen

 A seguinte tela “System Screen” dá a opção de adicionar ao projeto da IHM as telas de sistema, são elas:

● Informações do projeto: mostra as informações básicas, modelo de IHM, versão de software e etc..

● Configuração: Modos de operação, Linguagem... ● Administração de Usuários;

● Informações do sistema.

Figura 57 - Configuração de Telas do Sistema

(116)
(117)

7.1.6 Rodapé

 A tela a seguir dá 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:

● Home: Volta para a tela principal do projeto; ● Language: Seleciona o idioma a da IHM;

● Login / Logoff: Faz o login/logoff do operador da IHM; ● Power: Troca o modo de operação da IHM.

Figura 58 - Botões pré-configurados

 jrmautomacaosjc@gmail.com

(118)
(119)

7.2 Objetos de Tela

Figura 59 - Objetos de Tela 7.2.1 Basic Objects

Na janela Basic Objects, temos os seguintes objetos para serem utilizados: ● Linha; ● Elipse; ● Circulo; ● Retângulo; ● Texto; ● Figura;

Estes objetos podem são utilizados principalmente para sinalização de processo, podendo trocar de cor, aparecer ou desaparecer, conforme os tags associados a eles.

 jrmautomacaosjc@gmail.com

(120)
(121)

7.2.2 Elementos

Na aba elements, podemos ter acesso aos seguintes elementos: 7.2.2.1Display (I/O Field)

Pode ser utilizado como entrada de dados ou saída de dados, ou ainda

entrada/saída ao mesmo tempo. Muito utilizados para visualização de valores internos do CLP como temperatura, nível, contagem e etc...

7.2.2.2 Botão

Utilizado para executar ações, conforme a necessidade do projeto. Para o correto funcionamento, deve-se associar uma tag ao botão, que irá executar uma das seguintes funções;

7.2.2.3Display Simbólico (Symbolic I/O Field)

Este display pode ser utilizado para selecionar textos conforme a necessidade do projeto, por exemplo: Seleção de Receitas, Seleção de Rotas, Seleção de Modo de Operação;

7.2.2.4 Display Gráfico (Graphic I/O Field)

Display Gráfico 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 variação de valores analógicos. 7.2.2.7 Switch (Switch)

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.

(122)
(123)

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, são elas:

● Propriedades; ● Animações; ● Eventos.

 A aba de propriedades incluem todas as configurações do botão, como por exemplo;

● General: Configuração geral do botão, como texto (label), que aparece ao pressionar ou soltar o botão, seleção de tecla de atalho (hotkey), e seleção do modelo do botão;

● Appearence: Configuração da aparência do botão. Nesta aba pode-se

configurar a cor de fundo do botão e também a cor da letra que aparecerá na parte posterior do mesmo.

● Design: Utilizado para configuração do estilo do botão, se é 3D ou não;

● Layout: Nesta aba é configurado o tamanho exato do botão, bem como seu posicionamento na tela;

● Text Format : Formato do texto;

● Miscellaneous: Utilizado para configurar o nome do objeto e também a camada associada a ele;

● Security: Nesta seção pode-se configurar o nível de acesso a execução da ação do botão:

 jrmautomacaosjc@gmail.com

(124)
(125)

Figura 60 - Propriedades do Botão Figure 1 - Propriedades do botão 7.4 Animações

Na aba Animations do objeto da IHM, pode-se configurar tudo em relação a animações que o objeto pode ter. Estas animações, podem ser do tipo:

● Visibility: Esconde/Mostra o objeto conforme o estado da tag associada a ele, quando é criada uma conexão tag /animação;

● Display: Pode-se configurar também para que o objeto mude sua cor, de acordo com a situação 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 associação de uma tag booleana na propriedade display do objeto;

● Movement: Pode ser feito com que o objeto mude seu posicionamento de acordo coma tag associada no projeto. Por exemplo, em determinada situação, o objeto botão deve estar presente num ponto X,Y da tela. Ao acionar um

sensor no campo, o mesmo botão deverá deslocar-se para outro ponto da tela, automaticamente.

(126)
(127)

Figura 61 - Animações do Objeto Botão

(128)
(129)

7.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....

Figura 62 - Eventos do objeto Botão

Na aba events, podemos selecionar a fonte do evento, conforme mostra a figura 36:

● Click: Evento chamado no clique do botão;

● Press: Evento chamando quando pressionamento o botão; ● Release: Evento chamando quando soltamos o botão;

● 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;

 jrmautomacaosjc@gmail.com

(130)
(131)

É importante lembrar que apenas quando o objeto da tela for um BOTÃO, utilizaremos os eventos, pois em objetos de sinalização.

7.5.1 Funções dos Eventos

 Após selecionado o evento, devemos incluir uma função a este evento, como sugere a figura 37.

Figura 63 - Funções dos Eventos

 As funções disponíveis estão separadas em grupos, como segue:

● All system functions: Todas as funções disponíveis, sem distinção de grupo; ● Alarms: Reune todas as funções relacionadas a alarmes;

O Mostrar janela de alarmes;

 jrmautomacaosjc@gmail.com

(132)
(133)

o Limpar o buffer de alarmes;

● Calculations scripts: Utilizada para fazer cálculos matemáticos quando o evento é chamado;

o Incrementar tag; o Decrementar tag;

● Edit bits: É a área mais utilizada, visto que através dele é possível a manipulação de valores de bits;

o Invert Bit: Cada vez que é chamado, inverte o valor do bit; o Set Bit: Leva o valor do bit para 1;

o Reset Bit: Leva o valor do bit para 0; ● Keyboard:

● Keyboard operating for screen objects ● Other functions:

o Stop runtime: para o serviço da IHM e leva para o painel de controle; ● Screens: Utilizado para manipulação de telas

o Activate Previous Screen: Ativa a tela anterior a atual;

o Activate Screen: Ativa a tela conforme o nome da mesma;

o Activate Screen By Number: Ativa a tela conforme o número da mesma; ● Settings: Manipula as configurações da IHM;

o Change Connection: Muda a conexão da IHM, caso haja alguma outra configurada. Por exemplo: Conexão Profinet e Conexão Profibus;

● System: Configurações do sistema

o CalibrateTouchScreen: Calibra a tela touchscreen durante o runtime;

(134)

Referências

Documentos relacionados

A Lista de Fauna Ameaçada de Extinção e os Entraves para a Inclusão de Espécies – o Exemplo dos Peixes Troglóbios Brasileiros.. The List of Endangered Fauna and Impediments

Este trabalho buscou, através de pesquisa de campo, estudar o efeito de diferentes alternativas de adubações de cobertura, quanto ao tipo de adubo e época de

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

O trabalho com crianças da creche por ser de acolhimento a primeira etapa da educação básica, demanda objetividade de avaliação deste momento de entrada no

Os roedores (Rattus norvergicus, Rattus rattus e Mus musculus) são os principais responsáveis pela contaminação do ambiente por leptospiras, pois são portadores

• The definition of the concept of the project’s area of indirect influence should consider the area affected by changes in economic, social and environmental dynamics induced

Ocorre que, passados quase sete anos da publicação da Lei n o  12.651/2012 e pacificadas as discussões sobre a sua aplicação, emendas a uma medida provisória em tramitação

• Quando o navegador não tem suporte ao Javascript, para que conteúdo não seja exibido na forma textual, o script deve vir entre as tags de comentário do HTML. <script Language