Sei sulla pagina 1di 187

ControlLogix

Configuração e
Manutenção, usando
RSLogix 5000

Manual do Aluno
Índice 1-187

Índice
INFORMAÇÕES IMPORTANTES AO USUÁRO ........................................................................................................................................................ 5
CAPITULO 01 - HARDWARE DO CONTROLLOGIX ..................................................................................................................... 6
BACKPLANE.......................................................................................................................................................................................................... 6
CHASSIS ............................................................................................................................................................................................................... 7
CONTROLADORES............................................................................................................................................................................................. 10
LEDS DE STATUS DE UM CONTROLADOR (L6X) .............................................................................................................................................. 11
LEDS DE STATUS DE UM CONTROLADOR (L7X) .............................................................................................................................................. 12
PRINCIPAIS STATUS DO DISPLAY – CONTROLADOR L7X................................................................................................................................ 12
SELEÇÃO DO MODO DE OPERAÇÃO DO CONTROLADOR ................................................................................................................................ 13
ENTRADAS E SAÍDAS ........................................................................................................................................................................................ 13
ATUALIZAÇÃO DAS ENTRADAS E SAÍDAS ......................................................................................................................................................... 14
IDENTIFICANDO UM MÓDULO DE I/O................................................................................................................................................................. 16
ENDEREÇAMENTO DE I/O ................................................................................................................................................................................. 17
STATUS DE I/O DIGITAL.................................................................................................................................................................................... 18
CONEXÕES........................................................................................................................................................................................................ 19
CAPITULO 02 - PRINCIPIO DE FUNCIONAMENTO DO CONTROLLOGIX ................................................................................ 21
ORGANIZAÇÃO DE UM PROJETO ...................................................................................................................................................................... 21
CAPITULO 03 - COMUNICAÇÃO ENTRE TERMINAL E CONTROLADOR ................................................................................ 22
CAPITULO 04 - CRIANDO UM PROJETO NO RSLOGIX 5000 ................................................................................................... 28
CAPITULO 05 - DIVISÃO DA LÓGICA EM TAREFAS, PROGRAMAS E ROTINAS: .................................................................. 30
TAREFAS PARA CONFIGURAR A EXECUÇÃO DO CONTROLADOR: .................................................................................................................... 30
PROGRAMAS PARA AGRUPAR DADOS E LÓGICAS: ........................................................................................................................................... 30
ROTINAS PARA ENCAPSULAR O CÓDIGO EXECUTÁVEL ESCRITO EM UMA ÚNICA LINGUAGEM DE PROGRAMAÇÃO:....................................... 30
QUANDO USAR TAREFAS, PROGRAMAS OU ROTINAS: ................................................................................................................................... 31
ESPECIFICAÇÃO DOS TIPOS DE TAREFAS ........................................................................................................................................................ 31
CONFIGURAÇÃO DE UMA TAREFA PERIÓDICA ................................................................................................................................................. 32
CONFIGURAÇÃO DE UMA TAREFA DO TIPO EVENTO ....................................................................................................................................... 35
CONFIGURAÇÃO DE UM PROGRAMA ................................................................................................................................................................ 37
CONFIGURAÇÃO DE UMA ROTINA..................................................................................................................................................................... 38
RESUMO DAS ESPECIFICAÇÕES DO SISTEMA: ................................................................................................................................................. 39
CAPÍTULO 6 – TAGS, ARRAYS E ESTRUTURAS ....................................................................................................................... 40
ESCOPO DE UMA TAG...................................................................................................................................................................................... 40
CRIAÇÃO DE UMA TAG..................................................................................................................................................................................... 41
TAG BASE E TAG ALIAS .................................................................................................................................................................................... 42
ARRAY ............................................................................................................................................................................................................... 43
TAG ESTRUTURADA .......................................................................................................................................................................................... 45
CAPITULO 7 – TESTANDO E DESCARREGANDO UM PROJETO ............................................................................................ 48
CONFIGURANDO A COMUNICAÇÃO DO RSLOGIX 5000................................................................................................................................... 48
COMANDOS DOWNLOAD, UPLOAD, GO ONLINE, GO OFFLINE.............................................................................................................. 49
CONTROLANDO OS MODOS DE OPERAÇÃO DO CONTROLADOR ..................................................................................................................... 50
CAPITULO 8 - INSTRUÇÕES BINÁRIAS .................................................................................................................................................. 51
EXAMINAR SE ENERGIZADO (XIC)............................................................................................................................................................................. 51
Índice 2-187

EXAMINAR SE ENERGIZADO (XIO) ............................................................................................................................................................................. 52


ENERGIZAR SAÍDA (OTE) ........................................................................................................................................................................................ 54
ENERGIZAR SAÍDA COM RETENÇÃO (OTL) .................................................................................................................................................................. 55
DESENERGIZAR SAÍDA COM RETENÇÃO (OTU) ........................................................................................................................................................... 56
MONOESTÁVEL (ONS) ........................................................................................................................................................................................... 57
CAPITULO 10 - CONSTRUINDO UM DIAGRAMA LADDER ....................................................................................................... 59
VERIFICANDO UM PROJETO: ............................................................................................................................................................................. 64
EDIÇÃO ON-LINE ............................................................................................................................................................................................ 65
INCLUIR UMA LINHA EM ON-LINE.................................................................................................................................................................... 68
DELETAR UMA LINHA EM ON-LINE ................................................................................................................................................................. 69
DOCUMENTANDO UM PROGRAMA LADDER ..................................................................................................................................................... 71
EXERCÍCIO A..................................................................................................................................................................................................... 74
EXERCÍCIO B..................................................................................................................................................................................................... 75
EXERCÍCIO C .................................................................................................................................................................................................... 76
CAPITULO 11 - CONTROLE DE FLUXO DO PROGRAMA ......................................................................................................... 77
CAPITULO 12 - INSTRUÇÕES DE TEMPORIZAÇÃO ................................................................................................................. 78
TEMPORIZADOR NA ENERGIZAÇÃO (TON) ................................................................................................................................................................... 78
TEMPORIZADOR NA DESENERGIZAÇÃO (TOF) ............................................................................................................................................................. 81
TEMPORIZADOR RETENTIVO NA ENERGIZAÇÃO (RTO) .................................................................................................................................................... 85
EXERCÍCIO D .................................................................................................................................................................................................... 88
CAPITULO 13 - INSTRUÇÕES DE CONTADOR .......................................................................................................................... 89
CONTAGEM CRESCENTE (CTU)................................................................................................................................................................................. 89
CONTAGEM DECRESCENTE (CTD) ............................................................................................................................................................................ 92
EXERCÍCIO E..................................................................................................................................................................................................... 96
CAPITULO 14 – INSTRUÇÕES ARITMÉTICAS ........................................................................................................................... 97
ADIÇÃO (ADD) ...................................................................................................................................................................................................... 97
SUBTRAÇÃO (SUB) ................................................................................................................................................................................................ 99
MULTIPLICAÇÃO (MUL) ........................................................................................................................................................................................ 100
DIVISÃO (DIV) .................................................................................................................................................................................................... 101
RAIZ QUADRADA (SQR) ....................................................................................................................................................................................... 103
NEGAÇÃO (NEG) ................................................................................................................................................................................................ 104
CÁLCULO (CPT) ................................................................................................................................................................................................. 105
EXERCÍCIO F .................................................................................................................................................................................................. 107
CAPITULO 15 - INSTRUÇÕES DE COMPARAÇÃO ..................................................................................................................109
MAIOR QUE A (GRT) ........................................................................................................................................................................................... 113
MENOR OU IGUAL A (LEQ) .................................................................................................................................................................................... 115
MENOR QUE (LES) ............................................................................................................................................................................................. 118
LIMITE (LIM) ...................................................................................................................................................................................................... 120
EXERCÍCIO G ................................................................................................................................................................................................. 123
EXERCÍCIO H ................................................................................................................................................................................................. 124
CAPÍTULO 16 – INSTRUÇÕES E FERRAMENTAS PARA MANUTENÇÃO .............................................................................125
INSTRUÇÕES GSV E SSV:............................................................................................................................................................................ 125
COMO PREENCHER OS OPERANDOS:............................................................................................................................................................ 127
Índice 3-187

ACESSO AO OBJETO CONTROLLLER .................................................................................................................................... 137


ACESSO AOOBJETO MODULO ....................................................................................................................................................................... 147
ACESSO AO OBJETO MOTIONGROUP ........................................................................................................................................................... 148
ACESSO AO OBJETO PROGRAM................................................................................................................................................................. 149
ACESSO AO OBJETO ROUTINE .................................................................................................................................................................. 150
....................................................................................................................................................................................................................... 150
ACESSO AO OBJETO TASK ........................................................................................................................................................................... 153
ACESSO AO OBJETO WALLCLOCKTIME ................................................................................................................................................... 154
EXERCÍCIO I.................................................................................................................................................................................................. 155
FORCE ........................................................................................................................................................................................................... 156
EXERCÍCIOS EXTRAS ..................................................................................................................................................................................... 178
EXERCÍCIO EXTRA A ..................................................................................................................................................................................... 178
EXERCÍCIO EXTRA B ..................................................................................................................................................................................... 179
EXERCÍCIO EXTRA C ..................................................................................................................................................................................... 180
EXERCÍCIO EXTRA D ..................................................................................................................................................................................... 181
EXERCÍCIO EXTRA E ................................................................................................................................................................................... 182
EXERCÍCIO EXTRA F...................................................................................................................................................................................... 183
EXERCÍCIO EXTRA G ..................................................................................................................................................................................... 184
EXERCÍCIO EXTRA H ..................................................................................................................................................................................... 185
EXERCÍCIO EXTRA I ....................................................................................................................................................................................... 186
Informações Importantes ao Usuário 5-187

Informações Importantes ao Usuáro

Devido às várias aplicações dos produtos descritos neste manual, os responsáveis pelo uso deste
equipamento de controle devem certificar-se de que todas as etapas foram seguidas para assegurar
que cada aplicação e uso atendam a todos os requisitos de desempenho e segurança, incluindo todas
as leis aplicáveis, regulamentações, códigos e padrões.

As ilustrações, gráficos, exemplos de programas e de layouts exibidos neste manual são apenas para
fins ilustrativos. Visto que há diversas variáveis e requisitos associados a qualquer instalação
especifica, a Rockwell Automation não assume nenhum tipo de responsabilidade (incluindo
responsabilidade por propriedade intelectual) por uso real baseado nos exemplos exibidos nesta
publicação.

A publicação SGI –1.1, Safety Guidelines for the Application, Instalation, and Maintenance of Solid-
State Control (disponível no escritório da Rockwell Automation), descreve algumas diferenças
importantes entre equipamentos eletrônicos e dispositivos eletromecânicos, que devem ser levados em
consideração ao aplicar produtos como os descritos nesta publicação.

ATENÇÃO : A reprodução do conteúdo desta publicação protegida por copyright, integral ou


parcialmente, sem consentimento prévio por escrito da Rockwell Automation é proibida.

Ao longo deste manual, fazemos referência a outros documentos técnicos. Ao aplicar os


procedimentos, o usuário deve consultar todas as referências mencionadas relativas a informações de
segurança mais detalhadas, pois dizem respeito a circunstâncias especificas.

Através de notas, procuramos chamar a atenção do usuário para questões de segurança:

Os avisos de Atenção ajudam o usuário a:

 Identificar e evitar situações de perigo.


 Reconhecer as consequências.
Capítulo 1 – Hardware do ControlLogix 6-187

Capitulo 01 - Hardware do ControlLogix


Backplane
Um dos elementos principais do sistema Controllogix é a comunicação que permite a visualização total do
sistema, começando com a placa de fundo do chassi (Backplane) onde através do mesmo podemos visualizar
os módulos de E/S, os controladores e, é claro, os próprios módulos de comunicação.

A placa de fundo do chassi do Controllogix é baseada na rede Controlnet e usa o mesmo modelo
produtor/consumidor – nome dado ao modelo de comunicação pelo qual os nós da rede ou os módulos no
chassi produzem dados. Outros nós ou módulos podem, então, consumir os dados conforme a necessidade. Isto
é muito diferente de outros modelos, onde, por exemplo, um mestre deve administrar a tarefa de comunicação,
perguntando a cada nó ou módulo se o mesmo tem uma mensagem para enviar e organizar a operação.

Para os controladores, o uso do modelo produtor/consumidor permite a instalação de vários controladores no


chassi.

Desta forma, a placa de fundo do chassi age como uma rede de alta velocidade que fornece a capacidade de
comunicação entre todos os módulos e a placa de fundo do chassi, bem como todos aqueles que estão
estendidos a outros chassis através da rede ControlNet.

Por esta razão, as capacidades do sistema ControlLogix também estão muito além do controlador tradicional
programável.

O multi-processamento também é um produto deste modelo. É suportado no chassi para qualquer quantidade de
localização e quaisquer combinações de ranhuras. Já que a placa de fundo age como uma rede de alta
velocidade, cada controlador é um nó da rede, portanto, qualquer número de controladores pode se comunicar
entre si, independente da localização da ranhura em que se encontram.

De acordo com o conceito de produtor/consumidor na placa de fundo do chassi, percebemos a sua associação
bastante próxima com a rede ControlNet e fica fácil entender de que forma a rede ControlNet atua como uma
extensão da placa de fundo do ControlLogix.
Na arquitetura ControlLogix, todas as E/S remotas estão conectadas via ControlNet e são visualizadas por
qualquer controlador de forma contínua, como se as E/S estivessem na sua própria gaveta.
Capítulo 1 – Hardware do ControlLogix 7-187

Chassis

No sistema ControlLogix temos os seguintes tipos de chassis que são:

Chassis Convencionais

Catalogo Slots

1756-A4 4

1756-A7 7

1756-A10 10

1756-A13 13

1756-A17 17

Chassis XT (Extreme Temperature)

