Vous êtes sur la page 1sur 178

Escola SENAI Prof. Dr.

Euryclides de Jesus Zerbini Campinas - SP

Controladores Lgicos Programveis Mdulo avanado

Programao Avanada CLP Siemens S7-300

Sumrio Item Controladores programveis Siemens Mdulos do CLP S7-300 Instalao e configurao Caractersticas funcionais O Gerenciador Simatic Configurando e parametrizando Conjunto de instrues avanadas do Step7 Instrues de lgica de bit 1) Set / Reset de flip-flop 2) Reset / Set de flip-flop Instrues de temporizao 1) Extended pulse S5 timer (S_PEXT) 2) Retentive on-delay timer (S_ODT) Instrues matemticas com nmeros inteiros Formato de dados do tipo inteiro 1) Add integer (ADD_I) 2) Subtract integer (SUB_I) 3) Multiply integer (MUL_I) 4) Divide integer (DIV_I) Instrues matemticas com nmeros em ponto flutuante (reais) 1) Add floating-point numbers (ADD_R) 2) Subtract floating-point numbers (SUB_R) 3) Multiply floating-point numbers (MUL_R) 4) Divide floating-point numbers (DIV_R) 5) Valor absoluto de um nmero real (ABS_R) 6) Raiz quadrada de um nmero real (SQRT_R) 7) Logaritmo natural de um nmero real (LN_R) Instrues de comparao com nmeros inteiros Instrues de converso de dados 1) Converso I_BDC 2) Converso BCD_I 3) Converso DI_BCD 4) Converso BCD_DI 5) Converso I_DI 6) Complemento de 1 de um nmero inteiro (INV_I) 7) Complemento de 1 de um nmero duplo inteiro (INV_DI) SENAI 21 23 30 31 33 37 41 42 44 45 46 48 52 54 56 58 61 63 64 70 74 75 75 77 77 78 80 80 2 Pgina 04 05 06 07 09 12

Programao Avanada CLP Siemens S7-300 8) Complemento de 2 de um nmero inteiro (NEG_I) 9) Complemento de 2 de um nmero duplo inteiro (NEG_DI) Instrues de deslocamento e rotao de dados 1) Deslocamento de um nmero inteiro direita (SHR_I) 2) Deslocamento de nmero duplo inteiro direita (SHR_DI) 3) Rotao de palavra dupla direita (ROR_DW) 4) Rotao de palavra dupla esquerda (ROL_DW) Instrues de salto 1) Jump incondicional Instrues para controle de programas 1) Funo Master Control Relay (MCR) A) Master Control Relay Activate (MCRA) B) Master Control Relay ON (MCR<) C) Master Control Relay OFF (MCR>) D) Master Control Relay Deactivate (MCRD) 2) Chamada de funes (FC) Criando blocos de dados (DB) Criando um programa com blocos de funes (FBs) e blocos de dados (DBS) Instrues para converso A/D e D/A O mdulo analgico SM334 Instrues de converso Controle PID no CLP Siemens Simatic S7-315 2DP Proporcional Derivada Integral O Controle PID no CLP Procedimento para criao de um projeto com controle PID Controles PID com blocos de funo Parmetros de configurao de entrada do PID CONT_C FB41 Parmetros de configurao de sada do PID CONT_C Conjunto de instrues em STL Exerccios complementares 98 109 113 123 128 130 144 144 145 146 148 150 158 161 164 166 171 91 89 81 85 86 87 81 81

SENAI

Programao Avanada CLP Siemens S7-300

Controlador Programvel SIEMENS Simatic S7-300


CONTROLADORES PROGRAMVEIS SIEMENS
A linha SIMATIC S7 consiste de trs tipos de controladores programveis classificados de acordo com o desempenho de cada um deles. SIMATIC S7-200 um micro PLC desenhado para aplicaes de baixo desempenho. controlado por seu pacote de software especfico, os quais no esto inclusos na srie S5 e S7. SIMATIC S7-300 um mini controlador modular desenhado para aplicaes de baixo desempenho. SIMATIC S7-400 O S7-400 projetado para aplicaes de desempenho intermedirio a alto. Para referncias mais fceis, os nomes dos mdulos S7-300 sempre iniciam com um 3 e os mdulos S7-400 iniciam com um 4. ESTRUTURA DE HARDWARE DO S7-300

Com exceo de sistemas de pequeno porte, onde podemos utilizar apenas uma fonte e uma CPU Compacta, um sistema de controle baseado no CLP SIMATIC S7-300 geralmente composto por: SENAI 4

Programao Avanada CLP Siemens S7-300 Fonte (PS) CPU Mdulos de Expanso Mdulos de I/O (SM) Mdulos de Comunicao (CP) Mdulos de Funo (FM)

RACKS DE EXPANSO Chamamos de Rack Central (CR) o trilho que acomoda a CPU, no qual podemos acoplar at 8 mdulos de expanso. Caso haja a necessidade de mais mdulos de expanso, dependendo do modelo de CPU, a configurao pode ser ampliada atravs de Mdulos de Interface (IM) num total de at 3 Racks de Expanso (ER) cada qual com mais 8 Mdulos de Expanso, totalizando 32 mdulos para uma configurao centralizada. Caso a aplicao exija um nmero maior de mdulos ou mesmo uma distncia maior entre o Rack Central (CR) e os Racks de Expanso (ER) a configurao pode ser expandida atravs de uma rede Profibus-DP e estaes de I/O remoto ET 200. Tal expanso pode ser implementada atravs da interface Profibus-DP j integrada a algumas CPUs ou atravs de um Mdulo de Comunicao.

MDULOS DO CLP S7-300 RACK 1 - UNIDADE CENTRAL DE PROCESSAMENTO A CPU utilizada no S7-300 de modelo 312IFM, a qual j inclui os mdulos de entradas e sadas digitais incorporados (10 entradas e 6 sadas digitais). O part number deste mdulo 312-5AC02-0AB0

SENAI

Programao Avanada CLP Siemens S7-300 RACK 2 - FONTE DE ALIMENTAO A fonte utilizada neste CLP a de modelo PS 307 2A, com alimentao direta de 120 / 230V de entrada e 24VDC 2A de sada. O part number deste mdulo 1BA00-0AA0 RACK 4 - MDULO DE SINAL ANALGICO Os mdulos de sinal do SIMATIC S7-300 so comparveis nas funes aos mdulos de entrada e sada do S5. Contudo, em adio aos mdulos simples de sinal, o S7 tambm prov mdulos que podem receber parmetros e que tm capacidade de diagnstico. O mdulo analgico do CLP composto pelo modelo SM334, com 4 entradas e 2 sadas analgicas de 8 bits de resoluo cada uma.

O part number deste mdulo 334-0CE01-0AA0 Instalao e Configurao Com uma arquitetura modular o SIMATIC S7-300 prov economia de espao, flexibilidade de configurao e rpida expans. O CLP S7-300 no necessita de racks com nmeros predefinidos de slots para ser montado, o conjunto de mdulos encaixado e aparafusado sobre um trilho DIN padro, os mdulos so interligados uns aos outros atravs de um bus modular que fica embutido no trilho.

SENAI

Programao Avanada CLP Siemens S7-300 CARACTERSTICAS FUNCIONAIS Um amplo espectro de CPUs est disponvel para aplicaes simples ou aplicaes de grande performance. As CPUs possibilitam curtos tempos de ciclo, at 1s. por instruo binria, atravs de seus eficientes processadores. Para algumas tarefas especiais, existem CPUs Compactas com I/Os, funes tecnolgicas e interfaces de comunicao j integradas. A grande diversidade de mdulos de expanso permite a adaptao da configurao para qualquer tipo de aplicao, esto disponveis: Mdulos de I/O (SM) Digitais (24Vdc, 48-130Vuc, 120/230VAC, Rel etc) Analgicos (5V, 0-10V, 0/4 at 20mA, Hert etc)

Mdulos de Comunicao (CP) Profibus DP / FMS Ethernet AS-interface Serial Ponto-a-Ponto Modbus Mdulos de Funo (FM) Contadores rpidos Sadas de pulso rpida Controle de posio Controle de motor de passo Controle em malha fechada (PID)

Um total de at 32 mdulos de expanso pode ser utilizado em uma configurao centralizada. Os mdulos de expanso para S7-300 tambm so utilizados na estao de I/O distribudo ET 200M, possibilitando economia com peas de reposio em uma configurao distribuda com CLP S7300 e ET 200M. Comunicao Alem dos diversos mdulos de comunicao que podem ser agregados a configurao, toda CPU da srie S7-300 traz integrada a si uma porta de comunicao MPI (interface multi-ponto). Atravs desta porta a CPU programada e parametrizada. Com a porta MPI possvel ainda implementar uma rede de pequeno porte com equipamentos SIEMENS, tais como: CLPs SIMATIC S7-200/300/400 Controladores SIMATIC C7 Interfaces Homem Mquina SIMATIC HMI Computadores Industriais SIMATIC PC

Alm da interface MPI, alguns modelos de CPU possuem uma segunda interface de comunicao integrada Profibus ou Serial Ponto-a-Ponto.

SENAI

Programao Avanada CLP Siemens S7-300 Programao e Parametrizao A programao do CLP SIMATIC S7-300 suplementada atravs do software STEP7 disponvel em trs verses STEP7 Lite, STEP7 e STEP7 Professional, desenvolvidas para melhor atender as suas necessidades. Aplicaes O SIMATIC S7-300 oferece solues para as mais diversas tarefas de automao, nas seguintes reas: Engenharia de produo Indstria automobilstica Construo de mquinas especializadas Construo de mquinas em srie (todos os tipos de mquinas de produo), OEM Processamento de plstico Indstria de embalagens Indstria alimentcia e de cigarros Engenharia de processos (p. e. saneamento, automao predial)

Para aplicaes especiais, esto disponveis produtos adicionais dedicados que complementam a linha SIMATIC S7-300: Aplicaes prova de falhas, com a nova CPU 315F desenvolvida de acordo com as diretrizes TUV, assim como com os respectivos I/Os, agora possvel programar o conceito de falha segura em aplicaes centralizadas ou distribudas. Componentes especiais para instalao em locais agressivos suportam condies ambientais rigorosas, p.e. nveis de temperatura maiores. SIMATIC C7, CPUs da srie SIMATIC S7-300 com interface homem-mquina (IHM) integrada, ideal para aplicaes em que o espao para instalao extremamente restrito.

COMBINANDO HARDWARE E SOFTWARE Usando o software SET7, voc pode criar seu programa S7 dentro de um projeto. O controlador programvel S7 monitora e controla o processo com este programa.

SENAI

Programao Avanada CLP Siemens S7-300 Esquema bsico de controle via CLP

O GERENCIADOR SIMATIC Iniciando o SIMATIC Manager e criando um projeto O ponto inicial de acesso do gerenciador Simatic o cone dele, chamado de STEP7. Este cone abre a janela deste gerenciador na qual podemos configurar todo o hardware do CLP, bem como abrir um novo projeto de programao. Todo programa criado deve ser feito sobre um projeto que possui diversos objetos, sendo este objeto chamado de OB1. Deste gerenciador podem-se acessar todas as funes instaladas no sistema (sistema padro e todos os softwares). Desta janela podemos fazer o seguinte: Montar os projetos Configurar e fornecer parmetros de hardware Configurar as configuraes de comunicao Criar os programas Testar os programas e iniciar sua execuo SENAI 9

Programao Avanada CLP Siemens S7-300

ESTRUTURA DE UM PROJETO S7 Definio de um projeto Os projetos contm todos os dados e programas para uma soluo de automao. O propsito deles prover um armazenamento organizado de dados e programas criados para cada aplicao. Projetos no SETP7 No S7 um projeto contm todos os arquivos criados para um programa usurio no arquivo de projeto. Este arquivo de projeto contm informao necessria para edio e manuteno do programa do usurio, tais como ajustes de parmetros, bem como os catlogos e nomes de arquivos.

SENAI

10

Programao Avanada CLP Siemens S7-300 PROCEDIMENTO BSICO DE USO DO STEP7 Antes de voc criar um projeto, voc deve saber que os projetos no STEP7 podem ser criados em diferentes ordens.

Se voc criar programas com muitas entradas e sadas, recomendamos que voc configure o hardware do CLP em primeiro lugar. A vantagem disto que o S7 mostra os endereos possveis no editor de configurao de hardware (Hardware Configuration Editor). Se voc escolher a segunda opo, voc ter que determinar cada endereo e, dependendo dos componentes selecionados voc no poder chamar esses endereos via STEP7. Na configurao de hardware, voc pode no somente definir endereos, mas tambm alterar os parmetros e propriedades dos mdulos. Estrutura de projeto no Simatic Manager

Projeto A estrutura de um projeto de automao se inicia pelo cone de projeto, localizado no primeiro nvel, o qual identificado pelo nome do projeto. Simatic 300 Station (Estao de Hardware) Para definir e parametrizar o hardware deve-se criar a estao de HW (S7-300). A estao criada (S7-312IFM) pode ter seu nome alterado pelo usurio e seus mdulos so definidos pela ferramenta Station Configuration. Ao se definir os mdulos, o sistema automaticamente cria os subdiretrios respectivos (CPU, Programa, Blocks, etc.). SENAI 11

Programao Avanada CLP Siemens S7-300 S7 PROGRAM (PROGRAMAS S7) O programa do usurio referente a um CLP propriamente dito localizado sob o diretrio S7 Programs. Este diretrio pode estar associado ou no a uma estao especfica criada. Associada a um HW, o diretrio se encontra subordinado CPU. Caso contrrio, fica subordinado diretamente ao projeto. Nos subdiretrios Source e Blocks esto localizados os programas do usurio, em arquivos fonte ou em blocos S7, respectivamente.

CONFIGURANDO E PARAMETRIZANDO O S7 Pr-requisito: Para configurar o hardware um projeto j dever ter sido criado. Inserindo uma estao Para criar uma nova estao no projeto, siga estes passos: 1. Selecione um projeto 2. Crie o objeto para o hardware solicitado selecionando o comando do menu (Insert Station) No sub-menu voc pode selecionar as seguintes opes: Estao Simatic S300 Estao Simatic S400 Dispositivos de programao Outras estaes

SENAI

12

Programao Avanada CLP Siemens S7-300

CONFIGURAO DE HARDWARE Configurao de hardware O termo configurao se refere ao arranjo de racks, mdulos, racks de I/O distribudos e submdulos de interface na janela da estao. Os racks so representados por uma tabela de configurao que permite um nmero especfico de mdulos serem inseridos, assim como em um rack real. Na tabela de configurao, o Step7 automaticamente aloca um endereo para cada mdulo. Voc pode alterar esses endereos na estao se a CPU puder ser acessada livremente (um endereo pode ser alocado livremente para cada canal do mdulo, independente do seu slot). Voc pode copiar sua configurao to frequentemente quanto voc desejar para outros projetos Step7, modifica-los se necessrio e fazer o download para uma ou mais plantas existentes. Quando o CLP iniciar, a CPU compara a configurao criada com a atual configurao da planta. Quaisquer erros sero ento reconhecidos imediatamente e reportados. Com esta ferramenta possvel: Definir os mdulos utilizados (CPU, I/O, FM) e a sua parametrizao. Por exemplo: tipo de medio do mdulo analgico de entrada. Ler a configurao da CPU. Por exemplo: designao dos mdulos no rack. Ler diagnstico de dados referentes aos mdulos (system diagnostics)

Na janela online (diagnstico de HW) exibida a configurao da estao que est acessvel online. Informaes de status ou estado de operao de cada mdulo mostrado no relatrio simblico do mdulo (system diagnostics). A tecla F5 atualiza a exibio. Para obter mais informaes, basta dar um duplo clique no smbolo. A ferramenta iniciada, por exemplo, pela seleo de uma estao de hardware no Simatic Manager ou via comando do menu Edit Open Object. A pasta Simatic 300 Station, sub-pasta Hardware, contm toda a configurao de hardware do CLP usado no projeto iniciado.

SENAI

13

Programao Avanada CLP Siemens S7-300

Configurando O usurio especifica a posio dos mdulos no rack e os endereos so definidos automaticamente (nas CPUs 315-2 e do S7-400 o usurio pode alterar os endereos). A esta configurao denominaremos configurao parametrizada. Durante o incio a CPU checa a distribuio dos mdulos existentes, que denominada de configurao real. CPU carregada no slot 2 do barramento

SENAI

14

Programao Avanada CLP Siemens S7-300 Fonte de alimentao carregada no slot 1 do barramento

Mdulo de E/S carregado no slot 4 do barramento

SENAI

15

Programao Avanada CLP Siemens S7-300 Layout da janela da estao A parte inferior da janela da estao mostra uma viso detalhada do rack inserido / selecionado. Os nmeros de pedido (order numbers) e endereos (addresses) dos mdulos so mostrados no formulrio da tabela. A tabela tem sua estrutura exibida abaixo para um rack central equipado com alguns mdulos.

Tabela de configurao como uma imagem de um rack Para uma estrutura central voc arranja os mdulos ao lado da CPU em um rack e continua atravs das expanses adicionais dos racks. O nmero de racks que podem ser configurados depende da CPU que voc usa. Como voc faz em uma planta real, voc arranja seus mdulos em racks com o Step7. A diferena que os racks do Step7 so representados por tabelas de configurao que tem tantas linhas quantos slots para mdulos. A figura a seguir mostra um exemplo de como uma estrutura real convertida em uma tabela de configurao. Essa tabela corresponde ao rack utilizado. O Step7 automaticamente coloca o nmero dos racks em janelas em frente aos nomes. Exemplo: UR (universal rack) corresponde ao rack central nmero 0.

