Esta apostila tem como principal objetivo apresentar ao aluno os tpicos fundamentais sobre Controladores Programveis CPs ou Controladores Lgicos Programveis CLPs como: ! Histrico ! Arquitetura de hardware ! Ciclo de operaes ! Memrias, endereamento e instrues de BIT ! Aplicaes
Esta apostila tambm apresenta um resumo do sistema de endereamento do CLP SLC-500 e do sistema de programao e de operao dos softwares RS LINX e RS LOGIX. (Obs. Tanto o CLP SLC-500 como os softwares RS LINX e RS LOGIX so produtos da Rockwell Automation doados a Universidade de So Paulo por meio do convnio EPUSP/Rockwell Automation do Brasil.)
2. INTRODUO HISTRICO DOS CLPs:
O desenvolvimento do CLPs ( Controladores Lgicos Programveis) ou CPs (Controladores Programveis) comeou por volta de 1968 quando a General Motors solicitou indstria eletrnica uma alternativa para a lgica eletromecnica baseada em rels.
VARIVEIS DE SADA CONTROLADOR VARIVEIS DE ENTRADA PROCESSO PLANTA Fig. 1 Diagrama em blocos de um sistema de controle genrico.
2
Os sistemas de rels utilizados nas atividades industriais: montagem, carregamento e controle de mquinas haviam se tornados grandes e complexos, aumentando significativamente os custos de manuteno e baixando a confiabilidade. Outro problema era a grande complexidade envolvida em qualquer mudana na planta industrial ou produtiva.
MQUINA MQUINA
Fig. 2 Ilustrativo de uma planta industrial 3
Inicialmente os CLPs foram produzidos somente para simular a ao de rels num circuito de intertravamento. Hoje, os CPs tambm incorporam funes avanadas como: controle estatstico, controle de malha, comunicao em rede etc.
3. ARQUITETURA DOS CLPs
O CLP um equipamento de estado slido que pode ser programado para executar instrues que controlam dispositivos, mquinas e operaes de processos, por meio da implementao de funes especficas como lgica de controle, sequenciamento, controle de tempo, operaes aritmticas, controle estatstico, controle de malha, transmisso de dados, etc. Os CLPs so projetados e construdos para operarem em ambientes severos, portanto devem resistir a altas temperaturas, rudos eltricos, poluio atmosfrica, ambientes nicos etc. Sua capacidade quanto ao nmero de entradas e sadas, memria, conjunto de instrues, velocidade de processamento, conectividade, flexibilidade, IHM etc. varia conforme o fabricante e modelo. A figura seguinte ilustra a arquitetura bsica de um CLP genrico composto de CPU, memria, dispositivos de entrada e de sada, interface homem/mquina e fonte controlando uma planta industrial genrica.
4
PROCESSO OU MQUINA DISPOSITIVO INTERFACE IMPRESSORA MONITOR DE PROGRAMAO MICRO DISPLAY
FONTE CPU
MEMRIA Cartes de Entrada Cartes de Sada
Reles, contadores, vvulas, Sensores mecnicos, indutivos, foto Planta controlada Fig. 3 Ilustrativo da arquitetura bsica de um CLP. 5
A arquitetura bsica de um CLP composta de cinco elementos: a Unidade Central de Processamento (CPU). A CPU o centro nervoso do sistema. Ela recebe os sinais digitais e os sinais analgicos dos sensores do campo conectados aos mdulos de entrada e tambm recebe os comandos e os dados via comunicao em rede (quando for o caso). Em seguida executa as operaes lgicas, as operaes aritmticas e avanadas como as de controle de malha programadas na memria do usurio e atualiza os cartes de sada digitais e analgicos.
b Memria. dividida em duas partes: instrues do programa executivo que controla as atividades da CPU e instrues do programa de aplicao do usurio. Normalmente esta ltima memria pode ser expandida pelo usurio.
c Mdulos de entrada e sada (E/S) tambm chamados de Cartes de I/O Possibilitam a interface entre os dispositivos do usurio com a CPU. Existe uma grande variedade de mdulos de entrada e de sada como: mdulo de entrada de corrente contnua para tenses de 24 Volts., mdulo de entrada de corrente alternada para tenses de 220 Volts., mdulo de entrada analgico de tenso e corrente, mdulo de sada analgico de tenso ou de corrente, mdulos especiais para controle de malha, mdulos de comunicao, etc.
d Dispositivos de Programao e de Leitura (HIM). So os diversos dispositivos de interface Homem/mquina conectados aos CLPs. Atualmente os dispositivos de programao dos CLPs tambm variam em tamanho e capacidade. Tambm podem servir para monitorar o andamento do programa, as variveis internas e os dispositivos de campo. Podem ser portveis ou no, e tambm so empregados para a introduo do programa de aplicao na memria do CLPs. Muitos fabricantes fornecem ou vendem pacotes de software, para que a programao e edio seja feita em um micro tipo PC para que o programa depois de editado no micro seja carregado no CLP diretamente ou por meio de uma rede de comunicao. 6
e Fonte de alimentao. Fornece todos os nveis de tenso exigidos para as operaes internas do CLP. Convm lembrar que como geralmente os CLPs so modulares, existem casos que uma segunda fonte necessria devido ao aumento de consumo com a expanso dos mdulos de sada. Cada fabricante especfica s condies que tornam necessrias uma segunda fonte. Certos modelos de CLPs so projetados para operarem com uma tenso de alimentao de 220 Volts., outros trabalham com tenso de alimentao contnua de 24 Volts.
4. PRINCPIO DE FUNCIONAMENTO E CONCEITO DE SCAN
O princpio de funcionamento de um CLP baseia-se no ciclo denominado SCAN. A CPU de um CLP processa as instrues que so programadas pelo usurio e juntamente com a realimentao da situao (status) dos dispositivos de entrada e de sada, gera os comandos para os mdulos de sada. Os comandos enviados controlam dispositivos como: reles, contadores, solenides, lmpadas, etc. A figura seguinte ilustra o SCAN de um CLP.
SCAN DE SADA SCAN DE PROGRAMA SCAN DE ENTRADAS Fig. 4 Ilustrativo do ciclo de SCAN de um CLP. 7
O SCAN de um CLP sub-dividido em trs SCANs: SCAN de entrada, SCAN de programa e SCAN de sada. Durante o SCAN de entrada efetuada a leitura de todas as variveis e dados disponveis nos cartes de entrada. Ou seja, durante o SCAN de entrada que os dados disponveis nos cartes de entrada so copiados para uma rea de memria da RAM geralmente definida como rea de imagem de entrada (endereo da memria pr-estabelecido). Terminado o SCAN de entrada a CPU inicia o SACN de programa. de entrada no SCAN de entrada, em seguida, inicia a seqncia do programa efetuado pelo usurio. durante o SACN de programa que a lgica programada pelo usurio executada. Terminado o SACN de programa iniciado o SCAN de sada quando ento os cartes de sada sero atualizados com os dados ou variveis que esto na rea de memria RAM geralmente definida como imagem das sadas de um CLP, (endereo de memria pr-estabelecido) . Diversos modelos tambm apresentam a possibilidade de se alterar o ciclo do SCAN gerando dessa forma quatro tipos bsicos de SCAN:
A Ciclo elementar ( entradas!programa!sadas).
B - Ciclo de entradas agrupadas, sadas distribudas) (entradas!processamento!sadas!processamento de sadas).
C - Ciclo distribudo (E/S ativadas conforme requisitadas) (E!P!O!I!P!.........
D Ciclo distribudo com sub clock .
Existe hoje no mercado uma grande variedade de linguagens para programao de CLPs, porm, a linguagem at hoje mais utilizada a linguagem Relay Ladder Diagrams, comumente chamada de linguagem de ladder combinada com funcional blocks. Nesta linguagem os comandos imitam a estrutura de um esquema de circuito de intertravamento baseado em lgica de reles. Entretanto convm lembrar que esta estrutura de linguagem assemelha-se mas, no opera exatamente como um circuito de rels. Um programa de CLP composto basicamente de instrues de entrada e instrues de sada. Durante uma instruo de entrada a CPU verifica uma pergunta ou uma comparao. Caso a resposta seja afirmativa estipulado durante o SACN atual 8
uma continuidade lgica do trecho de linha. Uma instruo de sada processada conforme exista ou no continuidade lgica de linha at ela. O tempo de SCAN total depende da velocidade (potncia) do CLP e do tamanho do programa de aplicao do usurio. Neste tempo deve ser computado o tempo de atualizao dos mdulos de entrada e sada. Determinadas instrues dos CLPs por serem mais complexas necessitam de um tempo maior de processamento. Os valores tpicos de SCANs dos CLPs comerciais variam de 1 ms at 10 ms para cada 1 k tpico de instrues. Portanto deve conhecer antecipadamente qual o perodo de ciclo do processo que se deseja controlar utilizando um CLP, e se o tempo do scan do CLP significativamente menor para se atingir as condies bsicas de controlabilidade. Esses dados so importantes tanto para os processos de intertravamento, como para os processos de controle contnuo de malhas fechadas, quando o CLP utiliza instrues ou mdulos de controle PID (Proporcional, Integral, Derivativo). No SCAN de programa as instrues do programa so executadas seqencialmente (ou seja, uma instruo depois da outra na seqncia direta de como foram carregadas no programa), portanto a ordem de como elas so introduzidas no programa pode alterar o nmero de SCAN necessrios para se obter uma determinada condio ou at mesmo a prpria condio final de uma determinada lgica. As figuras seguintes ilustram como no nmero de SCANs necessrios para que uma varivel de sada seja alterada em funo de uma alterao de uma varivel de entrada pode ser maior em funo de como o programa foi editado e como o resultado tambm pode ser outro.
9
Se I-E1 for verdadeiro, A Sada conectada O-S1 Ser acionada aps quatro Scan. Se I-E1 for verdadeiro, A Sada conectada O-S1 Ser acionada aps um Scan. B1 I-E1 B2 B1 B3 B2 O-S1 B3 O-S1 B3 B3 B2 B2 B1 B1 I-E1 Fig. 5 Ilustrativo de alterao de performance em funo da seqncia de instrues introduzida.
A figura seguinte ilustra um exemplo de alterao de resultado em funo da seqncia de programao.
B2 ficar verdadeiro no presente
B2 nunca ficar verdadeiro. Sempre que A1 for verdadeiro scan, e ser desligado Do segundo scan em diante. B2 B1 A1 B1 A1 B2 B1 A1 B1 A1 Fig. 5 Ilustrativo de alterao de performance em funo da seqncia de instrues introduzida. 10
Existem basicamente cinco tipos de linguagens de programao para os CLPs .
a - Ladder Diagrams b -Functional Blocks c - Boolean Mnemonics d - English Statements e GRAFSET ou Sequential Function Chart (SFC)
Dependendo do modelo, o CLP pode aceitar duas ou mais linguagens de programao. Existem CLPs cuja linguagem de programao aceita formada pela combinao entre dois tipos. Normalmente a combinao mais comum Ladder Diagrams com Functional Blocks.
Entretanto, dependendo do modelo e do fabricante do CLP, o set de instrues pode conter instrues avanadas como por exemplo funes de controle de malha por algoritmo PID e por lgica Fuzzy.
5. INSTRUES BSICAS EM DIAGRAMA LADDER (CLPs)
! Instrues de BIT Examinar " (XIC) ! Examinar se energizado " (XIO) ! Examinar se desenergizado " (OSR) ! Monoestvel sensvel Borda de Subida " (OTE) ! Energizar sada " (OTL) ! Energizar sada com reteno " (OTU) ! Desabilitar sada com reteno
11
ARQUIVOS QUE PODEM UTILIZAR Arquivo de Entrada e Sada Arquivo de Status Arquivo de BIT Arquivo de temporizador, contador e controle Arquivo Inteiro
Endereo ! XIC N o do Bit Estado do BIT Instruo XIC 0 Falsa 1 Verdadeira
Endereo ! XIO N o do Bit Estado do BIT Instruo XIO 0 Verdadeira 1 Falsa
Endereo
! OTE N o do BIT
Caso haja continuidade lgica da linha o bit endereado pela instruo ser colocado no estado lgico 1. Se no houver continuidade na linha o bit endereado pela instruo ser colocado no estado lgico 0.
12
Endereo ! OTL L N o do BIT Uma vez habilitada a sada endereada pela instruo, a mesma somente ser desabilitada caso a instruo OTU seja acionada.
Endereo OTU U N o do BIT Desabilita uma sada habilitada por uma instruo OTL.
INSTRUES: TEMPORIZADOR E CONTADOR
! TON ! Temporizador ! utiliza 3 palavras ! (Exemplo de instruo temporizador) 15 14 13 EN TT DN USO INTEANO VALOR PR SELECIONADO VALOR ACUMULADO
EM (15) ! BIT de Habilitao TT (14) ! BIT de Temporizao DN (13) ! BIT de Executado (Exemplo da instruo tempori\ador em diagrama ladder)
TON TIMER ON DELAY EN TIMER T4:0 TIMER BASE 0.01 DN PRESET 120 ACCUM 0
Inicia a contagem nos intervalos da base de tempo selecionada quando a condio da linha se torna verdadeira.
13
! TOF ! Inciar a temporizao quando a condio da linha realiza uma transio de falsa para verdadeira. Funciona de maneiras contrrias ao TON
! RTO ! Igual ao TON com a diferena que o valor acumulado retido quando a linha torna-se falsa.
! RES ! Zera o valor acumulado do contador
! CTU ! Contador crescente Incrementam o valor acumulado ! CTO ! Contador decrescente a cada transio do F/V ! RES ! Zera o (CTU e CTO)
( Exemplo)
09 08 07 06 05 04 03 02 01 00 CU CD DN OV UM VA No Utilizada PR-SEL. ACUM.
As tabelas seguintes ilustram o set bsico de um CP genrico.
14
15 Tipo de Operao Linguagem Bsica Linguagem de Alto Nvel
Contato normalmente aberto.
Contato normalmente fechado.
Bobina de Energizao.
Bobina de Est. Complementar de Energizao.
L Bobina com Memria ao Est./ON.
Bobina de Desativao da Anterior
Contato Transacional OFF-ON. Linguagem Lgica
Contato Transacional ON-OFF.
TON
Temporizador ao fechamento.
TOF
Temporizador a abertura.
RTO
Temporizador ao fechamento com memria.
RTR
Bobina de Desativao dos Temp. Retentivos.
CTU
Contador Incremental crescente.
CTD
Contador Incremental decrescente Temporizao e Contadores
CTR
Bobina de desativao dos contadores. U
+
Soma
-
Subtrao
x
Multiplicao Aritmtica
Bobina de Desativao dos Temp. Retentivos.
CMP =
Comparao de igualdade
CMP >
Comparao maior que Manipulao de dados
CMP <
Comparao menor que
GET
Leitura de contedo Transferncia de dados
PUT
Escrita de contedo
MCR
Rel mestre Controle de fluxo de programa
ZCL
Rel de controle de ltimo estado 16
JMP
Desvio condicional
LBL
Endereo do desvio condicional
JSB
Chamada de sub-rotina
RET
Retorno de sub-rotina
A tabela seguinte ilustra a equivalncia entre os dois tipos de linguagem: MNEMONIC FUNCTION LADDER EQUIVALENT LD/STR Load/Start #$] [$ LD/STR NOT Load/Star Not #$%&'$ AND And Point $% '$ AND NOT And Not Point $%&'$ OR Or Point # OR NOT Or Not Point # OUT Energize Coll () *( OUT NOT De-Energize Coil () & *( OUT CR Energize Internal Coll () *( OUT L Latch Output Coll () L *( OUT U Unlatch Output Coll () U *( TIM Timer () TON *( CNT Up Counter () CTU *( ADD Addition () + *( SUB Subtraction () $ *( MUL Multiplication () x *( DIV Division () + *( CMP Compare =, <, > () CMP *( JMP Jump () JMP *( MCR Master Control Relay () MCR *( END End MCR, Jump, or Program () END *( ENT Enter Value for Register No Required
17
6 OUTRAS LINGUAGENS DE PROGRAMO DE CLPs Em 1975, a Association Franaise pour la Cyberntique Econmiuqe et Technique (AFCET), formou uma comisso de trabalho chamada Comission de Normalisation de la Reprsentation du Cahier de Charges dun Automatisme Lgique, com objetivo de conceber uma ferramenta nica para especificao de sistemas de controle lgicos. Esta mesma comisso apresentou em 1978 um comunicado, propondo um modelo para a descrio e representao da especificao de um sistema lgico complexo, batizado de GRAFCET (Graphe de Comando Etape-Transition). A principal caracterstica dessa metodologia que os mtodos de anlise propostos para redes de Petri-Net podem ser utilizados na descrio e representao de sistemas. GRAFCET tambm chamado de Sequential Function Chart (SFC), e algumas grandes companhias do mercado a vm incluindo em seus modelos, como no caso da Allen-Bradley na famlia PLC-5, que tanto pode ser programada por Ladder Logic Diagrams ou por SFC. Uma companhia que tambm teve sucesso com uma diferente linguagem de programao de CPs a Adatek of Sandponit, Idaho. Adatek desenvolveu em 1980 uma linguagem chamada Process State Monitor (PSM), e j possui mais de 1300 sistemas instalados no mercado Americano. PSM uma linguagem de alto nvel tipo state- type, que permite ao programador especificar diretamente o que deve acontecer com o sistema. Consiste apenas de 12 caracteres ASCII, que podem ser utilizados em testamentos que descrevem o sistema. O diagrama de estados primeiramente construdo por meio de blocos que mostram os estados do sistema,as funes, as condies e as transies de um estado para o outro. Como nos ltimos anos uma grande variedade de novos modelos de CPs foi introduzida no mercado, bem como vrias linguagens novas de programao, alguns autores prevem que a linguagem Ladder ser aposentada em breve. Contudo, esta uma questo difcil, pois como se sabe, existe um nmero significativamente grande de usurios e programadores j familiarizados com a linguagem de rels.
18
7 ENDEREAMENTO E SISTEMAS DE NUMERAO TRADICIONAIS DE CLPs A capacidade de memria e a filosofia de endereamento dos CLPs varia de modelo para modelo e de fabricante para fabricante. Porm, qualquer CLP deve ter uma rea de sua tabela de dados que represente uma imagem virtual das entradas ligadas aos cartes de entrada, e uma rea da tabela de dados que represente uma imagem virtual das sadas ligadas aos cartes de sada. Como geralmente os CLPs so moduladores, (ou seja a sua configurao pode ser expandida dentro de certos limites) estas reas podem tambm variar respeitando a filosofia de projeto do fabricante. Essas reas so normalmente designadas como imagem das entradas e imagem das sadas. Alguns fabricantes especificam quais so os endereos vlidos para cada tipo de funo, outros permitem uma maior flexibilidade. Porm qualquer que seja o modelo e sistema de numerao empregado no endereamento, a filosofia dos diversos CLPs parecida. Normalmente os CPs utilizam palavras de 16 bits chamadas de registradores ou registros e variveis binrias de um bit chamados de pontos. Entretanto, j existem no mercado CLPs que utilizam palavras de 32 bits. As variveis binrias so utilizadas para representar os pontos de entrada e sada (contatos) e tambm para representar bobinas internas que podem ser: bobinas retentivas, bobinas transicionais, bobinas globais, bobinas de controle, etc. A figura seguinte ilustra uma parcela da rea de memria de um CLP genrico.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Endereos bits
19
Fig. 6 rea de memria de um CLP genrico
Assim sendo, a codificao em Diagrama Ladder de um endereo de um CLP genrico fica. | Endereo + n do Bit| 50 10 |---------------| |--------------------------------( )------------| 15 02
O exemplo acima significa que o registro nmero (endereo) 50 bit 15 se for levado para condio 1 (verdadeiro) acionar a bobina representada pelo registro nmero (endereo) 10 bit 02. Portanto, ao olhar para o nmero do Ponto, o usurio pode determinar o registrador que contm o nmero do ponto e o bit individual dentro daquele registrador. Caso deseja-se registrar valores de temporizaes, contagens, valores estatsticos, etc., ento por exemplo, os registradores sero tidos nos sistemas 16 bits como variveis de 16 bits podendo armazenar valores entre +32768 a 32767.
8 CONTROLE DE MALHA FECHADA, MONITORIZAES E INTEGRAO DE CLPs A UM SISTEMA DE CONTROLE HIERARQUIZADO.
Alguns modelos de CLPs permitem controle de malha em processos contnuos. Neste caso alm dos cartes convencionais de E/S, eles podem ser ligados a cartes analgicos de leitura (A/D) e escrita (D/A). Uma configurao tpica de controle ilustrada na figura seguinte.
Cartes de E/S digitais
CLP
PROCESSO Amplificador e atuador Carto D/A Sensor 20
Fig. 7 Ilustrativo de um CLP sendo tambm empregado em um controle de malha.
9.1 Aplicaes
Inicialmente (anos 70) os CLPs foram concebidos para trabalharem isoladamente no controle de processos. Porm, com a evoluo dos demais equipamentos de controle destinados a automao e a necessidade de uma integrao de diversos processos produtivos, os fabricantes de CLPs vem desenvolvendo novos modelos que possibilitam a integrao dos mesmos as sistemas supervisionados e hierarquizados. Hoje existem redes de CLPs e de automao que permitem a sua integrao dentro dos padres (OSI), podendo dessa forma estarem integrados a um (SDCDs) por exemplo, ou trabalharem dentro de uma estrutura (CIM). comum encontrar CLPs integrados a robs e mquinas de CNCs formando clulas flexveis de montagens. A figura seguinte ilustra o conceito da pirmide da automao.
NVEIS
21 Interface para equipamentos de tempo real
PLANTA
CENTRAL
CENTRAL
ESTAO
MQUINA Planejamento geral execuo e controle Planejamento, produo, gerenciamento e informao Coordenao e estaes mltiplas
Equipamento de controle de tempo real
22
Fig. 8 Ilustrativo da pirmide industrial. A figura seguinte ilustra uma automao efetuada at o nvel trs da pirmide industrial.
CLPs SUPERVISRIO
Fig. 9 Ilustrativo de uma automao implementada 10 Estrutura de Programa e do Sistema de Endereamento do CLP SLC 500
Cada novo projeto de automao que envolva Controladores Programveis deve, como sempre, obedecer s normas tcnicas e, portanto, o engenheiro de automao deve inclusive adotar os procedimentos recomendados pela engenharia de software para que a gesto do projeto de automao possa ser eficiente e transparente. Assim sendo, o engenheiro de automao deve tambm, conhecer a estrutura de hardware e de software dos equipamentos empregados no projeto em questo. A estrutura do programa de um CLP da famlia SLC 500 obedece seguinte arquitetura: Cartes remotos Data File Program File
Processor File , Program
Fig. 10 Estrutura de programa no CLP SLC 500
Processor file: O Processor file (arquivo processador) uma coletnea de arquivos de programa e de arquivos de dados criados sob um nome particular de Processor fileou program. 23
Cabe ao usurio definir o nome do Processor file. Sugere-se que a escolha do nome do Processor files seja a mais racional possvel e que tambm, seja relacionada com o nome do projeto que se est trabalhando. Exemplo: Suponha que o controle de proteo da plataforma 25 de um campo petrolfero esteja sendo automatizado. Ento um dos possveis nomes dado ao Processor file deste projeto de automao da proteo da plataforma pode ser PLAT_25_PROTEO_1 Convm lembrar que a correta denominao deste nome adotada pelo engenheiro fundamental para que a gesto do projeto possa ser realizada de forma eficiente. O Processor file pode estar localizado: no terminal de trabalho do RS Logix , no hard disk, num disquete, no prprio processador do SLC ou num mdulo de memria EEPROM ou UVPROM. O mesmo pode ser transferido, copiado, entre todas reas descritas.
Fig. 11 Ilustrativo da localizao de um Processor file
O Processor file conforme foi explicado composto pelos: Program Files e do Data Files.
Program Files: Os Program Files ou os (Arquivos de Programas) so os arquivos que um contm as informaes de controle e de configurao do hardware necessrias para que o CLP possa executar o seu programa. So compostos de trs 24
arquivos bsicos: System Program, Main Ladder Program, Subroutine Ladder Program. Sendo que os dois primeiros so gerados automaticamente a cada novo program file e o ltimo gerado opcionalmente pelo usurio.
- System Program / file 0 ( Programa de sistema / arquivo 0) Este o arquivo que contm as informaes relacionadas ao sistema e as informaes programadas pelo usurio, como: o tipo de processador, a configurao dos cartes de entrada e de sada, nome do arquivo processador, e senha. - Main Ladder Program/ file 2 (Programa Ladder Principal / arquivo 2) Este o arquivo que contm as informaes programadas pelo usurio que controlaro a operao da planta que est sendo automatizada. Em outras palavras neste arquivo que o algoritmo do processo implementado.
- Subroutine Ladder Program/ file 3 - 255 (Programa Ladder Sub-rotina) Estes arquivos so criados opcionalmente pelo usurio, quando o mesmo julgar necessrio que haja seqncias do algoritmo do processo do programa ladder principal que somente devam ser executadas quando eventos especficos ocorram. Desta forma o processador no desperdia tempo de execuo.
Data Files Estes arquivos contm os dados associados com as instrues que esto no arquivo Ladder de programa. Cada programa pode conter at 256 arquivos de dados. Estes arquivos so organizados pelo tipo de dados que eles contm. 25
Os nove primeiros arquivos de dados numerados de 0 a 8 so criados automaticamente e so dos seguintes tipos.
- Sada / arquivo 0 Este arquivo utilizado para armazenar os estados dos terminais de sada do controlador. - Entrada / arquivo 1 Este arquivo utilizado para armazenar os estados dos terminais de entrada do controlador. - Status / arquivo 2 Este arquivo utilizado para armazenar as informaes de operao do controlador como por exemplo problemas e operao de controle. - Bit / arquivo 3 Este arquivo utilizado para armazenar informaes de bit internas. - Timer / arquivo 4 Este arquivo utilizado para armazenar as informaes pertinentes dos temporizadores definidos pelo usurio. - Contador / arquivo 5 Este arquivo usado para armazenar o valor acumulado do contador e do preset, e tambm bits de status. - Controle / arquivo 6 Este arquivo utilizado para armazenar as informaes pertinentes dos contadores definidos pelo usurio. - I nteger / arquivo 7 Este arquivo utilizado para armazenar valores numricos ou tambm as informaes de bit. - Reservado / arquivo 8 Este arquivo no acessvel para o usurio. - Definido pelo usurio / arquivos 9 255 Estes arquivos so definidos pelo opcionalmente pelo usurio como sendo arquivos: bit, timer, contador, controle, e / ou armazenagem interna de dados.
26
10.1 Organizao e Endereamento dos Arquivos de Dados. Os arquivos de dados contm as informaes de status associadas com as entradas e as sadas e com todas as outras instrues utilizadas no arquivo Ladder do programa principal ou nos arquivos de sub-rotinas. Tambm podemos dizer que estes arquivos armazenam as informaes relativas s operaes do processador. Os arquivo de dados esto localizados na memria do processador: A figura seguinte ilustra e seqncia dos nove primeiros arquivos de dados.
0 1 2 3 4 5 6 7 8 9 10 - 255 Sada de Imagem
Entrada de Imagem
Status
Bit
Timer
Counter
Control
Integer
Reservado
**
Bit, Timer, Counter, Control ou Integer, como for necessrio.
27
** - O arquivo de dado nmero 9 pode ser usado para transferncia de redes na rede DH-485.
10.2 Endereamento de I/O para Controlador modular:
Com o controlador modular, o slot nmero 0 reservado para o modulo do processador (CPU), portanto o endereo 0 do rack ou seja slot 0 invalido para qualquer carto de I/O. A figura seguinte ilustra a configurao de uma arquitetura utilizando dois racks (um local, outro remoto).
O:3/15 Sada 15 do slot 3. O:5/0 Sada 0 do slot 5. O:10/11 Sada 11 do slot 10. I:7/8 Entrada 8 do slot 7. I:2.1/3 Entrada 3 do slot 2 palavra 1.
Exemplos de palavras:
O:5 Palavra de sada 0 do slot 5 O:5.1 Palavra de sada 1 do slot 5 I:8 Palavra de entrada 0 slot 8
Arquivo de Dados nmero 3 Bit
29
O arquivo 3 o arquivo de bit, primeiramente usado para instruo de bit.O tamanho mximo deste arquivo de 256 elementos de palavra, ou seja, um total de 4096 bits. Podemos enderear um bit especificando o nmero do elemento (0 a 255) e o nmero de bit (0 a 15) dentro do elemento.Tambm se pode enderear os bits numerando-os em seqncia ( 0 a 4095). A figura seguinte ilustra a rea de memria relativa ao arquivo de Bit.
Bit 0, elemento 252, endereo B3 252 / 0. Tambm pode ser expresso como bit 4032. Endereo B3 / 4032. Bit 14, elemento 3, endereo B3/14 tambm podemos expressarmos como bit 62. Endereo B3 / 62. 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 B3:252
B3:253
B3:254
B3:255 B3:0
B3:1
B3:2
B3:3
30 Arquivo tipo bit
Numero do arquivo. O numero 3 padro de arquivo, caso exista a necessidade de mais arquivo podemos utilizar os arquivos de 10 a 255.
Elemento delimitado
Nmero Arranjos de 0 a 255. Este so 1 elemento de do elemento palavra, 16 bits por elemento.
Bit delimitador
Numero de Bit localizado dentro do elemento (0 a B
f
:
e
/
b Explicao Formatao
B f:a / b
Arquivo de Dados nmero 4 Temporizadores Timers
A instruo de temporizao permite que o CLP possa computar e medir um determinado tempo a partir de um dado evento. Essa intruo denominada de timers. A mesma emprega 3 palavras da memria do CLP conforme a seguinte estrutura. A palavra 0 a palavra de controle, a palavra 1 armazena o valor pr- selecionado da temporizador e a palavra 2 armazena o valor acumulado: A figura seguinte ilustra a estrutura dessa instruo.
Valor Acumulado ACC Valor de Preset PRE EN TT DN I Uso Interno Palavra
0
1
2
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bits de controle da palavra 0:
EN Bit 15 Enable (bit 15 habilitado) TT Bit 14 Timer Timing (bit 14 temporizando) DN Bit 13 Done
A base de tempo pode ser definida pelo usurio. Pode ser de 0,01 seg. ou de 1 seg.
Exemplos: T4:0 Elemento 0, arquivo de timer 4.
T4: 0/15 ou T4:0 EN T4: 0/14 ou T4:0 TT T4: 0/13 ou T4:0 DN
T1: 0.1 ou T4:0 PRE T4: 0.2 ou T4:0 ACC
T4: 0.1 / 0 Bit 0 do valor presente T4: 0.2 / 0 Bit 0 do valor acumulado
31
Arquivo de Dado nmero 5 - Contadores
Os contadores so elementos de 3 palavras. A palavra 0 a palavra de controle, a palavra 1 armazena o valor presente e a palavra 2 armazena o valor acumulado:
Elemento Contador
Valor Acumulado ACC Valor de Preset PRE EN TT DN I Uso Interno Palavra
0
1
2
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bits de controle da palavra 0:
CU Contagem crescente habilitada. CD Contagem decrescente habilitada. DN Bit de DONE. OV Bit de OVERFLOW . UN Bit de UNDERFLOW. UA Valor Acumulado atualizado.
Exemplos: C5:0 Elemento 0, arquivo CONTADOR 5.
C5: 0/15 ou C5:0 CU C5: 0/14 ou C5:0 CD C5: 0/13 ou C5:0 DN C5: 0/12 ou C5:0 OV C5: 0/11 ou C5:0 UN C5: 0/10 ou C5:0 UA C1: 0.1 ou C5:0 PRE C5: 0.2 ou C5:0 ACC C5: 0.1 / 0 Bit 0 do valor presente C5: 0.2 / 0 Bit 0 do valor acumulado
32
11. Bibliografia:
R. W. Lewis Programming industrial control systems using IEC 1131-3 1995. G. Michell Programmable Logic Controllers Archiecture and Applications John Wiley & Sons Ltd. England 1990. Allen-Bradley Micro Mentor. Entendendo e utilizando os microcontroladores Programveis 1999. P. L. Castrucci, C. C Moraes Engenharia de Automao Industrial LTC Livros Tcnicos e Cientficos Editores S.A. 2001. F. Natale Automao Industrial rica 1995. Manuais Rockwell Automation Manuais AEG Schneider Automation C. C. Moraes, E. Senger, S. L. Pereira Laboratrio de Automao PEA EPUSP 1995.