Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

1 
 
 
Área Tecnológica Mecatrônica 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Curso de CLP 
 
 2 
 
 
 
Área Tecnológica Mecatrônica 
 
 
 
 
 
 
 
 
 
 
 
 
 
Curso de CLP 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
SALVADOR 
2 0 0 2 
 
 3 
© 2002 – SENAI CIMATEC 
 
Área Tecnológica Mecatrônica 
 
Elaboração: Gildeberto de Souza Cardoso 
 
Revisão Técnica: Milton Bastos de Souza 
 
Revisão Pedagógica: 
 
Normalização: Núcleo de Informação Tecnológica - NIT 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Catalogação na fonte 
________________________________________________________ 
 
 SENAI-BA CIMATEC – Centro Integrado de Manufatura 
 e Tecnologia. Título. Salvador, 2002. ....p. il. (Rev.00) 
 
 
 
 I. (Assunto principal) I. Título 
 
CDD (codificação do NIT) 
________________________________________________________ 
 
 
 
SENAI CIMATEC 
Av. Orlando Gomes, 1845 - Piatã 
Salvador – Bahia – Brasil 
CEP 416050-010 
Tel.: (71) 462-9500 
Fax. (71) 462-9599 
http://www.cimatec.fieb.org.br 
 
 
 4 
MENSAGEM DO SENAI CIMATEC 
 
 
 
O SENAI CIMATEC visa desenvolver um programa avançado de suporte 
tecnológico para suprir as necessidades de formação de recursos humanos 
qualificados, prestação de serviços especializados e promoção de pesquisa 
aplicada nas tecnologias computacionais integradas da manufatura. 
 
Com uma moderna estrutura laboratorial e um corpo técnico especializado, o 
CIMATEC desenvolve programas de intercâmbio tecnológico com instituições 
de ensino e pesquisa, locais e internacionais. 
 
Tudo isso sem desviar a atenção das necessidades da comunidade, atendendo 
suas expectativas de formação profissional, suporte tecnológico e 
desenvolvimento, contribuindo para uma constante atualização da indústria 
baiana de manufatura e para a alavancagem do potencial das empresas 
existentes ou emergentes no estado. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 5 
APRESENTAÇÃO 
 
 
O curso de Controladores Lógicos Programáveis, objetiva fornecer os 
subsídios necessários para que o treinando, esteja a par do atual estágio 
tecnológico da instrumentação, aplicada ao controle de processos. 
 
Este material enfoca aspectos gerais relacionados ao CLP, com a 
intenção de ser o mais genérico possível. 
 
Não pretendemos com este curso esgotar o tema, mas indicar o caminho, 
para os que irão atuar na manutenção de equipamentos digitais e projetos 
de pequenos sistemas de automação utilizando CLPs aplicados no 
controle de variáveis de processos industriais. 
 
Esperamos que os treinandos tirem o maior proveito deste material, pois, 
ele é uma síntese do conhecimento de vários especialistas na área de 
Sistemas Digitais. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 6 
 
SUMÁRIO 
 
ITEM ASSUNTO PÁGINA 
1. Introdução a /CLP's 08 
1.1 Características 09 
 
2. Evolução dos CLP's 10 
2.1. Ciclo Evolutivo 10 
2.2. Do hard logic para o soft logic 11 
2.2.1. O hard logic 11 
2.2.2. O soft logic 13 
 
3. Hardware 13 
 
4. Software 14 
 
5. Estrutura básica de CLP's 15 
 
6. Processador ou CPU 17 
6.1. Métodos de processamento 18 
 
7. Sistema de memórias 22 
7.1. Tipos de memórias 22 
7.2. Arquitetura da memória do CLP 23 
7.2.1 Memória executiva 23 
7.2.2. Memória do sistema 23 
7.2.3. Memória de status dos Módulos de E/S 23 
7.2.4. Memória de dados 24 
7.2.5. Memória do usuário 24 
 
8. Módulos E/S ou I/O 25 
8.1. Módulos de Entrada 25 
8.1.1. Classificação 26 
8.2. Módulos de Saída 27 
8.2.1. Classificação 28 
 
9. Linguagem de Programação 30 
9.1. Classificação 30 
9.2. Linguagem de programação de CLP's 31 
9.2.1. Diagrama de Contatos 32 
9.2.2. Diagrama de Blocos Lógicos 32 
9.2.3. Lista de Instrução 33 
9.3. Sistema de programação 34 
 
10 Modelos de arquitetura de CLP's 35 
 
 
 
 7 
 Programação do CLP em Ladder 37 
 
11 Instruções de Bit 37 
11.1 Instruções de examinar 37 
11.1.1 Examinar se Energizado 38 
11.1.2 Examinar se Desenergizado 38 
11.2. Instruções de Energizar/Desenergizar saída 38 
11.2.1 Energizar saída 39 
11.2.2 Energizar saída com retenção 
 Desenergizar saída com retenção 39 
11.3. Monoestável sensível a borda de subida 40 
11.3.1 Uso da instrução OSR em branch 41 
 
11.4 Instruções de Temporizador 42 
11.4.1 ALLEN – BRADLLEY 
11.4.1.1 Generalidades 42 
11.4.1.2 Descrição 42 
11.4.1.3 Temporizador na energização (TON) 43 
11.4.1.4 Temporizador na desenergização (TOF) 44 
11.4.1.5 Temporizador Retentivo (RTO) 45 
11.4.2 SIEMENS 46 
11.4.2.1 Temporizador On-Delay Timer (S_ODT) 46 
11.4.2.2 Temporizador Off-Delay Timer (S_OFFDT) 47 
11.4.2.3 Retentive On-Delay (S_ODTS) 48 
11.4.2.4 Pulse 49 
11.4.2.5 Extended Pulse 50 
 
11.5 Instruções de Contador Crescente e Decrescente (CTU 
e CTD) 51 
11.5.1 ALLEN BRADLEY 
11.5.1.1 Generalidades 51 
11.5.1.2 Descrição 52 
11.5.1.3 Como o controlador trabalha 54 
11.5.2 SIEMENS 55 
11.5.2.1 Contador crescente (S_CU) 55 
11.5.2.2 Contador decrescente (S_CD) 56 
11.5.2.3 Contador crescente/decrescente (S_CUD) 57 
 
11.6 Instruções de comparação 58 
11.6.1 ALLEN-BRADLEY 
11.6.1.1 Igual a (EQU) 58 
11.6.1.2 Diferente (NEQ) 58 
11.6.1.3 Menor que (LES) 59 
11.6.1.4 Menor ou igual a (LEQ) 59 
11.6.1.5 Maior que (GRT) 60 
11.6.1.6 Maior ou igual a (GEQ) 60 
11.6.2 SIEMENS 61 
11.6.2.1 Igual a 61 
11.6.2.2 Não igual a 61 
 
 8 
11.6.2.3 Menor que 61 
11.6.2.4 Menor ou igual a 61 
11.6.2.5 Maior que 61 
11.6.2.6 Maior ou igual a 62 
 
11.7 Instruções Matemáticas 63 
11.7.1 ALLEN_BRADLEY 63 
11.7.1.1 Adição (ADD) 63 
11.7.1.2 Subtração (SUB) 64 
11.7.1.3 Multiplicação (MUL) 64 
11.7.1.4 Divisão (DIV) 64 
11.7.1.5 Zeramento (CLR) 65 
11.7.1.6 Raiz quadrada (SQR) 65 
11.7.1.7 Mover (MOV) 66 
11.7.2 SIEMENS 67 
11.7.2.1 Adição 67 
11.7.2.2 Subtração 68 
11.7.2.3 Multiplicação 68 
11.7.2.4 Divisão 69 
 
 Parte Prática 70 
 
 Telas do APS 80 
 
 Bibliografia 86 
 
 
 
 
8
1. INTRODUÇÃO 
 
 
O controlador lógico programável, ou simplesmente CLP, tem revolucionado os 
comandos e controles industriais desdeo seu surgimento na década de 70. 
Antes do surgimento dos CLP’s as tarefas de comando e controle de máquinas e 
processos industriais eram feitas por relés eletromagnéticos, especialmente 
projetadas para este fim e que ainda hoje se parecem bastante com o dispositivo 
eletromecânico inventado por Samuel F. B. Morse em 1836. 
 
O primeiro CLP surgiu na indústria automobilística, até então um usuário em 
potencial dos relés eletromagnéticos utilizados para controlar operações 
seqüenciadas e repetitivas numa linha de montagem. Compunha-se de circuitos 
eletrônicos montados com componentes semicondutores como transistores, CI's. 
 
A normalização do Brasil para representar um Controlador Programável adota 
como sigla “CP” e define como sendo um equipamento digital com hardware e 
software compatíveis com aplicações industriais. 
 
Portanto é comum encontrarmos os termos PLC, CLP E CP referindo ao mesmo 
equipamento. 
 
Segundo a NEMA (National Electrical Manufactures Association), um CLP é 
definido como aparelho eletrônico digital que utiliza uma memória programável 
para o armazenamento interno de instruções específicas, tais como lógica, 
sequenciamento, temporização, contagem e aritmética, para controlar, através 
de módulos de entradas e saídas, vários tipos de máquinas e processos. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
1.1 Características 
 
Basicamente, um controlador programável apresenta as seguintes 
características: 
 
• Hardware e/ou dispositivo de controle de fácil e rápida programação ou 
reprogramação, com a mínima interrupção na produção. 
• Capacidade de operação em ambiente industrial sem o apoio de 
equipamentos ou hardware específicos. 
• Sinalizadores de estado e módulos tipo plug-in de fácil manutenção e 
substituição. 
• Hardware ocupando espaço reduzido e apresentando baixo consumo de 
energia. 
• Possibilidade de monitoração do estado e operação do processo ou 
sistema, através da comunicação com computadores. 
• Compatibilidade com diferentes tipos de sinais de entrada e saída. 
• Capacidade de alimentar, de forma contínua ou chaveada, cargas que 
consomem correntes de até 2 A. 
• Hardware de controle que permite a expansão dos diversos tipos de 
módulos, de acordo com a necessidade. 
• Custo de compra e instalação competitivo em relação aos sistemas de 
controle convencionais. 
• Possibilidade de expansão da capacidade de memória. 
• Conexão com outros CLP’s através de redes de comunicação 
 
 
 
 
 
10
2. EVOLUÇÃO DOS CLP’s 
 
 
Inicialmente projetados para substituírem os sistemas de controle por relés, os 
CLP's limitavam-se a aplicações envolvendo máquinas e processos de 
operações repetitivas. 
Com o advento e a conseqüente evolução tecnológica dos 
microprocessadores, os CLP’s tiveram suas funções ampliadas, aumentando 
consideravelmente sua capacidade e flexibilidades operacionais. 
 
O que no seu surgimento era executado com componentes discretos, hoje se 
utiliza microprocessadores e microcontroladores de última geração, usando 
técnicas de processamento paralelo, inteligência artificial, redes de 
comunicação, fieldbus, etc. 
 
Em nível de software aplicativo, os controladores programáveis podem se 
tornar compatíveis com a adoção da norma IEC 1131-3, que prevê a 
padronização da linguagem de programação e sua portabilidade, fato que nos 
dias de hoje parece ilusão. 
 
Os CLP’s oferecem um considerável número de benefícios para aplicações 
industriais, que podem ressaltar em economia que excede o custo do CLP e 
devem ser consideradas quando da seleção de um dispositivo de controle 
industrial. As vantagens de sua utilização, comparadas a outros dispositivos de 
controle industrial, incluem: 
 
• Menor ocupação de espaço 
• Potência elétrica requerida menor 
• Reutilização 
• Programável, em caso de mudanças de requisitos de controle 
• Alta confiabilidade 
• Pequena manutenção 
• Permite interface com outros CLP’s e/ou outros dispositivos 
• Projeto do sistema mais rápido 
 
 
2.1 Ciclo Evolutivo 
 
O ciclo evolutivo dos controladores programáveis é o seguinte: 
• 1968: Projeto de um CLP para a General Motors Co., com o objetivo de 
substituir os sistemas de controle a relés. 
 
• 1969: Primeiro CLP fabricado para indústria automobilística com 
componentes equivalentes aos relés 
 
• 1971: Primeira aplicação de um CLP fora da indústria automobilística. 
 
• 1972: Introdução de instruções de temporização e contagem nos 
CLP's. 
 
• 1973: Introdução de operações aritméticas, controle de impressão, 
movimentação de dados e operações matriciais. 
 
 
11
 
• 1974: Introdução de terminais de programação com TRC (tubos de 
raios catódicos) 
 
• 1975: Introdução de controle analógico PID 
 
• 1977: Introdução de CLP’s bastante compactos, baseados a tecnologia 
de microprocessadores. 
 
• 1978: Os CLP’s obtêm grande aceitação no mercado norte-americano, 
com vendas aproximadas de 80 milhões de dólares. 
 
• 1979: Integração entre o sistema de comunicação do CLP e a 
operação de uma planta individual. 
 
• 1980: Introdução de módulos inteligentes de entrada e saída, 
proporcionando alta velocidade e controle preciso em aplicações de 
posicionamento. 
 
• 1981: Introdução de redes de comunicação permitindo que o CLP se 
comunique com dispositivos inteligentes como computadores, leitores 
de códigos, etc. 
 
• 1982: Introdução de mini e micros CLP’s. 
 
• 1983: Introdução de redes de controle, permitindo que vários CLP’s 
acessem os mesmos módulos I/O. 
 
Após este momento, se torna difícil descrever toda evolução dos CLP’s com 
precisão de datas, dada a rapidez na introdução de novas tecnologias. 
 
 
 
2.2 Do hard Logic para o Soft Logic 
 
2.2.1 O hard Logic 
 
Quando se elabora uma seqüência de controle utilizando reles convencionais 
e/ou módulos de estado sólido, a lógica do sistema será de acordo com a 
fiação executada entre esses dispositivos, sendo que a seqüência de controle é 
do tipo “hard wired logic” ou simplesmente “hard logic” (Lógica de interligação 
dos dispositivos por meio de fiação elétrica). 
 
A alteração na lógica significa realizar alteração na fiação. Dessa forma 
existem diversos pontos deficientes, enumeradas a seguir: 
 
1. Problemas relacionados ao projeto e fabricação 
 
A elaboração do diagrama da seqüência depende, na maioria dos casos, da 
capacidade ou experiência pessoal do indivíduo. Assim, além do diagrama de 
seqüência propriamente dito, outros inúmeros serviços relacionados, como 
diagrama de fiação entre os componentes, lay-out dos componentes, 
determinação das espécies de fios e cabos e outros, têm que se projetados. 
Por outro lado, quando se deseja introduzir alterações do sistema já pronto, 
 
 
12
têm-se que efetuar adição e/ou deslocamento de componentes e da fiação, 
acarretando um alto custo com relação ao tempo e a mão de obra. Fig.02 
 
 
Figura 02 – Exemplo do hard logic 
 
