programacao basica clp altus

Upload: brucepitibull

Post on 07-Jul-2015

1.019 views

Category:

Documents


7 download

TRANSCRIPT

1

Programao Bsica Clp Altus.

MasterTools Programming.

Al-600, PL103 e PO3045.

2

ndiceMasterTools Programming............................................................................ 1 Al-600, PL103 e PO3045.................................................................................. 1 ndice........................................................................................................................... 2 1.0 Clp - Evoluo histrica..................................................................................... 6 1.1 Filosofia bsica................................................................................................... 6 1.2 Linguagens e formatos para programao......................................................... 6 1.3 Aplicabilidade..................................................................................................... 7 1.4 Hardware caracterstico..................................................................................... 7 1.5 Sistemas de memria......................................................................................... 9 1.5.1 Memria Executiva (Rom e Eprom)............................................................. 9 1.5.2 Memria do Sistema (Ram)......................................................................... 9 1.5.3 Memria de Status (Ram)............................................................................ 9 1.5.4 Memria de dados (Ram)............................................................................ 9 1.5.5 Memria do Usurio (Ram e Eprom)........................................................... 9 2.0 Sistemas de numerao................................................................................... 10 3.0 Lgica digital.................................................................................................... 11 4.0 Portas lgicas bsicas...................................................................................... 11 4.1.1Funo E (AND)....................................................................................... 11 4.1.2 Funo OU (OR).................................................................................... 11 4.1.3 Funo NO (NOT)............................................................................... 13 4.1.4 Funo NO E (NAND).......................................................................... 13 4.1.5 Funo NO OU (NOR)........................................................................... 14 4.1.6 Funo OU EXCLUSIVO (XOR)................................................................ 14 4.1.7 Funo NO OR EXCLUSIVO (EXNOR).................................................. 15 4.1.8 Funo Memria (FLIP-FLOP).................................................................. 15 5.0 Controlador AL-600.......................................................................................... 16 5.1 Programao bsica dos CLPs Altus............................................................... 16 5.1.1 Aspectos gerais......................................................................................... 16 5.1.1.1 Lgicas................................................................................................ 16 5.1.1.2 Operandos ......................................................................................... 16 5.1.1.3 Operando rel de entrada E............................................................. 17

3

5.1.1.4 Operando rel de sada - S................................................................. 17 5.1.1.5 Operando rel auxiliar A................................................................... 17 5.1.1.6 Operando endereo de barramento R............................................. 18 5.1.1.7 Operando memria - M....................................................................... 18 5.1.1.8 Operando decimal D........................................................................ 18 5.1.1.9 Operando constante KM e KD......................................................... 19 5.1.1.10 Operando tabela TM e TD............................................................. 19 5.1.1.11 Acesso indireto - *............................................................................. 19 5.1.1.12 Instrues.......................................................................................... 19 5.1.1.13 Contatos normalmente aberto e fechado - RNA e RNF.................... 20 5.1.1.14 Bobina Simples, liga e desliga BOB, BBL, BBD............................. 20 5.1.1.15 Bobina de salto SLT....................................................................... 20 5.1.1.16 Rel de pulso PLS.......................................................................... 20 5.1.1.17 Rel Mestre RM e FRM.................................................................. 21 6.0 Introduo: Caractersticas dos CLPs.............................................................. 21 7.0 Conceitos bsicos............................................................................................ 21 7.1.1 Controlador programvel (CP).................................................................. 21 7.1.2 Terminal de programao......................................................................... 21 7.1.3 Terminal de superviso............................................................................. 22 7.1.4 Unidade central de processamento.......................................................... 22 8.0 Arquitetura dos CPs Altus................................................................................ 23 8.1.1 Barramentos.............................................................................................. 23 8.1.2 Mdulos de entradas e sadas................................................................... 23 9.0 MasterTools...................................................................................................... 24 9.1.1 Descrio.................................................................................................. 24 9.1.2 Conexes.................................................................................................. 24 9.1.3 Configurao do canal serial.................................................................... 24 9.2 Conceitos ........................................................................................................ 25 9.2.1 Projeto....................................................................................................... 25 9.2.2 Mdulos..................................................................................................... 25 9.2.2.1 Mdulo C: Configurao...................................................................... 25 9.2.2.2 Mdulo E: Execuo........................................................................... 26

4

9.2.2.2.1 E000 Mdulo de Inicializao:......................................................... 26 9.2.2.2.2 E001 Mdulo Seqencial de Programa Aplicativo:......................... 26 9.2.2.2.3 E018 Mdulo Acionado por Interrupo de Tempo:........................ 26 9.2.2.2.4 E020 Mdulo Acionado pela Entrada de Interrupo:..................... 27 9.2.2.3 Mdulo P: Procedimento..................................................................... 27 9.2.2.4 Mdulo F: Funo. ............................................................................. 27 9.3 Linguagem estruturada em blocos................................................................... 28 10.0 Exemplo de programao em ambiente MasterTools................................... 29 10.1 Criando um projeto novo............................................................................... 29 10.1.1 Configurando o modelo de UCP.............................................................. 29 10.1.2 Configurando o Barramento de E/S......................................................... 30 10.1.3 Iniciando um programa:........................................................................... 31 10.1.3.1 Inserindo um contato......................................................................... 32 10.1.3.2 Introduzindo uma bobina:.................................................................. 33 10.1.4 Estabelecendo comunicao. ................................................................ 34 10.1.5 Compilando o programa......................................................................... 35 10.1.6 Monitorando o Programa........................................................................ 35 11.0 Programao de Controladores Programveis............................................. 37 11.1 Diagrama de contatos................................................................................... 37 11.2 Diagrama de blocos lgicos.......................................................................... 37 11.3 Lista de instruo.......................................................................................... 38 11.4 Linguagem Corrente...................................................................................... 38 11.5 Anlise das linguagens de programao...................................................... 38 11.5.1 Quanto a Forma de Programao .......................................................... 39 11.5.2 Documentao......................................................................................... 39 11.5.3 Conjunto de Instrues............................................................................ 39 11.6 Normalizao................................................................................................ 40 12.0 Programao em Ladder.............................................................................. 41 12.1 Desenvolvimento do programa Ladder......................................................... 43 12.1.1 Associao de contatos no Ladder.......................................................... 45 12.1.2 Instrues................................................................................................ 46 12.1.3 Instrues Bsicas................................................................................... 47

5

12.1.4 Funcionamento dos Principais Blocos..................................................... 47 12.1.5 Instruo de Temporizao..................................................................... 48 12.1.6 Instruo de Contagem............................................................................ 49 12.1.7 Instruo Mover....................................................................................... 50 12.1.8 Instruo Comparar................................................................................. 52 12.1.9 Instrues Matemticas........................................................................... 53 12.1.10 Instruo Soma...................................................................................... 53 12.1.11 Instruo Subtrao............................................................................... 56 12.1.12 Instruo Multiplicao.......................................................................... 57 12.1.13 Instruo Diviso................................................................................... 59 12.1.14 Instrues Lgicas................................................................................. 60 12.1.15 Instruo And......................................................................................... 60 12.1.16 Instruo Or........................................................................................... 62 12.1.17 Instruo Xor......................................................................................... 63 13.0 Exerccios....................................................................................................... 66 14.0 Exerccios Intertravamento: Circuitos de Comando...................................... 69 15.0 Bibliografia..................................................................................................... 71

6

1.0

Clp - Evoluo histrica.No final da dcada de 60, por uma questo de necessidade de aumento da produo industrial, a GENERAL MOTORS delineou um projeto que foi realizado por empresas prestadoras de servio na rea de automao industrial, dando origem assim aos Controladores

Lgicos Programveis.

Incio da dcada de 70, algumas empresas j iniciavam um projeto de implementao dos referidos controladores, substituindo os volumosos circuitos de rels eletromecnicos.A implantao dos Cps nos diversos processos da produo industrial gerou os seguintes resultados: o Maior segurana. o Maior velocidade e volume de produo. o Melhor qualidade.

1.1

Filosofia bsica.o controlador deve ocupar

Projetado para substituir antigos quadros de rels

pequeno espao fsico, apresentar flexibilidade para possveis mudanas na lgica de controle, ser resistente ao ambiente e ser imune a toda natureza de rudos.

1.2

Linguagens e formatos para programao.

O cuidado dedicado ao desenvolvimento de um a linguagem adequada prioridade do fabricante, desta forma, o formato torna-se fundamental para aceitao do produto no mercado. Este deve ser de fcil operao e tambm oferecer uma grande flexibilidade de programao e estruturao. Entra os formatos encontrados no mercado o mais popular o LADDER, que utiliza diagramas de contatos. Dentre outros tipos existentes no mercado temos: Lista de instrues, Blocos lgicos, Linguagens Descritivas, e etc.