Catálogo Slots Range de Temperatura

1756-A4LXT 4 -25...60 Graus

1756-A5LXT 5 -25...70 Graus

1756-A7LXT 7 -25...60 Graus

Na montagem do sistema controlLogix, você deve manter os espaçamentos mínimos abaixo:


Capítulo 1 – Hardware do ControlLogix 8-187

Abaixo temos uma visão dos tamanhos disponíveis:

1756-A4 com fonte de alimentação 1756-A7 com fonte de alimentação

1756-A10 com fonte de alimentação


Capítulo 1 – Hardware do ControlLogix 9-187

1756-A13 com fonte de alimentação

1756-A17 com fonte de alimentação


Capítulo 1 – Hardware do ControlLogix 10-187

Controladores

O controlador ControlLogix fornece uma solução de controlador escalável, com capacidade para endereçar uma
grande quantidade de pontos de E/S (dependente do modelo da CPU). O controlador pode controlar a E/S local,
assim como a E/S remota através das redes Ethernet/IP e ControlNet.

Você pode colocar múltiplos controladores ControlLogix em um único chassi ControlLogix. Múltiplos
controladores podem ler valores de entrada a partir de todas as entradas. Um único controlador pode se
comunicar com múltiplos módulos de comunicação e múltiplos controladores podem compartilhar o mesmo
módulo de comunicação.

A memória do controlador é outra área em que o ControlLogix oferece uma flexibilidade considerável. Ao
acrescentar memória ao controlador Logix, não há áreas fixas de memória alocada para tipos específicos de
dados ou E/S. Não há limite no número de temporizadores, contadores ou instruções. A memória é contígua de
dentro de qualquer controlador e é usada na direção “de cima para baixo”, conforme o usuário desenvolve a
aplicação.

No chassi do ControlLogix, a memória é acrescentada especificamente a cada controlador e as variáveis são


transmitidas entre os controladores com E/S dentro do sistema. Essa alocação de memória de controlador a
controlador é uma das razões porque os controladores podem residir em qualquer localização da ranhura em um
chassi e com qualquer número de controladores em um chassi.

MEMÓRIA
Número de Catálogo Comunicação Conexões
Total Não Volátil
1756-L75 32MB Cartão SD USB 500
1756-L74 16MB Cartão SD USB 500

1756-L73 8MB Cartão SD USB 500

1756-L72 4MB Cartão SD USB 500


1756-L65 32MB CompactFlash Serial 250
1756-L64 16MB CompactFlash Serial 250
1756-L63 8MB CompactFlash Serial 250

1756-L62 4MB CompactFlash Serial 250

1756-L61 2MB CompactFlash Serial 250

1756-L63 (Safety) 2MB (1MB safety) CompactFlash Serial 250


1756-L62 (Safety) 4MB (1MB safety) CompactFlash Serial 250
1756-L61 (Safety) 8MB (3,75MB safety) CompactFlash Serial 250
1756-L63XT (Extreme Temperature) 8M CompactFlash Serial 250
Capítulo 1 – Hardware do ControlLogix 11-187

Mémória de dados e lógica armazena: outras tags que não seja de I/O, tags produtoras e consumidoras,
rotinas lógicas e comunicação com tags DDE/OPC via Linx.

Memória de I/O armazena: tags de I/O, tags produtoras e consumidoras, comunicação via instrução MSG
message, comunicação com workstation, comunicação com tags DDE/OPC via linx.

Leds de Status de um Controlador (L6x)


LED Condição Significado Ação recomendada

Deslig O controlador está no modo Programa ou Test


RUN
Verde Sólido O controlador está no modo RUN

 Não há nenhuma configuração de I/O Adicione dispositivos


Deslig
 Memória do controlador vazia Descarregue um projeto

O controlador está se comunicando com os dipositivos


Verde Sólido
I/O de I/O configurados
Um ou mais dispositivos de I/O configurador não Entre em on-line e cheque as
Verde Piscante
respondem condições dos I/Os
Vermelho Piscante Chassi ruim Troque o Chassi
Deslig Não constem force instalado

FORCE Amarelo Sólido Existe forçe instalado e habilitado

Amarelo Piscante Existe forçe instalado mas não habilitado Habilite os forces

Deslig Sem comunicação


RS232
Verde Piscante Dados sendo transmitidos e/ou recebidos
Deslig Bateria em funcionamento
Controlador Serie A: Não existe indicação

BAT Verde Sólido Controlador Serie B: Durante a energização, o


controlador está salvando o projeto na memória não Aguarde
volátil.

Vermelho Sólido Bateria insuficiente ou sem bateria Substitua a bateria


Deslig Sem energia Energize o chassi
Controlador novo: o controlador requer atualização de
Atualize firmware
firmwaer
Vermelho Piscante
Controlador usado: Ocorreu uma falha recuperável
Limpe a falha
OK (major fault)
Vermelho Sólido Falha não recuperável Limpe a memória
Verde Sólido O controlador está OK
O controlador está manipulando (carregando ou Não interfira até que pare de
Verde Piscante
descarregando) o projeto na memória não volátil piscar
Capítulo 1 – Hardware do ControlLogix 12-187

Leds de Status de um Controlador (L7x)

LED Condição Significado Ação recomendada


O controlador está no modo
Deslig
RUN Programa ou Test
Verde Sólido O controlador está no modo RUN
Deslig Não constem force instalado

FORCE Amarelo Sólido Existe forçe instalado e habilitado


Amarelo Existe forçe instalado mas não
Habilite os forces
Piscante habilitado
Deslig Nada ocorrendo no cartão SD
Verde Piscante O Controlador está lendo ou
escrevendo no catão SD. Não
Verde Sólido remova-o
SD
Vermelho O cartão SD não tem um aquivo
Regrave o cartão
Piscante valido
O cartão SD não foi reconhecido
Vermelho Sólido Substitua o cartão
pelo Controlador
Deslig Sem energia Energize o chassi
Vermelho Controlador novo: o controlador Atualize firmware
Piscante requer atualização de firmwaer
Controlador usado: Ocorreu uma Limpe a falha
falha recuperável (major fault)
OK
Vermelho Sólido Falha não recuperável Limpe a memória
Verde Sólido O controlador está OK

Verde Piscante O controlador está manipulando Não interfira até que


(carregando ou descarregando) o pare de piscar
projeto na memória não volátil

Principais Status do Display – Controlador L7x


Mensagem Interpretação
Controlador Desligado ou em Falha não recuperável
TEST Executando teste inicial
PASS Teste inicial executado com sucesso
SAVE Projeto sendo salvo no cartão SD
LOAD Projeto sendo carregado de um cartão SD
UPDT Uma atualização de firmware está sendo conduzida pelo cartão SD no startup
CHRG O capacitor do modulo ESM está sendo carregado
1756-Lx/x Numero de catalogo e serie
REV xx.xxx Revisões da CPU (minor e major)
Projetc Name Nome do projeto que está armazenado no controlador
BUSY Os módulos de I/O do projeto ainda não estão prontos
Flash in progress Uma atualização de firmware está em andamento
SD Card Locked Cartão SD travado (protegido)
Capítulo 1 – Hardware do ControlLogix 13-187

Seleção do Modo de Operação do Controlador


Gire a chave no painel frontal do controlador para selecionar o modo:

Selecione um destes modos:


Se você quiser: REMOTE
Run Prog
Run Test Prog
Mudar as saídas para o estado comandado pela lógica X X
Mudar as saídas para seu estado configurado no modo Prog X X X
Executar tarefas X X X
Mudar o modo do controlador atraves do software X X X
Programar uma rede ControlNet X X
Enquanto estiver on-line, editar o projeto X X X X
Enviar mensagens X X X
Enviar e receber dados em resposta a uma mensagem de
X X X X X
outro controlador
Produzir e consumir codigos de acesso X X X X X

Entradas e Saídas

A grande diversidade de módulos E/S ControlLogix permite uma grande variedade de maneiras de criar
interfaces para o processo, sendo que a inteligência de cada módulo proporciona um rico conjunto de dados
para manter o processo sob controle.

O sistema ControlLogix não impõe limitações artificiais no número de pontos de E/S que um sistema de
controle possa ter. Quando os pontos de E/S são configurados ou quando o código da aplicação é criado, a
memória é usada de forma contínua.

Portanto, um dos elementos limitadores para o número de ponto de E/S no sistema, é claro, é a
memória. Se o uso de mais de uma memória for necessário, o usuário pode acrescentar mais memória via uma
placa de expansão de memória ou acrescentar um controlador a um chassi para aumentar o número total de
pontos de E/S no sistema.

Um segundo fator que pode limitar o número total de pontos de E/S para um determinado controlador
envolve o conceito de conexões. O sistema ControlLogix usa uma conexão para estabelecer um enlace de
comunicação entre dois “dispositivos”. Esses “dispositivos” podem ser controladores, módulos de comunicação,
módulos de E/S, variáveis produzidas e consumidas ou mensagens.

As conexões são diferentes dos pontos de E/S individuais. Cada controlador Logix 5550, por exemplo,
tem capacidade de realizar 250 conexões (500 conexões para família L7x). Em uma configuração, uma única
conexão pode ser realizada para todo o chassi. Considerando o fato que chassis com 17 ranhuras estão
disponíveis e considerando módulos com 32 pontos, um único controlador pode, na realidade, suportar até
128000 pontos de E/S digital; 4000 pontos de E/S analógicos podem ser suportados usando um cálculo
semelhante para as E/S analógicas.

Embora esses números sejam grandes, eles duplicam quando um segundo controlador é adicionado à
gaveta – triplicam e assim por diante. Mesmo esses números parecendo muito elevados se visualizados desta
maneira, o ponto que permanece é que a arquitetura do ControlLogix não impõem um limite artificial ao número
total de pontos de E/S que podem ser suportadas para uma determinada aplicação.
Capítulo 1 – Hardware do ControlLogix 14-187

Cada módulo no sistema ControlLogix suporta um número específico de conexões ativas. Ao projetar
um sistema, o número de conexões permitidas é fundamental para a definição do projeto.

O controlador Logix5550 pode também produzir (difundir) e consumir (receber)os valores de dados
compartilhados pelo sistema. Esses valores são denominados literalmente como variáveis produzidas e
consumidas.

Essas variáveis podem ser acessadas através de vários controladores no chassi ou na rede ControlNet.
Cada uma das variáveis produzidas ou consumidas requer conexões.

O controlador que está produzindo uma variável deve alocar uma conexão para qualquer variável que
produza. Além disso, qualquer controlador que consuma essa variável também

deve estabelecer uma conexão de volta para o controlador produtor para cada variável recebida do mesmo.

O Controlador Logix5550 também utiliza as conexões para executar a troca de mensagens, incluindo
block transfers (transferencia de dados em bloco).

Quando uma instrução de mensagem no programa do usuário lê ou escreve informações de/para outro módulo,
essa instrução requer uma conexão bidirecional para a duração da transmissão

Atualização das Entradas e Saídas

A troca de dados entre dispositivos de E/S e o controlador segue o modelo produtor/consumidor. Desta forma a
varredura das entradas e a atualização das saídas não está necessariamente atrelada ao scan do programa.

RPI – Request Packet Interval

Especifica a taxa na qual dados são produzidos por um cartão de entrada ou saída. Este valor está
compreendido entre 0,2 a 750 milisegundos

COS – Change Of State (Somente módulos digitais)

Um módulo de entrada produzirá informação somente quando houver uma transição de ON para OFF
ou OFF para ON, detectada pelo circuito de entrada.

RTS – Real Time Sample (Somente módulos analógicos)

Tempo gasto para executar as seguintes ações:


Capítulo 1 – Hardware do ControlLogix 15-187

 Ler todos os canais de entrada

 Atualizar status

 Zerar o contador do RTS

Scan de Scan
Programas
de I/O
Capítulo 1 – Hardware do ControlLogix 16-187

Identificando um módulo de I/O

Módulos Digitais:

1756 – I B 16 D
Sufixo (D=Diagnostico, E=Fusível eletrônico, I=isolado)
Número de I/O´s (8, 16 ou 32 pontos por módulo)
Classe de Tensão
Tipo do I/O (I = Input, O = Output)
Identificação da Família ControlLogix

Input Output
Identificador Tensão Modalidade Identificador Tensão Modalidade
A 120 AC W Rele NA
M 240 AC X Rele NA / NF
N 24 AC A 120/240 AC
B 12/24 DC SINK N 24 AC
C 48 DC SINK B 12/24 DC SOURCE
H 125 DC SINK/SOURCE C 48 DC SOURCE
V 12/24 DC SOURCE H 125 DC
G 5 DC TTL SOURCE V 12/24 DC SINK
G 5 DC TTL SOURCE

Módulos Analógicos:

1756 – I F 6 I
Sufixo (Tensão, Corrente, Isolado, FastOut, Input Source, Hart)
Número canais (4, 6, 8 ou 16 canais por módulo)
Range de trabalho
Tipo do I/O (I = Input, O = Output)
Identificação da Família ControlLogix

Cartão Descrição
-10 a +10 dc
0 a 10 dc
F
0 a 5 dc
0 a 20mA
R RTD
T Termopar
CFM FlowMeter
HSC High Speed Counter
PLS Limit Switch
Capítulo 1 – Hardware do ControlLogix 17-187

Endereçamento de I/O

No ControlLogix não existe uma tabela de I/O pré-definida. Essa tabela será formada a medida que os módulos
forem configurados.

Segue abaixo como o endereçamento é montado:

Localização : Slot : Tipo . Membro . Submembro . Bit

Campo Significado
Mesmo Rack da CPU = LOCAL
 Localização
Rack Remoto = Nome do Adaptador Remoto

 Slot Número do Slot do Chassi Local ou Remoto

Tipo do Dado
 Tipo
I: Input, O: Output, S: Status, C: Config