2. Problemas relativos à operação experimental e ajustes 
 
Para efetuar a verificação no caso em que o projeto da seqüência foi elaborado 
corretamente ou as fiações foram executadas conforme o projeto, é necessário 
efetuar testes de continuidade, utilizando aparelhos de testes apropriados. 
Além disso, nos ajustes de campo com a seqüência acoplada às partes 
mecânicas há a necessidade de assistência e orientação de técnicos de grande 
experiência 
 
3. Problemas relativos à instalação, montagem e manutenção 
 
Como o hard logic toma um espaço muito grande, encontra-se normalmente 
dificuldade no lay-out, além da necessidade de se efetuar manutenção 
periódica das partes móveis (contatos, etc.) e, ainda, manterum estoque de 
peças sobressalente considerando-se a vida útil das mesmas. 
 
4. Problemas relativos a função 
 
Como existe um limite de tempo para acionamento dos reles, o hard logic não é 
indicado para equipamentos que requerem alta velocidade de controle. Além 
disso, torna-se extremamente difícil o controle de um sistema com hard logic 
quando o mesmo necessita de memorização temporária, processamento e 
comparação de valores numéricos. 
 
 
 
 
 
 
13
 
2.2.2 O Soft logic 
 
O computador nada poderá fazer se for constituído apenas de hardware. As 
suas funções serão ativadas somente quando houver um programa 
denominado software. Os computadores, através de programas ou software, 
podem realizar cálculos das folhas de pagamento, assim como, cálculos de 
equações das mais complexas. Isto significa que, com um mesmo hardware, a 
lógica poderá ser alterada através de um software denominada programa. Ou 
seja, a lógica do computador é um “soft logic”. 
 
Aplicando o mesmo raciocínio de controle sequencial, pode-se dizer que as 
fiações que compõe a lógica do circuito de reles, poderão ser substituídas pelo 
software e denomina-se “soft wired logic”(lógica de interligação dos dispositivos 
por meio de programas). 
 
Para realizar o controle sequencial através do soft logic, ter-se-á que dotar o 
hardware de um dispositivo de memória, tal qual no computador, e nele 
armazenar uma série de programas. 
 
Esses equipamentos que objetivam o controle sequencial, são chamados 
“Stored Program System Controller”. 
 
 
 
3 . HARDWARE 
 
• Maior velocidade de varredura, devido á utilização de microprocessadores e 
microcontroladores de 16 e 32 bits. 
• Módulos de entrada e saída de alta densidade, possibilitando baixo custo e 
espaços reduzidos. 
• Módulos inteligentes, microprocessados que permitem controles 
descentralizados (módulo PID, comunicação ASC II, posicionadores, 
emissores de relatório, etc.). 
• Redundância de CPU, utilizando arquitetura de votação majoritária, sistema 
dual hot stand-by ou sistema dual full duplex. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
4. SOFTWARE 
 
• Utilização de linguagem de programação de alto nível, permitindo grande 
flexibilidade de programação quando da utilização de periféricos. 
• Utilização de microcomputadores compatíveis com MS-DOS ou Windows 
como ferramenta de programação. 
• Representação do programa em diagrama de contatos, diagrama de blocos 
funcionais e lista de instrução. 
• Diagnósticos e detecção de falhas na monitoração de máquinas e 
processos. 
• Introdução da matemática de ponto flutuante, tornando possível o 
desenvolvimento de cálculos complexos. 
 
Os sistemas de controle baseados em controladores programáveis (CLP’s) 
são aplicados nas mais diferentes áreas, a saber: 
 
• Petroquímica 
• Aeronáutica 
• Refinarias 
• Mineração (ouro, carvão, minério de ferro, etc.) 
• Madeireiras 
• Indústrias de embalagens 
• Fábrica de vidro 
• Fábrica de borracha 
• Indústrias de produtos alimentícios 
• Programa espacial 
• Usinas hidroelétricas 
• Fábricas de plásticos 
• Parque de diversões 
• Transportadoras, etc. 
 
 
 
 
15
5. ESTRUTURA BÁSICA DE CLP’s 
 
 
A Estrutura básica de um controlador programável adveio do hardware básico 
de um computador. Podemos afirmar que um CLP é um computador para 
aplicações específicas, pois utiliza a mesma unidade central de 
processamentos (UCP) de um computador comum, acrescida de uma fonte de 
alimentação com ótimas características de filtragem/estabilização, interface E/S 
imune a ruídos, e de um invólucro específico para aplicações industriais. 
 
O diagrama de blocos à seguir, ilustra a estrutura básica de um controlador 
programável. 
 
 
Fig.03 – Elementos componentes de um sistema com CLP 
 
A Unidade Central de Processamento (UCP/CPU), é responsável pelo 
processamento do programa, isto é, coleta os dados dos cartões de entrada, 
efetua o processamento segundo o programa do usuário, armazenado na 
memória e envia o sinal para os cartões de saída como resposta do 
processamento. 
 
Quando se tratar de controladores programáveis (CLP’s), o termo processador 
será utilizado para identificar o hardware do qual a UCP faz parte. 
 
Quando se tratar de computadores, o termo UCP será utilizado para identificar 
o hardware do processador central. 
 
 
 
16
A operação simplificada de um CLP pode ser representada pela estrutura da 
Fig.04 
 
 
Fig.04 – Operação simplificada do CLP 
 
 
Parte Função 
 
 
1 
Processador do CLP efetuando a leitura contínua dos 
estados no módulo de entrada e a atualização da 
tabela imagem das entradas. 
 
2 
Processador do CLP executando continuamente o 
programa lógico do usuário, baseado na tabela imagem 
das entradas. 
 
3 
Processador do CLP atualizando continuamente a 
tabela imagem das saídas, baseado na solução do 
programa lógico do usuário. 
 
 
4 
Processador do CLP ativando ou desativando 
continuamente os estados dos módulos de saída de 
acordo com a tabela imagem das saídas. 
 
 
 
 
17
6. PROCESSADOR OU CPU 
 
 
A palavra processador ou CPU é utilizada para identificar a parte do 
controlador programável responsável pela execução de todas as suas funções. 
 
O processador ou CPU de um controlador programável assemelha-se à UCP 
de um computador quanto à concepção do hardware, pois ambos compõem-
se de blocos funcionais similares. 
 
O processador tem a função de coletar os dados enviados pelos módulos de 
entrada assim como selecionar os dados previamente armazenados, efetuando 
o processamento dos mesmos de acordo com o programa do usuário. 
 
O resultado lógico destas operações (RLO) será posteriormente enviado para 
os módulos de saída. 
 
A figura a seguir mostra o diagrama funcional simplificado de um computador. 
 
 
 
Fig.05 – Diagrama funcional de um computador 
 
 
18
A figura a seguir mostra o diagrama funcional simplificado de um controlador 
programável 
 
 
Fig.06 – Diagrama funcional de um CLP 
 
 
Com exceção dos dispositivos periféricos, os sistemas representados acima 
parecem idênticos. A diferença entre um CLP e um computador está na forma 
como o microprocessador (UCP) foi configurado e programado. 
 
Um CLP tem o seu processador configurado para executar operações 
programadas em linguagem de alto nível, como a linguagem de contatos de 
relé (ladder). 
 
Um computador baseado no mesmo microprocessador terá a sua UCP 
configurada para executar operações programadas em basic, por exemplo. 
 
 
6.1 Métodos de Processamento 
 
O processamento do programa do usuário de um CP, poderá ter estruturas 
diferentes para a execução do mesmo, tais como: 
 
• processamento por interrupção; 
• processamento comandado por tempo; 
• processamento por evento. 
• processamento cíclico; 
 
 
 
19
 
• Processamento por interrupção 
 
Certas ocorrências no processo controlado não podem, algumas vezes, 
aguardar o ciclo completo de execução do programa. Neste caso, ao 
reconhecer uma ocorrência deste tipo, a CPU interrompe o ciclo normal do 
programa e executa um outro programa, chamado de rotina de 
interrupção.Fig.07 
 
Esta interrupção pode ocorrer a qualquer instante da execução do ciclo de 
programa. Ao finalizar esta situação, o programa voltará a ser executado do 
ponto onde ocorreu a interrupção. 
 
Uma interrupção pode ser necessária, por exemplo, numa situação de 
emergência onde procedimentos referentes a esta situação devem ser 
adotados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Fig.07 – Ciclo Normal e Interrupção 
 
 
* Processamentocomandado por tempo 
 
Da mesma forma que determinadas execuções não podem ser dependentes do 
ciclo normal de programa, algumas devem ser executadas a certos intervalos 
de tempo, as vezes muito curto, na ordem de 10 ms. 
Este tipo de processamento também pode ser encarado como um tipo de 
interrupção, porém ocorre a intervalos regulares de tempo dentro do ciclo 
normal de programa. 
 
 
* Processamento por evento 
 
Este é processado em eventos específicos, tais como no retorno de energia, 
falha na bateria e estouro do tempo de supervisão do ciclo da CPU. 
 
Neste último caso, temos o chamado Watch Dog Time (WD), que normalmente 
ocorre como procedimento ao se detectar uma condição de estouro de tempo 
Rotina de Interrupção 
Interrupção 
Início Fim 
Ciclo normal de programa 
 
 
20
de ciclo da CPU, parando o processamento numa condição de falha e 
indicando ao operador através de sinal visual e as vezes sonoro. 
 
• Processamento cíclico 
É a forma mais comum de execução que predomina em todas as CPU’s 
conhecidas, e de onde vem o conceito de varredura, ou seja, as instruções de 
programa contidas na memória, são lidas uma após a outra sequencialmente 
do início ao fim, daí retornando ao início ciclicamente.Fig.08 
 
 
 
 
 
 
 
 
 
Fig.08 – Ciclo normal de um programa 
 
Um dado importante de uma CPU é o seu tempo de ciclo, ou seja, o tempo 
gasto para a execução de uma varedura. Este tempo está relacionado com o 
tamanho do programa do usuário (em média 2ms a cada 1.000 instruções de 
programa) 
 
Ao ser energizado, estando o CLP no estado de execução, o mesmo cumpre 
uma rotina de inicialização gravada em seu sistema operacional. Esta rotina 
realiza as seguintes tarefas: 
 
• Limpeza da memória imagem, para operandos não retentivos; 
• Teste de memória RAM; 
• Teste de executabilidade do programa. 
 
Após a execução desta rotina, a CPU passa a fazer uma varredura (ciclo) 
constante, isto é, uma leitura sequencial das instruções em loop (laço). 
Entrando no loop, o primeiro passo a ser executado é a leitura dos pontos de 
entrada. Com a leitura do último ponto, irá ocorrer, a transferência de todos os 
valores para a chamada memória ou tabela imagem das entradas. 
 
Após a gravação dos valores na tabela imagem, o processador inicia a 
execução do programa do usuário de acordo com as instruções armazenadas 
na memória. Terminando o processamento do programa, os valores obtidos 
neste processamento, serão transferidos para a chamada memória ou tabela 
imagem das saídas, como também a transferência de valores de outros 
operandos, como resultados aritméticos, contagens, etc. 
 
Ao término da atualização da tabela imagem, será feita a transferência dos 
valores da tabela imagem das saídas, para os cartões de saída, fechando o 
loop. Neste momento é iniciado um novo loop. 
 
Para verificação do funcionamento da CPU, é estipulado um tempo de 
processamento, cabendo a um circuito chamado de Watch Dog Timer, 
Início Fim 
 
 
21
supervisioná-lo. Ocorrendo a ultrapassagem deste tempo máximo, o 
funcionamento da CPU, será interrompido, sendo assumido um estado de erro. 
 
O termo varredura ou scan, são usados para dar um nome a um ciclo 
completo de operação (loop). O tempo gasto para a execução do ciclo 
completo é chamado Tempo de Varredura, e depende do tamanho do 
programa do usuário, e a quantidade de pontos de entrada e saída. 
 
 
 
 
 
22
7. SISTEMAS DE MEMÓRIA 
 
 
O sistema de memória é uma parte de vital importância no processador 
de um controlador programável, pois armazena todas as instruções assim 
como os dados necessários para executá-las. 
 
Existem diferentes tipos de sistemas de memória. A escolha de um 
determinado tipo depende: 
 
• do tipo de informação a ser armazenada; 
• da forma como a informação será processada pela UCP. 
 
As informações armazenadas num sistema de memória são chamadas 
palavras de memória, que são formadas sempre pelo mesmo número de bits. 
 
A capacidade de memória de um CLP é definida em função do número de 
palavras de memória previstas para o sistema e pode ser representada por um 
mapa chamado mapa da memória. 
 
7.1 Tipos de memórias 
 
A arquitetura da memória de um controlador programável pode ser constituída 
por diferentes tipos de memória. 
 
 
Tipo de memória 
 
Descrição Observações 
RAM 
- dinâmica 
- estática 
- memória de acesso randomico - volátil 
- gravada pelo usuário 
ROM - memória somente para leitura - não volátil 
- não permite apagamento 
- gravada pelo fabricante 
PROM - Memória programável 
- somente de leitura 
- não volátil 
- não permite apagamento 
- gravada pelo usuário 
EPROM - memória programável/ 
apagável somente de leitura 
- não volátil 
- apagamento por ultra violeta 
- gravada pelo usuário 
EEPROM 
E2PROM 
FLASH-EPROM 
- memória programável/ 
apagável somente de leitura 
- não volátil 
- apagável eletricamente 
- gravada pelo usuário 
 
 
 
 
23
7.2 Arquitetura da memória de um CLP 
 
Independentemente dos tipos de memórias utilizadas, o mapa da memória de 
um controlador programável pode ser dividido em cinco áreas principais: 
 
• Memória executiva 
• Memória do sistema 
• Memória de status dos módulos E/S (tabela imagem) 
• Memória de dados 
• Memória do usuário 
 
 
7.2.1 Memória executiva 
 
Descrição 
É formada por memórias do tipo ROM ou PROM, pois o conteúdo das 
mesmas (sistema operacional) foi desenvolvido pelo fabricante do CLP 
e portanto não deverá ser alterado pelo usuário. 
Função 
Armazenar o sistema operacional, o qual é responsável por todas as 
funções e operações que podem ser executadas por um CLP 
 
7.2.2 Memória do sistema 
 
Descrição 
Esta área de memória é formada por memórias do tipo RAM, pois terá 
o seu conteúdo constantemente alterado pelo sistema operacional. 
Função 
Armazenar resultados e/ou informações intermediários, gerados pelo 
sistema operacional, quando necessário. 
Comentário 
Não pode ser alterada pelo usuário. 
 
7.2.3 Memória de status dos módulos E/S 
 