SENAI

16

Programao Avanada CLP Siemens S7-300 Ajustando parmetros Ao invs de setar chaves nos mdulos, todos os parmetros so definidos via software. Podem-se definir parmetros para a CPU e para determinados mdulos de I/O, tais como mdulos analgicos. Nos parmetros da CPU esto includos, entre outros, o tempo de superviso de durao de um ciclo ou o intervalo de tempo para execuo de partes do programa. Trocando mdulos Durante um restart completo, a CPU distribui os parmetros para todos os mdulos existentes. Assim, quando se substitui um mdulo defeituoso, a parametrizao para o novo mdulo ainda est disponvel, armazenada na CPU. Configurando o Hardware D-se o nome de configurao parametrizada configurao de hardware criada pelo usurio, determinando os mdulos existentes e sua localizao, bem como a parametrizao destes mdulos. A configurao executada pela ferramenta Configurador de Hardware. A partir do catlogo, selecionam-se os mdulos utilizados, posicionando-os no slot respectivo do trilho ou bastidor. Naturalmente inicia-se a configurao pelo trilho / bastidor para ento se posicionar os outros mdulos. Ao se posicionar um mdulo, o sistema automaticamente designa um endereo para ele. A parametrizao dos mdulos realizada dando-se um duplo clique sobre o mdulo desejado. Uma tela de configurao referente ao mdulo aparecer, permitindo a alterao dos parmetros. Catlogo eletrnico O catlogo eletrnico contm toda a lista de mdulos existentes no S7. Quando se clica na tecla +, teremos disponveis todos os mdulos do grupo selecionado. PARMETROS E PROPRIEDADES DA CPU Setando parmetros da CPU As propriedades das CPUs tem uma significncia especial para o comportamento do sistema. Nas caixas de dilogo de uma CPU, voc pode ajustar o seguinte, por exemplo: caractersticas de inicializao, reas de dados locais e prioridades para interrupo, reas de memria, comportamento retentivo, memria de clock, nvel de proteo e senha. Na guia GENERAL da CPU ou via propriedades da interface da CPU voc pode ajustar parmetros para as interfaces (por exemplo, interfaces MPI (multipoint interfaces) ou interfaces integradas PROFIBUS-DP). Via estas caixas de dilogo voc tambm pode acessar as caixas de dilogo de propriedades para a subrede a qual a CPU est conectada. Para os controladores programveis S7-300 voc tambm pode ajustar os parmetros para alguns mdulos no programa do usurio (por exemplo, para mdulos analgicos). Voc necessita chamar as funes de sistema (SFCs) WR_PARM, WR_DPARM e PARM_MOD no programa do usurio para realizar esta operao. Estes ajustes so perdidos em um reincio a frio. Entre outros, os seguintes parmetros podem ser setados na CPU: Endereo da interface MPI; Caractersticas de start-up / ciclo: tempo mximo de ciclo, ciclo de carga para comunicao, auto teste cclico e auto teste depois da energizao; Interrupo cclica (watchdog OB35); Memria retentiva (flags de memria marcadores de posio do programa), temporizadores, contadores e blocos de dados; Clock de memria: reduzir a freqncia de byte da memria; SENAI 17

Programao Avanada CLP Siemens S7-300 Diagnstico de sistema: enviar mensagens de diagnstico, detalhar registros no buffer de diagnstico.

Se o usurio no definir nenhum parmetro, os parmetros default sero utilizados pela CPU. Depois de setar os parmetros, deve-se transferi-los ao CLP, atravs do comando PLC Download. A CPU dever estar no modo STOP. Endereo MPI Se for necessrio conectar vrios CLPs entre si via interface MPI, devero ser adotados endereos diferentes para cada equipamento (CPU)

SENAI

18

Programao Avanada CLP Siemens S7-300

SENAI

19

Programao Avanada CLP Siemens S7-300 SETANDO PARMETROS EM MDULOS DE SINAIS Parmetros nos mdulos de sinais so variveis que contem os ajustes da resposta dos nveis de sinais dos mdulos (um ou mais por mdulo). Todos os mdulos tm ajustes default. Os ajustes para a maioria dos mdulos S7 podem ser modificados usando o HW Configuration ou pro meio de SFCs no programa do usurio. Existem dois tipos de parmetros para estes mdulos: Parmetros estticos ajustes dos mdulos podem ser modificados com o S7 HW Configuration, mas no com SFCs no seu programa. Parmetros dinmicos ajuste dos mdulos podem ser modificados no programa do usurio, mesmo se elas forem feitas com o Step7. Abaixo apresentada a tela de entrada para configurao do mdulo analgico.

SENAI

20

Programao Avanada CLP Siemens S7-300

Conjunto de instrues avanadas do STEP7


INSTRUES DE LGICA DE BIT As instrues de lgica de bit trabalham com dois dgitos (1 e 0). Estes dois dgitos formam a base do sistema numrico chamado binrio. Os dois dgitos so chamados de dgitos binrios ou bits. No universo dos contatos e bobinas, um dgito 1 indica energizado ou ativado e o 0 indica no ativado / energizado. As instrues de lgica de bit interpretam os estados de sinal 1 e 0 e os combina de acordo com as regras de uma lgica Booleana. As combinaes produzem um resultado 1 ou 0, conhecidos como resultado da operao lgica (RLO). Funes As instrues de lgica de bit esto disponveis para as seguintes funes: AND, OR e XOR estas instrues checam o estado do sinal e produzem um resultado que pode tanto ser copiado para o bit RLO (resultado da operao lgica) ou combinado com ele. Com operaes de lgica AND, o resultado do sinal de estado combinado de acordo com a tabela verdade desta funo lgica. Com operaes lgicas OR, o resultado combinado de acordo com a TV da funo OR. As seguintes instrues reagem em funo de um RLO = 1 Set Output e Reset Output; Set_Reset flip-flop e Reset_Set flip-flop. Algumas instrues reagem durante a subida ou descida do pulso. Assim, voc pode executar as seguintes instrues incrementar ou decrementar o valor de um contador; inicializar um temporizador; produzir uma sada 1. 1) Instruo Set Reset Flip-flop Descrio Esta instruo executa operaes de Set (S - liga) e de Reset (R desliga) somente quando RLO=1. Um RLO=0 no tem efeito sobre esta operao. O endereo especificado na operao permanece inalterado. Um flip=flop Set_Reset ligado se o estado do sinal 1 na entrada S e 0 na entrada R. Caso contrrio, se o estado do sinal 0 na entrada S e 1 na entrada R, o flip=flop resetado. Se RLO igual a 1 em ambas as entradas, o flip-flop tambm resetado. Esta instruo afetada pela instruo Rel Mestre de Controle (MCR), que veremos adiante.

Parmetros da instruo Set Reset de flip-flop

SENAI

21

Programao Avanada CLP Siemens S7-300 Exemplo de programa com a instruo

Exemplo de utilizao da instruo em bloco de funes (FBD)

Exemplo de utilizao da instruo em lista de instrues (STL)

SENAI

22

Programao Avanada CLP Siemens S7-300 2) Instruo Reset Set Flip-flop Descrio Esta instruo executa operaes de Set e Reset somente quando RLO igual a 1. O flip flop resetado se o estado do sinal 0 na entrada R e 1 na entrada S. Nas condies opostas (R=1 e S=0), o flip flop setado. Se RLO igual a 1 em ambas as entradas, ele ser setado. Esta instruo tambm influenciada pela instruo Rel Mestre. Parmetros da instruo Reset Set de flip-flop

Exemplo de programa com a instruo

Exemplo de utilizao da instruo em bloco de funes (FBD)

SENAI

23

Programao Avanada CLP Siemens S7-300 Exemplo de utilizao da instruo em lista de instrues (STL)

EXERCCIO Utilizando-se deste conjunto de instrues, montar um programa em linguagem FBD para realizar o controle de inverso de rotao de um motor trifsico. Convenes Boto desliga S0 I124.0 Rel trmico F7 I124.1 Boto liga S1(sentido horrio) I124.2 Boto liga S2 (sentido anti-horrio) I124.3 Contator K1 Q124.0 Contator K2 Q124.1 Contato de intertravamento K1(31-32) I124.4 Contato de intertravamento K2 (31-32) I124.5

SENAI

24

Programao Avanada CLP Siemens S7-300 RESOLUO DO EXERCCIO EM LINGUAGEM LADDER

EM LINGUAGEM DE BLOCOS DE FUNO (FBD)

SENAI

25

Programao Avanada CLP Siemens S7-300

SENAI

26

Programao Avanada CLP Siemens S7-300 Descrio das linhas de instruo do programa

SENAI

27

Programao Avanada CLP Siemens S7-300

SENAI

28

Programao Avanada CLP Siemens S7-300 INTERFACE ELTRICA DAS ENTRADAS E SADAS

SENAI

29

Programao Avanada CLP Siemens S7-300 INSTRUES DE TEMPORIZAO Os temporizadores tm uma rea reservada para eles na memria da CPU. Esta rea de memria reserva uma palavra de 16 bits para cada endereo de temporizador utilizado no programa. O set de instrues em Ladder suporta at 256 instrues no mesmo programa. As seguintes instrues tm acesso direto rea de memria de temporizao: Instrues de temporizao; Atualizao das palavras de temporizao durante o clock. Esta funo da CPU, em modo RUN, decrementa um dado valor de tempo de uma unidade no intervalo designado por uma base de tempo at que o valor de tempo seja igual a zero. Valor de tempo Os bits de 0 a 9 de uma palavra de temporizao contm o valor de tempo em modo binrio. Este valor especifica o nmero de unidades a serem decrementadas. A atualizao de tempo decrementa o valor de uma unidade no intervalo designado pela base de tempo e este continua at chegar a zero. Voc pode carregar o valor de tempo em uma palavra baixa do acumulador 1 em binrio, hexadecimal ou BCD (binary coded decimal). A escala de tempo vai de 0 a 9.990 segundos. Voc pode pr-carregar o valor de tempo usando ambos os formatos a seguir: W#16#wxyz, onde: W a base de tempo e wxyz o valor de temporizao S5T#aH_bbM_ccS_ddMS, onde: a = horas, bb = minutos, cc = segundos e dd = milisegundos. A base de tempo selecionada automaticamente. O mximo valor que voc pode carregar 9.990 segundos, ou 2H_46M_30S. Base de tempo Os bits 12 e 13 de uma palavra de temporizao contm a base de tempo em cdigo binrio. Ela define o intervalo no qual o valor de tempo decrementado de uma unidade. A menor base de tempo 10ms e a maior de 10s.

Pelo fato dos valores de tempo estar armazenados somente com um intervalo de tempo, valores que no so exatamente mltiplos deste intervalo sero truncados. Valores com resoluo muito alta para a faixa requerida so arredondados para encontrar a faixa desejada, mas no a resoluo requerida. A tabela abaixo mostra as possveis resolues e suas faixas correspondentes.

SENAI

30

Programao Avanada CLP Siemens S7-300 Configurao de bits na clula de temporizao Quando um temporizador inicializado, os contedos da clula de temporizao so usados como valor de tempo. Os bits 0 at 11 da clula armazenam o valor de tempo em BCD. Os bits 12 e 13 armazenam a base de tempo tambm em BCD. A figura a seguir exibe estas informaes com uma carga de valor de tempo em 127 e base de tempo em 1 segundo.

1) Extended Pulse S5 Timer (temporizador de pulso estendido) Descrio Esta instruo inicializa o temporizador se houver uma borda de pulso positiva (borda de subida de 0 para 1) na entrada Start (S). Uma mudana de sinal sempre necessria para este procedimento. O temporizador continua a rodar com o tempo especificado na entrada Time Value (TV valor de tempo), mesmo se o estado do sinal na entrada S mudar para 0 antes do tempo ter terminado. Um sinal de checagem de estado em 1 na sada Q produz um resultado de 1 enquanto o temporizador estiver rodando. O temporizador reinicializado com o tempo especificado se o estado do sinal na entrada S for de 0 para 1 enquanto ele estiver rodando. Uma alterao de 0 para 1 na entrada Reset (R) enquanto o temporizador est rodando faz o mesmo resetar. Essa alterao tambm reseta o tempo e a base de tempo dele. O valor atual de tempo pode ser monitorado nas sadas BI e BCD. O valor de tempo em BI est em formato BCD.

SENAI

31

Programao Avanada CLP Siemens S7-300 Exemplo de aplicao A figura abaixo mostra a instruo S_PEXT e as caractersticas do temporizador de pulso.

SENAI

32

Programao Avanada CLP Siemens S7-300 Configurao da instruo para FBD

Configurao da instruo para STL

2) Retentive On-Delay S5 Timer (temporizador retentivo em atraso) Descrio Esta instruo inicia o temporizador se houver um pulso positivo (de 0 para 1) na entrada Start (S). A mudana de sinal necessria para essa inicializao. O temporizador continua a rodar dentro do valor de tempo especificado na entrada Time Value (TV), mesmo se o estado do sinal na entrada S mudar para 0 antes do tempo ter expirado. Um sinal de checagem de estado em 1 na sada Q produz um resultado de 1 quando o tempo tiver terminado. O temporizador reinicializado com o tempo especificado se o sinal na entrada S mudar de 0 para 1 enquanto o mesmo estiver rodando. Uma mudana de 0 para 1 na entrada R provoca o reset do temporizador sem levar em considerao o valor de RLO na entrada S.

SENAI

33

Programao Avanada CLP Siemens S7-300 Exemplo de aplicao

SENAI

34

Programao Avanada CLP Siemens S7-300 Configurao da instruo para FBD

Configurao da instruo para STL

SENAI

35

Programao Avanada CLP Siemens S7-300 EXERCCIO PARTIDA CONSECUTIVA DE MOTORES TRIFSICOS Montar um programa em para controle de uma esteira transportadora de cereais que possui 4 motores trifsicos. A partida desses motores seqencial e temporizada (10s de intervalo entre a partida de um motor e do outro). O sistema tambm possui dois sensores de nvel no tanque de armazenamento (silo) e que controlam a condio dessas partidas. Se o silo estiver cheio (sensor 2 atuado), os motores no podem ligar. Se o nvel estiver intermedirio ou baixo, a partida liberada. Seqncia operacional Observe a seguir o circuito composto por quatro motores que devem partir em seqncia.

O circuito de comando para o circuito acima mostrado a seguir (esteiras transportadoras).

SENAI

36

Programao Avanada CLP Siemens S7-300 Quando o boto Ch1 acionado, o contador C1 e o rel d1 so energizados (se o sensor de nvel mnimo S1 der condies silo vazio). O motor M1 parte. Decorrido o tempo ajustado para d1, este energiza C2 e d2. O motor M2 parte. Decorrido o tempo ajustado para d2, este energiza C3 e d3. O motor M3 parte. Aps o tempo ajustado para d3, este energiza C4, dando partida a M4, o ltimo motor da seqncia. Quando o silo estiver cheio (sensor de nvel S2 atuado), os motores devem ser desligados instantaneamente. Aplicao O sistema de partida consecutiva aplicado no acionamento de correias transportadoras.

Os quatro motores devem acionar as esteiras e seu sentido de conduo M4, M3, M2, M1. Assim, as ligaes dos motores devem obedecer a seguinte ordem: M1, M2, M3 e M4, ou seja, no sentido inverso. Se um dos motores desligado em razo de sobrecarga, por exemplo, todos os motores frente dele no sentido da conduo sero desligados. O fornecimento de carga s esteiras interrompido e os motores montados anteriormente continuam a funcionar at o descarregamento das respectivas esteiras. Veja o resumo seqencial na tabela a seguir. Defeito no circuito comandado por: Desliga C4 C3 C2 C1 M4 M3 M2 M1 M4 M3 e M4 M2, M3 e M4 M1, M2 e M3 M1 e M2 M1 Conseqncia Desliga Continua ligado

SENAI

37

Programao Avanada CLP Siemens S7-300 INSTRUES MATEMTICAS COM NMEROS INTEIROS Antes de iniciarmos a abordagem deste grupo de instrues, veremos uma explanao sobre o que denominamos de palavra de estado (ou STATUS WORD). Status Word Esta palavra binria contm bits que voc pode usar como referncia no endereamento de instrues de lgica de bit ou ento em operaes matemticas, como o nosso caso neste momento. Veremos a seguir o significado do conjunto de 8 bits menos significativos desta palavra. Estrutura do Status Word

Convenes utilizadas no Status Word

Descries dos bits do Status Word FC First Check Bit 0 do status word. No incio de uma rede lgica Ladder, o sinal de estado do bit FC sempre 0, ao menos que uma rede prvia tenha terminado com a instruo ---(SAVE). A barra sobre a funo indica que ela negada, ou seja, sempre em 0 no incio de uma lgica Ladder. Cada instruo lgica checa o estado de sinal do bit FC assim como o estado de sinal do endereo da instruo de contato. O estado do sinal de FC determina a seqncia da lgica. Se FC 0 (no incio da lgica Ladder), a instruo armazena o resultado e ajusta o bit FC para 1. O processo de checagem chamado first check (primeira checagem). O 1 ou 0 que armazenado em RLO depois da primeira checagem ento referenciado como o resultado de FC. Se o estado do bit de FC 1, uma operao ento liga o resultado deste sinal com RLO formado pelo contato endereado desde a primeira checagem e armazena o resultado em RLO. Result of Logic Operation (RLO) Este o bit 1 da palavra de setado. Este bit armazena o resultado de uma instruo lgica ou comparaes matemticas. Por exemplo, a primeira instruo lgica em Ladder checa o estado do sinal de um contato e produz 1 ou 0 como resultado. Ela armazena este resultado no bit RLO. Uma segunda instruo tambm checa o estado de um contato e produz um resultado. Ento, a instruo combina este resultado com o valor armazenado em RLO usando lgebra booleana. O resultado desta operao lgica armazenado em RLO, alterando o valor anterior armazenado l. Cada instruo subseqente na execuo realiza uma operao lgica em dois valores: o resultado produzido quando a instruo checa o contato e o valor corrente de RLO.