7

1.3

Aplicabilidade.Sistemas de segurana e intertravamento Processo em batelada. Controle contnuo.

1.4

Hardware caracterstico.

Um CP basicamente um pequeno computador dedicado, em sua estrutura fsica encontramos: Unidade Central de Processamento. Memria do tipo ROM para armazenamento do FIRMWARE (programa onde se encontram os principais cdigos de operao da mquina). Memria RAM para armazenamento de dados e programas do usurio Dispositivos de Entrada e Sada para a comunicao com o exterior

Por outro lado, algumas caractersticas so particulares nos Cps, como por exemplo: Espao de memria RAM com mapeamento para uso especfico na aplicao fim, em outras palavras durante o projeto do controlador lgico programvel seus espaos de memria so previamente organizados durante a elaborao do FIRMAWARE. Isto ocorre porque os Cps so equipamentos dedicados a um tipo de aplicao especfica, admitindo apenas serem programados com SOFTWARES desenvolvidos especificamente para eles.

8

Normalmente utilizado um dispositivo de SOFTWARE que monitora o tempo limite Para a varredura do programa do usurio (watch dog time) Os dispositivos de entrada sada (pontos digitais), so geralmente isolados para evitar rudos e tambm a danificao interna por picos de tenso na entrada ou sada.

A operao simplificada de um CP pode ser representada pela estrutura abaixo: o processador de CP efetua a leitura das entradas a atualiza a tabela imagem de entrada, logo aps executa o programa do usurio e atualiza a tabela imagem de sada.

9

1.5

Sistemas de memria.

O sistema de memria uma parte de vital importncia no processador de um controlador programvel, pois armazena todas as instrues assim como os dados necessrios para execut-las. A capacidade de memria de um CP pode ser representada pr um mapa chamado MAPA DE MEMRIA.

Independente dos tipos de memria utilizadas, o MAPA DE MEMRIA de um controlador programvel pode ser dividido em cinco reas principais

1.5.1 Memria Executiva (Rom e Eprom).Armazena o sistema operacional, o qual responsvel pr todas as funes operacionais do CP.

1.5.2 Memria do Sistema (Ram).Armazenar resultados e/ou informaes intermedirias, gerados pelo sistema operacional.

1.5.3 Memria de Status (Ram).Armazenar os estados dos sinais de entradas e sadas.

1.5.4 Memria de dados (Ram).Armazenar dados referentes ao programa do usurio.

1.5.5 Memria do Usurio (Ram e Eprom)Armazenar o programa de controle desenvolvido pelo usurio.

10

2.0

Sistemas de numerao.

DECIMAL: Sistema representado pr dez algarismos 0, 1,2,3,4,5,6,7,8,9; este utiliza a base 10.

BINRIO: Sistema representando somente pr dois algarismos 0,1; portanto de base 2.

OCTAL E HEXADECIMAL: Estes sistemas de numerao so de interesse pela sua relao com o sistema binrio. No sistema octal a base oito e os dgitos usados so: 0,1,2,3,4,5,6,7. No sistema hexadecimal a base dezesseis e os dgitos so 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. A relao especial resulta do fato que 3 algarismos binrios podem representar oito nmeros diferentes e que 4 algarismos binrios podem representar 16 nmeros diferentes. Abaixo a tabela nos mostra a equivalncia entre os dois sistemas Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Hexadecimal 0 1 2 3 4 5 6 7 8 9 A B C D E F Binrio 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Octal 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17

11

3.0

Lgica digital.

A eletrnica utiliza o sistema numrico binrio, devido a este simplificar os circuitos eletrnicos. Desta forma criou-se lgebra baseada em dois estados, zero (falso) e um (verdadeiro). Assim adotou-se a lgebra desenvolvida pr George Boole (1815-1854), ficou conhecida como lgebra de Boole. Esta lgebra representada eletronicamente pr dois estados distintos.

4.0

Portas lgicas bsicas.

4.1.1 Funo E (AND)A funo E igual a 1, somente quando todas as variveis forem iguais a 1.

4.1.2 Funo OU (OR)A funo OU igual a 1 , somente se uma ou mais variveis forem iguais a 1.

12

13

4.1.3 Funo NO

(NOT)

A sada da funo NO igual a 1 , somente se sua entrada 0. Se sua entrada for igual a 0 sua sada ser igual a 1. A sada a inverso da entrada.

4.1.4 Funo NO E (NAND) a funo E com a sada negada.

14

4.1.5 Funo NO OU (NOR). uma funo OU com a sada negada.

4.1.6 Funo OU EXCLUSIVO (XOR). uma funo OU EXCLUSIVO ter a sada verdadeira somente se as duas entradas forem diferentes.

15

4.1.7 Funo NO OR EXCLUSIVO (EXNOR). uma funo NOR EXCLUSIVO ter a sada verdadeira somente se as duas entradas forem iguais .

4.1.8 Funo Memria (FLIP-FLOP).No caso da funo memria (flip-flop), a sada Q existir no momento em que a entrada A existir e continuar existindo, no importando o estado subseqente da entrada A. A sada Q terminar quando for resetada pela entrada B.

16

5.0

Controlador AL-600

O CP AL-600 da ALTUS S.A. uma mquina de pequeno porte que utiliza um microcontrolador INTEL 80C32 operando 15Mhz, memria flash EPROM e RAM que contm programas e dados de programa. Este CP comunica-se externamente atravs do protocolo ALNET (RS-233). Vejamos o diagrama em bloco Caractersticas do mdulo Bsico entradas digitais 8 sadas digitais 2 entradas de contagem rpida 2 canais analgicos de entradas e 2 canais analgicos de sadas.

Quanto programao: Utiliza a linguagem LADDER desenvolvida pela prpria Altus S.A., a seguir veremos as principais instrues.

5.1

Programao bsica dos CLPs Altus.

5.1.1 Aspectos gerais.5.1.1.1 Lgicas

Uma lgica uma matriz de programao formada por 32 clulas dispostas em 4 linhas e 8 colunas. Em cada uma das clulas podem ser colocadas instrues, podendo portanto cada lgica ter at 32 instrues. Cada lgica do programa representa um pequeno trecho de programa em linguagem de rels (Ladder logic). As clulas so processadas na seguinte ordem: 1 2 3 4 5.1.1.2 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

Operandos

So elementos utilizados pelas instrues do programador para a elaborao de um programa aplicativo.

17

Operando E S R A M D KM KD TM TD 5.1.1.3

Smbolo Rel de entrada Rel de sada Endereo do barramento de E/S Rels auxiliares Memrias Decimais Constante tipo memria Constante tipo decimal Tabelas de tipo memria Tabelas de tipo decimal

Operando rel de entrada E

Usado para se referenciar aos mdulos de entradas digitais. Cada operando ocupa um byte contendo o estado de 8 entradas digitais. Exemplos: E0018.6 E0021n0 E0025 Ponto 6 do octeto de entrada 18 (.0 a .7). Nibble inferior do octeto de entrada 21 (n0 ou n1). Octeto de entrada 25.

5.1.1.4

Operando rel de sada - S

Usado para se referenciar aos mdulos de sadas digitais. Cada operando ocupa um byte contendo o estado de 8 sadas digitais. S0011.2 S0010n1 S0015 Ponto 2 do octeto de sadas 11. Nibble superior do octeto de sadas 10. Octeto de sadas 15.

5.1.1.5

Operando rel auxiliar A

Utilizados para armazenamento e manipulao de valores intermedirios no programa aplicativo. Cada operando ocupa um byte na memria contendo o estado de 8 rels auxiliares. Exemplos:

18

A0032.7 A0087n0 A0024

Ponto 7 (MSB) do auxiliar de sada 32. Nibble superior do auxiliar de sada 87. Octeto auxiliar 24.

5.1.1.6

Operando endereo de barramento R CLP Altus cada

Usados para referncia direta a perifricos no barramento. No posio no barramento corresponde a dois octetos de operandos. Exemplos: R0026 R0015.7 Octeto 26 do barramento. Ponto 7 do Octeto 15 do barramento.

5.1.1.7

Operando memria - M

Utilizados para processamento numrico. Armazenam um nmero inteiro com sinal (-32768 a 32767). Exemplos: M0032 M0064b0 M0072n1 M0084.F Memria 32. Octeto inferior da memria 64 (b0 a b1). Nibble 1 da memria 72 (n0 a n3). Ponto 15 (MSB) da memria 84 (.0 a .F).