Descrição 
As memórias de status dos módulos E/S são do tipo RAM. A UCP, 
após ter efetuado a leitura dos estados de todas as entradas, 
armazenará essas informações na área denominada status das 
entradas ( ou imagem das entradas). Após o processamento dessas 
informações os resultados lógicos (RLO) serão armazenados na área 
denominada status das saídas (ou imagem das saídas) antes de 
serem enviados para as respectivas saídas. 
Função 
Armazenar o estado dos sinais de todas as entradas e saídas de cada 
módulo E/S. 
Processo 
À medida que o programa vai sendo executado, a UCP vai 
armazenado os resultados na área denominada status das saídas 
(tabela imagem das saídas), até o término da sequência de operações 
 
 
24
contidas no programa. Logo após, essas informações serão 
transferidas para as respectivas saídas. 
Comentário 
Podem ser monitoradas pelo usuário sendo que uma possível alteração 
só será permitida se contida no programa do usuário. 
 
7.2.4 Memória de dados 
 
Descrição 
As memórias de dados são do tipo RAM. Funções de temporização, 
contagem ou aritméticas necessitam de uma área de memória para 
armazenamento de dados, como: 
• valores pré-selecionados ou acumulados de contagem ou 
temporazição; 
• resultados ou variáveis de operações aritméticas; 
• resultados ou dados diversificados a serem utilizados por funções de 
manipulação de dados. 
Função 
Armazenar dados referentes ao programa do usuário. 
Classificação 
Alguns processadores subdividem a área de memória de dados em 
duas submemórias: 
• Memória para dados fixos 
• Memória para dados variáveis 
A primeira é programadapelo usuário através dos terminais de 
programação. A segunda é utilizada pelo processador para armazenar 
os dados acima citados. 
 
7.2.5 Memória do usuário 
 
Descrição 
A UCP efetuará a leitura das instruções contidas nesta área a fim de 
executar o programa do usuário, de acordo com os procedimentos 
predeterminados pelo sistema operacional, que se encontra gravado na 
memória executiva. 
Função 
Armazena o programa de controle desenvolvido pelo usuário. 
Classificação 
A área de memória destinada ao usuário pode ser configurada de 
diversas maneiras: 
• RAM 
• EPROM 
• EEPROM 
 
 Comentário 
Caso haja falta de energia elétrica, as informações armazenadas em 
memória RAM serão preservadas devido à existência de baterias de 
lítio. 
 
 
25
8. MÓDULOS DE I/O 
 
 
Os módulos de entrada ou de saída são constituídos de cartões eletrônicos, 
cada qual com capacidade para receber um certo número de variáveis. 
Normalmente esses módulos se encontram dispostos em gabinetes juntamente 
com a fonte de alimentação e a UCP. 
 
8.1 Módulos de entrada 
 
Os módulos de entrada são considerados como elementos de interface entre 
os sensores localizados no campo e a lógica de controle de um controlador 
programável (CP).A estrutura interna de um módulo de entrada pode ser 
subdividida em seis blocos principais: 
 
 
 
 
Fig.09 – Estrutura interna do Módulo de Entrada 
 
 
26
 
Parte 
 
Função 
 
Sensores de campo Informar ao controlador programável 
as condições do processo 
Terminais para conexão dos 
sensores de campo 
Permitir a interligação física entre os 
sensores de campo e o controlador 
programável. 
Condicionamento e conversão do 
sinal de entrada 
Converter os sinais de campo em 
níveis baixos de tensão, compatíveis 
com o processador utilizado. 
Indicadores de estado das entradas Proporcionar indicação visual do 
estado funcional das entradas 
contidas num módulo de entrada. 
Isolação elétrica Proporcionar isolação elétrica entre 
os sinais vindos do campo e os sinais 
do processador. 
Interface/multiplexação Informar ao processador o estado de 
cada variável de entrada. 
 
 
8.1.1 Classificação 
 
Dependendo da natureza do sinal de entrada, podemos dispor dos seguintes 
tipos de módulos de entrada: 
 
TIPO 
 
CARACTERÍSTICAS 
DIGITAL (AC) 12 Vac; 24 A 48 Vac; 
110/127 Vac; 220/240 Vac 
 
 
 
DIGTAL (DC) 
 
120 Vdc com isolação 
12 Vdc; 12 a 24 Vdc com resposta rápida; 
24 a 48 Vdc; 
12 a 24 Vdc (lógica positiva) sinking; 
12 a 24 Vdc (lógica negativa) source; 
48 Vdc source; 
48 Vdc sinking 
 
ANALÓGICO 1 a 5 Vdc; 0 a 10Vdc; -10 a +10Vdc; 4 a 20mA. 
 
 
ESPECIAL 
 
TTL com suprimento; TTL com dreno; 5 a 30 Vdc 
selecionável; 5Vdc contador/ decodificador; 12 a 24Vdc 
codificador/ contador; termopar; código ASCII; código 
Gray; pulsos de alta velocidade. 
 
 
 
27
Os sinais recebidos por um módulo de entrada podem vir de dois tipos de 
sensores: 
 
• Discretos: 
chave limite; botoeira; chave de digitadora (thumbwheel); chave de pressão; 
fotocélula; contato de relé; chave seletora; teclado e etc... 
 
• Analógico: 
transdutor de pressão; transdutor de temperatura; célula de carga (strain 
gage); sensores de vazão; transdutores de vibração; transdutores de 
corrente; transdutores de vácuo; transdutores de força 
 
 
8.2 Módulos de Saída 
 
Os módulos de saída também são considerados como elementos de interface, 
pois permitem que o processador se comunique com o meio externo. A 
estrutura interna de um módulo de saída pode ser subdividida em sete blocos 
principais, relacionados a seguir: 
 
Fig.10 - Estrutura interna do Módulo de Saída 
 
 
 
 
28
Parte 
 
Função 
Interface/multiplexação Recebe os sinais vindos do 
processador direcionando-os para as 
respectivas saídas. 
Memorizador de sinal Armazena os sinais que já foram 
multiplexados pelo bloco anterior. 
Isolação elétrica Proporciona isolação elétrica entre os 
sinais vindos do processador e os 
dispositivos de campo. 
Indicadores de estado de saídas .Proporciona indicação visual do 
estado funcional das saídas contidas 
num módulo de saída 
Estágio de Potência Transforma os sinais lógicos de baixa 
potência vindos do processador em 
sinais de potência, capazes de operar 
os diversos tipos de dispositivos de 
campo 
Terminais para conexão dos 
dispositivos de campo 
Permite a conexão física entre CLP e 
os dispositivos de campo. 
Dispositivos de campo Consiste em dispositivos 
eletromecânicos que atuam no 
processo/equipamento, em função dos 
sinais de controle enviados pelo CP. 
 
8.2.1 Classificação 
 
Dependendo da natureza dos dispositivos de campo e do tipo de sinal de 
controle necessário para comandá-los, podemos dispor dos seguintes tipos de 
módulos de saída: 
 
• alternado (AC) 
• digital 
• analógico 
• especial 
 
TIPO 
 
CARACTERÍSTICAS 
AC 12Vac; 24 a 48Vac; 120Vac; 220/240Vac; 120Vac com isolação. 
 
DC 12 a 60Vdc; 12 a 24Vdc com resposta rápida; 24 a 48Vdc; 12 a 
24Vdc com suprimento; 12 a 24Vdc com dreno; 48Vdc com 
suprimento; 48Vdc com dreno. 
 
Analó-
gico 
1 a 5Vdc; 0 a 10Vdc; -10 a +10Vdc; 4 a 20mA. 
 
Espe-
cial 
TTL com suprimento; TTL com dreno; 5 a 30Vdc selecionável; 
contato NA; contato NF; saída em ASCII; servo-motor; motor de 
passo. 
 
 
 
29
 
Os módulos de saída podem acionar os seguintes tipos de dispositivos de 
saída: 
 
Discretos: 
 
• controladores de motores 
• indicadores de painel 
• contator 
• válvula solenóide 
• display 
• bobina de relé 
• sistemas de alarma/segurança 
• sirena 
 
Analógicos: 
 
• acionadores AC 
• válvula de controle 
• acionadores DC 
 
 
 
 
30
9. LINGUAGEM DE PROGRAMAÇÃO 
 
 
A execução de tarefas ou resolução de problemas com dispositivos 
microprocessados requerem a utilização de uma linguagem de programação, 
através da qual o usuário pode se comunicar com a máquina a fim de atingir 
esses objetivos. 
 
9.1 Classificação 
 
Podemos classificar as diversas linguagens utilizadas na programação de 
dispositivos microprocessados em dois grupos: 
* Linguagem de baixo nível 
* Linguagem de alto nível 
 
 
Linguagem de baixo nível 
 
A linguagem de máquina é considerada a de mais baixo nível, pois cada 
instrução é composta por combinações dos bits 0 e 1. 
 
A linguagem Assembly é considerada de baixo nível, apesar das instruções 
consistirem em vocábulos simbólicos (mneumônicos). Neste tipo de 
linguagem, cada instrução do programa fonte corresponde a uma única 
instrução do programa objeto. 
 
 
 
 
 
 
A linguagem de baixo nível apresenta - alguns inconvenientes no momento da 
sua utilização, pois requer do usuário conhecimento sobre a arquitetura do 
microprocessador. 
 
 
Linguagem de alto nível 
 
Uma linguagem de programação passa a ser de alto nível à medida que esta 
se aproxima da linguagem corrente utilizada na comunicação entre pessoas. 
 
Apresenta uma estrutura rígida devido às regras utilizadas no momento da 
elaboração do programa. Uma única instrução em linguagem de alto nível 
(programa fonte), corresponderá a várias instruções em linguagem de máquina 
(programa objeto). 
 
Como vantagens, temos: 
 
* Não requer do usuário conhecimento sobre a arquitetura do microprocessador. 
* Reduz o tempo gasto na elaboração de programas. 
 
PROGRAMA 
FONTE 
(USUÁRIO) 
PROGRAMA 
MONTADOR 
(COMPILADOR) 
PROGRAMA 
OBJETO 
(LNG. MÁQUINA) 
MICRO- 
PROCESSADOR 
 
 
31
 
Como desvantagens, temos: 
 
* O número de instruções do programa objeto só será conhecido após a 
compilação do programafonte. 
 
Os controladores programáveis utilizam linguagens de alto nível para a sua 
programação. 
À seguir, temos alguns exemplos de utilização das linguagens de programação 
em função da aplicação. 
 
 
NOME DA 
LINGUAGEM 
 
 
USO 
FORTRAN 
 
Aplicações técnico-científicas 
COBOL 
 
Aplicações comerciais 
PASCAL 
 
Uso geral 
BASIC 
 
Uso geral 
STEP 5 
 
Programação de CLP SIEMENS/MAXITEC 
AL3800 
 
Programação de CLP ALTUS 
MASTER TOOL 
 
Programação de CLP ALTUS 
PGM 
 
Programação de CLP SISTEMA 
SPW 
 
Programação de CLP WEG 
IPDS 
 
Programação de CLP ALLEN-BRADLEY 
SUCOS 3 
 
Programação de CLP KCLOKNER 
 
 
9.2 Linguagens de programação de CLP’s 
 
Normalmente podemos programar um controlador programável através de um 
software que possibilita a sua apresentação ao usuário em três formas 
diferentes: 
 
• Diagrama de contatos; 
• Diagrama de blocos lógicos; 
• Lista de instruções 
 
Alguns CP’s, possibilitam a apresentação do programa do usuário em uma ou 
mais formas. 
 
 
32
 
9.2.1. Diagrama de Contatos 
 
Esta forma de programação, também é conhecida como: Diagrama de relés; 
diagrama escada ou diagrama “ladder”. 
 
Esta forma gráfica de apresentação está muito próxima a normalmente usada 
em diagrama elétricos. 
 
 
 
 
 
 
 
 
 
 
Fig.11 - Diagrama de Contatos 
 
 
9.2.2. Diagrama de Blocos Lógicos 
 
Mesma linguagem utilizada em lógica digital, onde sua representação gráfica é 
feita através das chamadas portas lógicas. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Fig.12 - Portas Lógicas 
 
E3 
( ) 
E2 E1 S1 
E4 
>=1 S1 
& 
E3 
E4 
& 
E1 
E2 
 
 
33
9.2.3. Lista de Instrução 
 
Linguagem semelhante à utilizada na elaboração de programas para 
computadores. 
 
: A E1 
: A E2 
: O 
: A E3 
: A E4 
: = S1 
 
 
Normalização 
 
Existe a tendência de utilização de um padrão de linguagem de programação 
onde será possível a intercambiabilidade de programas entre modelos de 
CLP’s e até de fabricantes diferentes, de acordo com a norma IEC 1131-3. Isto 
é possível, utilizando-se do conceito de linguagem de alto nível, onde através 
de um chamado compilador, pode-se adaptar um programa para a linguagem 
de máquina de qualquer tipo de microprocessador, isto é, um programa padrão, 
pode servir tanto para o CLP de um certo fabricante “A” como para um outro 
fabricante “B”. 
 
A norma IEC 1131-3, prevê três linguagens de programação e duas formas de 
representação. 
 
As linguagens são: 
 
�Ladder Diagram - programação como esquemas de relés. 
 
�Boolean Blocks - blocos lógicos representando portas “E” , “OU”, 
“NEGAÇÃO”, “OU EXCLUSIVO”, etc. 
 
�Structured Control Language (SCL) - linguagem que vem substituir todas as 
linguagens declarativas tais como linguagem de instruções, BASIC estruturado 
e outras. Esta linguagem é novidade no mercado internacional e é baseada no 
PASCAL. 
 
As formas de representação são: 
 
�Programação convencional; 
 
�Sequential Functional Chart (SFC) - evolução do graphcet francês. 
 
A grande vantagem de se ter o software normalizado é que em se conhecendo 
um conhece-se todos, economizando em treinamento e garantindo que, por 
mais que um fornecedor deixe o mercado, nunca se ficará sem condições de 
crescer ou repor equipamentos. 
 
 
 
34
9.3 Sistemas de programação 
 
A maioria dos sistemas de programação adotados atualmente, são baseados 
em microcomputador tipo PC, podendo ainda hoje ser utilizado alguns 
programadores dedicados (máquinas desenvolvidas exclusivamente para 
programação). 
 
Os sistemas baseados em microcomputador utilizam equipamentos 
convencionais, acrescidos de um software adequado desenvolvido pelo 
fabricante. Normalmente, estes softwares, permitem: o desenvolvimento de 
programas em uma ou mais linguagens de programação; comunicação do 
sistema programador com o CLP e documentação adequada do programa. 
 
Normalmente o usuário, poderá dispor dos seguintes modos de trabalho: 
 
Modo programação 
 
O modo programação permite que o usuário altere a memória do processador 
da seguinte forma: 
 
• acrescentando novos dados e/ou instruções; 
• alterando as informações já gravadas na memória; 
• apagando informações previamente gravadas. 
 