SENAI

38

Programao Avanada CLP Siemens S7-300 Status Bit (STA) Bit 2 da palavra de estado, chamada de status bit. O bit de estado armazena o valor de um bit que referenciado. O estado de uma instruo de bit que tenha lido uma memria (contato normalmente aberto ou fechado) sempre o mesmo que o valor do bit que esta instruo verifica. O estado de uma instruo de bit que tenha escrito em uma memria (set coil, reset coil, output coil) o mesmo que o valor do bit que a instruo escreve ou, se no houver escrita, o mesmo valor do bit ao qual a instruo est referenciada. OR Bit (OR) Bit 3 da palavra de estado chamado de bit OR. Este bit necessite que voc use instrues de Contato para realizar operaes lgicas OR com uma funo AND. Este bit mostra instrues que foram previamente executadas e que forneceram valor 1. Overflow Bit (OV) Bit 5 da palavra de estado e indica a ocorrncia de um erro. Ele setado por uma instruo matemtica ou uma instruo de compao em ponto flutuante depois da ocorrncia de um destes erros: sobrecarga, operao ilegal, nmero ilegal. Stored Overflow Bit (OS) Bit 4 que setado juntamente com o bit OV se um erro ocorrer. Pelo fato do bit OS permanecer ligado depois do erro ter sido eliminado (diferentemente do bit OV), ele indica se um erro ocorreu em uma das instrues executadas previamente. Condition Code 1 and Condition Code 0 So os bits 6 e 7 da palavra de estado (CC1 e CC0) e fornecem informao nos seguintes resultados ou bits: Resultado de uma operao matemtica; Resultado de uma comparao; Resultado de uma operao digital; Bits que tenham sido deslocados ou rotacionados por um comando. A tabela abaixo lista o significado de CC1 e CC0 aps o programa do usurio executar certas instrues.

CC1 e CC0 depois da execuo de Instrues Matemticas com nmeros inteiros, sem Overflow CC1 0 0 CC0 0 1 Explanao Overflow de faixa negativa em uma adio com nmeros inteiros ou adio de duplo nmero inteiro Overflow de faixa negativa na multiplicao inteira e multiplicao de duplo inteiro. Overflow de faixa positiva em adio inteira, subtrao inteira, adio de duplo inteiro, subtrao de duplo inteiro, complemento de dois inteiro e complemento de dois de duplo inteiro. 1 0 Overflow positivo em multiplicao inteira e de duplo inteiro, diviso inteira e de duplo inteiro.

SENAI

39

Programao Avanada CLP Siemens S7-300 Overflow negativo em soma inteira, subtrao inteira, soma de duplo inteiro e subtrao de duplo inteiro. 1 1 Diviso por zero em diviso inteira, diviso de duplo inteiro e retorno de frao de duplo inteiro.

CC1 e CC0 depois da execuo de Instrues Matemticas em ponto flutuante, com Overflow

CC1 0 0 1 1

CC0 0 1 0 1 Overflow gradual Overflow de faixa negativa Overflow de faixa positiva Operao ilegal

Explanao

CC1 e CC0 depois da execuo de Instrues de comparao

CC1 0 0 1 1

CC0 0 1 0 1 IN2=IN1 IN2<IN1 IN2>IN1

Explanao

IN1 ou IN2 so nmeros ilegais de ponto flutuante

CC1 e CC0 depois da execuo de Instrues de deslocamento e rotao

CC1 0 1

CC0 0 0 ltimo bit deslocado igual a 0 ltimo bit deslocado igual a 1

Explanao

CC1 e CC0 depois da execuo de Instrues de palavras lgicas

CC1 0 1

CC0 0 0 Resultado = 0 Resultado <>0

Explanao

SENAI

40

Programao Avanada CLP Siemens S7-300 Binary Result Bit (BR) Este bit forma uma conexo entre o processamento de bits e palavras. Ele habilita o programa do usurio a interpretar o resultado de uma operao com palavra como um resultado binrio e a interpretar este resultado em uma lgica binria. Visto deste ngulo, o bit BR representa um marcador de memria interno no qual o bit RLO salvo em funo de uma operao de alterao de palavra RLO. Por exemplo: o bit BR torna possvel ao usurio escrever um bloco de funo (FB) ou uma funo (FC) em uma lista de instruo (STL) e ento chamar o FB ou FC de uma lgica Ladder. FORMATO DE DADOS DO TIPO INTEIRO Um nmero inteiro tem um sinal que indica se ele positivo ou negativo. O espao que este tipo de dado ocupa (de 16 bits) em uma memria chamado de UMA PALAVRA. A tabela a seguir mostra a faixa de um inteiro de 16 bits.

SENAI

41

Programao Avanada CLP Siemens S7-300 1) Add Integer (soma de nmeros inteiros) Descrio Aplicando-se nvel 1 na entrada Enable (EN) a instruo ativada. Ela realiza a soma entre os valores presentes nas entradas IN1 (input 1) e IN2 (input 2) e o resultado pode ser visualizado na sada OUT. Se o resultado estiver fora da faixa permitida para um nmero inteiro, os bits OV e OS da palavra de estado estaro em 1 e a sada ENO 0. Exemplo de aplicao

SENAI

42

Programao Avanada CLP Siemens S7-300 Converso do programa para STL

SENAI

43

Programao Avanada CLP Siemens S7-300 2) Subtract Integer (subtrao de nmeros inteiros) Descrio Aplicando-se nvel 1 na entrada Enable (EN), a instruo de subtrao ativada, realizando esta operao entre os valores das entradas IN1 e IN2 (IN1 IN2). O resultado pode ser visualizado na sada OUT. Se o resultado de sada estiver fora da faixa permitida para um nmero inteiro, os bits OV e OS da palavra de estado esto em 1 e a sada ENO (Enable Output) 0. Exemplo de aplicao

Converso do programa para STL A lgica 1 convertida para STL idntica ao programa anterior (ADD_I)

SENAI

44

Programao Avanada CLP Siemens S7-300 3) Multiply Integer (multiplicao de nmeros inteiros) Descrio Aplicando-se nvel 1 na entrada Enable (EN), a instruo de multiplicao ativada, realizando esta operao entre os valores das entradas IN1 e IN2 (IN1 X IN2). O resultado pode ser visualizado na sada OUT. Se o resultado de sada estiver fora da faixa permitida para um nmero inteiro de 16 bits, os bits OV e OS da palavra de estado esto em 1 e a sada ENO (Enable Output) 0. Exemplo de aplicao

Converso do programa para STL A lgica 1 convertida para STL idntica ao programa anterior (ADD_I)

SENAI

45

Programao Avanada CLP Siemens S7-300 4) Divide Integer (diviso de nmeros inteiros) Descrio Aplicando-se nvel 1 na entrada Enable (EN), a instruo de diviso ativada, realizando esta operao entre os valores das entradas IN1 e IN2 (IN1 / IN2). O quociente inteiro (resultado truncado) pode ser monitorado na sada OUT. A sobra no pode ser escaneada. Se o quociente estiver fora da faixa permitida para um nmero inteiro, os bits OV e OS da palavra de estado esto em nvel 1 e a sada ENO desligada. Exemplo de aplicao

Converso do programa para STL A lgica 1 convertida para STL idntica ao programa anterior (ADD_I)

SENAI

46

Programao Avanada CLP Siemens S7-300 Avaliando os bits da Palavra de Estado aps a execuo de instrues matemticas As instrues matemticas vistas at agora afetam os seguintes bits da palavra de estado aps sua execuo: CC1 e CC0 OV OS

O sinal (-) nas tabelas a seguir significa que o bit no afetado pelo resultado da operao matemtica. Tabela para valores dentro da escala vlida Escala vlida para o resultado com nmeros inteiros (16 e 32 bits) Bits da palavra de estado CC1 0 (zero) 16 bits resultado entre 0 e o valor -32.768 (nmero negativo) 32 bits resultado entre 0 e -2.147.483.648 (nmero negativo) 16 bits resultado entre 0 e o valor 32.767 (nmero positivo) 32 bits resultado entre 0 e 2.147.483.647 (nmero positivo) 0 0 CC0 0 1 OV 0 0 OS -

Tabela para valores fora da escala vlida Escala vlida para o resultado com nmeros inteiros (16 e 32 bits) Bits da palavra de estado CC1 0 (zero) 16 bits resultado maior do que o valor 32.767 (nmero positivo) 32 bits resultado maior do que o valor 2.147.483.647 (nmero positivo) 16 bits resultado menor do que o valor -32.767 (nmero negativo) 32 bits resultado menor do que o valor -2.147.483.648 (nmero negativo) 1 0 0 0 1 0 0 CC0 0 OV 0 OS -

SENAI

47

Programao Avanada CLP Siemens S7-300 INSTRUES MATEMTICAS COM NMEROS EM PONTO FLUTUANTE Introduo As funes em ponto flutuante do Simatic podem ser usadas para a realizao das seguintes instrues usando dois nmeros de 32 bits cada: Adio Subtrao Multiplicao Diviso

Estes nmeros de ponto flutuante em 32 bits so chamados de nmeros reais. Utilizando a matemtica em ponto flutuante com um nmero de 32 bits possvel realizarmos operaes dos tipos: Extrao de raiz (SQR) e raiz quadrada (SQRT) de um nmero; Estabelecer o logaritmo natural (LN); Estabelecer o valor exponencial (EXP) na base e (2,71828); Estabelecer as seguintes funes trigonomtricas de um ngulo: Seno (SIN) e Arcoseno (ASIN) de um nmero; Cosseno (COS) e Arcocosseno (ACOS); Tangente (TAN) e Arcotangente (ATAN).

Formato de dados do tipo REAL (nmeros de ponto flutuante) Em computao, o ponto flutuante descreve um sistema de representao numrica na qual uma string de dgitos (ou bits) representa um nmero real. O termo ponto flutuante refere-se ao fato de que o ponto decimal (ou ponto binrio em computao) pode flutuar, isto , pode ser colocado relativo ao nmero de dgitos significativos. Esta posio indicada separadamente na representao interna e a representao do ponto flutuante pode ento ser pensada como a representao de um nmero em notao cientfica. Atravs dos anos vrias formas de representao foram adotadas, mas nos ltimos anos a que foi aceita pelos fabricantes de CLPs foi a normalizao definida pela IEEE754-1985 (ou pela IEC 60559:1989). IEEE Institute of Eletrical and Electronics Engineers O formato de um nmero em ponto flutuante no STEP7 O formato segue a norma ANSI/IEEE 754-1985 e que consiste dos seguintes elementos: O sinal S O expoente e = E + bias, acrescido de uma constante (bias = 127)

A parte fracionria da mantissa m. Toda a parte da mantissa de um nmero no armazenado com o resto, porque ele sempre igual a 1 se o nmero est dentro a faixa vlida. Os trs componentes juntos ocupam uma palavra dupla de 32 bits.

SENAI

48

Programao Avanada CLP Siemens S7-300 Usando os trs componentes S, e e m, o valor de um nmero representado neste formato definido por uma frmula:

NMERO = (s) 1,m X 2e-127


Onde: e: expoente (=-127). Em outras palavras, o expoente armazenado com o -127 adicionado a ele m (mantissa (23 bits)), ou seja, a parte inteira (que pode ser 1 ou 0) seguida pela parte fracionria s: para um nmero positivo, S = 0 e para um nmero negativo, S = 1

Exemplo:

Converter o nmero binrio acima para um nmero real em ponto flutuante

1) s = 0 o valor inteiro +1 2) 0 expoente = 124. Ento e = 124 127 = -3 01111100 (2) = 0X27 + 1X26 + 1X25 + 1X24 + 1X23 + 1X22 + 0X21 + 0X20 = 0 + 64 + 32 + 16 + 8 + 4 = 124 3) m = 1.01 (em binrio). Em decimal, um nmero binrio fracionrio convertido assim para decimal:

SENAI

49

Programao Avanada CLP Siemens S7-300 Valor da faixa para nmeros em ponto flutuante Usando o formato em ponto flutuante mostrado abaixo, os resultados so os seguintes: O menor nmero 1,175495E-38 e O maior nmero 3,402823E+38 O nmero zero representado com e=m=0; e=255 e m=0 so usados para infinito.

A tabela a seguir mostra os bits de sinal de estado da palavra de estado para os resultados das instrues com nmeros em ponto flutuante que no esto dentro da faixa permitida.

Exemplos de formatos de nmeros em ponto flutuante As informaes abaixo mostram o formato em ponto flutuante para os valores decimais a seguir: 10.0 Pi = 3.141593 Raiz quadrada de 2 = 1.414214

Outro exemplo mais complexo:

SENAI

50

Programao Avanada CLP Siemens S7-300 Exemplos de nmeros reais de 32 bits

SENAI

51

Programao Avanada CLP Siemens S7-300 1) Add Floating-point Numbers (soma de nmeros em ponto flutuante nmeros REAIS) Descrio Um sinal de nvel 1 na entrada Enable (EN) ativa a instruo e realiza a soma dos valores presentes nas entradas IN1 e IN2 (IN1 + IN2). O resultado pode ser monitorado na sada OUT. Se o resultado est fora da faixa permitida (acima ou abaixo dos valores limites), os bits OV e OS da palavra de estado esto em 1 e a sada ENO desativada.

SENAI

52

Programao Avanada CLP Siemens S7-300 Monitorao da instruo ADD_R

SENAI

53

Programao Avanada CLP Siemens S7-300 2) Subtract Floating-point Numbers (subtrao de nmeros em ponto flutuante nmeros REAIS) Descrio Um sinal de nvel lgico 1 na entrada Enable (EN) ativa esta instruo e realiza a subtrao entre dois nmeros reais em ponto flutuante (subtrai o valor da entrada IN1 da entrada IN2). O resultado pode ser monitorado na sada OUT. Resultados fora da faixa permissvel (acima ou abaixo dos limites) resultam em nvel lgico 1 nos bits OV e OS, alm de desabilitar a sada ENO.

SENAI

54

Programao Avanada CLP Siemens S7-300 Na monitorao:

SENAI

55

Programao Avanada CLP Siemens S7-300 3) Multiply Floating-point Numbers (multiplicao de nmeros em ponto flutuante nmeros REAIS) Descrio Um sinal de nvel lgico 1 na entrada Enable (EN) ativa esta instruo e realiza a multiplicao entre dois nmeros reais em ponto flutuante (multiplica o valor da entrada IN1 com o da entrada IN2). O resultado pode ser monitorado na sada OUT. Resultados fora da faixa permissvel (acima ou abaixo dos limites) resultam em nvel lgico 1 nos bits OV e OS, alm de desabilitar a sada ENO.

SENAI

56

Programao Avanada CLP Siemens S7-300 Monitorao da instruo

SENAI

57

Programao Avanada CLP Siemens S7-300 4) Divide Floating-point Numbers (diviso de nmeros em ponto flutuante nmeros REAIS) Descrio Um sinal de nvel lgico 1 na entrada Enable (EN) ativa esta instruo e realiza a diviso entre dois nmeros reais em ponto flutuante (divide o valor da entrada IN1 pelo da entrada IN2). O resultado pode ser monitorado na sada OUT. Resultados fora da faixa permissvel (acima ou abaixo dos limites) resultam em nvel lgico 1 nos bits OV e OS, alm de desabilitar a sada ENO.

SENAI

58

Programao Avanada CLP Siemens S7-300 Monitorao da instruo

SENAI

59

Programao Avanada CLP Siemens S7-300

SENAI

60

Programao Avanada CLP Siemens S7-300 5) Estabelecendo o valor absoluto (ABS) de um nmero em ponto flutuante Descrio Na matemtica, o valor absoluto (ou mdulo) de um nmero Real o seu valor numrico sem o seu sinal. Por exemplo, 3 o valor absoluto de -3. Em programao de computadores, a funo matemtica usada para realizar este clculo chamada de ABS. Com esta instruo podemos estabelecer o valor absoluto deste tipo de nmero (em ponto flutuante.

SENAI

61

Programao Avanada CLP Siemens S7-300 Monitorao da instruo

SENAI

62

Programao Avanada CLP Siemens S7-300 6) Estabelecendo a raiz quadrada de um nmero em ponto flutuante Descrio Esta instruo extrai a raiz quadrada de um nmero e produz um resultado positivo quando o endereo maior do que zero (nica exceo: raiz quadrada de -0 -0). A instruo ativada quando a entrada Enable (EN) igual a 1. O resultado SQRT (sada OUT) armazenado em uma memria de palavra dupla (MD30). Se MD30 for menor do que 0 ou se o resultado est fora da faixa permissvel para nmeros em ponto flutuante, a sada ENO ligada e o valor de MD igual a zero.

SENAI

63

Programao Avanada CLP Siemens S7-300 Monitorao da instruo

7) Estabelecendo o logaritmo natural (LN) de um nmero em ponto flutuante Descrio Esta instruo extrai o logaritmo natural de um nmero atravs da ativao da instruo, pela aplicao de um sinal em nvel 1 na entrada Enable (EN). O nmero a ser calculado inserido na entrada IN e o resultado armazenado na memria de palavra dupla indicada na sada OUT. Se o valor da entrada IN for menor que zero ou estiver fora da faixa permissvel, a sada ENO desabilitada. O logaritmo natural o logaritmo de base e, onde e um nmero irracional aproximadamente igual a 2,71828... (chamado Nmero de Euler). , portanto, a funo inversa da funo exponencial. Em termos simples, o logaritmo natural uma funo que o expoente de uma potncia de e, e aparece freqentemente nos processos naturais (o que explica o nome "logaritmo natural"). Esta funo torna possvel o estudo de fenmenos que evoluem de maneira exponencial. Ele tambm chamado de logaritmo neperiano, do nome de seu inventor , o matemtico escocs John Napier (ou John Naper).