5.1.1.8

Operando decimal D

Utilizados para processamento numrico. Armazenam em formato BCD at 7 dgitos com sinal. Bit Sinal Exemplos: D0041 D0032b2 D0059n6 D0172hA Decimal 41. Octeto 2 do decimal 32 (b0 a b3). Nibble 6 do decimal 59 (n0 a n6). Ponto 10 da palavra alta do decimal 172 (h0 a hF). n6 n5 n4 n3 n2 n1 n0

19

D0172.B 5.1.1.9

Ponto 11 da palavra baixa do decimal 172 (.0 a .F). Operando constante KM e KD

Define valores fixos no programa. Podem ser do tipo memria (inteiro com sinal de 16 bits) ou decimal (at 7 dgitos BCD e sinal). Exemplos: KM+05172 Constante memria, +5172. KD-0974231 Constante decimal, -974231.

5.1.1.10

Operando tabela TM e TD

Conjunto de constantes formando um arranjo unidimensional, referenciados por ndices. Podem conter valores variveis do tipo M e D, conforme j definidos. Exemplos: TM0026 TD0015 Tabela de constante tipo memria nmero 36. Tabela de constante tipo decimal nmero 15.

5.1.1.11

Acesso indireto - * a referncia

Operando que em conjunto com um operando memria, permite indireta a outros operandos do sistema (tipo E, S, A, M, D, TM ou TD). Exemplos: M0043*E M1824*A M0371TD M009*M Octeto de entrada apontado pela memria 43. Octeto auxiliar apontado pela memria 1824.

Tabela de decimais apontada pela memria 371 (No usa o *). Operando de memria apontado pela memria 9.

5.1.1.12

Instrues

So expressas em rels, bobinas e blocos.

20

5.1.1.13

Contatos normalmente aberto e fechado - RNA e RNF

Operandos: EXXXX.X SXXXX.X AXXXX.X MXXXX.X DXXXX.X DXXXXhX 5.1.1.14 Bobina Simples, liga e desliga BOB, BBL, BBD

As bobinas liga e desliga atuam como as entradas S e R de um flip-flop. Operandos: SXXXX.X AXXXX.X MXXXX.X DXXXX.X DXXXXhX 5.1.1.15 Bobina de salto SLT

Desvia o programa quando a bobina ativada. Tem como operando uma constante KM (+ ou -) que determina o nmero de lgicas a serem saltadas. Operandos: KM+XXXXX KM-XXXXX

5.1.1.16

Rel de pulso PLS

Gera um pulso na sada com durao igual ao tempo de um ciclo completo do programa aplicativo quando a entrada transiciona de 0 para 1. Utiliza-se um rel auxiliar para memorizao.

21

5.1.1.17

Rel Mestre RM e FRM

Posicionadas na coluna 7 da lgica, delimitam trechos de programa, energizando ou no a alimentao dos mesmos conforme a entrada do rel mestre seja 1 ou 0, respectivamente.

6.0

Introduo: Caractersticas dos CLPs

O presente documento tem por objetivo apresentar as principais caractersticas de programao dos Controladores Programveis (CPs) utilizados na disciplina CP no curso tcnico em informtica industrial. Nosso principal objetivo a apresentao da Linguagem Ladder, suas caractersticas principais e exemplos de sua utilizao. Para o desenvolvimento de nosso programa utilizaremos os CPs produzidos pela Altus aqui do Rio Grande do Sul. Nas seguintes pginas temos uma breve apresentao do ambiente de programao da Altus chamado MasterTools. Convm salientar que este Software de programao propriedade da Altus e a mesma o vende para seus clientes finais para que o CP, que foi adquirido pelo cliente, possa ser programado. Convm salientar que pode ser obtida uma cpia deste Software na pgina www.altus.com.br para demonstrao. Assim cabe frisar que no podemos, em nenhuma hiptese, fornecer cpias do mesmo.

7.0

Conceitos bsicos

7.1.1 Controlador programvel (CP)Segundo a ABNT um equipamento eletrnico digital com hardware e software compatveis com aplicaes industriais.

7.1.2 Terminal de programao.Basicamente um computador que se conecta temporariamente ao CP. utilizado para criar e modificar programas aplicativos, verificar o funcionamento do sistema, monitorando todos os passos do programa. Quando da instalao de um CP considerado um equipamento opcional.

22

7.1.3 Terminal de superviso. um computador que permanece conectado ao CP, para a aquisio de dados da mquina ou do processo. Este computador executa um software supervisrio que permite desenvolver telas, grficos, etc. para melhor visualizar o estado do processo ou da mquina que est sendo monitorada. Pode ser considerado como uma interface Homem mquina. Esta interface no possibilita a programao dos CPs.

7.1.4 Unidade central de processamento.Considerada como a unidade inteligente do CP. Responsvel pela tomada de decises para o controle de mquinas e processos. Recebe os dados de entrada, realiza as decises lgicas baseadas no programa de usurio (programa aplicativo), armazena os dados e atualiza as sadas. Programa aplicativo: a lgica existente entre os pontos de entradas e sadas e que executa as funes desejadas. Microcontrolador: Executa todas as funes internas de controle de dados e instrues nas memrias do CP. Memria RAM: Responsvel pelo armazenamento do programa aplicativo (programa de usurio responsvel pelo controle da mquina ou processo). A Ram uma memria voltil, ou seja, perde seus dados quando no estiver alimentada pela energia eltrica. Memria FLASH: a responsvel pelo armazenamento do programa aplicativo. A Flash no necessita de alimentao de energia eltrica para reter os seus dados. Memria EPROM: Armazena o programa executivo (desenvolvido pelo fabricante do CP), no pode ser alterado ou lido pelo programador MasterTools. 7.1.5 Entradas e sadas. o CP e os dispositivos de campo,

Mdulos responsveis pela interface entre

realizando a isolao e filtragem dos sinais e a adaptao dos nveis de tenso e

23

corrente at a CPU. So divididos em pontos de entradas e sadas digitais ou canais analgicos. Pontos de entradas: considera-se cada sinal recebido pelo CP, a partir dos dispositivos ou componentes externos (sensores). Pontos de sadas: Cada sinal produzido pelo CP para adicionar dispositivos ou componentes do sistema de controle (atuadores). Exemplos so lmpadas, solenides, motores, contatores, rels, etc. Dispositivos de campo:So elementos do sistema de controle responsveis pela obteno de informaes (sensores) e atuao (atuadores) da mquina ou processo.

8.0

Arquitetura dos CPs Altus

A srie Piccolo permite o controle de at 132 pontos de entradas/sadas com uma unidade central de processamento e esta dividida em vrios modelos. A srie PONTO, permite a conexo com outros CPs e outros mdulos de E/S, possui arquitetura aberta, permitindo a conexo com vrios protocolos de comunicao.

8.1.1 BarramentosRealiza a interligao da UCP aos mdulos de entrada e sada. Cada barramento comporta at 16 mdulos de entradas e sadas. Dependendo do modelo da UCP podem ser instalados at 8 barramentos. O barramento 0 alimentado pela prpria UCP, enquanto que os demais barramentos, quando existentes, so alimentados por uma fonte auxiliar ligada a CPU atravs de um cabo de conexo de barramento estendido.

8.1.2 Mdulos de entradas e sadasOs mdulos de entradas e sadas so conectados ao barramento. So responsveis pela interface entre os sinais de campo e a UCP.

24

9.09.1.1

MasterToolsDescrio

Utilizaremos para a programao dos produtos Altus o programador denominado MasterTools Programming MT4100 que executado em ambiente Windows 95, 98, e ME. Este programador possui um ambiente com funes integradas, contendo todas as ferramentas necessrias programao simblica, impresso, gravao e monitorao em tempo real dos programas aplicativos desenvolvidos para controladores programveis das sries AL-600, PICOLLO (PL103) e PONTO (PO3045). Sua operao como as demais aplicaes Windows so orientadas por comandos de menus e caixas de dilogos que permitem a realizao das tarefas e escolhas de opes. O MasterTools utilizado para realizar a edio de programas para os CPs Altus, verificar programas j enviados, modificar programas prontos ou para examinar o estado dinmico das variveis do sistema de controle. possvel acompanhar todos os passos do programa aplicativo em tempo real, forando a ocorrncia de aes especficas. Caso seja desejado, o computador poder operar permanentemente conectado ao controlador programvel.

9.1.2

Conexes