Especifica qual informação será obtida. Isso depende do tipo do


 Membro cartão e o que se quer obter. Exemplos: Data (os dados de I/O),
FuseBlow (Fusível queimado), etc

Complemento do Membro (a maioria dos membros não tem


 SubMembro
complemento)

 Bit Especifica o ponto do cartão a ser endereçado

Buscando I/O’s.: Local:1:I.data.0

Local:2:O.data.8

Buscando Status.: Local:1:I.OpenWire.0

Local:2:O.NoLoad.3

Analógicos.: Local:3:O.Ch0Data

Local:3:O.Ch1Data
Capítulo 1 – Hardware do ControlLogix 18-187

Status de I/O Digital

Para melhor visualização das condições atuais dos cartões de I/O, existem diversos status disponíveis tais
como:

 Led OK (comum em todos os cartões da família controlLogix)

 Led ST (Status – condição atual do I/O, Habilitado, Desabilitado)

 Led FLT (Somente para cartões com diagnóstico)

LED Condição Status

Verde O cartão está sendo controlado por uma CPU.

Verde piscante O cartão está em perfeito estado, porém encontra-se “órfão”.


OK
Vermelho piscante O limite de tempo de comunicação expirou.

Vermelho Substituir

ST Amarelo Entrada / Saída está ativada

FLT Vermelho Uma falha ocorreu para este ponto.

CAL Verde Piscante Está em modo de calibração


Capítulo 1 – Hardware do ControlLogix 19-187

Conexões

Pode-se definir por conexão um enlace de comunicação entre dois dispositivos. Estes dispositivos podem ser
controladores, módulos de comunicação, módulos de E/S, variáveis produzidas e consumidas ou mensagens.

O controlador Logix suporta até 250 conexões. (500 conexões para L7x)

Conexões Diretas:

 Dados são transferidos em tempo real para o controlador

 Maior capacidade de diagnósticos

 Cartões no rack da CPU devem obrigatóriamente seguir esta conexão: Direct

 Cartões analógicos também devem ser sempre do tipo direct

Tipo de Conexão Quantidade Módulos Conexão por Módulo Total de Conexões

Controlador para módulo local 2 1 2

Controlador para módulo Remoto 3 1 3

Controlador para CNB Remoto 1 0 0

Total 5
Capítulo 1 – Hardware do ControlLogix 20-187

Conexões Rack Otimizado:

 Um rack inteiro, composto por cartões digitais, pode representar apenas uma conexão

 As informações de diagnóstico são mais limitadas.

 As informações são transferidas para a CPU de acordo com o RPI configurado no módulo 1756 CNB

Tipo de Conexão Quantidade Módulos Conexão por Módulo Total de Conexões

Controlador para módulo local 2 1 2

Controlador para CNB Remoto 1 1 1

Total 3

Conexões Mistas:

Quando existe módulos analógicos no rack remoto, pois cada cartão analógico obrigatoriamente consome uma
conexão.

Tipo de Conexão Quantidade Módulos Conexão por Módulo Total de Conexões

Controlador para módulo local 2 1 2

Controlador para Analógico remoto 1 1 1

Controlador para CNB Remoto 1 1 1

Total 4
Capítulo 2 – Princípio de Funcionamento do ControlLogix 21-187

Capitulo 02 - Principio de Funcionamento do ControlLogix

O principio de funcionamento do ControlLogix dá-se da seguinte forma:

 O programa é colocado na memória do ControlLogix utilizando-se o software (RSLogix5000).

 O programa lógico é baseado no diagrama elétrico a relé (ladder), function block, seqüencial
function chart ou structure text.

 O conteúdo deste programa são instruções que controlam sua aplicação no momento em que o
controlador é passado para o modo de operação (modo run).

 Um ciclo de operação é iniciado (ciclo de scan).

Um controlador tem a função de executar comandos programados, ler as entradas, acionar as saídas, trocar
dados com outros controladores e comunicar-se com dispositivos remotos

Organização de um Projeto

Um projeto de controlLogix possue a seguinte organização:

Em um projeto podemos ter uma estrutura de até 32 tarefas, 100


programas por tarefa, e até 32 767 rotinas por programa. Toda
essa estrutura de tarefas, programas e rotinas será apresentado
posteriormente.

Todo o sistema de tarefas trabalha de modo preemptivo, ou seja,


somente 1 única tarefa pode ser executado por vez.

Além das tarefas, todos os I/O´s utilizados no projeto deverão ser


configurados no controller Organizer, dentro da paste I/O
Configuration, onde haverá um backplane e já a sua CPU
configurada no início de cada projeto.

OBS: Caso esse controller organizer não seja visualizado no seu


projeto, clique no menu View e depois em Controller Organizer.
Capítulo 3 – Comunicação entre Terminal e Controlador 22-187

Capitulo 03 - Comunicação entre terminal e Controlador

Toda a comunicação entre Controlador e Terminal de programação (Computador) é realizado através do


Software RSLinx. Comunicações de diversos tipos são suportadas como: Serial (RS232), Ethernet e
Ethernet/IP, USB (para controladores L7X), ControlNet, etc.

Configurando uma comunicação Serial (RS232):

1) Abra RSLinx (Menu Iniciar do Windows ou Ícone no Desktop)

2) Clique no menu Communication e Configure Drives (um atalho está sublinhado na figura abaixo).

3) Seleciona na guia Avaliable Drives Types (Tipos de Drive Disponíveis) o drive RS232 DF1Devices.

4) Então clique em adicionar novo (Add New...) e escolha um nome para o Drive.
Capítulo 3 – Comunicação entre Terminal e Controlador 23-187

5) Seleciona a porta correspondente a porta Serial do seu computador no campo Comm Port. Um cabo
CP3 deve já estar conectado a sua porta serial. Fique atento ao utilizar sua maquina virtual, se a
mesma está com o dispositivo Serial Port habilitado.

6) Clique em Auto-Configure. Neste exato momento um teste de velocidade na sua porta serial será
executado, e ao fim deste deste, ao lado do botão Auto-Configure, deve aparecer a inscrição Auto-
Configuration SucessFull. Caso isso não ocorra, um problema com sua porta, cabo, Comm Port deve
estar acontecendo.

7) Clique em OK. Seu drive estará na lista com status running.


Capítulo 3 – Comunicação entre Terminal e Controlador 24-187

Configurando uma comunicação Ethernet/IP:

1) Abra RSLinx (Menu Iniciar do Windows ou Ícone no Desktop)

2) Clique no menu Communication e RSWho (um atalho está sublinhado na figura abaixo). Uma janela
branca será aberta na área de trabalho do RSLinx.

3) Localize o drive AB_DF1-1 (se esse foi o nome escolhido) criando anteriormente. Vá clicando no sinal
+ até que todos os cartões do backplane estejam a mostra.

4) Localize o cartão 1756-ENBT e clique sobre ele com o botão direito e escolha a opção Module
Configuration.
Capítulo 3 – Comunicação entre Terminal e Controlador 25-187

5) Na tela mostrada, configure um IP e uma mascara de sub-rede com os números que o instrutor irá
passar para você (exemplo: IP=192.168.0.1 Mask=255.255.255.0)

6) Pressione OK e percebe que, após um reset automático do seu cartão, o número do seu IP irá correr
nos displays do cartão Ethernet/TP.

7) Procure o ícone Meus Locais de Rede no desktop do Windows


(My Network Places) e clique com o botão direito, Propriedades.

8) Localize na nova tela a conexão local de Rede, e então clique


com o botão direito, propriedades.

9) Na proxima tela, selecione o ítem TPC/IP e clique em propriedades. Entre com um número de IP e uma
mascara de sub rede indicada pelo instrutor (exemplo: IP=192.168.0.2 Mask=255.255.255.0)
Capítulo 3 – Comunicação entre Terminal e Controlador 26-187

10) Volte ao RSLinx e clique novamente no menu Communication e Configure Drives (um atalho está
sublinhado na figura abaixo).

11) Seleciona na guia Avaliable Drives Types (Tipos de Drive Disponíveis) o drive Ethernet/IP Driver. Então
clique em adicionar novo (Add New...) e escolha um nome para o Drive.

12) Na tela abaixo, selecione o ítem Windows Default e clique OK.

13) Ao abrir novamente o RSWho no menu Communication, o novo drive Ethernet/IP deverá estar sendo
mostrado. Ao abrir utilizando os sinais + , você deverá enchergar todos os cartões pertencentes ao
backplane.

14) Após esse procedimento, será necessário configurar no RSLogix 5000 o caminho (Path) disponível para
aplicação. Esse procedimento será demostrado pelo instrutor posteirormente:

 Selecione o menu Communication e Who Active

 Selecione o Drive Ethernet/IP e clique sobre o PLC escolhido.

 Clique no botão Apply Current Path e depois clique em Apply.

 Só escolher a opção download ou Upload.


Capítulo 3 – Comunicação entre Terminal e Controlador 27-187

Configurando uma comunicação USB (somente familia L7x):

Não é necessário a configuração de um drive USP no RSLinx. Logo após o inserção do cabo USB na CPU e no
computador, será requisitado a instalação automatica do drive no Windows, e logo após isso, já existirá um
canar USB ná área de trabalho do RSLinx.

Basta então configurar o RSLogix 5000 como demonstrado no ítem anterior.


Capítulo 04- Criando um projeto no RSLogix 5000 28-187

Capitulo 04 - Criando um projeto no RSLogix 5000

Após o RSLogix 5000 estar aberto, existem três maneiras de se criar um novo projeto:

1) Menu File, New

2) Teclas de atalho Crtl+N

3) Botão na caixa de ferramentas NEW.

Na proxima tela, preencha os valores solicitados e de forma a ser idêntico ao que existe no seu rack.

1) Escolha o modelo do controlador (Família e Modelo)

2) Escolha a Major Revision do seu controlador (para descobrir a revisão do seu controlador, vá até o
RSLinx, na área de trabalho do Linx [RSWho] abra o canal de comunicação que você está utilizando até
encontrar a CPU. Clique com o botão direito na CPU e escolha Device Properties. Lá será mostrado o
campo Revison [Major.Minor], e nesse caso está sendo perguntado a major revision).
Capítulo 4 –Criando um projeto no RSLogix 5000 29-187

3) Habilite somente se você estiver projetando um sistema redundante.

4) Escolha um nome para o Projeto (40 caracteres)

5) Entre com uma descrição Opcional.

6) Escolha o tamanho do chassis (rack) que você está utilizando na pratica.

7) Defina qual é o slot da CPU, lembrado que a contagem dos slots inicia-se sempre do slot 0.

8) Defini onde será salvo o projeto (Default = C:\RSLogix5000\Projetc)

Logo após a criação do seu projeto, a seguinte tela será mostrada:


Capítulo 05- Tarefas, Programas e Rotinas 30-187

Capitulo 05 - Divisão da Lógica em Tarefas, Programas e Rotinas:

O sistema operacional do controlador é um sistema multi-tarefas que está em conformidade com a IEC 61131-3.
Vejamos abaixo o que este ambiente fornece:

Tarefas para configurar a execução do controlador:


Uma tarefa que fornece o seqüenciamento e informações de prioridade para um conjunto de um ou mais
programas. Você pode configurar as tarefas como contínua, periódica ou de evento.

Programas para agrupar dados e lógicas:


Uma tarefa pode ter até 100 programas, cada um com suas próprias rotinas e tags. Uma vez que uma tarefa é
disparada (ativada), todos os programas atribuídos à tarefa executam na ordem que estiverem listadas no
Organizador do Controlador.

Os programas são úteis para projetos desenvolvidos por vários programadores. Durante o desenvolvimento, o
código em um programa, que usa os tags do programa, pode ser duplicado em um segundo programa e
minimizar a possibilidade de colisão dos nomes de tags (variáveis do projeto).

Rotinas para encapsular o código executável escrito em uma única linguagem de


programação:
As rotinas contêm o código executável. Cada programa tem uma rotina principal que é a primeira a ser
executada dentro de um programa. Use a lógica, como a instrução JSR (Jump to Subroutine), para chamar
outras sub-rotinas. Você também pode especificar uma rotina de falha do programa opcional. Podemos ter
rotinas com linguagem Ladder, Function Block, SFC, ou Texto estruturado.

Ao abrir um novo projeto, o software Rslogix5000 cria a seguinte configuração de Tarefas,programas e rotinas:

Pasta Tasks: Pasta onde serão armazenadas todas as tarefaz do projeto. As tarefas podem ser do tipo
Continuous,Periodic ou Event.

Main Task: Tarefa contínua criada automaticamente na abertura do projeto, esta tarefa é executada todo o
tempo pela CPU, podendo ser interrompida por outros tipos de tarefas.

Main Program: Programa criado automaticamente na abertura do projeto, organiza os grupos de rotinas que
precisam compartilhar as mesmas variáveis.

Main Routine: Rotina que contém as instruções executáveis (lógica ladder, diagrama de blocos de funções,
controle sequencial de funções ou texto estruturado) que controlam a(s) máquina(s) ou processo(s).
Capítulo 5 –Tarefas, Programas e Rotinas 31-187

Quando Usar Tarefas, Programas ou Rotinas:

Use estas considerações para determinar quando usar uma tarefa, programa ou rotina.

Comparação Tarefa Programa Rotina


Quantidade 32 tarefas, apenas 1 contínua 100 programas por tarefa 32767 rotinas por programa
Organiza um grupo de Contém instruções que
Determina quando as instruções
Função serão executadas
rotinas que compartilham controlam a maquina ou
tags. processo.
Uma tarefa periódica para processos
mais lentou ou com operação com Use programas para isola
Use a linguagem mais
base de tempo crítica. diferentes programadores.
Use Tarefa de evento para operações Sequencia de operação
adequada ao seu processo.
que precisem de sincronização com configurável dentro da tarefa.
um evento específico.

Especificação dos tipos de tarefas