SENAI

64

Programao Avanada CLP Siemens S7-300

Monitorao da instruo

SENAI

65

Programao Avanada CLP Siemens S7-300 INSTRUES DE COMPARAO Introduo As instrues de comparao do Simatic so realizadas entre dois nmeros que podem ser dos tipos Inteiro, Duplo Inteiro e Real (ponto flutuante). Instrues com nmeros inteiros: 1. EQ_I igual a (equal to); 2. NE_I diferente de (not equal to); 3. GT_I maior que (greater than); 4. LT_I menor que (less than); 5. LE_I maior ou igual a (less equal to); Instrues com nmeros duplos inteiros: 6. EQ_D igual a (equal to); 7. NE_D diferente de (not equal to); 8. GT_D maior que (greater than); 9. LT_D menor que (less than); 10. LE_D maior ou igual a (less equal to);

SENAI

66

Programao Avanada CLP Siemens S7-300 Instrues de comparao com nmeros inteiros

SENAI

67

Programao Avanada CLP Siemens S7-300 Monitorao das instrues de comparao com nmeros inteiros

SENAI

68

Programao Avanada CLP Siemens S7-300 EXERCCIO DE APLICAO CENTRIFUGADORA DE AUCAR Desejamos desenvolver um programa para automatizar uma centrifugadora de acar. Este equipamento utilizado nas usinas de acar para converter o melao (caldo de cana concentrado) em acar cristal. Processo

Dispositivos de controle LSH (level sensor high): sensor de nvel alto SV (solenoid valve): vlvula solenide VS (vibration sensor): sensor de vibrao TT (temperature transmitter): transmissor de temperatura SS (speed sensor): sensor de movimento (rotao) Condies iniciais para o carregamento SV-1 e SV-2 fechadas Esteira transportadora em movimento Temperatura em 60C (TT) Motor parado

SENAI

69

Programao Avanada CLP Siemens S7-300

Operao 1. Abrir SV-1 para a entrada do melao 2. Quando o melao atingir o nvel desejado, o sensor de nvel LSH enviar um sinal para o fechamento de SV-1 3. O motor da centrfuga dever ser acionado por um tempo pr-ajustado (trs minutos) 4. Decorrido o tempo de centrifugao, o motor dever ser desligado 5. Aps 15 segundos (tempo necessrio para a parada do conjunto aps o desligamento do motor), a Sv-2 ser acionada para o incio da descarga, que deve durar 30 segundos 6. Reincio de um novo carregamento Condies de segurana O processo dever ser interrompido (parada do motor que aciona a centrfuga) caso ocorra pelo menos uma das situaes abaixo: Alta temperatura (TT atuado) Excesso de vibrao (VS atuado) Motor da esteira parado (SS sem sinal)

O equipamento somente entrar em funcionamento novamente se um boto de rearme for acionado. Convenes Vlvulas solenides acionadas = nvel 1 Motor em funcionamento = nvel 1 Temperatura normal = nvel 1

SENAI

70

Programao Avanada CLP Siemens S7-300 Instrues de comparao com nmeros duplos inteiros Descrio As instrues de comparao de nmeros duplos inteiros realizam comparaes entre dois nmeros de ponto flutuante de 32 bits cada. Se a comparao verdadeira, o resultado lgico da operao (RLO) igual a 1. Caso contrrio, igual a 0. Formato de dados do tipo duplo inteiro (DINT)

Exemplos de formato: Mnimo L# -2147483648 Mximo L# +2147483647 Nota: no formato binrio, um nmero inteiro negativo representado pelo complemento de 2 deste mesmo nmero positivo. O programa exemplo a seguir realiza comparaes entre o valor 10 (inteiro simples) e o valor indicado pela memria de palavra MW0, que, quando convertida para palavra duplo inteiro, exibe os 16 bits mais significativos desta palavra.

SENAI

71

Programao Avanada CLP Siemens S7-300

SENAI

72

Programao Avanada CLP Siemens S7-300

EXERCCIO Converter os nmeros decimais abaixo para duplo inteiro (DINT) e realizar as comparaes com a instruo EQ_D. 15 = 44 = 127 = 410 = 23 = 95 = 256 = 525 =

2 16 = 65536 2 18 = 262144 2 20 = 1048576 2 22 = 4194304 2 24 = 16777216

2 17 = 131072 2 19 = 524288 2 21 = 2097152 2 23 = 8388608 2 25 = 33544432

SENAI

73

Programao Avanada CLP Siemens S7-300 INSTRUES DE CONVERSO DE DADOS Formato de nmeros Cdigo BCD O dgito de um nmero decimal pode ser codificado com quatro dgitos binrios. Esta representao deriva do fato que o maior nmero decimal de um dgito, que o nmero 9, necessita de pelo menos quatro posies para a representao binria. Para representar os dez dgitos decimais (de 0 a 9) em cdigo BCD, ser usada a mesma representao que seria utilizada para nmeros binrios de 0 at 9. De 16 combinaes possveis de quatro dgitos binrios, seis no so utilizadas. Exemplo de um nmero em formato BCD:

Nmeros inteiros (integer) O tipo de dados INT um nmero inteiro (de 16 bits). O bit de sinal (bit 15) indica se este um nmero positivo ou negativo (0 positivo e 1 negativo). A faixa de um inteiro, como j foi visto, est entre -32768 e +32767. Um inteiro ocupa uma palavra de memria. Em formato binrio, um inteiro negativo representado como o complemento de dois de um nmero positivo quando inverte o estado do sinal de todos os bits e adiciona 1 ao resultado. Exemplo de complemento de dois de um nmero inteiro:

Nmeros reais Um nmero Real (tambm chamado de nmero de ponto flutuante) um nmero positivo ou negativo que abrange valores tais como 0,339 ou -11,32. Tambm pode ser expresso em forma de nmero em potncia de 10. Por exemplo, o nmero 1024 pode ser escrito desta forma 1,024E3 Este nmero ocupa duas palavras de memria e o sinal definido pelo bit mais significativo (MSB). Os bits restantes representam o expoente e a mantissa. A faixa deste tipo de nmero est entre -3,402823E38 a 3,402823E38.

SENAI

74

Programao Avanada CLP Siemens S7-300 1) Converso de um nmero inteiro para BCD (I_BCD) Descrio Esta instruo l o contedo da entrada IN como um nmero inteiro e o converte para um nmero de 3 dgitos codificado em BCD (compreendido entre -999 e +999). O resultado pode ser visto na sada OUT. Se uma sobrecarga (valor acima da faixa) ocorrer, a sada ENO ser igual a zero. 2) Converso de um nmero BCD para inteiro (BCD_I) Descrio Esta instruo l o contedo da entrada IN como um nmero de 3 dgitos codificado em BCD (+/999) e o converte para um valor inteiro (16 bits). O resultado inteiro exibido na sada OUT. ENO sempre tem o mesmo estado de sinal de EN (enable).

SENAI

75

Programao Avanada CLP Siemens S7-300

SENAI

76

Programao Avanada CLP Siemens S7-300 3) Converso de um nmero duplo inteiro para BCD (DI_BCD) Descrio Esta instruo l o contedo da entrada IN como um nmero duplo inteiro de 32 bits e o converte para BCD de sete dgitos (+/- 9999999). O resultado exibido na sada OUT e se ocorrer uma sobrecarga, a sada ENO desligada. 4) Converso de um nmero BCD para duplo inteiro (BCD_DI) Descrio Esta instruo realiza a operao inversa da instruo anterior. A sada ENO tem sempre o mesmo estado da entrada EN.

SENAI

77

Programao Avanada CLP Siemens S7-300

5) Converso de um nmero inteiro para duplo inteiro (I_DI) Descrio A instruo l o contedo do parmetro IN como um nmero inteiro (16 bits) e o converte para duplo inteiro (32 bits). O resultado pode ser visto na sada OUT. A sada ENO sempre cpia da entrada EN.

SENAI

78

Programao Avanada CLP Siemens S7-300

SENAI

79

Programao Avanada CLP Siemens S7-300 6) Complemento de um de um nmero inteiro (INV_I) Descrio Esta instruo realiza a funo Booleana XOR de um nmero inteiro, ou seja, o complemento de um deste nmero (inverte bit a bit toda a palavra binria 16 bits). 7) Complemento de um de um nmero inteiro duplo (INV_DI) Descrio Esta instruo realiza a funo Booleana XOR de um nmero inteiro duplo, ou seja, o complemento de um deste nmero (inverte bit a bit toda a palavra binria 32 bits).

SENAI

80

Programao Avanada CLP Siemens S7-300

8) Complemento de dois de um nmero inteiro (NEG_I) Descrio A instruo que realiza o complemento de dois de um nmero realiza a operao equivalente a multiplicar este mesmo nmero por (-1), trocando o seu sinal. Por exemplo, de um nmero positivo para um nmero negativo (em 16 bits). o mesmo que escrever este nmero com seu sinal trocado ser for um nmero positivo, o complemento de dois torna-o negativo e vice-versa. 9) Complemento de dois de um nmero inteiro duplo (NEG_DI) Descrio A instruo que realiza o complemento de dois de um nmero realiza a operao equivalente a multiplicar este mesmo nmero por (-1), trocando o seu sinal. Por exemplo, de um nmero positivo para um nmero negativo (em 32 bits).

SENAI

81

Programao Avanada CLP Siemens S7-300

SENAI

82

Programao Avanada CLP Siemens S7-300 INSTRUES DE DESLOCAMENTO E ROTAO DE DADOS 1) Deslocamento de nmero inteiro direita (SHR_I) Descrio Esta instruo usada para deslocar um nmero inteiro para a direita bit a bit (os bits 16 a 31 no so afetados por ela). A entrada N especifica quantos bits sero deslocados. Se N for maior do que 16, o comando age como se N fosse igual a 16. As posies dos bits deslocados da esquerda e que ficariam vagos, so preenchidos com o estado lgico do bit 15 (sinal do nmero - + ou negativo 0 ou 1). O resultado do deslocamento pode ser monitorado na sada OUT. A instruo ativada pela entrada EN, atravs da aplicao de um nvel lgico 1. A sada ENO tem o mesmo nvel de sinal desta entrada.

SENAI

83

Programao Avanada CLP Siemens S7-300

Alterando o valor da entrada N.

SENAI

84

Programao Avanada CLP Siemens S7-300 2) Deslocamento de nmero duplo inteiro direita (SHR_DI) Descrio Esta instruo usada para deslocar um nmero duplo inteiro para a direita bit a bit. A entrada N especifica quantos bits sero deslocados. Se N for maior do que 32, o comando age como se N fosse igual a 32. As posies dos bits deslocados da esquerda e que ficariam vagos, so preenchidos com o estado lgico do bit 31 (sinal do nmero - + ou negativo 0 ou 1). O resultado do deslocamento pode ser monitorado na sada OUT. A instruo ativada pela entrada EN, atravs da aplicao de um nvel lgico 1. A sada ENO tem o mesmo nvel de sinal desta entrada.

SENAI

85

Programao Avanada CLP Siemens S7-300 3) Rotao de palavra dupla direita (ROR_DW) Descrio Esta instruo usada para rotacionar o contedo inteiro da entrada IN bit a bit para a direita. A entrada N especifica a quantidade de bits que devem se rotacionados. Se N maior do que 32, a palavra dupla em N rotacionada por N-1 posies. As posies de bits rotacionados a partir da esquerda so preenchidas pelos estados lgicos dos bits que foram rotacionados para fora do lado direito. O resultado desta rotao pode ser monitorado na sada OUT. Exemplo: rotao de uma palavra dupla binria em 3 bits para a direita.

SENAI

86

Programao Avanada CLP Siemens S7-300

4) Rotao de palavra dupla esquerda (ROL_DW) Descrio Esta instruo usada para rotacionar o contedo inteiro da entrada IN bit a bit para a esquerda. A entrada N especifica a quantidade de bits que devem se rotacionados. Se N maior do que 32, a palavra dupla em N rotacionada por N-1 posies. As posies de bits rotacionados a partir da direita so preenchidas pelos estados lgicos dos bits que foram rotacionados para fora do lado esquerdo. O resultado desta rotao pode ser monitorado na sada OUT. Exemplo: rotao de uma palavra dupla binria em 3 bits para a esquerda.

SENAI

87

Programao Avanada CLP Siemens S7-300

SENAI

88

Programao Avanada CLP Siemens S7-300 INSTRUES DE SALTO Introduo Label (rtulo) como endereamento O endereamento de uma instruo de Jump chamado de Label. Um label consiste de um mximo de 4 caracteres, sendo que o primeiro sempre deve ser uma letra do alfabeto. Os outros caracteres podem ser letras ou nmeros. Por exemplo, SEG3. Um Label de salto indica o destino para o qual voc deseja que a execuo do programa salte. Este label pode ser informado acima de uma instruo bobina. Label como destino O label de destino deve estar no incio de uma lgica. Selecionando a instruo LABEL, uma caixa vazia aparece e digitamos o nome deste. Ele marca o ponto onde o programa ir continuar a execuo aps o salto. Instrues ou segmentos localizados entre o jump e o label no so executados. O label obrigatoriamente deve estar localizado no mesmo bloco (OB, FB, FC) que a instruo jump a que est associada. 1) Jump incondicional (salto incondicional) Esta instruo interrompe o fluxo normal da lgica de controle e provoca o salto do programa para a posio marcada pelo rtulo (label). Ela representada de maneira parecida ao elemento de sada, porm com as letras JMP e o nome do rtulo destino associado.

Quando a instruo JMP ativada atravs de I124.4, toda a seqncia at o LABEL NET5 desabilitada, retomando o funcionamento normal aps este label, presente na lgica Network5. A instruo contida nesta mesma lgica no sofre influncia do salto realizado e executada independentemente da situao da instruo JMP.

SENAI

89

Programao Avanada CLP Siemens S7-300

SENAI

90

Programao Avanada CLP Siemens S7-300 INSTRUES PARA CONTROLE DE PROGRAMAS 1) Funo Master Control Relay (rel de controle mestre) Rel de controle mestre O Mster Control Relay uma chave lgica mestre para energizar ou desenergizar o fluxo de tenso no barramento esquerdo da Network. Quando desenergizado toda a seqncia lgica seguinte zerada (RLO=0) ao invs de ser executada. Se a instruo Mster Control Relay estiver ativa (RLO=1), considera-se que o sistema a partir dela est energizado. Por sua vez, se a lgica estiver inativa (RLO=0), considera-se que o sistema est desenergizado. Obs: as instrues SET e RESET dentro de uma MCR (Mster Control Relay) inativo (desenergizado) no alteram o valor de sada / flag. A instruo de transferncia (=) zera a sada / flag quando MCR est inativo. A) Master Control Relay Activate (MCRA) A instruo MCRA ativa a funo MCR, sendo que todas as outras abaixo devem seguir aps esta. B) Master Control Relay On (MCR<) Esta instruo marca o incio da zona de controle lgico. MCR< abre a rea MCR e marca a pilha deste tipo de instruo, ou seja, conta quantas instrues do tipo MCR so executadas no programa. A pilha pode ter at 8 entradas, o que significa que at oito nveis de controles individuais podem ser includos entre os comandos MCRA e MCRD. C) Master Control Relay Off (MCR>) Esta instruo marca o fim da rea de controle lgico. O MCR> combinado com a instruo MCR< mais prxima. D) Master Control Relay Deactivate (MCRD) Esta instruo desativa a funo MCR. Voc no pode programar nenhuma rea MCR depois de MCRD. Esta instruo uma exigncia para a associao lgica com MCRA.

SENAI

91

Programao Avanada CLP Siemens S7-300

Sem alimentao, a instruo desabilita a seqncia aps ela. O contador continua funcionando, mas sem a transferncia do contedo de MW5

SENAI

92

Programao Avanada CLP Siemens S7-300

Como MW5 est sem contedo (zerado), as instrues ADD-I e MUL_I so executadas, mas com resultado diferente do que deveria ocorrer.

Exerccios: converta o programa anterior para FBD e STL e analise seu comportamento.

SENAI

93

Programao Avanada CLP Siemens S7-300 Converso do programa para STL

SENAI

94

Programao Avanada CLP Siemens S7-300

SENAI

95

Programao Avanada CLP Siemens S7-300 EXERCCIO DE APLICAO CALDEIRA A VAPOR Deseja-se desenvolver um programa para CLP para supervisionar o funcionamento de uma caldeira a vapor do tipo fogotubular, conforme ilustraes abaixo. Caldeira um recipiente metlico cuja funo , entre muitas, a produo de vapor atravs do aquecimento da gua. As caldeiras em geral so empregadas para alimentar mquinas trmicas, autoclaves para esterilizao de materiais diversos, cozimento de alimentos atravs do vapor, ou calefao ambiental. Ilustraes

SENAI

96

Programao Avanada CLP Siemens S7-300

Dispositivos de controle PSL: sensor de baixa presso SV: vlvula solenide BS: fotoclula (detector de chama) I: ignitor B: ventilador (blower) CH: contato NA FCV: vlvula controladora de vazo

SENAI

97

Programao Avanada CLP Siemens S7-300