Nas aplicaes realizadas no laboratrio de automao o MasterTools comunica-se com o CP, atravs da interface serial tipo RS-232C do microcomputador. Mesmo que exista outra interface de comunicao serial, o MasterTools assume que a comunicao ser realizada pelo canal 1 (COM1).

9.1.3

Configurao do canal serial

possvel alterar esta configurao atravs do comando Opes/Comunicao escolhendo o novo canal apropriado para a comunicao serial. O canal padro utilizado pelo MasterTools o canal 1 (COM 1).

25

9.2

Conceitos

9.2.1 ProjetoFuncionalmente um projeto de programao conhecido como programa aplicativo e pode ser visto como uma coleo de mdulos de software utilizados para realizar uma tarefa especfica. Cada CP deve possuir apenas um projeto.

9.2.2 MdulosOs mdulos so chamados para a execuo pelo software executivo (sistema operacional do CP) ou por outros mdulos, atravs de instrues apropriadas. Quando armazenado em disco, o projeto de programao corresponde a um conjunto de arquivos, onde cada arquivo um mdulo, denominado conforme descrito a baixo.

Nome do arquivo: C Onde: C : Tipo de Mdulo (C, E, P, F) - : Identificador de mdulo (-). XXXXXX: Nome do mdulo (at 6 caracteres). . : Ponto de separao. 000: Nmero do mdulo. Freqentemente os mdulos so referenciados somente pelo seu tipo e nmero, quando no for relevante o nome utilizado no mesmo. Exemplo: E0001, C000, E018, etc. Existem quatro tipos de mdulos que podem fazer parte de um projeto de programao: 9.2.2.1 Mdulo C: Configurao. XXXXXX . 000

Deve existir apenas um mdulo de configurao por projeto, no qual deve conter os parmetros de configurao do CP (000). Este mdulo indispensvel para o CP entrar em execuo normal do programa aplicativo.

26

Sua criao pr-requisito para a edio dos demais mdulos do projeto de programao no MasterTools. A definio dos parmetros contidos no mesmo realizada atravs da janela de edio do mdulo C. O nome do mdulo C igual ao nome do projeto seguido da terminao .000. 9.2.2.2 Mdulo E: Execuo.

Os mdulos E contm trechos do programa aplicativo, sendo chamados para a execuo do software executivo. Existem quatro mdulos E, diferenciando-se entre si pelo modo como so chamados execuo, conforme o seu nmero. 9.2.2.2.1 E000 Mdulo de Inicializao:

executado uma nica vez, ao se energizar o Cp ou na passagem do mdulo de programao para execuo com o MasterTools, antes da execuo contnua do mdulo E001. Mdulo opcional na execuo do programa executivo. 9.2.2.2.2 E001 Mdulo Seqencial de Programa Aplicativo:

Contm o trecho de programa principal do programa aplicativo, sendo executado ciclicamente. Este mdulo indispensvel para o CP entrar em execuo normal do programa aplicativo. 9.2.2.2.3 E018 Mdulo Acionado por Interrupo de Tempo:

O trecho de programa aplicativo, colocado neste mdulo chamado para a execuo em intervalos de tempos peridicos. Define-se o perodo de chamada do mesmo nos parmetros gerais do mdulo C, podendo ser escolhido entre 50ms e 0,625 ms. Ao ser transcorrido o tempo programado, a execuo interrompida e o mdulo E-018 executado. Aps o seu final, o sistema retorna a execuo para o ponto do processamento seqencial onde o mdulo E001 havia sido interrompido. O tempo continua a ser contado durante a cada chamada do mdulo E-018, devendo a sua execuo ser o mais breve possvel para no haver o aumento excessivo no tempo de programa aplicativo. ciclo E001. Este mdulo opcional na execuo do

27

9.2.2.2.4

E020 Mdulo Acionado pela Entrada de Interrupo:

O trecho de programa aplicativo colocado neste mdulo executado com o acionamento da entrada de interrupo dos CPs AL-600, PL103 e PO3045. Quando ocorrer uma transio de subida no sinal presente nesta entrada, a execuo seqencial do programa aplicativo interrompida e o mdulo E0020 executado. Aps o seu final, o sistema retorna a execuo para o ponto do processamento seqencial onde o mdulo E001 havia sido interrompido. Se a entrada for acionada com muita freqncia, o tempo de execuo do mdulo deve ser o mais breve possvel, para no haver o aumento excessivo no tempo de ciclo do mdulo E001. Mdulo opcional na execuo do programa aplicativo. 9.2.2.3 Mdulo P: Procedimento.

Podem ser usados para melhorar a estrutura do programa principal, dividindo-o em segmentos de acordo com as etapas da mquina ou processo. So executados quando chamados pelos mdulos de execuo procedimento ou funo. Aps serem executados, o processamento retorna para a instruo seguinte chamada. Os mdulos P funcionam como sub-rotinas, no permitindo a passagem de parmetros para o mdulo chamado. Mdulo opcional na execuo do programa aplicativo. Podem existir at 112 mdulos procedimento em um projeto.(P000 a P111). 9.2.2.4 Mdulo F: Funo.

Permitem a passagem de parmetros para o mdulo chamado, de forma a poderem ser reutilizados em vrios programas aplicativos diferentes. So semelhantes s instrues podendo ser chamados por mdulos de execuo, procedimento ou funo. Estes mdulos so escritos de forma genrica para serem aproveitados por vrios programas aplicativos, em linguagens de rels ou de mquinas, sendo semelhantes s instrues da linguagem de rels. Os valores dos parmetros so enviados e

28

devolvidos atravs de listas de operandos existentes na instruo de chamada e no mdulo F. A passagem de parmetros realizada atravs da cpia dos valores dos operandos declarados (passagem de parmetros por valor). Mdulo opcional na execuo do programa aplicativo.

9.3

Linguagem estruturada em blocos.

A linguagem estruturada em blocos definida como a diviso de um programa nico, para o controle de vrias etapas de um processo, em vrios programas menores, permitindo assim, melhorar a organizao do programa aplicativo, da documentao e da manuteno do sistema. Alm disso pode-se criar uma biblioteca de sub-rotinas para a reutilizao durante o programa aplicativo.

29

10.0 10.1

Exemplo de programao em ambiente MasterTools. Criando um projeto novo.

Para criar um projeto novo clique no menu : Entre com o nome do projeto como mostrado abaixo. Nome: ex1 (Exemplo1).

10.1.1

Configurando o modelo de UCP

Selecione o modelo do CP conforme a figura abaixo. Confirme a troca de modelo da UCP caso necessrio. Selecionar em modelo de Clp o Clp que voc est utilizando Obs.: Dispomos do de dois modelos: PL103 E AL600 e PO3045. :

30

Aps confirmar a seleo com , surgir a seguinte mensagem:

Confirme a troca com .

10.1.2

Configurando o Barramento de E/S.

Clicando em surgir a seguinte tela:

Clicando em , surgir a seguinte tela:

O exemplo abaixo se refere ao modelo de UCP PL103. Para o modelo AL-600 devese digitar:

31

Clique em at retornar a tela mostrada abaixo:

10.1.3

Iniciando um programa:

No menu principal clique em : Aps clique em modulo principal. Surgir o quadro indicado abaixo. Digite o nome do programa e confirme com enter.

Aqui introduziremos nosso programa.

32

10.1.3.1

Inserindo um contato

Para demonstrar o projeto exemplo, vamos inserir um contato aberto:

Surgir a seguinte tela:

Obs.: Modelo Clp PL103 Entradas Sadas E0.0 at E0.7 S2.0 at S2.7 E1.0 at E1.7 S3.0 at S3.7

33

AL600 PO3045

E0.0 at E0.7 S2.0 at S2.7 E1.0 at E1.7 E0.0 at E0.7 E1.0 at E1.7 S50.0 at S50.7 S51.0 at

S51.7 No exemplo digitaremos e confirmaremos com .

Obs.: As ligaes verticais podem ser feitas teclando a tecla + As ligaes horizontais podem ser feitas teclando a tecla - 10.1.3.2 Introduzindo uma bobina:

Denominando a bobina simples (que uma sada) como S2.0, teremos a seguinte tela

Para fazer as ligaes automaticamente: Clique em ; . Surgir a seguinte tela:

34

Para encerrar o programa: Clique em . Surgir a seguinte tela:

Salve o programa clicando em .

10.1.4

Estabelecendo comunicao.

Clique em . Obs.: se. O led indicativo de estado de programao (Prog) ir iluminar-

35

Clique em .

10.1.5

Compilando o programa.

Clique em . Enviar .

Clique em .

O led indicativo de estado de execuo (exec) ir iluminar-se. Clicar em .

10.1.6

Monitorando o Programa.