As operações executadas quando o sistema programador se encontra no modo 
programa, podem ocorrer de duas formas: 
 
Off-line 
 
Neste modo de programação, o CLP poderá estar ou não em operação, pois o 
programa que estiver sendo desenvolvido no sistema de programação não será 
transferido para o CLP durante o seu desenvolvimento. Portanto, alterações ou 
apagamentos de programa não provocarão alterações nos dispositivos de 
saída. 
 
Este modo de programação é o mais seguro, pois o programa só será 
transferido para o CLP quando o mesmo estiver parado. 
 
On-line 
 
O modo de programação on-line permite que se alterem dados e/ou instruções 
na memória do processador, com o CLP em operação. Portanto, qualquer 
alteração efetuada no programa será executada imediatamente pelo 
processador. 
 
Modo comunicação 
 
Este modo permite que o usuário monitore qualquer área de memória do 
processador, com o controlador programável em operação. Permite também que 
seja efetuado o procedimento de forçamento de algumas variáveis do controlador 
programável. 
 
 
35
 
10. MODELOS DE ARQUITETURA DE CLP’s 
 
 
A arquitetura de um CLP, está ligada a maneira como os módulos de I/O estão 
ligados a CPU. A arquitetura, também chamada de configuração, representa a 
disposição como estão conectados os diversos módulos de I/O, podendo ser 
classificado como: 
 
• Configuração remota 
• Configuração em rede 
• Configuração local 
 
Entende-se como configuração remota, aquela em que os módulos I/O, estão 
montados fora do rack da CPU em distâncias acima de 15 metros. Para tal 
finalidade são necessários módulos especiais para interligação de racks 
remotos. A distância máxima para este tipo de configuração gira em torno de 
200 a 3600 metros. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Fig.14 - configuração Remota 
 
 
CPU I/O LOCAL 
I/O 
REMOTO 
REDE REMOTA 
DE I/O 
 
 
36
Entende-se como configuração em rede, aquela em que diversas CPU’s os 
módulos I/O, estão montados fora do rack da CPU em distâncias acima de 15 
metros. Para tal finalidade são necessários módulos especiais para 
interligação de racks remotos. A distância máxima para este tipo de 
configuração gira em torno de 200 a 3600 metros. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Fig.15 - Configuração em Rede 
 
 
Entende-se como configuração local, aquela em que os módulos I/O, estão 
montados no mesmo rack da CPU ou a no máximo 15 metros de distância do 
mesmo. 
 
 
 
 
 
 
 
 
 
 
 
 
 
Fig.13- Configuração Local 
 
 
 
 
CPU I/O LOCAL 
 
 
37
PROGRAMAÇÃO DO CLP EM LADDER 
 
 
A partir de agora teremos informações gerais sobre as Instruções Básicas e 
explicações como elas funcionam. Cada uma dessas Instruções Básicas inclue 
informações como: 
 
• Simbologia 
• Como se usa a Instrução 
 
 
 
11. INSTRUÇÕES DE BIT 
 
 
As Instruções de Bit são as seguintes: 
 
• Examinar se Energizado 
• Examinar se Desenergizado 
• Energizar Saída 
• Energizar Saída com Retenção 
• Desenergizar Saída com retenção 
• Monoestável sensível a Borda de Subida 
 
 
11.1 - Instruções de “Examinar” 
 
São duasas Instruções de Examinar: 
 
• Examinar se Energizado 
• Examinar se Desenergizado 
 
11.1.1 - Examinar se Energizado 
 
Figura 8 
Formato da Instrução 
Quando um dispositivo de entrada fecha seu circuito, o terminal de entrada 
conectado ao mesmo indica um estado energizado, que é refletido no bit 
correspondente do arquivo de entrada. 
 
Quando o controlador localiza uma instrução com o mesmo endereço, ele 
determina que o dispositivo de entrada está energizado ( 1 ), ou fechado, e 
ajusta a lógica da instrução para verdadeira. Quando o dispositivo de entrada 
não mais fecha seu circuito, o controlador verifica que o bit está desenergizado 
( 0 ) e ajusta a lógica dessa instrução para falsa (tabela 1A). 
 
Tabela 1.A 
 
 
38
Lógica da Instrução 
 
Estado 
do Bit 
Instrução 
0 Falsa 
1 Verdadeira 
 
 
11.1.2 - Examinar se Desenergizado 
 
A figura 9 ilustra o formato da Instrução Examinar se Desenergizado 
 
Figura 9 
Formato da Instrução 
Quando um dispositivo de entrada não é acionado, o terminal de entrada 
conectado a ele indica um estado desenergizado, que é refletido no bit 
correspondente do arquivo de entrada. Ao localizar uma instrução com o 
mesmo endereço, o controlador determina que a entrada está desenergizada ( 
0 ) e ajusta a lógica da instrução para verdadeira. Quando o dispositivo é 
acionado, o controlador ajusta a lógica dessa instrução para falsa (tabela 1.B). 
 
Tabela 1.B 
Lógica da Instrução 
 
Estado 
do Bit 
Instrução 
0 Verdadeira 
1 Falsa 
 
 
11.2 - Instruções Energizar / Desenergizar Saída 
 
 
As instruções Energizar/desenergizar Saída são empregadas para energizar ou 
desenergizar um bit específico. 
 
Essas instruções são as seguintes: 
 
• ·Energizar Saída 
• ·Energizar Saída com Retenção 
• ·Desenergizar Saída com Retenção 
 
 
 
 
 
 
 
39
11.2.1. - Energizar Saída 
 
A figura 10 ilustra o formato da instrução Energizar Saída. 
 
Figura 8 
Formato da Instrução 
O estado de um terminal de saída é indicado através de um bit específico do 
arquivo de saída. Ao ser estabelecida uma lógica verdadeira na linha de 
programa que contém a instrução, o controlador energiza o respectivo bit ( 1 ), 
fazendo com que o terminal de saída seja energizado e o dispositivo de saída 
conectado a este terminal seja acionado. Caso essa lógica verdadeira não seja 
estabelecida, o controlador desenergiza o bit ( 0 ), a instrução é desabilitada e 
o dispositivo de saída associado é desenergizado. 
 
A instrução energizar saída é não-retentiva e a mesma é desabilitada quando: 
 
• o controlador for alterado para o modo Operação ou Teste, ou quando a 
alimentação é restaurada; 
• ocorrer um erro grave. 
 
Deve-se observar que uma instrução habilitada em uma área de subrotina 
permanecerá habilitada até que haja uma nova varredura na área de subrotina. 
 
 
11.2.2. - Energizar Saída com Retenção e 
Desenergizar saída com Retenção 
 
A figura 11 ilustra o formato das instruções Energizar Saída com Retenção e 
Desenergizar Saída com Retenção. 
 
Figura 11 
Formato das Instruções 
 
 
 
 O formato dessas instruções são para o CLP da Allen-
Bradley 
 
 
 
 
Essas instruções são instruções de saída retentiva e geralmente, são utilizadas 
aos pares para qualquer bit da tabela de dados controlado pelas mesmas. 
Também podem ser empregadas para inicializar valores de dados a nível de 
bit. 
 
 
 
40
Quando se determina um endereço para a instrução OTL que corresponde ao 
endereço de um terminal do módulo de saída, o dispositivo de saída conectado 
a este terminal será energizado assim que o bit na memória for energizado. O 
estado habilitado deste bit é determinado pela lógica da linha anterior às 
instruções OTL e OTU. 
 
Caso a lógica verdadeira seja estabelecida com instruções de entrada, a 
instrução OTL é habilitada. Se a mesma não for estabelecida e o bit 
correspondente na memória não tiver sido energizado previamente, a instrução 
OTL não será habilitada. Entretanto, se a lógica verdadeira for estabelecida 
previamente, o bit na memória será retido energizado e assim permanecerá, 
mesmo após as condições da linha terem se tornado falsas. 
 
Uma instrução OTU com o mesmo endereço da instrução OTL rearma 
(desabilita ou desenergiza) o bit na memória. Quando uma lógica verdadeira é 
estabelecida, a instrução OTU desenergiza seu bit correspondente na 
memória. 
 
O programa de aplicação pode examinar um bit controlado pelas instruções 
OTL e OTU sempre que necessário. 
 
No caso do CLP Siemens as instruções relativas ao OTL e OTU são, 
respectivamente, SET e RESET. 
 
11.3 - Monoestável Sensível a Borda de subida (OSR) 
 
A figura 12 ilustra o formato da instrução Monoestável Sensível à Borda de 
Subida (OSR). 
 
Figura 12 
Formato da instrução OSR 
Essa instrução torna a linha verdadeira durante uma varredura com uma 
transição de falsa para verdadeira da condição anterior à atual da linha. 
 
As aplicações para esta instrução incluem iniciar eventos acionados por um 
botão de comando, como por exemplo, “congelar” valores exibidos muito 
rapidamente (LED). 
 
A figura 13, a seguir, exibe a utilização da instrução OSR. 
 
Figura 13 
Exemplo 1 de Instrução OSR para controlador SLC-5/03 
 
 
 
41
Na figura 13 quando a instrução de entrada passa de falsa para verdadeira, a 
instrução OSR condiciona a linha de forma que a saída fique verdadeira 
durante uma varredura do programa. A saída passa a falsa e assim permanece 
durante várias varreduras até que a entrada realize uma nova transição de 
falsa para verdadeira. 
 
O Controlador Micrologix 1000 permite utilizar uma instrução OSR por saída 
em uma linha. 
 
Importante: Recomenda-se não utilizar um endereço de saída juntamente com 
a instrução OSR, devido a pequena duração do tempo de uma varredura. 
 
No caso do CLP da Siemens a instrução é -(P)-. 
 
11.3.1 Uso da Instrução OSR em Branch (Paralelo) 
 
No exemplo da Figura 15, a instrução OSR não poderá ser usada dentro de 
uma Branch Figura 15 
 
No exemplo da Figura 16, a linha é verdadeira, porque a instrução OSR esta 
fora do Branch. 
Figura 16 
 
 
 
42
11.4 INSTRUÇÕES DE TEMPORIZADOR 
 
11.4.1 ALLEN-BRADLEY 
 
 
11.4.1.1 Generalidades 
 
As instruções de temporizador são as seguintes: 
• Temporizador na Energização (TON) 
• Temporizador na Desenergização (TOF) 
• Temporizador Retentivo (RTO) 
 
Essas instruções encontram-se descritas nas seções a seguir. 
 
• Temporizador na Energização (TON): conta intervalos de base de tempo 
quando a instrução é verdadeira. A base de tempo é selecionada entre 
0,01s ou 1,0s para os Controladores SLC-5/03; 
• Temporizador na Desenergização (TOF): conta intervalos de base de 
tempo quando a instrução é falsa. A base de tempo é selecionada entre 
0,01s ou 1,0s para os Controladores SLC-5/03. 
• Temporizador Retentivo (RTO): este temporizador retém o seu valor 
acumulado quando a instrução se torna falsa. 
 
11.4.1.2 Descrição 
 
As instruções de Temporizador e Contador requerem três palavras do arquivo 
de dados. A palavra 0 é a palavra de controle que contém os bits de estado da 
instrução. A palavra 1 é o valor pré-selecionado. A palavra 2 corresponde ao 
valor acumulado. 
 
Figura 17 
ACC. Para os temporizadores, o valor acumulado é o número atual de 
intervalos temporizados que transcorreram; para contadores, é o número de 
transições de falso para verdadeiro que ocorreram. 
 
PRE. O valor pré-selecionado é o valor inserido para controlar a temporização 
ou contagem da instrução. 
 
 
 
43
Quando o valoracumulado for igual ou maior que o valor pré-selecionado, o bit 
de estado será energizado. Pode-se utilizar este bit para controlar um 
dispositivo de saída. 
 
Os valores pré-selecionado e acumulado para temporizadores variam de 0 a 
+32.767. 
 
Se o valor acumulado ou pré-selecionado do temporizador for um número 
negativo, ocorrerá um erro de run-time, causando falha no controlador. 
 
 
 
11.4.1.3 Temporizador na Energização - TON 
 
A figura a seguir ilustra o formato da instrução de temporizador na Energização 
(TON) 
 
Formato da Instrução TON 
 
A instrução de Temporizador na Energização (TON) inicia a contagem dos 
intervalos da base de tempo quando a condição da linha se torna verdadeira. À 
medida que a condição da linha permanece verdadeira, o temporizador 
incrementa seu valor acumulado (ACC) a cada varredura até atingir o valor pré-
selecionado (PRE). O valor acumulado é zerado quando a condição da linha 
for falsa independente do temporizador ter ou não completado a temporização. 
 
O bit de executado (DN) é energizado quando o valor acumulado é igual ao 
valor pré-selecionado e é desenergizado quando a condição da linha se torna 
falsa. 
 
O bit de temporizado (TT) do temporizador é energizado quando a condição da 
linha é verdadeira e o valor acumulado é menor que o valor pré-selecionado. 
Quando o bit de executado é energizado ou a condição da linha é falsa, esse 
bit é desenergizado. 
 
O bit de habilitação (EN) do temporizador é energizado quando a condição da 
linha é verdadeira. Caso contrário, esse bit é desenergizado. 
 
Se o controlador for passado do modo Operação ou Teste para Programação, 
ou então, se a alimentação for perdida enquanto uma instrução TON está 
contando o tempo sem ainda ter atingido o valor pré-selecionado, ocorre o 
seguinte: 
 
 
 
44
• os bits de habilitação e temporizado permanecem energizados. 
• o valor acumulado permanece o mesmo. 
 
Quando o controlador retorna ao modo Operação ou Teste. pode acontecer o 
seguinte: 
 
• se a linha for verdadeira, o valor acumulado é zerado e os bits de 
habilitação e temporizado permanecem energizados. 
• se a linha for falsa, o valor acumulado é zerado e os bits de controle são 
desenergizados. 
 
 
11.4.1.4 Temporizador na Desenergização - TOF 
 
A figura a seguir ilustra o formato da instrução de Temporizador na 
Desenergização (TOF) 
 
Formato da Instrução TOF 
 
A instrução de Temporizador na Desenergização (TOF) inicia a contagem dos 
intervalos da base de tempo quando a linha realiza uma transição de 
verdadeira para falsa. À medida que a condição da linha permanece falsa, o 
temporizador incrementa o seu valor acumulado (ACC) a cada varredura até 
atingir o valor pré-selecionado (PRE). O valor acumulado é zerado quando a 
condição da linha for verdadeira, independente do temporizador ter realizado a 
temporização. 
 
O bit de executado (DN) é desenergizado quando o valor acumulado é igual ao 
valor pré-selecionado e o mesmo é energizado quando a condição da linha se 
torna verdadeira. 
 