Descrio Uma caldeira de vapor tem por funo gerar vapor superaquecido que ser utilizado para movimentar bombas e turbinas a vapor. O sistema de segurana atuar somente na partida e na parada do equipamento. Durante a operao normal, este apenas supervisionar as variveis envolvidas, as quais sero controladas pelas FCVs. Seqncia operacional de partida Descrio Pr-requisitos para a partida Presso de gua de alimentao (PSL-1) Presso de combustvel (PSL-2) FCV-2 aberta (CH-2 atuado). Para tanto SV-3 dever aplicar 20PSI no atuador SV-1 e SV-2 fechadas 1. Satisfeitos os pr-requisitos, ao acionarmos o boto de partida, o ventilador (blower) entrar em operao. O sensor CH-1 confirmar esta condio 2. A SV-3 dever fazer com que a FCV-2 abra totalmente (20PSI no atuador), iniciando-se a purga da cmara de combusto 3. O sensor CH-2 confirmar que FCV-2 abriu-se totalmente 4. Decorrido o tempo de purga (10s), o ignitor ser energizado ao mesmo tempo em que SV-2 permitir a entrada de gs piloto. Com isto, teremos a presena da chama piloto 5. Uma vez detectada a presena da chama piloto atravs do sensor BS, teremos a abertura de SV-1 dando incio ao processo de combusto 6. Decorridos 5s aps o incio da combusto, teremos: SV-2 fechada e o ignitor desenergizado SV-3 permitindo a passagem do sinal de controle

Processo

SENAI

98

Programao Avanada CLP Siemens S7-300 Seqncia operacional de parada Descrio A parada da caldeira dever ocorrer quando for acionado o boto de parada ou quando houver alguma anormalidade Condies anormais Baixa presso de combustvel (PSL-2) Baixa presso de gua de alimentao (PSL-1) Alta presso de vapor superaquecido (PSL-3) Falta de chama (BS) Parada do ventilador (CH-1) FCV-2 fechada (CH-2)

Processo 1. SV-1 fechada 2. FCV-2 totalmente aberta, via SV-3 3. Ventilador continuando a operar 4. SV-2 fechada 5. Ignitor desenergizado Convenes Baixa presso de combustvel (PSL-2): nvel 0 Baixa presso de gua de alimentao (PSL-1): nvel 0 Alta presso de vapor superaquecido (PSL-3): nvel 1 CH-1 e CH-2 atuados: nvel 1 Presena de chama (BS): nvel 1 SV-1 e SV-2 energizadas (abertas): nvel 1 SV-3 energizada (20PSI): nvel 1 SV-3 desenergizada (SC): nvel 0

SENAI

99

Programao Avanada CLP Siemens S7-300 2) Chamada de funes (FCs) e funes de sistema (SFCs) CALL (sem parmetros) Descrio Tipos de blocos de programa Blocos de sistema Os blocos de sistema so funes pr-definidas ou blocos de funo integrados ao sistema operacional da CPU. Estes blocos no ocupam nenhum espao adicional na memria do usurio. Os blocos de sistema so chamados pelo programa do usurio e tm a mesma interface, mesma designao e mesmo nmero em todo o sistema S7 (300 ou 400). Ento, voc pode facilmente utilizar o programa do usurio em vrias CPUs. Blocos do usurio So reas providas para administrar o cdigo e os dados de seu programa. Baseado nas necessidades do seu processo, voc pode estruturar seu programa com vrias opes de blocos de usurio. Alguns desses blocos podem ser executados ciclicamente, enquanto outros blocos podem ser executados somente quando necessitados. Blocos de usurio so tambm chamados de blocos de programa.

BLOCOS DE USURIO Blocos de organizao (OB) Forma a interface entre a CPU e o programa do usurio. Pode-se escrever um programa inteiro no OB1 e deixa-lo processando a cada ciclo. Pode-se, porm escrever um programa em diferentes blocos e usar o OB1 para chamar estes blocos quando necessrio. Alm do OB1, o sistema operacional pode chamar outros OBs que reagem a certos eventos, tais como: Interrupo data programada; Interrupo de diagnstico; Interrupo de erros;

SENAI

100

Programao Avanada CLP Siemens S7-300 Interrupo de tempo de ciclo; Interrupo de hardware; Start-up de hardware. Bloco de funo (FB) Um bloco de funo uma funo ou uma seqncia de comandos armazenados em um bloco lgico, onde os parmetros podem ser arquivados em uma memria. O FB utiliza esta memria adicional na forma de um Bloco de Dados Instance. Parmetros passados para o FB e alguns dos dados locais so arquivados neste bloco de dados associado (Instance FB). Outros dados temporrios so arquivados na pilha local (L Stack). Dados arquivados em Instance DB so retidos quando o bloco de funo fechado. Dados arquivados na pilha L Stack no so retidos. Funes (FC) A funo um bloco de operao lgica similar ao bloco de funo para o qual no designado rea de memria. Um FC no necessita de um bloco de dados instance. As variveis locais so arquivadas na pilha local (L Stack) at que a funo esteja concluda, sendo perdidos quando o FC termina a execuo. Bloco de dados (DB) Os blocos de dados so blocos usados pelos blocos lgicos no programa do usurio para armazenar valores. Em contraste com o local de dados temporrios, os dados nestes blocos no so apagados quando o processamento dos blocos lgicos finalizado ou o bloco de dados encerrado. O tamanho mximo possvel para um bloco de dados depende do tipo de CPU utilizada. Por exemplo, para a CPU 314 pode ser de at 8KB. Dependendo de sua relao com os blocos lgicos, existem dois tipos de blocos de dados: Shared Data Blocks (Blocos de dados compartilhados) So blocos que podem ser acessados por todos os blocos lgicos no programa do usurio. Cada bloco de funo (FB), funo (FC) ou bloco de organizao (OB) pode ler ou escrever nos dados compartilhados contidos nestes blocos de dados. Voc pode criar estes tipos de blocos atravs da: Especificao da estrutura do prprio bloco de dados, ou seja, definir e editar a ordem das variveis, seus smbolos e os tipos de dados individualmente; Criao de um bloco de dados com um dado de tipo user-defined (definido pelo usurio UDT). Neste caso, a estrutura do bloco UDT define a estrutura do bloco de dados.

Instance Data Block (Bloco de dados Instance) So blocos de dados relacionados a um bloco de funo (FB) em particular. Eles contm os dados locais deste bloco relacionado. Se outros blocos de funo so chamados sem que as variveis estticas (instncias mltiplas) tenham sido declaradas, o bloco de dados instance da funo chamada tambm contm os dados locais do blocos de funo chamados. Dependendo do tipo de bloco que voc deseja criar ou editar, voc pode usar diferentes mtodos. BLOCOS DE SISTEMA Funo de sistema (SFC) Funo de sistema uma funo pr-programada e testada que integrada na CPU. Algumas das tarefas suportadas por estas funes so a de setar parmetros dos mdulos, comunicao de dados, funes de cpia, etc. Uma SFC pode ser chamada pelo programa, porm sem fazer parte dele (no ocupa memria de trabalho).

SENAI

101

Programao Avanada CLP Siemens S7-300 Blocos de funo de sistema (SFB) Um bloco de funo de sistema parte integral da CPU. Voc pode utilizar um SFB em seu programa sem carregar como parte de seu programa, pois os SFBs so parte do sistema operacional. SFBs devem ser associados a um DB, o qual dever ser transferido para a CPU como parte de seu programa. Bloco de dados de sistema (SDB) Um bloco de dados de sistema uma rea da memria que a ferramenta Step7 gera para arquivar dados necessrios para o controle de operaes. Informaes tais como dados de configurao, conexes de comunicao e parmetros so salvos em SDBs. TIPOS DE BLOCOS Funo de sistema (SFC) CARACTERSTICAS - Arquivados no sistema operacional das CPUs - Usurio pode chamar esta funo (sem memria) - Arquivados no sistema operacional das CPUs - Usurio pode chamar esta funo (com memria) - Blocos de dados para configurao de dados e parmetros

Bloco de funo de sistema (SFB)

Bloco de dados de sistema (SDB)

ESTRUTURA DE PROGRAMA Programa linear O programa inteiro reside em um nico bloco de instruo contnuo. Esta estrutura semelhante a um circuito de rels substitudo por um CLP. O sistema processa instrues individuais sucessivamente. Toda a programao e parametrizao feita no Organization Block 1 (OB1) Programa particionado O programa dividido em blocos, onde cada bloco contm uma lgica especfica para dispositivos ou tarefas. As informaes residentes no bloco de organizao (OB1) determinam a ordem de execuo dos blocos a serem processados. Um programa particionado pode, por exemplo, conter blocos de instrues com os quais os modos de operaes individuais de um processo industrial so controlados. Programa estruturado Um programa estruturado contm blocos de instrues com parmetros definidos pelo usurio (blocos parametrizados). Estes blocos so projetados de forma que possam ser usados universalmente. Os parmetros atuais (os endereos de entradas e sadas) so especificados durante a chamada do bloco. Exemplo de blocos parametrizveis: - O bloco BOMBA contm instrues para uma bomba, com um set de entradas e sadas exigidas para qualquer bomba usada no processo. - O bloco lgico responsvel pelo controle especfico das bombas chama (abre) o bloco BOMBA e fornece informaes para identificar qual bomba ir ser controlada. - Quando o bloco completa a execuo das instrues, o programa retorna ao bloco de chamada (por exemplo, o OB1), o qual conclui as instrues.

SENAI

102

Programao Avanada CLP Siemens S7-300

PROGRAMAO ESTRUTURADA O que programao estruturada? A programao estruturada identifica tipos similares ou repetitivos de funes solicitadas pelo processo e fornece solues genricas que podem ser usadas por vrias outras tarefas. Fornecendo informaes especficas (em forma de parmetros) para os blocos de instrues, o programa estruturado capaz de usar de novo estes blocos genricos. Podem considerar-se como exemplos destes blocos: - Blocos que contenham lgicas comuns para todos os motores AC no sistema do transportador; - Blocos que contenham lgicas comuns a todas as solenides na mquina; - Blocos que contenham lgicas comuns a todos os acionamentos da mquina. Como executado? O programa dentro do OB1 (ou outro bloco) chama estes blocos genricos para a execuo. Assim, dados e cdigos considerados comuns podem ser compartilhados. Quais as vantagens e desvantagens? Ao invs de repetir estas instrues e ento substituir os diferentes endereos para os especficos equipamentos, voc pode escrever as instrues no bloco e ter um programa para passar os parmetros (tais como endereos especficos de equipamentos ou dados) para o bloco. Isto permite a voc escrever blocos genricos que mais que um dispositivo ou processo possa usar. Quando usar uma programao estruturada, voc tem que gerenciar os dados que so arquivados e utilizados pelo programa.

SENAI

103

Programao Avanada CLP Siemens S7-300

EXEMPLO DE UTILIZAO DA INSTRUO CALL CHAMADA DE FUNES (Programao particionada)

SENAI

104

Programao Avanada CLP Siemens S7-300 PROGRAMA EXEMPLO CHAMADA DE FUNES (CALL)

SENAI

105

Programao Avanada CLP Siemens S7-300 FUNES CHAMADAS FUNO FC1

SENAI

106

Programao Avanada CLP Siemens S7-300 FUNES CHAMADAS FUNO FC2

SENAI

107

Programao Avanada CLP Siemens S7-300 FUNES CHAMADAS FUNO FC3

FUNES CHAMADAS FUNO FC4

SENAI

108

Programao Avanada CLP Siemens S7-300 EXERCCIO DE APLICAO PARQUE DE ESTACIONAMENTO Desenvolver uma aplicao para CLP Siemens para automao de um parque de estacionamento com capacidade para 20 veculos, conforme esquema a seguir. UTILIZAR A INSTRUO CALL PARA CHAMADAS DE FUNES.

O parque possui uma via de entrada e outra de sada, ambas com barreiras automticas, funcionando o sistema de acordo com as seguintes condies: Depois de ligado o interruptor de comando (I1) geral deste sistema, pressionando-se o boto S1 da mquina de entrada (Min), esta fornece um bilhete e a barreira de entrada (barreira 1) abre; A abertura da barreira de sada (barreira 2) ocorre quando um bilhete, com pagamento previamente feito, for aceito (S3=1) pela mquina de sada (Mout), colocada antes desta barreira; O fechamento das barreiras s possvel aps os carros ultrapassarem detectores (S2 e S4) colocados no solo, logo a seguir s mesmas. Essa disposio garante que os carros no sejam atingidos pelas barreiras no seu movimento de descida; Quando a lotao do parque for atingida, acende um placar com a indicao ESGOTADO e acionada uma lmpada vermelha (SV), colocada junto barreira de entrada. A mquina de entrada no fornece mais bilhetes e a barreira no abre. Aps sair um veculo, essa lmpada desligada e apagada a indicao ESGOTADO. Se S1 for pressionado, a mquina Min fornece o bilhete e a barreira abre; As barreiras possuem um fim de curso de fechamento e de abertura e so acionadas por motores eltricos. SENAI 109

Programao Avanada CLP Siemens S7-300

O FLUXOGRAMA DE PROCESSO
Representa uma seqncia de trabalho qualquer, de forma detalhada (pode ser tambm sinttica), onde as operaes ou os responsveis e os departamentos envolvidos so visualizados nos processo. conhecido tambm com os nomes de Flow-chart, carta de fluxo do processo, grfico de seqncia, grfico de processamento dentre outros. Principais objetivos: Uma padronizao na representao dos mtodos e os procedimentos administrativos; Podem-se descrever com maior rapidez os mtodos administrativos; Pode facilitar a leitura e o entendimento das rotinas administrativas; Podem-se identificar os pontos mais importantes das atividades visualizadas; Permite uma maior flexibilizao e um melhor grau de anlise.

O fluxograma visa o melhor entendimento de determinadas rotinas administrativas, atravs da demonstrao grfica. (Existem estudos que comprovam que o ser humano consegue gravar melhor uma mensagem, quando esta acompanhada de imagens.) importante ressaltar que os fluxogramas procuram mostrar o modo pelo qual as coisas so feitas, e no o modo pelo qual o chefe diz aos funcionrios que a faam; no a maneira segundo o qual o chefe pensa que so feitas, mas a forma pela qual o Manual de normas e procedimentos manda que sejam feitas. Eles so, portanto, uma fotografia real de uma situao estudada. Etapas para criao de um fluxograma: Escolher a rotina a ser trabalhada Coletar os dados Desenhar a rotina Todo fluxo deve ter incio e fim. Nenhuma simbologia pode ficar solta, sem indicao da continuidade do processo ou com a simbologia de fim. Nunca esquecer das setas no fluxograma e do processo. Sempre que se for enviar um documento, utilizar a simbologia de "documento". Antes do "arquivo", obrigatoriamente tem que haver a simbologia de "documento", j que s se arquivam documentos.

SENAI

110

Programao Avanada CLP Siemens S7-300 Exemplo

Exerccio Leia o texto abaixo e desenhe um fluxograma fazendo uso dos seguintes smbolos:

A empresa no tinha um estoque informatizado e o os pedidos ao estoque ocorriam da seguinte forma: O estoquista ao receber uma solicitao de pea, verifica na listagem do estoque a disponibilidade da mesma. Caso esteja disponvel, a pea entregue ao solicitante e em seguida, efetuada a baixa no estoque. Caso a pea no esteja disponvel, verifica-se junto aos fornecedores de peas*, o tempo de entrega. Informa-se o tempo necessrio ao solicitante. Caso este (solicitante) ainda deseje a pea, o pedido ao fornecedor efetuado imediatamente. Aguarda-se a chegada da pea e a sua entrada no estoque. Em seguida ela entregue ao solicitante e efetuada a baixa no estoque. Considere que o fornecedor sempre tem a pea solicitada disponvel para entrega.

SENAI

111

Programao Avanada CLP Siemens S7-300

Parque de estacionamento para 20 veculos Passos para resoluo 1. Liga interruptor geral; 2. Se S1 pressionado Min fornece bilhete barreira 1 abre se S2 acionado barreira 1 fecha incrementa 1 carro na contagem; 3. Mout recebe bilhete se S3 acionado barreira 2 abre se S4 acionado barreira 2 fecha decrementa 1 carro na contagem 4. Se lotao atingida (=20) lmpada SV acionada Min no fornece mais bilhetes barreira 1 no abre mais. Convenes Entradas I1 liga interruptor geral I124.0 S1 solicita ticket I124.1 S2 sensor de carro da barreira 1 I124.2 S3 recebe ticket I124.3 S4 sensor de carro da barreira 2 I124.4 Sadas Barreira 1 Q124.0 Min (motor que traciona o ticket) Q124.1 Barreira 2 Q124.2 Mout (motor que traciona o ticket) Q124.3 Lmpada SV Q124.4 Fluxograma de processo

SENAI

112

Programao Avanada CLP Siemens S7-300

Liga interruptor geral

FC1

INCIO

FC2

S1 pressionado

NO

S2 acionado

NO

SIM Min fornece bilhete

SIM Mout recebe bilhete

Barreira 1 abre

Barreira 2 abre

S2 acionado

NO

S4 acionado

NO

SIM Barreira 1 fecha

SIM Barreira 2 fecha

Incrementa 1 carro

Decrementa 1 carro

Novo carro

NO

Novo carro

NO

SIM

SIM

SENAI

113

Programao Avanada CLP Siemens S7-300

Liga interruptor geral

FC3

Lotao atingida (=20)

NO

SIM Lmpada SV acionada

Min no fornece bilhete

Barreira 1 no abre

FIM

SENAI

114

