clp siemens

105
Área Tecnológica de Mecatrônica CLP SIEMENS

Upload: pablo-souza

Post on 09-Aug-2015

87 views

Category:

Technology


4 download

TRANSCRIPT

  1. 1. rea Tecnolgica de Mecatrnica CLP SIEMENS
  2. 2. rea Tecnolgica Mecatrnica CLP SIEMENS SALVADOR 2 0 0 2
  3. 3. Copyright 2002 por SENAI CIMATEC. Todos os direitos reservados. rea Tecnolgica de Mecatrnica Elaborao: Milton Bastos de Souza Reviso Tcnica: Eduardo Lima II Reviso Pedaggica: Maria Clia Calmon Santos Normalizao: Maria do Carmo Oliveira Ribeiro Catalogao na fonte ________________________________________________________ SENAI CIMATEC Centro Integrado de Manufatura e Tecnologia. CLP SIEMENS. Salvador, 2002. 105.p. il. (Rev.00) I. Sistemas Digitais - CLP I. Ttulo CDD 621.3 ________________________________________________________ SENAI CIMATEC Av. Orlando Gomes, 1845 - Piat Salvador Bahia Brasil CEP 41650-010 Tel.: (71) 462-9500 Fax. (71) 462-9599 http://www.cimatec.fieb.org.br
  4. 4. MENSAGEM DO SENAI CIMATEC O SENAI CIMATEC visa desenvolver um programa avanado de suporte tecnolgico para suprir as necessidades de formao de recursos humanos qualificados, prestao de servios especializados e promoo de pesquisa aplicada nas tecnologias computacionais integradas da manufatura. Com uma moderna estrutura laboratorial e um corpo tcnico especializado, o CIMATEC desenvolve programas de intercmbio tecnolgico com instituies de ensino e pesquisa, locais e internacionais. Tudo isso sem desviar a ateno das necessidades da comunidade, atendendo suas expectativas de formao profissional, suporte tecnolgico e desenvolvimento, contribuindo para uma constante atualizao da indstria baiana de manufatura e para a alavancagem do potencial das empresas existentes ou emergentes no estado.
  5. 5. APRESENTAO O curso de Controladores Lgicos Programveis, objetiva fornecer os subsdios necessrios para que o treinando, esteja a par do atual estgio tecnolgico da instrumentao, aplicada ao controle de processos. Este material enfoca aspectos gerais relacionados ao CLP, com a inteno de ser o mais genrico possvel. No pretendemos com este curso esgotar o tema, mas indicar o caminho, para os que iro atuar na manuteno de equipamentos digitais e projetos de pequenos sistemas de automao utilizando CLPs aplicados no controle de variveis de processos industriais. Esperamos que os treinandos tirem o maior proveito deste material, pois, ele uma sntese do conhecimento de vrios especialistas na rea de Sistemas Digitais.
  6. 6. SUMRIO 1. Histrico dos CLPs................................................................................................. 8 2. Estrutura Bsica de um CLP.............................................................................. 11 2.2 Entradas ......................................................................................................................... 11 2.2 Sada................................................................................................................................ 14 2.3 Unidade Central de Processamento (Central Processing Unit CPU).......... 16 2.4 O que caracteriza o tamanho do CLP? .................................................................. 17 2.5 Famlia de Hardware para PLCs Siemens ............................................................. 17 2.5.1 Caractersticas das CPUs ....................................................................................................17 3. Introduo a Liguagem Siemens...................................................................... 30 3.1 Ladder............................................................................................................................. 30 3.2 STL................................................................................................................................... 36 4. Instrues avanadas da Siemens ................................................................. 44 4.2 Instrues Matemticas ............................................................................................. 46 4.2.1 Exemplos de Casos para PLCs Allen-Bradley..................................................................46 4.2.2 Estudo de Casos para PLCs Siemens ...............................................................................49 4.3 Instrues de Comparao...................................................................................... 55 4.3.1 Estudo de Casos para PLCs da Allen-Bradley..................................................................55 4.3.2 Estudos de Casos para o CLP Siemens............................................................................59 4.4 Instrues de Controle de Programa...................................................................... 61 4.5 Chamada de Subirrotina ............................................................................................ 66 4.5.1 Para PLC Allen-Bradley......................................................................................................66 4.5.2 Chamada de Subirrotina para PLC SIEMENS...............................................................67 4.6 SCL Escala ................................................................................................................. 72 4.6.1 Escala para CLP Allen-bradley.........................................................................................72 4.6.2 Escala em CLP SIEMENS ..................................................................................................74 4.6.3 UNSCALE para CLP SIEMENS .........................................................................................74 5 INSTRUO PID.................................................................................................. 76 5.1 Conceito de PID............................................................................................................ 76 5.2 A Equao PID.............................................................................................................. 77 5.3 Parmetros para o PID Allen-Bradley..................................................................... 78 5.4 Tela de Instalao PID ................................................................................................ 79 5.5 Bloco de Controle PID ................................................................................................ 81 5.6 Indicadores de Status................................................................................................. 82 5.7 Bloco PID para PLCs SIEMENS................................................................................ 83 6 Movimentao de Dados...................................................................................... 87 6.1 Copiar Arquivo.............................................................................................................. 87 6.1.1 Copiar arquivo CLP Allen-Bradley ..................................................................................87 6.1.2 Copia arquivo Pelo CLP SIEMENS(FC81)......................................................................88
  7. 7. 6.2 Preencher Arquivo....................................................................................................... 88 6.2.1 Para CLP Allen-Bradley(FLL)............................................................................................88 6.2.2 Preenchimento para CLP SIEMENS(SFC21).................................................................89 6.3 Deslocar Bit Direita e Deslocar Bit Esquerda................................................ 90 6.3.1 Deslocar Bit para o CLP Allen-bradley ..........................................................................90 6.3.2 Desloca Bits para o CLP SIEMENS.................................................................................91 ANEXO 1 ..................................................................................................................... 95 ANEXO 2 ................................................................................................................... 104 BIBLIOGRAFIA ......................................................................................................... 105
  8. 8. 8 1. Histrico dos CLPs Segundo a NEMA (National Eletrical Manufactures Association), o Controlador Lgico programvel (CLP) definido como aparelho eletrnico digital que utiliza uma memria programvel para o armazenamento interno de instrues especficas, tais como lgica, sequenciamento, temporizao, contagem e aritmtica, para controlar, atravs de mdulos de entradas e sadas, vrios tipos de mquinas e processos. O desenvolvimento dos CLPs comeou em 1968 em resposta a uma requisio da Diviso Hidramtica da General Motors. Naquela poca, a General Motors passava dias ou semanas alterando sistemas de controles baseados em rels, sempre que mudava um modelo de carro ou introduzia modificaes em uma linha de montagem. Para reduzir o alto custo de instalao decorrente destas alteraes, a especificao de controle da GM necessitava de um sistema de estado slido, com a flexibilidade de um computador, mais que pudesse ser programado e mantido por engenheiros e tcnicos na fbrica. Tambm era preciso que suportasse o ar poludo, a vibrao, o rudo eltrico e os extremos de umidade e temperatura encontrados normalmente num ambiente industrial. Abaixo alguns modelos de CLPs. Os primeiros CLPs foram instalados em 1969, fazendo sucesso quase imediato. Funcionando como substitutos de rels, at mesmo estes primeiros CLPs eram mais confiveis do que os sistemas baseados em rels, principalmente devido robustez de seus componentes de estado slido quando comparados s peas mveis dos rels eletromecnicos. Os CLPs permitiram reduzir os custos de materiais, mo-de- obra, instalao e localizao de falhas ao reduzir a necessidade de fiao e os erros associados. Os CLPs ocupavam menos espao do que os contadores, temporizadores e outros componentes de controle anteriormente utilizados.
  9. 9. 9 E a possibilidade de serem reprogramados permitiu uma maior flexibilidade para trocar os esquemas de controle. Talvez a razo principal da aceitao dos CLPs pela industria foi que a linguagem inicial de programao era baseada nos diagramas de contato (ladder) e smbolos eltricos usados normalmente pelos eletricistas. A maior parte do pessoal de fbrica j estava treinada em lgica ladder, adaptando-a rapidamente nos CLPs. Por que usar um CLP? Deveramos estar usando um controlador lgico programvel? Nos anos 70 e inicio dos 80, muitos engenheiros, gerentes de fbrica e projetistas de sistema de controle dedicaram grande parte de seu tempo a debater esta questo, tentando avaliar a relao custo-beneficio. Atualmente, aceita-se como regra geral que os CLPs se tornaram economicamente viveis nos sistemas de controle que exigem mais de trs rels. Considerando-se o baixo custo dos micro-CLPs e o fato dos fabricantes colocarem grande nfase na qualidade e produtividade, a questo do custo deixa praticamente de existir. Alm das redues nos custos, os CLPs oferecem outros benefcios de valor agregado: Confiabilidade. Depois de escrito e depurado, um programa pode ser transferido e armazenado facilmente em outros CLPs. Isto reduz o tempo de programao, minimiza a depurao e aumenta a confiabilidade. Como toda a lgica existe na memria do CLP, no existe qualquer possibilidade de cometer um erro lgico por conta de um erro de fiao. A nica fiao necessria para o fornecimento de energia para as entradas e sadas. Flexibilidade. As modificaes no programa podem ser feitas com pouca digitao. Os OEMs (fabricantes do equipamento original) podem realizar facilmente as atualizaes no sistema, bastando enviar um novo programa em vez de um tcnico. Os usurios finais podem modificar o programa em campo ou, por outro lado, os OEMs podem evitar que os usurios finais alterem o programa (o que uma importante caracterstica de segurana). Funes Avanadas. Os CLPs podem realizar uma grande variedade de tarefas de controle, desde aes simples e repetitivas at a manipulao de dados complexos. Com a adoo dos CLPs, abrem-se muitas alternativas para os projetistas e simplifica-se o trabalho do pessoal de manuteno. Comunicaes. A comunicao com interfaces de operao, outros CLPs ou computadores facilita a coleta de dados e o intercmbio de informaes. Velocidade. Como certas mquinas automatizadas processam milhares de itens por minuto e como os objetos so expostos aos sensores durante apenas uma frao de segundo, muitas aplicaes de automao necessitam da capacidade de resposta rpida dos CLPs.
  10. 10. 10 Diagnstico. A capacidade de localizao de falhas dos dispositivos de programao e o recurso de diagnstico incorporado no CLP permitem que os usurios localizem e corrijam rapidamente os problemas de software e hardware. Outras Caractersticas Hardware e/ou dispositivo de controle de fcil e rpida programao ou reprogramao, com a mnima interrupo na produo. Capacidade de operao em ambiente industrial sem o apoio de equipamentos ou hardware especficos. Sinalizadores de estado e mdulos tipo plug-in de fcil manuteno e substituio. Hardware ocupando espao reduzido e apresentando baixo consumo de energia. Possibilidade de monitorao do estado e operao do processo ou sistema, atravs da comunicao com computadores. Compatibilidade com diferentes tipos de sinais de entrada e sada. Capacidade de alimentar, de forma contnua ou chaveada, cargas que consomem correntes de at 2 A. Hardware de controle que permite a expanso dos diversos tipos de mdulos, de acordo com a necessidade. Custo de compra e instalao competitivo em relao aos sistemas de controle convencionais. Possibilidade de expanso da capacidade de memria. Conexo com outros CLPs atravs de redes de comunicao Aplicaes Tradicionais Seja qual for a aplicao, o uso do CLP permite aumentar a competitividade. Os processos que usam CLPs incluem: empacotamento, engarrafamento e enlatamento, transporte e manuseio de materiais, usinagem, gerao de energia, sistemas de controle predial e de ar condicionado, sistemas de segurana, montagem automatizada, linha de pintura e tratamento de gua. Os CLPs so utilizados nas mais diversas industrias, incluindo alimentos e bebida, automotiva, qumica, plsticos, papel e celulose, farmacutica e siderurgia/metalurgia. Basicamente qualquer aplicao que exija um controle eltrico pode usar um CLP.
  11. 11. 11 2. Estrutura Bsica de um CLP A Estrutura bsica de um controlador programvel adveio do hardware bsico de um computador. Podemos afirmar que um CLP um computador para aplicaes especficas. Para entender como funciona um CLP, necessria uma anlise rpida de seus componentes. Todos os CLPs, dos micros aos grandes CLPs, usam os mesmos componentes bsicos e esto estruturados de forma similar, como mostrado na figura abaixo. Os sistemas CLP consistem de : 1. Entradas 2. Sadas 3. Unidade Central de Processamento (Central Processing Unit CPU) 4. Memria para o programa e armazenamento de dados 5. Fornecimento de alimentao 6. Dispositivo de programao 2.2 Entradas Os terminais de entrada conectados no CLP formam a interface pela qual os dispositivos de campo so conectados ao CLP. Os sinais recebidos por um mdulo de entrada podem vir de dois tipos de sensores: Discretos: Chave limite; botoeira; chave de digitadora (thumbwheel); chave de presso; fotoclula; contato de rel; chave seletora; teclado.
  12. 12. 12 Analgicos: Transdutor de presso; transdutor de temperatura; clula de carga (strain gage); sensores de vazo; transdutores de vibrao; transdutores de corrente; transdutores de vcuo; transdutores de fora. Os sinais eltricos enviados pelos dispositivos de campo ao CLP so normalmente de 120Vca ou de 24Vcc. Os circuitos de entrada no CLP recebem esta tenso vinda do campo e a condicionam de forma que possa ser utilizada pelo CLP. Tal condicionamento necessrio j que os componentes internos de um CLP operam a 5Vcc e devem, portanto, estar protegidos de flutuaes de tenso. Para que os componentes internos fiquem eletricamente isolados dos terminais de entrada, os CLPs empregam um isolador ptico que usa a luz para acoplar os sinais de um dispositivo eltrico a outro. A estrutura interna de um mdulo de entrada pode ser subdividida em seis blocos principais, como mostrado na figura abaixo:
  13. 13. 13 Tabela onde podemos ver a funo de cada bloco: Parte Funo Sensores de campo Informar ao controlador programvel as condies do processo Terminais para conexo dos sensores de campo Permitir a interligao fsica entre os sensores de campo e o controlador programvel. Condicionamento e converso do sinal de entrada Converter os sinais de campo em nveis baixos de tenso, compatveis com o processador utilizado. Indicadores de estado das entradas Proporcionar indicao visual do estado funcional das entradas contidas num mdulo de entrada. Isolao eltrica Proporcionar isolao eltrica entre os sinais vindos do campo e os sinais do processador. Interface/multiplexao Informar ao processador o estado de cada varivel de entrada. Dependendo da natureza do sinal de entrada, podemos dispor dos seguintes tipos de mdulos de entrada: TIPO CARACTERSTICAS DIGITAL (AC) 12 Vac; 24 A 48 Vac; 110/127 Vac; 220/240 Vac DIGTAL (DC) 120 Vdc com isolao 12 Vdc; 12 a 24 Vdc com resposta rpida; 24 a 48 Vdc; 12 a 24 Vdc (lgica negativa) source; 12 a 24 Vdc (lgica positiva) sinking; 48 Vdc source; 48 Vdc sinking ANALGICO 1 a 5 Vdc; 0 a 10Vdc; -10 a +10Vdc; 4 a 20mA. ESPECIAL TTL com suprimento; TTL com dreno; 5 a 30 Vdc selecionvel; 5Vdc contador/ decodificador; 12 a 24Vdc codificador/ contador; termopar; cdigo ASCII; cdigo Gray; pulsos de alta velocidade.
  14. 14. 14 2.2 Sada Os mdulos de sada tambm so considerados como elementos de interface, pois permitem que o processador se comunique com o meio externo. A estrutura interna de um mdulo de sada pode ser subdividida em sete blocos principais, relacionados a seguir: Tabela onde podemos ver a funo de cada bloco: Parte Funo Interface/Demultiplexao Recebe os sinais vindos do processador direcionando-os para as respectivas sadas. Memorizador de sinal Armazena os sinais que j foram multiplexados pelo bloco anterior. Isolao eltrica Proporciona isolao eltrica entre os sinais vindos do processador e os dispositivos de campo. Indicadores de estado de sadas .Proporciona indicao visual do estado funcional das sadas contidas num mdulo de sada Estgio de Potncia Transforma os sinais lgicos de baixa potncia vindos do processador em sinais de potncia, capazes de operar os diversos tipos de dispositivos de campo Terminais para conexo dos dispositivos de campo Permite a conexo fsica entre CLP e os dispositivos de campo. Dispositivos de campo Consiste em dispositivos eletromecnicos que atuam no processo/equipamento, em funo dos sinais de controle enviados pelo CP.
  15. 15. 15 Dependendo da natureza dos dispositivos de campo e do tipo de sinal de controle necessrio para comand-los, podemos dispor dos seguintes tipos de mdulos de sada: TIPO CARACTERSTICAS Digital (AC) 12Vac; 24 a 48Vac; 120Vac; 220/240Vac; 120Vac com isolao. Digital (DC) 12 a 60Vdc; 12 a 24Vdc com resposta rpida; 24 a 48Vdc; 12 a 24Vdc com suprimento; 12 a 24Vdc com dreno; 48Vdc com suprimento; 48Vdc com dreno. Analgico 1 a 5Vdc; 0 a 10Vdc; -10 a +10Vdc; 4 a 20mA. Especial TTL com suprimento; TTL com dreno; 5 a 30Vdc selecionvel; contato NA; contato NF; sada em ASCII; servo-motor; motor de passo. Os circuitos de sada funcionam de maneira similar aos circuitos de entrada: os sinais emitidos pela CPU passam por uma barreira de isolamento antes de energizar os circuitos de sada. Os CLPs utilizam vrios circuitos de sada para energizar seus terminais de sada: rels, transistores e triacs. Rels. Os Rels podem ser usados com alimentao alternada ou contnua. Os rels eletromagnticos de CLPs tradicionais aceitam correntes de at alguns ampres. Os rels suportam de forma melhor os picos de tenso porque contm uma camada de ar entre seus contatos que elimina a possibilidade de ocorrncia de fuga. No entanto, so comparativamente lentos e sujeitos a desgaste com o tempo. Transistores. Os transistores chaveiam corrente contnua, so silenciosos e no contm peas mveis sujeitas a desgaste. Os transistores so rpidos e podem reduzir o tempo de resposta, mas suportam cargas de, no mximo, 0,5A. Certos tipos especiais de transistores, os FETs (Transistores de Efeito de Campo) podem aceitar cargas maiores, normalmente de 1A. Triacs. Os triacs chaveiam exclusivamente corrente alternada. Como os transistores, as sadas triacs so silenciosas, no tem peas mveis sujeitas a desgaste, so rpidas e transportam cargas de at 5A. Obs. As sadas de estado slido (triacs e transistor) podem ser danificadas e destrudas em caso de sobre tenso ou sobrecarga.
  16. 16. 16 Os mdulos de sada podem acionar os seguintes tipos de dispositivos de sada: Discretos: Controladores de motores, indicadores de painel, contator, vlvula solenide, display, bobina de rel, sistemas de alarme e segurana, sirena. Analgicos: Acionadores AC, vlvula de controle, acionadores DC. 2.3 Unidade Central de Processamento (Central Processing Unit CPU) A CPU, formada por um microprocessador e um sistema de memria, o principal componente do CLP. A CPU l as entradas, executa a lgica segundo as instrues do programa de aplicao, realiza clculos e controla as sadas, respectivamente. Os usurios de CLPs trabalham com duas reas da CPU: Arquivo de Programas e Arquivo de Dados. Os Arquivos de Programa contm o programa de aplicao do usurio, os arquivos de sub-rotina e as rotinas de falha. Os Arquivos de Dados armazenam dados associados com o programa, tais como status (condio) de entrada e sada, valores predefinidos e acumulados de contadores/temporizadores e outras constantes e variveis. Juntas, estas duas reas so chamadas de memria de aplicao ou memria do usurio. Veja a figura abaixo: O 0 Sada MEMRIA I 1 Entrada S 2 Status B 3 Binrio 0 Sistema ARQUIVO DE DADOS T 4 Temporizador 1 Reservad a C 5 Contador 2 ladder ARQUIVO DE PROGRAMA R 6 Controle 3 ladder N 7 Inteiro 4 Ladder F 8 Ponto Flutuante 225 Ladder X 225 Ainda dentro da CPU encontra-se um programa executvel ou Memria do Sistema que direciona e realiza as atividades de operao, tais como a execuo do programa do usurio e a coordenao de varreduras das entradas e atualizaes das sadas. A memria do sistema, programada pelo fabricante, no pode ser acessada pelo usurio.
  17. 17. 17 2.4 O que caracteriza o tamanho do CLP? Vrios critrios so utilizados para classificar um CLP como micro, pequeno, mdio ou grande, entre eles: funcionalidade, nmero de entradas e sadas, custo e dimenses fsicas. Os CLPs podem ser de Estrutura Fixa ou Estrutura Modular. Estrutura Fixa. So unidades que j incluem o processador, a fonte de alimentao e as E/S reunidas em um s bloco. Estrutura Modular. aquele que tem componentes separados, porm interligados e podem ser expandidos com o acrscimo de mais mdulos de E/S no chassi. 2.5 Famlia de Hardware para PLCs Siemens 2.5.1 Caractersticas das CPUs O SIMATIC S7 consiste dos seguintes tipos de PLCs, classificados de acordo a suas performance: SIMATIC S7-200 um PLC compacto MicroPLC, usados para aplicaes que tenham baixssimas performances. SIMATIC S7-300 um minecontrolador modular designado para aplicaes de mdia performance. SIMATIC S7-400 designado para aplicaes de media para auta performance.
  18. 18. 18 Caractersticas das CPUs Siemens CPU S7-300 Descrio MLFB CPU CPU 313, 12KB, mx.256 I/O; 0.6s 6ES7313-1AD03-0AB0 Standard CPU 314, 24KB, mx. 1024 I/O; 0.3s 6ES7314-1AE04-0AB0 CPU 315, 48KB, mx. 1024 I/O; 0.3s 6ES7315-1AF03-0AB0 CPU 315-2 DP, 64KB, mx. 8192 I/O,incl DP; 0.3s 6ES7315-2AF03-0AB0 CPU 316-2DP, 128KB, mx. 16384 I/O, incl DP M/S; 0.3s 6ES7316-2AG00-0AB0 CPU 318-2DP, 512KB, mx. 65536 I/O, MPI 12 Mbits/s; incl DP M/S; 0.1s 6ES7318-2AJ00-0AB0
  19. 19. 19 CPU CPU 312, 16KB, mx.256 I/O; 0.2s Carto MMC requerido 6ES7312-1AD10-0AB0 Standard CPU 314, 48KB, mx.1024 I/O; 0.1s Carto MMC requerido 6ES7314-1AF10-0AB0 Nova Gerao CPU 315-2 DP, 128KB, mx. 1024 I/O,incl DP; 0.1s Carto MMC requerido 6ES7315-2AG10-0AB0 CPU CPU312C, 16KB, 10ED, 6SD, 2 cnt (10kHz), 0.2 s Carto MMC requerido 6ES7312-5BD00-0AB0 Compacta CPU313C, 32KB, 24ED, 16SD, 4+1EA,2SA, 3cnt(30kHz), 0.1s Carto MMC requerido 6ES7313-5BE00-0AB0 CPU313C-2 PtP, 32KB, 16ED,16SD,3cnt(30k Hz), PtP, 0.1s Carto MMC requerido 6ES7313-6BE00-0AB0 CPU313C-2 DP, 32KB, 16ED,16SD,3cnt(30k Hz), DP, 0.1s Carto MMC requerido 6ES7313-6CE00-0AB0 CPU314C-2 PtP, 48KB, 24ED, 16SD, 4+1 EA, 2SA, 4 cnt. (60kHz), PtP, 0.1s Carto MMC requerido 6ES7314-6BF00-0AB0 CPU314C-2DP, 48KB, 24ED, 16SD, 4+1EA, 2SA, 4 cnt. (60kHz), DP, 0.1s Carto MMC requerido 6ES7314-6CF00-0AB0 CPU Fail- Safe CPU 315F-2DP; 128KB. Carto MMC requerido 6ES7315-6FF00-0AB0 MMC Micro carto de memria 64 kbytes Ver Nota ***** 6ES7953-8LF00-0AA0 Micro carto de memria 128 kbytes Ver Nota ***** 6ES7953-8LG00-0AA0 Micro carto de memria 512 kbytes Ver Nota ***** 6ES7953-8LJ00-0AA0 Micro carto de memria 2 Mbytes Ver Nota ***** 6ES7953-8LL00-0AA0 Micro carto de memria 4 Mbytes Ver Nota ***** 6ES7953-8LM00-0AA0
  20. 20. 20
  21. 21. 21 Fontes e Chassis Os chassis e as fontes de alimentao modulares fornecem flexibilidade na configurao de sistema. Selecionando o chassi, a fonte de alimentao, e os mdulos apropriados do processador central e de E/S, voc pode criar um sistema do controlador projetado especificamente para sua aplicao. Quatro fontes de alimentao esto disponveis para atender as exigncias de potncia do seu sistema; trs fontes de alimentao de entrada CA e uma de entrada CC. S7-300 BG Descrio MLFB TRILHOS TRILHO 160mm 6ES7390-1AB60-0AA0 TRILHO 482mm 6ES7390-1AE80-0AA0 TRILHO 530mm 6ES7390-1AF30-0AA0 TRILHO 830mm 6ES7390-1AJ30-0AA0 TRILHO 2000 mm 6ES7390-1BC00-0AA0 PS 307 Fonte de Alimentao - AC120/230V;DC24V;2A 6ES7307-1BA00-0AA0 Fonte de Alimentao - AC120/230V;DC24V;5A 6ES7307-1EA00-0AA0 Fonte de Alimentao - AC120/230V;DC24V;10A 6ES7307-1KA00-0AA0 PS 305 Fonte de Alimentao - 24DC/48/60/110V ; 24DCV ; 2A 6ES7305-1BA80-0AA0
  22. 22. 22 MDULOS DE ENTRADAS E SADAS Mdulos de Entradas e Sadas Digitais so: S7-300 Descrio MLFB SM Ent. Digital 16 x 24Vdc, isolada NEW! 6ES7321-1BH02-0AA0 DIGITAL Ent. Digital 16 x 24Vdc, isolada, leitura Neg. 6ES7321-1BH50-0AA0 Ent. Digital 32 x 24 Vdc 6ES7321-1BL00-0AA0 Ent. Digital 16 x 120/230 Vac 6ES7321-1FH00-0AA0 Ent. Digital 32 x 120 Vac 6ES7321-1EL00-0AA0 Ent. Digital 8 x 120/230Vac 6ES7321-1FF01-0AA0 Ent. Digital 8 x 120/230Vac; pontos isolados um a um 6ES7321-1FF10-0AA0 Ent. Digital 16 x 24 Vdc, capac. interrupo e diagnose 6ES7321-7BH00-0AB0 Ent. Digital 16 x 24 Vdc, p/ larga faixa de temp. 6ES7321-1BH82-0AA0 Ent. Digital 16 x 48 - 125 Vdc p/ larga faixa de temp. 6ES7321-1CH80-0AA0 Ent. Digital 32 x 24 Vdc p/ larga faixa de temperatura 6ES7321-1BL80-0AA0 Sada Digital 8 x 24Vdc, 2A 6ES7322-1BF01-0AA0 Sada Digital 16 x 24Vdc; 0,5 A 6ES7322-1BH01-0AA0 Sada Digital 32 x 24 Vdc; 0,5 A 6ES7322-1BL00-0AA0 Sada Digital 16 x 120 Vac; 0,5 A 6ES7322-1FH00-0AA0 Sada Digital 32 x 120 Vac; 1 A; isolada (larg. dupla) 6ES7322-1EL00-0AA0 Sada Digital 8 x 120 /230 Vac; 1 A 6ES7322-1FF01-0AA0 Sada Digital 8 x Rele; 24Vdc/230Vac;2A 6ES7322-1HF01-0AA0 Sada Digital 8 x Rele; 24Vdc/230Vac;5A verif. conector 6ES7322-1HF10-0AA0 Sada Digital 8 x Rele; 24Vdc/230Vac;5A p/ carga indutiva verif. conector 6ES7322-5HF00-0AB0 Sada Digital 16 x Rele; 24Vdc/230Vac; 2A 6ES7322-1HH01-0AA0 Sada Digital 8 x 24 Vdc; 5A ou 230 Vac,5A para larga faixa de temp. 6ES7322-1HF80-0AA0 Sada Digital 8 x 48-125V, 1.5A para larga faixa de temp. 6ES7322-1CF80-0AA0 Sada Digital 8 x 120 Vac; 2 A; pontos isolados um a um 6ES7322-5FF00-0AB0
  23. 23. 23 Sada Digital 8 x 24Vdc; 0,5A; capac. diagnose 6ES7322-8BF00-0AB0 Ent. Dig. 8 x 24Vdc + Sada Dig. 8 x 24 Vdc; 0,5A 6ES7323-1BH01-0AA0 Ent. Dig. 16 x 24Vdc + Sada Dig. 16 x 24 Vdc; 0,5A 6ES7323-1BL00-0AA0 Mdulos de Entradas e Sadas Analgicos SM Ent. Analgica 8 x 13 bits; I/U;PT100 6ES7331-1KF00- 0AB0 ANALGICO Ent. Analgica 8 x 12/14+S bits; I/U;PT100,Ni100;Th ermo 4 Ent. p/ resist. 6ES7331-7KF02- 0AB0 Ent. Analgica 2 x 12/14+S bits; I/U; PT100; Ni100; Thermo 1 Ent. p/ resist. 6ES7331-7KB02- 0AB0 Ent. Analgica 2 x 12/14+S bits; I/U; PT100; Ni100; Thermo; para larga faixa de temp. 1 Ent. p/ resist. 6ES7331-7KB82- 0AB0 Ent. Analgica 8 x 16 bits; I/U; isolada 6ES7331-7NF00- 0AB0 Ent. Analgica 4/8 x 16 bits; I/U; isolada 6ES7331-7NF10- 0AB0 Ent. Analgica 2 x HART 0/4-20 mA p/ IM153-2 6ES7331-7TB00- 0AB0 Ent. Analgica 8 x 16 bits , PT100/200/1000 NI100/120/200/500/ 1000 6ES7331-7PF00- 0AB0 Ent. Analgica 8 x 16 bits Thermopar Tipo B, E, J, K, L, N, R, S, T. 6ES7331-7PF10- 0AB0 Sada Analgica 2 x 12+S Bits; I/U 6ES7332-5HB01- 0AB0 Sada Analgica 2 x 11+S Bits; I/U; para larga faixa de temp. 6ES7332-5HB81- 0AB0 Sada Analgica 2 x 0-20 mA HART 6ES7332-5TB00- 0AB0 Sada Analgica 4 x 11+S Bits; I/U 6ES7332-5HD01- 0AB0 Sada Analgica 8 x 6ES7332-5HF00-
  24. 24. 24 11+S Bits; I/U 0AB0 Sada Analgica 4 x 15 Bits; I/U; isolada 6ES7332-7ND00- 0AB0 Ent. Analog. 4x 8 Bits; I/U + Sada Analog. 2 x 8 Bits; U/I 6ES7334-0CE01- 0AA0 Ent. Analog. 4 x 12 Bits + Sada Analog. 2 x 12 Bits; 0-10V / PT100 2 EA p/ PT100 6ES7334-0KE00- 0AB0 Ent + Sai Analog 4AI, 2AO, 12 bits 0- 10V PT100 6ES7334-0KE80- 0AB0 Ent + Sai Analog 4I, 14 bits/4O, 11 ou 12 bits 6ES7335-7HG01- 0AB0 EXERCCIO Observe o cdigo de cada placa do CLP e levante as caractersticas das placas a partir das tabelas das pginas anteriores. Fonte Cdigo de catlogo: Tenso de entrada nominal: Variao da tenso de entrada: Potncia de entrada: Corrente de Sada: Fusvel: Corrente da fonte do usurio: Placa CPU Cdigo de catlogo: Memria do usurio: Nmero de pontos de E/S: Mximo de E/S analgicas (local): Tempo de Varredura do Programa / Kpalavra: Tempo de varredura de E/S: Nmero Mximo de Chassis: Nmero mximo de mdulos de E/S (local): Portas de Comunicao:
  25. 25. 25 Memria de Backup: Bateria para RAM: Consumo de corrente da CPU: Placa 1 Cdigo de catlogo: Entrada ou sada: Digital ou analgica: Nmero de entradas/sadas: Tipo AC ou DC: Tenso de operao: Aplicaes:
  26. 26. 26 Placa 2 Cdigo de catlogo: Entrada ou sada: Digital ou analgica: Nmero de entradas/sadas: Tenso de operao: Corrente Mxima por Sada: Corrente Mxima por Mdulo: Tipo de Contatos: Aplicaes: Placa 3 Cdigo de catlogo: Entrada ou sada: Digital ou analgica: Nmero de entradas/sadas: Faixa de tenso/corrente de operao: Tempo de atualizao: Resoluo mxima (bits): * Pacotes de Configurao fornecidos juntamente com as placas. ** Necessrio o uso de ferramentas de configurao (veja em SW) *** Cabos RS232C. Ver Manuais e Acessrios **** Pacote de configurao disponvel com o firmware, verifique em "S7-300 / outros" *****p/ CPU31X Nova Gerao, CPU31XC, IM151
  27. 27. 27 Endereamento Bits, Bytes e Palavras Bit: Dgito Binrio (BInary digiT) a menor quantidade de informao possvel. Tem dois estados: 0 e 1. 0 (zero) corresponde a desligado, desativado, off, aberto, apagado. Byte: Conjunto de 8 bits, que corresponde a 1 caractere: 1 letra, 1 nmero ou 1 smbolo grfico: < > , . : ? / { } [ ] + = - _ * & % $ # @ ! Palavra: Nmero de bits que podem ser manipulados simultaneamente por um sistema. Na famlia SLC 500, a palavra de 16 bits. Numerao das Placas / Slots Os Slots so numerados da esquerda para direita, contando a partir de um. O slot 1 reservado para a fonte de alimentao, o slot dois para CPU e o 3 para o carto de comunicao. Os outros Slots so usados para cartes de I/O. Caso haja mais de um rack, a numerao continua a partir do ltimo slot do rack anterior. As placas assumem o nmero do slot onde esto encaixadas.
  28. 28. 28 Endereamento de Entradas e Sadas Q125.0 Nmero da entrada ou sada Nmero do Byte surgerido pelo programa S7. Tipo: I = entrada Q = Sada Este exemplo mostra o endereo de uma sada digital (on-off), a sada 0 da Byte 125. Caso a sada (ou entrada) fosse analgica o endereo fica estabelecido da seguinte forma PQBX (endereo do Byte), PQWX (para dois Bytes, X o endereo do primeiro Byte) e PQDX (para quatro Bytes, X o endereo do primeiro Byte). O mesmo procedimento feito para endereamento de entrada fsica (I) e memria(M). Assim, substitui a letra Q pelas letras I e M quando estiver referenciando a entradas fsicas e endereos de memria respectivamente. Endereamento de Bits e Palavras Os endereos identificam reas da memria RAM e so compostos de caracteres alfanumricos separados por delimitadores. O ponto para acessar bits. Exemplos: M100.7 um endereo de elemento, onde o ponto separa o endereo do Byte de memria (100) do oitavo bit. MW100 enderea uma posio de memria de 16 bits, onde 100 equivale ao primeiro bytes da palavra (Word). 1.2.2. Constantes Use esse mtodo quando fornecer constantes para parmetros da instruo. Para fornecer uma constante hexadecimal: digite o valor hexadecimal seguido pela letra H (Hexadecimal). Para fornecer uma constante binria: digite o valor binrio seguido pela letra B (Binrio). Por exemplo: digite 1010111101B, o mostrador exibe o equivalente hexadecimal (02BDh). Para fornecer uma constante decimal: digite o valor decimal.
  29. 29. 29 Diagrarma de pinagem para a CPU S7-314 IFM Diagrarma de Pinagem da CPU 314 IFM Modos de Operao RumP modo programao Permite alterao no programa que est sendo executado pelo CLP. Stop modo remoto Desabilita todas as Sadas. No permite execuo de programas residentes na CPU. RUN modo execuo Executa o programa. No permite que o programa seja alterado. Habilita as Sadas. MRES Limpa as Mmorias Limpa as memrias de usurios do CLP e faz o reset de falha (deve ser pressionado durante 3 segundos aproximadamente).
  30. 30. 30 O modo de operao selecionado pela chave rotativa que fica na frente da CPU. 2.6 Linguagens de Programaao de CLPs A norma IEC 1131 visa normatizar os controladores lgicos programveis (CLP). Essa norma composta de 5 partes: 1. Informaes gerais e caractersticas dos CLPs. 2. Equipamentos eltricos e mecnicos requeridos. 3. Linguagens de programao de CLPs. 4. Guia de auxlio ao usurio no projeto de sistemas de automao. 5. Comunicao entre CLPs de diferentes fabricantes. Neste material so mostrados os aspectos bsicos do diagrama de contatos, ou diagrama escada (mais comumente chamado de diagrama Ladder), por ser a linguagem de programao de CLPs mais difundida no meio tcnico. mostrada tambm a linguagem STL, de propriedade da SIEMENS, que, apesar de no seguir a norma, a linguagem implementada que mais se aproxima do IL, normatizada pela IEC 1131-3 (IEC, 1992). O STL foi escolhido para ser utilizado neste trabalho por ser uma linguagem texto, permitindo, assim, a gerao automtica do programa para o compilador do CLP a partir de uma ferramenta computacional. J o Ladder, apesar de no permitir tal gerao, segue a padronizao da norma IEC 1131-3. 3. Introduo a Liguagem Siemens 3.1 Ladder Um degrau do diagrama Ladder (SIEMENS 1966a) composto por duas partes: a primeira, sempre esquerda, representa uma expresso lgica. A segunda, direita, pode representar um sinal de sada, uma memria ou um comando especial. Os sinais de entrada e a leitura dos flags internos so representados por duas barras paralelas, indicando contato eltrico caso o sinal seja verdadeiro, ver figura abaixo. PRORunPRUS Stop Run MRes
  31. 31. 31 Sinal de entrada no diagrama Ladder. Duas barras paralelas cortadas em diagonal representam a lgica inversa do sinal Sinal de entrada inversa no diagrama Ladder. A lgica e representada por dois sinais em srie, ou seja, caso um dos sinais seja falso, o circuito aberto, tornando falso o sinal de sada. A figura abaixo mostra a lgica e. Lgica e no diagrama Ladder. A lgica ou representada por dois sinais em paralelo. Caso um dos sinais seja verdadeiro, o circuito fechado, tornando verdadeiro o sinal de sada. A figura abaixo mostra a lgica ou.
  32. 32. 32 Lgica ou no diagrama Ladder. Os sinais de sada e a escrita nos textit{flags} internos so representados por dois parnteses na parte direita do degrau. Caso haja sinal no circuito (circuito fechado, ou lgica de entrada verdadeira) escrito o valor verdadeiro na sada, caso contrrio escrito o valor falso. Nesse caso, sempre ser escrito algum valor na varivel de sada. Atribuio de valor a um sinal de sada em diagrama Ladder. Pode ser desejado, porm, alterar o valor da sada apenas se a lgica de entrada for verdadeira. Nesse caso, so utilizadas instrues de set e reset. A instruo de set escreve o valor verdadeiro na sada se a lgica de entrada for verdadeira. A instruo de reset escreve o valor falso na sada se a lgica de entrada for verdadeira. A figura abaixo mostra a representao das duas instrues. Instrues de set e reset A instruo NOT inverte o valor lgico em um ponto do circuito. A figura abaixo mostra a lgica
  33. 33. 33 Instruo NOT em diagrama Ladder.} Variveis ou instrues de sada diferentes com lgicas de entrada iguais podem ser agrupadas em paralelo em um mesmo degrau. A figura abaixo mostra a representao da lgica: Representao da instruo NOT em LADER da equao acima. Exemplo - representao em Ladder da lgica da equao Funes especiais de comparao variam de fabricante para fabricante, porm so sempre utilizadas na parte esquerda do degrau Ladder. Na figura tem-se a
  34. 34. 34 comparao de dois inteiros. Caso o resultado seja verdadeiro, o circuito fechado, caso contrrio o circuito aberto. IN1 Igual IN2 IN1 Diferente IN2 IN1>IN2 Funo de comparao de inteiros no diagrama Ladder. Da mesma maneira, os temporizadores variam conforme o fabricante, mas tambm so utilizados na parte esquerda do degrau. Porm, por possuirem uma entrada de habilitao, nunca so o primeiro elemento do degrau, participando sempre de uma lgica textbf{e}. Existem vrios tipos de temporizadores, dos quais o mais utilizado o temporizador com retardo na ligao. Quando o sinal aplicado na sua entrada verdadeiro, inicia-se a contagem do tempo. No momento em que essa contagem atinge o valor pr-determinado, o circuito fechado e o sinal de sada passa a ser verdadeiro, s voltando a ser falso quando o sinal de entrada se torna falso. A figura abaixo mostra a representao de um temporizador de 3 segundos em diagrama Ladder, tendo como sinal de habilitao a entrada E e como sada S. Logo aps ao diagrama LADDER mostramos tambm o grfico relacionando os sinais de entrada e de sada para esse temporizador.
  35. 35. 35 Temporizador no diagrama Ladder. Entrada X sada para um temporizador com retardo na ligao. Operaes matemticas podem ser realizadas utilizando instrues como ADD (adio) e SUB (subtrao). Essas instrues so executadas somente quando o sinal em sua entrada de habilitao for verdadeiro, e so utilizadas na parte direita do degrau. Devem ser fornecidos dois valores constantes ou variveis sobre os quais ser realizada a operao, e uma varivel na qual ser armazenado o resultado. A instruo ADD na figura abaixo mostra a soma da varivel J com a Constante 2, sendo o valor armazenado em K.
  36. 36. 36 Instruo de soma em diagrama Ladder. 3.2 STL O STL-Statement List uma linguagem texto para programao de CLPs, desenvolvida pela SIEMENS. Essa linguagem prxima da IL- Instruction List, padronizada pela norma IEC 1131-3, se diferenciando basicamente pela sintaxe dos comandos. Segundo o prprio fabricante, devido grande difuso da linguagem STL e posio de liderana no mercado de CLPs, foi dada, no desenvolvimento das verses recentes, prioridade compatibilidade com verses anteriores do prprio STL. Na verdade, no existe ainda implementada nenhuma linguagem de programao totalmente equivalente IL. Aqui apresentada a sintaxe utilizada pela linguagem STL por ter sido utilizada para validao do procedimento. Em STL, o resultado de uma operao lgica (Result of Logic Operation) armazenado em um flag interno chamado RLO. Toda operao subsequente realizada com o RLO. Por exemplo, a operao A B (AND B) equivalente a Comparando-se com o diagrama Ladder, o RLO equivalente tenso nos contatos aps cada elemento do circuito. O RLO pode, ento, ativar ou desativar um sinal de sada, ou servir de sinal de habilitao para uma instruo como um temporizador. O termo first check (primeira contagem) indica que est sendo executada a primeira instruo de uma lgica. Isso significa que uma nova operao lgica se iniciou, e que o resultado (RLO) da operao lgica anterior no ser executado. Isso torna sem importncia qual instruo (por exemplo, e ou ou) est sendo executada como primeira instruo de uma lgica escrita em STL.
  37. 37. 37 As operaes e e ou so feitas, respectivamente, pelas instrues A e 0, que tm como argumento o nome da varivel. O valor do RLO armazenado em uma varivel lgica (sada ou flag interno) atravs da instruo "=". A figura abaixo mostra como pode ser escrita em STL a operao Note que a primeira instruo tanto pode ser 0 B quanto AB. Instrues ou e e em STL. As instrues "AN" e "ON" fazem, respectivamente, as operaes e e ou com os valores inversos de seus argumentos. A figura abaixo mostra a operao Instrues ou(valor inverso) e e em STL. Instrues ou(inverso) e e em STL.
  38. 38. 38 As instrues de set e reset so representadas pelas letras "S" e "R". A figura abaixo mostra essas instrues. Instrues de set e reset em STL. Assim como em Ladder, variveis ou instrues de sada diferentes com lgicas de entrada iguais podem ser agrupadas em um mesmo bloco, utilizando o mesmo valor do RLO (veja exemplo). Representao em STL a lgica da equao abaixo. A figura mostra a representao da lgica da equao, mostrada em Ladder no exemplo acima A instruo "NOT" inverte o valor do RLO. A figura abaixo mostra a lgica
  39. 39. 39 Em instrues de comparao, utilizado o conceito de pilha, em que os valores a serem comparados so armazenados na pilha atravs da instruo "L" e, em seguida comparados atravs da instruo apropriada. Na figura abaixo comparam- se dois inteiros e armazena-se o resultado lgico da operao na sada "S". Instruo NOT em STL Funo de comparao de inteiros em STL. Nos casos em que o resultado da comparao deve passar por uma operao lgica, utilizado o conceito de pilha de RLOs. A abertura de um parntese aps instrues de operao de bits (ex. A(, O(, AN(, ON( etc) grava o valor atual do RLO na pilha, inicia um novo RLO, executa as instrues seguintes e, quando o parnteses fechado, executada a operao lgica entre o RLO atual e o RLO da pilha. (Veja o exemplo). A figura mostra a representao da lgica da equao, em que o flag "F" ativado se a entrada "E" for verdadeira e o inteiro "J" for maior ou igual a "2".
  40. 40. 40 Exemplo - representao em STL da lgica da equao acima Cada tipo de temporizador possui uma instruo diferente, sendo "SD" a instruo do temporizador com retardo na ligao. Essa instruo continua (ou inicia) a contagem de tempo se o RLO for verdadeiro. Antes da instruo "SD" necessrio armazenar na pilha (instruo "L") o tempo associado ao temporizador. A figura mostra a representao de um temporizador de 3 segundos em STL, tendo como sinal de habilitao a entrada "E" e como sada "S". Observe-se que o valor do tempo obedece ao formato ``"S5T#"'' seguido do valor propriamente dito. Operaes matemticas como soma e subtrao so sempre executadas entre os dois ltimos valores armazenados na pilha. O resultado da operao armazenado na pilha, e pode ser transferido para uma varivel atravs da instruo "T". A figura mostra a soma da varivel "J" com a constante "2", sendo o valor armazenado em "K".
  41. 41. 41 Instruo de soma em STL.} Pode-se desejar executar uma operao matemtica apenas se uma dada condio lgica for satisfeita. Como as instrues "L" e "T" no so influenciadas pelo valor do RLO, necessrio se utilizar uma instruo de salto condicional ("JNB" saltar se RLO=falso) que provoca o desvio do fluxo do programa para a instruo seguinte instruo verb"T", que deve ser identificada por um {label}. Caso essa seja a ltima instruo de um bloco, salta-se para a instruo "NOP 0" (no operation) que deve ser inserida aps a instruo "T". A figura mostra um programa STL que, caso o valor da entrada "E" seja verdadeiro, soma a varivel "J" com a constante "2" e armazena o resultado em "K". Soma condicional em STL. 3.3 Traduo entre as linguagens Todo programa escrito em Ladder pode ser traduzido para STL. Contudo, por ser mais flexvel, nem sempre possvel se traduzir um programa de STL para Ladder. Quando um programa STL pode ser traduzido para Ladder e escrito em uma certa formatao, o ambiente de programao STEP7 da SIEMENS capaz de fazer a converso automaticamente. Porm isso geralmente torna o programa maior e de execuo mais lenta.
  42. 42. 42 So mostrados, a seguir, alguns exemplos de programas em Ladder e sua traduo para STL na forma otimizada e na forma que permita sua converso para Ladder pelo STEP7. A figura abaixo mostra os programas para a lgica da equao Equao Programas em Ladder e STL O resultado da operao temporariamente armazenado no L0.0, que utilizado em seguida para definir o valor de S1 e S2. A instruo BLD 102 no
  43. 43. 43 tem funo alguma, servindo simplesmente para possibilitar a traduo do programa para Ladder. - Traduo de programa de Ladder para STL.
  44. 44. 44 - Traduo de programa de Ladder para STL. Para que o STEP7 traduza o programa para Ladder, necessrio que cada bloco de operaes matemticas seja identificado por um label. 4. Instrues avanadas da Siemens 4.1 Contador Crescente S_CU Com um flanco de impulso positivo na entrada S, o contador setado com o valor da entrada PV. Iniciando com 0 ou PV, o contador conta crescentemente a cada vez que existe um flanco de impulso positivo na entrada CU. A sada Q sempre 1, enquanto o valor de CV no for igual a 0. se houver um flanco de impulso positivo na entrada R o contador resetado, isto , o contador setado com o valor 0.
  45. 45. 45 Exemplo de um contador S_CU Contador decrescente S_CD Com um flanco de impulso positivo na entrada S, o contador setado com o valor da entrada SC. Iniciando com 0 ou SC, o contador conta decrescentemente a cada vez que existir um flanco de impulso positivo na entrada CD. A sada Q sempre 1, enquanto o valor CV no for igual a 0. Se houver um flanco de impulso positivo na entrada R o contador resetado, isto , o contador setado com o valor 0. Exemplo de contador S_CD
  46. 46. 46 Up / Down Counter S_CUD Combinao de contadores crescente e decrescente Exemplo de contador S_CUD 4.2 Instrues Matemticas 4.2.1 Exemplos de Casos para PLCs Allen-Bradley As Instrues Matemticas consideram um par de valores e realizam a operao desejada. O resultado colocado em uma localizao separada.
  47. 47. 47 Parmetros das Instrues Origem Endereos dos valores em que a operao matemtica ser executada. Podem ser endereos de palavra ou constantes de programa. Se a instruo tiver dois operandos Origem, no possvel introduzir constantes de programa nos dois operandos. Dest Endereo destino referente ao resultado da operao. Adio (ADD) Adiciona o valor Origem A ao valor Origem B e armazena o resultado no destino. A figura a seguir apresenta o formato da instruo Subtrao (SUB) A instruo SUB subtrai o valor Origem B do valor Origem A e armazena o resultado no destino (Dest). A figura a seguir apresenta o formato da instruo Adicionar Origem A C5:5.ACC Origem B 35 Dest N7:33 ADD Subtrair Origem A N7:10 Origem B 19 Dest N7:33 SUB
  48. 48. 48 Multiplicao (MUL) A instruo MUL multiplica o valor origem A pelo valor origem B e armazena o resultado no destino (Dest). A figura a seguir apresenta o formato da instruo Diviso (DIV) A instruo DIV divide o valor origem A pelo valor origem B e armazena o resultado arredondado no destino (Dest). A figura a seguir apresenta o formato da instruo Raiz Quadrada (SQR) Calcula a raiz quadrada do valor Origem e coloca o inteiro resultante no destino Dest. A figura a seguir apresenta o formato da instruo Multiplicar Origem A T4:7.PRE Origem B 50 Dest N7:39 MUL Dividir Origem A T4:21.ACC Origem B N7:73 Dest N7:39 DIV Raiz quadrada Origem C5:10.ACC Dest N7:76 SQR
  49. 49. 49 Zeramento (CLR) Zera todos os bits de uma palavra A figura a seguir apresenta o formato da instruo 4.2.2 Estudo de Casos para PLCs Siemens EN = Habilita entrada. A instruo ser executada se e somente se o RLO verdadeiro (RLO=1). ENO = Habilita sada. A sada Enable output tem o mesmo estado de sinal que EN (EN=ENO), a menos que tenha havido um erro durante a converso. Por exemplo, a instruo DIV_I fornece ENO=0 quando se faz uma diviso por zero. IN1 = Entrada 1 1. valor aritmtico da instruo IN2 = Entrada 2 2. valor aritmtico da instruo OUT = Sada - Resultado da operao aritmtica Adio ADD_I Soma inteiros Adio de Inteiros ADD_DI Soma inteiros duplos Limpar Dest N7:90 CLR
  50. 50. 50 Adio de inteiros duplos ADD_R Soam nmeros reais Adio de Reais Subtrao SUB_I Subtrai inteiros Subtrao de Inteiros SUB_DI Subtrai inteiros duplos Subtrao de Inteiros duplos SUB_R Subtrai nmeros reais
  51. 51. 51 Subtrao de Reais Multiplicao MUL_I Multiplica Inteiros Multiplicao de Inteiros MUL_DI Multiplica inteiros duplos Multiplicao de Reais Duplos MUL_R Multiplica nmeros reais
  52. 52. 52 Multiplicao de Reais Diviso DIV_I Divide inteiros Diviso de Inteiros DIV_DI Divide inteiros duplos Diviso de Duplo Inteiros DIV_R Divide nmeros reais Diviso de Reais ABS_R Quando a entrada EN e verdadeira, o processador pega o valor da posio de memria IN e extrai o seu valor absoluto e armazena na posio OUT. A sada ENO reproduz a mesma condio existente em ENO.
  53. 53. 53 Valor Absoluto SQR_R Eleva o valor armazenado em IN ao quadrado e guarda na posio apontada por OUT. O quadrado de um Nmero SQRT_R Extrai a raiz quadrada do valor armazenado em IN e guarda na posio apontada por OUT. Raiz Quadrada. LN_R Determina o logaritmo Neperiano do valor armazenado na posio de memria apontada em IN e salva na posio de memria apontada por OUT. Logaritmo Neperiano. EXP_R Calcula a exponencial de Neper do valor armazenado na posio de memria apontada por IN e salva o resultado na posio apontada por OUT.
  54. 54. 54 Funo Seno SIN_R Calcula o seno do valor armazenado na posio de memria apontada por IN e salva o resultado na posio apontada por OUT. Funo Cosseno COS_R Calcula o Cosseno do valor armazenado na posio de memria apontada por IN e salva o resultado na posio apontada por OUT. Funo Tangente TAN_R Calcula a Tangente do valor armazenado na posio de memria apontada por IN e salva o resultado na posio apontada por OUT. Arco Seno ASIN_R Calcula o arco cujo seno o valor armazenado na posio de memria apontada por IN e salva o resultado na posio apontada por OUT.
  55. 55. 55 Arco Cosseno ACOS_R Calcula o arco cujo cosseno o valor armazenado na posio de memria apontada por IN e salva o resultado na posio apontada por OUT. Arco Tangente ATAN_R Calcula o arco cujo a tangente o valor armazenado na posio de memria apontada por IN e salva o resultado na posio apontada por OUT. 4.3 Instrues de Comparao 4.3.1 Estudo de Casos para PLCs da Allen-Bradley As instrues de Comparao so usadas para testar pares de valores de forma a condicionar a continuidade lgica de uma linha. Igual a (EQU) Testa se dois valores so iguais. Se a Origem A e Origem B so iguais, a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo Igual a Origem A C5:1.ACC Origem B 17 EQU
  56. 56. 56 Diferente (NEQ) Testa se o primeiro valor no igual ao segundo. Se Origem A e Origem B so diferentes, a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo NEQ Menor que (LES) Testa se o primeiro valor menor que o segundo. Se a Origem A menor que o valor da Origem B a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo Menor ou igual a (LEQ) Testa se o primeiro valor menor ou igual ao segundo. Se o valor da Origem A menor ou igual Origem B, a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo No Igual a Origem A 5:25.PRE Origem B 37 NEQ Menor que (A
  57. 57. 57 Maior que (GRT) Testa se o primeiro valor maior que o segundo. Se o valor da Origem A maior que o valor da Origem B, a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo Maior ou igual a (GEQ) Testa se o primeiro valor maior ou igual ao segundo. Se o valor da Origem A maior ou igual ao valor da Origem B, a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo Maior que ou igual a (A>=B) Origem A N7:10 Origem B 12 GEQ Maior que (A>B) Origem A 4:19.ACC Origem B N7:12 GRT Menor que ou Igual a (A IN2 Maior ou igual a(I para inteira, D para inteiro duplo e R para reais) A instruo maior ou igual a habilita a sada IN1 IN2 MOVE _ A instruo MOVE movimenta um Byte(8 bits), Word(16 bits) ou DWord(32 bits) da posio apontada por IN para uma outra apontada por OUT. Isto ocorre quando a entrada EN se encontra habilitada. 61. 61 Smbolo da Instruo MOVE 4.4 Instrues de Controle de Programa 4.4.1 Para CLP ALLEN-Bradley JMP [Saltar para Rtulo] e LBL [Rtulo] Exemplo : JMP faz o processador saltar frente ou atrs para a instruo de rtulo (LBL) correspondente e retomar a execuo do programa a partir do rtulo. LBL o alvo da instruo JMP com o mesmo nmero de rtulo. Voc deve programar essa instruo de entrada como a primeira instruo de uma linha. LBL sempre avaliada como verdadeira ou 1 lgico. Os nmeros de rtulos so nicos, isto , no podem ser repetidos. Saltar frente para um rtulo reduz o tempo de varredura do programa ao omitir um segmento do programa at que seja necessrio. Saltar para trs permite que o controlador execute repetidamente segmentos do programa. Mais de uma instruo JMP pode saltar para o mesmo rtulo. Obs. Tenha cuidado ao usar a instruo JMP para saltar para trs ou fazer loops em seu programa. Se voc fizer loops muito demorados, o temporizador de controle pode exceder o limite de tempo e causar uma falha no processador. Use um contador, temporizador, ou registro de varredura do programa (S:3, bits 0-7) para limitar o tempo gasto dentro de loops com instrues JMP/LBL. PARMETROS: Digite um nmero decimal para o rtulo, de 0 a 999. Voc pode colocar: ( JMP ) ] LBL 62. 62 At 256 rtulos para controladores SLC em cada arquivo de subrotina. At 1000 rtulos para controladores MicroLogix em cada arquivo de subrotina. 63. 63 EXEMPLO: 1. Programa Semforo e Pisca-pisca utilizando JMP e LABEL A seleo do funcionamento como semforo ou como pisca-pisca feita atravs de chaves on- off 64. 64 4.4.2 Para CLP SIEMENS JUMP(Jump Within the Block When 1) Pula para um determinado Rtulo(Label) quando o mesmo executado. Quando inexiste condio para a sua execuo esta instruo chamada de incondicional. Quando ele executado aps o programa atender uma determinada condio, esta instruo chamada de Jump condicional. Exemplo: 1- Jump Incondicional O CLP vai para a posio CAS1 quando executa a Network 1. Ele no executar nenhuma Network entre o Jump e o rtulo. 2- Jump Condicional Quando a condio I0.0 for verdadeira o CLP ir pular todas as linhas entre o Jump e o rtulo(CAS1), executando as linhas subsequentes. 65. 65 JMPN(Jump if Not)- Corresponde a negao do JMP. Esta instruo executa um pulo para o Rtulo se a condio de entrada for falsa. Exemplo JMPN: Pula para o rtulo aps quando a condio I0.0 for falsa Label(Rtulo) Identificador da posio que ocorrer JMP. Para a colocao do nome do rtulo devemos iniciar sempre com um caractere aphabtico. Smbolo do Label DESAFIO: Crie um programa semforo e pisca-pisca utilizando JMP. O semforo deve funcionar das 6 s 24 h e o pisca-pisca das 0 s 6 h, automaticamente, a partir do relgio de tempo real do CLP. 66. 66 4.5 Chamada de Subirrotina 4.5.1 Para PLC Allen-Bradley SBR [Subrotina] Exemplo: Uma subrotina serve para armazenar sees repetitivas da lgica do programa que devem ser executadas a partir de diversos pontos dentro de um projeto. Uma subrotina economiza memria porque voc a programa apenas uma vez. Colocada como a primeira instruo em um arquivo de subrotina, a instruo SBR identifica o arquivo. Esse o nmero do arquivo usado na instruo JSR para identificar o alvo para onde o programa deve saltar. Essa instruo no tem bits de controle. Ela sempre avaliada como verdadeira. A instruo deve ser programada como a primeira instruo da primeira linha de uma subrotina. O uso dessa instruo opcional, porm recomendado. AVISO: As sadas controladas de dentro de uma subrotina permanecem no seu ltimo estado at que a subrotina seja executada novamente. Salto para uma Subirrotina JSR [Saltar para Subrotina] Exemplo: JSR uma instruo de sada que faz com que o processador salte para o arquivo alvo da subrotina. Voc s pode saltar para a primeira instruo em uma subrotina. Cada subrotina deve ter um nmero de arquivo exclusivo (decimal, 3-255). Saltar para Subrotina Nmero de Arquivo SBR U:5 JSR Subrotina SBR 67. 67 Aninhar subrotinas permite direcionar o fluxo do programa, do programa principal para uma subrotina e da para outra subrotina. As seguintes regras aplicam-se quando aninhar subrotinas: Processadores Fixo e 5/01 - voc pode aninhar subrotinas at 4 nveis. Processadores 5/02, 5/03, 5/04 e MicroLogix - voc pode aninhar subrotinas em at 8 nveis. RET [Retorno da Subrotina] Exemplo: Essa instruo de sada marca o final da execuo da subrotina ou o final do arquivo de subrotina. Ela faz com que o processador retome a execuo no arquivo do programa principal na instruo seguinte instruo JSR onde ele saiu do programa. Se a seqncia de subrotinas aninhadas est envolvida, a instruo faz com que o processador retorne a execuo do programa para a subrotina anterior. Sem uma instruo RET, o comando END (sempre presente na subrotina) retorna automaticamente a execuo do programa para a instruo JSR no seu programa de contatos que a chamou. 4.5.2 Chamada de Subirrotina para PLC SIEMENS Para chamada de subirrotina O PLC da SIEMENS utiliza o Comando CALL_XX, onde XX est representando o programa chamado. Por exemplo: CALL : Sem parmetro, chama uma funo. CALL_FB : Chama um bloco de Funes( FB ) CALL_FC : Chama uma Funo(FC) CALL_SFB : Chama um sistema de FB CALL_SFC: Chama um sistema de FC Call Sem Parmetros- Com a instruo Call FC/SFC sem parmetros podemos chamar uma Funo ou um Sistema de Funes que no vem com parmetros. Na seo de codificao de uma funo (FC), voc na pode especificar qualquer parmetro do typo de Bloco_FC como endereo para uma chamada condicional. Voc pode, contudo, um parmetro do tipo Bloco_FC como o endereo de um bloco de funes (FB). Ao executar esta instruo ocorrero as seguintes aes: Retorno RET 68. 68 O Endereo para retorno ao programa principal aps a execuo da subirrotina ser salvo. Os dados so salvos. rea para armazenar os dados locais da FC ou SFC. Smbolo da instruo sem Parmetro. CALL_FB (Call FB Como Box) O smbolo depende da FB (se tem e quantos parmetros existem). EN, ENO e o nome ou nmero da funo. Descrio CALL_FB ou CALL_FC so executadas quando o estado do sinal EN 1 Smbolos Onde Teremos os seguintes Parmetros: 69. 69 EXEMPLO: Programa Semforo e Pisca-pisca utilizando subrotinas JSR, SBR e RET. A seleo do funcionamento como semforo ou como pisca-pisca feita atravs de chaves on- off LAD 2 Arquivo Pricipal LAD 3 PISCA-PISCA 70. 70 LAD 4 SEMFORO 71. 71 DESAFIO: Crie um programa Semforo e Pisca-pisca utilizando subrotinas a instruo Call e RET. O semforo deve funcionar das 6 s 24 h e o pisca-pisca das 0 s 6 h, automaticamente, a partir do relgio de tempo real do CLP. 72. 72 4.6 SCL Escala 4.6.1 Escala para CLP Allen-bradley Exemplo: Essa instruo utilizada para escalar dados de mdulos analgicos e convert-los para os limites prescritos pela varivel de processo ou outro mdulo analgico. Por exemplo, use SCL para converter um sinal de entrada de 4 a 20 mA para uma varivel de processo PID. Ou use SCL para escalar uma entrada analgica para controlar uma sada analgica. Quando as condies da linha so verdadeiras, essa instruo multiplica a origem por uma taxa especificada e depois divide por 10000. O resultado arredondado adicionado a um valor de deslocamento e colocado no destino. Equaes usadas no clculo do valor a ser colocado no destino: Destino = (Origem x (taxa / 10.000)) + deslocamento Onde: Taxa = 10.000 x k (sada mxima - sada mnima) (entrada mxima - entrada mnima) Deslocamento = sada mnima - entrada mnima x taxa 10.000 Parmetros: Os valores devem estar entre -32768 e +32767 para os seguintes parmetros. Origem - deve ser um endereo de palavra. Taxa - (ou inclinao) um valor positivo ou negativo. Pode ser uma constante de programa ou um endereo de palavra. Deslocamento - pode ser uma constante de programa ou um endereo de palavra. Destino - o endereo do resultado da operao. Escala Origem I:9.1 Taxa [/10000] 4000 Deslocamento 100 Destino N7:14 SCL 73. 73 EXEMPLO: Programa para realizar o controle on-off da temperatura de um forno. A medio de temperatura realizada atravs de um transmissor cuja sada no padro 4 a 20 mA (zero vivo). Este transmissor calibrado para a faixa de 0 a 400o C (0 a 100%). O aquecimento liga caso a temperatura caia at 300 o C e desliga se a temperatura subir at 350 o C. Caso haja algum problema no transmissor, o aquecimento desativado e um alarme acionado. O transmissor simulado com o mdulo de entrada e sada analgica. Este mdulo fornece tenses de 0 a 10 V. Portanto, ser utilizado o padro de tenso da instrumentao de 1 a 5 V (0 a 100%) 74. 74 4.6.2 Escala em CLP SIEMENS A funo SCALE leva um nmero inteiro(IN) e converte para uma unidade de engenharia localizada entre um limite inferior(Lo) e um limite superior(Hi). O resultado desta operao escrito na sada OUT e usa a seguinte equao: LOLIMLOLIMHILIM KK KINFLOAT OUT + = )(* 12 )1)(( [ As constants K1 e k2 so valores baseadas nas seguites condies: 1 Bipolar k1=-27648.0 e k2=+27648.0. 2 - UNIPOLAR: K1 = 0.0 and K2 = +27648.0 Smbolo do SCALE 4.6.3 UNSCALE para CLP SIEMENS A funo UNSCALE leva um nmero real de entrada (IN) em unidade de engenharia entre um limite inferior(LoLIM) e um limite superior(HiLIM) e converte ele para inteiro. Da seguinte forma. ( ) ( ) 1)12(*)( KKK LOLIMHILIM LOLIMIN OUT + = Onde : 1 - BIPOLAR: A sada inteira estar entre 27648 e 27648, portanto, K1 = 27648.0 and K2 = +27648.0 2 - UNIPOLAR: A sada inteira estar entre 0 e 27648, contudo, K1 = 0.0 e K2 = +27648.0 75. 75 Smbolo do UNSCALE Crie um programa para realizar o controle on-off do nvel de um tanque de 1000 m3 . A medio de nvel realizada atravs de um transmissor cuja sada no padro 4 a 20 mA (zero vivo). Este transmissor calibrado para a faixa de 0 a 1000 m3 (0 a 100%). A bomba que enche o tanque liga caso o nvel caia at 500 m3 e desliga se o nvel subir at 900 m3 . Caso haja algum problema no transmissor, a bomba deve ser desativada e um alarme deve ser acionado. O transmissor simulado com o mdulo de entrada e sada analgica. Este mdulo fornece tenses de 0 a 10 V. Portanto, ser utilizado o padro de tenso da instrumentao de 1 a 5 V (0 a 100%) 76. 76 5 INSTRUO PID Exemplo: Essa instruo de sada usada para controlar variveis fsicas como temperatura, presso, nvel de lquido ou vazo em malhas de controle de processo. A instruo PID normalmente controla um malha fechada usando entradas de um mdulo de entrada analgico e fornecendo uma sada para um mdulo de sada analgico como uma resposta a uma varivel de processo mantida efetivamente em determinado Set Point (ponto pr-programado). A equao PID controla o processo enviando um sinal de sada ao atuador. Quanto maior o erro entre o Set point e a entrada da PV (varivel de processo), maior o sinal de sada e vice versa. Um valor adicional (feed forward ou polarizao) pode ser adicionado sada de controle como um patamar. O resultado do clculo PID (varivel de controle) ir dirigir a varivel de processo que voc est controlando, para o Set Point. 5.1 Conceito de PID Esse um exemplo de como opera uma malha PID simples. um malha de controle de temperatura bsico. PID Bloco de Controle N7:9 Varivel de Processo I:9.0 Varivel de Controle N7:11 Comprimento do Bloco de Controle 23 Tela de Configurao 77. 77 E o diagrama genrico da malha de controle A equao PID controla o processo enviando um sinal de sada para uma vlvula de controle. Quanto maior o erro entre o Set Point e a entrada da varivel de processo, maior o sinal de sada e vice versa. Um valor adicional (feed-forward ou polarizao) pode ser adicionado sada de controle como um patamar. O resultado do clculo PID (varivel de controle) ir dirigir a varivel de processo, que voc est controlando, para o Set Point. 5.2 A Equao PID A instruo PID usa o seguinte algoritmo: ++= dt dPV TdEdt Ti EKcCV 1 )( 78. 78 As constantes de Ganho Padro so: Termo Smbol o Faixa (Inferior para Superior) Ganho do Controlador Kc 0,1 a 25,5 (sem dimenso) 0,01 a 327,67 (sem dimenso)* Tempo Integral Ti 25,5 a 0,1 (minutos por repetio) 327,7 a 0,01 (minutos por repetio)* Tempo Derivativo Td 0,01 a 2,55 (minutos) 0,01 a 327,67 (minutos)* * Aplica-se a faixas PID do 5/03 e 5/04 quando o bit Redefinir Ganho (RG) ativado. O termo derivativo suaviza o sinal atravs de um filtro passa-baixas. A frequncia de corte do filtro 16 vezes maior que a frequncia de corte do termo derivativo. 5.3 Parmetros para o PID Allen-Bradley Normalmente, voc coloca a instruo PID em uma linha sem lgica condicional. A sada permanece no seu ltimo valor quando a linha falsa. O termo integral tambm zerado quando a linha falsa. A instruo PID no permite valores de ponto flutuante para nenhum de seus parmetros. Logo, se voc tentar mover um valor de ponto flutuante para um dos parmetros PID (com a instruo MOV, por exemplo), ocorre uma converso de ponto flutuante para inteiro. Bloco de Controle - um arquivo que armazena os dados necessrios para operar a instruo. O comprimento do arquivo fixo em 23 palavras e deve ser fornecido como um endereo de arquivo inteiro. No grave em endereos de bloco de controle com outras instrues no seu programa. Apenas o set point os seguintes sinalizadores de instruo PID podem ser ativados ou zerados por seu programa de contatos: SP (Set Point) Palavra 2 do Bloco de Controle TM (bit de modo temporizado) Palavra 0 do Bloco de Controle, bit 0 AM (bit auto/manual) Palavra 0 do Bloco de Controle, bit 1 CM (bit modo de controle) Palavra 0 do Bloco de Controle, bit 2 OL (bit ativar limitao de sada) Palavra 0 do Bloco de Controle, bit 3 79. 79 AVISO! No altere o estado de nenhum valor de bloco de controle PID a menos que voc entenda completamente sua funo e efeitos relacionados em seu processo. Uma operao inesperada pode resultar em possveis danos ao equipamento e/ou ferimentos pessoais. Dica: Use um arquivo de dados exclusivo para seu bloco de controle PID (N9:0, por exemplo). Isso evita reutilizao acidental dos endereos do bloco de controle PID por outras instrues no seu programa. Comprimento do Bloco de Controle - Especifica um arquivo inteiro, por exemplo N7:0. O comprimento do arquivo fixo de 23 palavras. Varivel de Processo PV - O endereo de elemento que armazena o valor de entrada do processo. Esse endereo pode ser o local da palavra de entrada analgica onde o valor do A/D de entrada armazenado. Esse valor tambm pode ser um valor inteiro se voc preferir pr-escalar seu valor de entrada para a faixa 0- 16383. Varivel de Controle CV - O endereo de elemento que armazena a sada da instruo PID. A faixa do valor de sada vai de 0 a 16383, com 16383 sendo 100% do valor ON. Esse normalmente um valor inteiro e voc pode escalar a faixa de sada PID para a faixa analgica particular que seu aplicativo requerer. Tela de Instalao - clique duas vezes no item Tela de Instalao para exibir uma tela que solicita a voc outros parmetros para completar a programao da instruo PID. 5.4 Tela de Instalao PID Ao Clicar Tela de Configurao na instruo PID, aparece um dilogo que permite a entrada de parmetros adicionais. Os parmetros so descritos aqui. Parmetro Faixa vlida Descrio Kc Ganho do Controlador 0 at +327,67* Este o ganho proporcional da equao PID. Ti Tempo Integral 0 at +327,67* minutos Este o tempo integral da equao PID. Td Tempo Derivativo 0 at +327,67* minutos Este o tempo derivativo da equao PID. Atualizar Circuito 0.01 a 10.24 segundos Este o intervalo de tempo entre clculos PID. O valor indicado em intervalos de 0,01 segundos. Geralmente, digite um tempo de atualizao de circuito entre cinco e dez vezes mais rpido que o perodo natural de carga. No modo STI, este valor precisa equivaler ao valor do intervalo de tempo STI S:30. Modo Selecione E = SP - PV (Ao Ao Reversa causa um aumento no CV de sada quando o PV de entrada menor que 80. 80 Controle Reversa) ou E = PV - SP (Ao Direta) o set point SP (por exemplo, em uma aplicao de aquecimento). Ao direta causa um aumento no CV de sada quando o PV de entrada maior que o set point SP (por exemplo, em uma aplicao de resfriamento). Controle PID Selecione Auto ou Manual Auto indica que o PID controla a sada. Manual indica que o usurio define a sada. Modo de Data/Hora Selecione Temporizado ou STI Com o modo Temporizado selecionado, o PID atualiza a sua sada a intervalos especificados no parmetro de atualizao de circuito. Ao usar o modo temporizado, o tempo de varredura do seu processador deve ser pelo menos dez vezes mais rpido do que o tempo de atualizao de circuito para evitar imprecises na temporizao ou distrbios Com o modo STI selecionado, o PID atualiza a sua sada a cada varredura da subrotina STI. Ao selecionar STI, a instruo PID deve ser programada em uma sub-rotina de STI de interrupo, e a rotina STI deve possuir um intervalo de tempo que equivale definio do parmetro de atualizao do circuito PID. Defina o perodo STI na palavra S:3.0 Limitar Sada CV Selecione Sim ou No Selecionar Sim limita a sada aos valores mnimo e mximo. Selecionar No no aplica limites sada. Zona Morta DB 0 at o mximo escalado, ou entre 0 e 16383 quando no existe escala. A zona morta se estende acima e abaixo do set point especificado por voc. A zona morta s tem efeito depois que a varivel de processo PV cruza o Set Point. * Nota: O bit RG deve ser ativado para aceitar valores acima de 25,5 quando utilizar processadores 5/03 e 5/04. Entradas Parmetro Faixa vlida Descrio Valor de Ref. SP 1 e 16383, ou dentro da faixa vlida de unidades de engenharia Set Point ou o ponto de controle desejado da varivel do processo. Val. Ref. MX (Vmx) -32768 at +32767 Se o Set Point carregar unidades de engenharia, isto corresponde ao valor do Set Point em unidades de engenharia quando a entrada de controle for 16383 (100%). 81. 81 Val. Ref. MN (Vmn) -32768 at +32767 Se o Set Point carregar unidades de engenharia, ento este parmetro corresponde ao valor do set point em unidades de engenharia quando a entrada de controle for 0 (0%). Varivel de Processo PV (No editvel, s para visualizao) Este o valor da varivel de processo (a entrada analgica) em unidades de engenharia Sada Parmetro Faixa vlida Descrio Controlar Sada CV (%) 0 a 100 % Permite alterar a varivel de controle de sada somente se voc tiver selecionado o modo manual. Sada Mn (CV%) 1 a 99 % Se CV cair abaixo deste valor mnimo, o bit de alarme de limite inferior (LL) de sada ser ativado. Se Limitar Sada CV for Sim, o valor que voc digitar ser a porcentagem mnima de sada que a varivel de controle CV atingir. Sada Mx. (CV%) 1 a 99 % Se CV exceder este valor mximo, o bit de alarme de limite superior (UL) de sada ser ativado. Se Limitar Sada CV for Sim, o valor que voc digitar ser a porcentagem mxima de sada que a varivel de controle CV atingir. Erro de Escala SE (No editvel, s para visualizao) Este o erro da equao PID ( E = SP - PV ou E = PV - SP ). 5.5 Bloco de Controle PID Formato do Bloco de Controle: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Palavra 0 E N D N P V S P LL UL D B D A TF S C R G O L C M A M TM Palavra 1 Sub Cdigo de Erro PID (MSB) Palavra 2 Ponto Pr-programado SP Set Point Palavra 3 Ganho Kc Palavra 4 Tempo Integral Ti Palavra 5 Tempo Derivativo Td Palavra 6 Polarizao Frente (bias) 82. 82 Palavra 7 Set Point Mximo (Smax) Palavra 8 Set Point Mnimo (Smin) Palavra 9 Banda morta Palavra 10 APENAS PARA USO INTERNO - NO ALTERE!! Palavra 11 Sada Mxima Palavra 12 Sada Mnima Palavra 13 Atualizar Circuito Palavra 14 Varivel de Processo Escalada Palavra 15 Erro de Escala SE Palavra 16 CV% de Sada (0-100%) Palavra 17 Soma Integral MSW Palavra 18 Soma Integral LSW Palavra 19 APENAS PARA USO INTERNO - NO ALTERE!! Palavra 20 APENAS PARA USO INTERNO - NO ALTERE!! Palavra 21 APENAS PARA USO INTERNO - NO ALTERE!! Palavra 22 APENAS PARA USO INTERNO - NO ALTERE!! AVISO! No altere o estado de nenhum valor de bloco de controle PID a menos que voc entenda completamente sua funo e efeitos relacionados em seu processo. Uma operao inesperada pode resultar em possveis danos ao equipamento e/ou ferimentos pessoais. 5.6 Indicadores de Status Os seguintes indicadores de status associados com a instruo PID aparecem como Marcadores do lado direito da tela de Configurao PID. Acesse esta tela ao clicar Tela de Instalao na instruo PID. Bits que podem ser ativados ou desativados por instrues no programa de contatos. TM Bit de Modo de Data/Hora (palavra 0, bit 0) Especifica o modo PID. 1 para o modo TEMPORIZADO e 0 para o modo STI. AM Bit Auto/Manual (palavra 0, bit 1) Especifica a operao automtica quando 0 e a operao manual quando 1. CM Bit de Modo de Controle (palavra 0, bit 2) Este bit 0 se o controle for E=SP-PV. 1 se o controle for E=PV-SP. OL Bit de Limitar Sada Ativado (palavra 0, bit 3) Este bit deve ser 1 se voc optar por limitar a varivel de controle. Bits configurados pelo usurio RG Bit Redefinir Ganho (palavra 0, bit 4) Quando 1, este bit faz com que o valor de Ti e Kc sejam aumentados por um fator de 10 (o multiplicador de Kc e Ti muda para 0,01). 83. 83 Quando 0, este bit permite que Ti e Kc usem as mesmas faixas do PID do 5/02 (multiplicador de Ti e Kc de 0,1). Note que o Multiplicador de Td no afetado por esta seleo DA Bit de Ao Derivativa (palavra 0, bit 7) Quando 1, os clculos do termo derivativo da equao do PID so feitos sobre o erro. Quando 0, os clculos usam a PV. Bits que apenas indicam condies da instruo PID SC Sinalizador de Escala de Set Point (palavra 0, bit 5) Quando 1 indica que os valores mnimo e mximo do Set Point no foram especificados TF Tempo de Atualizao de Circuito Muito Rpido (palavra 0, bit 6) Este bit ativado pelo algoritmo PID se o tempo de atualizao de circuito especificado no puder ser atingido pelo programa (devido a limitaes de tempo de varredura). DB Erro de Zona Morta (palavra 0, bit 8) Ativado quando a varivel de processo est dentro da faixa da zona morta ao cruzar com 0 UL Alarme de Sada, Limite Superior (palavra 0, bit 9) Ativado quando CV de sada de controle calculado excede o limite superior de CV. LL Alarme de Sada, Limite Inferior (palavra 0, bit 10) Ativado quando CV de sada de controle calculado menor que o limite inferior de CV. SP Set point Fora da Faixa (palavra 0, bit 11) Ativado quando o set point excede o valor mximo escalado ou menor que o valor mnimo escalado. PV Varivel de Processo Fora da Faixa (palavra 0, bit 12) Ativado quando a varivel de processo no escalada (ou bruta) excede 16383 ou menor que zero. DN PID Concludo (palavra 0, bit 13) Este bit ativado em varreduras onde computado o algoritmo PID. computado taxa de atualizao do circuito. EN PID Ativado (palavra 0, bit 15) Este bit ativado enquanto a linha da instruo PID estiver ativada 5.7 Bloco PID para PLCs SIEMENS. O SFB41/FB41 Cont_C usado no CLP SIMATIC S7 para controlar processo com variveis de entrada e sadas contnuas. Este controlador pode ser parametrizado facilmente atravs da farrementa disponvel no pacote Simatic Step7 chamado de Assign PID Control Parameter. Descrio Considerando que as funes no setpoint e desvio de processo, este PID implementa um controlador PID completo com variveis manipuladas de sada e as opes de manipulaes das variveis manualmente. Abaixo faremos uma breve descrio de algumas sub-funes: 84. 84 Desvio do SetPoint o setpoint uma varivel de entrada formatada como ponto flutuante na entrada SP_INT. Desvio da varivel de Processo - A varivel do processo pode ser entrada no perifrico no formato de ponto flutuante. O bloco CRP_IN um bloco que converte esta varivel para o formato de -100% a +100%. a PV_NORM normaliza a sada de CRP_IN. Sinal de Erro a diferena entre o setpoint e a varivel do processo. Para suprimir pequenos distrbios aplicado a um supressor de rudo chamado de DEADBAND. Se o parmetro DEADB_W=0, o DEADBAND desligado. Algoritmo PID - A ao integral (INT) e derivativa (DIF) so conectadas em paralelo e pode ser ativada e podem ser ativadas e desativadas individualmente. Isto permite configurarmos este elemento com as aes P, PI, PD e PID. As condies Integral ou derivativa pura so tambm possveis. tambm possvel configurar este elemento para trabalhar no modo manual. Neste modo a varivel manipulada e corrigida manualmente . A parte integral e ajustada internamente LMN_I-LMN_P-DISV e a parte derivativa para 0. isto significa que no haver alterao brusca na sada do controlador quando passarmos para o modo automtico. Valores Manipulados podem ser limitados usando a funo LMNLIMIT. Bits de sinalizao indicam quando o limite excedido. LMN_FAC default 1 e LMN_OFF default 0. O valor de manipulado tambm disponvelno formato do perifrico. O CPR_OUT converte o valor limitado para um valor do perifrico. Inicializao Este bloco PID possui uma rotina de inicializao que roda quando o parmetro COM_RST est em 1. na inicializao , o integrador ajustado para o valor inicial I_ITVAL. Todas as outras sadas so ajustadas para os seus valores default. Abaixo apresentamos o diagrama em bloco deste PID, 85. 85 86. 86 EXEMPLO: Programa para realizar o controle PID da temperatura de uma caldeira. A medio de temperatura realizada atravs de um transmissor cuja sada no padro 4 a 20 mA (zero vivo). Este transmissor calibrado para a faixa de 0 a 100o C (0 a 100%). O operador pode selecionar o modo de operao do controle entre automtico ou manual atravs de uma chave on-off. O transmissor e o elemento final de controle so simulados com o mdulo de entrada e sada analgica. Este mdulo fornece tenses de 0 a 10 V(entrada analgica) e mede tenses de 0 a 10 V sobre um resistor de 250 (sada analgica). Portanto, ser utilizado o padro de tenso da instrumentao de 1 a 5 V (0 a 100%). 87. 87 DESAFIO: No programa exemplo da instruo PID, acrescente as instrues para, caso haja algum problema no transmissor, desligar o aquecimento e soar um alarme. Acrescente tambm as instrues para o operador possa alterar o Set Point atravs de uma chave codificadora (Thumbwheel), simulada atravs de chaves on-off. 6 Movimentao de Dados As instrues de movimentao de dados so instrues de sada, ou seja, s so executadas quando as condies da linha so verdadeiras. 6.1 Copiar Arquivo 6.1.1 Copiar arquivo CLP Allen-Bradley Exemplo Quando as condies da linha so verdadeiras para essa instruo de sada, um arquivo de origem definido pelo usurio copiado para um arquivo destino. Os elementos de origem e destino podem ser de um tipo diferente, mas o tipo de arquivo de destino determina quantas palavras de dados sero transferidas. Parmetros Origem - o endereo do arquivo voc deseja copiar. Use o indicador de arquivo (#) no endereo. Destino - o endereo inicial onde o arquivo de origem copiado. Use o indicador de arquivo (#) no endereo. Comprimento - o nmero de elementos no arquivo que voc deseja copiar. Pode ser especificado um comprimento mximo de 128 palavras. Copiar Arquivo Origem #B3:80 Destino #B3:20 Comprimento 23 COP 88. 88 6.1.2 Copia arquivo Pelo CLP SIEMENS(FC81). A funo IBLKMOV usada para mover um bloco de dados consistindo de bytes, palavra(W), inteiros(I), palavras duplas(DW) ou Duplo inteiro(DI) de um bloco origem para um bloco destino. O nmero de elementos para ser movido determinado belo comprimento (LENGTH) e o tamanho do arquivo determinado pelo tipo de dado. O (S_DATA) e o (D_DATA) apontam para o local de inicio do movimento da origem e destino dos dados. 6.2 Preencher Arquivo 6.2.1 Para CLP Allen-Bradley(FLL) Exemplo: Essa instruo de sada preenche as palavras de um arquivo com um valor da origem. Os elementos so preenchidos em ordem crescente at alcanar o nmero de elementos (o comprimento) ou at alcanar o ltimo elemento do arquivo de destino, o que ocorrer primeiro. Preencher Arquivo Origem 80 Destino #C5:0 Comprimento 16 FLL 89. 89 O tipo de arquivo de destino determina o nmero de palavras por elemento que a instruo transfere. Por exemplo, se o tipo de arquivo de destino for contador e o tipo de arquivo de origem for inteiro, trs palavras inteiras so transferidas para cada elemento no arquivo tipo contador. Nenhuma converso de dados ocorre se os arquivos de origem e de destino so de tipos diferentes; use o mesmo tipo de arquivo para os dois. Parmetros: Origem - a constante de programa ou endereo do elemento. O indicador de arquivo (#) no necessrio para um endereo de elemento. Destino - o endereo do arquivo de destino. A instruo grava sobre quaisquer dados j armazenados no destino. Comprimento - o nmero de elementos no arquivo que voc quer preencher. voc pode especificar um comprimento mximo de 128 palavras. 6.2.2 Preenchimento para CLP SIEMENS(SFC21) Com esta instruo voc pega um determinado contedo e colo em outro at que a memria destino esteja completamente Cheia. Exemplo de um comando FILL 90. 90 6.3 Deslocar Bit Direita e Deslocar Bit Esquerda 6.3.1 Deslocar Bit para o CLP Allen-bradley Exemplo: Em cada transio desligado-para-ligado na entrada, essa instruo de sada carrega um bit de dados em um bloco de bits, desloca o bloco para a direita e descarta o bit final . Exemplo: Em cada transio desligado-para-ligado na entrada, essa instruo de sada carrega um bit de dados em um bloco de bits, desloca o bloco para a esquerda e descarta o bit final . Um exemplo do uso dessas instrues acompanhar garrafas em uma linha de engarrafamento onde cada bit representa uma garrafa. ( EN ) ( DN ) Deslocar Bit Direita Arquivo #B3:7 Controle R6:4 Endereo do Bit B3/27 Comprimento 8 BSR ( EN ) ( DN ) Deslocar Bit Esquerda Arquivo #B3:7 Controle R6:5 Endereo do Bit B3/2 Comprimento 4 BSL 91. 91 Parmetros Arquivo - esse o endereo do bloco de bits que voc deseja deslocar. Voc deve usar o indicador de arquivo (#) no endereo do bloco de bits. . Voc deve iniciar o bloco no limite do elemento de 16 bits, por exemplo, use o bit 0 do elemento Nm1, 2, 3 etc. Controle - Esse o endereo exclusivo da estrutura de controle (48 bits, 3 palavras de 16 bits) na rea de controle da memria que armazena os bits de status da instruo, o tamanho do bloco (em nmero de bits), e o apontador do bit (atualmente no em uso). O elemento de controle: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Palavra 0 E N D N E R U L No Usado Palavra 1 Tamanho do bloco de bits (nmero de bits) Palavra 2 Apontador do Bit (atualmente no em uso) Bits de Status da Palavra de Controle UL (descarregar) bit de sada do bloco aps o deslocamento. ER (erro) indica que um erro ocorreu, como um nmero negativo para o comprimento ou posio DN (pronto) indica que um deslocamento foi realizado. EN (ativar) ativado quando a linha de entrada passa de falso para verdadeiro. Endereo do Bit - o local do bit que ser adicionado ao bloco. Comprimento - o nmero total de bits a ser deslocado. Podem ser at 2048 para o SLC e at 1680 para o MicroLogix 1000 6.3.2 Desloca Bits para o CLP SIEMENS Voc pode usar a instruo Shift para mover o contedo da entrada IN bit a bit para direita ou esquerda. Deslocar n bits para a esquerda multiplica o contedo de IN por 2 elevado a n ( )n IN 2* deslocar n bits para a direita significa dividir o contedo de IN por 2 elevado a n n IN 2 Por exemplo, se voc desloca o equivalente a 3 em binrio, para esquerda de 3 bits,voc obtm o equivalente a 24 em decimal. Si voc desloca o equivalente a 16 92. 92 em binrio, 2 bits para direita , voc obtm o equivalente a 4 em decimal. O nmero que voc coloca a entrada N indica o nmero de bits a ser deslocado. A posio que ficar vaga aps o deslocamento preenchido com o bit que representar o sinal do nmero(0 para positivo ou 1 para negativo). O valor do ltimo bit deslocado armazenado dentro do bit CC1 na palavra de status. O bit CCO e o OV da palavra de status levado para 0. voc pode o usar a instruo de JUMP para avaliar o bit CC1. As seguintes instrues de SHIFT esto disponveis: SHR_I : Desloca um nmero inteiro para direita. SHR_DI : Desloca um inteiro duplo para direita. SHL_W : Desloca para esquerda uma palavra. SHR_W : Desloca para direita uma palavra. SHL_DW : Desloca para esquerda uma palavra dupla. SHR_DW : Desloca uma palavra Dupla para direita. Smbolos para a instruo Shift Exemplo de um Deslocamento para Direita 93. 93 EXEMPLO: Programa que detecta e descarta garrafas com a boca ou o fundo quebrados em uma linha de engarrafamento, utilizado as instrues BSR ou BSL. Os sensores de garrafa (I:1/5) e de boca de garrafa (I:1/9) so simulados com chaves on-off e o atuador de descarte simulado com uma lmpada. 94. 94 DESAFIO: Acrescente, no programa exemplo de movimentao de dados, as instrues que realizem a contagem do nmero de garrafas quebradas, acionando um alarme quando este nmero atingir 20 unidades. 95. 95 ANEXO 1 96. 96 SISTEMAS DE NUMERAO. Todos ns, quando ouvimos pronunciar a palavra nmeros, automaticamente a associamos ao sistema decimal com o qual estamos acostumados a operar. Este sistema est fundamentado em certas regras que so bases para qualquer outro. Vamos, portanto, estudar estas regras e aplic-las aos sistemas de numerao binria, octal e hexadecimal. Estes sistemas so utilizados em computadores digitais, circuitos lgicos em geral e no processamento de informaes dos mais variados tipos. O nmero decimal 573 pode ser tambm representado da seguinte forma: 57310 = 500 + 70 + 3 ou 57310 = 5 x 102 + 7 x 101 + 3 x 100 Isto nos mostra que um dgito no sistema decimal tem, na realidade, dois significados. Um, o valor propriamente dito do dgito, e o outro o que esta relacionado com a posio do dgito no nmero (peso). Por exemplo: o dgito 7 no nmero acima representa 7 x 10, ou seja 70, devido a posio que ele ocupa no nmero. Este principio aplicvel a qualquer sistema de numerao onde os dgitos possuem "pesos", determinados pelo seu posicionamento. Sendo assim, um sistema de numerao genrico pode ser expresso da seguinte maneira: N = dn. Bn +...+ d3.B3 + d2.B2 + dl.B1 + d0.B0 Onde: N = Representao do nmero na base B dn = Dgito na posio n B = Base do sistema utilizado n = Valor posicional do dgito por exemplo, o nmero 1587 no sistema decimal representado como: N = d3.B3 + d2.B2 + dl.B1 + d0.B0 158710 = 1.103 + 5.102 + 8.101 + 7.100 Sistema de Numerao Binrio O sistema binrio utiliza dois dgitos (base 2), para representar qualquer quantidade. De acordo com a definio de um sistema de numerao qualquer, o nmero binrio 1101 pode ser representado da seguinte forma: 11012 = l x 22 + l x 22 + 0 x 21 + l x 20 97. 97 11012 = 8 + 4 + 0 + l = 1310 Note que os ndices foram especificados em notao decimal, o que possibilita a converso binria-decimal como descrito acima. Atravs do exemplo anterior, podemos notar que a quantidade de dgitos necessrios para representar um nmero qualquer, no sistema binrio, muito maior quando comparada ao sistema decimal. A grande vantagem do sistema binrio reside no fato de que, possuindo apenas dois dgitos, estes so facilmente representados por uma chave aberta e uma chave fechada ou, um rel ativado e um rel desativado, ou, um transistor saturado e um transistor cortado; o que torna simples a implementao de sistemas digitais mecnicos, eletromecnicos ou eletrnicos. Em sistemas eletrnicos, o dgito binrio (0 ou 1) chamado de BIT, enquanto que um conjunto de 8 bits denominado BYTE. Converso Binrio - Decimal A converso de um nmero do sistema binrio para o sistema decimal efetuada simplesmente adicionando os pesos dos dgitos binrios 1, como mostra o exemplo a seguir a) 1 1 0 1 02 b) 1 1 0 0 1 0 02 Soluo: a) 1 1 0 1 02 = 1.24 + 1.23 + 0.22 + 1.21 + 0.20 1 1 0 1 02 = 16 + 8 + 0 + 2 + 0 1 1 0 1 02 = 2610 b) 1 1 0 0 1 0 02 = 1.26 + 1.25 + 0.24 + 0.23 + 1.22 + 0.21 + 0.20 1 1 0 0 1 0 02 = 64 + 32 + 0 + 0 + 4 + 0 + 0 1 1 0 0 1 0 02 = 10010 Converso Decimal - Binrio Para se converter um nmero decimal em binrio, divide-se sucessivamente o nmero decimal por 2 (base do sistema binrio), at que o ltimo quociente seja 1. Os restos obtidos das divises e o ltimo quociente compem um nmero binrio equivalente, como mostra o exemplo a seguir. Converter os seguintes nmeros decimais em binrio. a) 2310 b) 5210 98. 98 Soluo: logo: a) 23 2310 = 1 0 1 1 12 b) 52 5210 = 1 1 0 1 0 02 Complemento de 2 Na maioria dos sistemas digitais, a operao de subtrao efetuada atravs da representao de nmeros negativos usando complemento de 2. Por exemplo, a operao 7 - 5 pode ser representada como sendo 7 + (-5). Observe que, na segunda representao, a operao efetuada uma adio de um nmero positivo com um negativo. O complemento de 2 um nmero binrio obtido adicionando-se l ao complemento de 1 do mesmo. O complemento de 1 obtido simplesmente invertendo-se os dgitos que formam o nmero. Exemplo: Calcule o 20 complemento dos seguintes nmeros binrios. a) 1 0 0 12 b) 1 1 0 12 S