O bit de temporizado (TT) é energizado quando a condição da linha é falsa e o 
valor acumulado é inferior ao pré-selecionado. Esse bit é desenergizado 
quando a condição da linha for verdadeira ou quando o bit de executado for 
desenergizado. 
 
O bit de habilitação (EN) é energizado quando a condição da linha é 
verdadeira. Caso contrário, esse bit é desenergizado. 
 
 
 
 
45
11.4.1.5 Temporizador Retentivo - RTO 
 
A figura a seguir ilustra o formato da instrução RTO. 
 
Formato da Instrução RTO 
 
A instrução RTO inicia a contagem dos intervalos da base de tempo quando a 
condição da linha se torna verdadeira. À medida que a condição da linha 
permanece verdadeira o temporizador incrementa o seu valor acumulado 
(ACC) a cada varredura até atingir o valor pré-selecionado (PRE). O valor 
acumulado é retido quando: 
• a condição da linha se torna falsa 
• o controlador é alterado de Operação ou Teste para Programação 
• o controlador perde a alimentação (desde que seja mantida a bateria de 
back-up) 
• ocorre uma falha 
 
Quando o controlador retorna ao modo Operação ou Teste e/ou a condição da 
linha passa a verdadeira, a temporização continua a partir do valor acumulado 
retido. Ao reter o seu valor acumulado, o temporizador retentivo mede o 
período em que a condição da linha está verdadeira. Pode-se utilizar essa 
instrução para energizar ou desenergizar uma saída dependendo da lógica do 
programa. 
 
Os bits de estado da instrução RTO operam como descrito a seguir: 
 
• bit de executado (DN) é energizado quando o valor acumulado é igual ao 
valor pré-selecionado. No entanto, esse bit não é desenergizado quando a 
condição da linha se torna falsa, ele só é desenergizado quando a instrução 
RES é habilitada. 
 
• bit de temporizado (TT) da instrução de Temporizador Retentivo é 
energizado quando a condição da linha é verdadeira e o valor acumulado é 
menor que o valor pré-selecionado. Quando a condição da linha passa a 
falsa ou quando o bit de executado é energizado, o bit de temporizado é 
desenergizado. 
 
• bit de habilitação (EN) é energizado quando a condição da linha é 
verdadeira e é desenergizado quando a condição se torna falsa. 
 
O valor acumulado deve ser zerado pela instrução RES. Quando a instrução 
RES (reset), com o mesmo endereço da instrução RTO, for habilitada, o valor 
acumulado é zerado e os bits de controle são desenergizados. 
 
 
46
 
OBS: A instrução RES de contador/temporizador não deve ser empregada 
com a instrução TOF. 
 
 
11.4.2 INSTRUÇÕES DE TEMPORIZADOR 
(SIEMENS) 
 
11.4.2.1 Temporizador On-Delay Timer (S_ODT) 
Retardo na temporização 
 
 
Gráfico 
 
Quando S é habilitado, o temporizador começa a contagem, quando a 
contagem termina ele habilita a saída. 
Obs: Se S for habilitado e o temporizador não completar o ciclo de 
contagem a saída não será habilitada. 
 
 
 
 
 
 
 
 
 
 
 
 
 
47
 
11.4.2.2 Temporizador Off-Delay Timer (S_OFFDT) 
Retardo na desenergização 
 
Gráfico 
 
 
 Quando S é habilitado, imediatamente a saída vai para 1 e depois que S 
é desabilitado a contagem se inicia com a saída permanecendo em 1 até 
acabar a contagem. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
 
11.4.2.3 Retentive On-Delay (S_ODTS) 
Retardo na energização com retenção 
 
Gráfico 
 
 
Quando S é habilitado a contagem se inicia independente do tempo de 
duração de S, acionando a saída depois do ciclo de contagem. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
 
 
 
11.4.2.4 Pulse 
S_Pulse 
 
Gráfico 
 
Quando S é acionado o temporizador começa a contagem habilitando a 
saída e enquanto durar o acionamento de S a saída ficará em 1. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
 
11.4.2.5 Extended Pulse 
S_PEXT ( Pulso Extendido) 
 
Gráfico 
 
 
 
Quando S é habilitado inicia-se a contagem habilitando a saída 
permanecendo habilitada até acabar a contagem. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
51
 
 
11.5.1 INSTRUÇÕES DE CONTADOR CRESCENTE (CTU) E 
DECRESCENTE (CTD) ( Allen-Bradley) 
 
 
11.5.1.1 Generalidades 
 
As Instruções de Contador são as seguintes: 
 
• Contador Crescente (CTU) 
• Contador Decrescente (CTD) 
• Rearme (RES) 
 
Estas Instruções encontram-se descritas a seguir. 
 
 
Contador Crescente (CTU):A contagem é incrementada a cada transição de falso para verdadeiro. 
 
Formato da instrução CTU 
 
 
Contador Decrescente (CTD): 
 
A contagem é decrementada a cada transição de falso para verdadeiro. 
 
Formato da Instrução CTD 
 
 
As instruções de Contador Crescente (CTU) e Contador Decrescente (CTD) 
contam as transições de falsa para verdadeira, as quais podem ser causadas 
por eventos que ocorrem no programa, tais como peças que passam por um 
detetor. 
 
 
 
 
52
Rearme (RES) ( Allen-Bradley) 
 
Esta instrução zera o valor acumulado e os bits de estado de um Temporizador 
e Contador. Quando a Instrução RES é habilitada, é zerado o valor acumulado 
(ACC) no Temporizador na Energização (TON), no Temporizador na 
Desenergização (TOF), no Temporizador Retentivo (RTO), no Contador Crescente 
(CTU) e no Contador Decrescente (CTD) que tenham o mesmo endereço da 
instrução (RES). 
 
 
11.5.1.2 Descrição 
 
As Instruções de Contador requerem três palavras do arquivo de dados. A 
palava 0 é a palavra de controle e contém os bits de estado da Instrução. A palvra 1 
é o valor de preset. A palavra 2 é o valor do acumulador. 
 
A palavra de controle contém seis bits de estado como representado na figura a 
seguir: 
 
 
Os valores acumulado e pré-selecionado são armazenados como números 
inteiros (os valores negativos são armazenados na forma de complemento de 2). 
 
Quando as condições da linha para uma instrução CTU passam de falsa para 
verdadeira, o valor acumulado é incrementado de um, desde que haja uma 
varredura entre essas transições. Quando isto ocorre sucessivamente até que o 
valor acumulado se torne igual ao valor pré-selecionado, o bit de executado (DN) é 
energizado, permanecendo nesse estado se o valor acumulado exceder o valor pré-
selecionado. 
 
O bit 15 da palavra de controle da instrução de Contador é o bit de habilitação 
de Contador Crescente (CU). Esse bit é energizado quando a condição da linha é 
verdadeira e desenergizado quando a condição da linha se torna falsa ou uma 
instrução RES, com o mesmo endereço da CTU, é habilitada. 
 
A instrução CTU pode contar além de seu valor pré-selecionado. Quando a 
contagem ultrapassa o valor pré-selecionado e atinge (32.767 + 1), ocorre uma 
 
 
53
condição de overflow. Isso é indicado quando o bit 12, bit de overflow (OV), é 
energizado. 
 
Pode-se desenergizar o bit de overflow habilitando-se uma instrução RES com 
o mesmo endereço da instrução CTU. Também é possível desenergizá-lo, 
decrementando a contagem para um valor menor ou igual a 32.767 com uma 
instrução CTD. 
 
Quando o bit de overflow (OV) é energizado o valor acumulado atinge -32.768 
e continua a contagem crescente a partir daí. 
 
As instruções CTD também contam as transições da linha de falsa para 
verdadeira. O valor acumulado do contador é decrementado a cada transição de 
falsa pare verdadeira. Quando ocorre um número suficiente de contagens e o valor 
acumulado se torna menor que o valor pré-selecionado, o bit de executado (bit 13) 
do contador é desenergizado. 
 
O bit 14 da palavra de controle da instrução de Contador é o bit de habilitação 
de Contador Decrescente (CD). Esse bit é energizado quando a condição da linha é 
verdadeira e é desenergizado quando a condição da linha se torna falsa (contador 
decrescente desabilitado) ou a instrução apropriada de desenergização é habilitada. 
 
Quando a instrução CTD conta além do seu valor pré-selecionado e atinge (-
32.768 - 1), o bit de underflow (bit 11) é energizado. Pode-se desenergizar esse bit, 
habilitando-se a instrução RES apropriada. Pode-se também desenergizá-lo. 
incrementando a contagem para um valor maior ou igual a -32.768 com uma 
instrução CTU com o mesmo endereço da instrução CTD. 
 
Quando o bit de underflow (UN) é energizado, o valor acumulado atinge 
+32.767 e continua a contagem decrescente a partir daí. 
 
As instruções CTU e CTD são retentivas. O valor acumulado (ACC) é retido 
depois que a instrução CTU ou CTD passa a falsa e quando a alimentação do 
controlador é removida e, a seguir, restaurada. 
 
Os estados energizado ou desenergizado dos bits de executado, overflow e 
underflow também são retentivos. Esses bits de controle e o valor acumulado são 
zerados quando a instrução RES é habilitada. 
 
Cada contagem é retida quando as condições da linha se tomam falsas e, 
assim permanece até que uma instrução RES, com o mesmo endereço da instrução 
de contador, seja habilitada. 
 
Cada instrução de contador possui um valor pré-selecionado e acumulado, e 
uma palavra de controle associada. 
 
 
 
54
11.5.1.3 Como o Contador trabalha 
 
A figura 21, demonstra como o controlador trabalha. 
 
O valor da contagem deve estar entre, (-32768 a 32767). Se o valor do 
Contador vai acima de 32 767 ou abaixo de –32 768 o status do Contador acusará 
overflow (OV) ou underflow (UN) e o bit é setado. 
 
O Contador pode ser resetado a zero usando a Instrução (RES) . 
 
 
 
Figura 21 
 
 
 
 
55
 
 
11.5.2 INSTRUÇÕES DE CONTADOR ( SIEMENS ) 
 
11.5.2.1 Contador Crescente S_CU 
 
Com um “flanco de impulso” positivo na entrada S, o contador é setado com o 
valor da entrada PV. Iniciando com 0 ou PV, o contador conta crescentemente a 
cada vez que existe um flanco de impulso positivo na entrada CU. A saída Q é 
sempre 1, enquanto o valor de CV não for igual a 0. se houver um flanco de impulso 
positivo na entrada R o contador é resetado, isto é, o contador é setado com o valor 
0. 
 
Exemplo de um contador S_CU 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
56
 
 
11.5.2.1 Contador decrescente S_CD 
 
 Com um “flanco de impulso” positivo na entrada S, o contador é setado com o 
valor da entrada SC. Iniciando com 0 ou SC, o contador conta decrescentemente a 
cada vez que existir um flanco de impulso positivo na entrada CD. A saída Q é 
sempre 1, enquanto o valor CV não for igual a 0. Se houver um flanco de impulso 
positivo na entrada R o contador é resetado, isto é, o contador é setado com o valor 
0. 
 
Exemplo de contador S_CD 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
57
 
 
11.5.2.4 Up / Down Counter S_CUD 
 
Combinação de contadores crescente e decrescente 
 
 
Exemplo de contador S_CUD 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
 
11.6.1 INSTRUÇÕES DE COMPARAÇÃO( ALLEN-BRADLEY) 
 
 
As instruções de Comparação são usadas para testar pares de valores de 
forma a condicionar a continuidade lógica de uma linha. 
 
As instruções de entrada que permitem comparar valores de dados são as 
seguintes: 
 
• Igual a (EQU) 
• Diferente (NEQ) 
• Menor que (LES) 
• Menor ou igual a (LEQ) 
• Maior que (GRT) 
• Maior ou igual a (GEQ) 
• Testar Limite (LIM) 
 
 
11.6.1.1 Igual a (EQU) 
 
Testa se dois valores são iguais. Se a source A e source B são iguais, a lógica 
da linha é verdadeira. 
 
Source A deve ser um endereço. Source B pode ser uma constante do 
programa ou um endereço. 
 
A figura a seguir apresenta o formato da instrução 
 
 
 
 
 
 
 
 
 
11.6.1.2 Diferente (NEQ) 
 
Testa se o primeiro valor não é igual ao segundo. Se source A e Source B são 
diferentes, a lógica da linha é verdadeira. 
 
Source A deve ser um endereço. Source B pode ser uma constante do 
programa ou um endereço. 
 
EQUAL 
SOURCE A 
 
SOURCE B 
 
EQU 
 
 
59
A figura 23 apresenta o formato da instrução NEQ11.6.1.3 Menor que (LES) 
 
Testa se o primeiro valoe é menor que o segundo. Se a source A é menor que 
o valor da source B a lógica da linha é verdadeira. 
 
Source A deve ser um endereço. Source B pode ser uma constante do programa 
ou um endereço. 
 
A figura 24 apresenta o formato da instrução 
 
 
 
 
 
 
 
 
 
 
11.6.1.4 Menor ou igual a (LEQ) 
 
Testa se o primeiro valor é menor ou igual ao segundo. Se o valor da source A 
é menor ou igual source B, a lógica da linha é verdadeira. 
 
Source A deve ser um endereço. Source B pode ser uma constante do 
programa ou um endereço. 
 
A figura 25 apresenta o formato da instrução 
 
 
 
 
 
 
 
 
NOT EQUAL 
SOURCE A 
 
SOURCE B 
 
NEQ 
LESS THAN 
SOURCE A 
 
SOURCE B 
 
LES 
LESS THAN OR 
EQUAL 
SOURCE A 
 
SOURCE B 
 
LEQ 
 
 
60
11.6.1.5 Maior que (GRT) 
 
Testa se o primeiro valor é maior que o segundo. Se o valor da source A é 
maior que o valor da source B, a lógica da linha é verdadeira. 
 
Source A deve ser um endereço. Source B pode ser uma constante do 
programa ou um endereço. 
 
A figura 26 apresenta o formato da instrução 
 
 
 
 
 
 
 
 
 
11.6.1.6 Maior ou igual a (GEQ) 
 
Testa se o primeiro valor é maior ou igual ao segundo. Se o valor da source A é 
maior ou igual ao valor da source B, a lógica da linha é verdadeira. 
 
Source A deve ser um endereço. Source B pode ser uma constante do programa 
ou um endereço. 
 
A figura 27 apresenta o formato da instrução 
 
 
 
 
 
 
 
 
As opções de comparação do CLP da Siemens são iguais. 
 
 
 
 
 
 
 
 
 
 
 
 
 
GREATER THAN 
SOURCE A 
 
SOURCE B 
 
GRT 
GREATER THAN 
OR EQUAL 
SOURCE A 
 
SOURCE B 
 
GEQ 
 
 
61
11.6.2 INSTRUÇÕES DE COMPARAÇÃO (Siemens) 
 
 11.6.2.1 Igual a 
 
 
 