Programao Avanada CLP Siemens S7-300 CRIANDO BLOCOS DE DADOS (DB) Introduo A criao de um bloco DB obedece as mesmas regras para a criao de um bloco de programa, sendo que utilizado o mesmo editor de programas (LAD/STL/FBD) para a edio. Criando um novo DB Utilize o mesmo mtodo para criar o DB que foi utilizado para criar um bloco de programa (por exemplo, boto direito do mouse Insert New Object DB Block)

SENAI

115

Programao Avanada CLP Siemens S7-300 Ao se iniciar a edio de um novo DB, o sistema, atravs de uma caixa de dilogo, solicitar a escolha do tipo de DB a ser criado (veja figura anterior). O tipo indicado (shared DB) significa que este bloco de dados compartilhado, ou seja, pode ser acessado por todo e qualquer bloco do programa. Abrindo um DB existente Se o DB j foi editado anteriormente, utilize para acessa-lo o mesmo mtodo que usou para acessar qualquer bloco de programa (por exemplo, um clique duplo sobre seu cone). Para DBs existentes no aparece a caixa de seleo do tipo de DB, pois seu tipo j foi definido anteriormente. Editando um bloco de dados (DB) Utilizando o procedimento anterior, abra o DB criado pouco.

O bloco de dados (DB) uma rea da memria da CPU, orientada a Byte, disponvel para armazenamento de dados. Apesar de orientada a bytes, esta rea pode e deve ser definida pelo usurio livremente, j que no existe formato de dados pr-definidos para ela. A definio desta rea visa facilitar a manipulao de dados no programa do usurio. Assim, se ele precisa definir bits (variveis booleanas) para utilizar na sua lgica, declara a varivel com BOOL. Se por outro lado, necessita de variveis para clculos, pode definir a varivel como REAL. Endereo As variveis contidas no DB so acessadas preferencialmente pelo seu nome simblico. Apesar disto, todas possuem um endereo de sua localizao dentro do bloco e permitem, caso necessrio, que sejam acessadas por este endereo. Os endereos so do tipo BYTE.BIT, mesmo para as variveis definidas como byte, word, dword, etc. Estes endereos so definidos automaticamente pelo sistema logo aps a edio da varivel (nome e tipo da varivel). Nome o nome simblico alfanumrico da varivel. Na maioria dos caso ela ser acessada no programa por este nome simblico. Tipo de dado o tipo de dados da varivel (individual). A definio do tipo deve levar em considerao a sua utilizao dentro do programa. Exemplo: BOOL (booleana ou bit). Valor inicial Campo opcional onde se especifica o valor inicial da varivel. O valor padro para todos os tipos de variveis zero. Comentrio Campo opcional para comentrios / descrio das variveis. Tipos de dados elementares para o Simatic S7 Formato Cada varivel tem seu prprio formato, indicando o modo com o qual o programa ir acess-lo. A estrutura dos bits e seu comprimento so definidos pela designao dos tipos de dados. importante conhecer os vrios tipos de dados, porque algumas instrues requerem tipos de dados especficos. Isto

SENAI

116

Programao Avanada CLP Siemens S7-300 particularmente importante para instrues LAD/FBD, porque o editor confere os tipos de dados quando voc enderea individualmente os elementos. Tipos de dados Os tipos de dados pertencem a uma das seguintes categorias: Dados bsicos ou elementares: estruturas de dados menores que 32 bits, que tm definies de acordo com a norma IEC 61131-3; Dados complexos: estruturas ou campos que so maiores do que 32 bits; Parmetros: blocos de parmetros usados para FBs ou FCs TAMANHO (EM BIT) 1 8 16 32 8 >=16, 8* (N de caracteres) 16 16 32 32 32 16 32 64 1 ou 0 16#A9 16#12AF 16#ADAC1EF5 W ISTO UMA STRING S5T#5s_200ms 123 65539 1.2 ou 34.5E-12 T#2D_1H_3M_45S_12_MS D#2008-04-30 TOD#12:23:45.12 DT#2008-04-30:12.29.13 EXEMPLO

TIPO BOOL BYTE WORD DWORD CHAR STRING* S5TIME INT DINT REAL TIME DATE TIME_OF_DAY DATE_AND_TIME*

Acesso aos elementos de blocos de dados Abrir DB Antes que os dados de um bloco possam ser acessados necessrio que o DB seja aberto. Isto feito atravs da instruo OPN DB (Open DB). Se outro bloco de dados global j estiver aberto, este ser automaticamente fechado. O bloco de dados Instance, associado a um FB, automaticamente aberto pelo sistema. Acesso ao DB A figura a seguir mostra como acessar os dados de um DB. As instrues utilizadas so as mesmas utilizadas com qualquer outro operando. Por exemplo: L T A DBB3 DBW12 DBX4.5 Ler o byte 3 do DB Transferir o contedo do acumulador para a palavra 12 do DB Fazer a lgica AND com o bit 5 do byte 4 do DB

Pode-se tambm acessar os dados dentro de um DB atravs do chamado caminho completo. O caminho completo : nome-do-db.dado Desse modo, na prpria instruo feita a abertura do DB e o acesso ao dado. Esta maneira de acesso prpria para evitar erros de programao e facilita a documentao.

SENAI

117

Programao Avanada CLP Siemens S7-300 CRIANDO UM PROGRAMA COM BLOCOS DE FUNO (FB) E BLOCOS DE DADOS (DB) 1) Criando e abrindo um bloco de funo (FB) O bloco de funo (FB) est abaixo do bloco de organizao (OB) na hierarquia do programa. Ele contm uma parte do programa que pode ser chamada muitas vezes pelo OB1. Todos os parmetros formais e dados estticos do FB so salvos em um bloco de dados (DB) separado, o qual relacionado ao FB correspondente. Para criar um bloco de funo, siga os passos abaixo:

SENAI

118

Programao Avanada CLP Siemens S7-300

Um duplo clique em FB1 abre a tela de programao deste bloco, a qual se parece com a tela do OB1, mas identificada no topo desta como sendo o FB1. Esta programao ser feita utilizando-se smbolos e, para tal, devemos declar-los na Tabela de Declarao de Variveis. Para abri-la basta seguir os passos: 1) Abrir a tabela de declarao de variveis (logo acima da tela de lgicas)

2) Inserir os dados conforme descrito dados de entrada, de sada, etc. Parmetros de entrada (IN): so usados somente com funes (FCs) ou blocos de funes (FBs) para passar dados ao bloco chamado para processamento.

SENAI

119

Programao Avanada CLP Siemens S7-300

Parmetros de sada (OUT): so usados no programa do usurio do Step7 para passar resultados ao bloco chamado.

Parmetros IN/OUT: so usados em FCs e FBs para passar dados para o bloco chamado, processar dados l e armazenar os resultados enviados de um bloco chamado. Parmetros de dados estticos (STAT): dados estticos so os dados locais de um bloco de funo (FB) armazenado em um bloco de dados instance (armazena os parmetros formais e dados estticos dos blocos de funo). Os dados permanecem armazenados at a prxima vez que o FB for processado. Parmetros de dados temporrios (TEMP): dados temporrios so os dados locais para um bloco e so armazenados na Pilha de Dados Locais (L Stack) enquanto o bloco est sendo processado. Dados temporrios no so mais acessveis quando o bloco for fechado e o processamento finalizado. 2) Exemplo: programando trs motores para desligar em seqncia temporizada

SENAI

120

Programao Avanada CLP Siemens S7-300 A) Configure a exibio da representao simblica na tela de programao

B) Monte um programa na tela de FB1 conforme indicado abaixo.

SENAI

121

Programao Avanada CLP Siemens S7-300 Quando a tabela de declarao de variveis est preenchida e o usurio digita os smbolos ao invs dos endereos das instrues, o prprio software Simatic chama as variveis na prpria lgica de programao.

C) Salve o bloco FB1 D) Crie o bloco de funes FB2, declarando previamente as variveis de entrada e de sada dele.

SENAI

122

Programao Avanada CLP Siemens S7-300 Programa

Salve o bloco FB2 E) Crie o bloco de funes FB3, declarando previamente as variveis de entrada e de sada dele.

SENAI

123

Programao Avanada CLP Siemens S7-300 Programa

Salve o bloco FB3 F) Abrir o Organization Block 1 (OB1) com um duplo clique. Obs: ele estar vazio (sem nenhuma programao realizada). Passaremos ao modo de programao baseada em STL.

SENAI

124

Programao Avanada CLP Siemens S7-300

Inserir a Network1 para chamar o bloco FB1

Caso o bloco de dados de mltipla instncia no tenha sido inserido inicialmente no Simatic Manager, o software informa que este no existe e se voc deseja que ele seja gerado.

Se o DB j foi criado anteriormente, pressionando-se a tecla ENTER, o Step7 carrega os simblicos j armazenados em FB1, aguardando que seja feito o endereamento desses simblicos pelo usurio.

Voc deve inserir os operandos desses simblicos na janela de programao STL, conforme indicado a seguir.

SENAI

125

Programao Avanada CLP Siemens S7-300

Insira uma nova Network e repita o procedimento para a chamada de FB2.

Insira a Network 3 e repita os mesmos passos para a chamada de FB3.

SALVE O OB1 Para que o programa funcione corretamente e voc possa realizar a monitorao, deve abrir todos os blocos gerados (OB1, FB1, FB2 e FB3) e envia-los ao CLP. Alm disso, abra tambm os blocos de dados (DB1, DB2 e DB3) e envie todos os parmetros armazenados neles para o CLP.

SENAI

126

Programao Avanada CLP Siemens S7-300

Coloque todos os mdulos em monitorao e ative a entrada digital I124.0, observando o comportamento das instrues em cada um dos blocos (FB1, FB2 e FB3). Os trs blocos esto interligados entre si, atravs da utilizao de instrues de um bloco dentro de outro, sendo possvel dessa maneira o interfaceamento entre eles. Os trs motores partem ao mesmo tempo, sendo um acionado pela dependncia do outro. Cada motor funciona durante seu tempo programado nos temporizadores e desligam aps decorridos estes tempos.

SENAI

127

Programao Avanada CLP Siemens S7-300 EXERCCIO DE APLICAO MISTURADOR AUTOMTICO DE TINTAS UTILIZANDO O RECURSO DE CHAMADA DE BLOCOS DE FUNES (FBs), MONTAR UM PROGRAMA NO STEP7 PARA A AUTOMATIZAO DO SISTEMA A SEGUIR. Um misturador automtico para duas cores de tintas deve ser comandado por meio de um CLP. A operao transcorre da seguinte forma: aps pressionar o boto de partida C0 (botoeira que mantm contato somente enquanto pressionada), a lmpada H0 acende, indicando inicio de operao, a vlvula Y1 abre e a bomba M2 ligada. Quando o nvel da primeira tinta no recipiente de mistura atinge o sensor B1, a vlvula Y1 fechada e a vlvula Y2 aberta, misturando a segunda tinta ao contedo do recipiente. Quando o nvel total de tinta atinge o sensor B2, a vlvula Y2 fechada, a bomba M2 e a lmpada H0 so desligadas e o misturador M1 ativado. Aps 6 segundos o misturador M1 desligado e a tinta j homogeneizada pode ser removida, O misturador pode ser desligado em qualquer ponto da operao por meio do boto de parada de emergncia C6, pelos sensores trmicos F1 ou F2 ligados aos motores do misturador e da bomba, respectivamente, ou pelo sensor B4, que indica enchimento total do recipiente de mistura. A figura 26 apresenta o esquema do misturador. A tabela mostra os sinais de entrada e sada utilizados e descreve seu uso nesta aplicao.

SENAI

128

Programao Avanada CLP Siemens S7-300 ENTRADAS / SADAS I124.0 I124.1 I124.2 I124.3 I124.4 I124.5 I124.6 Q124.0 Q124.1 Q124.2 Q124.3 Q124.4 COMPONENTE FSICO C0 B1 B2 B4 C6 F1 F2 H0 Y1 Y2 M1 M2 COMENTRIOS Chave de partida Sensor de nvel Sensor de nvel Sensor de nvel Chave de parada de emergncia Sensor trmico do misturador Sensor trmico da bomba Lmpada de operao Vlvula de tinta 1 Vlvula de tinta 2 Motor do misturador Motor da bomba

SENAI

129

Programao Avanada CLP Siemens S7-300 INSTRUES PARA CONVERSO DE SINAIS (A/D E D/A) Sinal analgico Quando um dispositivo de medio no usa sinal on / off (digital), mas de tenso ou corrente (valores intermedirios entre o zero e o um), um mdulo de entrada analgico necessrio. Este mdulo conectado aos sensores no campo e condiciona a medio para valores binrios de tal forma que a CPU possa compreend-los. Isto chamado de converso analgico para digital (A/D). Os valores digitalizados so ento usados para comparaes, controle e outras tarefas no programa do usurio.

Representao de valores analgicos Resoluo Os mdulos analgicos tm especificaes de resoluo (valor lido X representao). Esta resoluo corresponde a quantidade de bits de dados usados na palavra binria de 16 bits representada no valor analgico. Se a resoluo tem menos que 15 bits, os dados analgicos so alinhados esquerda. Os bits menos significativos no usados so preenchidos com zeros.

SENAI

130

Programao Avanada CLP Siemens S7-300 A posio mais esquerda (bit mais significativo MSB) a que representa o sinal 0 significa valor positivo e 1 negativo.

O endereamento analgico no compartilha o mesmo registro que o mdulo de sinal digital, isto , os sinais analgicos no S7-300 / 400 no so atualizados a cada Scan. Os dados de entrada so atualizados pela simples leitura dos endereos de entrada (PIW) com seu programa, ou escritos nas sadas com PQW. Quando o programa executa uma instruo usando um endereo analgico (por exemplo, PIW352), os dados so lidos diretamente do barramento de periferia, ou o chamado barramento P BUS. Cada valor analgico composto por 2 Bytes (16 bits). Assim, os endereos analgicos usados em seu programa devem consistir de todos os nmeros para o possvel problema de sobre escrita de dados.

SENAI

131

Programao Avanada CLP Siemens S7-300

Faixa de converso A converso A/D produz um nmero entre +27648 e -27648. Isto representa uma palavra binria de 16 bits, com o bit mais significativo utilizado para determinar se o sinal lido positivo ou negativo. Medio de tenso e corrente atravs da converso A/D

SENAI

132

Programao Avanada CLP Siemens S7-300

Sensores que podem ser conectados nas entradas analgicas possvel conectar diferentes tipos de sensores nas entradas analgicas, dependendo do tipo de medio desejada: Transdutores de tenso; Transdutores de corrente a 2 e a 4 fios; Resistores; Termopares

Cabos utilizados para sinais analgicos Deve-se sempre utilizar cabos de par tranado para sinais analgicos. Isto reduz as interferncias. Conectar ambas as extremidades deste cabo ao terra. Qualquer diferena de potencial entre as extremidades do cabo pode causar correntes equipotenciais na malha e assim provocar distrbios nos sinais analgicos. Se isto ocorrer, voc deve assegurar uma compensao de baixo potencial hmico, alm de aterrar as extremidades desse cabo. Um pouco sobre os termopares Os termopares so dispositivos eletronicos com larga aplicao para medio de temperatura. So baratos, podem medir uma vasta gama de temperaturas e podem ser substitudos sem introduzir erros relevantes. A sua maior limitao a exatido, uma vez que erros inferiores a 1 C so difceis de obter. Uma termopilha o nome que se d a um conjunto de termopares ligados em srie. Um exemplo da aplicao de termopares e termopilhas pode ser a medio de temperaturas em linhas de gs. Como funciona

Em 1822, o fsico Thomas Seebeck descobriu (acidentalmente) que a juno de dois metais gera uma tenso eltrica que funo da temperatura. O funcionamento dos termopares baseado neste fenmeno, que conhecido como Efeito de Seebeck. Embora praticamente se possa construir um termopar com qualquer combinao de dois metais, utilizam-se apenas algumas combinaes normalizadas, isto porque possuem tenses de sada previsveis e suportam grandes gamas de temperaturas.

SENAI

133

Programao Avanada CLP Siemens S7-300 Existem tabelas normalizadas que indicam a tenso produzida por cada tipo de termopar para todos os valores de temperatura que suporta, por exemplo, o termopar tipo K com uma temperatura de 300 C ir produzir 12,2 mV. Contudo, no basta ligar um voltmetro ao termopar e registar o valor da tenso produzida, uma vez que ao ligarmos o voltmetro estamos a criar uma segunda (e indesejada) juno no termopar. Para se fazerem medies exatas devemos compensar este efeito, o que feito recorrendo a uma tcnica conhecida por compensao por juno fria. Caso se esteja a interrogar porque que ligando um voltmetro a um termopar no se geram vrias junes adicionais (ligaes ao termopar, ligaes ao aparelho de medida, ligaes dentro do prprio aparelho, etc...), a resposta advm da lei conhecida como lei dos metais intermdios, que afirma que ao inserirmos um terceiro metal entre os dois metais de uma juno de um termopar, basta que as duas novas junes criadas com a insero do terceiro metal estejam mesma temperatura para que no se manifeste qualquer modificao na sada do termopar. Esta lei tambm importante na prpria construo das junes do termopar, uma vez que assim se garante que ao soldar os dois metais a solda no ir afetar a medio. Contudo, na prtica as junes dos termopares podem ser construdas soldando os materiais ou por aperto dos mesmos. Todas as tabelas normalizadas do os valores da tenso de sada do termopar considerando que a segunda juno do termopar (a juno fria) mantida a exatamente zero graus Celsius. Antigamente isto conseguia-se conservando a juno em gelo fundente (daqui o termo compensao por juno fria). Contudo a manuteno do gelo nas condies necessrias no era fcil, logo optou-se por medir a temperatura da juno fria e compensar a diferena para os zero graus Celsius. Tipicamente a temperatura da juno fria medida por um termistor de preciso. A leitura desta segunda temperatura, em conjunto com a leitura do valor da tenso do prprio termopar utilizada para o clculo da temperatura verificada na extremidade do termopar. Em aplicaes menos exigentes, a compensaao da juno fria feita por um semicondutor sensor de temperatura, combinando o sinal do semicondutor com o do termopar. importante a compreenso da compensao por juno fria; qualquer erro na medio da temperatura da juno fria ir ocasionar igualmente erros na medio da temperatura da extremidade do termopar.