Clique em < Abrir >.

36

No exemplo digitamos o nome de exerc 1 Clique em .

37

11.0 Programao de Controladores ProgramveisNormalmente podemos programar um controlador atravs de um software que possibilita a sua apresentao ao usurio em quatro formas diferentes: formas. Diagrama de contatos; Diagrama de blocos lgicos (lgica booleana); Lista de instrues; Linguagem corrente.

Alguns CLPs, possibilitam a apresentao do programa do usurio em uma ou mais

11.1 Diagrama de contatosTambm conhecida como: Diagrama de rels; Diagrama escada; Diagrama "ladder".

Esta forma grfica de apresentao est muito prxima a normalmente usada em diagrama eltricos. Exemplo: ---| |------| |--------------------------( )------

------| |--------------

11.2 Diagrama de blocos lgicosMesma linguagem utilizada em lgica digital, onde sua representao grfica feita atravs das chamadas portas lgicas. Exemplo:

38

11.3 Lista de instruoLinguagem semelhante utilizada na elaborao de programas para computadores. Exemplo: : A I 1.5 : A I 1.6 :O : A I 1.4 : A I 1.3 : = Q 3.0 (I 1.5. I 1.6) + (I 1.4. I 1.3) = Q 3.0

11.4 Linguagem Corrente semelhante ao basic, que uma linguagem popular de programao, e uma linguagem de programao de alto nvel. Comandos tpicos podem ser "fechar vlvula A" ou "desligar bomba B", "ligar motor", "desligar solenide",

11.5 Anlise das linguagens de programaoCom o objetivo de ajudar na escolha de um sistema que melhor se adapte as necessidades de cada usurio, pode-se analisar as caractersticas das linguagens programao disponveis de CLPs. Esta anlise se deter nos seguintes pontos: Quanto a forma de programao; Quanto a forma de representao; Documentao; Conjunto de Instrues.

39

11.5.1

Quanto a Forma de ProgramaoProgramao Linear - programa escrito escrita em nico bloco Programao Estruturada - Estrutura de programao que permite: Organizao; Desenvolvimento de bibliotecas de rotinas utilitrias para utilizao em vrios programas; Facilidade de manuteno; Simplicidade de documentao e entendimento por outras pessoas alm do autor do software.

Permite dividir o programa segundo critrios funcionais, operacionais ou geogrficos. Quanto a Forma de Representao Diagrama de Contatos; Diagrama de Blocos; Lista de Instrues.

Estes j citados anteriormente.

11.5.2

Documentao

A documentao mais um recurso do editor de programa que de linguagem de programao. De qualquer forma, uma abordagem neste sentido torna-se cada vez mais importante, tendo em vista que um grande nmero de profissionais esto envolvidos no projeto de um sistema de automao que se utiliza CLPs, desde sua concepo at a manuteno. Quanto mais rica em comentrios, melhor a documentao que normalmente se divide em vrios nveis.

11.5.3

Conjunto de Instrues

o conjunto de funes que definem o funcionamento e aplicaes de um CLP. Podem servir para mera substituio de comandos a rels: Funes Lgicas; Memorizao; Temporizao; Contagem.

40

Como tambm manipulao de variveis analgicas: Movimentao de dados; Funes aritmticas.

Se funes complexas de algoritmos, comunicao de dados, interfaces homemmquina, podem ser necessrias: Saltos controlados; Indexao de instrues; Converso de dados; PID; seqenciadores; aritmtica com ponto flutuante; etc.

11.6 NormalizaoExiste a tendncia de utilizao de um padro de linguagem de programao onde ser possvel a intercambiabilidade de programas entre modelos de CLPs e at de fabricantes diferentes. Esta padronizao est de acordo com a norma IEC 1131-3, na verdade este tipo de padronizao possvel utilizando-se o conceito de linguagem de alto nvel, onde atravs de um chamado compilador, pode-se adaptar um programa para a linguagem de mquina de qualquer tipo de microprocessador, isto , um programa padro, pode servir tanto para o CLP de um fabricante A como de um fabricante B. A norma IEC 1131-3 prev trs linguagens de programao e duas formas de apresentao. As linguagens so: Ladder Diagram - programao como esquemas de rels. Boolean Blocks - blocos lgicos representando portas "E", "OU", "Negao", "Ou exclusivo", etc. Structured Control Language (SCL) - linguagem que vem substituir todas as linguagens declarativas tais como linguagem de instrues, BASIC estruturado e ingls estruturado. Esta linguagem novidade no mercado internacional e baseada no Pascal. As formas de representao so :

41

Programao convencional; Sequencial Function Chart (SFC) - evoluo do graphcet francs.

A grande vantagem de se ter o software normalizado que em se conhecendo um conhecem-se todos, economizando em treinamento e garantindo que, por mais que um fornecedor deixe o mercado, nunca se ficar sem condies de crescer ou repor equipamentos.

12.0

Programao em Ladder

O diagrama ladder utiliza lgica de rel, com contatos (ou chaves) e bobinas, e por isso a linguagem de programao de CLP mais simples de ser assimilada por quem j tenha conhecimento de circuitos de comando eltrico. Compe-se de vrios circuitos dispostos horizontalmente, com a bobina na extremidade direita, alimentados por duas barras verticais laterais. Por esse formato que recebe o nome de ladder que significa escada, em ingls. Cada uma das linhas horizontais uma sentena lgica onde os contatos so as entradas das sentenas, as bobinas so as sadas e a associao dos contatos a lgica. No ladder cada operando (nome genrico dos contatos e bobinas no ladder) identificado com um endereo da memria qual se associa no CLP. Esse endereo aparece no ladder com um nome simblico, para facilitar a programao, arbitrariamente escolhido pelo fabricante como os exemplos vistos a seguir. Tabela de alguns CLPs versus endereamento.FABRICANTE MODELO E.D. S.D. E.A. S.A. BIT AUX. GEFANUC 90-70 90-30 90-20 90-MICRO %I1 a %I... %Q1 a %Q... %AI a %AI... %AQ1 a %AQ... %M1 a %M... %T1 a %T... ALLEN BRADLEY SLC-500 I:SLO. /0 a O:SLOT. O:1/0 a I:SLOT.P ONTO I:3.0 a O:SLOT.PO B3:0/0 NTO O:3.0 a a B3:... N7:0 a N7:... S: R6:0 a R6:... T4:0 A T4:... C5:0 %R1 a %R... PALAVRA PALAVRA CONTADOR DO SISTEMA / TEMPORIZADOR %S %Rx x x+1 x+2 PARA CADA

PONTO:1 PONTO

42

I:...

O:...

I:3....

O:3....

A C5:...

ALTUS

AL500

R0 a R...

R60 a R... %S2.0 a %S... O0.0 a O...

-

-

A0 a A...

M0 a M... %M0 a %M... R0 a R64

-

M0 PARA CADA

ALTUS

PICOLLO

%E0.0 a %E...

%M

%M

%A0.0 a %A...

%M0 PARA CADA

FESTO

FPC101 FPC103

I0.0 a I...

II0 a II3 OU IU0 a IU3

OU0 e OU1

F0.0 a F15.15

FW0 a FW15

T0 a T31 C0 a C15

Outros tipos de endereamento; 125/04 (1 = entrada, 2 = gaveta, 5 = nmero do carto ou mdulo, 04 = nmero do ponto), 013/01 (0 = sada, 1 = nmero da gaveta, 3 = nmero do mdulo, 01 = nmero do ponto). Nesta apostila os endereos sero identificados como:

E - para entrada digital; EA - para entrada analgica; S - para sada digital; SA - para sada analgica.

A - para bobina auxiliar1se o operando estiver acionado e

O estado de cada operando representado em um bit correspondente na memria imagem: este bit assume nvel desacionado. * As bobinas acionam os seus endereos. Enquanto uma bobina, com endereo de sada, estiver acionada um par de terminais no mdulo de sada ser mantido em condio de conduo eltrica.

0

quando

* Os contatos se acionam pelo endereo que os identifica.

43

Os contatos endereados como entrada se acionam enquanto seu respectivo par de terminais no mdulo de entrada acionado: fecham-se se forem NA e abrem-se se forem NF. Com relao ao que foi exposto acima sobre os contatos endereados como entrada, os que tiverem por finalidade acionar ou energizar uma bobina devero ser do mesmo tipo do contato externo que aciona seu respectivo ponto no mdulo de entrada. J os que forem usados para desacionar ou desenergizar uma bobina devem ser de tipo contrrio do contato externo que os aciona. Abaixo se v um quadro elucidativo a esse respeito.