Use estas considerações para determinar quando usar uma Tarefa Contínua, Periódica ou Evento:

Se você quiser que uma


Use uma: Descrição
lógica execute
A tarefa executa em plano de fundo.
Qualquer tempo de cpu não alocada para outras
operações é usado pela tarefa Contínua, que executa o
O tempo todo Continua
tempo todo. .
Quando uma tarefa contínua completa sua varredura, ela
reinicia imediatamente.

É executada em um intervalo de tempo específico.


Sempre que o tempo de uma tarefa expira ela:
 Interrompe todas as tarefas com prioridade
Por um período constante de tempo,
Periódica mais baixa.
ex: 200ms
 Executa uma vez
 Retorna o comando no ponto em que a tarefa
parou.
É executada somente quando um evento específico
(disparo – trigger) ocorre.
Sempre que ocorrer um disparo, a tarefa:
Imediatamente quando um evento  Interrompe todas as tarefas com prioridade
Evento
ocorrer. mais baixa.
 Executa uma vez
 Retorna o comando no ponto em que tarefa
parou.
Capítulo 05- Tarefas, Programas e Rotinas 32-187

Configuração de uma Tarefa Periódica

Uma Tarefa periódica executa automaticamente com base no intervalo pré-configurado. Após a excução da
tarefa,ela não é executada novamente até que o intervalo configurado seja transcorrido.

Dica: Se sua aplicação tiver várias comunicações (como instruções de mensagem), use uma Tarefa Periódica ao
invés de uma contínua.

Para criar Tarefas Periódicas siga os passos a seguir:

Clique com o botão direito do mouse na pasta Tasks, e selecione New Task
Capítulo 5 –Tarefas, Programas e Rotinas 33-187

1) Name: Designe um nome para sua Tarefa, ex: Controle das Bombas, Maquina de Embalagem, etc...

2) Description: Insira uma descrição sobre o que esta Tarefa executa

3) Type: Selecione o tipo de Tarefa a ser criado, no nosso caso Periodic (Periódica)

4) Period: Insira uma taxa de tempo a partir do qual a Tarefa periódica será executada. Quanto menor for
esta taxa, mais vezes esta tarefa será executada em um espaço de tempo.

Você pode configurar uma taxa Period maior para Tarefas que controlam processos mais lentos quanto à sua
necessidade de frequência de execução. Com isso, o controlador fica com mais tempo para executar Tarefas
que tenham uma necessidade de execução mais frequente, otimizando o processamento de programa.

5) Priority: Embora o projeto possa conter múltiplas Tarefas, o controlador executa somente uma Tarefa
por vez.

Se uma Tarefa Periódica for disparada enquanto outra estiver em execução, a prioridade de cada Tarefa dirá ao
controlador o que fazer.

Quanto menor o múmero inserido, maior será o nível de prioridade. A Tarefa de menor prioridade será 15 e a
de maior prioridade será 1.

6) Watchdog: Cada Tarefa contém um temporizador “Watchdog” que especifica o tempo máximo que a
Tarefa permanece em execução. Se a duração da Tarefa ultrapassar este tempo, a cpu dispara uma
falha majoritária.

O tempo de Watchdog vai de 1ms a 2.000.0000 ms (2000 segundos). O valor default é 500ms

O Watchdog timer inicia a contagem quando a Tarefa inicia e pára quando todos os programas dentro da Tarefa
forem concluídos.

Se a Tarefa não for concluída antes do Watchdog timer alcançar seu preset, uma falha majoritária ocorrerá na
cpu (este tempo inclui também interrupções de outras rotinas)

A falha majoritária Watchdog timeout também pode ocorrer se uma Tarefa for disparada, interrompendo outra
que está em execução (Task Overhead). Isso ocorre se uma tarefa de menor prioridade for interrompida por
uma outra Tarefa de maior prioridade, aumentando a duração da Tarefa de menor prioridade.

7) Disable Automatic Output Processing To Reduce Task Overhead:

No final da Tarefa, após a execução de todos os programas contidos nela, cpu executa uma operação de
overhead (atualização dos dados de saída da Tarefa).

Essa operação não é a mesma realizada pelo processador de I/O que é baseado em uma taxa de tempo
chamada de RPI. Isso incrementa o tempo total da tarefa, e como opção, podemos desabilitar essa operação
marcando esta caixa, reduzindo o tempo total de execução da Tarefa.

Use estas considerações para escolher como configurar o processamento de saída:


Capítulo 05- Tarefas, Programas e Rotinas 34-187
Capítulo 5 –Tarefas, Programas e Rotinas 35-187

8) Inhibit Task :A execução de cada tarefa é baseada no disparo configurado (Periódica ou evento), mas
você pode inibir o disparo usando o recurso Inhibit Task. Pode ser usado para realizar testes de “debug
” em manutenção ou start-up.

Exemplo: Durante o comissionamento de um sistema que utiliza muitas tarefas, você pode testar uma a uma
individualmente;

A) Iniba todas as Tasks, com excessão da uma que contém o processo a ser testado

B) Assim que a Task atinja o resultado esperado, retire a inibição desta e iniba uma tarefa diferente.

C) Continue o processo até que tenha testado todas elas.

Configuração de uma Tarefa do tipo Evento

Uma Tarefa tipo Evento é executada automaticamente com base na ocorrência de um evento pré-programado.
Após a execução da Tarefa, ela não é executada novamente até que o evento ocorra de novo.

Cada Tarefa de evento requer um disparo específico que define quando a Tarefa deve ser executada. Para
demonstração, iremos criar uma Tarefa de evento disparada como

“ EVENT Instruction Only “.

Para criar Tarefas tipo Event siga os passos a seguir:

Clique com o botão direito do mouse na pasta Tasks, e selecione New Task
Capítulo 05- Tarefas, Programas e Rotinas 36-187

No campo type selecione Event, e no campo Trigger selecione EVENT Instruction Only, a tela aparecerá como
se segue:

1) Type: Selecione o tipo de Tarefa a ser criado, no nosso caso Event (Evento)

2) Trigger: Selecione o tipo de disparo, ou seja, qual tipo de evento irá disparar a execução desta tarefa.
Nesta demonstração usaremos o Trigger EVENT Instruction Only.

3) Execute Task if No Event Occurs Within : Selecione este checkbox se você quiser que a Tarefa de
evento execute ao final do período especificado mesmo sem a ocorrência do evento. Isto é, podemos
configurar a Tarefa para executar automaticamente ao final do período especificado se a condição de
Trigger falhar.

Para que a Tarefa seja executada será necessário o uso da instrução EVENT, como no exemplo abaixo:
Capítulo 5 –Tarefas, Programas e Rotinas 37-187

Configuração de um Programa

Para criar programas, clique com o botão direito na Tarefa e selecione New Program:

A seguinte janela de configuração será exibida:

1) Name: Designe um nome para o programa

2) Description: Insira um descritivo sobre a função do programa, melhorando assim a documentação so


projeto.

3) Schedule in: Selecione de qual Task seu programa fará parte.

4) Inhibit Program: Caso seja marcado este checkbox, a execução deste projeto será inibida.

5) Synchronize Redundancy Data after Execution: Marcando este checkbox, os dados serão
sincronizados com o sistema de redundância no final da execução desta tarefa. (Apenas para sistemas
com redundância de cpu)
Capítulo 05- Tarefas, Programas e Rotinas 38-187

Configuração de uma Rotina

Para criar programas, clique com o botão direito na Tarefa e selecione New Routine:

A seguinte janela de configuração será exibida:

1) Name: Designe um nome para sua Rotina.

2) Description: Insira um descritivo sobre a função da Rotina, melhorando assim a documentação so


projeto.

3) Type: Escolha qual a linguagem utilizada para sua rotina, as opções são Diagrama Ladder, Sequential
Function Chart (SFC), Function Block Diagram (FBD) e Structured Text. Neste treinamento iremos
trabalhar apenas com Diagrama Ladder.

4) In Program or Phase: Escolha de qual programa sua rotina fará parte.

5) Oper Routine: Marque este checkbox se você quiser que a rotina se abra para ser edidata após sua
criação/configuração.
Capítulo 5 –Tarefas, Programas e Rotinas 39-187

Resumo das especificações do sistema:

Uma CPU pode conter 32 Tarefas:

 1 tarefa contínua

 31 tarefas Periódicas ou Evento


Capítulo 06- Tags, Arrays e Estruturas 40-187

Capítulo 6 – Tags, Arrays e Estruturas

Toda vez eu precisamos acessar um dado, I/O ou outra informação do ControlLogix, fazemos isso através de
uma TAG.

Tag é uma etiqueta que endereça uma área de memória.

Para criarmos uma tag, são necessárias 2 informações:

 Nome, podendo conter até 40 caracteres.

 Tipo, que identifica o tamanho que será alocado na memória.

Escopo de uma TAG


Uma tag pode ser criada em 2 locais diferentes: Controller Tag ou Program Tag.
Capítulo 6 –Tags, Array e Estruturas 41-187

Escopo Global

As tags armazenadas na pasta Controller Tag são consideradas tags de escopo GLOBAL, porque podem ser
acessadas por qualquer tarefa, programa ou rotina. Tags de I/O sempre são criadas no escopo do controlador
(GLOBAL).

Tags utilizadas para comunicação como Produtor/Consumidor, message, Axis servo Drive também devem ser
criadas no escopo do Controlador.

Escopo Local

As tags armazenadas na pasta Program Tag são consideradas tags de escopo LOCAL, porque podem ser
acessadas somente pelas rotinas que fazer parte daquele programa específico.

O procedimento para criação de tags é o mesmo independente do escopo aplicado a tag.

Criação de uma TAG

Na criação de uma tag Global ou Local, o programador deve se atentar a 2 ponto importantes nas pastas
Controller Tag ou Program Tag.

1) A tela é dividida em 2 abas: Monitor Tags e Edit tags. As tags só poderão ser criadas e/ou modificadas
na aba Edit. Para alterar os valores das tags, utilize a Aba Monitor.

2) Na parte superior da Tela, um campo Show limita (filtra) a amostragem dos diferentes tipos de tags.
Isso significa que, se o programador não está encontrando uma respectiva tag, pode ser porque ela
está sendo filtrada, portanto “escondida” dos olhos do programador.

OBS.: Um resumo de informações será mostrado no lado direito (Properties) – Ver 19


Capítulo 06- Tags, Arrays e Estruturas 42-187

Para criar uma tag, selecione a aba Monitor, e digite o nome da tag na coluna NAME, e depois defina o tipo
dessa tag na coluna TYPE. Para fazer a seleção do tipo, digite o tipo na coluna correspondente, ou clique sobre
o botão que tem “...” e uma janela com a lista de todas as tags disponíveis será mostrada.

Tag Base e Tag Alias

Alias é um símbolo para um determinado endereço de entrada ou de saída. Quando está entrada ou saída é
energizada, o tag com alias /símbolo também será energizada.

As tags alias ajudam o programador a descobrir de forma rápida e simples ao que se refere o endereço utilizado
em uma instrução. Veja exemplos: Inicialmente, o programador não sabe do que se trata os endereços
mostrados. Na segunda linha, o programador já tem a visão geral do projeto e do que significa os endereços de
I/O utilizados.
Capítulo 6 –Tags, Array e Estruturas 43-187

A seguir vamos verificar como fazer um alias utilizando o RSLogix5000.

Na pasta Edit Tags, digite o nome da tag na coluna “Tag Name”, depois defina na coluna “Alias For” a qual
endereço a tag criada será associada.

Array

Array é uma matriz, de elementos de memória que pode assumir até 3 dimensões, estes elementos podem ser
do tipo SINT, INT, DINT, REAL e etc.

Observe a tabela abaixo:

Perceba que os campos na cor cinza estão


classificados como não utilizados. Isso
significa que nada mais pode acessar essas
áreas de memória.

Isso representa uma “perda” dessa memória.


Como fazer então para minimizar essa
perda?

Array!

Veja um array criado:

De acordo com a informação anterior, gastaríamos 6 DINT´s para a criação dessas 6 INT´s, pois cada INT
ocuparia somente ½ DINT... Desperdício!

Ao criar um array ao invés de tags individuais, verifique como ficou sua memória:
Capítulo 06- Tags, Arrays e Estruturas 44-187

Um array pode ter 3 dimensões, dependendo do tipo de “tabela” que se deseja montar. Veja as estruturas de
cada dimensão:

Dependendo da dimensão escolhida, os seguinte dados podem ser armazenados como uma tabela:

Veja como ficaria as composições de linha, coluna e profundidade na criação das tabelas:
Capítulo 6 –Tags, Array e Estruturas 45-187

A seguir vamos verificar como fazer um array utilizando o RSLogix5000.

Na pasta Edit Tags, digite o nome da tag na coluna “Tag Name”, depois defina o tipo desta tag na coluna “Type”,
neste momento a janela abaixo será exibida:

Basta agora escolher quantos elementos haverá em cada dimensão (Dim0, Dim1, Dim2).

Tag Estruturada

A Tag Estruturada é um conjunto de tags que tem por finalidade otimizar a memoria do controlador, estas tags
podem conter dados de todos os tipos de tag base (ex. SINT, DINT, REAL, BOOL) ou também dados
estruturados.

A seguir vamos verificar como fazer uma tag estruturada utilizando o RSLogix5000.

Na árvore do projeto clique com o botão direito sobre a pasta “User Defined”, selecione a opção “New Data
Type”, conforme a figura abaixo.

Após selecionada a opção acima, aparecerá a seguinte tela:


Capítulo 06- Tags, Arrays e Estruturas 46-187

Vejamos uma aplicação pratica de uma tag estruturada.

Suponha o tanque a seguir: Nele, medimos diversas variaveis como nível, temperatura, valvula de vapor, tempo
de sobretemperatura, etc.