Estrutura de um termopar

SENAI

134

Programao Avanada CLP Siemens S7-300 Linearizao O instrumento de medida tem de ter a capacidade de lidar com a compensao da juno fria, bem como com o fato de a sada do termopar no ser linear. A relao entre a temperatura e a tenso de sada uma equao polinomial de 5 a 9 ordem dependendo do tipo do termopar. Alguns instrumentos de alta preciso guardam em memria os valores das tabelas dos termopares para eliminar esta fonte de erro. Tipos de termopares Os termopares disponveis no mercado tm os mais diversos formatos, desde os modelos com a juno a descoberto que tm baixo custo e proporcionam tempos de resposta rpidos, at aos modelos que esto incorporados em sondas. Est disponvel uma grande variedade de sondas, adequadas para diferentes aplicaes (industriais, cientficas, investigao mdica, etc...). Quando se procede escolha de um termopar deve-se ponderar qual o mais adequado para a aplicao desejada, segundo as caractersticas de cada tipo de termopar, tais como a gama de temperaturas suportada, a exatido e a confiabilidade das leituras, entre outras. Em seguida fornece-se o nosso guia para os diferentes tipos de termopares. Tipo K (Cromel / Alumel) O termopar tipo K um termopar de uso genrico. Tem um baixo custo e, devido sua popularidade esto disponveis variadas sondas. Cobrem temperaturas entre os -200 e os 1370 C, tendo uma sensibilidade de aproximadamente 41V/C. Termoelemento positivo (KP): Ni90%Cr10% (Cromel) Termoelemento negativo (KN): Ni95%Mn2%Si1%Al2% (Alumel) Faixa de utilizao: -270C a 1200C f.e.m. produzida: -6,458 mV a 48,838 mV Tipo E (Cromel / Constantan) Este termopar tem uma elevada sensibilidade (68 V/C) que o torna adequado para baixas temperaturas. Termoelemento positivo (EP): Ni90%Cr10% (Cromel) Termoelemento negativo (EN): Cu55%Ni45% (Constantan) Faixa de utilizao: -270C a 1000C f.e.m. produzida: -9,835 mV a 76,373 mV Tipo J (Ferro / Constantan) A sua gama limitada (-40 a 750 C) a responsvel pela sua menor popularidade em relao ao tipo K. Aplica-se sobretudo com equipamento j velho que no compatvel com termopares mais modernos. A utilizao do tipo J acima dos 760 C leva a uma transformao magntica abrupta que lhe estraga a calibrao. Termoelemento positivo (JP): Fe99,5% Termoelemento negativo (JN): Cu55%Ni45% (Constantan) Faixa de utilizao: -210C a 760C f.e.m. produzida: -8,096 mV a 42,919 mV

SENAI

135

Programao Avanada CLP Siemens S7-300 Tipo N (Nicrosil / Nisil) A sua elevada estabilidade e resistncia oxidao a altas temperaturas tornam o tipo N adequado para medies a temperaturas elevadas, sem recorrer aos termopares que incorporam platina na sua constituio (tipos B, R e S). Foi desenhado para ser uma evoluo do tipo K. Tipo B (Platina / Rdio-Platina) Os termopares tipo B, R e S apresentam caractersticas semelhantes. So dos termopares mais estveis, contudo, devido sua reduzida sensibilidade (da ordem dos 10 V/C), utilizam-se apenas para medir temperaturas acima dos 300 C. Note-se que devido reduzida sensibilidade destes termopares, a sua resoluo de medida tambm reduzida. Adequado para medio de temperaturas at aos 1800 C. Contra aquilo que habitual nos outros termopares, este origina a mesma tenso na sada a 0 e a 42 C, o que impede a sua utilizao abaixo dos 50 C. Em compensao, utiliza cabos de extenso de cobre comum desde que a sua conexo com o termopar esteja neste intervalo (0C a 50C). Os demais termopares necessitam de cabos de ligao com o mesmo material do termopar, sob o risco de formarem com o cobre um "outro termopar", se a conexo estiver a temperatura diferente do instrumento de processamento do sinal (p.ex. transmissor) Termoelemento positivo (BP): Pt70,4%Rh29,6% (Rdio-Platina) Termoelemento negativo (BN): Pt93,9%Rh6,1% (Rdio-Platina) Faixa de utilizao: 0C a 1820C f.e.m. produzida: 0,000 mV a 13,820 mV Tipo R (Platina / Rdio-Platina) Adequado para medio de temperaturas at aos 1600 C. Reduzida sensibilidade (10 V/C) e custo elevado. Termoelemento positivo (RP): Pt87%Rh13% (Rdio-Platina) Termoelemento negativo (RN): Pt100% Faixa de utilizao: -50C a 1768C f.e.m. produzida: -0,226 mV a 21,101 mV Tipo S (Platina / Rdio-Platina) Adequado para medio de temperaturas at aos 1600 C. Reduzida sensibilidade (10 V/C), elevada estabilidade e custo elevado. Termoelemento positivo (SP): Pt90%Rh10% (Rdio-Platina) Termoelemento negativo (SN): Pt100% Faixa de utilizao: -50C a 1768C f.e.m. produzida: -0,236 mV a 18,693 mV Tipo T (Cobre / Constantan) dos termopares mais indicados para medies na gama dos -270 C a 400 C. Termoelemento positivo (TP): Cu100% Termoelemento negativo (TN): Cu55%Ni45% (Constantan) Faixa de utilizao: -270C a 400C f.e.m. produzida: -6,258 mV a 20,872 mV SENAI 136

Programao Avanada CLP Siemens S7-300 O mdulo analgico SM334 (AI4/AO2 8 bits) Caractersticas 4 entradas em um grupo e duas sadas em outro grupo; Resoluo de 8 bits; Mtodo de medio ajustvel por canal; No programavel, medio e tipo de sada definido por hardware; No isolado na interrface de barramento; Eletricamente isolada para tenso.

Alguns tipos de conexes eltricas do mdulo analgico Medio de corrente e sada de corrente

1) Fonte interna 2) Conversor analgico-digital 3) Entradas (medio de corrente) 4) Sadas (corrente de sada) 5) Conversor digital-analgico 6) Interface de barramento 7) Compensao de potencial 8) Funo terra

SENAI

137

Programao Avanada CLP Siemens S7-300 Medio de tenso e sada de tenso

1) Fonte interna 2) Conversor analgico-digital 3) Entradas (medio de tenso) 4) Sadas de tenso 5) Conversor digital-analgico 6) Interface de barramento 7) Compensao de potencial 8) Funo terra

SENAI

138

Programao Avanada CLP Siemens S7-300 Instrues utilizadas para entrada e sada de sinais analgicos Move

Programa exemplo na prxima pgina

SENAI

139

Programao Avanada CLP Siemens S7-300

SENAI

140

Programao Avanada CLP Siemens S7-300 EXERCCIO DE APLICAO CONJUNTO DESUMIDIFICADOR Deseja-se substituir um sistema de comando a rels utilizado para comandar o funcionamento de um conjunto desumidificador de ar comprimido utilizado em um processo produtivo de fio de polister de uma grande fbrica. Para tanto, ser instalado um CLP Siemens no painel de controle deste sistema. Abaixo mostrado o sistema e todos os dispositivos de controle do mesmo.

Descrio A desumidificao consiste em fazer com que o ar comprimido mido da atmosfera entre em contato com um elemento higroscpico (que absorve gua), por exemplo, a slica-gel, acondicionado nos tanques DS-1 e DS-2. Processo DS-1 e DS-2 operam alternadamente, isto , enquanto DS-1 est retirando a umidade do ar comprimido, DS-2 estar sendo regenerado (recuperao da slica-gel saturada atravs da circulao de ar quente).

Procedimento 1. Partindo-se o compressor, SV-4 e SV-8 devero permanecer fechadas at que a presso de descarga (PSL) atinja o valor desejado; 2. Aps a normalizao da presso, DS-1 entrar em operao enquanto DS-2 entrar em processo de regenerao;

SENAI

141

Programao Avanada CLP Siemens S7-300 3. Decorrido um determinado tempo (por exemplo, 5 minutos), a situao inicial ser alterada, isto , DS-1 ser regenerado enquanto DS-2 desumidificar o ar comprimido. Comentrios Caso haja alguma anormalidade como: filtro de ar saturado (PSH) ou alta temperatura de regenerao (TS), o processo dever ser interrompido (SV-3 e SV-7 fechadas). Quando um dos tanques passa pelo processo de regenerao (insero de ar quente para secagem da slica-gel), as vlvulas correspondentes de entrada e sada de ar so abertas. Por exemplo, se DS-1 est neste processo, fecham-se as vlvulas SV-3 e SV-4 e abrem-se as vlvulas SV-1 e SV-2. Convenes Vlvulas abertas = nvel 1 Filtro de ar saturado = nvel 1 Filtro de ar saturado (PSH) = 1 Os sensores de temperatura (TS) enviaro um sinal de tenso para as entradas analgicas do CLP, de forma que o mesmo possa monitorar a temperatura dentro dos tanques e ao mesmo tempo controlar o aquecimento mximo interno, visto que ela no pode ultrapassar determinado valor, pois a slica-gel pode ser queimada. Os termopares utilizados como sensores de temperatura so do tipo K (cromel / alumel), com as seguintes caractersticas: Faixa de operao: -270C a 1000C F.E.M produzida: -6,458mV a 48,838mV

A variao de temperatura dentro dos tanques est na faixa entre +25C e 150C, sendo esta ltima a temperatura mxima permitida no sistema para que a slica-gel no se danifique. Resoluo

Utilizando-se este tipo de termopar, quando o tanque atingir a temperatura mxima (150C), teremos em seus terminais uma tenso de 7,3257mV, a qual ser utilizada como referncia mxima para controle do CLP.

SENAI

142

Programao Avanada CLP Siemens S7-300 Faixa nominal de operao do conversor A/D do carto SM334

SENAI

143

Programao Avanada CLP Siemens S7-300

Controle PID no CLP SIEMENS SIMATIC S7-300


CONCEITOS Proporcional Em matemtica, duas quantidades so chamadas de proporcionais se elas variam da mesma forma, desde que uma das quantidades um mltiplo constante da outra, ou se elas tm a mesma razo constante. Por exemplo: Se um objeto viaja a uma velocidade constante, ento a distncia percorrida proporcional ao tempo gasto na viagem, com a velocidade sendo a constante de proporcionalidade; A circunferncia de um crculo proporcional ao seu dimetro, com a constante de proporcionalidade sendo o PI (); Em um mapa desenhado sob uma escala, a distncia entre dois pontos quaisquer neste mapa proporcional distncia das duas localidades que os pontos representam, com a constante de proporcionalidade sendo a escala utilizada no desenho dele.

SENAI

144

Programao Avanada CLP Siemens S7-300 Derivada Em um clculo a derivada a medio de como uma funo muda quando os valores de suas entradas so alterados. Em outras palavras, pode ser imaginada em como uma quantidade est mudando em determinados pontos dados. Por exemplo, a derivada da posio ou distncia de um carro em alguns pontos no tempo a velocidade instantnea na qual o carro est viajando.

O grfico da funo acima, desenhado em preto, e a linha da tangente desta funo, desenhada em vermelho. A inclinao da linha tangente igual derivada da funo no ponto marcado.

O processo de determinao de uma derivada chamado de diferenciao, que um mtodo de computar a taxa na qual uma quantidade (Y) muda com respeito alterao de uma outra quantidade (X), a qual sempre dependente.

Em cada ponto acima, a derivada a inclinao da linha tangente da curva. SENAI 145

Programao Avanada CLP Siemens S7-300

Outro exemplo de derivada (tangente) A funo derivada o inverso da funo integral. Integral Dada uma funo f(x) de uma varivel real (X) e um intervalo (a, b) de uma linha real, a integral igual rea da regio no plano XY coberta pelo grfico de f, as linhas horizontais de x = a e x = b, com as reas abaixo do eixo X sendo subtradas.

As funes integrais aparecem em muitas situaes prticas. Por exemplo, considerando uma piscina de natao retangular, temos seu comprimento (C), largura (L) e profundidade (P). Se quisermos calcular o volume de gua que ela suporta e s multiplicarmos as trs variveis.

V=CxLxP

SENAI

146

Programao Avanada CLP Siemens S7-300 Se necessitarmos comprar uma lona para cobri-la s calcularmos sua rea:

A=CxL
E se quisermos achar seu comprimento total (de suas bordas)? s somarmos o comprimento de todos os seus quatro lados. Mas, e se essa piscina for oval? E com o fundo desnivelado? Nesse caso, todos os clculos exigiro uma integral em funo das variaes desiguais que ela possui. Por exemplo, a integral da curva abaixo.

A funo integral o inverso da funo derivada. Neste estudo no vamos aprender como calcular todas essas funes, mas sim apenas compreender o que elas significam, pois mais adiante usaremos esses conceitos no estudo do controle PID (Proporcional, Integral, Derivativo) do CLP Siemens.

SENAI

147

Programao Avanada CLP Siemens S7-300 O CONTROLE PID NO CLP SIEMENS O controle PID no Step7 O software de controle PID consiste essencialmente de dois blocos de funo (FBs) que contm os algoritmos das funes para gerao de controle e processamento dos sinais para controladores contnuos ou de passo. um controle puro de software o qual incorpora um bloco de funo padro com a funcionalidade do controlador. O comportamento do controlador em si e as propriedades das funes em medio e ajuste do canal so realizadas e simuladas pelos algoritmos numricos do bloco de funo correspondente. Os dados requeridos para estes clculos cclicos so armazenados em blocos de dados de controle de loop. Um FB necessrio somente uma vez para criar vrios controladores. Todo controlador representado por um bloco DB (data base base de dados), o qual deve ser criado especificamente para a aplicao. Isto significa que o projeto de um controlador especfico limitado pela especificao dos parmetros estruturais e de valores na janela de edio da interface do usurio. Este bloco (DB) criado pela ferramenta de configurao. Os clculos dos algoritmos para certo controlador carregado no processador do S7 no conjunto de intervalo de tempos chamado sampling. Os resultados de clculos e os valores atualizados das variveis de entrada e sada (medio e manipulao de variveis) e os sinais de estado (limites) so armazenados no DB correspondente ou transferidos para o processo perifrico. Overview das funes bsicas Em muitas tarefas de controle, no somente um controlador PID clssico como um elemento de influncia do processo de importncia, mas tambm a funo de processamento de sinais tem lugar de destaque no processo. Um controlador formado pelo software de controle PID padro consiste de um nmero de subfunes, as quais voc pode configurar separadamente. Alm disso, o controlador com funes de algoritmo PID para condicionamento dos setpoints e variveis do processo e de reviso das variveis calculadas e manipuladas so integrados ao mesmo. Funes de exibio e monitoramento tambm esto inclusos.

Overview das funes do bloco Controle Contnuo Criando o controle O software pode ser utilizado para configurar um controlador para uma tarefa de controle especfica. Seu conjunto de funes pode ser planejado para ser limitado. As chamadas chaves de sintonia podem ser usadas para ativar ou desativar sub-funes ou para torn-las inativas. Somente as partes de funo remanescentes na estrutura reduzida tem de ser configuradas.

SENAI

148

Programao Avanada CLP Siemens S7-300 A criao de um controle de malha fechada a partir da estruturao da configurao de parmetros para sua chamada no tempo correto pelo programa de sistema possvel para uma grande gama de controles. Estrutura do controle PID padro Depois de instalado o pacote Step7, o programador possui um bloco de biblioteca chamado PID Control Blocks, que contm cinco blocos de funo especficos para a programao do controlador, dependendo do tipo de controle a ser implementado.

Os blocos de funo (FBs) no pacote de controle PID consistem de blocos controladores para controle contnuo (FB41 - CONT_C) e controle por passos (FB42 - CONT_S) e o bloco FB para modulao por durao de pulso (FB43 - PULSEGEN). Tambm h dois blocos exclusivos para controle de temperatura: (FB58 TCONT_CP) controle de temperatura com sinal contnuo (C) ou por pulsos (P) e o bloco (FB59 TCONT_S) para controle de temperatura com sinais de sada binrios para atuadores de integrao. Os blocos controladores implementam um controlador em software e os dados necessrios para os clculos so armazenados em blocos de dados chamados FBs. Isto permite que esses blocos sejam chamados a qualquer tempo. O bloco FB PULSEGEN usado em conjunto com FB CONT_C para implementar um controlador com sada de pulso para atuadores proporcionais. Funes bsicas Um controlador criado com blocos FB consiste de uma srie de funes que voc pode ativar ou desativar. Alm disso, esse tipo de controlador possui funes integradas disponveis para processamento de setpoints e de variveis. Aplicaes Um controlador PID implementado com estes dois blocos no tem restrio para uma aplicao em particular. O desempenho dele e sua velocidade de processamento dependem somente do tipo de CPU utilizada. Pode ser utilizado em processos de baixa velocidade de processamento: controle de temperatura, nvel de tanques, etc. Ou ento em processos de alta velocidade: vazo de um fludo, velocidade de um motor, etc.