Se a chave externa for Para ligar NA NF Para desligar NA NF

o contato no Ladder deve ser NA NF NF NA

Percebe-se pois que pode ser usada chave externa de qualquer tipo, desde que no ladder se utilize o contato de tipo conveniente. Mesmo assim, por questo de segurana, no se deve utilizar chave externa NF para ligar nem NA para desligar.

12.1 Desenvolvimento do programa LadderAps a definio da operao de um processo onde so geradas as necessidades de sequenciamento e/ou intertravamento, esses dados e informaes so passados sob forma de diagrama lgico, diagrama funcional ou matriz de causas e efeitos e a partir da o programa estruturado.

44

A lgica de diagrama de contatos do CLP assemelha-se de rels. Para que um rel seja energizado, necessita de uma continuidade eltrica, estabelecida por uma corrente eltrica.

Ao ser fechada a CH1, a bobina K1 ser energizada, pois ser estabelecida uma continuidade entre a fonte e os terminais da bobina. O programa equivalente do circuito anterior, na linguagem ladder, ser o seguinte.

Analisando os mdulos de entrada e sada do CLP, quando o dispositivo ligado entrada digital E1 fechar, este acionar o contato E1, que estabelecer uma continuidade de forma a acionar a bobina S1, conseqentemente o dispositivo ligado sada digital S1 ser acionado. Uma prtica indispensvel a elaborao das tabelas de alocao dos dispositivos de entrada/sada. Esta tabela constituda do nome do elemento de entrada/sada, sua localizao e seu endereo de entrada/sada no CLP. Exemplo: DISPOSITIVO PSL - 100 TT - 400 FS SV LOCALIZAO Topo do tanque pressurizado 2 Sada do misturador Sada de leo do aquecedor Ao lado da vlvula FV400 ENDEREO E1 EA1 E2 S1

O NF um contado de negao ou inversor, como pode ser visto no exemplo abaixo que similar ao programa anterior substituindo o contato NA por um NF.

45

Analisando os mdulos de entrada e sada, quando o dispositivo ligado a entrada digital E1 abrir, este desacionar o contato E1, este por ser NF estabelecer uma continuidade de forma a acionar a bobina S1, conseqentemente o dispositivo ligado sada digital S1 ser acionado. A seguir temos o grfico lgico referente aos dois programas apresentados anteriormente.

12.1.1

Associao de contatos no Ladder

No ladder se associam contatos para criar as lgicas E e OU com a sada. Os contatos em srie executam a lgica todos os contatos estiverem fechados A sada S1 ser acionada quando: E1 estiver acionada E E2 estiver no acionada E E3 estiver acionada

E, pois a bobina s ser acionada quando

46

Em lgebra booleana S=E1* E2* E3 A lgica

OU

conseguida com a associao paralela, acionando a sada desde

que pelo menos um dos ramos paralelos estejam fechados A sada S1 ser acionada se E1 for acionada OU E2 no for acionada OU E3 for acionada. O que equivale a lgica booleana. S1=E1+E2+E3 Com associaes mistas criam-se condies mais complexas como a do exemplo a seguir: Neste caso a sada acionada quando E3 for acionada & E1 for acionada OU E3 for acionada & E2 no for acionada Em lgica booleana S1=E3 * (E1 + E2)

12.1.2

Instrues

Na UCP o programa residente possui diversos tipos de blocos de funes. Na listagem a seguir apresentamos alguns dos mais comuns: contador; temporizao de energizao; temporizao de desenergizao; adio de registros; multiplicao de registros; diviso de registros; extrao de raiz quadrada; bloco OU lgico de duas tabelas; bloco E lgico de duas tabelas; ou exclusivo lgico de duas tabelas; deslocar bits atravs de uma tabela-direita;

47

deslocar bits atravs de uma tabela-esquerda; mover tabela para nova localizao; mover dados para memria EEPROM; mover inverso da tabela para nova localizao; mover complemento para uma nova localizao; mover valor absoluto para uma nova localizao; comparar valor de dois registros; ir para outra seqncia na memria; executar sub-rotina na memria; converter A/D e localizar em um endereo; converter D/A um dado localizado em um endereo; executar algoritmo PID; etc.

12.1.3

Instrues Bsicas

As instrues bsicas so representadas por blocos funcionais introduzidos na linha de programao em lgica ladder. Estes blocos funcionais podem se apresentar de formas diferentes de um CLP para outro, mas a filosofia de funcionamento invarivel. Estes blocos auxiliam ou complementam o controle do equipamento, introduzindo na lgica ladder instrues como de temporizao, contagem, soma, diviso, subtrao, multiplicao, PID, converso BCD/Decimal, converso Decimal/BCD, raiz quadrada, etc.

12.1.4

Funcionamento dos Principais Blocos

48

O bloco funcional possui pontos de entrada ( localizados esquerda ) e pontos de sada ( localizados direita do bloco ), tambm possui campos de entrada de informaes como; nmero do registro, memria, ponto de entrada analgico, bit de sada, bit de entrada, ponto de sada analgico, constantes, etc. As instrues seguintes ser explicadas supondo o byte de oito bits. A anlise para o byte de dezesseis bits exatamente a mesma.

12.1.5

Instruo de Temporizao

O temporizador conta o intervalo de tempo transcorrido a partir da sua habilitao at este se igualar ao tempo preestabelecido. Quando a temporizao estiver completa esta instruo eleva a nvel 1 um bit prprio na memria de dados e aciona o operando a ela associado.

Segundo exemplo, quando a entrada E1 for acionada o temporizador ser habilitado e imediatamente aps 30 segundos a sada S1 ser acionada. Quando E1 for desacionada, o temporizador ser desabilitado, ou desenergizado, desacionando a sada S1. Em alguns casos, esta instruo apresenta duas entradas uma de habilitao da contagem e outra para zeramento ou reset da sada. Para cada temporizador destina-se um endereo de memria de dados onde o valor prefixado ser armazenado. Na memria de dados do CLP, o temporizador ocupa trs bytes para o controle. O primeiro byte reservado para o dado prefixado, o segundo byte reservado para a

49

temporizao e o terceiro byte reservado para os bits de controle da instruo temporizador. Os temporizadores podem ser TON (temporiza no acionamento) e TOFF (temporiza no desacionamento).

12.1.6

Instruo de Contagem

O contador conta o nmero de eventos que ocorre e deposita essa contagem em um byte reservado. Quando a contagem estiver completa, ou seja , igual ao valor prefixado, esta instruo energiza um bit de contagem completa. A instruo contador utilizada para energizar ou desenergizar um dispositivo quando a contagem estiver completa.

Para cada contador destina-se um endereo de memria de dados onde o valor prefixado ser armazenado. Na memria de dados do CLP, o contador ocupa trs bytes para o controle. O primeiro byte reservado para o dado prefixado, o segundo byte reservado para a contagem e o terceiro byte reservado para os bits de controle da instruo contador.

50

12.1.7

Instruo Mover

A instruo mover transfere dados de um endereo de memria para outro endereo de memria, manipula dados de endereo para endereo, permitindo que o programa execute diferentes funes com o mesmo dado.

Abaixo temos cinco endereos da memria de dados do CLP. Observe que o dado de D1 distinto de D2.

B7 D1 D2 0 0

B6 0 0

B5 0 1

B4 0 1

B3 1 0

B2 1 0

B1 1 0

B0 1 0

51

D3 D4 D5D1 para D2.

0 1 1

0 1 0

0 1 0

0 0 0

1 0 0

0 1 1

0 0 1

0 0 1

Supondo que a instruo mover tenha sido acionada e que a movimentao ser de

B7 D1 D2 D3 D4 D5 0 0 0 1 1

B6 0 0 0 1 0

B5 0 0 0 1 0

B4 0 0 0 0 0

B3 1 1 1 0 0

B2 1 1 0 1 1

B1 1 1 0 0 1

B0 1 1 0 0 1

Observe que o contedo de D2 foi alterado. No momento em que a instruo mover for desacionada, o dado de D2 permanecer o mesmo. Enquanto a entrada E1 estiver acionada, o dado ser movido uma vez a cada ciclo de varredura, portanto E1 deve ser acionado e desacionado rapidamente. Temos o grfico que ilustra antes e depois do acionamento de E1 para a instruo mover.

52

12.1.8

Instruo Comparar

A instruo comparar verifica se o dado de um endereo igual, maior, menor, maior/igual ou menor/igual que o dado de um outro endereo, permitindo que o programa execute diferentes funes baseadas em um dado de referncia.