A instrução de comparação “igual a” habilita a saída se IN1 for igual a IN2 
 
 
11.6.2.2 Não igual a 
 
 
 
A instrução de comparação “não igual a” habilita a saída se IN1 for diferente de IN2 
 
11.6.2.3 Menor que 
 
 
 
A instrução “menor que” habilita a saída se IN1 < IN2 
 
11.6.2.4 Menor ou igual a 
 
 
A instrução “menor ou igual a” habilita a saída se IN1 � IN2 
 
11.6.2.5 Maior que 
 
 
A instrução “maior que” habilita a saída IN1 > IN2 
 
 
 
 
 
62
11.6.2.6 Maior ou igual a 
 
 
A instrução “maior ou igual a” habilita a saída IN1 � IN2 
 
 
 
 
63
11.7.1 INSTRUÇÕES MATEMÁTICAS ( ALLEN-BRADLEY ) 
 
 
As Instruções Matemáticas consideram um par de valores e realizam a 
operação desejada. O resultado é colocado em uma localização separada. 
 
As Instruções Matemáticas (instruções de saída) são as seguintes: 
 
• Adição (ADD) 
• Subtração (SUB) 
• Multiplicação (MUL) 
• Divisão (DIV) 
• Zeramento (CLR) 
• Raiz Quadrada (SQR) 
• Mover (MOV) 
 
Parâmetros das Instruções 
 
Source - Endereço(s) do(s) valor(es) em que a operação matemática será 
executada; pode ser endereço(s) de palavra ou constante(s) de programa. 
Se a instrução tiver dois operandos source, não é possível introduzir 
constantes de programa nos dois operandos. 
 
Dest - Endereço destino referente ao resultado da operação. 
 
 
 
11.7.1.1 Adição (ADD) 
 
 
Adiciona o valor Source A ao valor Source B e armazena o resultado no 
destino Dest. 
 
A figura a seguir apresenta o formato da instrução 
 
 
 
 
 
 
 
 
ADD 
SOURCE A 
 
SOURCE B 
DEST 
 
ADD 
 
 
64
11.7.1.2 Subtração (SUB) 
 
 
Subtrai o valor Source B do valor Source A e armazena o resultado no destino 
Dest. 
 
A figura a seguir apresenta o formato da instrução 
 
 
 
 
 
 
 
 
 
11.7.1.3 Multiplicação (MUL) 
 
 
Multiplica o valor Source A pelo valor Source B e armazena o resultado no 
destino Dest. 
 
A figura a seguir apresenta o formato da instrução 
 
 
 
 
 
 
 
 
 
 
11.7.1.4 Divisão (DIV) 
 
 
Divide o valor Source A pelo valor Source B e armazena o resultado no 
destino Dest e no registro matemático. 
 
A figura a seguir apresenta o formato da instrução 
 
 
 
 
 
 
 
 
SUBTRACT 
SOURCE A 
 
SOURCE B 
DEST 
SUB 
MULTIPLY 
SOURCE A 
 
SOURCE B 
DEST 
MUL 
DIVIDE 
SOURCE A 
 
SOURCE B 
DEST 
DIV 
 
 
65
O quociente não arredondado é colocado na palavra mais significativa e o resto 
é colocado na palavra menos significativa. 
 
EXEMPLO: 
 
 
 
 
 
 
 
 
 
 
 
 
11.7.1.5 Zeramento (CLR) 
 
 
Zera todos os bits de uma palavra (Dest) 
 
A figura a seguir apresenta o formato da instrução 
 
 
 
 
 
 
 
 
 
11.7.1.6 Raiz Quadrada (SQR) 
 
 
Calcula a raiz quadrada do valor Source e coloca o inteiro resultante no destino 
Dest. 
 
A figura a seguir apresenta o formato da instrução 
 
 
 
 
 
 
 
 
 
 
CLEAR 
 
DEST 
CLR 
SQUARE ROOT 
 
SOURCE 
 
DEST 
 
SQR 
DIVIDE 
SOURCE A N7:0 
 11 
SOURCE B N7:1 
 2 
DEST N7:2 
 6 
DIV 
O resto de 11/2 é 0,5, o quociente arredondado 6 
é armazenado no destino. 
O quociente não arredondado 5 é armazenado em 
S:14 e o resto 1 é armazenado em S:13. 
 
 
66
11.7.1.7 Mover (MOV) 
 
Exemplo: 
 
 
 
 
 
 
 
 
Descrição 
 
MOV move uma cópia da origem para o destino, a cada varredura. O valor original 
permanece intacto e inalterado em seu local de origem. 
 
Origem - Esse é o endereço dos dados que você deseja mover. A origem pode ser 
uma constante. 
 
Destino - Esse é o endereço que identifica para onde os dados serão movidos. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Mover 
 
 Origem 200 
 
 Destino N7:10 
 
MOV 
 
 
67
11.7.2 INSTRUÇÕES MATEMÁTICAS ( SIEMENS ) 
 
EN = Habilita entrada. A instrução será executada se e somente se o RLO é 
verdadeiro (RLO=1). 
 
ENO = Habilita saída. A saída Enable output tem o mesmo estado de sinal que EN 
(EM=ENO), a menos que tenha havido um erro durante a conversão. Por exemplo, a 
instrução DIV_I fornece ENO=0 quando se faz um divisão por zero. 
 
IN1 = Entrada 1 1. valor aritmético da instrução 
 
IN2 = Entrada 2 2. valor aritmético da instrução 
 
0 = Saída Resultado da operação aritmética 
 
11.7.2.1 Adição 
 
ADD_I Soma inteiros 
 
 
ADD_DI Soma inteiros duplos 
 
 
 
ADD_R Soam números reais 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
68
11.7.2.2 Subtração 
 
SUB_I Subtrai inteiros 
 
 
 
SUB_DI Subtrai inteiros duplos 
 
 
 
SUB_R Subtrai números reais 
 
 
 
 
11.7.2.3 Multiplicação 
 
MUL_I Multiplica Inteiros 
 
 
 
MUL_DI Multiplica inteiros duplos 
 
 
 
MUL_R Multiplica números reais 
 
 
 
 
 
69
11.7.2.4 Divisão 
 
DIV_I Divide inteiros 
 
 
 
DIV_DI Divide inteiros duplos 
 
 
 
DIV_R Divide números reais 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
70PARTE PRÁTICA 
 
 
71
O PROGRAMA APS 
 
 
O programa APS possui quatro telas básicas: 
 
• Tela Principal 
• Tela de Diretório de Programas / Subrotinas 
• Tela do Diagrama Ladder 
• Tela de Dados 
 
Na parte mais baixa das telas há uma série de botões azuis que são ativados pelas 
teclas de função F1 a F10 (Geralmente as telas não usam todos os dez botões 
possíveis). Cada botão tem uma função, que pode ser: 
 
� Executar uma operação 
� Mudar de tela 
� Mudar as funções dos botões (sem mudar de tela) 
 
 
 
1. TELA PRINCIPAL 
 
 
A tela principal é aquela que aparece ao iniciar o programa. 
 
 
 
+------------ SLC-500 ADVANCED PROGRAMMING SOFTWARE ---- RELEASE 6.04 ------+ 
¦ ¦ 
¦ Rockwell Software Incorporated, Copyright 1989-1995 ¦ 
¦ ¦ 
¦ 9323 - PA2E ¦ 
¦ ¦ 
¦ All Rights Reserved ¦ 
¦ ¦ 
¦ ¦ 
¦ This software is licensed to: Cetind ¦ 
¦ Senai ¦ 
¦ 1500009911 ¦ 
¦ ¦ 
¦----------------------------------------------------------------------------¦ 
¦ Mon Nov 24, 1997 Current Offline File: PETRO11 3:00:45 pm ¦ 
¦----------------------------------------------------------------------------¦ 
¦ TERM Address:N/A Current Device:Full-Duplex (Micro) PROC Address:N/A ¦ 
+----------------------------------------------------------------------------+ 
 
Press a function key 
 
ONLINE ONLINE OFFLINE OFFLINE SYSTEM FILE PRINT SYSTEM EXIT 
 CONFIG PRG/DOC CONFIG CONFIGR OPTIONS REPORTS UTILS SYSTEM 
 F1 F2 F3 F4 F6 F7 F8 F9 F10 
 
 
72
 
2. TELA DE DIRETÓRIO DE PROGRAMAS / SUBROTINAS 
 
 
Para alcançar esta tela a partir da tela principal, digita-se F1 ONLINE 
(estabelecendo a comunicação entre computador e clp) ou F3 OFFLINE PRG/DOC 
(sem comunicação entre computador e clp). 
 
Esta tela mostra a lista de programas do clp. Os três são fixos, sendo o número 2 o 
programa principal (MAIN_PROG). A partir do número 3, podem ser criadas 
subrotinas auxiliares do programa principal. 
 
Com as setas verticais seleciona-se o programa desejado. Neste curso 
trabalharemos sempre com o programa principal. 
 
Nesta tela algumas botões executarão operações diferentes dependendo se há 
comunicação (online) ou não (offline) entre clp e computador. No canto superior 
direito da tela aparece a indicação se está ONLINE ou OFFLINE. 
 
 
 
 
 
 
+------------------ SLC-500 ADVANCED PROGRAMMING SOFTWARE -------[ OFFLINE ]-+ 
¦+- PROGRAM DIRECTORY FOR PROCESSOR: TESTE1 --------------------------------+ 
¦¦ FILE PROTECTED NAME TYPE SIZE (words) ¦ 
¦¦ 0 system * ¦ 
¦¦ 1 reserved * ¦ 
¦¦ 2 Yes MAIN_PROG ladder * ¦ 
¦¦ 3 Yes USER_FAULT ladder * ¦ 
¦¦ 4 Yes HSC ladder * ¦ 
¦¦ 5 Yes STI ladder * ¦ 
¦¦ 6 Yes ladder * ¦ 
¦¦ 7 Yes ladder * ¦ 
¦¦ 8 Yes ladder * ¦ 
¦¦ 9 Yes ladder * ¦ 
¦¦ 10 Yes ladder * ¦ 
¦¦ 11 Yes ladder * ¦ 
¦¦ 12 Yes ladder * ¦ 
¦¦ 13 Yes ladder * ¦ 
++----------------------------------------------------------------------------+ 
 
Press a key, enter file number or file name 
 
offline 1761-Micro File TESTE1 
PROCSSR SAVE RETURN CHANGE CREATE FILE MONITOR DATA MEMORY 
FUNCTNS TO MENU FILE REPORTS OPTIONS FILE MONITOR MAP 
 F1 F2 F3 F4 F6 F7 F8 F9 F10 
 
 
 
73
 
3. TELA DO DIAGRAMA LADDER 
 
 
Para alcançar esta tela a partir da tela anterior, digita-se F8 MONITOR FILE. Esta 
tela exibe o diagrama ladder, que representa a lógica programada no clp. 
 
O diagrama ladder pode ser rolado para cima ou para baixo através das setas 
verticais. Quando o clp está online, as instruções que estiverem verdadeiras 
aparecerão destacadas na cor verde. 
 
 
 
 
 
 
 
¦ ¦ 
+------------------------------------¦END¦------------------------------------¦ 
¦ ¦ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Press a function key 
(file 2, rung 0) 
offline no forces File TESTE1 
 CONFIG EXIT MULTI DOCUMNT SEARCH GENERAL DATA FORCE EDIT 
 DISPLAY POINT UTILITY MONITOR 
 F2 F3 F4 F5 F6 F7 F8 F9 F10 
 
 
 
74
 
4. TELA DE DADOS 
 
 
Esta tela pode ser chamada a partir da tela do Diagrama Ladder, digitando-se F8 
DATA MONITOR, ou a partir da tela de Diretório de Programas / Subrotinas, 
digitando-se F9 DATA MONITOR. Esta tela exibe os dados armazenados na 
memória RAM do clp. 
 
Ao entrar nesta tela o programa solicita a letra que identifica o tipo de dado. Os tipos 
de dados existentes podem ser vistos na opção F10 MEMORY MAP na tela de 
Diretório de Programas / Subrotinas. No exemplo de tela abaixo, foi selecionado o 
tipo de dados S(Status- Condições) 
 
Os botões desta tela variam de função com o tipo de dado: 
 
 
 
 
 
 
ARITHMETIC FLAGS S:0 Z:0 V:0 C:0 
 
PROCESSOR STATUS 00000000 00000000 SUSPEND CODE 0 
PROCESSOR STATUS 00000000 00100001 
PROCESSOR STATUS 00000000 00000010 WATCHDOG [x10 ms]: 10 
 LAST SCAN [x10 ms]: 0 
MINOR FAULT 00000000 00000000 MAXIMUM SCAN [x10 ms]: 0 
FAULT CODE 0000 FREE RUNNING CLOCK 00000000 00000000 
FAULT DESCRIPTION: 
 
MATH REGISTER 0000 0000 SELECTABLE TIMED INTERRUPT 
 SETPOINT [x10 ms]: 0 
INDEX REGISTER VALUE 0 ENABLED: 1 
 EXECUTING: 0 
PROCESSOR BAUD RATE 9600 PENDING: 0 
 
 
 
 
Press a function key 
S:0/0 = 
offline no forces formatted decimal addrFile TESTE1 
 PAGE PAGE SPECIFY NEXT PREV CLR MIN CLR MAJ 
 UP DOWN ADDRESS FILE FILE FAULT FAULT 
 F1 F2 F5 F7 F8 F9 F10 
 
 
 
 
75
PROGRAMANDO O CLP 
 
 
Siga as instruções passo-a-passo: 
 
 
CRIANDO UM ARQUIVO DE PROGRAMA (PROCESSOR FILE) 
 
Um arquivo de programa é sempre criado offline (sem conexão com o CLP). Ao criar 
um arquivo de programa, as seguintes tarefas serão realizadas: 
 
• Escolher um nome para o arquivo e configurar o controlador (CLP). 
• Digitar um programa ladder 
• Adicionar comentários às linhas do programa 
• Salvar o arquivo de programa no disco 
 
 
Escolher um nome para o arquivo (file) e configurar o controlador 
(CLP). 
 
1. Acesse a janela de criação de Processor File 
 
Digite F4 OFFLINE CONFIG , e depois F6 CREATE FILE 
 
A tela aparecera como mostrado a seguir 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2. Digite o nome TESTE1 seguido da tecla [ENTER]. O nome TESTE1 aparecerá na 
janela CREATE PROCESSOR FILE. 
 