Seria simples criar tags normais para o controle desse tanque da seguinte maneira:

 Level = real

 Temperature = real

 Steam_Valve_State = Bool

 Timer_Over_Temperature = timer

O problema passa a ser maior quando a seguinte situração é verdadeira:

Seriam muitas tags criadas para solucionar o problema. É fato que a criação de array´s facilitaria todo o
processo, mas ainda não seria a melhor maneira. Para resolver isso, criaremos uma tag estruturada. Veja:
Capítulo 6 –Tags, Array e Estruturas 47-187

Criamos dessa maneira não uma Tag, mas sim uma estutura. Após a criação dessa estrutura (ou tipo de tag
definida pelo usuário) podemos criar as tags de cada tanque, porém com uma facilidade e agilidade sem
comparações:

Uma vez criada a estrutura, se for necessário mexer nas tags dentro da estrutura, todas as tags já criadas serão
automaticamente modificadas. A partir desse ponto, se novos tanques forem adicionados ao processo, sejam
eles quantos forem, basta criar novas tags do tipo TANK.
Capítulo 08 – Testando e descarregando um Projeto 48-187

Capitulo 7 – Testando e descarregando um Projeto


Configurando a comunicação do RSLogix 5000

Seu projeto no RSLogix5000 deve ser informado qual o caminho deverá seguir para chegar até o controlador
físico no seu rack.

1) Abra o menu Communication, Who Active. Uma tela como essa será mostrada:

2) Abra o drive de comunicação escolhido (Serial, Ethernet, USB) e localize a CPU na qual se deseja
descarrerar o programa.

3) Clique sobre a CPU escolhida e clique no botão Set Project Path. Após clicado, a barra de ferramentas
intitulada de Path (Camiho) deverá mostrar um caminho até a CPU desejada.

4) Feche a tela Who Active.


Capítulo 8 – Testando e descarregando um Projeto 49-187

Comandos DownLoad, UpLoad, Go Online, Go Offline

Se você desejar descarregar seu projeto que está no computador (RSLogix5000) para seu PLC, você então
precisa fazer um Download.

1) Para realizar isso no RSLogix5000, localize a caixa de


ferramente Online, como mostrado acima.

2) Clique no botão ao lado da palabra OffLine, um menu será


aberto.

3) Escolha a opção Download. Vá confirmando até que o seu


processo termine o download e esteja em online.

Se você deseja pegar o projeto que já está no seu PLC e trazê-lo para seu computador, então você precisa fazer
um Upload.

Repita o processo mostrado acima, porém agora escolha a opção Upload. Cuidado: Se você realizar um upload
com um projeto aberto no RSLogix5000 que não seja o mesmo, o software pedirá para salvar e fechar o projeto
atual ou sobrescrever. Então muito cuidado para não perder o projeto aberto.
Capítulo 08 – Testando e descarregando um Projeto 50-187

Controlando os modos de Operação do Controlador

Verifique no índice o ítem “Seleção do Modo de Operação do Controlador”. Utilizando a chave de no frontal da
CPU, você escolhe as opções PROG, REM/PRO, RUN, REM/RUN.

Porém há uma maneira de realizar a troca do modo de operação utilizando o software RSLogix5000. Para que
isso possa ser possível, sua chave deve obrigatoriamente estar na posição REM.

Quando você estiver um On-line após a realização do


download, como mostrado anteriormente, seu processador
deverá estar em uma das quatro posições existente.

Para chavear essas posições, basta clicar no mesmo botão


que fizemos o download e escolher a nova posição.

Você irá perceber que só é possível chavear via software entre


as posições REM/RUN e REM/PROG.
Capítulo 09 – Instruções de Bit 51-187

Capitulo 8 - Instruções Binárias


(XIC, XIO, OTE, OTL, OTU, ONS)

Introdução Use as instruções binárias (tipo relé) para monitorar e


controlar o status dos bits.

Examinar Se Energizado (XIC)

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:


Dados Binários BOOL tag bit para ser testado

Descrição: A instrução XIC examina os dados binários para ver se estão


energizados.
Flags de Status Aritmético: Não afetados
Condições de Falha: nenhuma

Execução da Lógica
Ladder:

Condição: Ação:
pré-varredura A saída da condição da linha é definida como falsa.
entrada da condição da linha for falsa A saída da condição da linha é definida como falsa.
Capítulo 09 – Instruções de Bit 52-187

Exemplo de Lógica
Ladder:

Exemplo 1 se Sensor_1 estiver energizado,isto


habilitará a próxima instrução (a saída da
condição da linha é verdadeira)

Exemplo 2 Se S:V estiver energizado (isto indica que um overf low


ocorrreu),isto habilitará a próxima instrução ( a saída da
condição da linha é verdadeira

Examinar Se Energizado (XIO)

Operandos de Lógica Operando: Tipo: Formato: Descrição:


Ladder Dados Binários BOOL tag bit para ser testado

Descrição: A instrução XIO examina os dados binários para ver se foram


desenergizados.

Flags de Status Aritmético: Não Afetado.

Condições de Falha: Nenhuma

Execução da Lógica
Ladder :

Condição: Ação:
pré-varredura A saída da condição da linha é definida como falsa.
entrada da condição da linha for falsa A saída da condição da linha é definida como falsa.
Capítulo 09 – Instruções de Bit 53-187

Exemplo de Lógica Ladder :

Exemplo 1 Se Sensor_1 for desenergizado, isto isto habilitará a


próxima instrução (a saída da condição da linha é verdadeira).

Exemplo 2 Se S:V for desenergizado (indica que nenhum overflow ocorreu),


isto habilitará a próxima instrução (a saída da condição da linha
é verdadeira).
Capítulo 09 – Instruções de Bit 54-187

A instrução OTE energiza ou desenergiza o dado binário.


Energizar Saída (OTE)

Operandos de Lógica Operando: Tipo: Formato: Descrição:


Ladder Dados Binários BOOL tag bit para ser energizado
. ou desenergizado

Descrição: Quando a instrução OTE está habilitada, o controlador


energiza o dado binário. Quando a instrução OTE está
desabilitada, o controlador desenergiza o dado binário

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura O dado binário está desenergizado. A saída da condição da linha é definida


. como falsa.

entrada da condição da linha for falsa O dado binário está desenergizado. A saída da condição da linha é definida .
como falsa.

entrada da condição da linha for verdadeira O dado binário está energizado. A saída da condição da linha está definida . .
como verdadeira.

Exemplo de Lógica
Ladder :

Quando habilitada, a instrução OTE energiza (acende) Lampada_1. Quando desabilitada, a instrução OTE desenergiza (apaga)
Lampada_1.
Capítulo 09 – Instruções de Bit 55-187

A instrução OTL energiza (com retenção) o dado binário.


Energizar Saída com Retenção (OTL)

Operandos de Lógica Operando: Tipo: Formato: Descrição:


Ladder Dados Binários BOOL tag bit a ser energizado

Descrição: Quando habilitada, a instrução OTL energiza o dado binário.


O dado binário permanece energizado até ser
desenergizado, geralmente por uma instrução OTU.
Quando desabilitada, a instrução OTL não muda o status do
dado binário.

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica
Ladder :

Condição: Ação:

pré-varredura O dado binário não é modificado. A saída da condição da linha é definida .


como falsa.

entrada da condição da linha for falsa O dado binário não é modificado. A saída da condição da linha é definida
. como falsa.

entrada da condição da linha for verdadeira O dado binário está energizado. A saída da condição da linha está definida .
como verdadeira.

Exemplo de Lógica
Ladder :

Quando habilitada, a instrução OTL energiza Lampada_1. Este bit permanece energizado até ser
desenergizado, geralmente por uma instrução OTU.
Capítulo 09 – Instruções de Bit 56-187

A instrução OTU desenergiza (com retenção) o dado


Desenergizar Saída com Retenção
binário.
(OTU)

Operandos de Lógica Operando: Tipo: Formato: Descrição:


Ladder Dados Binários BOOL tag bit para ser desenergizado

Descrição: Quando habilitada, a instrução OTU desenergiza o dado


binário. Quando desabilitada, a instrução OTU não muda o
status do dado binário.

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica
Ladder :

Condição: Ação:

pré-varredura O dado binário não é modificado. A saída da condição da linha é definida .


como falsa.

entrada da condição da linha for falsa O dado binário não é modificado. A saída da condição da linha é definida
. como falsa.

entrada da condição da linha for verdadeira O dado binário está desenergizado. A saída da condição da linha está .
definida como verdadeira.

Exemplo de Lógica Ladder :

Quando habilitada, a instrução OTU desenergiza Lampada_1.


Capítulo 09 – Instruções de Bit 57-187

A instrução ONS habilita ou desabilita o restante da linha,


dependendo do status do bit de armazenamento.
Monoestável (ONS)

Operandos de Lógica Operando: Tipo: Formato: Descrição:


Ladder Bit de BOOL tag Bit de armazenamento
armazenamento interno . Armazena a
interno entrada da condição da .
. linha desde a última vez
. que a instrução foi executada.

Descrição: Quando habilitada e o bit de armazenamento está


desenergizado, a instrução ONS habilita o restante da linha.
Quando habilitada ou quando o bit de armazenamento está
energizado, a instrução ONS desabilita o restante da linha.

Flags de Status Aritmético: Não afetados


Condições de Falha: Nenhuma

Condição: Ação:

pré-varredura O bit de armazenamento está energizado para prevenir um disparo . .


inválido durante a primeira varredura. A saída da condição da linha é .
definida como falsa.

entrada da condição da linha for falsa O bit de armazenamento é desenergizado. A saída da condição da linha é . .
definida como falsa. .
Capítulo 09 – Instruções de Bit 58-187

Geralmente, você antecede a instrução ONS com uma


Exemplo de Lógica instrução de entrada porque realiza a varredura da instrução
Ladder :
ONS quando a mesma está habilitada e quando está
desabilitada para que a mesma opere corretamente. Uma
vez que a instrução ONS está habilitada, a condição de
entrada de linha deve ser desenergizada ou o bit de
armazenamento deve ser desenergizado para a instrução
ONS ser habilitada novamente.

Em qualquer varredura para a qual o Botão_1 está desenergizado ou o Bit_Armazenamento está


energizado, esta linha não tem efeito. Em qualquer varredura para a qual o Botão_1 está
energizado e o Bit_Armazenamento está desenergizado, a instrução ONS energiza o
Bit_Armazenamento e a instrução ADD incrementa a soma (ADD) em 1. Durante o período em
que o Botão_1 permanece energizado, a soma permanece no mesmo valor. O
Botão_1 deve ir de desenergizado para energizado novamente para que a soma seja
incrementada novamente.
Capítulo 10 – Construindo um Diagrama Ladder 59-187

Capitulo 10 - Construindo um Diagrama Ladder

Dê um clique sobre a linha END (a linha será marcada pela cor azul). Clique sobre a instrução a seguir na
barra de ferramentas de instruções.

(Botão RUNG)

Jul/17 - Rev.00
Capítulo 10 – Construindo um diagrama 60-187

Dê um clique sobre a instrução desejada na barra de ferramentas de instruções, nesse caso sendo um
XIC.

Proceda da mesma forma para a inserção de mais instruções. Note que para a próxima instrução sempre
será inserida a frente da instrução marcada conforme figura abaixo.
Capítulo 10 – Construindo um Diagrama Ladder 61-187

Após a inserção das instruções, deve-se atribuir os endereços correspondentes às mesmas. Para tanto,
dê um duplo-clique sobre o ponto de interrogação e defina o endereçamento conforme a figura a seguir.

Uma outra forma de inserir instruções é através da digitação do mnemônico das mesmas. Dê um duplo-
clique sobre o número da linha a ser editada (a linha será marcada com a letra “e”-edição). Digite o
mnemônico das intruções separados por um espaço em branco. Para finalizar, tecle “Enter”.
Capítulo 10 – Construindo um diagrama 62-187

Após a inserção das instruções, deve-se atribuir os endereços correspondentes às mesmas. Para tanto,
dê um duplo-clique sobre o ponto de interrogação e defina o endereçamento conforme a figura a seguir.

Para criar um paralelo (branch), marque a instrução sobre a qual será colocado o paralelo e clique em
(Rung Branch) na barra de ferramentas de instruções. Clique sobre uma das laterais do “Branch” e
arraste para a posição desejada.
Capítulo 10 – Construindo um Diagrama Ladder 63-187

Outra maneira interessate de criar um paralelo após já ter criado o primeiro, é clicando com o botão
direito sobre o canto inferiror esquerdo do branch e selecionar Add_Brach_Level.

Para inserir instruções dentro do paralelo, proceda da mesma forma que em uma linha simples. Clique e
arraste a instrução desejada para dentro do Branch.
Capítulo 10 – Construindo um diagrama 64-187

Verificando um projeto:

Para verificar a sintaxe de todo o controlador, ou seja, de todos os programas simultâneamente, clique
em (Verify Controller). Após está verificação você poderá ter duas situações que são:

 Não ocorrer nenhum erro, ou seja sua lógica ladder está OK (eliminação das letras “e”
ao lado das linhas).

 Caso tenha algum erro aparecerá na parte inferior uma janela com a relação dos erros
que ocorreram, conforme figura abaixo corrija estes erros e faça uma nova verificação.
Capítulo 10 – Construindo um Diagrama Ladder 65-187

Para editar um programa quando o controlador estiver no


Edição ON-LINE
modo Rem-Run, em primeiro lugar deve-se:

 Marcar a linha que será alterada e clicar no botão Start Rung


Edits (ou dar um duplo-clique na linha que será editada).

Esse procedimento faz uma cópia exata acima da linha para


que a mesma possa ser modificada. Nessa cópia, por exemplo
podemos colocar mais um contato.
Capítulo 10 – Construindo um diagrama 66-187

Depois de editada, marque a linha e clique no botão Accept


Pending Rung Edit ou no botão Accept Pending Program
Edits. . Esse comando irá verificar se não existem erros de
sintaxe.

O primeiro botão verifica se não existem erros de sintaxe na


linha o segundo testa também se não existem erros de sintaxe,
mas em todas as alterações do programa.

Quando você executa esse procedimento a letra i vira I senão


existir erros na linha ou no programa.

Nesse momento o botão Test Program Edits é habilitado e


ele serve para testar se a alteração que foi feita está realmente
correta

Após clicar nele a nova linha com as alterações passa a


rodar e a linha original deixa de rodar. Podemos verificar
isso pela mudança de lugar da cor na lateral do Ladder.
Capítulo 10 – Construindo um Diagrama Ladder 67-187

Se a alteração ficou correta deve-se clicar no botão


Assemble Program Edits que serve para confirmar as
alterações. Esse procedimento faz com que suma a linha orinal e
permanessa apenas a nova linha.

Podemos também executar os três procedimentos vistos


anteriormente para alteração em OnLine em uma única operação
para isto devemos clicar no botão Finalize All Edits in Program.

Depois do teste se a alterações não foram corretas deve-se


clicar no botão Untest Program Edits que faz com que a linha
original volta a ser axecutada.

Os botões Cancel Program Edits e Cancel Pending


Program Edits servem para cancelar as alterações.
Capítulo 10 – Construindo um diagrama 68-187

Em primeiro lugar, devemos inserir uma linha normalmente e


Incluir uma Linha em ON-LINE editarmos a nova linha com as novas instruções.

Depois da nova linha pronta, devemos seguir os mesmos


passos quando editamos uma linha em ON-LINE, ou seja:

Verificar se não existem erros de sintaxe com o comando


Accept Pending Rung Edit ou no botão Accept Pending
Program Edits..

Testar a nova linha (clicando no botão Test Program Edits)


e, por último, confirmar a linha com o comando Assemble
Program Edits.

Pronto, a nova linha ja está definitivamente no programa.


Capítulo 10 – Construindo um Diagrama Ladder 69-187

Para deletar uma linha do Ladder deve-se marcar a linha e


Deletar uma Linha em ON-LINE clicar no botão Delete do computador. A letra D aparece ao
lado da linha indicando que a linha será deletada.

Testar a nova linha clicando no botão Test Program Edits


e confirmar com o botão Assemble Programs Edits.

Pronto a linha foi deletada definitivamente do programa.


Capítulo 10 – Construindo um Diagrama Ladder 71-187

Documentando um Programa Ladder

O que você aprenderá: Após concluir este capítulo, você será capaz de
inserir/alterar descrições de endereço/instrução, comentários
de linha e símbolos.

Descrição de Endereço Pode-se anexar uma descrição a um endereço. Ou seja,


sempre que o endereço for utilizado, a descrição aparecerá
anexada ao mesmo.

Como fazer?  Clique com o botão direito sobre o endereço a ser


comentado;
 Selecione “Edit Man Operand Description”;
Capítulo 10 – Construindo um Diagrama Ladder 72-187

 Digite a descrição e clique no ícone abaixo, para aceitar


a descrição digitada.

 Para cancelar a descrição clique no ícone abaixo.

Comentário de Linha Pode-se anexar um comentário a uma linha do programa


ladder.

Como fazer ?  Clique com o botão direito sobre a linha a ser


comentada;
 Selecione “Edit Rung Comment”;
Capítulo 10 – Construindo um Diagrama Ladder 73-187

 Digite o comentário e clique no ícone abaixo, para


aceitar.

 Para cancelar o comentário clique no ícone abaixo.


Capítulo 10 – Construindo um Diagrama Ladder 74-187

Exercício A

1- Criar um projeto com o nome:__________________


2- Criar um arquivo de programa com o nome:___________ e uma rotina com o nome________.
3- Na rotina acima, criar um ladder equivalente ao diagrama elétrico abaixo:

CH4 C1 C1 TM

TM

CH5 C1

C1 L1 L2 L3

Anotações do Aluno:
Capítulo 10 – Construindo um Diagrama Ladder 75-187

Exercício B

1- Dentro do projeto criado anteriormente, criar uma rotina com o nome FURADEIRA
2- Na rotina FURADEIRA, criar um ladder para controlar a furadeira abaixo:
a- Com FC1 acionado e um pulso dado no botão BL1 deve-se ligar o motor de descida M1 , juntamente com o
motor de giro M2 .
b- Quando FC2 for acionado, deve-se desligar o motor M1 , manter o motor M2 ligado e ligar o motor de
subida, M3 .
c- Ao acionarmos FC1 , deve-se desligar os motores M2 e M3

M1

M2
FC1

FC2

BL1
M3
Capítulo 10 – Construindo um Diagrama Ladder 76-187

Exercício C

1) Criar uma rotina com o nome Liga/Desliga.


