Buscar

CONTROL LOGIX2

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

CONTROL LOGIX2.pdf
Instruções Gerais 
dos Controladores 
Logix5000™
1756-Lx, 1769-Lx, 1789-Lx, 1794-Lx, 
PowerFlex 700S
 
Manual de Referência
Informações Importantes 
ao Usuário
Por causa da diversidade de usos dos produtos descritos nesta 
publicação, os responsáveis pela aplicação e usos deste equipamento 
de controle devem certificar-se de que todas as etapas necessárias 
foram tomadas para garantir que cada aplicação e uso cumpram todos 
os requisitos de desempenho e segurança, incluindo todas as leis, 
regulamentações, códigos e padrões aplicáveis. Em nenhum momento 
a Rockwell Automation (Allen-Bradley) será responsável por danos 
indiretos ou que possam vir acontecer como resultado do uso ou a 
aplicação destes produtos.
As ilustrações, gráficos, exemplos de programas e de layout mostrados 
neste manual são apenas para fins ilustrativos. Visto que há diversas 
variáveis e requisitos associados a qualquer instalação em especial, a 
Rockwell Automation/Allen-Bradley não assume a responsabilidade 
(incluindo a responsabilidade por propriedade intelectual) pelo uso real 
baseado nos exemplos mostrados nesta publicação.
A publicação SGI-1.1, Diretrizes de Segurança para Aplicação, 
Instalação e Manutenção dos Dispositivos de Controle Eletrônico 
(disponível no escritório local da Rockwell Automation/Allen-Bradley), 
descreve algumas diferenças importantes entre os equipamentos 
eletrônicos e dispositivos eletromecânicos, que devem ser levadas em 
consideração ao utilizar produtos como os descritos nesta publicação.
É proibida a reprodução, parcial ou total, deste manual sem a 
permissão por escrito da Rockwell Automation.
Ao longo deste manual, usamos observações a fim de chamar a sua 
atenção para algumas considerações de segurança. As anotações a 
seguir acompanham declarações que ajudam você a identificar, evitar 
um perigo potencial e a reconhecer as suas conseqüências:
Allen-Bradley, ControlLogix, DH+, Logix5000, Logix5550, CLP-2, CLP-3, CLP-5 RSLinx, RSLogix 5000, RSNetWorx e SLC são 
marcas da Rockwell Automation
ControlNet é uma marca registrada da ControlNet International, Ltda.
Ethernet é uma marca registrada da Digital Equipment Corporation, Intel e Xerox Corporation.
ATENÇÃO
!
Identifica as informações sobre práticas ou 
circunstâncias que podem causar danos pessoais ou 
a morte, danos à propriedade ou perdas econômicas.
IMPORTANTE Identifica as informações críticas para aplicação e 
compreensão bem-sucedidas do produto.
Suporte da Rockwell 
Automation
Antes de entrar em contato com a Rockwell Automation para 
assistência técnica, sugerimos que você revise as informações sobre 
as localizações de falhas contidas nesta primeira publicação.
Caso o problema persista, telefone para o representante local da 
Rockwell Automation ou entre em contato com a Rockwell 
Automation por:
Telefone Estados 
Unidos/Canadá
1.440.646.5800
Outras 
Localidades
Você pode obter o número do telefone em seu 
país através da Internet:
1. Acesse o site http://www.ab.com
2. Clique em Product Support 
(http://support.automation.rockwell.com)
3. Em Support Centers, clique em Contact 
Information
Internet ⇒ 1. Acesse o site http://www.ab.com
2. Clique em Product Support 
(http://support.automation.rockwell.com)
Notas:
Resumo das Alterações
Introdução A versão desse documento contém informações novas e atualizadas. 
Informações Atualizadas Este documento contém as seguintes alterações:
• Agora, este documento inclui texto estruturado, além da lógica 
ladder e bloco de funções.
• O início de cada capítulo lista as linguagens disponíveis para as 
instruções descritas no capítulo.
• A tabela de execução de cada instrução inclui uma condição 
postscan.
Este documento contém estas alterações específicas:
Alteração: Consulte o 
capítulo:
As instruções BAND, BOR, BXOR e BNOT foram adicionadas a este 
manual para que o bitwise e as instruções de lógica estejam no 
mesmo manual. Elas foram removidas do Logix5000 Controllers 
Process Control and Drives Instruction Set Reference Manual, 
publicação 1756-RM006.
6
A fonte para uma instrução SIZE pode ser um tag do array. Você não 
precisa mais especificar o primeiro elemento no array.
7
Adição da instrução JXR que somente era compatível com os 
controladores SoftLogix5800
10
Adição das instruções EOT, SFP e 
SFR
10
O Apêndice A contém informações extras sobre retenção de IREFs e 
OREFs. IREFs e OREFs podem usar o mesmo nome de tag sem alterar 
os valores de IREFs para um scan.
A
Um novo apêndice explica como programar em texto estruturado. C
1 Publicação 1756-RM003F-PT-P - Maio 2002
2 Resumo das Alterações 
Notas:
Publicação 1756-RM003F-PT-P - Maio 2002
Localizador de Instrução
Onde Encontrar uma 
Instrução
Use este localizador para encontrar detalhes de referência sobre as 
instruções do Logix (as instruções em cinza estão disponíveis em 
outros manuais). Este localizador também lista as linguagens de 
programação que estão disponíveis para as instruções.
Se o localizador listar: A instrução está documentada em:
um número de página este manual
controle de processo Manual de Referência do Conjunto de Instruções dos Inversores e Controle de Processo dos 
Controladores Logix5000, publicação 1756-RM006
controle de posicionamento (motion) Logix5000 Controllers Motion Instruction Set Reference Manual, publicação 1756-RM007
Instrução: Local: Linguagens:
ABL 16-5 lógica ladder
texto estruturado
ABS 5-26 lógica ladder
texto estruturado
bloco de funções
ACB 16-8 lógica ladder
texto estruturado
ACL 16-10 lógica ladder
texto estruturado
ACOS 13-10 texto estruturado
ACS 13-10 lógica ladder
bloco de funções
ADD 5-5 lógica ladder
texto estruturado
bloco de funções
AFI 10-22 lógica ladder
AHL 16-12 lógica ladder
texto estruturado
ALM controle de 
processo
texto estruturado
bloco de funções
AND 6-21 lógica ladder
texto estruturado
bloco de funções
ARD 16-15 lógica ladder
texto estruturado
ARL 16-18 lógica ladder
texto estruturado
ASIN 13-8 texto estruturado
ASN 13-8 lógica ladder
bloco de funções
ATAN 13-12 texto estruturado
ATN 13-12 lógica ladder
bloco de funções
AVE 7-35 lógica ladder
AWA 16-22 lógica ladder
texto estruturado
AWT 16-26 lógica ladder
texto estruturado
BAND 6-33 texto estruturado
bloco de funções
BNOT 6-40 texto estruturado
bloco de funções
BOR 6-35 texto estruturado
bloco de funções
BRK 11-5 lógica ladder
BSL 8-2 lógica ladder
BSR 8-5 lógica ladder
BTD 6-11 lógica ladder
BTDT 6-14 texto estruturado
bloco de funções
BTR (tipo MSG) 3-2 lógica ladder
texto estruturado
BTW (tipo MSG) 3-2 lógica ladder
texto estruturado
BXOR 6-38 texto estruturado
bloco de funções
CLR 6-17 lógica ladder
texto estruturado
Instrução: Local: Linguagens:
1 Publicação 1756-RM003F-PT-P - Maio 2002
2 Localizador de Instrução 
CMP 4-2 lógica ladder
CONCAT 17-3 lógica ladder
texto estruturado
COP 7-25 lógica ladder
texto estruturado
COS 13-4 lógica ladder
texto estruturado
bloco de funções
CPS 7-25 lógica ladder
texto estruturado
CPT 5-2 lógica ladder
CTD 2-25 lógica ladder
CTU 2-22 lógica ladder
CTUD 2-29 texto estruturado
bloco de funções
D2SD controle de 
processo
texto estruturado
bloco de funções
D3SD controle de 
processo
texto estruturado
bloco de funções
DDT 12-9 lógica ladder
DEDT controle de 
processo
texto estruturado
bloco de funções
DEG 15-2 lógica ladder
texto estruturado
bloco de funções
DELETE 17-5 lógica ladder
texto estruturado
DERV controle de 
processo
texto estruturado
bloco de funções
DFF controle de 
processo
texto estruturado
bloco de funções
DIV 5-14 lógica ladder
texto estruturado
bloco de funções
DTOS 18-7 lógica ladder
texto estruturado
DTR 12-16 lógica ladder
EOT 10-24 lógica ladder
texto estruturado
EQU 4-7 lógica ladder
texto estruturado
bloco de funções
Instrução: Local:
Linguagens:
ESEL controle de 
processo
texto estruturado
bloco de funções
FAL 7-6 lógica ladder
FBC 12-2 lógica ladder
FFL 8-8 lógica ladder
FFU 8-14 lógica ladder
FGEN controle de 
processo
texto estruturado
bloco de funções
FIND 17-7 lógica ladder
texto estruturado
FLL 7-31 lógica ladder
FOR 11-2 lógica ladder
FRD 15-9 lógica ladder
bloco de funções
FSC 7-17 lógica ladder
GEQ 4-10 lógica ladder
texto estruturado
bloco de funções
GRT 4-14 lógica ladder
texto estruturado
bloco de funções
GSV 3-29 lógica ladder
texto estruturado
HLL controle de 
processo
texto estruturado
bloco de funções
HPF controle de 
processo
texto estruturado
bloco de funções
INSERT 17-9 lógica ladder
texto estruturado
INTG controle de 
processo
texto estruturado
bloco de funções
JKFF controle de 
processo
texto estruturado
bloco de funções
JMP 10-2 lógica ladder
JSR 10-4 lógica ladder
texto estruturado
bloco de funções
JXR 10-13 lógica ladder
LBL 10-2 lógica ladder
LDL2 controle de 
processo
texto estruturado
bloco de funções
Instrução: Local: Linguagens:
Publicação 1756-RM003F-PT-P - Maio 2002
Localizador de Instrução 3
LDLG controle de 
processo
texto estruturado
bloco de funções
LEQ 4-18 lógica ladder
texto estruturado
bloco de funções
LES 4-22 lógica ladder
texto estruturado
bloco de funções
LFL 8-20 lógica ladder
LFU 8-26 lógica ladder
LIM 4-26 lógica ladder
bloco de funções
LN 14-2 lógica ladder
texto estruturado
bloco de funções
LOG 14-4 lógica ladder
texto estruturado
bloco de funções
LOWER 18-13 lógica ladder
texto estruturado
LPF controle de 
processo
texto estruturado
bloco de funções
MAAT controle de 
posicionamento 
(motion)
lógica ladder
texto estruturado
MAFR controle de 
posicionamento
lógica ladder
texto estruturado
MAG controle de 
posicionamento
lógica ladder
texto estruturado
MAH controle de 
posicionamento
lógica ladder
texto estruturado
MAHD controle de 
posicionamento
lógica ladder
texto estruturado
MAJ controle de 
posicionamento
lógica ladder
texto estruturado
MAM controle de 
posicionamento
lógica ladder
texto estruturado
MAOC controle de 
posicionamento
lógica ladder
texto estruturado
MAPC controle de 
posicionamento
lógica ladder
texto estruturado
MAR controle de 
posicionamento
lógica ladder
texto estruturado
Instrução: Local: Linguagens:
MAS controle de 
posicionamento
lógica ladder
texto estruturado
MASD controle de 
posicionamento
lógica ladder
texto estruturado
MASR controle de 
posicionamento
lógica ladder
texto estruturado
MATC controle de 
posicionamento
lógica ladder
texto estruturado
MAVE controle de 
processo
texto estruturado
bloco de funções
MAW controle de 
posicionamento
lógica ladder
texto estruturado
MAXC controle de 
processo
texto estruturado
bloco de funções
MCCP controle de 
posicionamento
lógica ladder
texto estruturado
MCD controle de 
posicionamento
lógica ladder
texto estruturado
MCR 10-18 lógica ladder
MDF controle de 
posicionamento
lógica ladder
texto estruturado
MDO controle de 
posicionamento
lógica ladder
texto estruturado
MDOC controle de 
posicionamento
lógica ladder
texto estruturado
MDR controle de 
posicionamento
lógica ladder
texto estruturado
MDW controle de 
posicionamento
lógica ladder
texto estruturado
MEQ 4-32 lógica ladder
texto estruturado
bloco de funções
MGS controle de 
posicionamento
lógica ladder
texto estruturado
MGSD controle de 
posicionamento
lógica ladder
texto estruturado
MGSP controle de 
posicionamento
lógica ladder
texto estruturado
MGSR controle de 
posicionamento
lógica ladder
texto estruturado
MID 17-11 lógica ladder
texto estruturado
Instrução: Local: Linguagens:
Publicação 1756-RM003F-PT-P - Maio 2002
4 Localizador de Instrução 
MINC controle de 
processo
texto estruturado
bloco de funções
MOD 5-18 lógica ladder
texto estruturado
bloco de funções
MOV 6-3 lógica ladder
MRAT controle de 
posicionamento
lógica ladder
texto estruturado
MRHD controle de 
posicionamento
lógica ladder
texto estruturado
MRP controle de 
controle de 
posicionamento
lógica ladder
texto estruturado
MSF controle de 
controle de 
posicionamento
lógica ladder
texto estruturado
MSG 3-2 lógica ladder
texto estruturado
MSO controle de 
controle de 
posicionamento
lógica ladder
texto estruturado
MSTD controle de 
processo
texto estruturado
bloco de funções
MUL 5-11 lógica ladder
texto estruturado
bloco de funções
MUX controle de 
processo
bloco de funções
MVM 6-5 lógica ladder
MVMT 6-8 texto estruturado
bloco de funções
NEG 5-24 lógica ladder
texto estruturado
bloco de funções
NEQ 4-37 lógica ladder
texto estruturado
bloco de funções
NOP 10-23 lógica ladder
NOT 6-30 lógica ladder
texto estruturado
bloco de funções
NTCH controle de 
processo
texto estruturado
bloco de funções
Instrução: Local: Linguagens:
ONS 1-11 lógica ladder
OR 6-24 lógica ladder
texto estruturado
bloco de funções
OSF 1-16 lógica ladder
OSFI 1-16 texto estruturado
bloco de funções
OSR 1-14 lógica ladder
OSRI 1-14 texto estruturado
bloco de funções
OTE 1-6 lógica ladder
OTL 1-7 lógica ladder
OTU 1-9 lógica ladder
PI controle de 
processo
texto estruturado
bloco de funções
PID 12-19 lógica ladder
texto estruturado
PIDE controle de 
processo
texto estruturado
bloco de funções
PMUL controle de 
processo
texto estruturado
bloco de funções
POSP controle de 
processo
texto estruturado
bloco de funções
RAD 15-4 lógica ladder
texto estruturado
bloco de funções
RES 2-33 lógica ladder
RESD controle de 
processo
texto estruturado
bloco de funções
RET 10-4 e 11-6 lógica ladder
texto estruturado
bloco de funções
RLIM controle de 
processo
texto estruturado
bloco de funções
RMPS controle de 
processo
texto estruturado
bloco de funções
RTO 2-9 lógica ladder
RTOR 2-19 texto estruturado
bloco de funções
RTOS 18-9 lógica ladder
texto estruturado
Instrução: Local: Linguagens:
Publicação 1756-RM003F-PT-P - Maio 2002
Localizador de Instrução 5
SBR 10-4 lógica ladder
texto estruturado
bloco de funções
SCL controle de 
processo
texto estruturado
bloco de funções
SCRV controle de 
processo
texto estruturado
bloco de funções
SEL controle de 
processo
bloco de funções
SETD controle de 
processo
texto estruturado
bloco de funções
SFP 10-26 lógica ladder
texto estruturado
SFR 10-28 lógica ladder
texto estruturado
SIN 13-2 lógica ladder
texto estruturado
bloco de funções
SIZE 7-50 lógica ladder
texto estruturado
SNEG controle de 
processo
texto estruturado
bloco de funções
SOC controle de 
processo
texto estruturado
bloco de funções
SQI 9-2 lógica ladder
SQL 9-10 lógica ladder
SQO 9-6 lógica ladder
SQR 5-21 lógica ladder
bloco de funções
SQRT 5-21 texto estruturado
SRT 7-40 lógica ladder
texto estruturado
SRTP controle de 
processo
texto estruturado
bloco de funções
SSUM controle de 
processo
texto estruturado
bloco de funções
SSV 3-29 lógica ladder
texto estruturado
STD 7-45 lógica ladder
STOD 18-3 lógica ladder
texto estruturado
Instrução: Local: Linguagens:
STOR 18-5 lógica ladder
texto estruturado
SUB 5-8 lógica ladder
texto estruturado
bloco de funções
SWPB 6-18 lógica ladder
texto estruturado
TAN 13-6 lógica ladder
texto estruturado
bloco de funções
TND 10-16 lógica ladder
TOD 15-6 lógica ladder
bloco de funções
TOF 2-5 lógica ladder
TOFR 2-16 texto estruturado
bloco de funções
TON 2-2 lógica ladder
TONR 2-13 texto estruturado
bloco de funções
TOT controle de 
processo
texto estruturado
bloco de funções
TRN 15-11 lógica ladder
bloco de funções
TRUNC 15-11 texto estruturado
UID 10-20 lógica ladder
texto estruturado
UIE 10-20 lógica ladder
texto estruturado
UPDN controle de 
processo
texto estruturado
bloco de funções
UPPER 18-11 lógica ladder
texto
estruturado
XIC 1-2 lógica ladder
XIO 1-4 lógica ladder
XOR 6-27 lógica ladder
texto estruturado
bloco de funções
XPY 14-6 lógica ladder
texto estruturado
bloco de funções
Instrução: Local: Linguagens:
Publicação 1756-RM003F-PT-P - Maio 2002
6 Localizador de Instrução 
Notas:
Publicação 1756-RM003F-PT-P - Maio 2002
Prefácio
Introdução Este manual é um dos diversos documentos de instrução baseado em 
Logix.
Quem Deve Utilizar este 
Manual
Este documento fornece ao programador detalhes sobre cada 
instrução disponível para um controlador baseado em Logix. Você já 
deve estar familiarizado sobre como o controlador baseado em Logix 
armazena e processa dados.
Os programadores novos devem ler todos os detalhes sobre uma 
instrução antes de usá-la. Já programadores mais experientes podem 
consultar as informações sobre as instruções para verificar os detalhes.
Tarefa/Meta: Documentos:
Programação do controlador para aplicações 
seqüenciais
Logix5000 Controllers General Instructions Reference Manual, publicação 
1756-RM003
Programação do controlador para aplicações 
de processo ou inversores 
Manual de Referência do Conjunto de Instruções dos Inversores e Controle de 
Processo dos Controladores Logix5000 , publicação 1756-RM006
Programação do controlador para aplicações 
de posicionamento (motion)
Logix5000 Controllers Motion Instructions Set Reference Manual, 
publicação 1756-RM007
Importação de um arquivo de texto ou tags 
em um projeto
Logix5000 Controllers Import/Export Reference Manual, publicação 1756-RM084
Exportação de um projeto ou tags para um 
arquivo texto
Conversão de uma aplicação CLP-5 ou 
SLC 500 para uma aplicação Logix5000
Logix5550 Controller Converting PLC-5 ou SLC 500 Logic to Logix5550 Logic Reference 
Manual, publicação 1756-RM085
Você está aqui
1 Publicação 1756-RM003F-PT-P - Maio 2002
2 Prefácio 
Objetivo do Manual Este manual fornece uma descrição de cada instrução neste formato.
Os ícones a seguir ajudam a identificar as informações específicas da 
linguagem:
Essa seção: Fornece este tipo de informação:
Nome da instrução identifica a instrução
define se a instrução é de entrada ou de saída
Operandos lista todos os operandos da instrução
Estrutura da instrução lista os valores e os bits de status de controle da instrução, se houver
Descrição descreve o uso da instrução
define quaisquer diferenças quando a instrução estiver habilitada e desabilitada, se apropriado
Flags de Status Aritmético: define se a instrução interfere ou não nos flags de status aritmético
consulte o apêndice Atributos Comuns
Condições de Falha: define se a instrução gera falhas graves ou de advertência
se necessário, define o código e o tipo da falha
Execução define a maneira como a instrução opera
EXEMPLO fornece pelo menos um exemplo de programação em cada linguagem de programação disponível
inclui uma descrição explicando cada exemplo
se disponível em lógica ladder, descreve os operandos
se disponível em bloco de funções, descreve os operandos
Os pinos mostrados no bloco de funções padrão são somente pinos básicos. A 
tabela de operandos lista todos os pinos possíveis para um bloco de funções.
se disponível em texto estruturado, descreve os operandos
Este ícone: Indica esta linguagem de 
programação:
lógica ladder
texto estruturado
bloco de funções
Publicação 1756-RM003F-PT-P - Maio 2002
Prefácio 3
Informações Comuns para 
Todas as Instruções
O conjunto de instruções do Logix5000 possui alguns atributos 
comuns:
Convenções e Termos 
Relacionados
Energizar e desenergizar
Este manual usa energizar e desenergizar para definir o status de bits 
(booleanos) e valores (não booleanos):
Se um operando ou parâmetro suporta mais do que um tipo de dados, 
os tipos de dados em negrito indicam os tipos de dados ótimos. Uma 
instrução executa mais rapidamente e requer menos memória se todos 
os operandos da instrução usarem o mesmo tipo de dados ótimo, 
geralmente, DINT ou REAL.
Condição de linha de lógica ladder 
O controlador avalia as instruções de lógica ladder com base na 
condição da linha que antecede a instrução (entrada da condição da 
linha). Com base na entrada da condição da linha e na instrução, o 
controlador define a condição da linha seguindo a instrução (saída da 
condição da linha) que, por sua vez, afeta qualquer instrução 
subseqüente.
Para obter esta informação: Consulte este apêndice:
atributos comuns apêndice Atributos Comuns define:
• flags de status aritmético:
• tipos de dados
• palavras-chaves
atributos do bloco de funções apêndice Atributos do Bloco de Funções define:
• controle do programa e operador
• modos de temporização
Este termo: Significa:
energizar o bit está energizado em 1 (ON)
um valor está energizado em um número diferente de 
zero
desenergizar o bit está desenergizado em 0 (OFF)
todos os bits em um valor são desenergizados em 0
instrução de entrada
condição da 
entrada da linha
instrução de saída
condição da 
saída da linha
Publicação 1756-RM003F-PT-P - Maio 2002
4 Prefácio 
Se a condição da entrada da linha para uma instrução de entrada for 
verdadeira, o controlador avalia a instrução e energiza a condição da 
saída da linha com base nos resultados da instrução. Se a instrução for 
avaliada como verdadeira, a condição da saída da linha é verdadeira; 
Se a instrução for avaliada como falsa, a condição da saída da linha é 
falsa.
O controlador também efetua o prescan das instruções. O prescan é 
um scan especial de todas as rotinas no controlador. O controlador 
efetua o scan de todas as rotinas e sub-rotinas principais durante o 
prescan, mas ignora os saltos que poderiam pular a execução das 
instruções. O controlador executa todas as malhas FOR e chamadas 
de sub-rotinas. Se uma sub-rotina for chamada mais do que uma vez, 
ela é executada toda vez que é chamada. O controlador usa o prescan 
de instruções de lógica ladder para resetar as E/S não retentivas e os 
valores internos.
Durante o prescan, os valores de entrada não são atuais e as saídas 
não são escritas. As condições a seguir geram a prescan:
• Passagem de modo de Programa para Operação
• Entrada automática no modo de Operação de uma condição de 
energização.
A prescan não ocorre para um programa quando:
• O programa se torna determinado enquanto o controlador está 
operando.
• O programa não é determinado quando o controlador entra no 
modo Run.
Estados do bloco de funções
O controlador avalia as instruções do bloco de funções baseado no 
estado de diferentes condições.
Condição Possível: Descrição:
prescan O prescan para as rotinas do bloco de funções é igual a das rotinas de lógica ladder. A 
única diferença é que o parâmetro EnableIn para cada instrução do bloco de funções é 
desenergizada durante a prescan. 
primeiro scan da instrução O primeiro scan da instrução se refere à primeira vez que uma instrução é executada após o 
prescan. O controlador usa o primeiro scan da instrução para ler as entradas em corrente e 
determinar o estado apropriado em que se deve estar.
primeira execução da 
instrução
A primeira operação da instrução se refere a primeira vez que a instrução executa com uma 
nova instância de estrutura de dados. O controlador usa a primeira operação da instrução 
para gerar coeficientes e outros armazenamentos de dados que não se alteram para um 
bloco de funções após o descarregamento inicial.
Publicação 1756-RM003F-PT-P - Maio 2002
Prefácio 5
Toda instrução do bloco de funções também inclui os parâmetros 
EnableIn e EnableOut:
• as instruções do bloco de funções executam normalmente 
quando o EnableIn é energizado.
• Quando o EnableIn é desenergizado, a instrução do bloco de 
funções executa a lógica da prescan, a lógica da postscan ou 
apenas pula a execução do algoritmo normal.
• O EnableOut espelha o EnableIn, porém, se a execução do
bloco de funções detecta uma condição de overflow, o 
EnableOut também é desenergizado.
• A execução do bloco de funções reinicia onde parou quando o 
EnableIn passa de desenergizado para energizado. Porém 
existem algumas instruções de bloco de funções que 
especificam funcionalidade especial, como reinicialização, 
quando o EnableIn passa de desenergizado para energizado. 
Para instruções do bloco de funções com parâmetros baseados 
no tempo, sempre quando o modo de temporização estiver no 
Oversample, a instrução sempre reiniciará onde parou quando o 
EnableIn passa de desenergizado para energizado.
Se o parâmetro EnableIn não estiver conectado, a instrução sempre 
executa como normal e o EnableIn se mantém energizado. Se 
desenergizar o EnableIn, este se alterará para energizar na próxima 
vez que a instrução executar.
IMPORTANTE Ao programar o bloco de funções, limite a amplitude das unidades 
de medida para +/-10+/-15 pois os cálculos de ponto flutuante 
interno são feitos através de um único ponto flutuante de precisão. 
As unidades de medida fora desta amplitude podem resultar em 
perda de precisão se os resultados ficarem próximos às limitações 
do único ponto flutuante de precisão (+/-10+/-38).
Publicação 1756-RM003F-PT-P - Maio 2002
6 Prefácio 
Notas:
Publicação 1756-RM003F-PT-P - Maio 2002
Conteúdo
Capítulo 1
Instruções Binárias
(XIC, XIO, OTE, OTL, OTU, ONS, 
OSR, OSF, OSRI, OSFI)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
Examinar Se Energizado (XIC) . . . . . . . . . . . . . . . . . . . . . . 1-2
Examinar Se Desenergizado (XIO) . . . . . . . . . . . . . . . . . . . 1-4
Energizar Saída (OTE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6
Energizar Saída com Retenção (OTL) . . . . . . . . . . . . . . . . . 1-7
Desenergizar Saída com Retenção (OTU) . . . . . . . . . . . . . . 1-9
Monoestável (ONS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11
Monoestável Sensível à Borda de Subida (OSR) . . . . . . . . . 1-14
Monoestável Sensível à Borda de Descida (OSF) . . . . . . . . 1-16
Monoestável Sensível à Borda de Subida com 
Entrada (OSRI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
Monoestável Sensível à Borda de Descida com 
Entrada (OSFI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-20
Capítulo 2
Instruções de Temporizador e 
Contador
(TON, TOF, RTO, TONR, TOFR, 
RTOR, CTU, CTD, CTUD, RES)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
Temporizador na Energização (TON). . . . . . . . . . . . . . . . . 2-2
Temporizador na Desenergização (TOF) . . . . . . . . . . . . . . 2-5
Temporizador Retentivo (RTO) . . . . . . . . . . . . . . . . . . . . . 2-9
Temporizador na Energização com Reset (TONR) . . . . . . . 2-13
Temporizador na Desenergização com Reset (TOFR) . . . . . 2-16
Temporizador Retentivo com Reset (RTOR) . . . . . . . . . . . . 2-19
Contador Crescente (CTU). . . . . . . . . . . . . . . . . . . . . . . . . 2-22
Contagem Decrescente (CTD) . . . . . . . . . . . . . . . . . . . . . . 2-25
Contagem Crescente/Decrescente (CTUD) . . . . . . . . . . . . . 2-29
Reset (RES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-33
Capítulo 3
Instruções de Entrada/Saída
(MSG, GSV, SSV)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
Mensagem (MSG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2
Códigos de Erro MSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7
Códigos de Erro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8
Códigos de Erro Estendido . . . . . . . . . . . . . . . . . . . . . . 3-9
Códigos de Erro do CLP e do SLC (.ERR) . . . . . . . . . . . 3-11
Códigos de Erro de Block-transfer . . . . . . . . . . . . . . . . 3-12
Especificação dos Detalhes da Configuração . . . . . . . . . . . 3-13
Especificação das Mensagens de Leitura e Escrita 
da Tabela de Dados CIP. . . . . . . . . . . . . . . . . . . . . . . . 3-14
Reconfiguração de um Módulo de E/S . . . . . . . . . . . . . 3-14
Especificar Mensagens CIP Generic. . . . . . . . . . . . . . . . 3-16
Especificação das mensagens do CLP-5. . . . . . . . . . . . . 3-17
Especificação das Mensagens do SLC . . . . . . . . . . . . . . 3-18
Especificação das Mensagens Block-transfer . . . . . . . . . 3-18
Especificação de Mensagens do CLP-3 . . . . . . . . . . . . . 3-19
Especificação das mensagens do CLP-2. . . . . . . . . . . . . 3-20
Exemplos de Configuração MSG . . . . . . . . . . . . . . . . . . . . 3-21
Especificação de Detalhes de Comunicação . . . . . . . . . . . . 3-22
Especificar um caminho . . . . . . . . . . . . . . . . . . . . . . . . 3-22
i Publicação 1756-RM003F-PT-P - Maio 2002
ii Conteúdo 
Especificar um Módulo de Comunicação ou Endereço do 
Módulo:. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-26
Escolha de uma opção de cache: . . . . . . . . . . . . . . . . . 3-27
Obtenção do Valor do Sistema (GSV) e Definição 
do Valor do Sistema (SSV) . . . . . . . . . . . . . . . . . . . . . . . . . 3-29
Objetos GSV/SSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-30
Acesso ao objeto CONTROLLER . . . . . . . . . . . . . . . . . 3-31
Acesso ao objeto CONTROLLERDEVICE . . . . . . . . . . . . 3-32
Acesso ao objeto CST. . . . . . . . . . . . . . . . . . . . . . . . . . 3-34
Acesso ao objeto DF1 . . . . . . . . . . . . . . . . . . . . . . . . . 3-35
Acesso ao objeto FAULTLOG . . . . . . . . . . . . . . . . . . . . 3-38
Acesso ao objeto MESSAGE . . . . . . . . . . . . . . . . . . . . . 3-39
Acesso ao objeto MODULE . . . . . . . . . . . . . . . . . . . . . 3-41
Acesso ao objeto MOTIONGROUP . . . . . . . . . . . . . . . 3-42
Acesso ao objeto PROGRAM . . . . . . . . . . . . . . . . . . . . 3-43
Acesso ao objeto ROUTINE . . . . . . . . . . . . . . . . . . . . . 3-44
Acesso ao objeto SERIALPORT . . . . . . . . . . . . . . . . . . . 3-44
Acesso ao objeto TASK . . . . . . . . . . . . . . . . . . . . . . . . 3-46
Acesso ao objeto WALLCLOCKTIME . . . . . . . . . . . . . . . 3-46
Exemplo de Programação GSV/SSV . . . . . . . . . . . . . . . . . . 3-48
Obtenção de informações de falha . . . . . . . . . . . . . . . . 3-48
Configuração de flags de habilitação e desabilitação . . . 3-49
Capítulo 4
Instruções de Comparação 
(CMP, EQU, GEQ, GRT, LEQ, LES, 
LIM, MEQ, NEQ)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1
Comparação (CMP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2
Expressões CMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
Operadores válidos . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
Formatação de expressões . . . . . . . . . . . . . . . . . . . . . . 4-4
Determinação da seqüência da operação . . . . . . . . . . . 4-5
Uso de strings em uma expressão. . . . . . . . . . . . . . . . . 4-5
Igual (EQU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7
Maior ou Igual a (GEQ). . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10
Maior que (GRT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-14
Menor ou Igual a (LEQ) . . . . . . . . . . . . . . . . . . . . . . . . . . 4-18
Menor Que (LES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-22
Limite (LIM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26
Máscara Igual a (MEQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-32
Inserção de um valor de máscara imediato . . . . . . . . . . 4-33
Diferente de (NEQ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37
Capítulo 5
Instruções de 
Cálculo/Matemáticas
(CPT, ADD, SUB, MUL, DIV, MOD, 
SQR, SQRT, NEG, ABS)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1
Cálculo (CPT) . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2
Operadores válidos . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
Formatação de expressões . . . . . . . . . . . . . . . . . . . . . . 5-4
Determinação da seqüência da operação . . . . . . . . . . . 5-4
Adição (ADD). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5
Subtração (SUB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8
Publicação 1756-RM003F-PT-P - Maio 2002
Conteúdo iii
Multiplicação (MUL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-11
Divisão (DIV) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14
Módulo (MOD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
Raiz Quadrada (SQR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-21
Negação (NEG). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-24
Valor Absoluto (ABS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-26
Capítulo 6
Instruções de 
Movimentação/Lógica
(MOV, MVM, BTD, MVMT, BTDT, 
CLR, SWPB, AND, OR, XOR, NOT, 
BAND, BOR, BXOR, BNOT)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
Movimentação (MOV) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3
Movimento com Máscara (MVM) . . . . . . . . . . . . . . . . . . . . 6-5
Inserção de um valor de máscara imediato . . . . . . . . . . 6-6
Movimentação com Máscara Com Arquivo-Alvo (MVMT) . . 6-8
Distribuição de Bits (BTD). . . . . . . . . . . . . . . . . . . . . . . . . 6-11
Distribuição de Bits com Arquivo-alvo (BTDT). . . . . . . . . . 6-14
Zeramento (CLR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17
Swap (inversão) de Byte (SWPB) . . . . . . . . . . . . . . . . . . . . 6-18
AND (E) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21
OR (OU). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-24
Ou Exclusivo (XOR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-27
Complementação (NOT) . . . . . . . . . . . . . . . . . . . . . . . . . . 6-30
E Booleano (BAND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-33
 (OU) Booleano (BOR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-35
(Ou Exclusivo) Booleano (BXOR) . . . . . . . . . . . . . . . . . . . 6-38
NOT Booleano (BNOT). . . . . . . . . . . . . . . . . . . . . . . . . . . 6-40
Capítulo 7
InstruçõesInstruções de Array 
(Arquivo)/Miscelânea
(FAL, FSC, COP, CPS, FLL, AVE, 
SRT, STD, SIZE)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
Seleção do Modo de Operação . . . . . . . . . . . . . . . . . . . . . 7-2
Modo ALL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
Modo Numerical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-3
Modo Incremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4
Aritmética de Arquivos (FAL). . . . . . . . . . . . . . . . . . . . . . . 7-6
expressões FAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-15
Operadores válidos . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-15
Formatação de expressões . . . . . . . . . . . . . . . . . . . . . . 7-16
Determinação da seqüência da operação . . . . . . . . . . . 7-16
Comparação e Busca de Arquivo (FSC) . . . . . . . . . . . . . . . 7-17
Expressões FSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-21
Operadores válidos . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-22
Formatação de expressões . . . . . . . . . . . . . . . . . . . . . . 7-22
Determinação da seqüência da operação . . . . . . . . . . . 7-23
Uso de strings em uma expressão. . . . . . . . . . . . . . . . . 7-23
Cópia de Arquivo (COP) Arquivo de Cópia Síncrono (CPS). 7-25
Preenchimento de Arquivo (FLL) . . . . . . . . . . . . . . . . . . . . 7-31
Média de Arquivo (AVE) . . . . . . . . . . . . . . . . . . . . . . . . . . 7-35
Classificação de Arquivo (SRT) . . . . . . . . . . . . . . . . . . . . . 7-40
Desvio Padrão do Arquivo (STD) . . . . . . . . . . . . . . . . . . . 7-45
Tamanho em Elementos (SIZE) . . . . . . . . . . . . . . . . . . . . . 7-50
Publicação 1756-RM003F-PT-P - Maio 2002
iv Conteúdo 
Capítulo 8
Instruções de Array 
(Arquivo)/Deslocamento
(BSL, BSR, FFL, FFU, LFL, LFU)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1
Deslocamento de Bit para a Esquerda (BSL). . . . . . . . . . . . 8-2
Deslocamento de Bit para a Direita (BSR) . . . . . . . . . . . . . 8-5
Carga FIFO (FFL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8
Descarga FIFO (FFU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-14
Carga LIFO (LFL). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-20
Descarga LIFO (LFU). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-26
Capítulo 9
Instruções do Seqüenciador
(SQI, SQO, SQL)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1
Entrada do Seqüenciador (SQI) . . . . . . . . . . . . . . . . . . . . . 9-2
Inserção de um valor de máscara imediato . . . . . . . . . . 9-3
Uso de SQI sem SQO. . . . . . . . . . . . . . . . . . . . . . . . . . 9-5
Saída do Seqüenciador (SQO) . . . . . . . . . . . . . . . . . . . . . . 9-6
Inserção de um valor de máscara imediato . . . . . . . . . . 9-7
Uso de SQI com SQO . . . . . . . . . . . . . . . . . . . . . . . . . 9-9
Reset da posição de SQO. . . . . . . . . . . . . . . . . . . . . . . 9-9
Carga do Seqüenciador (SQL) . . . . . . . . . . . . . . . . . . . . . . 9-10
Capítulo 10
Instruções de Controle do 
Programa
(JMP, LBL, JSR, RET, SBR, JXR, 
TND, MCR, UID, UIE, AFI, 
NOP, EOT, SFP, SFR)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1
Salto para Label (JMP)
Label (LBL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2
Salto para Sub-rotina (JSR)
Sub-rotina (SBR)
Retorno da Sub-rotina (RET) . . . . . . . . . . . . . . . . . . . . . . . 10-4
Salto para a Rotina Externa (JXR) . . . . . . . . . . . . . . . . . . . 10-13
Fim Temporário (TND) . . . . . . . . . . . . . . . . . . . . . . . . . . 10-16
Rearme do Controle Mestre (MCR). . . . . . . . . . . . . . . . . . 10-18
Interrupção Desabilitada (UID) Interrupção 
Habilitada (UIE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-20
Instrução Sempre Falsa (AFI) . . . . . . . . . . . . . . . . . . . . . . 10-22
Sem Operação (NOP) . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-23
Fim da Transição (EOT) . . . . . . . . . . . . . . . . . . . . . . . . . 10-24
Pausa de SFC (SFP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-26
Reset de SFC (SFR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-28
Capítulo 11
Instruções For/Break
(FOR, FOR...DO, BRK, EXIT, RET)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1
De... (FOR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-2
Break (BRK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-5
Return (RET). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-6
Capítulo 12
Instruções Especiais
(FBC, DDT, DTR, PID)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1
Comparação Entre os Bits de Arquivo (FBC) . . . . . . . . . . . 12-2
Seleção do modo de busca. . . . . . . . . . . . . . . . . . . . . . 12-3
Publicação 1756-RM003F-PT-P - Maio 2002
Conteúdo v
Detecção de Diagnóstico (DDT) . . . . . . . . . . . . . . . . . . . . 12-9
Seleção do modo de busca. . . . . . . . . . . . . . . . . . . . . 12-10
Dados Transacionais (DTR) . . . . . . . . . . . . . . . . . . . . . . . 12-16
Inserção de um valor de máscara imediato . . . . . . . . . 12-16
Instrução PID
(PID) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-19
Configuração de uma Instrução PID. . . . . . . . . . . . . . . . . 12-23
Especificação de ajuste. . . . . . . . . . . . . . . . . . . . . . . . 12-24
Especificação de configuração . . . . . . . . . . . . . . . . . . 12-24
Especificação de alarmes . . . . . . . . . . . . . . . . . . . . . . 12-25
Especificação de conversão de escala . . . . . . . . . . . . . 12-25
Uso das Instruções PID . . . . . . . . . . . . . . . . . . . . . . . . . . 12-26
Disparo anti-reset e transferência sem interrupção 
de manual para automático . . . . . . . . . . . . . . . . . . . . 12-28
Temporização da instrução PID . . . . . . . . . . . . . . . . . 12-29
Reinícialização Sem Interrupção . . . . . . . . . . . . . . . . . 12-32
Suavização do derivativo . . . . . . . . . . . . . . . . . . . . . . 12-33
Definição da zona morta . . . . . . . . . . . . . . . . . . . . . . 12-33
Utilização da limitação de saída . . . . . . . . . . . . . . . . . 12-34
Feedforward ou bias de saída. . . . . . . . . . . . . . . . . . . 12-34
Malhas em cascata . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-35
Controle de uma razão. . . . . . . . . . . . . . . . . . . . . . . . 12-35
Teoria PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-37
processo PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-37
Processo PID com malhas mestre/escravo. . . . . . . . . . 12-37
Capítulo 13
Instruções Trigonométricas
(SIN, COS, TAN, ASN, ASIN, ACS, 
ACOS, ATN, ATAN)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-1
Seno (SIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-2
Co-seno (COS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-4
Tangente (TAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-6
Arco Seno (ASN). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-8
Arco Co-seno (ACS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-10
Arco Tangente (ATN) . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-12
Capítulo 14
Instruções de Matemática 
Avançada
(LN, LOG, XPY)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-1
Log Neperiano (LN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-2
Log Base 10 (LOG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-4
X Elevado a Y (XPY). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-6
Capítulo 15
Instruções de Conversão 
Matemática
(DEG, RAD, TOD, FRD, TRN, 
TRUNC)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-1
Graus (DEG). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-2
Radianos (RAD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-4
Conversão para BCD (TOD) . . . . . . . . . . . . . . . . . . . . . . . 15-6
Conversão em Inteiro (FRD) . . . . . . . . . . . . . . . . . . . . . . . 15-9
Truncar (TRN). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-11
Publicação 1756-RM003F-PT-P - Maio 2002
vi Conteúdo 
Capítulo 16
Instruções da Porta Serial ASCII 
(ABL, ACB, ACL, AHL, ARD, ARL, 
AWA, AWT)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-1
Execução da Instrução . . . . . . . . . . . . . . . . . . . . . . . . . 16-2
Códigos de Erro ASCII . . . . . . . . . . . . . . . . . . . . . . . . . 16-4
Tipos de Dados da String . . . . . . . . . . . . . . . . . . . . . . . 16-4
Teste ASCII Para Linha do Buffer (ABL) . . . . . . . . . . . . . . . 16-5
Caracteres ASCII no Buffer (ACB) . . . . . . . . . . . . . . . . . . . 16-8
Limpeza do Buffer ASCII (ACL) . . . . . . . . . . . . . . . . . . . . 16-10
Linhas de Handshake ASCII (AHL). . . . . . . . . . . . . . . . . . 16-12
Leitura ASCII (ARD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-15
Linha de Leitura ASCII (ARL) . . . . . . . . . . . . . . . . . . . . . . 16-18
Anexar Leitura ASCII (AWA) . . . . . . . . . . . . . . . . . . . . . . 16-22
Escrita ASCII (AWT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-26
Capítulo 17
Instruções de String ASCII 
(CONCAT, DELETE, FIND, INSERT, 
MID)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-1
Tipos de Dados da String . . . . . . . . . . . . . . . . . . . . . . . 17-2
Concatenação de String (CONCAT) . . . . . . . . . . . . . . . . . . 17-3
Exclusão de String (DELETE) . . . . . . . . . . . . . . . . . . . . . . . 17-5
Localização de String (FIND) . . . . . . . . . . . . . . . . . . . . . . . 17-7
Inserção de String (INSERT). . . . . . . . . . . . . . . . . . . . . . . . 17-9
String Média (MID) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-11
Capítulo 18
Instruções de Conversão ASCII 
(STOD, STOR, DTOS, RTOS, UPPER, 
LOWER)
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-1
Tipos de Dados da String . . . . . . . . . . . . . . . . . . . . . . . 18-2
String Para DINT (STOD) . . . . . . . . . . . . . . . . . . . . . . . . . 18-3
String Para REAL (STOR) . . . . . . . . . . . . . . . . . . . . . . . . . . 18-5
DINT Para String (DTOS) . . . . . . . . . . . . . . . . . . . . . . . . . 18-7
REAL Para String (RTOS) . . . . . . . . . . . . . . . . . . . . . . . . . . 18-9
Letra Maiúscula (UPPER) . . . . . . . . . . . . . . . . . . . . . . . . . 18-11
Letra Minúscula (LOWER) . . . . . . . . . . . . . . . . . . . . . . . . 18-13
Apêndice A
Atributos Comuns Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
Valores Imediatos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
Conversões de Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
SINT ou INT para DINT . . . . . . . . . . . . . . . . . . . . . . . . A-3
Inteiro para REAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-4
DINT para SINT ou INT . . . . . . . . . . . . . . . . . . . . . . . . A-5
REAL para um inteiro . . . . . . . . . . . . . . . . . . . . . . . . . . A-5
Publicação 1756-RM003F-PT-P - Maio 2002
Conteúdo vii
Apêndice B
Atributos do Bloco de Funções Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-1
Lançamento de Dados. . . . . . . . . . . . . . . . . . . . . . . . . . . . B-2
Seqüência de Execução . . . . . . . . . . . . . . . . . . . . . . . . . . . B-3
Respostas do Bloco de Funções para as Condições 
de Overflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-5
Modos de Temporização . . . . . . . . . . . . . . . . . . . . . . . . . . B-5
Parâmetros de instrução comum para os modos de 
temporização. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-7
Características Gerais dos modos de temporização . . . . B-9
Controle de Program/Operator . . . . . . . . . . . . . . . . . . . . B-10
Apêndice C
Programação de Texto 
Estruturado
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1
Sintaxe do Texto Estruturado. . . . . . . . . . . . . . . . . . . . . . . C-1
Atributos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-2
Especificação de um atributo não retentivo . . . . . . . . . . C-3
Atribuição de um caractere ASCII para um string. . . . . . C-3
Expressões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-4
Use os operadores e funções aritméticas . . . . . . . . . . . . C-5
Uso dos operadores relacionados . . . . . . . . . . . . . . . . . C-6
Uso dos operadores lógicos . . . . . . . . . . . . . . . . . . . . . C-8
Uso de operadores bitwise . . . . . . . . . . . . . . . . . . . . . . C-9
Determinação da seqüência de execução . . . . . . . . . . . C-9
Instruções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-10
Construções
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-11
IF...THEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-12
CASE...OF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-15
FOR…DO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-17
WHILE…DO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-20
REPEAT…UNTIL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-22
Comentários . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-24
Index
Códigos do Caractere ASCII
Publicação 1756-RM003F-PT-P - Maio 2002
viii Conteúdo 
Publicação 1756-RM003F-PT-P - Maio 2002
Capítulo 1
Instruções Binárias
(XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Introdução Use as instruções binárias (tipo com relé) para monitorar e controlar o 
status dos bits.
Se você quiser: Use esta instrução: Disponível nessas linguagens: Consulte 
página:
habilitar as saídas quando um bit estiver 
energizado
XIC lógica ladder
texto estruturado(1)
1-2
habilitar as saídas quando um bit estiver 
desenergizado
XIO lógica ladder
texto estruturado(1)
1-4
energizar um bit OTE lógica ladder
texto estruturado(1)
1-6
energizar um bit (retentivo) OTL lógica ladder
texto estruturado(1)
1-7
desenergizar um bit (retentivo) OTU lógica ladder
texto estruturado(1)
1-9
habilitar as saídas para um scan toda vez que a 
linha tornar-se verdadeira
ONS lógica ladder
texto estruturado(1)
1-11
energizar um bit para um scan toda vez que a 
linha tornar-se verdadeira
OSR lógica ladder 1-14
energizar um bit para um scan toda vez que a 
linha tornar-se falsa
OSF lógica ladder 1-16
energizar um bit para um scan toda vez que o 
bit de entrada for verdadeiro no bloco de 
funções
OSRI texto estruturado
bloco de funções
1-14
energizar um bit para um scan toda vez que o 
bit de entrada estiver desenergizado no bloco 
de funções
OSFI texto estruturado
bloco de funções
1-16
(1) Não há instrução de texto estruturado equivalente. Use outra programação de texto estruturado para obter o mesmo resultado. Veja a descrição para a instrução.
1 Publicação 1756-RM003F-PT-P - Maio 2002
1-2 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Examinar Se Energizado 
(XIC)
A instrução XIC examina o bit de dados para verificar se ele está 
energizado.
Operandos:
Lógica Ladder 
Texto Estruturado
O texto estruturado não possui uma instrução XIC, mas é possível 
obter os mesmos resultados usando uma construção IF...THEN. 
IF data_bit THEN
<statement>;
END_IF;
Consulte ApêndiceC para informações sobre a sintaxe de construções 
no texto estruturado.
Descrição: A instrução XIC examina o bit de dados para verificar se ele está 
energizado.
Flags de Status Aritmético: não afetados
Condições de Falha: nenhuma
Execução:
Operando: Tipo: Formato: Descrição:
data bit BOOL tag bit a ser testado
Condição: Ação da Lógica Ladder:
prescan A saída da condição da linha é definida como falsa.
entrada da condição da linha é falsa A saída da condição da linha é definida como falsa.
postscan A saída da condição da linha é definida como falsa.
examinar o bit de 
dados
bit de dados = 0
bit de dados = 1
saída da condição da linha 
é definida como falsa
saída da condição da linha é 
definida como verdadeira
entrada da condição da linha é verdadeira
fim
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-3
Exemplo 1: Se limit_switch_1 está energizado, isso habilita a próxima instrução (a 
saída da condição da linha é verdadeira).
Lógica Ladder
Texto Estruturado
IF limit_switch THEN
<statement>;
END_IF;
Exemplo 2: Se S:V está energizado (indica que um overflow ocorreu), isso habilita 
a próxima instrução (a saída da condição da linha é verdadeira).
Lógica Ladder
Texto Estruturado
IF S:V THEN
<statement>;
END_IF;
Publicação 1756-RM003F-PT-P - Maio 2002
1-4 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Examinar Se 
Desenergizado (XIO)
A instrução XIO examina o bit de dados para verificar se ele está 
desenergizado.
Operandos:
Lógica Ladder
Texto Estruturado
O texto estruturado não possui uma instrução XIO, mas é possível 
alcançar os mesmos resultados usando uma construção IF...THEN. 
IF NOT data_bit THEN
<statement>;
END_IF;
Consulte ApêndiceC para informações sobre a sintaxe de construções 
no texto estruturado.
Descrição: A instrução XIO examina o bit de dados para verificar se ele está 
desenergizado.
Flags de Status Aritmético: não afetados
Condições de Falha: nenhuma
Execução:
Operando: Tipo: Formato: Descrição:
data bit BOOL tag bit a ser testado
Condição: Ação da Lógica Ladder:
prescan A saída da condição da linha é definida como falsa.
entrada da condição da linha é falsa A saída da condição da linha é definida como falsa.
postscan A saída da condição da linha é definida como falsa.
examinar o bit de dados
bit de dados = 0
bit de dados = 1
saída da condição da linha é 
definida como verdadeira
saída da condição da linha é 
definida como falsa
entrada da condição da linha é verdadeira
fim
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-5
Exemplo 1: Se limit_switch_2 está desenergizado, isso habilita a próxima 
instrução (a saída da condição da linha é verdadeira).
Lógica Ladder
Texto Estruturado
IF NOT limit_switch_2 THEN
<statement>;
END_IF;
Exemplo 2: Se S:V está desenergizado (indica que um overflow não ocorreu), isso 
habilita a próxima instrução (a saída da condição da linha é 
verdadeira).
Lógica Ladder
Texto Estruturado
IF NOT S:V THEN
<statement>;
END_IF;
Publicação 1756-RM003F-PT-P - Maio 2002
1-6 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Energizar Saída (OTE) A instrução OTE energiza ou desenergiza o bit de dados.
Operandos: Lógica Ladder
Texto Estruturado
O texto estruturado não possui uma instrução OTE, mas é possível 
obter os mesmos resultados usando um atributo não retentivo. 
data_bit [:=] BOOL_expression;
Consulte ApêndiceC para informações sobre a sintaxe de atributos e 
expressões no texto estruturado.
Descrição: Quando a instrução OTE está habilitada, o controlador energiza o bit 
de dados. Quando a instrução OTE está desabilitada, o controlador 
desenergiza o bit de dados.
Flags de Status Aritmético: não afetados
Condições de Falha: nenhuma
Execução:
Exemplo: Quando switch está energizado, a instrução OTE energiza (acende) 
light_1. Quando switch é desenergizado, a instrução OTE desenergiza 
(apaga) light_1.
Lógica Ladder
Texto Estruturado
light_1 [:=] switch;
Operando: Tipo: Formato: Descrição:
data bit BOOL tag bit a ser energizado ou desenergizado
Condição: Ação da Lógica Ladder:
prescan O bit de dados é desenergizado.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é falsa O bit de dados é desenergizado.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é verdadeira O bit de dados é energizado.
A saída da condição da linha é definida como verdadeira.
postscan O bit de dados é desenergizado.
A saída da condição da linha é definida como falsa.
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-7
Energizar Saída com 
Retenção (OTL)
A instrução OTL energiza (retém) o bit de dados.
Operandos:
Lógica Ladder
Texto Estruturado
O texto estruturado não possui uma instrução OTL, mas é possível 
obter os mesmos resultados usando uma construção e um atributo 
IF...THEN. 
IF bool_expression THEN
data_bit := 1;
END_IF;
Consulte ApêndiceC
para informações sobre a sintaxe de construções, 
atributos e expressões no texto estruturado.
Descrição: Quando habilitada, a instrução OTL energiza o bit de dados. O bit de 
dados permanece energizado até ser desenergizado, normalmente, 
por uma instrução OTU. Quando desabilitada, a instrução OTL não 
altera o status do bit de dados.
Flags de Status Aritmético: não afetados
Condições de Falha: nenhuma
Execução:
Operando: Tipo: Formato: Descrição:
data bit BOOL tag bit a ser energizado
Condição: Ação da Lógica Ladder:
prescan O bit de dados não é modificado.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é falsa O bit de dados não é modificado.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é verdadeira O bit de dados é energizado.
A saída da condição da linha é definida como verdadeira.
postscan O bit de dados não é modificado.
A saída da condição da linha é definida como falsa.
Publicação 1756-RM003F-PT-P - Maio 2002
1-8 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Exemplo: Quando habilitada, a instrução OTL energiza light_2. Esse bit 
permanece energizado até ser desenergizado, normalmente, por uma 
instrução OTU.
Lógica Ladder
Texto Estruturado
IF BOOL_expression THEN
light_2 := 1;
END_IF;
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-9
Desenergizar Saída com 
Retenção (OTU)
A instrução OTU desenergiza (não retém) o bit de dados.
Operandos:
Lógica Ladder
Texto Estruturado
O texto estruturado não possui uma instrução OTU, mas é possível 
alcançar os mesmos resultados usando uma construção e um atributo 
IF...THEN 
IF bool_expression THEN
data_bit := 0;
END_IF;
Consulte ApêndiceC para informações sobre a sintaxe de construções, 
atributos e expressões no texto estruturado.
Descrição: Quando habilitada, a instrução OTU desenergiza o bit de dados. 
Quando desabilitada, a instrução OTU não altera o status do bit de 
dados.
Flags de Status Aritmético: não afetados
Condições de Falha: nenhuma
Execução:
Operando: Tipo: Formato: Descrição:
data bit BOOL tag bit a ser desenergizado
Condição: Ação da Lógica Ladder:
prescan O bit de dados não é modificado.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é falsa O bit de dados não é modificado.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é verdadeira O bit de dados é desenergizado.
A saída da condição da linha é definida como verdadeira.
postscan O bit de dados não é modificado.
A saída da condição da linha é definida como falsa.
Publicação 1756-RM003F-PT-P - Maio 2002
1-10 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Exemplo: Quando habilitada, a instrução OTU desenergiza light_2.
Lógica Ladder
Texto Estruturado
IF bool_expression THEN
light_2 := 0;
END_IF;
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-11
Monoestável (ONS) A instrução ONS habilita ou desabilita o resto da linha dependendo 
do status do bit de armazenamento.
Operandos:
Lógica Ladder
Texto Estruturado
O texto estruturado não possui uma instrução ONS, mas é possível 
obter os mesmos resultados usando uma construção IF...THEN. 
IF BOOL_expression AND NOT storage_bit THEN
<statement>;
END_IF;
storage_bit := BOOL_expression;
Consulte ApêndiceC para informações sobre a sintaxe de construções, 
atributos e expressões no texto estruturado.
Descrição: Quando habilitada e o bit de armazenamento está desenergizado, a 
instrução ONS habilita o resto da linha. Quando habilitada ou o bit de 
armazenamento está energizado, a instrução ONS desabilita o resto da 
linha.
Flags de Status Aritmético: não afetados
Condições de Falha: nenhuma
Operando: Tipo: Formato: Descrição:
storage bit BOOL tag bit de armazenamento interno
armazena a entrada da condição da linha 
desde a última vez que a instrução foi 
executada
Publicação 1756-RM003F-PT-P - Maio 2002
1-12 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Execução:
Exemplo: Normalmente, uma instrução de entrada precede a instrução ONS, 
pois você varre esta instrução quando ela está habilitada e quando é 
desabilitada para que opere corretamente. Uma vez que a instrução 
ONS é habilitada, a entrada da condição da linha deve desenergizar 
ou o bit de armazenamento deve ser desenergizado para que a 
instrução ONS seja habilitada novamente.
Condição: Ação da Lógica Ladder:
prescan O bit de armazenamento é energizado para evitar um disparo inválido durante o primeiro 
scan.
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.
postscan O bit de armazenamento é desenergizado.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é verdadeira
fim
examinar o bit de 
armazenamento
bit de armazenamento = 0
bit de armazenamento = 1
bit de armazenamento é 
energizado
saída da condição da linha 
é definida como 
verdadeira
o bit de armazenamento 
permanece energizado
saída da condição da linha 
é definida como falsa
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-13
Em qualquer scan cujo limit_switch_1 é desenergizado ou storage_1 é 
energizado, essa linha não tem efeito. Em qualquer scan cujo 
limit_switch_1 é energizado e storage_1 é desenergizado, a instrução 
ONS energiza storage_1 e a instrução ADD incrementa sum por 1. 
Enquanto limit_switch_1 permanecer energizado, sum fica com o 
mesmo valor. O limit_switch_1 deve passar de desenergizado para 
energizado novamente para que sum seja incrementado novamente.
Lógica Ladder
Texto Estruturado
IF limit_switch_1 AND NOT storage_1 THEN
sum := sum + 1;
END_IF;
storage_1 := limit_switch_1;
Publicação 1756-RM003F-PT-P - Maio 2002
1-14 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Monoestável Sensível à 
Borda de Subida (OSR)
A instrução OSR energiza ou desenergiza o bit de saída, dependendo 
do status do bit de armazenamento.
Essa instrução está disponível no texto estruturado e bloco de funções 
como OSRI, consulte a página 1-14.
Operandos:
Lógica Ladder
Descrição: Quando habilitada e o bit de armazenamento está desenergizado, a 
instrução OSR energiza o bit de saída. Quando habilitada e o bit de 
armazenamento está energizado ou quando desabilitada, a instrução 
OSR desenergiza o bit de saída 
Flags de Status Aritmético: não afetados
Condições de Falha: nenhuma
Operando: Tipo: Formato: Descrição:
storage bit BOOL tag bit de armazenamento interno
armazena a entrada da condição da linha da 
última vez que a instrução foi executada
output bit BOOL tag bit a ser energizado
entrada da condição da 
linha
bit de armazenamento
bit de saída
instrução é
executada
instrução reseta durante a 
execução do próximo scan
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-15
Execução:
Exemplo: Cada vez que limit_switch_1 passar de desenergizado para 
energizado, a instrução OSR energiza output_bit_1 e a instrução ADD 
incrementa sum por 5. Enquanto limit_switch_1 estiver energizado, 
sum permanece com o mesmo valor. O limit_switch_1 deve passar de 
desenergizado para energizado novamente para sum ser 
incrementado novamente. É possível usar output_bit_1 em linhas 
múltiplas para disparar outras operações
Condição: Ação da Lógica Ladder:
prescan O bit de armazenamento é energizado para evitar um disparo inválido durante o primeiro 
scan.
O bit de saída é desenergizado.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é falsa O bit de armazenamento é desenergizado.
O bit de saída não é modificado.
A saída da condição da linha é definida como falsa.
postscan O bit de armazenamento é desenergizado.
O bit de saída não é modificado.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é verdadeira
fim
examinar o bit de 
armazenamento
bit de 
armazenamento = 0
bit de armazenamento = 1
bit de armazenamento é 
energizado
bit de saída é energizado
saída da condição da linha é 
definida como verdadeira
o bit de armazenamento 
permanece energizado
bit de saída é desenergizado.
saída da condição da linha é 
definida como verdadeira
Publicação 1756-RM003F-PT-P - Maio 2002
1-16 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Monoestável Sensível à 
Borda de Descida (OSF)
A instrução OSF energiza ou desenergiza o bit de saída dependendo 
do status do bit de armazenamento.
Essa instrução está disponível no texto estruturado e bloco de funções 
como OSFI, consulte a página 1-16.
Operandos:
Operandos de Lógica Ladder
Descrição: Quando desabilitada e o bit de armazenamento está energizado, a 
instrução OSF energiza o bit de saída. Quando desabilitada e o bit de 
armazenamento está desenergizado ou quando habilitada, a instrução 
OSF desenergiza o bit de saída 
Flags de Status Aritmético: não afetados
Condições de Falha: nenhuma
Operando: Tipo: Formato: Descrição:
storage bit BOOL tag bit de armazenamento interno
armazena a entrada da condição da linha 
desde a última vez que a instrução foi 
executada
output bit BOOL tag bit a ser energizado
entrada da 
condição da linha
bit de 
armazenamento
bit de saída
instrução é
executada
instrução reseta durante a 
execução do próximo scan
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-17
Execução:
Exemplo: Cada vez que limit_switch_1 passa de energizado para desenergizado, 
a instrução OSF energiza output_bit_2 e a instrução ADD incrementa 
sum por 5. Enquanto limit_switch_1 estiver desenergizado, sum 
permanece com o mesmo valor. O limit_switch_1 deve passar de 
energizado para desenergizado novamente para que sum seja 
incrementado novamente. É possível usar output_bit_2 em linhas 
múltiplas para disparar outras operações
Condição: Ação da Lógica Ladder:
prescan O bit de armazenamento é desenergizado para evitar um disparo inválido durante o 
primeiro scan.
O bit de saída é desenergizado.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é verdadeira O bit de armazenamento é energizado.
O bit de saída é desenergizado.
A saída da condição da linha é definida como verdadeira.
postscan Veja se a entrada da condição da linha acima é falsa.
entrada da condição da linha é falsa
fim
examinar o bit de 
armazenamento
bit de 
armazenamento = 0
bit de armazenamento = 1
o bit de armazenamento 
permanece desenergizado
bit de saída é 
desenergizado.
saída da condição da linha é 
definida como falsa
bit de armazenamento é 
desenergizado.
bit de saída é energizado
saída da condição da linha 
é definida como falsa
Publicação 1756-RM003F-PT-P - Maio 2002
1-18 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Monoestável Sensível à 
Borda de Subida com 
Entrada (OSRI)
A instrução OSRI energiza o bit de saída para um ciclo de execução 
quando o bit de entrada alternar de desenergizado para energizado.
Esta instrução está disponível em lógica ladder como OSR, consulte a 
página 1-14.
Operandos:
Texto Estruturado
Bloco de Funções 
Estrutura FBD_ONESHOT
Descrição: Quando InputBit está energizado e InputBitn-1 está desenergizado, a 
instrução OSRI energiza OutputBit. Quando InputBit é energizado ou 
quando InputBit é desenergizado, a instrução OSRI desenergiza 
OutputBit.
Operando: Tipo: Formato: Descrição:
OSRI tag FBD_ONESHOT estrutura estrutura OSR
Operando: Tipo: Formato: Descrição:
OSRI tag FBD_ONESHOT estrutura estrutura OSR
OSRI(OSRI_tag);
Parâmetro de Entrada: Tipo de Dados: Descrição:
EnableIn BOOL Bloco de Funções
Se desenergizada, a instrução não executa e as saídas não são atualizadas.
Se energizada, a instrução executa.
O valor inicial é energizado
Texto Estruturado:
Sem efeito. A instrução executa.
InputBit BOOL Bit de entrada. Isto equivale à condição da linha para a instrução OSR de Lógica Ladder.
O valor inicial é desenergizado.
Parâmetro de Saída: Tipo de Dados: Descrição:
EnableOut BOOL A instrução produziu um resultado válido.
OutputBit BOOL Bit de saída
InputBit
OutputBit
40048
instrução é
executada
instrução reseta durante a 
execução do próximo scan
InputBitn-1
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-19
Flags de Status Aritmético: não afetados
Condições de Falha: nenhuma
Execução:
Exemplo: Quando limit_switch1 passa de desenergizado para energizado, a 
instrução OSRI energiza OutputBit para um scan.
Texto Estruturado
OSRI_01.InputBit := limit_switch1;
OSRI(OSRI_01);
State := OSRI_01.OutputBit;
Bloco de Funções
Condição: Ação do Bloco de Funções: Ação do Texto Estruturado:
prescan Nenhuma ação tomada. Nenhuma ação tomada.
primeiro scan da instrução InputBit n-1 é energizado. InputBit n-1 é energizado.
primeira execução da 
instrução
InputBit n-1 é energizado. InputBit n-1 é energizado.
EnableIn está 
desenergizado
EnableOut é desenergizado, a instrução não faz nada 
e as saídas não são atualizadas.
na
EnableIn está energizado Em uma transição de InputBit de desenergizado para 
energizado, a instrução energiza InputBit n-1.
A instrução executa.
EnableOut está energizado.
Em uma transição de InputBit de desenergizado para 
energizado, a instrução energiza InputBit n-1.
EnableIn está sempre energizado
A instrução executa.
postscan Nenhuma ação tomada. Nenhuma ação tomada.
Publicação 1756-RM003F-PT-P - Maio 2002
1-20 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Monoestável Sensível à 
Borda de Descida com 
Entrada (OSFI)
A instrução OSFI energiza o OutputBit para um ciclo de execução 
quando InputBit alternar de energizado para desenergizado.
Esta instrução está disponível em lógica ladder como OSF, consulte a 
página 1-16.
Operandos:
Texto Estruturado
Bloco de Funções
Estrutura FBD_ONESHOT
Descrição: Quando InputBit está desenergizado e InputBit n-1 está energizado, a 
instrução OSFI energiza OutputBit. Quando InputBit n-1 está 
desenergizado ou quando InputBit está energizado, a instrução OSFI 
desenergiza OutputBit.
Operando: Tipo: Formato: Descrição:
OSFI tag FBD_ONESHOT estrutura estrutura OSFI
Operando: Tipo: Formato: Descrição:
tag OSFI FBD_ONESHOT estrutura estrutura OSFI
OSFI(OSFI_tag);
Parâmetro de 
Entrada:
Tipo de Dados: Descrição:
EnableIn BOOL Bloco de Funções
Se desenergizada, a instrução não executa e as saídas não são atualizadas.
Se energizada, a instrução executa.
O valor inicial é energizado
Texto Estruturado:
Sem efeito. A instrução executa.
InputBit BOOL Bit de entrada. Isto equivale à condição da linha para a instrução OSF de lógica ladder.
O valor inicial é desenergizado.
Parâmetro de Saída: Tipo de Dados: Descrição:
EnableOut BOOL A instrução produziu um resultado válido.
OutputBit BOOL bit de saída
InputBit
OutputBit
instrução é
executada
instrução reseta durante a 
execução do próximo scan
InputBit n-1
40047
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI) 1-21
Flags de Status Aritmético: não afetados
Condições de Falha: nenhuma
Execução:
Exemplo: Quando limit_switch1 passa de energizado para desenergizado, a 
instrução OSFI energiza
OutputBit para um scan.
Texto Estruturado
OSFI_01.InputBit := limit_switch1;
OSFI(OSFI_01);
Output_state := OSFI_01.OutputBit;
Bloco de Funções
Condição: Ação do Bloco de Funções: Ação do Texto Estruturado:
prescan Nenhuma ação tomada. Nenhuma ação tomada.
primeiro scan da instrução InputBit n-1 é desenergizado. InputBit n-1 é desenergizado.
primeira execução da 
instrução
InputBit n-1 é desenergizado. InputBit n-1 é desenergizado.
EnableIn está 
desenergizado
EnableOut é desenergizado, a instrução não faz nada 
e as saídas não são atualizadas.
na
EnableIn está energizado Em uma transição de InputBit de desenergizado para 
energizado, a instrução desenergiza InputBit n-1.
A instrução executa.
EnableOut está energizado.
Em uma transição de InputBit de desenergizado para 
energizado, a instrução desenergiza InputBit n-1.
EnableIn está sempre energizado
A instrução executa.
postscan Nenhuma ação tomada. Nenhuma ação tomada.
Publicação 1756-RM003F-PT-P - Maio 2002
1-22 Instruções Binárias (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Notas:
Publicação 1756-RM003F-PT-P - Maio 2002
Capítulo 2
Instruções de Temporizador e Contador
(TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Introdução As operações de temporizadores e contadores são baseadas no tempo 
ou no número de eventos.
A base de tempo para todos os temporizadores é 1 mseg.
Se você quiser: Use esta instrução: Disponível nestas linguagens: Consulte página:
saber por quanto tempo o temporizador está 
habilitado
TON lógica ladder 2-2
saber por quanto tempo o temporizador está 
desabilitado
TOF lógica ladder 2-5
acumular o tempo RTO lógica ladder 2-9
saber por quanto tempo o temporizador está 
habilitado com o reset incorporado no bloco de 
funções 
TONR texto estruturado
bloco de funções 
2-13
saber por quanto tempo o temporizador está 
desabilitado com o reset integrado em um 
bloco de funções 
TOFR texto estrutural
bloco de funções 
2-16
acumular o tempo com o reset incorporado no 
bloco de funções 
RTOR texto estruturado
bloco de funções 
2-19
fazer a contagem crescente CTU lógica ladder 2-22
fazer a contagem decrescente CTD lógica ladder 2-25
fazer a contagem crescente e decrescente no 
bloco de funções 
CTUD texto estruturado
bloco de funções 
2-29
resetar um temporizador ou um contador RES lógica ladder 2-33
1 Publicação 1756-RM003F-PT-P - Maio 2002
2-2 Instruções de Temporizador e Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador na 
Energização (TON)
A instrução TON é um temporizador não retentivo que acumula 
tempo quando a instrução está habilitada (entrada da condição da 
linha é verdadeira).
A instrução está disponível em texto estruturado e bloco de funções 
como TONR, consulte a página 2-13.
Operandos:
Lógica Ladder
Estrutura TIMER
Descrição: A instrução TON acumulou o tempo até:
• a instrução TON está desabilitada
• o .ACC ≥ .PRE
A base de tempo é sempre 1 mseg. Por exemplo, para um 
temporizador de 2 segundos, digite 2000 para o valor de .PRE.
Quando a instrução TON é desabilitada, o valor de .ACC é removido.
Operando: Tipo: Formato: Descrição:
Timer TIMER tag estrutura do temporizador
Preset DINT imediato quanto tempo atrasar (tempo acumulado)
Accum DINT imediato total de mseg que o temporizador contou
normalmente, valor inicial é 0
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 uma operação de temporização está em execução
.DN BOOL O bit executado está energizado quando .ACC ≥ .PRE.
.PRE DINT O valor de preset especifica o valor (unidades de 1 mseg) que o valor acumulado deve atingir 
antes que a instrução energize o bit .DN.
.ACC DINT O valor acumulado especifica o número de milissegundos que transcorreram desde que a 
instrução TON foi habilitada.
entrada da condição da linha
bit habilitado do temporizador (.EN)
bit executado do temporizador (.DN)
valor acumulado do temporizador (.ACC)
bit de temporização do temporizador (.TT)
preset
0 16649
o temporizador não 
alcançou o valor de .PRE
atraso 
na 
ENER-
GIZA-
ÇÃO
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções de Temporizador e Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-3
Flags de Status Aritmético: não afetados
Condições de Falha:
Execução
Uma falha grave ocorrerá se: Tipo de falha: Código de falha:
.PRE < 0 4 34
.ACC < 0 4 34
Condição: Ação da Lógica Ladder:
prescan Os bits .EN, .TT e .DN estão desenergizados.
O valor de .ACC é removido.
A saída da condição da linha é definida como falsa.
entrada da condição da linha é falsa Os bits .EN, .TT e .DN estão desenergizados.
O valor de .ACC é removido.
A saída da condição da linha é definida como falsa.
postscan A saída da condição da linha é definida como falsa.
examinar bit .DN
bit .DN = 1
bit .DN = 0
bit .EN é energizado
bit .TT é energizado.
last_time = current_time
entrada da condição da linha é verdadeira
examinar .ACC
.ACC ≥ .PRE
.ACC < .PRE
bit .TT é energizado.
.ACC = .ACC + (current_time - last_time)
last_time = current_time
o valor .ACC 
ultrapassa
não
sim
.ACC = 2,147,483,647
examinar bit .EN
bit .EN = 0
bit .EN = 1
saída da condição da linha é 
definida como verdadeira
fim
.DN é energizado
bit .TT é 
desenergizado.
bit .EN é energizado
Publicação 1756-RM003F-PT-P - Maio 2002
2-4 Instruções de Temporizador e Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Exemplo: Quando limit_switch_1 é energizado, light_2 acende por 180 mseg 
(timer_1 está temporizando). Quando timer_1.acc alcança 180, light_2 
apaga e light_3 acende. Light_3 permanece aceso até que a instrução 
TON seja desabilitada. Se limit_switch_1 for desenergizado enquanto 
timer_1 estiver temporizando, light_2 desliga.
Publicação 1756-RM003F-PT-P - Maio 2002
Instruções de Temporizador e Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES) 2-5
Temporizador na 
Desenergização (TOF)
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).
A instrução está disponível em texto estruturado e bloco de funções 
como TOFR, consulte a página 2-16.
Operandos:
Lógica Ladder 
Estrutura TIMER
Descrição: A instrução TOF acumulou o tempo até:
• a instrução TOF está desabilitada
• a .ACC ≥ .PRE
A base de tempo é sempre 1 mseg. Por exemplo, para um 
temporizador de 2 segundos, digite 2000 para o valor de .PRE.
Operando: Tipo: Formato: Descrição:
Timer TIMER tag estrutura do temporizador
Preset DINT imediato quanto tempo atrasar (tempo acumulado)
Accum DINT imediato total de mseg que o temporizador contou
normalmente, o valor inicial é 0
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 uma operação de temporização está em execução
.DN BOOL O bit executado é desenergizado quando .ACC ≥ .PRE.
.PRE DINT O valor preset especifica o valor (unidades de 1 mseg) que o valor acumulado deve atingir 
antes que a instrução energize o bit .DN.
.ACC DINT O valor acumulado especifica o número de milissegundos que transcorreram desde que a 
instrução TOF foi habilitada.
Publicação 1756-RM003F-PT-P - Maio 2002
2-6 Instruções de Temporizador e Contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Quando a instrução TOF está desativada, o valor de .ACC é 
desenergizado.
Flags de Status Aritmético: não afetados
Condições de Falha:
entrada da condição da linha
bit habilitado do temporizador (.EN)
bit executado do temporizador (.DN)
valor acumulado do temporizador (.ACC)
bit de temporização do temporizador (.TT)
0 16650
o temporizador não atingiu o valor de .PRE
preset

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando

Outros materiais