+------------ SLC-500 ADVANCED PROGRAMMING SOFTWARE ---- RELEASE 6.04 -------+ 
¦ ¦ 
¦ +- PROCESSOR -- INPUTS ----- OUTPUTS ---------+ + 
¦ ¦ Bul. 1761 MicroLogix 1000 ¦ ¦ 
¦ ¦ 1747-L511 5/01 CPU - 1K USER MEMORY ¦ ¦ 
¦ ¦ 1747-L514 5/01 CPU - 4K USER MEMORY ¦ ¦ 
¦ ¦ 1747-L524 5/02 CPU - 4K USER MEMORY ¦ ¦ 
¦ ¦ 1747-L532 5/03 CPU -12K USER MEMORY ¦ ¦ 
¦ ¦ 1747-L541 5/04 CPU -12K USER MEMORY ¦ ¦ 
¦ +---------------------------------------------+ ¦ 
¦ ¦ 
¦ +- CREATE PROCESSOR FILE --------------------------------------+ ¦ 
¦ ¦ ¦ ¦ 
¦ ¦ Name: ¦ ¦ 
¦ ¦ F2 Processor: Bul. 1761 MicroLogix 1000 ¦ ¦ 
¦ ¦ ¦ ¦ 
¦ ¦ ¦ ¦ 
+-+- ESC exits/Alt-U aborts changes -----------------------------+ ----------+ 
 
Press a Function Key or Enter File Name 
 
 SELECT CONFIGR ADJUST SAVE & 
 PROC I/O FILTERS EXIT 
 F2 F5 F6 F8 
 
 
 
76
 
Escolha do processador (processor): O MicroLogix 1000 é o primeiro da lista de 
processadores e já vem selecionado (default), portanto não é necessário mudar a 
seleção. Como o MicroLogix tem arquitetura fixa, ele não precisa ser configurado. 
 
4. Digite F8 SAVE & EXIT e o arquivo TESTE1 será salvo no HD (disco rígido). 
 
 
Digitar um programa ladder 
 
A linha a seguir consiste de uma instrução de entrada XIC e uma instrução de saída 
OTE. Para testar o funcionamento dela será necessário colocar uma chave na 
entrada 0 e observar o led da saída 0. 
 
 
 
 
 
 
 
 
 
 
Esta linha pode ser inserida executando-se os passos a seguir: 
 