2) Elaborar um programa ladder para acionar a saída 15 quando for dado um pulso no botão 5 do
simulador.
3) Desligar a mesma saída quando for dado um novo pulso no botão 5.
4) Utilizar somente as instruções: XIC, XIO, OTE, OTL, OTU e ONS.
Capítulo 11 – Controle de Fluxo do Programa 77-187

Capitulo 11 - Controle de Fluxo do Programa

As instruções JSR, SBR e RET direcionam o


processador para ir à outra sub-rotina dentro do
programa Ladder, executa a lógica dessa sub-rotina e
retorna para o ponto de onde foi chamada.

A instrução JSR direciona o processador para o


arquivo de sub-rotina específico.

A instrução SBR é utilizada na primeira linha da sub-


rotina. A utilização dessa instrução é opcional.

A instrução RET finaliza a sub-rotina.

Utilize sub-rotinas para programar lógicas que podem


ser acessadas por múltiplos arquivos de programa ou para
organizar seu projeto. A sub-rotina economiza memória pois a
programação será feita apensa uma vez.

No programa Ladder, é necessário que se faça uma


chamada para a sub-rotina. Por exemplo, para que a rotina
“Motores AC” seja executado, é necessário programar uma
instrução JSR na “Rotina Principal” direcionada para a rotina
“Motores AC”, caso contrário, a rotina “Motores AC” não será
executada.
Capítulo 12 – Instruções de Temporização 78-187

Capitulo 12 - Instruções de Temporização


(TON, TOF, RTO)

Introdução Operações de controle de temporizador e contador baseado


no tempo

Temporizador na Energização (TON)

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:


Temporizador Timer tag Estrutura do timer
Preset DINT imediato Quanto tempo para
. retardar
Accum DINT imediato totaliza os ms que o . .
. temporizador contou

Descrição: Quando habilitada, a instrução TON acumula tempo até que:


 a instrução TON seja desabilitada
 o .ACC .PRE
A base de tempo é sempre 1 ms. Por exemplo, para um
temporizador de 2 segundos, entre com 2000 para o valor
.PRE.
Quando a instrução TON é desabilitada, o valor .ACC é
desenergizado.

Estrutura:

Mnemônico Tipo de dados: Descrição:


.EN BOOL O bit habilitado indica que a instrução TON está habilitada.
.TT BOOL O bit de temporização indica que a operação de temporização está em andamento.
.DN BOOL O bit “executado” está verdadeiro quando .ACC .PRE.
.PRE BOOL O valor pré-selecionado especifica o valor (unidades de 1 ms) que o acumulador deve .
atingir antes da instrução energizar o bit .DN.
.ACC BOOL O valor acumulado especifica a quantidade de milissegundos que transcorreram .
desde o momento em que a instrução TON foi habilitada.
Capítulo 12 – Instruções de temporização 79-187

Carta de Tempo de Execução:

Flags de Status Aritmético: Não afetados

Condições de Falha:

Execução de Lógica Ladder :


Capítulo 12 – Instruções de Temporização 80-187

Exemplo de Lógica Ladder:

Quando o limit_switch_1 é energizado, olight_2 fica aceso durante 180 ms (o timer_1 está cronometrando). Quando o timer_1.acc
atinge 180, o light_2 desenergiza e o light_3 energiza. O Light_3 permanece energizado até que a instrução TON seja desabilitada.
Se o limit_switch_1 for desenergizado enquanto otimer_1 está cronometrando, o light_2 desenergiza.

Quando o Botao_1 é energizado, Lampada_1 fica aceso durante 180 ms (o Temporizador_1 está cronometrando). Quando o
Temporizador_1.acc atinge 180, Lampada_1 desenergiza e Lampada_2 energiza. Lampada_2 permanece energizado até que a
instrução TON seja desabilitada. Se o Botao_1 for desenergizado enquanto Temporizador_1 está cronometrando, Lampada_1
desenergiza.
Capítulo 12 – Instruções de temporização 81-187

Temporizador na Desenergização (TOF)

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Temporizador Timer tag Estrutura do timer

Preset DINT imediato Quanto tempo para


. retardar

Accum DINT imediato totaliza os ms que o . .


temporizador contou
Descrição: A instrução TOF é um temporizador não retentivo que
acumula tempo quando a instrução está habilitada (entrada
da condição da linha é falsa).

Quando habilitada, a instrução TOF acumula tempo até


que:

 a instrução TOF seja desabilitada


 o .ACC .PRE
A base de tempo é sempre 1 ms. Por exemplo, para um
temporizador de 2 segundos, entre com 2000 para o valor
.PRE.

Estrutura:

Mnemônico Tipo de dados: Descrição:

.EN BOOL O bit habilitado indica que a instrução TOF está habilitada.

.TT BOOL O bit de temporização indica que a operação de temporização está em andamento.

.DN BOOL O bit “executado” está verdadeiro quando .ACC .PRE.

.PRE BOOL O valor pré-selecionado especifica o valor (unidades de 1 ms) que o acumulador deve .
atingir antes da instrução desenergizar o bit .DN.

.ACC BOOL O valor acumulado especifica a quantidade de milissegundos que transcorreram .


desde o momento em que a instrução TOF foi habilitada.
Capítulo 12 – Instruções de Temporização 82-187

Carta de Tempo de Execução:

Não afetados

Flags de Status Aritmético:

Condições de Falha:

Execução de Lógica

Ladder :
Capítulo 12 – Instruções de temporização 83-187
Capítulo 12 – Instruções de Temporização 84-187

Exemplo de Lógica Ladder:

Quando o Botao_1 é desenergizado, Lampada_1 fica energizado durante 180 ms (o timer_2 está cronometrando). Quando
Temporizador_1..ACC atinge 180ms , Lampada_1 desenergiza e Lampada_2 energiza. Lampada_2 permanece energizado até que a
instrução TOF seja habilitada. Se Botao_1 for energizado enquanto o Temporizador_1 estivert cronometrando, Lampada_1 desenergiza.
Capítulo 12 – Instruções de temporização 85-187

A instrução RTO é um temporizador retentivo que acumula


Temporizador Retentivo Na Energização
tempo quando a instrução é habilitada.
(RTO)

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Temporizador Timer tag Estrutura do timer

Preset DINT imediato Quanto tempo para


. retardar

Accum DINT imediato totaliza os ms que o . .


Descrição: temporizador contou
Quando habilitada, a instrução RTO acumula tempo até ser
desabilitada. Quando a instrução RTO é desabilitada, ela
retém o valor ACC. Deve-se remover o valor .ACC,
tipicamente com uma instrução RES fazendo referência à
mesma estrutura TIMER.

Estrutura:

Mnemônico Tipo de dados: Descrição:

.EN BOOL O bit habilitado indica que a instrução TON está habilitada.

.TT BOOL O bit de temporização indica que a operação de temporização está em andamento.

.DN BOOL O bit “executado” está verdadeiro quando .ACC .PRE.

.PRE BOOL O valor pré-selecionado especifica o valor (unidades de 1 ms) que o acumulador deve .
atingir antes da instrução energizar o bit .DN.

.ACC BOOL O valor acumulado especifica a quantidade de milissegundos que transcorreram .


desde o momento em que a instrução TON foi habilitada.
Capítulo 12 – Instruções de Temporização 86-187

Carta de Tempo de Execução:

Flags de Status Aritmético: Não afetados

Condições de Falha:

Execução de Lógica

Ladder :
Capítulo 12 – Instruções de temporização 87-187

Exemplo de Lógica Ladder:

Quando o Botao_1 é energizado, Lampada_1 fica ligado durante 180 ms (o Temporizador_1 está cronometrando). Quando o Temporizador_1
atinge 180, Lampada_1 apaga e Lampada_2 acende. A Lampada_2 permanece até que o Temporizador_1 seja resetado. Se o Botao_1 for
desenergizado enquanto o Temporizador_1 está cronometrando, Lampada_1 permanece aceso. Quando o Botao_2 está energizado, a
instrução RES reseta o timer_3 (remove os bits de
status e o valor .ACC).
Capítulo 12 – Instruções de Temporização 88-187

Exercício D

1- Criar uma rotina com nome SEMÁFORO .

2- Dentro do arquivo SEMÁFORO criar um programa de tal forma que ao apertarmos uma chave retentiva do
simulador, o semáforo energize suas lâmpadas na sequência indicada pelas setas e nos intervalos de tempo
indicados na fig. abaixo:

OBS: A chave retentiva do simulador quando desligada deve desligar todas as lâmpadas do semáforo.

9 segundos
3 segundos
6 segundos
Capítulo 13 – Instruções de Contagem 89-187

Capitulo 13 - Instruções de
Contador
(CTU,CDT)

Introdução A instrução CTU conta em ordem crescente.

Contagem Crescente (CTU)

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Contador Counter tag Estrutura do


. contador

Preset DINT imediato Quanto tempo para


. retardar

Accum DINT imediato totaliza os ms que o . .


Descrição: temporizador contou
Quando habilitada e o bit .CU estiver desenergizado, a
instrução CTU incrementa o contador em um. Quando
habilitada e o bit .CU estiver energizado ou quando
desabilitada, a instrução CTU retém o seu valor .ACC.