No exemplo, quando a entrada E1 for acionada as duas instrues de comparao sero acionadas, se D1 for maior que D2 o bit de sada S1 ser acionado, se D1 for menor que D2 o bit de sada S2 ser acionado. A comparao s existir se a entrada E1 estiver acionada, caso contrrio as duas sadas S1 e S2 sero desacionadas.

53

Observe o grfico acima, entre T0 e T1 a entrada E1 est desativada, logo no h comparao e as sadas S1 e S2 so nulas. Entre T1 e T2 o dado D1 se encontra com valor maior que D2, logo a instruo de comparao ativa a sada S1. Entre T2 a T3 o dado D1 igual a D2, como no h instruo de igualdade as sadas estaro desativadas. Entre T3 a T4 o dado D1 menor que D2, logo a sada S2 ser ativada, a partir de T4 a entrada E1 foi desacionada, portanto as comparaes so desativadas e as sadas iro para estado lgico "0". A mesma anlise vlida para a instruo igual a, maior igual a e menor igual a.

12.1.9 12.1.10

Instrues Matemticas Instruo Soma

Permite somar valores na memria quando habilitado. Nesta instruo podem-se usar os contedos de um contador, temporizador, byte da memria imagem, byte da memria de dados.

54

Nesta instruo de programa, quando E1 for acionada, a soma do dado 1 com o dado 2 ser depositado no dado 3, portanto o contedo do dado 3 no dever ter importncia. Caso o contedo do dado 3 seja importante, o mesmo deve ser movido para um outro endereo ou o resultado da soma depositado em outro endereo. Enquanto E1 estiver acionado o dado D1 ser somado com D2 e depositado no dado D3 a cada ciclo de varredura, portanto E1 deve ser acionado e desacionado rapidamente. Abaixo temos cinco endereos da memria de dados do CLP.

B7 D1 D2 D3 D4 D5 0 0 0 1 1

B6 0 0 0 1 0

B5 0 0 0 1 0

B4 1 0 0 0 0

B3 1 1 1 0 0

B2 0 1 0 1 1

B1 1 1 0 0 1

B0 0 1 0 0 1

Supondo que a instruo somar tenha sido acionada e que a soma ser de D1 e D2 em D3. D1 equivale em decimal a 26 e D2 a 15, a soma resultar 41 no D3.

B7 D1 0

B6 0

B5 0

B4 1

B3 1

B2 0

B1 1

B0 0

55

D2 D3 D4 D5

0 0 1 1

0 0 1 0

0 1 1 0

0 0 0 0

1 1 0 0

1 0 1 1

1 0 0 1

1 1 0 1

Observe que o contedo de D3 foi alterado, no momento em que a instruo soma for desacionada, os dados de D1 e D2 permanecero os mesmos.

A sada S1 ser acionada quando a soma for concluda. Caso o resultado da soma no ultrapasse o limite mximo ( overflow ), a sada S1 ser acionada. Em alguns casos o um bit, do byte de controle da instruo soma, assume valor lgico "1", determinando o estouro da capacidade. Atravs deste bit e possvel de se determinar quando a soma ultrapassou ou no o valor mximo.

56

12.1.11

Instruo Subtrao

Permite subtrair valores na memria quando habilitado. Nesta instruo podem-se usar os contedo de um contador, temporizador, byte da memria imagem, byte da memria de dados.

Nesta instruo de programa, quando E1 for acionada, a subtrao do dado 1 com o dado 2 ser depositado no dado 3, portanto o contedo do dado 3 no dever ter importncia. Caso o contedo do dado 3 seja importante, o mesmo deve ser movido para um outro endereo ou o resultado da soma depositado em outro endereo. Enquanto E1 estiver acionado o dado D1 ser subtrado do dado D2 e depositado no dado D3 a cada ciclo de varredura, portanto E1 deve ser acionado e desacionado rapidamente. Abaixo se vm cinco endereos da memria de dados do CLP.

B7 D1 D2 D3 D4 D5 0 0 0 1 1

B6 0 0 0 1 0

B5 0 0 0 1 0

B4 1 0 0 0 0

B3 1 1 0 0 0

B2 0 1 0 1 1

B1 1 1 0 0 1

B0 0 1 0 0 1

Supondo que a instruo subtrao tenha sido acionada e que a subtrao ser de D1 menos D2 em D3. D1 equivale em decimal a 26 e D2 a 15, a subtrao resultar 9 no D3.

57

B7 D1 D2 D3 D4 D5 0 0 0 1 1

B6 0 0 0 1 0

B5 0 0 0 1 0

B4 1 0 0 0 0

B3 1 1 1 0 0

B2 0 1 0 1 1

B1 1 1 0 0 1

B0 0 1 1 0 1

Observe que o contedo de D3 foi alterado, no momento em que a instruo soma for desacionada, os dados de D1 e D2 permanecero os mesmos.

Caso o resultado da subtrao possua sinal negativo ( underflow ), a sada S1 ser acionada. Em alguns casos o um bit, do byte de controle da instruo subtrao, assume valor lgico "1". Atravs deste bit e possvel de se determinar quando a subtrao resultou positivo ou negativo.

12.1.12

Instruo Multiplicao

Permite multiplicar valores na memria se a condio for verdadeira.

58

Observe os cinco endereos do mapa de memria apresentado. B7 D1 D2 D3 D4 D5 0 0 0 1 1 B6 0 0 0 1 0 B5 0 0 0 1 0 B4 1 0 0 0 0 B3 1 0 0 0 0 B2 0 1 0 1 1 B1 1 1 0 0 1 B0 0 1 0 0 1

Supondo que a instruo multiplicao tenha sido acionada por E1 e que a multiplicao ser de D1 por D2 em D3. D1 equivale em decimal a 26 e D2 a 7, a multiplicao resultar 182 no D3.

B7 D1 D2 D3 D4 D5 0 0 1 1 1

B6 0 0 0 1 0

B5 0 0 1 1 0

B4 1 0 1 0 0

B3 1 0 0 0 0

B2 0 1 1 1 1

B1 1 1 1 0 1

B0 0 1 0 0 1

59

Quando a entrada E1 for acionada, a multiplicao do dado D1 pelo dado D2 ser depositada no contedo do dado D3.

12.1.13

Instruo Diviso

Permite dividir valores na memria quando habilitado.

Observe os cinco endereos do mapa de memria apresentado.

B7 D1 D2 D3 D4 D5 0 0 0 1 1

B6 0 0 0 1 0

B5 1 0 0 1 0

B4 1 0 0 0 0

B3 0 0 0 0 0

B2 0 1 0 1 1

B1 1 0 0 0 1

B0 0 0 0 0 1

Supondo que a instruo diviso tenha sido acionada por E1 e que a diviso ser de D1 por D2 em D3, D4. D1 equivale em decimal a 50 e D2 a 4, a diviso resultar 12,5 no D3, D4.

B7

B6

B5

B4

B3

B3

B2

B1

60

D1 D2 D3 D4 D5

0 0 0 0 1

0 0 0 0 0

1 0 0 0 0

1 0 0 0 0

0 0 1 0 0

0 1 1 1 1

1 0 0 0 1

0 0 0 1 1

Quando a entrada E1 for acionada, a diviso do dado D1 pelo dado D2 ser depositada no contedo do dado D3, D4.

12.1.14

Instrues Lgicas

Estas instrues destinam-se comparao lgica entre bytes. So recursos disponveis para os programadores, podendo serem empregadas na anlise de byte e diagnose de dados.

12.1.15

Instruo And

Permite executar funo AND com valores da memria quando habilitada.

Observe os cinco endereos do mapa de memria apresentado.

B7 D1 0

B6 1

B5 0

B4 1

B3 1

B2 0

B1 1

B0 0

61

D2 D3 D4 D5

0 0 1 1

1 0 1 0

0 0 1 0

0 0 0 0

0 0 0 0

1 0 1 1

1 0 0 1

1 0 0 1

Supondo que a instruo AND tenha sido acionada por E1 e que a instruo ser de D1 and D2 em D3. Observe a tabela verdade abaixo e verifique o resultado da analise AND entre os dois bytes D1 e D2.

E1 0 0 1 1

E2 0 1 0 1

SADA 0 0 0 1

E1 e E2 so as entradas e SADA o resultado.

B7 D1 D2 D3 D4 D5 0 0 0 1 1

B6 1 1 1 1 0

B5 0 0 0 1 0

B4 1 0 0 0 0

B3 1 0 0 0 0

B2 0 1 0 1 1

B1 1 1 1 0 1

B0 0 1 0 0 1

Quando a entrada E1 for acionada, a instruo do dado D1 and dado D2 ser depositada no contedo do dado D3.