Pass
os 
Descrição Digitar 
1 Acesse o Program Directory (Tela de 
Diretório de Programas / Subrotinas) 
de TESTE1 
F1 OFFLINE PRG/DOC 
2 Escolha a Tela do Diagrama Ladder F8 MONITOR FILE 
3 Entra no modo de edição F10 EDIT 
4 Inserir uma rung (linha). F4 INSERT RUNG 
5 Inserir instrução de entrada XIC, 
com o 
F4 INSERT INSTR 
 endereço I:0/0 F1 BIT 
 F1 XIC -][- 
 I:0/0 [enter] [esc] 
6 Inserir instrução de saída OTE, com 
o 
F4 INSERT INSTR 
 endereço O:0/0 F1 BIT 
 F3 OTE -( )- 
 O:0/0 [enter] [esc] 
7 Aceite a linha F10 ACCEPT RUNG 
 [ESC] 
 
 
 
 
 O:0 
 ( ) 
0 
I:0 
0 
 
 
77
 
Adicionar comentários às linhas do programa 
 
 
Passo
s 
Descrição Digitar 
1 Adicione o comentário de linha F5 DOCUMNT 
 F1 RUNG COMMENT 
 
Chave de entrada aciona led de 
saída 
2 Aceite e salve o comentário F8 ACCEPT/EXIT 
 F10 SAVE DOCUMNT 
 [ESC] 
 
 
O programa ladder com o comentário aparecerá como a seguir: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Salvar o Programa Ladder no disco 
 
 
Passo
s 
Descrição Digitar 
1 Retorne à Tela de Diretório de 
Programas / Subrotinas 
F3 EXIT 
2 Salve o arquivo para o disco rígido F2 SAVE 
 F8 YES 
3 Retorne à Tela Principal do APS F3 RETURN TO MENU 
 
 
 
Chave de entrada aciona led de saida 
¦ I:0 O:0 ¦ 
+--] [-------------------------------------------------------------------( )--¦ 
¦ 0 0 ¦ 
¦ ¦ 
+------------------------------------¦END+------------------------------------¦ 
¦ ¦ 
 
 
 
 
 
 
Press a function key 
(file 2, rung 0) 
offline no forces File TESTE1 
 CONFIG EXIT MULTI DOCUMNT SEARCH GENERAL DATA FORCE EDIT 
 DISPLAY POINT UTILITY MONITOR 
 F2 F3 F4 F5 F6 F7 F8 F9 F10 
 
 
 
78
 
Operando o CLP e Edição Rápida 
 
Neste Tópico vamos realizar as seguintes tarefas: 
 
• Fazer download (carga) do programa TESTE1 
• Monitorar o programa ladder no modo RUN 
• Testar o programa 
• Editar o programa usando Edição Rápida 
• Testar o programa editado 
 
 
 
Fazendo download (carga) do programa TESTE1 
 
 
Devemos iniciar a partir da tela inicial de menu do APS 
 
 
Entrar Online e fazer a carga do programa TESTE1 
 
1. Acesse a janela Restore File (restaura arquivo) 
 
Digite F1 ONLINE . 
 
OBS: Se aparecer a mensagem MESSAGE TIMEOUTS - LOSS OF 
COMMUNICATIONS, um ou mais parâmetros de configuração está 
incorreto ou há problemas na conexão entre CLP e o computador. 
 
Quando a comunicação entre CLP e computador estiver normal, a Tela de Diretório 
de Programas / Subrotinas irá aparecer. 
 
Como há um programa carregado no CLP e não é igual ao digitado, aparecerá a 
mensagem: NO MATCHING DISK FILE FOUND – READING THE PROCESSOR 
PROGRAM (Não foi encontrado arquivo correspondente no CLP – lendo o programa 
do CLP). O programa que estiver no CLP será carregado na memória RAM do 
computador. 
 
Para transferir o programa que acabamos de digitar do computador para o CLP, 
execute os seguintes passos: 
 
1. Digite F2 SAVE RESTORE , depois digite F4 RESTORE PROGRAM . 
 
2. Ao aparecer a lista dos arquivos, selecione desta lista o arquivo TESTE1, 
depois digite F1 BEGIN RESTORE, depois F8 YES , depois [ESC] 
 
 
 
79
 
Testando o programa 
 
Para testar o programa ladder TESTE1 , vamos monitorá-lo e mudar o modo do 
processador para RUN (rodando). Então vamos ativar a entrada I/0 e observar o 
efeito na saída O/0 
 
1. Monitorar o programa TESTE1 e entrar no modo RUN. 
 
Digite F8 MONITOR FILE . O programa ladder aparecerá. Digite F1 CHANGE 
MODE, depois F3 RUN MODE,depois F8 YES . Note que a linha acima dos 
botões agora indica REM RUN (verde) em vez de program. 
 
2. Teste o Programa. 
 
Para testar o programa, acione a chave ligada na entrada I/0. O led da saída O/0 
deve acender. A tela mostra as instruções XIC e OTE em verde para indicar que 
estão verdadeiras (ativadas). Depois desligue a chave na entrada I/0. O led da saída 
O/0 deve apagar. Na tela, as duas instruções voltam a cor branca. 
 
 
EDITANDO O PROGRAMA COM A EDIÇÃO RÁPIDA. 
 
A edição rápida do programa APS permite que mudar rapidamente de 
monitoramento online para edição offline, depois, de volta, para monitoramento 
online. Para demostrar, vamos adicionar uma instrução de entrada na linha, e 
veremos que a saída só será acionada se as duas entradas estiverem acionadas. 
 
Vamos inserir uma instrução XIC em serie com (à direita) a instrução XIC já 
existente. Ele terá endereço I:0/1, correspondente a entrada I/1. 
 
Passos Descrição Digitar 
1 Mudar para offline e editar o arquivo F10 EDIT 
 gravado no disco rígido F3 DISK PROGRAM 
2 Selecione Modify Rung (modificar linha) F5 MODIFY RUNG 
3 Posicione o cursos na instrução XIC existente use as setas 
4 Insira a instrução XIC com endereço F3 APPEND INSTR 
 I:0/1 F1 BIT 
 F1 XIC -] [- 
 I:0/1 
 [ENTER] 
 [ESC] 
5 Aceite a linha F10 ACCEPT RUNG 
6 Gravar no disco rígido a edição e F1 SAVE/GO ONLINE 
 comunicar com o clp (online) F8 YES 
 F8 YES 
 F8 YES 
7 Teste o programa 
 
 
 
80
 
TELAS DO APS 
 
 
A seguir temos as funções dos botões das telas que serão utilizadas nas práticas 
com o CLP Micrologix 1000. A última coluna (ref.) indica o número da tela chamada 
pelo botão. 
 
1. TELA PRINCIPAL 
 
 botão função ref. 
F1 ONLINE programação com o clp conectado (online) 2.1 
F2 ONLINE CONFIG configuração da comunicação entre clp e 
computador 
2.2 
F3 OFFLINE PRG/DOC programação com o clp desconectado (offline) 2.1 
F4 OFFLINE CONFIG configuração do arquivo do clp 2.4 
F6 SYSTEM CONFIGR configuração do programa aps 2.5 
F7 FILE OPTIONS operações com arquivos 2.6 
F8 PRINT REPORTS impressão de relatórios 2.7 
F9 SYSTEMS UTILS utilitários do programa 2.8 
F10 EXIT SYSTEM saída do programa aps 
 
 
2. TELAS SELECIONADAS A PARTIR DA TELA INICIAL 
 
2.1. TELA F1 ONLINE e TELA F3 OFFLINE PRG/DOC 
 
 botão função ref. 
F1 PROCSSR FUNCTNS funções do processador 4.1 
F2 SAVE RESTORE 
(online) 
 
 SAVE (offline) Grava o arquivo no HD 
F3 RETURN TO MENU volta a tela anterior 
F4 CHANGE LNK ADR 
(online) 
 
 CHANGE FILE (offline) configuração do arquivo do clp 2.4 
F6 CREATE REPORTS Impressão de relatórios 
F7 FILE OPTIONS operações com arquivos 
F8 MONITOR FILE Vai para a Tela do Diagrama Ladder 4.5 
F9 DATA MONITOR Vai para a Tela de Dados 4.6 
F10 MEMORY MAP mostra o mapa da memória de dados 
 
 
 
81
2.2. TELA F2 ONLINE CONFIG 
 
 botão função ref. 
F2 DRIVER CONFIG vai para a tela de configuração do 
driver 
3.1 
F9 SAVE TO FILE grava mudanças para arquivo 
 
2.4. TELA F4 OFFLINE CONFIG 
 
 botão função ref. 
F1 OFFLINE PRG/DOC programação com o clp 
desconectado 
2.3 
F6 CREATE FILE cria novos arquivos de trabalho 8.1 
F7 DEFINE DIR seleciona diretórios de trabalho 
F9 SAVE TO FILE grava no HD o novo arquivo 
 
2.5. TELA F6 SYSTEM CONFIGR 
 
 botão função 
F1 EDITOR HILIGHT 
F3 COLOR SELECT seleciona monitor colorido ou monocromático 
F4 ADDRESS configura endereçamento de arquivos 
F5 PRINTER CONFIG configura impressora 
F6 SYSTEM STARTUP seleciona a tela inicial do programa 
F7 DEFINE DIR seleciona diretórios de trabalho 
F8 M0/M1 MONITOR 
F9 SAVE CONFIGR grava no HD a nova configuração 
 
2.6. TELA F7 FILE OPTIONS 
 
 botão função 
F1 IMAGE TO ARCH 
F2 ARCH TO IMAGE 
F3 RENAME renomeia arquivos 
F4 COPY copia arquivos 
F5 DELETE apaga arquivos 
F7 COPY TO DISK copia arquivos do HD para o disquete 
F8 COPY FR DISK copia arquivos do disquete para HD 
 
2.7. TELA F8 PRINT REPORTS 
 
 Não Utilizado 
 
2.8. TELA F9 SYSTEM UTILS 
 
 Não Utilizado 
 
 
 
82
3. Telas selecionadas a partir da tela ONLINE CONFIG 
 
3.1. Tela F2 DRIVER CONFIG 
 
 botão função ref. 
F1 PORT seleciona a porta serial utilizada 
F2 SELECT DEVICE seleciona o driver de comunicação 
F7 DEVICE CONFIG configura modem 
F9 SAVE TO FILE grava mudanças para arquivo 
 
 
4. Telas selecionadas a partir da tela OFFLINE PRG/DOC 
 
4.1. Tela F1 PROCESSR FUNCTNS 
 
 botão função ref. 
F1 CHANGE PROCSSR seleciona modelo do processador / clp 8.1 
F2 CHANGE PASSWRD insere / modifica senha do clp 
F3 CHANGE PR. NAME muda nome do arquivo 
F4 CHANGE FL. NAME muda o nome do programa / subrotina 
F5 CLEAR MEMORY apaga a memória do computador 
F6 CREATE FILE cria novo programa / subrotina 
F7 DELETE FILE apaga programa / subrotina 
F8 MONITOR FILE programação ladder 4.5 
F9 DATA MONITOR memória de dados 4.6 
F10 FILE PROTECT protege programa / subrotina 
 
4.2. Tela F2 SAVE 
 
 botão função ref. 
F6 FUTURE ACCESS bloqueia / libera acesso futuro ao 
arquivo 
 
F7 ADJUST FILTERS ajusta os tempos de resposta dos 
filtros das entradas do clp 
 
F8 YES grava no HD e volta para tela anterior 
F10 NO não grava no HD e volta para tela 
anterior 
 
 
4.3. Tela F6 CREATE REPORTS 
 
 botão função ref. 
F2 SELECT ALL 
F3 TOGGLE REPORT 
F4 RESET REPORTS 
F5 REPORT OPTIONS 
F6 GENERAL OPTIONS 
F8 TITLE 
 
 
 
83
4.4. TELA F7 FILE OPTIONS 
 
 botão função 
F3 RENAME renomeia arquivos 
F4 COPY copia arquivos 
F5 DELETE apaga arquivos 
F7 COPY TO DISK copia arquivos do HD para o disquete 
F8 COPY FR DISK copia arquivos do disquete para HD 
 
Tela F8 MONITOR FILE 
 
 botão função ref. 
F2 CONFIG DISPLAY configura a apresentação do ladder 5.1 
F3 EXIT volta para o menu anterior 
F4 MULTI POINT 
F5 DOCUMNT inserção de comentários 5.2 
F6 SEARCH 
F7 GENERAL UTILITY 
F8 DATA MONITOR memória de dados 4.6 
F9 FORCE força entradas ou saídas 5.3 
F10 EDIT entra no modo de edição 5.4 
 
4.6. Tela F9 DATA MONITOR 
 
Os botões desta tela variam de função com o tipo de dado (DATA TABLE 
ADDRESS). Ao entrar nesta tela o programa solicita a letra que identifica o tipo de 
dado. Os tipos de dados existentes podem ser vistos na opção F10 MEMORY 
MAP na tela de Diretório de Programas / Subrotinas. 
 
 botão tipo função 
F1 CHANGE RADIX B I O 
 PAGE UP S 
F2 PAGE DOWN S 
F5 SPECIFY ADDRESS todos 
F6 FORCE MONITOR I O 
F7 NEXT FILE todos 
F8 PREV FILE todos 
F9 CLR MIN FAULT S 
F10 CLR MAJ FAULT S 
 
Tipo: I Output - Saída T Timer - Temporizador 
 O Input - Entrada C Counter - Contador 
 S Status - Condições R Control - Controle 
 B Bit - Binário N Integer - Inteiros 
 
 
 
84
5. Telas selecionadas a partir da tela MONITOR FILE 
 
5. 1. Tela F2 CONFIG DISPLAY (configurar a apresentação do ladder) 
 
 botão função 
F6 DISPLAY / SUPPRSS XREF mostra / omite referencias cruzadas 
F7 DISPLAY / SUPPRSS RNG COM mostra / omite comentários de linha 
F8 DISPLAY / SUPPRSS INS COM mostra / omite comentários de instruções 
F9 DISPLAY / SUPPRSS SYMBOL mostra / omite símbolos 
F10 SAVE CONFIG gravar no HD a configuração 
 
5.2. Tela F5 DOCUMNT 
 
 botão função ref. 
F1 RUNG COMMENT comentário de linha 
F2 INSTRUC COMMENT comentário de instrução 
F3 ADDRESS COMMENT comentário de endereço 
F5 EDIT DBASE 
F6 MODIFY SYMBOL modificar símbolo 
F7 REMOVE SYMBOL remover símbolo 
F10 SAVE DOCUMNT gravar no HD os comentários 
 
5. 3 Tela F9 FORCE 
 
 botão função ref. 
F1 OFF forca a saída para OFF 
F2 ON forca saída para ON 
F3 REMOVE remove o force 
F4 REMOVE ALL remove todos os forceF9 MONITOR INPUTS monitora as entradas 
F10 MONITOR OUTPUTS monitora as saídas 
 
5. 4. Tela F10 EDIT 
 
 botão função ref. 
F1 SAVE / GO ONLINE salva o arquivo e fica on-line com o clp 
F2 ONLINE CONFIG configura a comunicação do clp com o 
computador 
2.2 
F3 APPEND RUNG acrescenta nova linha 6.2 
F4 INSERT RUNG insere nova linha 6.2 
F5 MODIFY RUNG modifica linha 6.2 
F6 DELETE RUNG apaga linha 
F7 UNDEL RUNG cancela apagamento de linha 
F8 ADVANCD EDITING edição avançada 
F9 TEST EDITS 
 
 
 
85
6. Telas selecionadas a partir da tela EDIT 
 
6.2 Tela F3 APPEND RUNG, tela F4 INSERT RUNG , tela F5 MODIFY RUNG 
 
 botão função ref. 
F1 BRANCH vai para tela de derivações 
F3 APPEND INSTR acrescenta nova instrução 7.2 
F4 INSERT INSTR insere nova instrução 7.2 
F5 MODIFY INSTR modifica instrução 7.2 
F6 DELETE INSTR apaga instrução 
F7 UNDEL INSTR cancela apagamento de instrução 
F10 ACCEPT RUNG aceita a nova linha 
 
 
7. Telas selecionadas a partir da tela INSERT RUNG 
 
7.2. Tela F4 INSERT INSTR 
 
 botão função 
F1 BIT instruções de bit 
F2 TIMER / COUNTER Instruções temporizador / contador 
F3 I/O MESSAGE Instruções de maesagens 
F4 COMPARE Instruções de comparação 
F5 MATH Instruções matemáticas 
F6 MOVE / LOGICAL Instruções lógicas 
F7 FILE 
F8 SHIFT / SEQNCER 
F9 CONTROL 
F10 SPECIAL 
 
 
 
8. Telas selecionadas a partir da tela OFFLINE CONFIG 
 
8. 1. Tela F6 CREATE FILE 
 
 botão função 
F2 SELECT PROC seleção do modelo do processador 
F5 CONFIGR I / O configuração das placas dos clps modulares 
F6 ADJUST FILTERS ajusta os tempos de resposta dos filtros das 
entradas do clp 
F8 SAVE & EXIT grava no HD o novo arquivo e volta para tela 
anterior 
 
 
 
 
86
 
 
 
 
 
 
 
 
ANEXO B 
 
 
87
 
EXERCÍCIOS 
 
 
 
01 – Desenvolva um programa para ligar e desligar uma lâmpada utilizando um botão liga NA 
(verde) e um botão desliga NF (vermelho). Use instruções de bit: XIC e OTE. 
 
 
02 - Desenvolva um programa para ligar e desligar uma lâmpada utilizando um botão liga NA 
(verde) e um botão desliga NF (vermelho). Use instruções de bit: XIC, XIO, OTL e OTU. 
 
 
03 - Desenvolva um programa para ligar e desligar uma lâmpada utilizando apenas o botão 
liga NA (verde). Use instruções de bit: XIC, XIO, OTE e arquivo B3. 
 
04 - Desenvolva um programa para ligar e desligar uma lâmpada utilizando apenas o botão 
liga NA (verde). Use instruções de bit: XIC, XIO, OSR, OTE e arquivo B3. 
 
05 - Desenvolva um programa para ligar três lâmpadas em sequência quando o botão liga NA 
(verde) for acionado por três vezes consecutivas, e desligar, as três lâmpadas ao mesmo 
tempo, quando o botão desliga NF (vermelho) for acionado. Use instruções de bit: XIC, XIO, 
OSR, OTL e OTU. 
 
 
06 - Desenvolva um programa para ligar três lâmpadas em sequência quando o botão liga NA 
(verde) for acionado por três vezes consecutivas, e desligar, as três lâmpadas ao mesmo 
tempo, quando o botão desliga NF (vermelho) for acionado. Use instruções de bit: XIC, XIO, 
OSR, OTE e arquivo B3. 
 
07 - Desenvolva um programa para ligar três lâmpadas em sequência quando o botão liga NA 
(verde) for acionado por três vezes consecutivas, e desligar, as três lâmpadas ao mesmo 
tempo, quando o botão liga NA (verde) for acionado pela quarta vez. Use instruções de bit: 
XIC, XIO, OSR, OTE e arquivo B3. 
 
08 - Desenvolva um programa para ligar um motor quando o botão liga NA (verde) for 
acionado, sendo que o mesmo desligará automaticamente após 10s ou quando o botão desliga 
NF (vermelho) for acionado. Uma lâmpada verde deverá estar acesa sinalizando o motor 
desligado e uma vermelha o motor ligado. Use instruções XIC, XIO, OTE, arquivo B3 e de 
temporização TON. 
 
09 - Desenvolva um programa para ligar um motor quando o botão liga NA (verde) for 
acionado, sendo que o mesmo desligará automaticamente após 10s ou quando o botão desliga 
NF (vermelho) for acionado. Uma lâmpada verde deverá estar acesa sinalizando o motor 
desligado e uma vermelha o motor ligado. Use instruções XIC, XIO, OTE, arquivo B3 e de 
temporização TOF. 
 
 
10 - Desenvolva um programa para ligar um motor quando o botão liga NA (verde) for 
acionado. O motor funcionará obedecendo o seguinte ciclo de operação: 10s ligado e 5s 
 
 
88
desligado. O ciclo de operação será interrompido quando o botão desliga NF (vermelho) for 
acionado. Uma lâmpada verde deverá estar acesa sinalizando o motor desligado e uma 
vermelha o motor ligado. Use instruções XIC, XIO, OTE, arquivo B3 e de temporização TON 
e TOF. 
 
 
11 - Desenvolva um programa que simule o funcionamento de uma sinaleira de forma que a 
Lâmpada verde fique acesa por 12s, a Amarela por 3s e a vermelha por 15s. O ciclo será 
iniciado quando o botão liga NA (verde) for acionado e terminado quando o botão desliga NF 
(vermelho) for acionado. Quando o ciclo for terminado a Lâmpada amarela deverá piscar em 
intervalos de 3s. Use instruções XIC, XIO, OTE, arquivo B3 e de temporização TON ou TOF. 
 
 
12 - Desenvolva um programa para ligar um motor quando o botão liga NA (verde) for 
acionado, sendo que o mesmo desligará automaticamente após 10s ou quando o botão desliga 
NF (vermelho) for acionado. Uma lâmpada verde deverá estar acesa sinalizando o motor 
desligado e uma vermelha o motor ligado. Use instruções XIC, XIO, OTE, arquivo B3 e de 
temporização RTO. 
 
 
13 - Desenvolva um programa para ligar um motor quando o botão liga NA (verde) for 
acionado. Após 10 voltas o motor deverá desligar automaticamente ou quando o botão desliga 
NF (vermelho) for acionado. Uma lâmpada verde deverá estar acesa sinalizando o motor 
desligado e uma vermelha o motor ligado Use instruções XIC, XIO, OTE, arquivo B3 e de 
contagem CTU e RES. 
 
 
14 - Desenvolva um programa para ligar um motor quando o botão liga NA (verde) for 
acionado. Após 10 voltas o motor deverá parar automaticamente ou quando o botão desliga 
NF (vermelho) for acionado. Uma lâmpada verde deverá estar acesa sinalizando o motor 
desligado e uma vermelha o motor ligado. Quando o motor for desligado o acumulado do 
contador deverá ser zerado. Use instruções XIC, XIO, OTE, arquivo B3 e de contagem CTD e 
RES. 
 
 
15 - Desenvolva um programa para ligar um motor quando o botão liga NA (verde) for 
acionado. O motor funcionará obedecendo o seguinte ciclo ininterrupto de operação: 10 voltas 
e 5s desligado. O ciclo de operação será interrompido quando o botão desliga NF (vermelho) 
for acionado. Uma lâmpada verde deverá estar acesa sinalizando o motor desligado e uma 
vermelha o motor ligado. Use instruções XIC, XIO, OTE, arquivo B3 e de temporização TON 
ou TOF e CTU ou CTD. 
 
 
16 - Desenvolva um programa para ligar um motor quando o botão liga NA (verde) for 
acionado. O motor funcionará obedecendo o seguinte ciclo ininterrupto de operação: 10 voltas 
no sentido horário e 5s desligado / 10 voltas no sentido anti-horário e 5s desligado. O ciclo de 
operação será interrompido quando o botão desliga NF (vermelho) for acionado. Uma 
lâmpada verde deverá estar acesa sinalizando o motor desligado e uma vermelha o motor 
ligado. Use instruções XIC, XIO, OTE, arquivo B3 e de temporização 2TON ou 2TOF e 
2CTU ou 2CTD. 
 
 
 
89
 
17 - Desenvolva um programa para ligar um motor quando o botão liga NA (verde) for 
acionado. O motor funcionará obedecendo o seguinte ciclo ininterrupto de operação: 10 voltas 
no sentido horário e 5s desligado / 10 voltas no sentido anti-horário e 5s desligado. O ciclo de 
operação será interrompido quando o botão desliga NF (vermelho) for acionado. Uma 
lâmpada verde deverá estar acesa sinalizando o motor desligado e uma vermelha o motor 
ligado. Use instruçõesXIC, XIO, OTE, arquivo B3 e de temporização 1TON ou 1TOF e 
1CTU ou 1CTD. 
 
 
 
18 - Desenvolva um programa para ligar e desligar uma lâmpada em intervalos de 3s. 
O ciclo será iniciado quando o botão liga NA (verde) for acionado e terminado quando o 
botão desliga NF (vermelho) for acionado. Use instruções XIC, XIO, OTE, arquivo B3 e de 
temporização 1TON e de comparação a escolher. 
 
 
19 - Desenvolva um programa que simule o funcionamento de uma sinaleira simples de forma 
que a Lâmpada verde fique acesa por 12s, a amarela por 3s e a vermelha por 15s. O ciclo será 
iniciado quando o botão liga NA (verde) for acionado e terminado quando o botão desliga NF 
(vermelho) for acionado. Quando o ciclo for terminado a Lâmpada amarela deverá piscar em 
intervalos de 3s. Use instruções XIC, XIO, OTE, arquivo B3 e de temporização 1TON ou 
1TOF e de comparação a escolher. 
 
 
 
20 - Desenvolva um programa para controlar o enchimento de garrafas com produto químico. 
Quando o botão liga NA (verde) for acionado a esteira é ligada e movimenta as garrafas até o 
bico de enchimento, a garrafa é detectada através de um sensor, a esteira deve para e abrir a 
válvula do bico de enchimento para encher a garrafa, o nível é detectado através de um 
sensor, depois de detectado o nível devemos esperar por 10s e acionar a esteira novamente 
para recomeçar o ciclo, encher a próxima garrafa. Devemos contar também a quantidade de 
garrafas cheias (10 garrafas). Após a contagem, deverá ser acionado um alarme e o ciclo só 
recomeçará se o botão de reconhecimento de alarme for acionado. Quando o botão desliga NF 
(vermelho) for acionado o ciclo será interrompido. Use instruções XIC, XIO, OTE, OTL, 
OTU, arquivo B3, de temporização 1TON ou 1TOF e 1CTU ou 1CTD. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
SENSOR 
DE 
GARRAFA 
SENSOR 
DE 
NÍVEL 
 
 
90
 
 
21 - Desenvolva um programa que simule o funcionamento de uma sinaleira dupla de forma 
que a Lâmpada verde fique acesa por 12s, a amarela por 3s e a vermelha por 15s. O ciclo será 
iniciado quando o botão liga NA (verde) for acionado e terminado quando o botão desliga NF 
(vermelho) for acionado. Quando o ciclo for terminado a Lâmpada amarela deverá piscar em 
intervalos de 3s. Use instruções XIC, XIO, OTE, arquivo B3 e de temporização 1TON ou 
1TOF e de comparação a escolher. 
 
 
22 - Desenvolva um programa que converta Graus Fahrenheit em Celcius, aplicando a 
formula ( )� � 9/325 −= FC . Quando a temperatura estiver entre 15 e 35 graus Celcius a 
lâmpada verde estará acesa e quando a temperatura estiver fora desta faixa, abaixo de 14 ou 
acima de 36 graus Celcius a lâmpada vermelha acenderá. Use Instruções de bit, matemáticas e 
de comparação. Não se esqueça de usar o arquivo N7 para entrada e armazenamento de dados. 
 
 
 
91
 
BIBLIOGRAFIA 
 
 
 
 
Reference Manual – ALLEN-BRADLEY 
 
Colin D. Simpson – Programmable Logic Controllers, 1994 
 
Eric A. Bryan – Programmable Controllers 
 
Manual do curso básico de CLP – Siemens 
 
Manual do curso dos CLPs Allen-Bradley

Mais conteúdos dessa disciplina