Estrutura:

Mnemônico Tipo de dados: Descrição:

CU BOOL O bit de habilitação do contador crescente indica que a instrução CTU está habilitada.

.DN BOOL O bit indica que .ACC .PRE.

OV BOOL O bit de overf low indica que o contador ultrapassou o limite superior de .
2.147.483.647. O contador volta para -2.147.483.648 e inicia a contagem crescente .
novamente.

UN BOOL O bit de underf low ind ica que o contador u ltrapassou o limite inferior de .
- 2.147.483.647 . O con tador volta para 2.147.483.647 e inicia a contagem .
decrescente novamente.

PRE DINT O valor pré-programado especifica o valor que o acumulado deve atingir antes da .
instrução energiza r o bit .DN.

.ACC DINT O valor acumulado especif ica o número de transições que a instrução contou.

Jul/17 - Rev.00
Capítulo 13 – Instruções de Contagem 90-187

Carta de Tempo de Execução:

O valor acumulado continua a incrementar, mesmo depois que o bit .DN é energizado. Para
remover o valor acumulado, use uma
instrução RES que se refira à estrutura do contador ou escreva 0 no valor acumulado.

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

Pré-Varredura O bit .CU está energizado para prevenir incrementos inválidos durante a primeira
. varredura do programa. A saída da condição da linha é definida como falsa.

entrada da condição da linha for falsa O bit .CU é desenergizado. A saída da condição da linha é definida como falsa.
Capítulo 13 – Instruções de Contagem 91-187
Capítulo 13 – Instruções de Contagem 92-187

Exemplo de Lógica Ladder:

Depois que o Botao_1 passa de falso para verdadeiro 10 vezes, o bit .DN é energizado e Lampara_1 é energizado. Se Botao_1 continuar a mudar de falso para veradeiro,
o Contador_1 continuará a incrementar a sua contagem e o bit .DN permanecerá energizado. Quando Botao_2 estiver habilitado, a instrução RES resetará o Contador_1
(desenergizará os bits de status e o valor .ACC) e Lampada_1 será desligado.

A instrução CTD conta no sentido decrescente, ou seja,


decrementa o seu acumulado
Contagem Decrescente (CTD)

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Contador Counter tag Estrutura do


. contador

Preset DINT imediato Valor mínimo de


. contagem

Accum DINT imediato totalda contagem. .


Valor inicial é . normalmente 0

Descrição: A instrução CTD é tipicamente usada com uma instrução CTU


que refere à mesma estrutura do contador. Quando
habilitada e o bit .CD estiver removido, a instrução CTD
decrementa o contador em um. Quando habilitada e o bit
.CD estiver energizado ou quando desabilitada, a instrução
CTD retém o seu valor .ACC.

Estrutura:

Mnemônico Tipo de dados: Descrição:

CU BOOL O bit de habilitação do contador decrescente indica que a instrução CTD está
. habilitada.
Capítulo 13 – Instruções de Contagem 93-187

DN BOOL O bit executado indica que .ACC .PRE.

OV BOOL O bit de overf low indica que o contador ultrapassou o limite superior de .
2.147.483.647. O contador volta para -2.147.483.648 e inicia a contagem . novamente.

UN BOOL O bit de underf low indica que o contador ultrapassou o limite inferior de .
- 2.147.483.647 . O contador volta para 2.147.483.647 e inicia a contagem .
decrescente novamente.

.PRE DINT O valor pré-programado especifica o valor que o acumulado deve atingir antes da .
instrução energizar o bit .DN.

ACC DINT O valor acumulado especifica o número de transições que a instrução contou.
Capítulo 13 – Instruções de Contagem 94-187

Carta de Tempo de Execução:

O valor acumulado continua a decrementar mesmo depois que o bit .DN for energizado. Para
remover o valor acumulado, use uma instrução RES que se refira à estrutura do contador ou
escreva 0 no valor acumulado.

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura O bit .CD está energizado para prevenir decrementos inválidos durante a .
primeira varredura do programa. A saída da condição da linha é definida como . falsa.

entrada da condição da linha for falsa O bit .CD é desenergizado. A saída da condição da linha é def in ida como falsa.
Capítulo 13 – Instruções de Contagem 95-187
Capítulo 13 – Instruções de Contagem 96-187

Exercício E

1- Criar uma rotina com nome RELÓGIO.

2- Programar um relógio para funcionar conforme descrição abaixo:

1min 1hora 24horas


60 segs 60 min 23:59:59 00:00:00

a - O relógio inicia a operação ao apertarmos uma chave retentiva do simulador.

b - Na tag “Horas” o programa deverá mostrar as horas do relógio

c - Na tag “Minutos” o programa deverá mostrar os minutos do relógio

Anotações do Aluno:
Capítulo 14 – Instruções Aritméticas 97-187

Capitulo 14 – Instruções
Aritméticas
(ADD,SUB,MUL,DIV,SQR,NEG,CPT)

Introdução As instruções de cálculo/matemática executam as


operações aritméticas usando uma expressão ou uma
instrução aritmética especificada.

A instrução ADD soma Source A e Source B e coloca o


Adição (ADD)
resultado no Destino

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source A SINT tag Valor a ser


soma . INT
constante do a source B. . .
DINT . .
REAL

Source B SINT tag Valor a ser . .


INT constante somado à source A . .
DINT . .
REAL

Destination SINT tag Tag para armazenar .

. INT constante o resultado .

. DINT . .
. REAL
Capítulo 14 – Instruções Aritméticas 98-187

A instrução ADD soma Source A e Source B e coloca o

Descrição: resultado no Destino.

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira Destination = Source A + Source B

Exemplo de Lógica Ladder:

Quando habilitada, a instrução ADD soma Valor_A com Valor B e coloca o


resultado na tag Resultado
Capítulo 14 – Instruções Aritméticas 99-187

A instrução SUB subtrai Source B de Source A e coloca o


Subtração (SUB)
resultado no Destination.

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source A SINT tag Valor a partir


do . INT
constante quel se subtrai . .
DINT source B . .
REAL

Source B SINT tag Valor a ser .

. INT constante subtraido a .

. DINT source A .

. REAL

Destination SINT tag Tag para armazenar .

. INT constante o resultado .

. DINT .
. REAL

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira Destino = Fonte B - Fonte A

Exemplo de Lógica Ladder:

Quando habilitada, a instrução SUB subtrai Valor_B de


Valor_A e coloca o resultado na tag Resultado.
Capítulo 14 – Instruções Aritméticas 100-187

A instrução MUL multiplica Source A por Source B e coloca o


Multiplicação (MUL)
resultado no Destination.

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source A SINT tag Valor


do . INT constante
multiplicado . .
DINT . .
REAL

Source B SINT tag Valor do .

. INT constante multiplicador .

. DINT .

. REAL

Destination SINT tag Tag para armazenar .

. INT constante o resultado .

. DINT .
. REAL

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira Destino = Fonte A x Fonte B

Exemplo de Lógica Ladder:


Capítulo 14 – Instruções Aritméticas 101-187

Quando habilitada, a instrução MUL mutiplica Valor_A por Valor_B e


coloca o resultado na tag Resultado

A instrução DIV divide Source A por Source B e coloca o


Divisão (DIV)
resultado no Destination.

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source A SINT tag Valor


do . INT constante
dividendo . .
DINT . .
REAL

Source B SINT tag Valor do .

. INT constante divisor .

. DINT .

. REAL

Destination SINT tag Tag para armazenar .

. INT constante o resultado .

. DINT .
. REAL

Flags de Status Aritmético: Não afetados

Condições de Falha:

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.


Capítulo 14 – Instruções Aritméticas 102-187

se a cond ição da linha for verdadeira Destination = Fonte B / Fonte A

Descrição: Se Destination não for REAL, a instrução trabalha com a


porção fracionária do resultado da seguinte forma

Observação:

Se Source B (o divisor) for zero:

Ocorre uma falha de advertência:

- Tipo 4: falha de programa

- Código 4: overflow aritmético

Exemplo de Lógica Ladder:

Quando habilitada, a instrução MUL mutiplica


Capítulo 14 – Instruções Aritméticas 103-187

Qando habilitada, a instrução DIV divide Valor_A por Valor_B

e coloca o resultado na tag Resultado

A instrução SQR calcula a raiz quadrada de Source e


Raiz Quadrada (SQR)
coloca o resultado no destino.

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source SINT tag calcula


a . INT constante
raiz quadrada . . DINT
desse valor . . REAL

Destination SINT tag Tag para armazenar .

. INT constante o resultado .

. DINT .
. REAL

Flags de Status Aritmético: Não afetados.

Condições de Falha: Nenhuma.

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira

Exemplo de Lógica Ladder:

Quando habilitada, a instrução SQR calcula a raiz quadrada de

Valor_A e coloca o resultado em Resultado .


Capítulo 14 – Instruções Aritméticas 104-187

A instrução NEG altera o sinal da Fonte e coloca o resultado


Negação (NEG)
no Destino.

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source SINT tag Valor a


ser . INT
constante transformado em . DINT
negativo. . . REAL

Destination SINT tag Tag para armazenar .

. INT constante o resultado .

. DINT .
. REAL

Descrição: Se você tornar negativo um valor negativo, o resultado será


positivo.
Se você tornar negativo um valor positivo, o resultado será
negativo.

Flags de Status Aritmético: Não afetados.

Condições de Falha: Nenhuma.

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira Destination = 0 Source

Exemplo de Lógica Ladder:

Quando habilitada, a instrução NEG altera o sinal algébrico de

Valor_A e coloca o resultado em Resultado .


Capítulo 14 – Instruções Aritméticas 105-187

A instrução CPT realiza as operações aritméticas definidas


no campo Expression.
Cálculo (CPT)
Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Dest SINT tag Tag


para . INT
constante armazenar o . .
DINT resultado. . .
REAL

Destination SINT tag uma expressão .

. INT constante composta por tags .

. DINT e/ou constantes .


. REAL separados por .
operadores aritméticos
Descrição: A instrução CPT realiza as operações aritméticas definidas
na expressão. Quando habilitada, a instrução CPT avalia a
expressão específica e coloca o resultado no Destino.

A instrução CPT é um pouco mais lenta e usa mais


memória que a execução de outras instruções de
cálculo/matemática. A vantagem da instrução CPT é que
ela permite a inserção de instruções complexas em umam
única instrução.

DICA:Não há limite para o comprimento de uma


expressão.

Flags de Status Aritmético: Não afetados.

Condições de Falha: Nenhuma.

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira A instrução avalia a Expressão e coloca o resultado no Destino.

Exemplo de Lógica Ladder:


Capítulo 14 – Instruções Aritméticas 106-187

Quando habilitada, a instrução CPT executa: Valor_A multiplicado por 5 e divide esse resultado pelo resultado do Valor_B dividido por 7 e coloca
o resultado final em Resultado.

Operadores válidos
Capítulo 14 – Instruções Aritméticas 107-187

Exercício F

Desenvolver uma lógica ladder para controle de produção das Esteiras A, B, C e Total Produzido, conforme
descrição abaixo:

Mostrar nas tag’s “Esteira_A”, “Esteira_B”, “Esteira_C” a produção máxima que cada esteira poderá alcançar
no período de 1 hora.

Mostrar na tag “Total” a produção total máxima no período de 1 dia.


Capítulo 15 – Instruções de Comparação 109-187

Capitulo 15 - Instruções de
Comparação
(CMP,EQU,GEQ,GRT,LEQ,LES,LIM,MEQ,NEQ)

Introdução As instruções de comparação permitem a


comparação de valores através do uso de uma
expressão ou instrução de comparação específica

Se você quiser: Use esta instrução:

Comparar valores usando uma expressão CMP

Testar se dois valores são iguais EQU

Testar se um valor é maior ou igual a um segundo valor GEQ

Testar se um valor é maior do que um segundo valor GRT

Testar se um valor é menor ou igual a um segundo valor LEQ

Testar se um valor é menor que um segundo valor LES

Testar se um valor está entre outros dois valores LIM

Testar se dois valores são iguais passando por uma mascara MEQ

Testar se dois valores diferentes NEQ


Capítulo 15 – Instruções de Comparação 110-187

Igual a (EQU) A instrução EQU compara se Source_A é igual a Source_B.

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source A SINT tag Valor a


ser . INT
constante comparado com . DINT
source B. . . REAL

Source B SINT tag Valor a ser .

. INT constante comparado com .

. DINT Source A .
. REAL

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira


Capítulo 15 – Instruções de Comparação 111-187

Exemplo de Lógica Ladder:

Se Valor_A for igua a Valor_B, a saída da condição da linha é definida como

verdadeira.

Maior ou igual a (GEQ) A instrução EQU compara de Source A é maior ou igual a


Source B.
Capítulo 15 – Instruções de Comparação 112-187

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source A SINT tag Valor a


ser . INT
constante comparado com . DINT
source B. . . REAL

Source B SINT tag Valor a ser .

. INT constante comparado com .

. DINT Source A .
. REAL

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira

Exemplo de Lógica Ladder:


Capítulo 15 – Instruções de Comparação 113-187

Se Valor_A for maior ou igual a Valor_B, a saída da Condição da linha é definida como verdadeira.

Maior que A (GRT)


Capítulo 15 – Instruções de Comparação 114-187

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source A SINT tag Valor a


ser . INT
constante comparado com . DINT
source B. . . REAL

Source B SINT tag Valor a ser .

. INT constante comparado com .

. DINT Source A .
. REAL

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira

Exemplo de Lógica Ladder:


Capítulo 15 – Instruções de Comparação 115-187

Se Valor_A for mair que Valor_B, a instrução EQU torna a saida verdadeira

A instrução EQU compara se Source_A é menor ou igual a


Menor ou igual a (LEQ)
Source_B.
Capítulo 15 – Instruções de Comparação 116-187

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source A SINT tag Valor a