62

12.1.16

Instruo Or

Permite executar funo OU com valores da memria quando habilitada analisar valores na memria quando habilitada.

Observe os cinco endereos do mapa de memria apresentado.

B7 D1 D2 D3 D4 D5 0 0 0 1 1

B6 1 1 0 1 0

B5 0 0 0 1 0

B4 1 0 0 0 0

B3 1 0 0 0 0

B2 0 1 0 1 1

B1 1 1 0 0 1

B0 0 1 0 0 1

Supondo que a instruo OR tenha sido acionada por E1 e que a instruo ser de D1

or D2 em D3.

Observe a tabela verdade abaixo e verifique o resultado da analise OR entre os dois bytes D1 e D2. E1 0 E2 0 SADA 0

63

0 1 1

1 0 1

1 1 1

E1 e E2 so as entradas e SADA o resultado.

B7 D1 D2 D3 D4 D5 0 0 0 1 1

B6 1 1 1 1 0

B5 0 0 0 1 0

B4 1 0 1 0 0

B3 1 0 1 0 0

B2 0 1 1 1 1

B1 1 1 1 0 1

B0 0 1 1 0 1

Quando a entrada E1 for acionada, a instruo do dado D1 or dado D2 ser depositada no contedo do dado D3.

12.1.17

Instruo Xor

Permite executar funo ou exclusivo com valores da memria quando habilitada.

Observe os cinco endereos do mapa de memria apresentado.

B7 D1 0

B6 1

B5 0

B4 1

B3 1

B2 0

B1 1

B0 0

64

D2 D3 D4 D5

0 0 1 1

1 0 1 0

0 0 1 0

0 0 0 0

0 0 0 0

1 0 1 1

1 0 0 1

1 0 0 1

Supondo que a instruo XOR ( ou exclusivo ) tenha sido acionada por E1 e que a instruo ser de D1 xor D2 em D3. Observe a tabela verdade abaixo e verifique o resultado da anlise xor entre os dois bytes D1 e D2. E1 0 0 1 1 E2 0 1 0 1 SADA 0 1 1 0

E1 e E2 so as entradas e SADA o resultado.

B7 D1 D2 D3 D4 D5 0 0 0 1 1

B6 1 1 0 1 0

B5 0 0 0 1 0

B4 1 0 1 0 0

B3 1 0 1 0 0

B2 0 1 1 1 1

B1 1 1 0 0 1

B0 0 1 1 0 1

Quando a entrada E1 for acionada, a instruo do dado D1 xor dado D2 ser depositada no contedo do dado D3. Obviamente estas so apenas algumas instrues que a programao ladder dispes. Uma srie de outros recursos so disponveis em funo da capacidade do CLP em questo.

65

As instrues apresentadas serviro como base para o entendimento das instrues de programao ladder de qualquer CLP, para tal conte e no dispense o auxlio do manual ou help on-line quando disponvel no software de programao. A utilizao do software de programao uma questo de estudo e pesquisa, uma vez que o layout de tela e comandos no so padronizados.

66

13.0 Exerccios.13.1 Na figura indicada abaixo temos um esteira que acionada por um boto ligae um de parada desliga. Necessita-se contar o nmero de tambores que passam pela esteira. Uma vez atingido o nmero necessrio, um alarme (AL) dever ser acionado. Desenvolva um programa em linguagem Ladder Altus que realize esta funo. ST= Sensor de presena de tambor M = Motor que movimenta a esteira, Controlado pelo Clp. Funcionamento solicitado: Ao ligarmos o boto de partida deveremos contar um lote de dez tambores e desligar a esteira. No caso de parada, esperar a partida e continuar contando.

13.2 Queremos automatizar uma garagem comercial. A informao necessria aindicao se a garagem est lotada ou no. A garagem possui uma entrada e uma sada sendo que cada uma delas possui um sensor que detecta a presena de carros. Desenvolva um programa em linguagem Ladder que realize este controle.

67

13.3 Desenhar o diagrama de interconexes eltrico fsicas e o programa decontrole do PLC para um sistema de reservatrio composto de uma vlvula de entrada P, duas bombas (acionadas por M1 e M2), um alarme AL, e quatro sensores de nvel (a, b, c, d), conforme figura abaixo:

As condies de funcionamento so as seguintes: se o nvel for a, ento se fecha a vlvula P. Se o nvel for inferior a b, ento se abre a vlvula P. Acima de b, M1 e M2 bombeiam. Abaixo de b, somente M1 bombeia. Abaixo de c, soa o alarme AL. Em d, nenhuma das bombas dever funcionar. 13.4 Elaborar um programa PLC para controlar dois rels (R1 e R2) de tal maneira que R1 pode atuar de forma independente e R2 s pode atuar se R1 estiver ligado, mas pode continuar ligado aps o desligamento de R1. Os rels so ligados pelas botoeiras L1 e L2, e so desligados pelas botoeiras D1 e D2. 13.5 Elaborar um programa PLC capaz de efetuar o controle de uma prensa que manejada por dois operrios. Cada um deles utiliza um atuador que exige o emprego de ambas as mos. A operao de prensagem realiza-se quando se pe em marcha um motor que est comandado pelo contactor R. Por razes de segurana dos operrios, foi decidida a seguinte seqncia de funcionamento: A) Com somente um operador, no se pode ativar a prensa; B) Com os dois operrios atuando nos comandos A e B, a prensa abaixa; C) Se atua um operrio, mas o outro tarda mais do que trs segundos, a prensa no deve operar e, necessrio repetir a manobra; D) Se uma vez ativado o contactor R e qualquer um dos operrios retirar as mos do contato, R desativa e no volta a se ativar se o operrio demorar mais do que trs segundos, para recolocar suas mos no contato, caso em que devero repetir-se a manobra por ambos os operrios. 13.6 Elaborar um programa PLC para um processo industrial em que, uma esteira acionada pelo motor E transporta garrafas de trs tamanhos (pequena, mdia e

68

grande) que sensibilizam trs sensores ticos A, B, C. O processo tem incio quando a botoeira L acionada, e interrompido pela botoeira D. A seleo do tipo de garrafa feita a partir de uma chave seletora de trs posies (P, M e G). Assim, caso, por exemplo, sejam selecionadas garrafas grandes, a esteira deve parar e o alarme AL soar caso uma garrafa pequena ou mdia seja detectada. Aps a retirada manual da garrafa indesejada, o operador deve religar o sistema em L conforme ilustra a figura abaixo:

13.7

Com base no circuito apresentado na figura abaixo (programa para deteco

de borda de subida) elabore um outro projeto capaz de detectar uma borda de descida.

13.8

Em uma mquina de solda h dois elementos controlados por um PLC: um

contactor (A) para fechamento do arco, e um rel (E) para avano do motor do eletrodo. Quando o operador aciona o gatilho(G) a mquina deve entrar em funcionamento atuando primeiramente o motor e 0,5 segundo aps atuar o eletrodo. No momento em que o operador solta o gatilho, uma operao reversa deve ocorrer, ou seja, primeiramente desliga-se o eletrodo e aps 0,5 segundos desliga-se o

69

motor. Com base nestas informaes elabore um programa PLC para realizar tal controle. 13.9 Utilizando-se apenas de um elemento temporizador, elabore um programa de PLC capaz de acionar uma lmpada de sinalizao piscante com perodo de 2 segundos. 13.10 Elaborar um programa PLC capaz de interromper automaticamente o funcionamento de uma esteira transportadora de peas. A parada se realiza sempre que um sensor tico no detectar a passagem de uma nova pea num intervalo menor do que 5 segundos. O religamento da esteira se d pelo comando do operador em uma botoeira. Identifique qual esquema de temporizao foi utilizado na soluo. 13.11 Utilizando-se dos recursos de contagem em PLC, elabore um programa capaz de acionar uma lmpada sinalizadora sempre que o nmero de pulsos recebidos em sua entrada for mltiplo de 5 (cinco). Assim, no recebimento do quinto pulso a lmpada acende, desligando-se no sexto pulso; novamente acende no dcimo e desliga no dcimo primeiro e assim sucessivamente

14.0

Exerccios Intertravamento: Circuitos de Comando.

Data de Entrega:

70

71

Para os circuitos abaixo indicados, implemente-os em linguagem de Clp . Descreva

o funcionamento do circuito. Exerccios Intertravamento (continuao).

15.0

Bibliografia.

Professor: William da Silva Vianna, professor do curso Ps-Tcnico em Automao e do curso Tcnico em Instrumentao. Curso Cefet Pelotas-RS.