SENAI

149

Programao Avanada CLP Siemens S7-300 Anlise do processo Nota: o comportamento esttico (ganho) e as caractersticas dinmicas (defasagem, tempo morto, tempo de reset, etc.) do processo a ser controlado tem uma influncia significativa na estrutura e projeto do controlador e sobre a seleo das dimenses dos parmetros estticos (componente P) e dinmicos (componentes I e D) Conhecimento preciso do tipo e dos dados caractersticos do processo a ser controlado essencial. Procedimento para a criao de um projeto com controle PID Primeiro passo No Simatic Manager abrir um novo projeto sob o nome PID Iremos utilizar outro modelo de CLP para esta fase final de programao o SIMATIC S7-315-2DP, o qual possui diferenas de configurao de hardware em relao ao S7-312 IFM utilizado at agora. Abrir o Step7 Wizard pelo Simatic Manager

Selecionar a opo de CPU 315-2DP

SENAI

150

Programao Avanada CLP Siemens S7-300 Selecionar o Organization Block 1 em modo Ladder

Dar um nome ao projeto e finalizar essa etapa

Segundo passo Configurar o hardware do novo CLP Definir o barramento e o hardware instalado nos Slots. Duplo clique na opo Hardware.

SENAI

151

Programao Avanada CLP Siemens S7-300 Abrindo a tela do Simatic 300 Station (Configuration), configurar todos os mdulos instalados no barramento. No Slot 1 temos a fonte que a mesma do modelo anterior. No slot 2 encontra-se a CPU deste novo modelo. O Slot 3 no utilizado nesta configurao

No Slot 4 temos o carto de comunicao AS-I, modelo CP 343-2

No Slot 4 est conectado o carto de entradas digitais SM321 (DI 16 entradas X 24Vdc)

SENAI

152

Programao Avanada CLP Siemens S7-300 No Slot 5 temos o carto SM322, sadas digitais (DO 16 sadas a 24Vdc / 0,5A)

Finalmente no Slot 7 temos o carto de interface analgica (AI/AO SM334 4 entradas e 2 sadas com resoluo de 8 bits cada uma)

SALVAR AS CONFIGURAES

Terceiro passo Inserir os blocos de programao do PID (funo FC1) Inserir um novo objeto: Insert New Object Function Block FC1

SENAI

153

Programao Avanada CLP Siemens S7-300

Abrir o bloco FC1 criado Inserir o bloco de controle PID FB41 nele atravs da rvore da biblioteca de smbolos: Libraries Standard Library PID Control Blocks

SENAI

154

Programao Avanada CLP Siemens S7-300 Ainda na tela de programao de FC1, quando selecionado o bloco FB41, este inserido na rea de programao.

SENAI

155

Programao Avanada CLP Siemens S7-300 Continuando nesta janela, abrindo a opo FB Blocks da rvore da biblioteca, vemos que o bloco FB41 foi inserido na relao.

Parmetros de configurao das entradas e sadas

NOTA: OBSERVE QUE OS OPERANDOS SO TOTALMENTE DIFERENTES DA VERSO DE CPU 312 IFM.

SENAI

156

Programao Avanada CLP Siemens S7-300 Operandos de entrada e sada da CPU 315-2DP

Quando damos um nome (operando) ao bloco PID chamado (como bloco de dados Instance DB1), o software informa que o mesmo no existe e pergunta se desejamos crialo automaticamente.

Confirmando a criao de DB1, o mesmo gerado e indicado na tela do Simatic Manager. Quarto passo Configurar a chamada do bloco PID (FB41 controle contnuo de processo) atravs de OB1 Abrir o bloco OB1 e inserir as instrues em Ladder como mostrado. SALVAR OB1

SENAI

157

Programao Avanada CLP Siemens S7-300 Na seqncia, quando abrimos a janela de visualizao de parmetros do bloco de dados DB1, podemos interpretar os valores existentes nas entradas e sadas, bem como a funo dos mesmos.

SENAI

158

Programao Avanada CLP Siemens S7-300 CONTROLES PID COM BLOCOS DE FUNO O CLP Siemens Simatic S7-300 possui cinco tipos de controle PID pr-programados em sua biblioteca e cada um deles tm uma funo especfica dependendo do tipo de controle em malha fechada a ser realizado. A figura a seguir mostra a funo simplificada de cada um deles, bem como a biblioteca onde se encontram.

Controle contnuo com o bloco FB41 CONT_C Introduo O bloco FB41 usado pelos controladores S7 para controlar processos tcnicos com variveis de entrada e de sada com caractersticas contnuas, ou seja, sempre possuem variao de seus valores. Durante o ajuste dos parmetros, voc pode ativar ou desativar subfunes do controlador PID para adapt-lo ao seu processo. Aplicao Voc pode usar o controlador como um controlar PID de setpoint fixo ou em controles em multiloop, tais como em uma cascata ou em lotes. As funes de um controlador esto baseadas em um algoritmo de amostragem com um sinal analgico, estendido se necessrio pela incluso de um estgio gerador de pulsos durante a modulao dos sinais de sada para dois ou trs controladores de passo com atuadores proporcionais. Descrio Alm das funes de setpoint e valores de processo, o FB41 implementa um controlador PID completo com variveis de sada manipuladas e a opo de influenciar os valores manipulados manualmente. A seguir, voc encontrar uma descrio detalhada das subfunes do bloco. Ajuste de setpoint O setpoint inserido no formato de ponto flutuante na entrada SP_INT.

Qualquer nmero em pto flutuante = (-1s) . (1.f) . (2 e-127)

SENAI

159

Programao Avanada CLP Siemens S7-300 Onde: S = BIT DE SINAL (O=Positivo) e (1 = negativo) e = um expoente binrio inteirp = expoente decimal inteiro + 127 f = mantissa em 23 bits com o bit mais significativo igual a 2 -1 e o menos significativo igual a 2 -23 Varivel de processo A varivel de processo pode ser inserida nos formato (I/O) ou em ponto flutuante. A funo CRP_IN = PV_PER (setpoint perifrico) para ponto flutuante em uma faixa entre -100 a + 100% de acordo com a seguinte frmula:

Sada de CRP_IN = PV_PER (100 / 27648)


A funo PV_NORM normaliza a sada de CRP_IN de acorco com a frmula:

Sada de PV_NORM = (sada de CRP_IN) . (PV_FAC / PV_OFF)

Sinal de erro A diferena entre o setpoint e a varivel do processo o sinal de erro. Para suprimir uma pequena oscilao constante devido a quantizao da varivel manipulada (por exemplo, na durao da manipulao de um pulso com PULSEGEN), uma banda morta aplicada ao sinal de erro (deadband). Se DEADB_W = 0, a banda morta est desligada. Algoritmo PID Este algoritmo opera como algoritmo de posio. As aes proporcional (P), integral (I) e derivativa (DIF) esto conectadas em paralelo e podem ser ativadas ou desativadas individualmente. Isto permite os controladores serem configurados. Valor manual possvel alternar entre o modo manual e o automtico. No modo manual, a varivel manipulada corrigida para um valor selecionado manualmente. O integrador (INT) ajustado internamente para LMN (LMN_P-DISV) e a unidade derivativa (DIF) para 0 e relacionada internamente. Isso significa que um chaveamento para o modo automtico no causa nenhuma alterao repentina no valor manipulado. Valor manipulado O valor manipulado pode ser limitado para um valor selecionado usando a funo LMNLIMIT. Os bits de sinalizao indicam quando um limite excedido por uma varivel de entrada. A funo LMN_NORM normaliza a sada do LMNLIMIT de acordo com a seguinte frmula:

LMN = (sada de LMNLIMIT) . (LMN_FAC / LMN_OFF)


SENAI 160

Programao Avanada CLP Siemens S7-300

LMN_FAC tem o valor padro igual a 1 e LMN_OFF igual a 0. O valor manipulado est disponvel tambm no formato perifrico. A funo CRP_OUT converte um valor LMN em ponto flutuante para um valor perifrico de acordo com a seguinte frmula:

LMN_PER = LMN . (27648 / 100)


Inicializao O FB41 CONT_C tem uma rotina completa de reinicializao que roda quando um parmetro de entrada COM_RST = TRUE ajustado. Durante a inicializao, o integrador ajustado internamente para o valor de inicializao I_ITVAL. Quando ele chamado em uma interrupo cclica, continua ento a inicializao neste valor. Todas as outras sadas so ajustadas para os seus valores padro. Diagrama de blocos do controlador PID FB41 CONT_C

SENAI

161

Programao Avanada CLP Siemens S7-300 Parmetros de configurao de entrada de uma instruo PID CONT_C

SENAI

162

Programao Avanada CLP Siemens S7-300

SENAI

163

Programao Avanada CLP Siemens S7-300

Parmetros de sada do controlador FB41 CONT_C

SENAI

164

Programao Avanada CLP Siemens S7-300

SENAI

165

Programao Avanada CLP Siemens S7-300

SENAI

166

Programao Avanada CLP Siemens S7-300

SENAI

167

Programao Avanada CLP Siemens S7-300

SENAI

168

Programao Avanada CLP Siemens S7-300

SENAI

169

Programao Avanada CLP Siemens S7-300

SENAI

170

Programao Avanada CLP Siemens S7-300 EXERCCIOS COMPLEMENTARES 1) CARRO DE TRANSPORTE Elabore o programa PLC em diagrama de contatos, de um carro que se move sobre um trilho e permite, parando acima de uma cuba, limpar peas contidas em um cesto, imergindo-as em um banho de desengraxe durante 30 segundos. O carregamento e a descarga do cesto efetuam-se manualmente em posio alta. Uma ordem de partida de ciclo, bem como uma ordem de fim de descarga, dada pelo operador por meio das botoeiras pc e fd respectivamente. O carro s pode se movimentar em posio alta. A figura abaixo mostra o esquema funcional.

SENAI

171

Programao Avanada CLP Siemens S7-300 2) DIGESTOR Deseja-se desenvolver um programa para controlar as etapas de operao do digestor ilustrado abaixo.

SV: vlvula solenide FT: transmissor de vazo LSL: sensor de nvel baixo CH: sensor (motor em funcionamento) H1: homogeneizador S1: silo para rocha fosfatada Descrio Uma das etapas na fabricao do cido fosfrico a reao qumica entre o cido sulfrico e a rocha fosfatada. Esta operao realizada por um equipamento denominado digestor.

SENAI

172

Programao Avanada CLP Siemens S7-300 Principais usos do cido fosfrico: Indstria de fertilizantes Industria de produo de sal mineral para alimentao animal Indstria de bebidas Usina de acar Indstria farmacutica Formulao de detergentes Abrilhantador de alminio Decapante Processo Este equipamento necessita dos seguintes pr-requisitos para a sua partida: Nvel de rocha fosfatada no silo (LSL-1) Motor do homogeneizador em movimento (CH) Presso de ar comprimido adequada (PSL)

Uma vez satisfeitas essas condies, teremos: 1) 2) 3) 4) Carregamento do digestor com cido sulfrico (acionamento de SV-1), cujo volume ser medido pelo totalizador de vazo (FT). Carregamento do digestor com rocha fosfatada, cuja quantidade ser definida em funo do tempo em que SV-2 ficar aberta (T1). A mistura dever permanecer um determinado tempo (T2) dentro do digestor, para logo em seguida ser descarregada atravs de SV-3. Aps a deteco de nvel baixo da mistura (LSL-2), a vlvula SV-3 dever ser fechada e um novo ciclo de carregamento ser iniciado automaticamente.

Comentrios Caso haja uma pane no equipamento, o sistema de borbulhamento com ar comprimido dever entrar em operao (SV-4). O sistema de controle dever contar com botes de partida e parada (S1 e S2) Convenes Nvel baixo de LSL-1 ou LSL-2 = 1 Totalizador de vazo em FT = 10 pulsos / litro Baixa presso de ar comprimido em PSL = 0 Motor parado = 1 Tempo de carregamento de rocha (T1) = 30s Tempo de permanncia no digestor (T2) = 2 min Vlvulas solenides SV1, SV2 e SV3 abertas = 1 Vlvula solenide SV-4 fechada = 1

SENAI

173

Programao Avanada CLP Siemens S7-300 3) GUILHOTINA Desenvolver uma aplicao para CLP Siemens para automao de uma guilhotina, a qual possui uma lmina acionada por um cilindro de ao simples (retorno por mola), cuja operao de corte ocorre nas seguintes condies: A lmina da guilhotina desce e efetua o corte do material quando o operador carregar e mantiver pressionados dois botes pulsadores (b1 e b2), cada um com uma mo, com um tempo de ligao entre ambos no superior a 0,5s; Se um dos botes estiver travado (permanentemente ligado), a lmina no acionada.

Respeitadas estas condies, o cilindro que comanda a lmina empurra esta e executado o corte. A descida da lmina termina quando um fim de curso (fc) for atuado, regressando a lmina sua posio de repouso por ao de uma mola. Nova operao de corte s possvel aps ambos os botes deixarem de estar pressionados. Se durante a descida da lmina um dos botes for solto, esta deve parar a descida e voltar imediatamente sua posio de repouso (recuada). Alm destas seguranas, h tambm uma barreira de luz infravermelha (IR) que, se cortada, desliga o avano do pisto e retorna a lmina sua posio de recuo. Este funcionamento, que tambm comum em outros tipos de mquinas, destina-se a respeitar uma regra de segurana que tem por finalidade reduzir o risco de acidentes, no caso a mutilao das mos do operador, uma vez que o obriga a utilizar as duas mos para que a guilhotina execute o corte.

SENAI

174

Programao Avanada CLP Siemens S7-300 4) MQUINA DE ENCHIMENTO DE LATAS Elabore o programa PLC para implementar o controle em uma mquina de enchimento de latas composta por trs estaes, as quais realizam, seqencialmente, a dosagem com xarope (X), o enchimento com gua (A) e a colocao da tampa (T) em cada lata. As latas so transportadas sobre pallets igualmente espaados entre si, e o acionamento da esteira transportadora realizado por controle prprio, o qual efetua interrupes peridicas a fim de permitir o correto posicionamento e operao nas latas em cada uma das estaes. O sensor PP identifica a presena de um novo pallet, enquanto o sensor PL identifica a presena de uma lata na primeira estao (dosagem com xarope). Como pode haver pallets sem lata, o controle prev a no-operao das estaes que no tiverem lata, o que leva a um programa com uma estrutura de transio terminal denominada 'fundo-depoo'. A figura ilustra o esquema funcional da mquina.

SENAI

175

Programao Avanada CLP Siemens S7-300 5) MQUINA DE IMPRESSO DE CARTAZES Elaborar um programa para uma mquina de imprimir cartazes, conforme ilustrado na figura. O rolo 1, que contm tinta fornecida pelo dispositivo ligado ao pisto W, arrasta o papel quando o rolo 2 sobe acionado pelo pisto V (o ponto O fixo). Assim, quando o ressalto do rolo 1 aciona o sensor 'a', V ativado, pressionando o papel contra o rolo 1. Quando o sensor 'a' liberado, inicia-se o processo de impresso, ativando-se o pisto W. O fornecimento de tinta continua at o ressalto do rolo 1 acionar o sensor 'b '. Neste momento, o pisto V desativado, permitindo que o rolo 2 liberte o papel. Simultaneamente, ativado o pisto Z para cortar a folha de papel. Quando o sensor 'b' for liberado, a guilhotina sobre a mquina fica pronta para um novo ciclo de trabalho.

SENAI

176

Programao Avanada CLP Siemens S7-300 6) PORTO AUTOMTICO

Desenvolver uma aplicao para CLP Siemens para automatizar a abertura e fechamento de um porto de residncia, conforme a ilustrao a seguir.

As condies de funcionamento so as seguintes: A ordem para abertura do porto fornecida por um emissor (Tx) de comando distncia. Quando o sinal recebido pelo receptor (Rx) existente junto ao porto, este abre e uma lmpada sinalizadora (L1) acende de forma intermitente (pisca-pisca); No final da abertura do porto so atuados interruptores fim de curso (FC1 e FC2), colocados nas posies indicadas acima. Estes fins de curso do a informao de parada dos motores M1 e M2 e para desligar a lmpada sinalizadora L1; O porto dever ficar aberto por 60s, fechando automaticamente ao final deste tempo. Durante o fechamento, a lmpada sinalizadora volta a funcionar de forma intermitente; A operao de fechamento efetuada durante 20s, no existindo interruptores fins de curso para detectar o final deste fechamento; Ainda, durante o fechamento do porto, se o emissor de telecomando for novamente pressionado ou a barreira de infravermelho (IR), existente na parte de dentro do porto, for interrompida, o porto volta a abrir.

SENAI

177

Programao Avanada CLP Siemens S7-300 8) SELECIONADOR DE CAIXAS Elaborar um programa para um dispositivo automtico destinado a selecionar caixas de dois tamanhos diferentes, que se compe de uma esteira rolante de alimentao de caixas, de um dispositivo de deteco que permite reconhecer sem ambigidade o tipo de caixa presente, de trs cilindros pneumticos comandados por eletrovlvulas, de sensores de posio para cada cilindro, sendo Pl (posio inicial) PM (posio mdia) PF (posio final) e de duas esteiras rolantes de sada. O brao (1) empurra as caixas pequenas diante do brao (2) e este as translada sobre a esteira de sada para caixas pequenas. O brao empurra as caixas grandes diante do brao (3) e este as translada para a esteira de sada de caixas grandes. O detector (A) percebe a presena de uma caixa e o detector (B) identifica o tamanho da caixa, pois atua quando ela for do tipo grande, conforme ilustra a figura a seguir.

SENAI

178