ser . INT
constante comparado com . DINT
source B. . . REAL

Source B SINT tag Valor a ser .

. INT constante comparado com .

. DINT Source A .
. REAL

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira


Capítulo 15 – Instruções de Comparação 117-187

Exemplo de Lógica Ladder:

Se Valor_A for menor ou igual que Valor_B, a saída da linha é definida como verdadeira.
Capítulo 15 – Instruções de Comparação 118-187

A instrução LES compara se Source_A é menor que


Menor que (LES)
Source_B.

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Source A SINT tag Valor a


ser . INT
constante comparado com . DINT
source B. . . REAL

Source B SINT tag Valor a ser .

. INT constante comparado com .

. DINT Source A .
. REAL

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira


Capítulo 15 – Instruções de Comparação 119-187

Exemplo de Lógica Ladder:

Se Valor_A for menor que Valor_B, a saída da linha é definida como verdadeira.
Capítulo 15 – Instruções de Comparação 120-187

A instrução LIM testa se o valor de teste está entre o inferior


Limite (LIM)
e limite superior.

Operandos de Lógica Ladder: Operando: Tipo: Formato: Descrição:

Low Limit SINT tag Valor do


limite . INT
constante inferior . .
DINT . .
REAL

Test SINT tag Valor de teste .

. INT constante .

. DINT . .
REAL

High Limit SINT tag Valor do limite .

. INT constante superior .

. DINT . .
Descrição: A instrução LIM testa .se o valor de teste
REALestá dentro da faixa entre o Limite inferior e o

Limite superior, assim:

Os inteiros com sinal mudam do número positivo máximo para o número negativo
máximo quando o bit mais significativo estiver energizado. Por exemplo, em inteiros com
16 bits (Tipo INT), o inteiro positivo máximo é 32.767, que é representado em
hexadecimal como 16#7FFF (bits 0 a 14 estão todos energizados). Se você incrementar
esse número em um, o resultado é 16#8000 (bit15 é energizado). Para inteiros com
sinal, o hexadecimal 16#8000 é igual ao decimal -32767.

Incremente a partir desse ponto até que todos os bits estejam energizados e terminem
em 16#FFFF, que é igual ao decimal -1.

Isto pode ser representado como uma linha de número circular.


Capítulo 15 – Instruções de Comparação 121-187

Limite Inferior Limite Inferior Limite Inferior Limite Superior


A instrução é verdadeira se o valor de teste for A instrução é verdadeira se o valor de teste for

igual ou situar-se entre os limites superior e inferior igual ou estiver fora da faixa entre os limites

superior e inferior.

Flags de Status Aritmético: Não afetados

Condições de Falha: Nenhuma

Execução de Lógica Ladder :

Condição: Ação:

pré-varredura A saída da condição da linha é definida como falsa.

se a cond ição da linha for verdadeira


Capítulo 15 – Instruções de Comparação 122-187

Exemplo de Lógica Ladder:

Exemplo 1

Limite Inferior Limite Superior

Quando 0 é o valor 100, Lampada_1 é energizada.

Exemplo 2

Limite Inferior Limite Superior

Quando o valor 0 ou valor 100, light_1 é energizada.


Capítulo 15 – Instruções de Comparação 123-187

Exercício G

1 - Criar uma rotina com nome SOMADOR.

2 - Programar um somador para funcionar conforme descrição abaixo:

a- O somador inicia a operação ao apertarmos uma chave retentiva do simulador.

b- O somador deverá somar valores de 10 em 10 a cada 2seg. , iniciando no zero.

c- Quando o valor for maior que 150, zerar e iniciar o ciclo novamente.

d- Mostrar o resultado na Tag “Somador”.


Capítulo 15 – Instruções de Comparação 124-187

Exercício H

Utilizando a instrução LIM, repetir o exercício C (Semáforo) utilizando somente 1 temporizador.


Capítulo 16 – Instruções e Ferramentas para Manutenção 125-187

Capítulo 16 – Instruções e Ferramentas para Manutenção

Instruções GSV e SSV:

Como não há arquivo de status no ControlLogix


(diferentemente do CLP-5 e SLC-500), as
informações de Sistema são obtidas através das
instruções GSV/SSV. Essas instruções obtêm e definem
os dados do sistema do controlador que estão
armazenados nos objetos.

Parâmetros:
Class Name – Nome da classe do objeto.
Instance Name – Nome da instância, quando o objeto
requer uma.
Attribute Name – Atributo do objeto. O tipo de dado
depende do atributo selecionado.
Dest – Tag de destino para os dados do atributo. Source –
Tag contendo os dados que você copiará para o atributo.

Quando habilitada, a instrução GSV recupera a


informação específica e a coloca no destino. Quando
habilitada, a instrução SSV define o atributo
especificado com os dados da fonte (Source).
Ao inserir uma instrução GSV/SSV, o software de
programação exibe as classes válidas de objeto, os nomes
a instância e os nomes de atributo para cada instrução.
Para a instrução GSV, você pode obter valores para
todos os atributos disponíveis. Para a instrução SSV, o
software exibe somente aqueles atributos cuja configuração
é permitida.
Capítulo 16 – Instruções e Ferramentas para Manutenção 126-187

Para consultar a lista de classes, objetos e


atributos que estão disponíveis, digite “GSV/SSV Objects”
no folder de Índice do menu Help do RSLogix5000 ou
consulte as páginas seguintes deste manual:

Para informações sobre este Consulte a


objeto: página:
AXIS 180
CONTROLLER 189
CONTROLLERDEVICE 189
CST 191
DF1 192
FAULTLOG 195
MESSAGE 195
MODULE 197
MOTIONGROUP 198
PROGRAM 199
ROUTINE 200
SERIALPORT 200
TASK 203
WALLCLOCKTIME 204

Ao inserir uma instrução GSV/SSV, você especifica


o objeto e atributo que você acessará. Em alguns casos,
haverá mais do que uma opção do mesmo tipo de objeto,
de forma que você também possa especificar o atributo do
objeto. Por exemplo, no objeto TASK, pode-se acessar uma
das tarefas existentes na sua aplicação pelo nome da Tarefa.
Atenção ao definir tags para a Fonte ou Destino das
instruções GSV/SSV. Se o tamanho da Fonte ou Destino
for muito pequeno, a instrução não executa e uma falha
de advertência é registrada. Por exemplo, o atributo
MajorFaultRecord (Registro de Falha Grave) do objeto
PROGRAM, requer um tipo de dado DINT[11].
Capítulo 16 – Instruções e Ferramentas para Manutenção 127-187

Exemplo de Programação:

O exemplo abaixo busca informações de tempo de


scan do programa onde a instrução está executando
(THIS) e armazena nas tags
“UltimoScan” e “MaximoScan”.

Como preencher os operandos:


Capítulo 16 – Instruções e Ferramentas para Manutenção 128-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 129-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 130-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 131-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 132-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 133-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 134-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 135-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 136-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 137-187

Acesso ao objeto CONTROLLLER


Capítulo 16 – Instruções e Ferramentas para Manutenção 138-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 139-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 140-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 141-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 142-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 143-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 144-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 145-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 146-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 147-187

Acesso aoobjeto Modulo


Capítulo 16 – Instruções e Ferramentas para Manutenção 148-187

Acesso ao objeto MotionGroup


Capítulo 16 – Instruções e Ferramentas para Manutenção 149-187

Acesso ao objeto PROGRAM


Capítulo 16 – Instruções e Ferramentas para Manutenção 150-187

Acesso ao objeto ROUTINE


Capítulo 16 – Instruções e Ferramentas para Manutenção 151-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 152-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 153-187

Acesso ao objeto TASK


Capítulo 16 – Instruções e Ferramentas para Manutenção 154-187

Acesso ao objeto WALLCLOCKTIME


Capítulo 16 – Instruções e Ferramentas para Manutenção 155-187

Exercício I

1. Criar uma rotina com o nome Status.


2. Utilizar as instruções GSV/SSV para ler/ajustar o valor da data/hora do
controlador.
Capítulo 16 – Instruções e Ferramentas para Manutenção 156-187

Force

Use um force para suprimir um valor de entrada ou saída:


Capítulo 16 – Instruções e Ferramentas para Manutenção 157-187

Inserção de Force

Use a guia Monitor Tags da janela Tags ou use a janela Ladder para inserir forces.

Inserção de Forces a Partir da Janela Tags

A partir da janela Tags, guia Monitor Tags, você pode forçar um valor de duas maneiras.
Você pode:
- forçar um valor de dados inteiro. Para valores SINT, INT, DINT e REAL, você pode forçar
todos os bits como uma entidade (o valor inteiro);
- forçar os bits individuais dentro de um valor SINT, INT ou DINT
Capítulo 16 – Instruções e Ferramentas para Manutenção 158-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 159-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 160-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 161-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 162-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 163-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 164-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 165-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 166-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 167-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 168-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 169-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 170-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 171-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 172-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 173-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 174-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 175-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 176-187
Capítulo 16 – Instruções e Ferramentas para Manutenção 177-187
Exercícios Extras 178-187

Exercícios Extras

Exercício Extra A

Criar uma lógica Ladder para implementar um pisca-pisca cujo funcionamento segue o gráfico abaixo:

Ligado

Desligado
3.6s 1.2s Tempo (s)
Exercícios Extras 179-187

Exercício Extra B

Criar a lógica de um semáforo para um cruzamento de vias e de dois sinalizadores para pedestres, conforme
figura abaixo:

Vermelho 9 segs.
Amarelo 3 segs.

Verde 6 segs.
Exercícios Extras 180-187

Exercício Extra C

1 - Criar uma rotina com nome TANQUE .

2 - Programar a válvula de controle XSV 132 do tanque de água abaixo para funcionar da seguinte forma:

a- O tanque será cheio constantemente do nível 0 a 10 metros. A cada metro de água o

sensor de nível do tanque SN 1, manda um pulso para o CLP.

b- Quando o nível do tanque atingir 10 metros, a válvula XSV 132, será liberada durante 10 segundos (tempo
suficiente para esvaziar o tanque).

c- Mostrar na tag “Nível” o nível do tanque e na tag “Tempo” o tempo de válvula aberta.

d- Quando o tempo de válvula aberta for aumentando, mostrar na tag “Nível” o decréscimo do nível do tanque.

10
09
08
07
06
05
04 XSV 132
03
02
01
00 SN 1
Exercícios Extras 181-187

Exercício Extra D
1) Criar uma rotina que simule uma linha de produção de montagem de compressores de ar. Esta
linha possui 4 estações distintas: Montagem, Teste, Acabamento e Embalagem.
Cada equipamento permanece em cada estação durante de 10 segundos.

Durante o tempo de realização das tarefas, deverá ser sinalizado nas lâmpadas amarelas se a
tarefa está sendo realizada ou não.

O botão para inicio do processo é o botão número 1 (botão verde) e o botão de


parada/emergência é o número 8 (botão vermelho).

O deslocamento entre as estações é feito através de uma esteira, e demora 5 segundos para
atingir a próxima estação.
Exercícios Extras 182-187

Exercício Extra E
1) Criar uma rotina com o nome motores.
2) Programar o acionamento seqüencial para a partida de 5 motores a cada 2 seg. da seguinte forma:
3) Quando pressionarmos o botão 2 do simulador, acionaremos a cada 2 seg. um motor que deverá ser
representado pelas lâmpadas 7, 8, 9, 10 e 11.
4) Quando pressionarmos o botão 3 do simulador, deveremos desligar os motores acima acionados na
mesma seqüência após 3 seg.
Exercícios Extras 183-187

Exercício Extra F

Desenvolver uma rotina onde cada andar pode chamar o elevador apertando o botão do andar específico.

Uma vez que algum botão foi chamado, nenhum outro andar pode ser chamado.

Indicar o elevador se deslocando de um andar para outro através das lâmpadas.

Obs: 1 segundo por andar

10

3
Exercícios Extras 184-187

Exercício Extra G

Controle de nível de Tanque

Criar uma lógica que com o tanque vazio, apertar o botão liga para que a cada 1 segundo o tanque encha 10
litros, até chegar ao preset determinado pela variável Preset. Após chegar ao preset, o tanque tem que manter o
nível para um erro de +/- 50 litros, como na figura. Para fazer isso, abrir ou fechar a válvula VAL1 e quando esta
estiver aberta, indicar com a lâmpada 7. Quando a válvula estiver aberta, o tanque esvaziará 20 litros por
segundo.

Água

+ 50 litros

Preset 500 litros

- 50 litros

VAL1
Exercícios Extras 185-187

Exercício Extra H

Expressão Complexa

Montar a expressão abaixo e atribuir valores conforme abaixo:

V1  V 2 V 3
Total  Neg V 5
V4

V1[DINT]=10

V2[DINT]=10

V3[SINT]=5

V4[INT]=2

V5[REAL]=12

TOTAL[REAL]=?
Exercícios Extras 186-187

Exercício Extra I

MÁQUINA DE REFRIGERANTE

Criar um arquivo ladder com o nome MAQREFRI

Ao pressionarmos o botão 0, o valor R$ inserido na varável VALOR deverá aparecer na variável DISPLAY 1.

Ao selecionarmos um produto, caso o crédito seja suficiente, o valor do produto deverá ser debitado da variável
DISPLAY 1 e uma lâmpada LOCAL:4:O.DATA.7 deverá acender por 3s, indicando que o produto foi
disponibilizado. Caso o crédito não seja suficiente, a lâmpada LOCAL:0:O.DATA.7 deverá piscar.

Quando um produto não estiver disponível, a lâmpada correspondente deverá acender.

OBS: É possível adicionar mais créditos através da variável VALOR.

Produto Valor Estoque

1 – Refrigerante R$ 1,00 5

2 – Chocolate R$ 2,00 5

3 – Energético R$ 3,00 5

Potrebbero piacerti anche